From 4808456515db8a9d33ad6de8a9290532f97bf0b7 Mon Sep 17 00:00:00 2001 From: Relintai Date: Sun, 17 Jul 2022 14:49:18 +0200 Subject: [PATCH] Removed mat_maker_gd. --- game/addons/mat_maker_gd/LICENSE.md | 22 - game/addons/mat_maker_gd/README.md | 22 - .../mat_maker_gd/editor/CreateNamePopup.gd | 65 - .../mat_maker_gd/editor/CreateNamePopup.tscn | 61 - .../mat_maker_gd/editor/MatMakerGDEditor.gd | 218 - .../mat_maker_gd/editor/MatMakerGDEditor.tscn | 51 - .../mat_maker_gd/editor/mm_graph_node.gd | 742 ---- game/addons/mat_maker_gd/icons/custom.png | Bin 549 -> 0 bytes .../mat_maker_gd/icons/custom.png.import | 35 - game/addons/mat_maker_gd/icons/down.tres | 8 - game/addons/mat_maker_gd/icons/edit.tres | 8 - game/addons/mat_maker_gd/icons/godot_logo.svg | 1 - .../mat_maker_gd/icons/godot_logo.svg.import | 35 - game/addons/mat_maker_gd/icons/icons.svg | 3522 ----------------- .../mat_maker_gd/icons/icons.svg.import | 35 - game/addons/mat_maker_gd/icons/icons.tres | 30 - game/addons/mat_maker_gd/icons/link.tres | 8 - game/addons/mat_maker_gd/icons/minimize.tres | 8 - .../mat_maker_gd/icons/output_preview.tres | 8 - .../mat_maker_gd/icons/port_group_0.tres | 8 - .../mat_maker_gd/icons/port_group_1.tres | 8 - .../mat_maker_gd/icons/port_group_2.tres | 8 - .../mat_maker_gd/icons/port_group_3.tres | 8 - .../mat_maker_gd/icons/randomness_locked.tres | 8 - .../icons/randomness_unlocked.tres | 8 - game/addons/mat_maker_gd/icons/remove.tres | 8 - game/addons/mat_maker_gd/icons/up.tres | 8 - game/addons/mat_maker_gd/new_resource.tres | 509 --- .../mat_maker_gd/nodes/bases/curve_base.gd | 118 - .../mat_maker_gd/nodes/bases/gradient_base.gd | 64 - .../mat_maker_gd/nodes/bases/polygon_base.gd | 73 - .../mat_maker_gd/nodes/filter/adjust_hsv.gd | 72 - .../addons/mat_maker_gd/nodes/filter/blend.gd | 123 - .../nodes/filter/blur_gaussian.gd | 218 - .../nodes/filter/brightness_contrast.gd | 61 - .../mat_maker_gd/nodes/filter/colorize.gd | 53 - .../mat_maker_gd/nodes/filter/combine.gd | 75 - .../mat_maker_gd/nodes/filter/decompose.gd | 101 - .../mat_maker_gd/nodes/filter/emboss.gd | 110 - .../mat_maker_gd/nodes/filter/fill_channel.gd | 69 - .../nodes/filter/fill_to_color.gd | 67 - .../nodes/filter/fill_to_position.gd | 65 - .../nodes/filter/fill_to_random_color.gd | 58 - .../nodes/filter/fill_to_random_grey.gd | 57 - .../mat_maker_gd/nodes/filter/fill_to_size.gd | 67 - .../mat_maker_gd/nodes/filter/fill_to_uv.gd | 59 - .../mat_maker_gd/nodes/filter/greyscale.gd | 63 - .../mat_maker_gd/nodes/filter/invert.gd | 39 - .../nodes/filter/make_tileable.gd | 75 - game/addons/mat_maker_gd/nodes/filter/math.gd | 148 - .../mat_maker_gd/nodes/filter/quantize.gd | 53 - .../nodes/filter/swap_channels.gd | 108 - .../mat_maker_gd/nodes/filter/tonality.gd | 48 - .../nodes/gradient/circular_gradient.gd | 58 - .../mat_maker_gd/nodes/gradient/gradient.gd | 66 - .../nodes/gradient/radial_gradient.gd | 58 - .../nodes/noise/anisotropic_noise.gd | 58 - .../mat_maker_gd/nodes/noise/color_noise.gd | 50 - .../mat_maker_gd/nodes/noise/color_value.gd | 58 - .../mat_maker_gd/nodes/noise/fbm_noise.gd | 97 - game/addons/mat_maker_gd/nodes/noise/noise.gd | 50 - .../mat_maker_gd/nodes/noise/voronoi.gd | 160 - .../mat_maker_gd/nodes/other/output_image.gd | 45 - .../mat_maker_gd/nodes/pattern/beehive.gd | 110 - .../mat_maker_gd/nodes/pattern/bricks.gd | 286 -- .../mat_maker_gd/nodes/pattern/iching.gd | 38 - .../mat_maker_gd/nodes/pattern/pattern.gd | 70 - .../mat_maker_gd/nodes/pattern/runes.gd | 38 - .../mat_maker_gd/nodes/pattern/scratches.gd | 80 - .../mat_maker_gd/nodes/pattern/sine_wave.gd | 59 - .../mat_maker_gd/nodes/pattern/truchet.gd | 51 - .../mat_maker_gd/nodes/pattern/weave.gd | 132 - .../nodes/sdf2d/sd_op_annular_shape.gd | 51 - .../mat_maker_gd/nodes/sdf2d/sd_op_bool.gd | 73 - .../nodes/sdf2d/sd_op_circle_repeat.gd | 41 - .../mat_maker_gd/nodes/sdf2d/sd_op_morph.gd | 66 - .../mat_maker_gd/nodes/sdf2d/sd_op_repeat.gd | 66 - .../nodes/sdf2d/sd_op_rounded_shape.gd | 40 - .../nodes/sdf2d/sd_op_smooth_bool.gd | 85 - .../mat_maker_gd/nodes/sdf2d/sd_shape_arc.gd | 58 - .../mat_maker_gd/nodes/sdf2d/sd_shape_box.gd | 46 - .../nodes/sdf2d/sd_shape_circle.gd | 46 - .../mat_maker_gd/nodes/sdf2d/sd_shape_line.gd | 70 - .../nodes/sdf2d/sd_shape_polygon.gd | 26 - .../nodes/sdf2d/sd_shape_rhombus.gd | 46 - .../mat_maker_gd/nodes/sdf2d/sd_show.gd | 64 - .../mat_maker_gd/nodes/sdf2d/sd_tf_rotate.gd | 39 - .../mat_maker_gd/nodes/sdf2d/sd_tf_scale.gd | 39 - .../nodes/sdf2d/sd_tf_translate.gd | 38 - .../mat_maker_gd/nodes/sdf3d/sdf3d_color.gd | 56 - .../mat_maker_gd/nodes/sdf3d/sdf3d_op_bool.gd | 76 - .../nodes/sdf3d/sdf3d_op_circle_repeat.gd | 56 - .../nodes/sdf3d/sdf3d_op_elongation.gd | 56 - .../nodes/sdf3d/sdf3d_op_extrusion.gd | 60 - .../nodes/sdf3d/sdf3d_op_morph.gd | 71 - .../nodes/sdf3d/sdf3d_op_repeat.gd | 68 - .../nodes/sdf3d/sdf3d_op_revolution.gd | 57 - .../nodes/sdf3d/sdf3d_op_rounded.gd | 58 - .../nodes/sdf3d/sdf3d_op_smooth_bool.gd | 88 - .../mat_maker_gd/nodes/sdf3d/sdf3d_render.gd | 176 - .../nodes/sdf3d/sdf3d_shape_box.gd | 46 - .../nodes/sdf3d/sdf3d_shape_capsule.gd | 107 - .../nodes/sdf3d/sdf3d_shape_cone.gd | 60 - .../nodes/sdf3d/sdf3d_shape_cylinder.gd | 65 - .../nodes/sdf3d/sdf3d_shape_sphere.gd | 34 - .../nodes/sdf3d/sdf3d_shape_torus.gd | 65 - .../nodes/sdf3d/sdf3d_tf_rotate.gd | 54 - .../nodes/sdf3d/sdf3d_tf_scale.gd | 53 - .../nodes/sdf3d/sdf3d_tf_translate.gd | 53 - .../addons/mat_maker_gd/nodes/simple/curve.gd | 115 - .../addons/mat_maker_gd/nodes/simple/image.gd | 41 - .../addons/mat_maker_gd/nodes/simple/shape.gd | 99 - .../nodes/transform/circle_map.gd | 67 - .../nodes/transform/color_tiler.gd | 303 -- .../nodes/transform/kaleidoscope.gd | 60 - .../mat_maker_gd/nodes/transform/mirror.gd | 66 - .../mat_maker_gd/nodes/transform/repeat.gd | 25 - .../mat_maker_gd/nodes/transform/rotate.gd | 60 - .../mat_maker_gd/nodes/transform/scale.gd | 60 - .../mat_maker_gd/nodes/transform/shear.gd | 77 - .../mat_maker_gd/nodes/transform/tiler.gd | 304 -- .../mat_maker_gd/nodes/transform/transform.gd | 129 - .../mat_maker_gd/nodes/transform/translate.gd | 49 - .../nodes/uniform/greyscale_uniform.gd | 25 - .../mat_maker_gd/nodes/uniform/uniform.gd | 20 - game/addons/mat_maker_gd/plugin.cfg | 7 - game/addons/mat_maker_gd/plugin.gd | 86 - .../color_picker_button.gd | 16 - .../color_picker_popup.tscn | 14 - .../widgets/curve_edit/control_point.gd | 70 - .../widgets/curve_edit/control_point.tscn | 39 - .../widgets/curve_edit/curve_dialog.gd | 37 - .../widgets/curve_edit/curve_dialog.tscn | 81 - .../widgets/curve_edit/curve_edit.gd | 24 - .../widgets/curve_edit/curve_edit.tscn | 22 - .../widgets/curve_edit/curve_editor.gd | 80 - .../widgets/curve_edit/curve_editor.tscn | 14 - .../widgets/curve_edit/curve_view.gd | 70 - .../widgets/curve_edit/curve_view.tscn | 16 - .../widgets/curve_edit/slope_point.gd | 49 - .../widgets/float_edit/float_edit.gd | 139 - .../widgets/float_edit/float_edit.tscn | 46 - .../gradient_editor/gradient_editor.gd | 288 -- .../gradient_editor/gradient_editor.tscn | 94 - .../widgets/gradient_editor/gradient_popup.gd | 15 - .../gradient_editor/gradient_popup.tscn | 31 - .../image_picker_button.gd | 46 - .../image_picker_button.tscn | 20 - .../widgets/polygon_edit/control_point.gd | 33 - .../widgets/polygon_edit/control_point.tscn | 15 - .../widgets/polygon_edit/polygon_dialog.gd | 46 - .../widgets/polygon_edit/polygon_dialog.tscn | 81 - .../widgets/polygon_edit/polygon_edit.gd | 34 - .../widgets/polygon_edit/polygon_edit.tscn | 26 - .../widgets/polygon_edit/polygon_editor.gd | 57 - .../widgets/polygon_edit/polygon_editor.tscn | 14 - .../widgets/polygon_edit/polygon_view.gd | 58 - .../widgets/polygon_edit/polygon_view.tscn | 12 - .../windows/file_dialog/fav_button.tscn | 17 - .../windows/file_dialog/file_dialog.gd | 57 - .../windows/file_dialog/file_dialog.tscn | 16 - .../windows/file_dialog/left_panel.gd | 71 - .../windows/file_dialog/left_panel.tscn | 48 - 163 files changed, 14702 deletions(-) delete mode 100644 game/addons/mat_maker_gd/LICENSE.md delete mode 100644 game/addons/mat_maker_gd/README.md delete mode 100644 game/addons/mat_maker_gd/editor/CreateNamePopup.gd delete mode 100644 game/addons/mat_maker_gd/editor/CreateNamePopup.tscn delete mode 100644 game/addons/mat_maker_gd/editor/MatMakerGDEditor.gd delete mode 100644 game/addons/mat_maker_gd/editor/MatMakerGDEditor.tscn delete mode 100644 game/addons/mat_maker_gd/editor/mm_graph_node.gd delete mode 100644 game/addons/mat_maker_gd/icons/custom.png delete mode 100644 game/addons/mat_maker_gd/icons/custom.png.import delete mode 100644 game/addons/mat_maker_gd/icons/down.tres delete mode 100644 game/addons/mat_maker_gd/icons/edit.tres delete mode 100644 game/addons/mat_maker_gd/icons/godot_logo.svg delete mode 100644 game/addons/mat_maker_gd/icons/godot_logo.svg.import delete mode 100644 game/addons/mat_maker_gd/icons/icons.svg delete mode 100644 game/addons/mat_maker_gd/icons/icons.svg.import delete mode 100644 game/addons/mat_maker_gd/icons/icons.tres delete mode 100644 game/addons/mat_maker_gd/icons/link.tres delete mode 100644 game/addons/mat_maker_gd/icons/minimize.tres delete mode 100644 game/addons/mat_maker_gd/icons/output_preview.tres delete mode 100644 game/addons/mat_maker_gd/icons/port_group_0.tres delete mode 100644 game/addons/mat_maker_gd/icons/port_group_1.tres delete mode 100644 game/addons/mat_maker_gd/icons/port_group_2.tres delete mode 100644 game/addons/mat_maker_gd/icons/port_group_3.tres delete mode 100644 game/addons/mat_maker_gd/icons/randomness_locked.tres delete mode 100644 game/addons/mat_maker_gd/icons/randomness_unlocked.tres delete mode 100644 game/addons/mat_maker_gd/icons/remove.tres delete mode 100644 game/addons/mat_maker_gd/icons/up.tres delete mode 100644 game/addons/mat_maker_gd/new_resource.tres delete mode 100644 game/addons/mat_maker_gd/nodes/bases/curve_base.gd delete mode 100644 game/addons/mat_maker_gd/nodes/bases/gradient_base.gd delete mode 100644 game/addons/mat_maker_gd/nodes/bases/polygon_base.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/adjust_hsv.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/blend.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/blur_gaussian.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/brightness_contrast.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/colorize.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/combine.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/decompose.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/emboss.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/fill_channel.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/fill_to_color.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/fill_to_position.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/fill_to_random_color.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/fill_to_random_grey.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/fill_to_size.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/fill_to_uv.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/greyscale.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/invert.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/make_tileable.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/math.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/quantize.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/swap_channels.gd delete mode 100644 game/addons/mat_maker_gd/nodes/filter/tonality.gd delete mode 100644 game/addons/mat_maker_gd/nodes/gradient/circular_gradient.gd delete mode 100644 game/addons/mat_maker_gd/nodes/gradient/gradient.gd delete mode 100644 game/addons/mat_maker_gd/nodes/gradient/radial_gradient.gd delete mode 100644 game/addons/mat_maker_gd/nodes/noise/anisotropic_noise.gd delete mode 100644 game/addons/mat_maker_gd/nodes/noise/color_noise.gd delete mode 100644 game/addons/mat_maker_gd/nodes/noise/color_value.gd delete mode 100644 game/addons/mat_maker_gd/nodes/noise/fbm_noise.gd delete mode 100644 game/addons/mat_maker_gd/nodes/noise/noise.gd delete mode 100644 game/addons/mat_maker_gd/nodes/noise/voronoi.gd delete mode 100644 game/addons/mat_maker_gd/nodes/other/output_image.gd delete mode 100644 game/addons/mat_maker_gd/nodes/pattern/beehive.gd delete mode 100644 game/addons/mat_maker_gd/nodes/pattern/bricks.gd delete mode 100644 game/addons/mat_maker_gd/nodes/pattern/iching.gd delete mode 100644 game/addons/mat_maker_gd/nodes/pattern/pattern.gd delete mode 100644 game/addons/mat_maker_gd/nodes/pattern/runes.gd delete mode 100644 game/addons/mat_maker_gd/nodes/pattern/scratches.gd delete mode 100644 game/addons/mat_maker_gd/nodes/pattern/sine_wave.gd delete mode 100644 game/addons/mat_maker_gd/nodes/pattern/truchet.gd delete mode 100644 game/addons/mat_maker_gd/nodes/pattern/weave.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_op_annular_shape.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_op_bool.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_op_circle_repeat.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_op_morph.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_op_repeat.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_op_rounded_shape.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_op_smooth_bool.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_arc.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_box.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_circle.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_line.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_polygon.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_rhombus.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_show.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_tf_rotate.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_tf_scale.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf2d/sd_tf_translate.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_color.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_bool.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_circle_repeat.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_elongation.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_extrusion.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_morph.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_repeat.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_revolution.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_rounded.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_smooth_bool.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_render.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_box.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_capsule.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_cone.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_cylinder.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_sphere.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_torus.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_tf_rotate.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_tf_scale.gd delete mode 100644 game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_tf_translate.gd delete mode 100644 game/addons/mat_maker_gd/nodes/simple/curve.gd delete mode 100644 game/addons/mat_maker_gd/nodes/simple/image.gd delete mode 100644 game/addons/mat_maker_gd/nodes/simple/shape.gd delete mode 100644 game/addons/mat_maker_gd/nodes/transform/circle_map.gd delete mode 100644 game/addons/mat_maker_gd/nodes/transform/color_tiler.gd delete mode 100644 game/addons/mat_maker_gd/nodes/transform/kaleidoscope.gd delete mode 100644 game/addons/mat_maker_gd/nodes/transform/mirror.gd delete mode 100644 game/addons/mat_maker_gd/nodes/transform/repeat.gd delete mode 100644 game/addons/mat_maker_gd/nodes/transform/rotate.gd delete mode 100644 game/addons/mat_maker_gd/nodes/transform/scale.gd delete mode 100644 game/addons/mat_maker_gd/nodes/transform/shear.gd delete mode 100644 game/addons/mat_maker_gd/nodes/transform/tiler.gd delete mode 100644 game/addons/mat_maker_gd/nodes/transform/transform.gd delete mode 100644 game/addons/mat_maker_gd/nodes/transform/translate.gd delete mode 100644 game/addons/mat_maker_gd/nodes/uniform/greyscale_uniform.gd delete mode 100644 game/addons/mat_maker_gd/nodes/uniform/uniform.gd delete mode 100644 game/addons/mat_maker_gd/plugin.cfg delete mode 100644 game/addons/mat_maker_gd/plugin.gd delete mode 100644 game/addons/mat_maker_gd/widgets/color_picker_button/color_picker_button.gd delete mode 100644 game/addons/mat_maker_gd/widgets/color_picker_popup/color_picker_popup.tscn delete mode 100644 game/addons/mat_maker_gd/widgets/curve_edit/control_point.gd delete mode 100644 game/addons/mat_maker_gd/widgets/curve_edit/control_point.tscn delete mode 100644 game/addons/mat_maker_gd/widgets/curve_edit/curve_dialog.gd delete mode 100644 game/addons/mat_maker_gd/widgets/curve_edit/curve_dialog.tscn delete mode 100644 game/addons/mat_maker_gd/widgets/curve_edit/curve_edit.gd delete mode 100644 game/addons/mat_maker_gd/widgets/curve_edit/curve_edit.tscn delete mode 100644 game/addons/mat_maker_gd/widgets/curve_edit/curve_editor.gd delete mode 100644 game/addons/mat_maker_gd/widgets/curve_edit/curve_editor.tscn delete mode 100644 game/addons/mat_maker_gd/widgets/curve_edit/curve_view.gd delete mode 100644 game/addons/mat_maker_gd/widgets/curve_edit/curve_view.tscn delete mode 100644 game/addons/mat_maker_gd/widgets/curve_edit/slope_point.gd delete mode 100644 game/addons/mat_maker_gd/widgets/float_edit/float_edit.gd delete mode 100644 game/addons/mat_maker_gd/widgets/float_edit/float_edit.tscn delete mode 100644 game/addons/mat_maker_gd/widgets/gradient_editor/gradient_editor.gd delete mode 100644 game/addons/mat_maker_gd/widgets/gradient_editor/gradient_editor.tscn delete mode 100644 game/addons/mat_maker_gd/widgets/gradient_editor/gradient_popup.gd delete mode 100644 game/addons/mat_maker_gd/widgets/gradient_editor/gradient_popup.tscn delete mode 100644 game/addons/mat_maker_gd/widgets/image_picker_button/image_picker_button.gd delete mode 100644 game/addons/mat_maker_gd/widgets/image_picker_button/image_picker_button.tscn delete mode 100644 game/addons/mat_maker_gd/widgets/polygon_edit/control_point.gd delete mode 100644 game/addons/mat_maker_gd/widgets/polygon_edit/control_point.tscn delete mode 100644 game/addons/mat_maker_gd/widgets/polygon_edit/polygon_dialog.gd delete mode 100644 game/addons/mat_maker_gd/widgets/polygon_edit/polygon_dialog.tscn delete mode 100644 game/addons/mat_maker_gd/widgets/polygon_edit/polygon_edit.gd delete mode 100644 game/addons/mat_maker_gd/widgets/polygon_edit/polygon_edit.tscn delete mode 100644 game/addons/mat_maker_gd/widgets/polygon_edit/polygon_editor.gd delete mode 100644 game/addons/mat_maker_gd/widgets/polygon_edit/polygon_editor.tscn delete mode 100644 game/addons/mat_maker_gd/widgets/polygon_edit/polygon_view.gd delete mode 100644 game/addons/mat_maker_gd/widgets/polygon_edit/polygon_view.tscn delete mode 100644 game/addons/mat_maker_gd/windows/file_dialog/fav_button.tscn delete mode 100644 game/addons/mat_maker_gd/windows/file_dialog/file_dialog.gd delete mode 100644 game/addons/mat_maker_gd/windows/file_dialog/file_dialog.tscn delete mode 100644 game/addons/mat_maker_gd/windows/file_dialog/left_panel.gd delete mode 100644 game/addons/mat_maker_gd/windows/file_dialog/left_panel.tscn diff --git a/game/addons/mat_maker_gd/LICENSE.md b/game/addons/mat_maker_gd/LICENSE.md deleted file mode 100644 index ca6aeaf..0000000 --- a/game/addons/mat_maker_gd/LICENSE.md +++ /dev/null @@ -1,22 +0,0 @@ -# MIT License - -Copyright (c) 2020 Péter Magyar -Copyright (c) 2018-2020 Rodolphe Suescun and contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/game/addons/mat_maker_gd/README.md b/game/addons/mat_maker_gd/README.md deleted file mode 100644 index f5f42f6..0000000 --- a/game/addons/mat_maker_gd/README.md +++ /dev/null @@ -1,22 +0,0 @@ -# mat_maker_gd - -My goal with this project is to take Material Maker's ( https://github.com/RodZill4/material-maker ) code, -and make it an in-godot texture/image generator. - -If it turns out well I'll probably turn it into a c++ engine module eventually. - -Multi threading uses my threadpool engine module for now. - -## Status: - -Missing ~ 60 nodes from ~ 195. - -## TODOS - -- [ ] Go through the current MaterialMaker and add the code from all the new nodes. -- [ ] Go through the current MaterialMaker and update any old code. -- [ ] Add note to all files that has code from MaterialMaker. -- [ ] Proper readme.md. -- [ ] Per node seed like in the original. -- [ ] Port all the nodes. Missing ~ 60 from ~ 195 -- [ ] Somehow get ctrl-s to always just save the edited material, instead of having to double click it (for the inspector to update), and then clicking the save icon and selecting save. diff --git a/game/addons/mat_maker_gd/editor/CreateNamePopup.gd b/game/addons/mat_maker_gd/editor/CreateNamePopup.gd deleted file mode 100644 index c014226..0000000 --- a/game/addons/mat_maker_gd/editor/CreateNamePopup.gd +++ /dev/null @@ -1,65 +0,0 @@ -tool -extends ConfirmationDialog - -signal ok_pressed - -export(NodePath) var line_edit_path : NodePath -export(NodePath) var tree_path : NodePath - -export(PoolStringArray) var type_folders : PoolStringArray - -var _resource_type : String = "MMNode" - -var _line_edit : LineEdit -var _tree : Tree - -func _ready(): - _line_edit = get_node(line_edit_path) as LineEdit - _tree = get_node(tree_path) as Tree - - connect("confirmed", self, "_on_OK_pressed") - connect("about_to_show", self, "about_to_show") - -func set_resource_type(resource_type : String) -> void: - _resource_type = resource_type - -func about_to_show(): - _tree.clear() - - var root : TreeItem = _tree.create_item() - - for s in type_folders: - evaluate_folder(s, root) - -func evaluate_folder(folder : String, root : TreeItem) -> void: - var ti : TreeItem = _tree.create_item(root) - ti.set_text(0, folder.substr(folder.find_last("/") + 1)) - - var dir = Directory.new() - if dir.open(folder) == OK: - dir.list_dir_begin() - var file_name = dir.get_next() - while file_name != "": - if !dir.current_is_dir(): - print("Found file: " + file_name) - var e : TreeItem = _tree.create_item(ti) - - e.set_text(0, file_name.get_file()) - e.set_meta("file", folder + "/" + file_name) - - file_name = dir.get_next() - else: - print("An error occurred when trying to access the path.") - -func _on_OK_pressed(): - var selected : TreeItem = _tree.get_selected() - - if selected: - if !selected.has_meta("file"): - hide() - return - - var file_name : String = selected.get_meta("file") - emit_signal("ok_pressed", file_name) - - hide() diff --git a/game/addons/mat_maker_gd/editor/CreateNamePopup.tscn b/game/addons/mat_maker_gd/editor/CreateNamePopup.tscn deleted file mode 100644 index b2f22ac..0000000 --- a/game/addons/mat_maker_gd/editor/CreateNamePopup.tscn +++ /dev/null @@ -1,61 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/editor/CreateNamePopup.gd" type="Script" id=1] - -[node name="CreateNamePopup" type="ConfirmationDialog"] -anchor_left = 0.5 -anchor_top = 0.5 -anchor_right = 0.5 -anchor_bottom = 0.5 -margin_left = -245.5 -margin_top = -220.0 -margin_right = 245.5 -margin_bottom = 220.0 -window_title = "Create New Resource" -script = ExtResource( 1 ) -__meta__ = { -"_edit_use_anchors_": false -} -line_edit_path = NodePath("VBoxContainer/LineEdit") -tree_path = NodePath("VBoxContainer/Tree") - -[node name="VBoxContainer" type="VBoxContainer" parent="."] -margin_left = 8.0 -margin_top = 8.0 -margin_right = 483.0 -margin_bottom = 404.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Label2" type="Label" parent="VBoxContainer"] -margin_right = 475.0 -margin_bottom = 14.0 -size_flags_horizontal = 3 -text = "Type" - -[node name="Tree" type="Tree" parent="VBoxContainer"] -margin_top = 18.0 -margin_right = 475.0 -margin_bottom = 350.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 -hide_root = true - -[node name="Label" type="Label" parent="VBoxContainer"] -visible = false -margin_top = 354.0 -margin_right = 475.0 -margin_bottom = 368.0 -size_flags_horizontal = 3 -text = "Name" - -[node name="LineEdit" type="LineEdit" parent="VBoxContainer"] -visible = false -margin_top = 372.0 -margin_right = 475.0 -margin_bottom = 396.0 -size_flags_horizontal = 3 -caret_blink = true diff --git a/game/addons/mat_maker_gd/editor/MatMakerGDEditor.gd b/game/addons/mat_maker_gd/editor/MatMakerGDEditor.gd deleted file mode 100644 index 3b3cf5a..0000000 --- a/game/addons/mat_maker_gd/editor/MatMakerGDEditor.gd +++ /dev/null @@ -1,218 +0,0 @@ -tool -extends MarginContainer - -var MMGraphNode = preload("res://addons/mat_maker_gd/editor/mm_graph_node.gd") - -export(NodePath) var graph_edit_path : NodePath = "VBoxContainer/GraphEdit" -export(NodePath) var add_popup_path : NodePath = "Popups/AddPopup" - -var _graph_edit : GraphEdit = null - -var _material : MMMaterial -var _ignore_material_change_event : int = 0 -var _recreation_in_progress : bool = false - -var _plugin : EditorPlugin = null -var _undo_redo : UndoRedo = null - -func _enter_tree(): - ensure_objs() - -func set_plugin(plugin : EditorPlugin) -> void: - _plugin = plugin - _undo_redo = plugin.get_undo_redo() - -func get_undo_redo() -> UndoRedo: - return _undo_redo - -func ensure_objs() -> void: - if !_graph_edit: - _graph_edit = get_node(graph_edit_path) - - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_IMAGE, MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_INT, MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_FLOAT, MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_VECTOR2, MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_VECTOR3, MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_COLOR, MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL) - - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL, MMNodeUniversalProperty.SLOT_TYPE_IMAGE) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL, MMNodeUniversalProperty.SLOT_TYPE_INT) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL, MMNodeUniversalProperty.SLOT_TYPE_FLOAT) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL, MMNodeUniversalProperty.SLOT_TYPE_VECTOR2) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL, MMNodeUniversalProperty.SLOT_TYPE_VECTOR3) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL, MMNodeUniversalProperty.SLOT_TYPE_COLOR) - - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL, MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL) - - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_IMAGE, MMNodeUniversalProperty.SLOT_TYPE_IMAGE) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_INT, MMNodeUniversalProperty.SLOT_TYPE_INT) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_FLOAT, MMNodeUniversalProperty.SLOT_TYPE_FLOAT) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_VECTOR2, MMNodeUniversalProperty.SLOT_TYPE_VECTOR2) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_VECTOR3, MMNodeUniversalProperty.SLOT_TYPE_VECTOR3) - _graph_edit.add_valid_connection_type(MMNodeUniversalProperty.SLOT_TYPE_COLOR, MMNodeUniversalProperty.SLOT_TYPE_COLOR) - - _graph_edit.connect("connection_request", self, "on_graph_edit_connection_request") - _graph_edit.connect("disconnection_request", self, "on_graph_edit_disconnection_request") - -func recreate() -> void: - ignore_changes(true) - - if _recreation_in_progress: - return - - _recreation_in_progress = true - - ensure_objs() - - _graph_edit.clear_connections() - - for c in _graph_edit.get_children(): - if c is GraphNode: - _graph_edit.remove_child(c) - c.queue_free() - - if !_material: - return - - _material.cancel_render_and_wait() - - for n in _material.nodes: - var gn : GraphNode = MMGraphNode.new() - gn.set_editor(self) - gn.set_node(_material, n) - _graph_edit.add_child(gn) - - #connect them - for n in _material.nodes: - if n: - for ip in n.input_properties: - if ip.input_property: - var input_node : Node = find_graph_node_for(n) - var output_node : Node = find_graph_node_for(ip.input_property.owner) - - var to_slot : int = input_node.get_input_property_graph_node_slot_index(ip) - var from_slot : int = output_node.get_output_property_graph_node_slot_index(ip.input_property) - - _graph_edit.connect_node(output_node.name, from_slot, input_node.name, to_slot) - - _material.render() - - _recreation_in_progress = false - - ignore_changes(false) - -func find_graph_node_for(nnode) -> Node: - for c in _graph_edit.get_children(): - if c is GraphNode: - if c.has_method("get_material_node"): - var n = c.get_material_node() - - if n == nnode: - return c - - return null - -func set_mmmaterial(object : MMMaterial): - if _material: - _material.disconnect("changed", self, "on_material_changed") - - _material = object - - recreate() - - if _material: - _material.connect("changed", self, "on_material_changed") - -func on_material_changed() -> void: - if _ignore_material_change_event > 0: - return - - if _recreation_in_progress: - return - - call_deferred("recreate") - -func ignore_changes(val : bool) -> void: - if val: - _ignore_material_change_event += 1 - else: - _ignore_material_change_event -= 1 - -func on_graph_edit_connection_request(from: String, from_slot: int, to: String, to_slot: int): - var from_node : GraphNode = _graph_edit.get_node(from) - var to_node : GraphNode = _graph_edit.get_node(to) - - ignore_changes(true) - - _material.cancel_render_and_wait() - - if from_node.connect_slot(from_slot, to_node, to_slot): - _graph_edit.connect_node(from, from_slot, to, to_slot) - - ignore_changes(false) - -func on_graph_edit_disconnection_request(from: String, from_slot: int, to: String, to_slot: int): - var from_node : GraphNode = _graph_edit.get_node(from) - var to_node : GraphNode = _graph_edit.get_node(to) - - ignore_changes(true) - - _material.cancel_render_and_wait() - - if from_node.disconnect_slot(from_slot, to_node, to_slot): - _graph_edit.disconnect_node(from, from_slot, to, to_slot) - - ignore_changes(false) - -func on_graph_node_close_request(node : GraphNode) -> void: - if _material: - ignore_changes(true) - - _material.cancel_render_and_wait() - - #_material.remove_node(node._node) - - _undo_redo.create_action("MMGD: Remove Node") - _undo_redo.add_do_method(_material, "remove_node", node._node) - _undo_redo.add_undo_method(_material, "add_node", node._node) - _undo_redo.commit_action() - - recreate() - - ignore_changes(false) - -func _on_AddButton_pressed(): - get_node(add_popup_path).popup_centered() - -func _on_AddPopup_ok_pressed(script_path : String): - if !_material: - return - - ensure_objs() - - _material.cancel_render_and_wait() - - var sc = load(script_path) - var nnode : MMNode = sc.new() - - if !nnode: - print("_on_AddPopup_ok_pressed: Error !nnode! script: " + script_path) - return - - ignore_changes(true) - - #_material.add_node(nnode) - - _undo_redo.create_action("MMGD: Add Node") - _undo_redo.add_do_method(_material, "add_node", nnode) - _undo_redo.add_undo_method(_material, "remove_node", nnode) - _undo_redo.commit_action() - - var gn : GraphNode = MMGraphNode.new() - gn.set_editor(self) - gn.set_node(_material, nnode) - _graph_edit.add_child(gn) - - ignore_changes(false) - diff --git a/game/addons/mat_maker_gd/editor/MatMakerGDEditor.tscn b/game/addons/mat_maker_gd/editor/MatMakerGDEditor.tscn deleted file mode 100644 index 1228ed0..0000000 --- a/game/addons/mat_maker_gd/editor/MatMakerGDEditor.tscn +++ /dev/null @@ -1,51 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://addons/mat_maker_gd/editor/MatMakerGDEditor.gd" type="Script" id=1] -[ext_resource path="res://addons/mat_maker_gd/editor/CreateNamePopup.tscn" type="PackedScene" id=2] - -[node name="MatMakerGDEditor" type="MarginContainer"] -anchor_right = 1.0 -anchor_bottom = 1.0 -rect_min_size = Vector2( 0, 200 ) -size_flags_horizontal = 3 -size_flags_vertical = 3 -script = ExtResource( 1 ) - -[node name="VBoxContainer" type="VBoxContainer" parent="."] -margin_right = 1024.0 -margin_bottom = 600.0 - -[node name="PanelContainer" type="PanelContainer" parent="VBoxContainer"] -margin_right = 1024.0 -margin_bottom = 34.0 - -[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/PanelContainer"] -margin_left = 7.0 -margin_top = 7.0 -margin_right = 1017.0 -margin_bottom = 27.0 - -[node name="AddButton" type="Button" parent="VBoxContainer/PanelContainer/HBoxContainer"] -margin_right = 37.0 -margin_bottom = 20.0 -text = "Add" - -[node name="GraphEdit" type="GraphEdit" parent="VBoxContainer"] -margin_top = 38.0 -margin_right = 1024.0 -margin_bottom = 600.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 -right_disconnects = true -scroll_offset = Vector2( 0, -20 ) - -[node name="Popups" type="Control" parent="."] -margin_right = 1024.0 -margin_bottom = 600.0 -mouse_filter = 2 - -[node name="AddPopup" parent="Popups" instance=ExtResource( 2 )] -type_folders = PoolStringArray( "res://addons/mat_maker_gd/nodes/uniform", "res://addons/mat_maker_gd/nodes/noise", "res://addons/mat_maker_gd/nodes/filter", "res://addons/mat_maker_gd/nodes/gradient", "res://addons/mat_maker_gd/nodes/pattern", "res://addons/mat_maker_gd/nodes/sdf2d", "res://addons/mat_maker_gd/nodes/sdf3d", "res://addons/mat_maker_gd/nodes/transform", "res://addons/mat_maker_gd/nodes/simple", "res://addons/mat_maker_gd/nodes/other" ) - -[connection signal="pressed" from="VBoxContainer/PanelContainer/HBoxContainer/AddButton" to="." method="_on_AddButton_pressed"] -[connection signal="ok_pressed" from="Popups/AddPopup" to="." method="_on_AddPopup_ok_pressed"] diff --git a/game/addons/mat_maker_gd/editor/mm_graph_node.gd b/game/addons/mat_maker_gd/editor/mm_graph_node.gd deleted file mode 100644 index a5f753d..0000000 --- a/game/addons/mat_maker_gd/editor/mm_graph_node.gd +++ /dev/null @@ -1,742 +0,0 @@ -tool -extends GraphNode - -var gradient_editor_scene : PackedScene = preload("res://addons/mat_maker_gd/widgets/gradient_editor/gradient_editor.tscn") -var polygon_edit_scene : PackedScene = preload("res://addons/mat_maker_gd/widgets/polygon_edit/polygon_edit.tscn") -var curve_edit_scene : PackedScene = preload("res://addons/mat_maker_gd/widgets/curve_edit/curve_edit.tscn") - -var _material : MMMaterial = null -var _node : MMNode = null -var properties : Array = Array() - -var _editor_node -var _undo_redo : UndoRedo = null -var _ignore_change_event : bool = false - -func _init(): - show_close = true - connect("dragged", self, "on_dragged") - connect("close_request", self, "on_close_request") - -func set_editor(editor_node) -> void: - _editor_node = editor_node - - _undo_redo = _editor_node.get_undo_redo() - -func ignore_changes(val : bool) -> void: - _ignore_change_event = val - _editor_node.ignore_changes(val) - -func add_slot_texture(getter : String, setter : String) -> int: - var t : TextureRect = TextureRect.new() - t.rect_min_size = Vector2(128, 128) - t.expand = true - t.stretch_mode = TextureRect.STRETCH_KEEP_ASPECT_CENTERED - - var slot_idx : int = add_slot(MMNodeUniversalProperty.SLOT_TYPE_NONE, MMNodeUniversalProperty.SLOT_TYPE_NONE, getter, setter, t) - - t.texture = _node.call(getter, _material, slot_idx) - properties[slot_idx].append(t.texture) - - return slot_idx - -func add_slot_texture_universal(property : MMNodeUniversalProperty) -> int: - var t : TextureRect = TextureRect.new() - t.rect_min_size = Vector2(128, 128) - t.expand = true - t.stretch_mode = TextureRect.STRETCH_KEEP_ASPECT_CENTERED - - var slot_idx : int = add_slot(property.input_slot_type, property.output_slot_type, "", "", t) - - var img : Image = property.get_active_image() - - var tex : ImageTexture = ImageTexture.new() - - if img: - tex.create_from_image(img, 0) - - t.texture = tex - - properties[slot_idx].append(property) - - property.connect("changed", self, "on_universal_texture_changed", [ slot_idx ]) - - return slot_idx - -func add_slot_image_path_universal(property : MMNodeUniversalProperty, getter : String, setter : String) -> int: - var t : TextureButton = load("res://addons/mat_maker_gd/widgets/image_picker_button/image_picker_button.tscn").instance() - - var slot_idx : int = add_slot(property.input_slot_type, property.output_slot_type, "", "", t) - - properties[slot_idx].append(property) - properties[slot_idx].append(getter) - properties[slot_idx].append(setter) - - property.connect("changed", self, "on_universal_texture_changed_image_picker", [ slot_idx ]) - - t.connect("on_file_selected", self, "on_universal_image_path_changed", [ slot_idx ]) - - t.call_deferred("do_set_image_path", _node.call(getter)) - - return slot_idx - - -func add_slot_gradient() -> int: - var ge : Control = gradient_editor_scene.instance() - ge.graph_node = self - ge.set_undo_redo(_undo_redo) - - var slot_idx : int = add_slot(MMNodeUniversalProperty.SLOT_TYPE_NONE, MMNodeUniversalProperty.SLOT_TYPE_NONE, "", "", ge) - - ge.set_value(_node) - #ge.texture = _node.call(getter, _material, slot_idx) - #properties[slot_idx].append(ge.texture) - - return slot_idx - -func add_slot_polygon() -> int: - var ge : Control = polygon_edit_scene.instance() - - var slot_idx : int = add_slot(MMNodeUniversalProperty.SLOT_TYPE_NONE, MMNodeUniversalProperty.SLOT_TYPE_NONE, "", "", ge) - - ge.set_value(_node) - #ge.texture = _node.call(getter, _material, slot_idx) - #properties[slot_idx].append(ge.texture) - - return slot_idx - -func add_slot_curve() -> int: - var ge : Control = curve_edit_scene.instance() - - var slot_idx : int = add_slot(MMNodeUniversalProperty.SLOT_TYPE_NONE, MMNodeUniversalProperty.SLOT_TYPE_NONE, "", "", ge) - - ge.set_value(_node) - #ge.texture = _node.call(getter, _material, slot_idx) - #properties[slot_idx].append(ge.texture) - - return slot_idx - -func add_slot_color(getter : String, setter : String) -> int: - var cp : ColorPickerButton = ColorPickerButton.new() - - var slot_idx : int = add_slot(MMNodeUniversalProperty.SLOT_TYPE_NONE, MMNodeUniversalProperty.SLOT_TYPE_NONE, getter, setter, cp) - - cp.color = _node.call(getter) - - cp.connect("color_changed", _node, setter) - - return slot_idx - -func add_slot_color_universal(property : MMNodeUniversalProperty) -> int: - var cp : ColorPickerButton = ColorPickerButton.new() - - var slot_idx : int = add_slot(property.input_slot_type, property.output_slot_type, "", "", cp) - - cp.color = property.get_default_value() - - properties[slot_idx].append(property) - - cp.connect("color_changed", self, "on_universal_color_changed", [ slot_idx ]) - - return slot_idx - -func add_slot_label(getter : String, setter : String, slot_name : String) -> int: - var l : Label = Label.new() - - l.text = slot_name - - return add_slot(MMNodeUniversalProperty.SLOT_TYPE_NONE, MMNodeUniversalProperty.SLOT_TYPE_NONE, getter, setter, l) - -func add_slot_line_edit(getter : String, setter : String, slot_name : String, placeholder : String = "") -> int: - var bc : VBoxContainer = VBoxContainer.new() - - var l : Label = Label.new() - l.text = slot_name - bc.add_child(l) - - var le : LineEdit = LineEdit.new() - le.placeholder_text = placeholder - bc.add_child(le) - - var slot_idx : int = add_slot(MMNodeUniversalProperty.SLOT_TYPE_NONE, MMNodeUniversalProperty.SLOT_TYPE_NONE, getter, setter, bc) - - le.text = _node.call(getter) - - le.connect("text_entered", self, "on_slot_line_edit_text_entered", [ slot_idx ]) - - return slot_idx - -func add_slot_enum(getter : String, setter : String, slot_name : String, values : Array) -> int: - var bc : VBoxContainer = VBoxContainer.new() - - if slot_name: - var l : Label = Label.new() - l.text = slot_name - bc.add_child(l) - - var mb : OptionButton = OptionButton.new() - - for v in values: - mb.add_item(v) - - bc.add_child(mb) - - var slot_idx : int = add_slot(MMNodeUniversalProperty.SLOT_TYPE_NONE, MMNodeUniversalProperty.SLOT_TYPE_NONE, getter, setter, bc) - - mb.selected = _node.call(getter) - - mb.connect("item_selected", self, "on_slot_enum_item_selected", [ slot_idx ]) - - return slot_idx - -func add_slot_int(getter : String, setter : String, slot_name : String, prange : Vector2 = Vector2(-1000, 1000)) -> int: - var bc : VBoxContainer = VBoxContainer.new() - - var l : Label = Label.new() - l.text = slot_name - bc.add_child(l) - - var sb : SpinBox = SpinBox.new() - sb.rounded = true - sb.min_value = prange.x - sb.max_value = prange.y - bc.add_child(sb) - - var slot_idx : int = add_slot(MMNodeUniversalProperty.SLOT_TYPE_NONE, MMNodeUniversalProperty.SLOT_TYPE_NONE, getter, setter, bc) - - sb.value = _node.call(getter) - - sb.connect("value_changed", self, "on_int_spinbox_value_changed", [ slot_idx ]) - - return slot_idx - -func add_slot_bool(getter : String, setter : String, slot_name : String) -> int: - var cb : CheckBox = CheckBox.new() - cb.text = slot_name - - var slot_idx : int = add_slot(MMNodeUniversalProperty.SLOT_TYPE_NONE, MMNodeUniversalProperty.SLOT_TYPE_NONE, getter, setter, cb) - - cb.pressed = _node.call(getter) - - cb.connect("toggled", _node, setter) - - return slot_idx - -func add_slot_label_universal(property : MMNodeUniversalProperty) -> int: - var l : Label = Label.new() - l.text = property.slot_name - - var slot_idx : int = add_slot(property.input_slot_type, property.output_slot_type, "", "", l) - - properties[slot_idx].append(property) - - return slot_idx - -func add_slot_int_universal(property : MMNodeUniversalProperty) -> int: - var bc : VBoxContainer = VBoxContainer.new() - - var l : Label = Label.new() - l.text = property.slot_name - bc.add_child(l) - - var sb : SpinBox = SpinBox.new() - sb.rounded = true - sb.min_value = property.value_range.x - sb.max_value = property.value_range.y - bc.add_child(sb) - - var slot_idx : int = add_slot(property.input_slot_type, property.output_slot_type, "", "", bc) - - sb.value = property.get_default_value() - - sb.connect("value_changed", self, "on_int_universal_spinbox_value_changed", [ slot_idx ]) - - properties[slot_idx].append(property) - - return slot_idx - -func add_slot_float(getter : String, setter : String, slot_name : String, step : float = 0.1, prange : Vector2 = Vector2(-1000, 1000)) -> int: - var bc : VBoxContainer = VBoxContainer.new() - - var l : Label = Label.new() - l.text = slot_name - bc.add_child(l) - - var sb : SpinBox = SpinBox.new() - bc.add_child(sb) - - var slot_idx : int = add_slot(MMNodeUniversalProperty.SLOT_TYPE_NONE, MMNodeUniversalProperty.SLOT_TYPE_NONE, getter, setter, bc) - sb.rounded = false - sb.step = step - sb.min_value = prange.x - sb.max_value = prange.y - sb.value = _node.call(getter) - - sb.connect("value_changed", self, "on_float_spinbox_value_changed", [ slot_idx ]) - - return slot_idx - -func add_slot_float_universal(property : MMNodeUniversalProperty) -> int: - var bc : VBoxContainer = VBoxContainer.new() - - var l : Label = Label.new() - l.text = property.slot_name - bc.add_child(l) - - var sb : SpinBox = SpinBox.new() - bc.add_child(sb) - - var slot_idx : int = add_slot(property.input_slot_type, property.output_slot_type, "", "", bc) - sb.rounded = false - sb.step = property.value_step - sb.min_value = property.value_range.x - sb.max_value = property.value_range.y - sb.value = property.get_default_value() - - properties[slot_idx].append(property) - - sb.connect("value_changed", self, "on_float_universal_spinbox_value_changed", [ slot_idx ]) - - return slot_idx - -func add_slot_vector2(getter : String, setter : String, slot_name : String, step : float = 0.1, prange : Vector2 = Vector2(-1000, 1000)) -> int: - var bc : VBoxContainer = VBoxContainer.new() - - var l : Label = Label.new() - l.text = slot_name - bc.add_child(l) - - var sbx : SpinBox = SpinBox.new() - bc.add_child(sbx) - - var sby : SpinBox = SpinBox.new() - bc.add_child(sby) - - var slot_idx : int = add_slot(MMNodeUniversalProperty.SLOT_TYPE_NONE, MMNodeUniversalProperty.SLOT_TYPE_NONE, getter, setter, bc) - sbx.rounded = false - sby.rounded = false - sbx.step = step - sby.step = step - sbx.min_value = prange.x - sbx.max_value = prange.y - sby.min_value = prange.x - sby.max_value = prange.y - - var val : Vector2 = _node.call(getter) - - sbx.value = val.x - sby.value = val.y - - sbx.connect("value_changed", self, "on_vector2_spinbox_value_changed", [ slot_idx, sbx, sby ]) - sby.connect("value_changed", self, "on_vector2_spinbox_value_changed", [ slot_idx, sbx, sby ]) - - return slot_idx - -func add_slot_vector3(getter : String, setter : String, slot_name : String, step : float = 0.1, prange : Vector2 = Vector2(-1000, 1000)) -> int: - var bc : VBoxContainer = VBoxContainer.new() - - var l : Label = Label.new() - l.text = slot_name - bc.add_child(l) - - var sbx : SpinBox = SpinBox.new() - bc.add_child(sbx) - - var sby : SpinBox = SpinBox.new() - bc.add_child(sby) - - var sbz : SpinBox = SpinBox.new() - bc.add_child(sbz) - - var slot_idx : int = add_slot(MMNodeUniversalProperty.SLOT_TYPE_NONE, MMNodeUniversalProperty.SLOT_TYPE_NONE, getter, setter, bc) - sbx.rounded = false - sby.rounded = false - sbz.rounded = false - sbx.step = step - sby.step = step - sbz.step = step - sbx.min_value = prange.x - sbx.max_value = prange.y - sby.min_value = prange.x - sby.max_value = prange.y - sbz.min_value = prange.x - sbz.max_value = prange.y - - var val : Vector3 = _node.call(getter) - - sbx.value = val.x - sby.value = val.y - sbz.value = val.z - - sbx.connect("value_changed", self, "on_vector3_spinbox_value_changed", [ slot_idx, sbx, sby, sbz ]) - sby.connect("value_changed", self, "on_vector3_spinbox_value_changed", [ slot_idx, sbx, sby, sbz ]) - sbz.connect("value_changed", self, "on_vector3_spinbox_value_changed", [ slot_idx, sbx, sby, sbz ]) - - return slot_idx - -func add_slot_vector2_universal(property : MMNodeUniversalProperty) -> int: - var bc : VBoxContainer = VBoxContainer.new() - - var l : Label = Label.new() - l.text = property.slot_name - bc.add_child(l) - - var sbx : SpinBox = SpinBox.new() - bc.add_child(sbx) - - var sby : SpinBox = SpinBox.new() - bc.add_child(sby) - - var slot_idx : int = add_slot(property.input_slot_type, property.output_slot_type, "", "", bc) - sbx.rounded = false - sby.rounded = false - sbx.step = property.value_step - sby.step = property.value_step - sbx.min_value = property.value_range.x - sbx.max_value = property.value_range.y - sby.min_value = property.value_range.x - sby.max_value = property.value_range.y - - var val : Vector2 = property.get_default_value() - - sbx.value = val.x - sby.value = val.y - - properties[slot_idx].append(property) - - sbx.connect("value_changed", self, "on_vector2_universal_spinbox_value_changed", [ slot_idx, sbx, sby ]) - sby.connect("value_changed", self, "on_vector2_universal_spinbox_value_changed", [ slot_idx, sbx, sby ]) - - return slot_idx - -func add_slot(input_type : int, output_type : int, getter : String, setter : String, control : Control) -> int: - add_child(control) - var slot_idx : int = get_child_count() - 1 - - var arr : Array = Array() - - arr.append(slot_idx) - arr.append(input_type) - arr.append(output_type) - arr.append(getter) - arr.append(setter) - arr.append(control) - - properties.append(arr) - - set_slot_enabled_left(slot_idx, input_type != -1) - set_slot_enabled_right(slot_idx, output_type != -1) - - if input_type != -1: - set_slot_type_left(slot_idx, input_type) - set_slot_color_left(slot_idx, get_slot_color(input_type)) - - if output_type != -1: - set_slot_type_left(slot_idx, output_type) - set_slot_color_right(slot_idx, get_slot_color(output_type)) - - return slot_idx - -func connect_slot(slot_idx : int, to_node : Node, to_slot_idx : int) -> bool: - var from_property_index : int = -1 - var to_property_index : int = -1 - - for i in range(properties.size()): - if properties[i][2] != -1: - from_property_index += 1 - - if from_property_index == slot_idx: - from_property_index = i - break - - for i in range(to_node.properties.size()): - if to_node.properties[i][1] != -1: - to_property_index += 1 - - if to_property_index == to_slot_idx: - to_property_index = i - break - - #to_node.properties[to_property_index][6].set_input_property(properties[from_property_index][6]) - - _undo_redo.create_action("MMGD: connect_slot") - _undo_redo.add_do_method(to_node.properties[to_property_index][6], "set_input_property", properties[from_property_index][6]) - _undo_redo.add_undo_method(to_node.properties[to_property_index][6], "set_input_property", to_node.properties[to_property_index][6].input_property) - _undo_redo.commit_action() - - return true - -func disconnect_slot(slot_idx : int, to_node : Node, to_slot_idx : int) -> bool: - var from_property_index : int = -1 - var to_property_index : int = -1 - - for i in range(properties.size()): - if properties[i][2] != -1: - from_property_index += 1 - - if from_property_index == slot_idx: - from_property_index = i - break - - for i in range(to_node.properties.size()): - if to_node.properties[i][1] != -1: - to_property_index += 1 - - if to_property_index == to_slot_idx: - to_property_index = i - break - - #to_node.properties[to_property_index][6].set_input_property(null) - - _undo_redo.create_action("MMGD: disconnect_slot") - _undo_redo.add_do_method(to_node.properties[to_property_index][6], "unset_input_property") - _undo_redo.add_undo_method(to_node.properties[to_property_index][6], "set_input_property", to_node.properties[to_property_index][6].input_property) - _undo_redo.commit_action() - - return true - -func get_input_property_graph_node_slot_index(property) -> int: - var property_index : int = -1 - - for i in range(properties.size()): - if properties[i][1] != -1: - property_index += 1 - - if properties[i][6] == property: - break - - return property_index - -func get_output_property_graph_node_slot_index(property) -> int: - var property_index : int = -1 - - for i in range(properties.size()): - if properties[i][2] != -1: - property_index += 1 - - if properties[i][6] == property: - break - - return property_index - -func get_property_control(slot_idx : int) -> Node: - return properties[slot_idx][5] - -func set_node(material : MMMaterial, node : MMNode) -> void: - _node = node - _material = material - - if !_node: - return - - title = _node.get_class() - - if _node.get_script(): - title = _node.get_script().resource_path.get_file().get_basename() - - _node.register_methods(self) - - offset = _node.get_graph_position() - - #_node.connect("changed", self, "on_node_changed") - -func propagate_node_change() -> void: - pass - -func on_dragged(from : Vector2, to : Vector2): - if _node: - ignore_changes(true) - #_node.set_graph_position(offset) - - _undo_redo.create_action("MMGD: value changed") - _undo_redo.add_do_method(_node, "set_graph_position", to) - _undo_redo.add_undo_method(_node, "set_graph_position", from) - _undo_redo.commit_action() - - ignore_changes(false) - -#func on_node_changed(): -# if _ignore_change_event: -# return -# -# _ignore_change_event = true -# propagate_node_change() -# _ignore_change_event = false - -func on_int_spinbox_value_changed(val : float, slot_idx) -> void: - #_node.call(properties[slot_idx][4], int(val)) - - ignore_changes(true) - _undo_redo.create_action("MMGD: value changed") - _undo_redo.add_do_method(_node, properties[slot_idx][4], int(val)) - _undo_redo.add_undo_method(_node, properties[slot_idx][4], _node.call(properties[slot_idx][3])) - _undo_redo.commit_action() - ignore_changes(false) - -func on_float_spinbox_value_changed(val : float, slot_idx) -> void: - #_node.call(properties[slot_idx][4], val) - - ignore_changes(true) - _undo_redo.create_action("MMGD: value changed") - _undo_redo.add_do_method(_node, properties[slot_idx][4], val) - _undo_redo.add_undo_method(_node, properties[slot_idx][4], _node.call(properties[slot_idx][3])) - _undo_redo.commit_action() - ignore_changes(false) - -func on_vector2_spinbox_value_changed(val : float, slot_idx, spinbox_x, spinbox_y) -> void: - var vv : Vector2 = Vector2(spinbox_x.value, spinbox_y.value) - - #_node.call(properties[slot_idx][4], vv) - - ignore_changes(true) - _undo_redo.create_action("MMGD: value changed") - _undo_redo.add_do_method(_node, properties[slot_idx][4], vv) - _undo_redo.add_undo_method(_node, properties[slot_idx][4], _node.call(properties[slot_idx][3])) - _undo_redo.commit_action() - ignore_changes(false) - -func on_vector3_spinbox_value_changed(val : float, slot_idx, spinbox_x, spinbox_y, spinbox_z) -> void: - var vv : Vector3 = Vector3(spinbox_x.value, spinbox_y.value, spinbox_z.value) - - #_node.call(properties[slot_idx][4], vv) - - ignore_changes(true) - _undo_redo.create_action("MMGD: value changed") - _undo_redo.add_do_method(_node, properties[slot_idx][4], vv) - _undo_redo.add_undo_method(_node, properties[slot_idx][4], _node.call(properties[slot_idx][3])) - _undo_redo.commit_action() - ignore_changes(false) - -func on_int_universal_spinbox_value_changed(val : float, slot_idx) -> void: - #properties[slot_idx][6].set_default_value(int(val)) - - ignore_changes(true) - _undo_redo.create_action("MMGD: value changed") - _undo_redo.add_do_method(properties[slot_idx][6], "set_default_value", int(val)) - _undo_redo.add_undo_method(properties[slot_idx][6], "set_default_value", properties[slot_idx][6].get_default_value()) - _undo_redo.commit_action() - ignore_changes(false) - -func on_float_universal_spinbox_value_changed(val : float, slot_idx) -> void: - #properties[slot_idx][6].set_default_value(val) - - ignore_changes(true) - _undo_redo.create_action("MMGD: value changed") - _undo_redo.add_do_method(properties[slot_idx][6], "set_default_value", val) - _undo_redo.add_undo_method(properties[slot_idx][6], "set_default_value", properties[slot_idx][6].get_default_value()) - _undo_redo.commit_action() - ignore_changes(false) - -func on_vector2_universal_spinbox_value_changed(val : float, slot_idx, spinbox_x, spinbox_y) -> void: - var vv : Vector2 = Vector2(spinbox_x.value, spinbox_y.value) - - #properties[slot_idx][6].set_default_value(vv) - - ignore_changes(true) - _undo_redo.create_action("MMGD: value changed") - _undo_redo.add_do_method(properties[slot_idx][6], "set_default_value", vv) - _undo_redo.add_undo_method(properties[slot_idx][6], "set_default_value", properties[slot_idx][6].get_default_value()) - _undo_redo.commit_action() - ignore_changes(false) - -func on_slot_enum_item_selected(val : int, slot_idx : int) -> void: - #_node.call(properties[slot_idx][4], val) - - ignore_changes(true) - _undo_redo.create_action("MMGD: value changed") - _undo_redo.add_do_method(_node, properties[slot_idx][4], val) - _undo_redo.add_undo_method(_node, properties[slot_idx][4], _node.call(properties[slot_idx][3])) - _undo_redo.commit_action() - ignore_changes(false) - -func on_universal_texture_changed(slot_idx : int) -> void: - ignore_changes(true) - - var img : Image = properties[slot_idx][6].get_active_image() - - var tex : ImageTexture = properties[slot_idx][5].texture - - if img: - properties[slot_idx][5].texture.create_from_image(img, 0) - else: - properties[slot_idx][5].texture = ImageTexture.new() - - ignore_changes(false) - -func on_universal_texture_changed_image_picker(slot_idx : int) -> void: - ignore_changes(true) - - var img : Image = properties[slot_idx][6].get_active_image() - - var tex : ImageTexture = properties[slot_idx][5].texture_normal - - if img: - properties[slot_idx][5].texture_normal.create_from_image(img, 0) - else: - properties[slot_idx][5].texture_normal = ImageTexture.new() - - ignore_changes(false) - -func on_slot_line_edit_text_entered(text : String, slot_idx : int) -> void: - #_node.call(properties[slot_idx][4], text) - - ignore_changes(true) - _undo_redo.create_action("MMGD: value changed") - _undo_redo.add_do_method(_node, properties[slot_idx][4], text) - _undo_redo.add_undo_method(_node, properties[slot_idx][4], _node.call(properties[slot_idx][3])) - _undo_redo.commit_action() - ignore_changes(false) - -func on_universal_color_changed(c : Color, slot_idx : int) -> void: - #properties[slot_idx][6].set_default_value(c) - - ignore_changes(true) - _undo_redo.create_action("MMGD: value changed") - _undo_redo.add_do_method(properties[slot_idx][6], "set_default_value", c) - _undo_redo.add_undo_method(properties[slot_idx][6], "set_default_value", properties[slot_idx][6].get_default_value()) - _undo_redo.commit_action() - ignore_changes(false) - -func on_universal_image_path_changed(f : String, slot_idx : int) -> void: - _node.call(properties[slot_idx][8], f) - - ignore_changes(true) - _undo_redo.create_action("MMGD: value changed") - _undo_redo.add_do_method(properties[slot_idx][6], "set_default_value", f) - _undo_redo.add_undo_method(properties[slot_idx][6], "set_default_value", properties[slot_idx][6].get_default_value()) - _undo_redo.commit_action() - ignore_changes(false) - -func get_material_node() -> MMNode: - return _node - -func on_close_request() -> void: - var n : Node = get_parent() - - while n: - if n.has_method("on_graph_node_close_request"): - n.call_deferred("on_graph_node_close_request", self) - return - - n = n.get_parent() - -func get_slot_color(slot_type : int) -> Color: - return _get_slot_color(slot_type) - -func _get_slot_color(slot_type : int) -> Color: - if slot_type == 0: - return Color(0.91, 0.06, 0.06) - elif slot_type == 1: - return Color(0.43, 0.04, 0.04) - elif slot_type == 2: - return Color(0.83, 0.38, 0.38) - elif slot_type == 3: - return Color(0.04, 0.48, 0.43) - elif slot_type == 4: - return Color(0.35, 0.04, 0.34) - elif slot_type == 5: - return Color(0.04, 0.05, 1) - elif slot_type == 6: - return Color(0.37, 0.37, 0.37) - - return Color(1, 1, 1, 1) diff --git a/game/addons/mat_maker_gd/icons/custom.png b/game/addons/mat_maker_gd/icons/custom.png deleted file mode 100644 index 45a7a1815b7db4f7b993ff24ad3c38a9863c1fa6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 549 zcmV+=0^0qFP)1}1`3waY++nYFBH@{Vwak_bhF&x9SCTu}JV)WaoyH9215Zd`WXOJs*&@M`jl~ekSo^XPR+*co<|vyay+424qK-d{;4lj*R3g;#Kl! ztP&?d7Kf-gsUDRzCVEsxlDygfzkStXL+(=bW-rt|8^(Jd)Ney!%P_u<45M%i)+e}3 zm-91+F#I9K<`X%1B@&mt5XbzvF010qNS#tmY3ljhU3ljkVnw%H_002ozL_t&t znRSjq5r8ld19Nz&ic^6zlvM?oI7BQDrc4IPemBWPGJpg+&@>Un&He;lV$lCY0lDbQ nDQS&}L%?S30@9CQf%J(B#dmHV5yCC+00000NkvXXu0mjfv2WwF diff --git a/game/addons/mat_maker_gd/icons/custom.png.import b/game/addons/mat_maker_gd/icons/custom.png.import deleted file mode 100644 index 59e2366..0000000 --- a/game/addons/mat_maker_gd/icons/custom.png.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/custom.png-b026bd10e22818d25d499d2eddb137a8.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/mat_maker_gd/icons/custom.png" -dest_files=[ "res://.import/custom.png-b026bd10e22818d25d499d2eddb137a8.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/game/addons/mat_maker_gd/icons/down.tres b/game/addons/mat_maker_gd/icons/down.tres deleted file mode 100644 index aca6f4c..0000000 --- a/game/addons/mat_maker_gd/icons/down.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="AtlasTexture" load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/icons/icons.tres" type="Texture" id=1] - -[resource] -flags = 4 -atlas = ExtResource( 1 ) -region = Rect2( 32, 48, 16, 16 ) diff --git a/game/addons/mat_maker_gd/icons/edit.tres b/game/addons/mat_maker_gd/icons/edit.tres deleted file mode 100644 index aa39c29..0000000 --- a/game/addons/mat_maker_gd/icons/edit.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="AtlasTexture" load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/icons/icons.tres" type="Texture" id=1] - -[resource] -flags = 7 -atlas = ExtResource( 1 ) -region = Rect2( 16, 16, 16, 16 ) diff --git a/game/addons/mat_maker_gd/icons/godot_logo.svg b/game/addons/mat_maker_gd/icons/godot_logo.svg deleted file mode 100644 index d7aef39..0000000 --- a/game/addons/mat_maker_gd/icons/godot_logo.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/game/addons/mat_maker_gd/icons/godot_logo.svg.import b/game/addons/mat_maker_gd/icons/godot_logo.svg.import deleted file mode 100644 index e96628e..0000000 --- a/game/addons/mat_maker_gd/icons/godot_logo.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/godot_logo.svg-4e4bf625f601f4dc5d1d367a2f781011.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/mat_maker_gd/icons/godot_logo.svg" -dest_files=[ "res://.import/godot_logo.svg-4e4bf625f601f4dc5d1d367a2f781011.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/game/addons/mat_maker_gd/icons/icons.svg b/game/addons/mat_maker_gd/icons/icons.svg deleted file mode 100644 index cc85b87..0000000 --- a/game/addons/mat_maker_gd/icons/icons.svg +++ /dev/null @@ -1,3522 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/game/addons/mat_maker_gd/icons/icons.svg.import b/game/addons/mat_maker_gd/icons/icons.svg.import deleted file mode 100644 index 733f804..0000000 --- a/game/addons/mat_maker_gd/icons/icons.svg.import +++ /dev/null @@ -1,35 +0,0 @@ -[remap] - -importer="texture" -type="StreamTexture" -path="res://.import/icons.svg-bac181e82e23c7264cdf6c36903654b9.stex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://addons/mat_maker_gd/icons/icons.svg" -dest_files=[ "res://.import/icons.svg-bac181e82e23c7264cdf6c36903654b9.stex" ] - -[params] - -compress/mode=0 -compress/lossy_quality=0.7 -compress/hdr_mode=0 -compress/bptc_ldr=0 -compress/normal_map=0 -flags/repeat=0 -flags/filter=true -flags/mipmaps=false -flags/anisotropic=false -flags/srgb=2 -process/fix_alpha_border=true -process/premult_alpha=false -process/HDR_as_SRGB=false -process/invert_color=false -process/normal_map_invert_y=false -stream=false -size_limit=0 -detect_3d=true -svg/scale=1.0 diff --git a/game/addons/mat_maker_gd/icons/icons.tres b/game/addons/mat_maker_gd/icons/icons.tres deleted file mode 100644 index e347b32..0000000 --- a/game/addons/mat_maker_gd/icons/icons.tres +++ /dev/null @@ -1,30 +0,0 @@ -[gd_resource type="ProxyTexture" load_steps=4 format=2] - -[sub_resource type="Image" id=2] -data = { -"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 12, 12, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 10, 10, 0, 13, 13, 13, 0, 11, 11, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117, 102, 53, 0, 123, 110, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58, 0, 1, 0, 117, 0, 1, 0, 234, 45, 3, 0, 235, 77, 3, 0, 235, 77, 3, 0, 235, 46, 0, 0, 171, 2, 1, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 39, 255, 255, 255, 50, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 6, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 71, 255, 255, 255, 191, 255, 255, 255, 254, 255, 255, 255, 235, 255, 255, 255, 128, 191, 191, 191, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 0, 0, 5, 255, 4, 4, 107, 191, 0, 0, 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, 64, 2, 2, 0, 255, 5, 5, 101, 191, 3, 3, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 191, 6, 44, 24, 255, 9, 128, 24, 255, 9, 128, 17, 191, 5, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 6, 6, 0, 16, 16, 16, 78, 26, 26, 26, 179, 27, 27, 27, 204, 27, 27, 27, 204, 27, 27, 27, 204, 27, 27, 27, 204, 27, 27, 27, 204, 27, 27, 27, 204, 27, 27, 27, 204, 27, 27, 27, 204, 27, 27, 27, 204, 27, 27, 27, 204, 25, 25, 25, 163, 19, 19, 19, 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, 0, 0, 0, 0, 16, 16, 16, 14, 23, 23, 23, 158, 27, 27, 27, 221, 24, 24, 24, 163, 18, 18, 18, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 79, 255, 255, 255, 151, 255, 255, 255, 156, 255, 255, 255, 103, 255, 255, 255, 20, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 54, 29, 0, 242, 214, 113, 59, 241, 213, 111, 143, 247, 221, 116, 164, 247, 221, 116, 113, 244, 216, 114, 31, 122, 109, 58, 0, 55, 55, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 173, 8, 2, 0, 234, 117, 6, 4, 236, 229, 10, 10, 237, 255, 12, 14, 237, 255, 13, 15, 237, 255, 11, 12, 237, 255, 8, 7, 236, 231, 4, 2, 234, 127, 0, 0, 173, 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, 255, 255, 255, 9, 255, 255, 255, 255, 255, 255, 255, 233, 191, 191, 191, 27, 0, 0, 0, 0, 191, 191, 191, 18, 255, 255, 255, 207, 255, 255, 255, 179, 191, 191, 191, 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, 64, 64, 64, 0, 191, 191, 191, 24, 255, 255, 255, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 255, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 148, 128, 128, 128, 0, 0, 0, 0, 0, 191, 0, 0, 6, 255, 6, 6, 175, 255, 9, 9, 255, 255, 6, 6, 163, 191, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 2, 2, 0, 255, 8, 8, 135, 255, 9, 9, 255, 255, 7, 7, 197, 191, 4, 4, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 255, 9, 86, 24, 255, 9, 255, 24, 255, 9, 255, 22, 255, 7, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 20, 20, 56, 67, 67, 67, 252, 207, 207, 207, 255, 232, 232, 232, 255, 232, 232, 232, 255, 232, 232, 232, 255, 232, 232, 232, 255, 232, 232, 232, 255, 232, 232, 232, 255, 232, 232, 232, 255, 232, 232, 232, 255, 244, 244, 244, 255, 247, 247, 247, 255, 166, 166, 166, 255, 26, 26, 26, 191, 10, 10, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 18, 18, 8, 26, 26, 26, 193, 147, 147, 147, 255, 239, 239, 239, 255, 155, 155, 155, 255, 27, 27, 27, 203, 17, 17, 17, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 7, 255, 255, 255, 105, 255, 255, 255, 162, 255, 255, 255, 176, 255, 255, 255, 153, 255, 255, 255, 132, 255, 255, 255, 114, 255, 255, 255, 95, 255, 255, 255, 77, 255, 255, 255, 51, 255, 255, 255, 22, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 191, 191, 191, 6, 255, 255, 255, 75, 255, 255, 255, 95, 255, 255, 255, 38, 128, 128, 128, 0, 191, 191, 191, 2, 255, 255, 255, 167, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 255, 255, 255, 178, 255, 255, 255, 87, 191, 191, 191, 8, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 170, 147, 74, 2, 246, 220, 115, 63, 247, 220, 116, 99, 247, 219, 116, 50, 120, 106, 56, 0, 120, 106, 55, 0, 247, 220, 116, 129, 248, 221, 117, 255, 249, 230, 155, 255, 251, 237, 184, 255, 249, 232, 168, 255, 243, 217, 117, 254, 244, 217, 115, 192, 235, 219, 113, 100, 185, 164, 86, 16, 122, 110, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 176, 29, 4, 13, 223, 206, 9, 43, 204, 255, 19, 27, 234, 255, 24, 33, 239, 255, 27, 38, 240, 255, 28, 39, 240, 255, 26, 36, 240, 255, 22, 30, 239, 255, 16, 20, 238, 255, 8, 8, 236, 216, 1, 0, 117, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 233, 255, 255, 255, 255, 255, 255, 255, 197, 255, 255, 255, 22, 255, 255, 255, 206, 255, 255, 255, 255, 255, 255, 255, 205, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 2, 255, 255, 255, 103, 255, 255, 255, 239, 255, 255, 255, 255, 255, 255, 255, 240, 255, 255, 255, 106, 191, 191, 191, 5, 255, 255, 255, 46, 255, 255, 255, 244, 255, 255, 255, 250, 255, 255, 255, 23, 128, 2, 2, 0, 255, 6, 6, 142, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 6, 6, 165, 191, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 64, 2, 2, 0, 255, 8, 8, 138, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 8, 8, 172, 128, 4, 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, 24, 255, 9, 85, 24, 255, 9, 255, 24, 255, 9, 255, 22, 255, 7, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 13, 13, 123, 158, 158, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 45, 45, 45, 248, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 16, 16, 3, 26, 26, 26, 173, 139, 139, 139, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 155, 155, 155, 255, 26, 26, 26, 193, 15, 15, 15, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 10, 10, 0, 13, 13, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 191, 191, 191, 9, 255, 255, 255, 46, 255, 255, 255, 51, 255, 255, 255, 51, 255, 255, 255, 51, 255, 255, 255, 46, 255, 255, 255, 26, 255, 255, 255, 26, 255, 255, 255, 24, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 15, 255, 255, 255, 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, 196, 255, 255, 255, 38, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 68, 255, 255, 255, 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 255, 255, 255, 137, 255, 255, 255, 170, 255, 255, 255, 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, 241, 255, 255, 255, 158, 255, 255, 255, 65, 191, 191, 191, 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, 47, 47, 23, 0, 138, 132, 67, 43, 248, 221, 116, 223, 248, 222, 122, 255, 245, 220, 126, 255, 237, 211, 112, 255, 231, 205, 108, 219, 230, 203, 106, 136, 237, 211, 110, 169, 238, 212, 111, 224, 226, 202, 106, 255, 218, 195, 105, 255, 223, 208, 149, 255, 235, 227, 194, 255, 242, 232, 195, 255, 234, 217, 150, 255, 232, 206, 108, 248, 241, 215, 113, 171, 246, 219, 115, 80, 181, 160, 85, 5, 55, 55, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 170, 15, 5, 2, 236, 213, 6, 125, 118, 255, 0, 209, 28, 255, 12, 145, 110, 255, 38, 56, 241, 255, 42, 62, 242, 255, 43, 63, 243, 255, 39, 64, 235, 255, 22, 105, 164, 255, 29, 41, 240, 255, 20, 27, 238, 255, 10, 10, 237, 225, 2, 0, 175, 20, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 191, 191, 191, 0, 255, 255, 255, 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 138, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 21, 255, 255, 255, 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 171, 191, 191, 191, 25, 64, 64, 64, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 199, 255, 255, 255, 255, 255, 255, 255, 51, 0, 0, 0, 0, 191, 5, 5, 21, 255, 8, 8, 209, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 6, 6, 167, 191, 0, 0, 4, 191, 0, 0, 0, 255, 8, 8, 140, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 226, 191, 5, 5, 35, 0, 0, 0, 0, 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, 255, 7, 84, 24, 255, 9, 255, 24, 255, 9, 255, 23, 255, 7, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 22, 22, 70, 81, 81, 81, 254, 235, 235, 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, 241, 241, 241, 255, 232, 232, 232, 255, 161, 161, 161, 255, 26, 26, 26, 189, 9, 9, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 7, 0, 20, 20, 20, 151, 117, 117, 117, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 143, 143, 143, 255, 24, 24, 24, 181, 16, 16, 16, 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, 3, 3, 3, 0, 11, 11, 11, 37, 23, 23, 23, 154, 26, 26, 26, 172, 16, 16, 16, 64, 6, 6, 6, 0, 0, 0, 0, 0, 191, 191, 191, 0, 255, 255, 255, 113, 255, 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, 242, 255, 255, 255, 149, 191, 191, 191, 20, 128, 128, 128, 0, 255, 255, 255, 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, 239, 255, 255, 255, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 50, 255, 255, 255, 248, 255, 255, 255, 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, 255, 189, 255, 255, 255, 151, 255, 255, 255, 79, 255, 255, 255, 145, 255, 255, 255, 234, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 191, 191, 191, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 208, 195, 101, 22, 248, 221, 117, 236, 251, 239, 193, 255, 245, 237, 206, 255, 235, 223, 176, 255, 238, 230, 201, 255, 235, 224, 186, 255, 213, 196, 130, 255, 199, 177, 92, 255, 202, 180, 93, 199, 205, 182, 94, 162, 192, 176, 90, 80, 183, 164, 83, 132, 177, 157, 80, 222, 181, 162, 88, 255, 210, 198, 152, 255, 234, 227, 201, 255, 238, 227, 185, 255, 236, 216, 137, 255, 244, 218, 115, 222, 235, 216, 111, 58, 30, 26, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 155, 20, 15, 0, 153, 19, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 3, 1, 224, 145, 13, 15, 237, 255, 20, 58, 207, 255, 0, 207, 30, 255, 0, 209, 28, 255, 28, 137, 146, 255, 56, 87, 245, 255, 48, 105, 212, 255, 10, 184, 68, 255, 0, 208, 29, 255, 32, 85, 203, 255, 31, 44, 240, 255, 20, 26, 238, 255, 7, 6, 233, 162, 1, 0, 114, 0, 0, 0, 0, 0, 255, 255, 255, 41, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 154, 255, 255, 255, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 94, 191, 191, 191, 3, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 190, 255, 255, 255, 255, 255, 255, 255, 223, 255, 255, 255, 90, 255, 255, 255, 74, 255, 255, 255, 67, 191, 191, 191, 10, 128, 128, 128, 0, 255, 255, 255, 93, 255, 255, 255, 252, 255, 255, 255, 244, 191, 191, 191, 16, 0, 0, 0, 0, 0, 0, 0, 0, 191, 5, 5, 20, 255, 8, 8, 207, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 6, 6, 169, 255, 6, 6, 144, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 224, 191, 5, 5, 33, 0, 0, 0, 0, 0, 0, 0, 0, 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, 255, 7, 83, 24, 255, 9, 255, 24, 255, 9, 255, 23, 255, 7, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 6, 6, 0, 26, 26, 26, 106, 26, 26, 26, 208, 27, 27, 27, 230, 27, 27, 27, 230, 27, 27, 27, 230, 27, 27, 27, 230, 27, 27, 27, 230, 27, 27, 27, 219, 27, 27, 27, 204, 27, 27, 27, 204, 27, 27, 27, 204, 27, 27, 27, 204, 26, 26, 26, 157, 19, 19, 19, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 6, 6, 0, 26, 26, 26, 126, 98, 98, 98, 255, 244, 244, 244, 255, 246, 246, 246, 255, 246, 246, 246, 255, 230, 230, 230, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 131, 131, 131, 255, 24, 24, 24, 170, 14, 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, 6, 6, 6, 0, 23, 23, 23, 74, 46, 46, 46, 240, 169, 169, 169, 255, 190, 190, 190, 255, 56, 56, 56, 252, 26, 26, 26, 36, 64, 64, 64, 0, 255, 255, 255, 121, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 255, 255, 255, 24, 255, 255, 255, 57, 255, 255, 255, 82, 255, 255, 255, 102, 255, 255, 255, 74, 255, 255, 255, 35, 255, 255, 255, 54, 255, 255, 255, 77, 255, 255, 255, 98, 255, 255, 255, 116, 255, 255, 255, 135, 255, 255, 255, 153, 255, 255, 255, 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 191, 191, 191, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 171, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 255, 255, 255, 137, 255, 255, 255, 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 255, 255, 255, 137, 255, 255, 255, 17, 255, 255, 255, 74, 255, 255, 255, 166, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 191, 191, 191, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62, 55, 29, 0, 247, 220, 116, 130, 250, 235, 173, 255, 236, 220, 159, 255, 212, 188, 98, 197, 196, 172, 91, 133, 183, 162, 83, 195, 179, 162, 92, 255, 204, 193, 153, 255, 229, 224, 203, 255, 218, 208, 169, 255, 196, 178, 109, 255, 200, 178, 92, 250, 213, 191, 98, 159, 131, 117, 60, 25, 149, 131, 67, 61, 149, 132, 66, 152, 164, 146, 74, 237, 187, 169, 99, 255, 223, 211, 167, 255, 244, 235, 199, 255, 242, 218, 121, 237, 122, 110, 57, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 207, 27, 43, 0, 207, 27, 183, 0, 153, 19, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117, 15, 7, 6, 236, 248, 20, 27, 238, 255, 8, 163, 85, 255, 0, 209, 28, 255, 7, 196, 51, 255, 57, 115, 218, 255, 71, 110, 247, 255, 42, 153, 155, 255, 0, 209, 28, 255, 0, 209, 28, 255, 6, 189, 58, 255, 16, 143, 119, 255, 16, 101, 160, 255, 12, 43, 207, 252, 3, 1, 232, 30, 64, 64, 64, 0, 255, 255, 255, 101, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 255, 255, 255, 89, 255, 255, 255, 76, 255, 255, 255, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 255, 255, 255, 128, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 30, 255, 255, 255, 255, 255, 255, 255, 220, 255, 255, 255, 146, 255, 255, 255, 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 168, 255, 255, 255, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 113, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 5, 5, 19, 255, 8, 8, 206, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 8, 8, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 223, 191, 5, 5, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 12, 255, 4, 40, 23, 255, 8, 77, 23, 255, 8, 77, 23, 255, 8, 77, 23, 255, 8, 77, 23, 255, 8, 134, 24, 255, 9, 255, 24, 255, 9, 255, 23, 255, 8, 127, 23, 255, 8, 77, 23, 255, 7, 66, 22, 255, 7, 51, 22, 255, 7, 51, 11, 255, 4, 26, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 6, 6, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 26, 26, 26, 0, 13, 13, 13, 0, 14, 14, 14, 0, 14, 14, 14, 0, 14, 14, 14, 0, 14, 14, 14, 0, 14, 14, 14, 0, 14, 14, 14, 0, 14, 14, 14, 0, 13, 13, 13, 0, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 0, 25, 25, 25, 102, 81, 81, 81, 254, 240, 240, 240, 255, 246, 246, 246, 255, 246, 246, 246, 255, 175, 175, 175, 255, 28, 28, 28, 250, 153, 153, 153, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 118, 118, 118, 255, 20, 20, 20, 157, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 13, 13, 0, 26, 26, 26, 116, 67, 67, 67, 252, 220, 220, 220, 255, 246, 246, 246, 255, 246, 246, 246, 255, 138, 138, 138, 254, 26, 26, 26, 103, 191, 191, 191, 17, 255, 255, 255, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 163, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 234, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 1, 255, 255, 255, 249, 255, 255, 255, 255, 255, 255, 255, 174, 191, 191, 191, 0, 64, 64, 64, 0, 128, 128, 128, 0, 255, 255, 255, 57, 255, 255, 255, 156, 255, 255, 255, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 191, 191, 191, 8, 128, 128, 128, 0, 191, 191, 191, 13, 255, 255, 255, 94, 255, 255, 255, 207, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 129, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 123, 110, 58, 0, 247, 220, 116, 209, 247, 238, 205, 255, 213, 190, 99, 210, 148, 135, 68, 4, 46, 39, 21, 0, 85, 74, 38, 0, 170, 157, 81, 35, 171, 151, 77, 149, 140, 125, 62, 216, 163, 149, 94, 255, 206, 198, 164, 255, 232, 226, 203, 255, 215, 199, 137, 255, 217, 193, 101, 219, 172, 151, 78, 22, 70, 61, 30, 0, 105, 96, 48, 6, 158, 141, 70, 81, 174, 156, 80, 187, 203, 184, 108, 255, 243, 233, 195, 255, 242, 216, 113, 169, 122, 109, 57, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 104, 14, 0, 0, 104, 14, 0, 0, 104, 14, 0, 0, 104, 14, 0, 0, 104, 14, 0, 0, 104, 14, 0, 0, 104, 14, 0, 0, 104, 14, 0, 0, 104, 14, 0, 0, 104, 14, 0, 0, 207, 27, 43, 0, 209, 28, 255, 0, 206, 27, 182, 0, 150, 20, 7, 0, 0, 0, 0, 3, 0, 235, 84, 12, 13, 237, 255, 19, 71, 194, 255, 0, 209, 28, 255, 5, 199, 46, 255, 56, 119, 212, 255, 77, 120, 248, 255, 85, 133, 250, 255, 77, 145, 224, 255, 0, 209, 28, 255, 0, 209, 28, 255, 0, 209, 28, 255, 0, 209, 28, 255, 0, 209, 28, 255, 8, 114, 135, 255, 7, 7, 234, 102, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 81, 255, 255, 255, 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 123, 64, 64, 64, 0, 0, 0, 0, 0, 255, 255, 255, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 148, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 38, 255, 255, 255, 185, 255, 255, 255, 216, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 188, 255, 255, 255, 181, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 234, 255, 255, 255, 89, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 5, 5, 18, 255, 8, 8, 204, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 8, 8, 255, 255, 9, 9, 221, 191, 6, 6, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 12, 255, 5, 133, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 12, 255, 5, 132, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 7, 42, 27, 27, 27, 197, 45, 45, 45, 251, 50, 50, 50, 255, 50, 50, 50, 255, 50, 50, 50, 255, 50, 50, 50, 255, 50, 50, 50, 255, 50, 50, 50, 255, 63, 63, 63, 255, 31, 31, 31, 225, 25, 25, 25, 75, 7, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 0, 24, 24, 24, 80, 66, 66, 66, 252, 233, 233, 233, 255, 246, 246, 246, 255, 246, 246, 246, 255, 192, 192, 192, 255, 33, 33, 33, 221, 25, 25, 25, 37, 27, 27, 27, 200, 164, 164, 164, 255, 246, 246, 246, 255, 246, 246, 246, 255, 244, 244, 244, 255, 106, 106, 106, 255, 20, 20, 20, 143, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 19, 8, 26, 26, 26, 161, 98, 98, 98, 255, 237, 237, 237, 255, 246, 246, 246, 255, 246, 246, 246, 255, 237, 237, 237, 255, 69, 69, 69, 253, 25, 25, 25, 54, 255, 255, 255, 59, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 129, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 191, 191, 191, 4, 255, 255, 255, 26, 255, 255, 255, 26, 255, 255, 255, 26, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 9, 255, 255, 255, 251, 255, 255, 255, 255, 255, 255, 255, 123, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 14, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 12, 255, 255, 255, 245, 255, 255, 255, 174, 255, 255, 255, 146, 255, 255, 255, 160, 255, 255, 255, 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 116, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 6, 255, 255, 255, 211, 255, 255, 255, 255, 255, 255, 255, 205, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 124, 110, 58, 0, 244, 218, 115, 229, 237, 224, 178, 255, 198, 178, 93, 145, 95, 86, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, 108, 56, 0, 242, 215, 114, 220, 219, 194, 101, 188, 162, 143, 73, 147, 147, 130, 62, 149, 162, 145, 74, 235, 216, 205, 165, 255, 215, 195, 121, 255, 228, 200, 103, 157, 104, 91, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 113, 55, 0, 182, 161, 81, 177, 226, 214, 167, 255, 234, 211, 120, 241, 180, 159, 85, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 104, 14, 0, 0, 208, 27, 214, 0, 209, 28, 230, 0, 209, 28, 230, 0, 209, 28, 230, 0, 209, 28, 230, 0, 209, 28, 230, 0, 209, 28, 230, 0, 209, 28, 230, 0, 209, 28, 230, 0, 209, 28, 230, 0, 209, 28, 234, 0, 209, 28, 255, 0, 209, 28, 255, 0, 206, 27, 181, 0, 133, 34, 7, 2, 0, 219, 121, 15, 18, 238, 255, 27, 53, 224, 255, 0, 208, 29, 255, 39, 131, 170, 255, 72, 111, 247, 255, 85, 134, 250, 255, 97, 153, 252, 255, 101, 160, 253, 255, 67, 164, 190, 255, 56, 150, 182, 255, 37, 150, 149, 255, 2, 205, 36, 255, 0, 209, 28, 255, 19, 58, 205, 255, 6, 7, 233, 136, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 13, 255, 255, 255, 227, 255, 255, 255, 255, 255, 255, 255, 150, 191, 191, 191, 0, 128, 128, 128, 0, 255, 255, 255, 112, 255, 255, 255, 255, 255, 255, 255, 249, 255, 255, 255, 161, 255, 255, 255, 50, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 16, 255, 255, 255, 151, 255, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 214, 255, 255, 255, 156, 255, 255, 255, 209, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 184, 255, 255, 255, 70, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 0, 0, 1, 255, 6, 6, 156, 255, 8, 8, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 6, 6, 180, 191, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 12, 255, 5, 131, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 255, 12, 255, 5, 133, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 13, 13, 0, 29, 29, 29, 213, 200, 200, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 230, 230, 255, 44, 44, 44, 244, 19, 19, 19, 8, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 0, 22, 22, 22, 61, 55, 55, 55, 247, 224, 224, 224, 255, 246, 246, 246, 255, 246, 246, 246, 255, 207, 207, 207, 255, 40, 40, 40, 234, 13, 13, 13, 37, 0, 0, 0, 0, 19, 19, 19, 18, 28, 28, 28, 209, 174, 174, 174, 255, 246, 246, 246, 255, 246, 246, 246, 255, 243, 243, 243, 255, 95, 95, 95, 255, 26, 26, 26, 128, 6, 6, 6, 0, 0, 0, 0, 0, 19, 19, 19, 25, 27, 27, 27, 199, 137, 137, 137, 255, 245, 245, 245, 255, 246, 246, 246, 255, 246, 246, 246, 255, 220, 220, 220, 255, 67, 67, 67, 252, 25, 25, 25, 110, 6, 6, 6, 0, 255, 255, 255, 80, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 38, 255, 255, 255, 36, 255, 255, 255, 17, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 13, 255, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 139, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 7, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 153, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 255, 255, 255, 112, 255, 255, 255, 185, 255, 255, 255, 251, 255, 255, 255, 221, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 134, 255, 255, 255, 255, 255, 255, 255, 247, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 124, 110, 58, 0, 242, 215, 113, 212, 237, 227, 188, 255, 194, 173, 89, 193, 124, 114, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 104, 98, 50, 0, 227, 207, 108, 141, 230, 205, 110, 255, 216, 198, 133, 255, 181, 161, 82, 206, 161, 142, 71, 110, 170, 151, 77, 172, 200, 177, 92, 247, 223, 198, 104, 250, 181, 169, 54, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 181, 160, 81, 94, 215, 199, 138, 255, 237, 221, 157, 255, 243, 214, 112, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 104, 14, 0, 0, 209, 28, 238, 0, 209, 28, 255, 0, 209, 28, 255, 0, 209, 28, 255, 0, 209, 28, 255, 0, 209, 28, 255, 0, 209, 28, 255, 0, 209, 28, 255, 0, 209, 28, 255, 0, 209, 28, 255, 0, 209, 28, 255, 0, 209, 28, 255, 0, 209, 28, 255, 0, 209, 28, 255, 0, 206, 26, 113, 2, 17, 139, 121, 16, 19, 238, 255, 30, 43, 240, 255, 6, 185, 62, 255, 13, 185, 72, 255, 72, 115, 245, 255, 88, 138, 250, 255, 102, 161, 253, 255, 74, 184, 180, 255, 38, 186, 116, 255, 41, 168, 139, 255, 41, 144, 161, 255, 43, 103, 205, 255, 12, 158, 97, 255, 24, 32, 239, 255, 7, 7, 236, 140, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 167, 255, 255, 255, 153, 255, 255, 255, 249, 255, 255, 255, 255, 255, 255, 255, 229, 255, 255, 255, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 31, 255, 255, 255, 218, 255, 255, 255, 255, 255, 255, 255, 246, 255, 255, 255, 172, 255, 255, 255, 209, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 255, 255, 255, 164, 255, 255, 255, 243, 255, 255, 255, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 0, 0, 2, 255, 6, 6, 153, 255, 9, 9, 255, 255, 9, 9, 255, 255, 8, 8, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 6, 6, 178, 191, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 12, 255, 4, 39, 23, 255, 8, 77, 23, 255, 8, 77, 23, 255, 8, 77, 23, 255, 8, 77, 22, 255, 8, 127, 24, 255, 9, 255, 24, 255, 9, 255, 23, 255, 8, 133, 23, 255, 8, 92, 23, 255, 8, 102, 23, 255, 8, 102, 23, 255, 8, 102, 12, 255, 4, 54, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5, 5, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 12, 12, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 13, 13, 6, 50, 50, 50, 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, 78, 78, 78, 255, 25, 25, 25, 33, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 44, 45, 45, 45, 239, 213, 213, 213, 255, 246, 246, 246, 255, 246, 246, 246, 255, 219, 219, 219, 255, 49, 49, 49, 243, 13, 13, 13, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 18, 18, 24, 32, 32, 32, 218, 184, 184, 184, 255, 246, 246, 246, 255, 246, 246, 246, 255, 240, 240, 240, 255, 85, 85, 85, 254, 25, 25, 25, 113, 12, 12, 12, 51, 36, 36, 36, 227, 174, 174, 174, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 194, 194, 194, 255, 46, 46, 46, 240, 24, 24, 24, 75, 6, 6, 6, 0, 0, 0, 0, 0, 255, 255, 255, 36, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 115, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 255, 255, 255, 161, 255, 255, 255, 139, 255, 255, 255, 120, 255, 255, 255, 102, 255, 255, 255, 77, 255, 255, 255, 58, 255, 255, 255, 39, 255, 255, 255, 38, 255, 255, 255, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 183, 255, 255, 255, 255, 255, 255, 255, 252, 255, 255, 255, 121, 191, 191, 191, 18, 128, 128, 128, 0, 0, 0, 0, 0, 255, 255, 255, 45, 255, 255, 255, 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 255, 255, 255, 168, 255, 255, 255, 167, 255, 255, 255, 5, 64, 64, 64, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 167, 255, 255, 255, 255, 255, 255, 255, 231, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, 110, 56, 0, 234, 214, 111, 143, 239, 227, 183, 255, 201, 182, 109, 255, 161, 146, 58, 148, 141, 126, 51, 28, 65, 58, 27, 0, 21, 21, 0, 0, 175, 158, 84, 21, 244, 218, 115, 227, 238, 223, 163, 255, 233, 225, 195, 255, 196, 181, 124, 255, 160, 142, 72, 243, 156, 136, 69, 175, 179, 160, 81, 165, 212, 192, 98, 32, 37, 33, 17, 0, 0, 0, 0, 0, 44, 38, 20, 0, 183, 161, 82, 126, 220, 207, 153, 255, 235, 217, 146, 255, 243, 211, 110, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 104, 14, 0, 0, 208, 27, 190, 0, 209, 27, 204, 0, 209, 27, 204, 0, 209, 27, 204, 0, 209, 27, 204, 0, 209, 27, 204, 0, 209, 27, 204, 0, 209, 27, 204, 0, 209, 27, 204, 0, 209, 27, 204, 0, 209, 27, 213, 0, 209, 28, 255, 0, 209, 28, 255, 0, 204, 26, 165, 0, 145, 16, 3, 3, 0, 235, 90, 14, 17, 238, 255, 28, 40, 240, 255, 15, 150, 110, 255, 0, 209, 28, 255, 45, 147, 167, 255, 82, 129, 249, 255, 91, 146, 248, 255, 14, 201, 60, 255, 0, 209, 28, 255, 0, 209, 28, 255, 10, 190, 63, 255, 50, 76, 244, 255, 36, 53, 241, 255, 22, 30, 239, 255, 8, 10, 236, 107, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 160, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 172, 255, 255, 255, 255, 255, 255, 255, 195, 255, 255, 255, 36, 255, 255, 255, 25, 255, 255, 255, 115, 255, 255, 255, 142, 255, 255, 255, 98, 255, 255, 255, 142, 255, 255, 255, 255, 255, 255, 255, 249, 255, 255, 255, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 0, 0, 2, 255, 6, 6, 155, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 8, 8, 217, 255, 8, 8, 200, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 6, 6, 180, 191, 1, 1, 7, 0, 0, 0, 0, 0, 0, 0, 0, 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, 255, 8, 71, 24, 255, 9, 255, 24, 255, 9, 255, 23, 255, 7, 83, 0, 0, 0, 0, 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, 6, 6, 0, 24, 24, 24, 108, 26, 26, 26, 186, 27, 27, 27, 204, 27, 27, 27, 204, 27, 27, 27, 204, 27, 27, 27, 204, 27, 27, 27, 204, 25, 25, 25, 161, 13, 13, 13, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 10, 10, 0, 26, 26, 26, 179, 138, 138, 138, 255, 207, 207, 207, 255, 209, 209, 209, 255, 209, 209, 209, 255, 209, 209, 209, 255, 209, 209, 209, 255, 209, 209, 209, 255, 209, 209, 209, 255, 190, 190, 190, 255, 140, 140, 140, 255, 27, 27, 27, 199, 3, 3, 3, 0, 0, 0, 0, 0, 19, 19, 19, 30, 36, 36, 36, 228, 199, 199, 199, 255, 246, 246, 246, 255, 246, 246, 246, 255, 229, 229, 229, 255, 61, 61, 61, 250, 23, 23, 23, 70, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 19, 31, 35, 35, 35, 226, 194, 194, 194, 255, 246, 246, 246, 255, 246, 246, 246, 255, 236, 236, 236, 255, 76, 76, 76, 253, 53, 53, 53, 248, 205, 205, 205, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 161, 161, 161, 255, 31, 31, 31, 218, 13, 13, 13, 41, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 215, 255, 255, 255, 255, 255, 255, 255, 243, 255, 255, 255, 103, 255, 255, 255, 48, 255, 255, 255, 26, 255, 255, 255, 26, 255, 255, 255, 26, 255, 255, 255, 26, 255, 255, 255, 26, 255, 255, 255, 26, 255, 255, 255, 47, 255, 255, 255, 101, 255, 255, 255, 102, 255, 255, 255, 102, 255, 255, 255, 32, 255, 255, 255, 184, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 191, 191, 191, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 54, 255, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 255, 255, 255, 174, 255, 255, 255, 84, 255, 255, 255, 7, 255, 255, 255, 62, 255, 255, 255, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 255, 255, 255, 127, 255, 255, 255, 60, 255, 255, 255, 118, 255, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 179, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 175, 159, 82, 27, 224, 201, 109, 237, 235, 228, 197, 255, 194, 178, 119, 255, 157, 139, 71, 253, 136, 121, 59, 190, 109, 100, 33, 97, 87, 77, 37, 15, 207, 184, 96, 40, 244, 218, 115, 202, 229, 206, 115, 255, 231, 218, 166, 255, 236, 230, 206, 255, 212, 203, 167, 255, 177, 162, 101, 255, 159, 141, 72, 231, 122, 108, 55, 141, 152, 135, 69, 66, 180, 158, 83, 95, 196, 174, 91, 242, 240, 232, 202, 255, 233, 208, 110, 218, 149, 146, 53, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 104, 13, 0, 0, 104, 13, 0, 0, 104, 13, 0, 0, 104, 13, 0, 0, 104, 13, 0, 0, 104, 13, 0, 0, 104, 13, 0, 0, 104, 13, 0, 0, 104, 13, 0, 0, 104, 13, 0, 0, 207, 27, 43, 0, 209, 28, 255, 0, 204, 26, 166, 0, 143, 16, 3, 0, 0, 0, 0, 2, 0, 233, 22, 10, 10, 236, 251, 24, 33, 239, 255, 15, 138, 121, 255, 6, 193, 53, 255, 58, 102, 232, 255, 72, 112, 247, 255, 73, 129, 232, 255, 3, 205, 37, 255, 0, 209, 28, 255, 0, 209, 28, 255, 24, 152, 124, 255, 45, 67, 243, 255, 31, 45, 241, 255, 18, 23, 238, 254, 3, 3, 234, 34, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 119, 255, 255, 255, 245, 255, 255, 255, 166, 255, 255, 255, 75, 255, 255, 255, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 154, 255, 255, 255, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 241, 255, 255, 255, 255, 191, 191, 191, 17, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 0, 255, 255, 255, 70, 255, 255, 255, 220, 255, 255, 255, 255, 255, 255, 255, 251, 255, 255, 255, 98, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 0, 0, 2, 255, 6, 6, 158, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 8, 8, 216, 191, 5, 5, 25, 191, 4, 4, 14, 255, 7, 7, 197, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 8, 8, 182, 191, 6, 6, 8, 0, 0, 0, 0, 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, 255, 7, 70, 24, 255, 9, 255, 24, 255, 9, 255, 23, 255, 7, 83, 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, 5, 5, 0, 23, 23, 23, 108, 99, 99, 99, 255, 215, 215, 215, 255, 232, 232, 232, 255, 232, 232, 232, 255, 232, 232, 232, 255, 232, 232, 232, 255, 232, 232, 232, 255, 186, 186, 186, 255, 44, 44, 44, 239, 13, 13, 13, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 17, 17, 12, 25, 25, 25, 128, 26, 26, 26, 177, 26, 26, 26, 179, 26, 26, 26, 179, 26, 26, 26, 179, 26, 26, 26, 179, 26, 26, 26, 153, 26, 26, 26, 153, 26, 26, 26, 153, 26, 26, 26, 120, 18, 18, 18, 16, 0, 0, 0, 0, 18, 18, 18, 8, 30, 30, 30, 214, 183, 183, 183, 255, 246, 246, 246, 255, 246, 246, 246, 255, 237, 237, 237, 255, 74, 74, 74, 253, 26, 26, 26, 91, 6, 6, 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, 13, 13, 13, 39, 39, 39, 39, 233, 203, 203, 203, 255, 246, 246, 246, 255, 246, 246, 246, 255, 240, 240, 240, 255, 237, 237, 237, 255, 246, 246, 246, 255, 246, 246, 246, 255, 243, 243, 243, 255, 122, 122, 122, 255, 25, 25, 25, 187, 18, 18, 18, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 61, 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, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 191, 191, 191, 9, 191, 191, 191, 10, 255, 255, 255, 136, 255, 255, 255, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 255, 255, 255, 82, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 104, 255, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 255, 255, 255, 155, 255, 255, 255, 68, 255, 255, 255, 86, 255, 255, 255, 176, 255, 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, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58, 52, 26, 0, 227, 203, 102, 72, 213, 189, 100, 243, 222, 210, 162, 255, 231, 226, 204, 255, 199, 190, 154, 255, 155, 140, 83, 255, 138, 122, 61, 247, 138, 122, 61, 168, 172, 160, 80, 78, 212, 189, 96, 74, 237, 209, 111, 162, 223, 198, 104, 243, 217, 197, 119, 255, 231, 220, 175, 255, 237, 231, 207, 255, 217, 206, 161, 255, 207, 190, 121, 255, 213, 195, 124, 255, 240, 232, 204, 255, 241, 223, 154, 255, 243, 216, 114, 103, 61, 54, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 207, 27, 43, 0, 206, 25, 167, 0, 147, 14, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 4, 3, 235, 158, 18, 22, 238, 255, 11, 135, 118, 255, 31, 97, 189, 255, 52, 78, 244, 255, 60, 92, 245, 255, 65, 101, 246, 255, 31, 157, 131, 255, 0, 209, 28, 255, 6, 193, 54, 255, 44, 79, 230, 255, 37, 54, 241, 255, 24, 34, 239, 255, 9, 12, 235, 176, 1, 1, 116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 2, 191, 191, 191, 13, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 138, 255, 255, 255, 255, 255, 255, 255, 245, 191, 191, 191, 11, 191, 191, 191, 4, 255, 255, 255, 95, 255, 255, 255, 156, 191, 191, 191, 6, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 228, 255, 255, 255, 255, 255, 255, 255, 50, 128, 128, 128, 0, 191, 191, 191, 22, 255, 255, 255, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 255, 255, 255, 48, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 2, 2, 0, 255, 6, 6, 133, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 8, 8, 214, 191, 5, 5, 24, 0, 0, 0, 0, 0, 0, 0, 0, 191, 3, 3, 13, 255, 8, 8, 195, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 8, 8, 163, 128, 4, 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, 22, 255, 7, 68, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 85, 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, 13, 13, 0, 26, 26, 26, 179, 209, 209, 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, 115, 115, 115, 255, 26, 26, 26, 74, 0, 0, 0, 0, 0, 0, 0, 0, 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, 6, 6, 0, 12, 12, 12, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 12, 12, 12, 0, 13, 13, 13, 0, 13, 13, 13, 0, 7, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 25, 25, 93, 121, 121, 121, 255, 246, 246, 246, 255, 246, 246, 246, 255, 242, 242, 242, 255, 89, 89, 89, 254, 25, 25, 25, 114, 6, 6, 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, 6, 6, 6, 48, 45, 45, 45, 239, 211, 211, 211, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 232, 232, 232, 255, 86, 86, 86, 254, 20, 20, 20, 146, 12, 12, 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, 64, 64, 64, 0, 255, 255, 255, 90, 255, 255, 255, 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, 255, 248, 255, 255, 255, 69, 64, 64, 64, 0, 0, 0, 0, 0, 64, 64, 64, 0, 191, 191, 191, 5, 255, 255, 255, 46, 255, 255, 255, 73, 255, 255, 255, 91, 255, 255, 255, 110, 255, 255, 255, 128, 255, 255, 255, 153, 255, 255, 255, 172, 255, 255, 255, 179, 255, 255, 255, 153, 255, 255, 255, 38, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 42, 255, 255, 255, 149, 255, 255, 255, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 255, 255, 255, 157, 255, 255, 255, 150, 255, 255, 255, 196, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 112, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 46, 23, 0, 216, 183, 93, 27, 207, 185, 96, 134, 194, 172, 90, 225, 198, 181, 118, 255, 220, 210, 175, 255, 225, 220, 197, 255, 200, 189, 147, 255, 176, 158, 86, 255, 184, 164, 84, 255, 198, 176, 91, 238, 218, 193, 101, 162, 236, 210, 109, 151, 235, 209, 109, 183, 230, 205, 108, 251, 236, 216, 141, 255, 246, 232, 179, 255, 248, 235, 182, 255, 246, 224, 141, 255, 233, 213, 102, 149, 160, 160, 76, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 155, 17, 11, 0, 150, 14, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 176, 21, 9, 9, 236, 226, 17, 56, 203, 255, 31, 44, 240, 255, 39, 59, 242, 255, 46, 70, 243, 255, 50, 77, 244, 255, 48, 86, 229, 255, 3, 198, 44, 255, 32, 98, 190, 255, 36, 53, 241, 255, 27, 38, 240, 255, 16, 20, 238, 234, 3, 3, 117, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 85, 255, 255, 255, 255, 255, 255, 255, 170, 128, 128, 128, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 127, 255, 255, 255, 255, 255, 255, 255, 241, 255, 255, 255, 183, 255, 255, 255, 241, 255, 255, 255, 255, 255, 255, 255, 242, 255, 255, 255, 109, 191, 191, 191, 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, 191, 5, 5, 25, 255, 8, 8, 216, 255, 9, 9, 255, 255, 8, 8, 212, 191, 6, 6, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 4, 4, 12, 255, 8, 8, 193, 255, 9, 9, 255, 255, 9, 9, 231, 255, 2, 2, 41, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 255, 7, 68, 24, 255, 9, 255, 24, 255, 9, 255, 24, 255, 9, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 7, 0, 20, 20, 20, 129, 126, 126, 126, 255, 247, 247, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 223, 223, 223, 255, 55, 55, 55, 250, 24, 24, 24, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 26, 26, 92, 119, 119, 119, 255, 246, 246, 246, 255, 245, 245, 245, 255, 108, 108, 108, 255, 26, 26, 26, 139, 6, 6, 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, 0, 3, 3, 3, 0, 21, 21, 21, 57, 50, 50, 50, 244, 218, 218, 218, 255, 246, 246, 246, 255, 246, 246, 246, 255, 212, 212, 212, 255, 59, 59, 59, 249, 26, 26, 26, 100, 6, 6, 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, 64, 64, 64, 0, 255, 255, 255, 30, 255, 255, 255, 128, 255, 255, 255, 167, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 142, 255, 255, 255, 36, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 191, 191, 191, 5, 255, 255, 255, 77, 255, 255, 255, 169, 255, 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, 203, 191, 191, 191, 10, 255, 255, 255, 34, 255, 255, 255, 120, 255, 255, 255, 173, 255, 255, 255, 141, 255, 255, 255, 52, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 47, 24, 0, 153, 118, 44, 1, 201, 177, 91, 63, 199, 175, 92, 155, 196, 175, 91, 239, 216, 200, 140, 255, 236, 227, 192, 255, 238, 230, 201, 255, 237, 225, 179, 255, 236, 211, 113, 255, 247, 220, 116, 226, 182, 165, 86, 26, 232, 219, 113, 22, 226, 209, 96, 108, 248, 220, 116, 169, 245, 218, 113, 153, 246, 219, 114, 68, 109, 103, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 0, 2, 0, 202, 41, 10, 10, 237, 223, 19, 26, 238, 255, 27, 38, 240, 255, 33, 47, 241, 255, 36, 53, 241, 255, 37, 54, 242, 255, 29, 74, 207, 255, 30, 44, 240, 255, 24, 33, 239, 255, 15, 19, 237, 229, 3, 3, 224, 51, 0, 0, 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, 0, 0, 0, 0, 0, 191, 191, 191, 15, 255, 255, 255, 89, 191, 191, 191, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 2, 255, 255, 255, 147, 255, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 251, 255, 255, 255, 168, 191, 191, 191, 27, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 5, 5, 24, 255, 8, 8, 171, 191, 6, 6, 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, 191, 4, 4, 11, 255, 7, 7, 167, 255, 4, 4, 39, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 191, 5, 33, 24, 255, 9, 128, 23, 255, 8, 149, 22, 255, 8, 53, 0, 0, 0, 0, 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, 13, 13, 6, 23, 23, 23, 148, 27, 27, 27, 222, 27, 27, 27, 230, 27, 27, 27, 230, 27, 27, 27, 230, 27, 27, 27, 230, 27, 27, 27, 230, 26, 26, 26, 202, 24, 24, 24, 77, 6, 6, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 18, 18, 8, 28, 28, 28, 204, 98, 98, 98, 255, 74, 74, 74, 255, 26, 26, 26, 149, 3, 3, 3, 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, 5, 5, 5, 0, 24, 24, 24, 67, 54, 54, 54, 248, 179, 179, 179, 255, 158, 158, 158, 255, 40, 40, 40, 234, 13, 13, 13, 61, 6, 6, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 191, 191, 191, 15, 255, 255, 255, 97, 255, 255, 255, 184, 255, 255, 255, 235, 255, 255, 255, 219, 255, 255, 255, 140, 191, 191, 191, 15, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 103, 89, 47, 0, 161, 140, 71, 7, 219, 194, 101, 84, 229, 204, 107, 173, 236, 210, 111, 227, 244, 217, 114, 228, 245, 217, 115, 160, 184, 163, 86, 27, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 16, 0, 124, 110, 58, 0, 122, 108, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 167, 17, 6, 6, 219, 144, 14, 16, 237, 244, 19, 24, 238, 255, 21, 29, 239, 255, 22, 30, 239, 255, 20, 27, 239, 255, 16, 21, 238, 249, 8, 10, 234, 152, 5, 4, 175, 22, 0, 0, 56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 24, 255, 255, 255, 51, 255, 255, 255, 23, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 35, 0, 10, 0, 70, 0, 10, 0, 70, 0, 137, 5, 73, 0, 53, 49, 80, 0, 53, 49, 80, 0, 53, 49, 80, 0, 53, 49, 80, 0, 53, 49, 80, 0, 53, 49, 80, 0, 53, 49, 80, 0, 53, 49, 80, 0, 153, 21, 76, 0, 10, 0, 70, 0, 4, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 43, 5, 0, 99, 88, 10, 0, 99, 88, 10, 0, 99, 88, 10, 0, 99, 88, 10, 0, 99, 88, 10, 0, 99, 88, 10, 0, 109, 215, 13, 0, 104, 151, 12, 0, 99, 88, 10, 0, 99, 87, 9, 0, 47, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 10, 10, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 13, 13, 13, 0, 6, 6, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 17, 17, 3, 26, 26, 26, 66, 24, 24, 24, 44, 12, 12, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 6, 6, 0, 24, 24, 24, 51, 24, 24, 24, 157, 24, 24, 24, 139, 18, 18, 18, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, 105, 55, 0, 121, 108, 57, 0, 123, 110, 58, 0, 122, 107, 57, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 1, 101, 0, 1, 1, 176, 10, 7, 5, 235, 70, 10, 11, 236, 105, 10, 11, 236, 102, 9, 8, 235, 77, 5, 5, 176, 13, 2, 2, 115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 23, 46, 0, 128, 50, 93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 141, 77, 20, 0, 141, 153, 20, 0, 141, 153, 21, 3, 140, 153, 141, 137, 167, 173, 141, 137, 167, 173, 141, 137, 167, 173, 141, 137, 167, 173, 141, 137, 167, 173, 141, 137, 167, 173, 141, 137, 167, 173, 141, 137, 167, 173, 61, 46, 149, 160, 20, 0, 141, 153, 18, 0, 137, 86, 5, 0, 35, 0, 0, 0, 0, 0, 199, 176, 20, 51, 207, 185, 28, 179, 209, 188, 30, 179, 209, 188, 30, 179, 209, 188, 30, 179, 209, 188, 30, 179, 209, 188, 30, 179, 209, 188, 30, 179, 209, 188, 30, 179, 209, 188, 30, 179, 204, 182, 25, 179, 190, 160, 6, 67, 45, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 11, 11, 0, 13, 13, 13, 0, 23, 23, 23, 20, 13, 13, 13, 0, 7, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 12, 12, 0, 13, 13, 13, 0, 13, 13, 13, 0, 7, 7, 7, 0, 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, 11, 11, 0, 11, 11, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29, 29, 29, 0, 83, 83, 83, 5, 117, 117, 117, 59, 117, 117, 117, 92, 117, 117, 117, 95, 116, 116, 116, 63, 85, 85, 85, 7, 50, 50, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 36, 34, 0, 255, 114, 163, 65, 255, 101, 187, 180, 191, 76, 140, 11, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 141, 128, 20, 0, 141, 255, 20, 0, 141, 255, 23, 3, 141, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 161, 159, 172, 255, 146, 142, 168, 255, 175, 175, 175, 255, 70, 57, 152, 255, 20, 0, 141, 255, 20, 0, 141, 253, 19, 0, 139, 93, 5, 0, 35, 0, 200, 180, 21, 82, 244, 225, 60, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 231, 212, 49, 255, 217, 196, 37, 251, 184, 151, 6, 67, 45, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 17, 17, 26, 24, 24, 24, 160, 42, 42, 42, 246, 67, 67, 67, 255, 35, 35, 35, 236, 26, 26, 26, 133, 16, 16, 16, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 11, 11, 0, 24, 24, 24, 63, 25, 25, 25, 158, 27, 27, 27, 197, 27, 27, 27, 192, 20, 20, 20, 141, 18, 18, 18, 34, 6, 6, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 86, 86, 13, 116, 116, 116, 133, 119, 119, 119, 240, 122, 122, 122, 255, 123, 123, 123, 255, 124, 124, 124, 255, 123, 123, 123, 255, 120, 120, 120, 241, 110, 110, 110, 143, 83, 83, 83, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57, 47, 27, 0, 214, 155, 142, 79, 255, 106, 184, 252, 255, 102, 188, 255, 255, 102, 187, 192, 191, 73, 137, 11, 0, 0, 0, 0, 20, 0, 141, 128, 20, 0, 141, 255, 20, 0, 141, 255, 23, 3, 141, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 103, 94, 159, 255, 29, 10, 143, 255, 175, 175, 175, 255, 70, 57, 152, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 140, 205, 10, 0, 70, 0, 200, 180, 21, 82, 244, 225, 60, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 233, 213, 50, 255, 229, 209, 47, 255, 206, 184, 27, 251, 188, 158, 10, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 12, 12, 38, 36, 36, 36, 227, 164, 164, 164, 255, 244, 244, 244, 255, 246, 246, 246, 255, 237, 237, 237, 255, 131, 131, 131, 255, 25, 25, 25, 186, 17, 17, 17, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 17, 17, 17, 24, 24, 24, 165, 84, 84, 84, 255, 178, 178, 178, 255, 219, 219, 219, 255, 215, 215, 215, 255, 160, 160, 160, 255, 54, 54, 54, 247, 26, 26, 26, 102, 6, 6, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 87, 87, 87, 36, 116, 116, 116, 216, 118, 118, 118, 255, 126, 126, 126, 255, 131, 131, 131, 255, 132, 132, 132, 255, 133, 133, 133, 255, 132, 132, 132, 255, 129, 129, 129, 255, 125, 125, 125, 255, 121, 121, 121, 226, 113, 113, 113, 44, 27, 27, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 47, 26, 0, 255, 196, 98, 58, 224, 188, 119, 243, 222, 130, 179, 255, 255, 102, 188, 255, 255, 102, 188, 255, 255, 100, 186, 183, 191, 12, 23, 0, 20, 0, 141, 128, 20, 0, 141, 255, 20, 0, 141, 255, 23, 3, 141, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 103, 94, 159, 255, 29, 10, 143, 255, 175, 175, 175, 255, 70, 57, 152, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 140, 205, 10, 0, 70, 0, 200, 180, 21, 82, 244, 225, 60, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 254, 236, 69, 255, 249, 231, 65, 255, 243, 224, 60, 255, 202, 180, 23, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 17, 17, 8, 30, 30, 30, 215, 192, 192, 192, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 141, 141, 141, 255, 26, 26, 26, 175, 13, 13, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 12, 12, 0, 13, 13, 13, 0, 13, 13, 13, 0, 6, 6, 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, 19, 19, 19, 36, 35, 35, 35, 226, 154, 154, 154, 255, 245, 245, 245, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 232, 232, 232, 255, 78, 78, 78, 254, 26, 26, 26, 97, 3, 3, 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, 5, 5, 5, 0, 12, 12, 12, 0, 5, 5, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 84, 84, 84, 19, 118, 118, 118, 221, 114, 114, 114, 255, 105, 105, 105, 255, 114, 114, 114, 255, 138, 138, 138, 255, 141, 141, 141, 255, 142, 142, 142, 255, 139, 139, 139, 255, 123, 123, 123, 255, 133, 133, 133, 255, 128, 128, 128, 255, 122, 122, 122, 231, 86, 86, 86, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 47, 26, 0, 255, 191, 102, 58, 248, 196, 98, 242, 225, 175, 80, 255, 193, 158, 94, 255, 221, 129, 178, 255, 252, 102, 184, 254, 231, 97, 152, 83, 64, 13, 23, 0, 20, 0, 141, 128, 20, 0, 141, 255, 20, 0, 141, 255, 23, 3, 141, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 132, 126, 165, 255, 87, 76, 155, 255, 175, 175, 175, 255, 70, 57, 152, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 140, 205, 10, 0, 70, 0, 200, 180, 21, 82, 244, 225, 60, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 249, 230, 64, 255, 202, 180, 23, 108, 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, 3, 3, 0, 26, 26, 26, 125, 132, 132, 132, 255, 246, 246, 246, 255, 246, 246, 246, 255, 244, 244, 244, 255, 199, 199, 199, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 91, 91, 91, 255, 16, 16, 16, 77, 0, 0, 0, 0, 0, 0, 0, 0, 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, 3, 3, 0, 12, 12, 12, 38, 25, 25, 25, 165, 30, 30, 30, 226, 29, 29, 29, 220, 25, 25, 25, 100, 7, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 19, 31, 35, 35, 35, 225, 191, 191, 191, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 232, 232, 232, 255, 49, 49, 49, 243, 13, 13, 13, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 6, 6, 0, 23, 23, 23, 96, 26, 26, 26, 168, 24, 24, 24, 115, 9, 9, 9, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 77, 77, 17, 75, 75, 75, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 49, 49, 0, 112, 112, 112, 153, 123, 123, 123, 255, 126, 126, 126, 255, 105, 105, 105, 255, 105, 105, 105, 255, 127, 127, 127, 255, 150, 150, 150, 255, 141, 141, 141, 255, 111, 111, 111, 255, 105, 105, 105, 255, 132, 132, 132, 255, 134, 134, 134, 255, 127, 127, 127, 255, 118, 118, 118, 170, 56, 56, 56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 48, 24, 0, 255, 192, 99, 58, 248, 196, 98, 242, 225, 175, 80, 255, 201, 153, 61, 255, 177, 130, 42, 255, 159, 127, 69, 249, 181, 120, 123, 98, 48, 25, 28, 0, 0, 0, 0, 0, 20, 0, 141, 128, 20, 0, 141, 255, 20, 0, 141, 255, 23, 3, 141, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 70, 57, 152, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 140, 205, 10, 0, 70, 0, 200, 180, 21, 82, 244, 225, 60, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 249, 230, 64, 255, 202, 180, 23, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 10, 10, 26, 51, 51, 51, 245, 236, 236, 236, 255, 246, 246, 246, 255, 246, 246, 246, 255, 111, 111, 111, 255, 26, 26, 26, 226, 143, 143, 143, 255, 246, 246, 246, 255, 246, 246, 246, 255, 212, 212, 212, 255, 31, 31, 31, 217, 18, 18, 18, 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, 5, 5, 5, 0, 22, 22, 22, 75, 46, 46, 46, 240, 175, 175, 175, 255, 244, 244, 244, 255, 230, 230, 230, 255, 66, 66, 66, 254, 26, 26, 26, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 16, 16, 10, 29, 29, 29, 211, 184, 184, 184, 255, 246, 246, 246, 255, 246, 246, 246, 255, 244, 244, 244, 255, 142, 142, 142, 255, 43, 43, 43, 244, 50, 50, 50, 247, 208, 208, 208, 255, 246, 246, 246, 255, 246, 246, 246, 255, 179, 179, 179, 255, 25, 25, 25, 184, 12, 12, 12, 0, 0, 0, 0, 0, 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, 6, 6, 0, 26, 26, 26, 126, 90, 90, 90, 254, 191, 191, 191, 255, 111, 111, 111, 255, 19, 19, 19, 138, 6, 6, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 105, 105, 43, 103, 103, 103, 194, 75, 75, 75, 12, 0, 0, 0, 0, 0, 0, 0, 0, 100, 100, 100, 18, 120, 120, 120, 250, 128, 128, 128, 255, 111, 111, 111, 255, 105, 105, 105, 255, 111, 111, 111, 255, 150, 150, 150, 255, 159, 159, 159, 255, 137, 137, 137, 255, 105, 105, 105, 255, 105, 105, 105, 255, 109, 109, 109, 255, 117, 117, 117, 255, 119, 119, 119, 255, 120, 120, 120, 254, 113, 113, 113, 34, 64, 0, 0, 0, 255, 3, 3, 18, 255, 5, 5, 26, 255, 5, 5, 26, 255, 5, 5, 26, 255, 5, 5, 26, 255, 5, 5, 26, 255, 7, 7, 20, 128, 4, 4, 0, 128, 5, 5, 0, 128, 5, 5, 0, 128, 5, 5, 0, 128, 5, 5, 0, 128, 5, 5, 0, 64, 2, 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, 64, 48, 24, 0, 255, 194, 97, 58, 248, 196, 98, 242, 225, 175, 80, 255, 201, 153, 61, 255, 177, 130, 42, 255, 153, 107, 23, 248, 127, 88, 3, 73, 33, 27, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 141, 128, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 141, 255, 20, 0, 140, 205, 10, 0, 70, 0, 200, 180, 21, 82, 244, 225, 60, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 249, 230, 64, 255, 202, 180, 23, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 19, 19, 19, 140, 154, 154, 154, 255, 246, 246, 246, 255, 246, 246, 246, 255, 193, 193, 193, 255, 27, 27, 27, 190, 15, 15, 15, 9, 32, 32, 32, 220, 216, 216, 216, 255, 246, 246, 246, 255, 246, 246, 246, 255, 123, 123, 123, 255, 24, 24, 24, 113, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 22, 22, 43, 54, 54, 54, 247, 221, 221, 221, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 124, 124, 124, 255, 26, 26, 26, 89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 0, 20, 20, 20, 156, 141, 141, 141, 255, 246, 246, 246, 255, 246, 246, 246, 255, 242, 242, 242, 255, 95, 95, 95, 254, 20, 20, 20, 155, 15, 15, 15, 11, 25, 25, 25, 56, 63, 63, 63, 251, 242, 242, 242, 255, 246, 246, 246, 255, 246, 246, 246, 255, 86, 86, 86, 255, 24, 24, 24, 65, 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, 6, 6, 0, 24, 24, 24, 83, 74, 74, 74, 253, 240, 240, 240, 255, 246, 246, 246, 255, 234, 234, 234, 255, 26, 26, 26, 214, 13, 13, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 52, 52, 0, 53, 53, 53, 0, 53, 53, 53, 0, 53, 53, 53, 0, 53, 53, 53, 0, 53, 53, 53, 0, 53, 53, 53, 0, 53, 53, 53, 0, 53, 53, 53, 0, 53, 53, 53, 0, 105, 105, 105, 43, 105, 105, 105, 255, 103, 103, 103, 193, 76, 76, 76, 11, 0, 0, 0, 0, 117, 117, 117, 88, 123, 123, 123, 255, 125, 125, 125, 255, 105, 105, 105, 255, 110, 110, 110, 255, 149, 149, 149, 255, 162, 162, 162, 255, 167, 167, 167, 255, 161, 161, 161, 255, 105, 105, 105, 255, 105, 105, 105, 255, 105, 105, 105, 255, 105, 105, 105, 255, 105, 105, 105, 255, 116, 116, 116, 255, 118, 118, 118, 105, 128, 4, 4, 0, 255, 8, 8, 180, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 8, 8, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 48, 24, 0, 255, 194, 97, 59, 248, 196, 97, 242, 225, 175, 80, 255, 201, 152, 61, 255, 177, 130, 42, 255, 153, 107, 23, 248, 127, 88, 3, 73, 31, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 141, 128, 20, 0, 141, 255, 64, 50, 150, 255, 111, 103, 161, 255, 113, 105, 161, 255, 113, 105, 161, 255, 113, 105, 161, 255, 113, 105, 161, 255, 113, 105, 161, 255, 113, 105, 161, 255, 113, 105, 161, 255, 113, 105, 161, 255, 113, 105, 161, 255, 89, 78, 156, 255, 22, 2, 141, 255, 20, 0, 140, 205, 10, 0, 70, 0, 200, 180, 21, 82, 244, 225, 60, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 249, 230, 64, 255, 202, 180, 23, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 9, 21, 47, 47, 47, 242, 239, 239, 239, 255, 246, 246, 246, 255, 246, 246, 246, 255, 79, 79, 79, 255, 23, 23, 23, 56, 6, 6, 6, 0, 26, 26, 26, 84, 98, 98, 98, 255, 246, 246, 246, 255, 246, 246, 246, 255, 232, 232, 232, 255, 43, 43, 43, 239, 15, 15, 15, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 12, 12, 7, 28, 28, 28, 207, 193, 193, 193, 255, 246, 246, 246, 255, 246, 246, 246, 255, 238, 238, 238, 255, 174, 174, 174, 255, 45, 45, 45, 240, 12, 12, 12, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 15, 15, 71, 81, 81, 81, 255, 244, 244, 244, 255, 246, 246, 246, 255, 246, 246, 246, 255, 110, 110, 110, 255, 20, 20, 20, 142, 6, 6, 6, 0, 0, 0, 0, 0, 6, 6, 6, 0, 20, 20, 20, 148, 152, 152, 152, 255, 246, 246, 246, 255, 246, 246, 246, 255, 199, 199, 199, 255, 27, 27, 27, 199, 3, 3, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 25, 25, 46, 50, 50, 50, 244, 224, 224, 224, 255, 246, 246, 246, 255, 246, 246, 246, 255, 174, 174, 174, 255, 25, 25, 25, 168, 12, 12, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 52, 52, 0, 105, 105, 105, 214, 105, 105, 105, 230, 105, 105, 105, 230, 105, 105, 105, 230, 105, 105, 105, 230, 105, 105, 105, 230, 105, 105, 105, 230, 105, 105, 105, 230, 105, 105, 105, 230, 105, 105, 105, 230, 105, 105, 105, 234, 105, 105, 105, 255, 105, 105, 105, 255, 104, 104, 104, 192, 77, 77, 77, 11, 111, 111, 111, 122, 124, 124, 124, 255, 130, 130, 130, 255, 105, 105, 105, 255, 135, 135, 135, 255, 159, 159, 159, 255, 167, 167, 167, 255, 174, 174, 174, 255, 177, 177, 177, 255, 159, 159, 159, 255, 150, 150, 150, 255, 134, 134, 134, 255, 107, 107, 107, 255, 105, 105, 105, 255, 125, 125, 125, 255, 116, 116, 116, 137, 128, 4, 4, 0, 255, 8, 8, 178, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 255, 255, 9, 9, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 48, 24, 0, 255, 194, 97, 59, 248, 195, 98, 242, 225, 175, 80, 255, 201, 152, 61, 255, 177, 129, 42, 255, 153, 107, 23, 248, 129, 85, 3, 73, 31, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 141, 128, 28, 9, 142, 255, 171, 171, 174, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 71, 58, 152, 255, 20, 0, 140, 205, 10, 0, 70, 0, 200, 180, 21, 82, 244, 225, 60, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 249, 230, 64, 255, 202, 180, 23, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 20, 20, 20, 140, 151, 151, 151, 255, 246, 246, 246, 255, 246, 246, 246, 255, 183, 183, 183, 255, 26, 26, 26, 178, 12, 12, 12, 0, 0, 0, 0, 0, 3, 3, 3, 1, 26, 26, 26, 195, 194, 194, 194, 255, 246, 246, 246, 255, 246, 246, 246, 255, 150, 150, 150, 255, 19, 19, 19, 144, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 0, 20, 20, 20, 142, 131, 131, 131, 255, 246, 246, 246, 255, 246, 246, 246, 255, 232, 232, 232, 255, 60, 60, 60, 249, 23, 23, 23, 155, 24, 24, 24, 47, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 16, 16, 6, 30, 30, 30, 216, 209, 209, 209, 255, 246, 246, 246, 255, 246, 246, 246, 255, 160, 160, 160, 255, 25, 25, 25, 177, 2, 2, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 15, 15, 19, 42, 42, 42, 237, 230, 230, 230, 255, 246, 246, 246, 255, 246, 246, 246, 255, 103, 103, 103, 255, 22, 22, 22, 91, 4, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 13, 13, 13, 35, 33, 33, 33, 222, 200, 200, 200, 255, 246, 246, 246, 255, 246, 246, 246, 255, 212, 212, 212, 255, 40, 40, 40, 233, 18, 18, 18, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 52, 52, 0, 105, 105, 105, 238, 105, 105, 105, 255, 105, 105, 105, 255, 105, 105, 105, 255, 105, 105, 105, 255, 105, 105, 105, 255, 105, 105, 105, 255, 105, 105, 105, 255, 105, 105, 105, 255, 105, 105, 105, 255, 105, 105, 105, 255, 105, 105, 105, 255, 105, 105, 105, 255, 105, 105, 105, 255, 93, 93, 93, 111, 108, 108, 108, 120, 125, 125, 125, 255, 133, 133, 133, 255, 111, 111, 111, 255, 113, 113, 113, 255, 158, 158, 158, 255, 168, 168, 168, 255, 176, 176, 176, 255, 154, 154, 154, 255, 128, 128, 128, 255, 131, 131, 131, 255, 133, 133, 133, 255, 141, 141, 141, 255, 117, 117, 117, 255, 130, 130, 130, 255, 116, 116, 116, 139, 64, 2, 2, 0, 255, 8, 8, 89, 255, 9, 9, 128, 255, 9, 9, 128, 255, 9, 9, 128, 255, 9, 9, 128, 255, 8, 8, 137, 255, 7, 7, 153, 255, 7, 7, 153, 255, 7, 7, 153, 255, 7, 7, 153, 255, 7, 7, 153, 255, 7, 7, 153, 255, 7, 7, 153, 255, 8, 8, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 48, 24, 0, 255, 194, 97, 59, 247, 195, 98, 242, 225, 175, 80, 255, 201, 152, 61, 255, 177, 129, 42, 255, 153, 107, 23, 248, 130, 83, 3, 72, 32, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 141, 128, 36, 19, 144, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 84, 72, 155, 255, 20, 0, 140, 205, 10, 0, 70, 0, 200, 180, 21, 82, 244, 225, 60, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 249, 230, 64, 255, 202, 180, 23, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 9, 26, 51, 51, 51, 246, 240, 240, 240, 255, 246, 246, 246, 255, 246, 246, 246, 255, 73, 73, 73, 254, 25, 25, 25, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 23, 23, 53, 71, 71, 71, 254, 245, 245, 245, 255, 246, 246, 246, 255, 241, 241, 241, 255, 65, 65, 65, 252, 15, 15, 15, 58, 0, 0, 0, 0, 6, 6, 6, 0, 24, 24, 24, 86, 79, 79, 79, 254, 242, 242, 242, 255, 246, 246, 246, 255, 246, 246, 246, 255, 104, 104, 104, 255, 26, 26, 26, 106, 10, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 24, 24, 24, 118, 125, 125, 125, 255, 246, 246, 246, 255, 246, 246, 246, 255, 222, 222, 222, 255, 35, 35, 35, 228, 17, 17, 17, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 0, 26, 26, 26, 111, 124, 124, 124, 255, 246, 246, 246, 255, 246, 246, 246, 255, 220, 220, 220, 255, 34, 34, 34, 226, 19, 19, 19, 10, 0, 0, 0, 0, 6, 6, 6, 0, 23, 23, 23, 63, 41, 41, 41, 236, 189, 189, 189, 255, 246, 246, 246, 255, 246, 246, 246, 255, 233, 233, 233, 255, 60, 60, 60, 250, 25, 25, 25, 62, 6, 6, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 52, 52, 0, 105, 105, 105, 166, 105, 105, 105, 179, 105, 105, 105, 179, 105, 105, 105, 179, 105, 105, 105, 179, 105, 105, 105, 179, 105, 105, 105, 179, 105, 105, 105, 179, 105, 105, 105, 179, 105, 105, 105, 179, 105, 105, 105, 191, 105, 105, 105, 255, 105, 105, 105, 255, 104, 104, 104, 151, 72, 72, 72, 1, 117, 117, 117, 87, 124, 124, 124, 255, 132, 132, 132, 255, 118, 118, 118, 255, 105, 105, 105, 255, 138, 138, 138, 255, 165, 165, 165, 255, 169, 169, 169, 255, 113, 113, 113, 255, 105, 105, 105, 255, 105, 105, 105, 255, 113, 113, 113, 255, 146, 146, 146, 255, 137, 137, 137, 255, 129, 129, 129, 255, 119, 119, 119, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 2, 2, 0, 128, 3, 3, 0, 128, 3, 3, 0, 128, 3, 3, 0, 128, 3, 3, 0, 128, 3, 3, 0, 128, 3, 3, 0, 128, 3, 3, 0, 64, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 48, 32, 0, 255, 194, 109, 58, 247, 196, 98, 242, 225, 174, 80, 255, 201, 152, 61, 255, 177, 129, 42, 255, 153, 107, 23, 248, 130, 83, 3, 72, 32, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 141, 128, 36, 19, 144, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 84, 72, 155, 255, 20, 0, 140, 205, 10, 0, 70, 0, 200, 180, 21, 82, 244, 225, 60, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 249, 230, 64, 255, 202, 180, 23, 108, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 0, 19, 19, 19, 32, 20, 20, 20, 169, 159, 159, 159, 255, 246, 246, 246, 255, 246, 246, 246, 255, 189, 189, 189, 255, 26, 26, 26, 180, 12, 12, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 12, 12, 0, 26, 26, 26, 166, 169, 169, 169, 255, 246, 246, 246, 255, 246, 246, 246, 255, 206, 206, 206, 255, 37, 37, 37, 230, 16, 16, 16, 75, 24, 24, 24, 101, 50, 50, 50, 244, 226, 226, 226, 255, 246, 246, 246, 255, 246, 246, 246, 255, 172, 172, 172, 255, 26, 26, 26, 185, 3, 3, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 9, 23, 47, 47, 47, 242, 234, 234, 234, 255, 246, 246, 246, 255, 246, 246, 246, 255, 108, 108, 108, 255, 25, 25, 25, 96, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 15, 15, 7, 34, 34, 34, 226, 223, 223, 223, 255, 246, 246, 246, 255, 246, 246, 246, 255, 135, 135, 135, 255, 26, 26, 26, 146, 19, 19, 19, 18, 25, 25, 25, 129, 60, 60, 60, 250, 214, 214, 214, 255, 246, 246, 246, 255, 246, 246, 246, 255, 244, 244, 244, 255, 89, 89, 89, 254, 25, 25, 25, 103, 6, 6, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 52, 52, 0, 53, 53, 53, 0, 53, 53, 53, 0, 53, 53, 53, 0, 53, 53, 53, 0, 53, 53, 53, 0, 53, 53, 53, 0, 53, 53, 53, 0, 53, 53, 53, 0, 53, 53, 53, 0, 105, 105, 105, 43, 105, 105, 105, 255, 104, 104, 104, 152, 77, 77, 77, 1, 0, 0, 0, 0, 113, 113, 113, 19, 121, 121, 121, 249, 130, 130, 130, 255, 118, 118, 118, 255, 111, 111, 111, 255, 150, 150, 150, 255, 158, 158, 158, 255, 158, 158, 158, 255, 108, 108, 108, 255, 105, 105, 105, 255, 105, 105, 105, 255, 124, 124, 124, 255, 142, 142, 142, 255, 134, 134, 134, 255, 126, 126, 126, 254, 112, 112, 112, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 111, 83, 0, 255, 222, 164, 193, 230, 184, 97, 238, 200, 152, 60, 255, 177, 129, 42, 255, 152, 107, 23, 248, 127, 85, 3, 72, 31, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 141, 128, 36, 19, 144, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 84, 72, 155, 255, 20, 0, 140, 205, 10, 0, 70, 0, 200, 180, 21, 82, 244, 225, 60, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 249, 230, 64, 255, 202, 180, 23, 108, 0, 0, 0, 0, 3, 3, 3, 0, 26, 26, 26, 124, 62, 62, 62, 252, 135, 135, 135, 255, 245, 245, 245, 255, 246, 246, 246, 255, 244, 244, 244, 255, 69, 69, 69, 253, 24, 24, 24, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 13, 13, 30, 45, 45, 45, 240, 225, 225, 225, 255, 246, 246, 246, 255, 246, 246, 246, 255, 203, 203, 203, 255, 107, 107, 107, 255, 124, 124, 124, 255, 223, 223, 223, 255, 246, 246, 246, 255, 246, 246, 246, 255, 223, 223, 223, 255, 43, 43, 43, 237, 20, 20, 20, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 7, 0, 20, 20, 20, 139, 152, 152, 152, 255, 246, 246, 246, 255, 246, 246, 246, 255, 204, 204, 204, 255, 28, 28, 28, 206, 3, 3, 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, 5, 5, 5, 0, 24, 24, 24, 95, 101, 101, 101, 255, 246, 246, 246, 255, 246, 246, 246, 255, 242, 242, 242, 255, 106, 106, 106, 255, 54, 54, 54, 253, 142, 142, 142, 255, 235, 235, 235, 255, 246, 246, 246, 255, 246, 246, 246, 255, 245, 245, 245, 255, 112, 112, 112, 255, 19, 19, 19, 147, 6, 6, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 105, 105, 43, 100, 100, 100, 153, 74, 74, 74, 1, 0, 0, 0, 0, 0, 0, 0, 0, 55, 55, 55, 0, 116, 116, 116, 149, 126, 126, 126, 255, 116, 116, 116, 255, 132, 132, 132, 255, 146, 146, 146, 255, 151, 151, 151, 255, 154, 154, 154, 255, 130, 130, 130, 255, 105, 105, 105, 255, 111, 111, 111, 255, 141, 141, 141, 255, 137, 137, 137, 255, 130, 130, 130, 255, 119, 119, 119, 167, 55, 55, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 220, 164, 52, 255, 224, 167, 255, 253, 221, 162, 240, 192, 148, 67, 238, 152, 107, 23, 248, 127, 85, 3, 72, 31, 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, 0, 20, 0, 141, 128, 36, 19, 144, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 84, 72, 155, 255, 20, 0, 140, 205, 10, 0, 70, 0, 200, 180, 21, 82, 244, 225, 60, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 249, 230, 64, 255, 202, 180, 23, 108, 0, 0, 0, 0, 13, 13, 13, 19, 57, 57, 57, 251, 240, 240, 240, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 152, 152, 152, 255, 26, 26, 26, 155, 12, 12, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 0, 26, 26, 26, 89, 86, 86, 86, 254, 241, 241, 241, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 232, 232, 232, 255, 67, 67, 67, 252, 23, 23, 23, 79, 5, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 12, 12, 0, 37, 37, 37, 235, 239, 239, 239, 255, 246, 246, 246, 255, 246, 246, 246, 255, 84, 84, 84, 255, 16, 16, 16, 66, 0, 0, 0, 0, 0, 0, 0, 0, 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, 3, 3, 1, 26, 26, 26, 186, 175, 175, 175, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 241, 241, 241, 255, 110, 110, 110, 255, 20, 20, 20, 158, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 75, 75, 75, 8, 64, 64, 64, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 86, 86, 16, 120, 120, 120, 219, 124, 124, 124, 255, 134, 134, 134, 255, 139, 139, 139, 255, 143, 143, 143, 255, 145, 145, 145, 255, 144, 144, 144, 255, 108, 108, 108, 255, 132, 132, 132, 255, 137, 137, 137, 255, 131, 131, 131, 255, 125, 125, 125, 227, 88, 88, 88, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 112, 93, 70, 0, 239, 205, 154, 155, 255, 224, 167, 255, 255, 224, 167, 255, 250, 218, 160, 192, 158, 107, 38, 68, 31, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 141, 128, 35, 17, 144, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 82, 70, 154, 255, 20, 0, 140, 205, 10, 0, 70, 0, 200, 180, 21, 82, 244, 225, 60, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 249, 230, 64, 255, 202, 180, 23, 108, 0, 0, 0, 0, 24, 24, 24, 26, 66, 66, 66, 254, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 177, 177, 177, 255, 31, 31, 31, 217, 19, 19, 19, 17, 0, 0, 0, 0, 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, 6, 6, 0, 26, 26, 26, 134, 86, 86, 86, 254, 227, 227, 227, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 196, 196, 196, 255, 64, 64, 64, 252, 26, 26, 26, 99, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 12, 12, 5, 42, 42, 42, 243, 241, 241, 241, 255, 246, 246, 246, 255, 175, 175, 175, 255, 26, 26, 26, 180, 13, 13, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 19, 29, 37, 37, 37, 228, 188, 188, 188, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 246, 246, 246, 255, 219, 219, 219, 255, 78, 78, 78, 254, 26, 26, 26, 135, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 88, 88, 88, 33, 120, 120, 120, 214, 127, 127, 127, 255, 131, 131, 131, 255, 135, 135, 135, 255, 137, 137, 137, 255, 137, 137, 137, 255, 131, 131, 131, 255, 133, 133, 133, 255, 129, 129, 129, 255, 124, 124, 124, 221, 60, 60, 60, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 89, 79, 62, 18, 85, 78, 65, 246, 242, 210, 153, 151, 255, 221, 163, 50, 128, 111, 83, 0, 50, 37, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 141, 128, 21, 1, 141, 255, 135, 131, 166, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 175, 175, 175, 255, 162, 160, 172, 255, 41, 24, 146, 255, 20, 0, 140, 205, 10, 0, 70, 0, 200, 180, 21, 82, 244, 225, 60, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 255, 237, 70, 255, 249, 230, 64, 255, 202, 180, 23, 108, 0, 0, 0, 0, 10, 10, 10, 0, 24, 24, 24, 161, 95, 95, 95, 255, 137, 137, 137, 255, 86, 86, 86, 255, 26, 26, 26, 195, 19, 19, 19, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 0, 26, 26, 26, 93, 37, 37, 37, 233, 110, 110, 110, 255, 148, 148, 148, 255, 140, 140, 140, 255, 88, 88, 88, 255, 27, 27, 27, 203, 26, 26, 26, 51, 6, 6, 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, 7, 7, 7, 0, 20, 20, 20, 127, 77, 77, 77, 255, 124, 124, 124, 255, 39, 39, 39, 234, 19, 19, 19, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 13, 13, 37, 29, 29, 29, 209, 114, 114, 114, 255, 189, 189, 189, 255, 212, 212, 212, 255, 188, 188, 188, 255, 117, 117, 117, 255, 31, 31, 31, 221, 21, 21, 21, 83, 6, 6, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 86, 86, 11, 119, 119, 119, 128, 122, 122, 122, 235, 126, 126, 126, 255, 128, 128, 128, 255, 128, 128, 128, 255, 127, 127, 127, 255, 125, 125, 125, 241, 121, 121, 121, 136, 89, 89, 89, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, 87, 70, 20, 95, 81, 64, 13, 114, 99, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 141, 102, 20, 0, 141, 204, 20, 0, 141, 204, 32, 14, 143, 204, 36, 18, 144, 204, 36, 18, 144, 204, 36, 18, 144, 204, 36, 18, 144, 204, 36, 18, 144, 204, 36, 18, 144, 204, 36, 18, 144, 204, 36, 18, 144, 204, 36, 18, 144, 204, 21, 2, 141, 204, 20, 0, 141, 204, 20, 0, 140, 164, 10, 0, 70, 0, 198, 177, 21, 47, 205, 184, 27, 170, 207, 186, 29, 168, 207, 186, 29, 168, 207, 186, 29, 168, 207, 186, 29, 168, 207, 186, 29, 168, 207, 186, 29, 168, 207, 186, 29, 168, 207, 186, 29, 168, 207, 186, 29, 168, 207, 186, 29, 168, 206, 185, 28, 169, 199, 176, 20, 63, 0, 0, 0, 0, 0, 0, 0, 0, 16, 16, 16, 3, 26, 26, 26, 72, 26, 26, 26, 93, 26, 26, 26, 51, 12, 12, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 6, 6, 0, 17, 17, 17, 6, 26, 26, 26, 75, 26, 26, 26, 113, 26, 26, 26, 103, 25, 25, 25, 52, 13, 13, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 6, 6, 0, 26, 26, 26, 59, 26, 26, 26, 92, 19, 19, 19, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 12, 12, 5, 16, 16, 16, 91, 26, 26, 26, 164, 26, 26, 26, 183, 26, 26, 26, 164, 26, 26, 26, 94, 19, 19, 19, 5, 4, 4, 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, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 43, 0, 68, 17, 42, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 111, 102, 60, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 26, 17, 68, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 114, 63, 106, 0, 134, 96, 128, 4, 131, 105, 127, 55, 133, 107, 128, 90, 133, 107, 128, 88, 132, 106, 127, 59, 133, 95, 127, 5, 115, 64, 106, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 85, 34, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 35, 0, 226, 223, 241, 20, 255, 255, 255, 153, 226, 223, 241, 71, 10, 0, 70, 0, 10, 0, 70, 0, 10, 0, 70, 0, 10, 0, 70, 0, 10, 0, 70, 0, 10, 0, 70, 0, 10, 0, 70, 0, 10, 0, 70, 0, 10, 0, 70, 0, 10, 0, 70, 0, 10, 0, 70, 0, 10, 0, 70, 0, 0, 0, 0, 0, 255, 255, 255, 8, 255, 255, 255, 153, 255, 255, 255, 83, 170, 161, 103, 0, 99, 88, 10, 0, 99, 88, 10, 0, 99, 88, 10, 0, 99, 88, 10, 0, 162, 151, 74, 0, 233, 225, 167, 10, 241, 235, 196, 51, 241, 235, 196, 27, 226, 215, 138, 0, 49, 43, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 1, 0, 103, 2, 2, 0, 104, 2, 2, 0, 67, 1, 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, 12, 12, 12, 0, 13, 13, 13, 0, 12, 12, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 16, 255, 255, 255, 55, 255, 255, 255, 255, 255, 255, 255, 131, 255, 255, 255, 25, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 14, 255, 255, 255, 37, 255, 255, 255, 255, 255, 255, 255, 149, 255, 255, 255, 26, 191, 191, 191, 1, 0, 0, 0, 0, 64, 64, 64, 0, 191, 191, 191, 11, 255, 255, 255, 137, 255, 255, 255, 241, 255, 255, 255, 255, 255, 255, 255, 252, 255, 255, 255, 164, 191, 191, 191, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, 1, 1, 1, 131, 0, 0, 0, 153, 0, 0, 0, 153, 0, 0, 0, 153, 0, 0, 0, 153, 0, 0, 0, 153, 0, 0, 0, 153, 0, 0, 0, 153, 0, 0, 0, 153, 1, 1, 1, 132, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90, 0, 0, 0, 150, 2, 0, 0, 153, 74, 2, 2, 153, 192, 4, 4, 173, 231, 5, 5, 200, 231, 5, 5, 201, 194, 4, 4, 175, 77, 2, 2, 153, 3, 0, 0, 153, 0, 0, 0, 151, 0, 0, 0, 93, 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, 15, 15, 32, 0, 42, 42, 99, 11, 82, 82, 155, 110, 102, 102, 174, 122, 102, 102, 174, 122, 102, 102, 174, 122, 102, 102, 174, 122, 102, 102, 174, 122, 102, 102, 174, 122, 102, 102, 174, 122, 102, 102, 174, 122, 102, 102, 174, 122, 110, 110, 179, 116, 120, 120, 185, 107, 120, 120, 185, 107, 120, 120, 185, 107, 120, 120, 185, 107, 120, 120, 185, 107, 143, 143, 200, 101, 41, 41, 54, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 255, 255, 255, 21, 255, 255, 255, 51, 255, 255, 255, 36, 191, 191, 191, 2, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 255, 255, 255, 13, 255, 255, 255, 96, 191, 191, 191, 15, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 17, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 140, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 10, 128, 128, 128, 0, 255, 255, 255, 75, 255, 255, 255, 223, 255, 255, 255, 255, 255, 255, 255, 251, 255, 255, 255, 189, 255, 255, 255, 237, 255, 255, 255, 255, 255, 255, 255, 158, 128, 128, 128, 0, 0, 0, 0, 0, 1, 1, 1, 67, 60, 60, 60, 248, 188, 188, 188, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 189, 189, 189, 255, 62, 62, 62, 249, 1, 1, 1, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 119, 112, 112, 112, 255, 218, 175, 175, 255, 245, 43, 43, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 6, 6, 255, 246, 41, 41, 255, 219, 172, 172, 255, 118, 118, 118, 255, 0, 0, 0, 126, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 17, 33, 0, 50, 50, 100, 26, 68, 68, 142, 141, 75, 75, 154, 245, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 91, 91, 168, 255, 195, 195, 239, 253, 108, 108, 127, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 191, 191, 191, 19, 255, 255, 255, 125, 255, 255, 255, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 255, 255, 255, 169, 255, 255, 255, 53, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 80, 255, 255, 255, 144, 255, 255, 255, 255, 255, 255, 255, 186, 255, 255, 255, 123, 255, 255, 255, 109, 255, 255, 255, 255, 255, 255, 255, 175, 191, 191, 191, 1, 64, 64, 64, 0, 255, 255, 255, 94, 255, 255, 255, 248, 255, 255, 255, 101, 128, 128, 128, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 70, 255, 255, 255, 134, 255, 255, 255, 255, 255, 255, 255, 196, 255, 255, 255, 128, 255, 255, 255, 30, 255, 255, 255, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 255, 255, 255, 44, 128, 128, 128, 0, 191, 191, 191, 28, 255, 255, 255, 245, 255, 255, 255, 249, 255, 255, 255, 14, 0, 0, 0, 0, 3, 3, 3, 187, 237, 237, 237, 255, 211, 211, 211, 255, 144, 144, 144, 255, 247, 247, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 252, 252, 255, 148, 148, 148, 255, 202, 202, 202, 255, 238, 238, 238, 255, 4, 4, 4, 191, 0, 0, 0, 0, 0, 0, 0, 0, 14, 14, 14, 206, 253, 201, 201, 255, 255, 19, 19, 255, 255, 6, 6, 255, 255, 34, 34, 255, 255, 135, 135, 255, 255, 185, 185, 255, 255, 186, 186, 255, 255, 137, 137, 255, 255, 37, 37, 255, 255, 6, 6, 255, 255, 17, 17, 255, 254, 197, 197, 255, 20, 20, 20, 214, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 26, 60, 0, 50, 50, 119, 45, 71, 71, 146, 161, 76, 76, 156, 252, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 89, 89, 167, 255, 194, 194, 239, 255, 216, 216, 255, 253, 108, 108, 128, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 50, 255, 255, 255, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 255, 255, 255, 196, 255, 255, 255, 216, 255, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 141, 191, 191, 191, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 33, 255, 255, 255, 255, 255, 255, 255, 118, 0, 0, 0, 0, 255, 255, 255, 76, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 117, 255, 255, 255, 92, 255, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 13, 255, 255, 255, 255, 255, 255, 255, 138, 255, 255, 255, 62, 255, 255, 255, 238, 255, 255, 255, 255, 255, 255, 255, 239, 255, 255, 255, 104, 191, 191, 191, 2, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 2, 255, 255, 255, 231, 255, 255, 255, 255, 255, 255, 255, 25, 0, 0, 0, 0, 30, 30, 30, 221, 255, 255, 255, 255, 74, 74, 74, 255, 0, 0, 0, 255, 176, 176, 176, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 196, 196, 255, 0, 0, 0, 255, 53, 53, 53, 255, 255, 255, 255, 255, 33, 33, 33, 224, 0, 0, 0, 0, 0, 0, 0, 0, 38, 26, 26, 219, 255, 33, 33, 255, 255, 6, 6, 255, 167, 4, 4, 255, 179, 170, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 194, 194, 255, 164, 3, 3, 255, 255, 5, 5, 255, 255, 28, 28, 255, 49, 34, 34, 228, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 65, 0, 64, 64, 128, 66, 69, 69, 143, 182, 76, 76, 158, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 88, 88, 166, 255, 192, 192, 238, 255, 215, 215, 255, 255, 216, 216, 255, 253, 108, 108, 128, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 230, 218, 156, 255, 239, 231, 192, 255, 239, 231, 192, 255, 239, 231, 192, 255, 230, 218, 156, 255, 221, 204, 119, 255, 222, 205, 121, 255, 236, 227, 181, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 236, 227, 181, 255, 222, 205, 121, 255, 221, 204, 119, 255, 230, 218, 156, 255, 239, 231, 192, 255, 239, 231, 192, 255, 239, 231, 192, 255, 230, 218, 156, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 255, 255, 255, 55, 255, 255, 255, 244, 255, 255, 255, 255, 255, 255, 255, 185, 255, 255, 255, 54, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 19, 255, 255, 255, 124, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 177, 191, 191, 191, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 0, 191, 191, 191, 0, 128, 128, 128, 0, 255, 255, 255, 44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 255, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 255, 255, 255, 10, 255, 255, 255, 231, 255, 255, 255, 255, 255, 255, 255, 174, 255, 255, 255, 88, 255, 255, 255, 128, 255, 255, 255, 115, 255, 255, 255, 31, 191, 191, 191, 16, 255, 255, 255, 162, 255, 255, 255, 255, 255, 255, 255, 214, 191, 191, 191, 1, 0, 0, 0, 0, 32, 32, 32, 222, 255, 255, 255, 255, 193, 193, 193, 255, 113, 113, 113, 255, 240, 240, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 248, 248, 255, 117, 117, 117, 255, 181, 181, 181, 255, 255, 255, 255, 255, 35, 35, 35, 225, 0, 0, 0, 0, 16, 0, 0, 0, 130, 7, 7, 223, 255, 6, 6, 255, 248, 53, 53, 255, 127, 123, 123, 255, 242, 242, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 249, 255, 250, 145, 145, 255, 233, 9, 9, 255, 255, 6, 6, 255, 255, 6, 6, 255, 137, 7, 7, 231, 19, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 33, 33, 68, 0, 65, 65, 136, 88, 72, 72, 147, 205, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 87, 87, 165, 255, 191, 191, 237, 255, 215, 215, 255, 255, 215, 215, 255, 255, 216, 216, 255, 253, 108, 108, 128, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 135, 33, 84, 255, 141, 44, 92, 255, 148, 56, 102, 255, 148, 56, 102, 255, 148, 56, 102, 255, 148, 56, 102, 255, 148, 56, 102, 255, 148, 56, 102, 255, 148, 56, 102, 255, 148, 56, 102, 255, 148, 56, 102, 255, 148, 56, 102, 255, 148, 56, 102, 255, 148, 56, 102, 255, 148, 56, 102, 255, 148, 56, 102, 255, 148, 56, 102, 255, 142, 45, 93, 255, 135, 33, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 236, 226, 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 250, 242, 255, 221, 204, 119, 255, 231, 220, 161, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 220, 161, 255, 221, 204, 119, 255, 252, 250, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 227, 179, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 171, 69, 154, 255, 201, 135, 189, 255, 218, 174, 211, 255, 203, 140, 192, 255, 171, 70, 154, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 191, 191, 191, 6, 255, 255, 255, 211, 255, 255, 255, 255, 255, 255, 255, 150, 191, 191, 191, 3, 128, 128, 128, 0, 255, 255, 255, 139, 255, 255, 255, 246, 255, 255, 255, 226, 255, 255, 255, 72, 128, 128, 128, 0, 255, 255, 255, 50, 255, 255, 255, 229, 255, 255, 255, 255, 255, 255, 255, 117, 64, 64, 64, 0, 64, 64, 64, 0, 191, 191, 191, 4, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 4, 64, 64, 64, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 129, 255, 255, 255, 203, 255, 255, 255, 179, 255, 255, 255, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 255, 255, 255, 39, 255, 255, 255, 15, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 63, 255, 255, 255, 255, 255, 255, 255, 189, 255, 255, 255, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 255, 255, 255, 175, 255, 255, 255, 232, 255, 255, 255, 255, 255, 255, 255, 239, 255, 255, 255, 57, 64, 64, 64, 0, 0, 0, 0, 0, 32, 32, 32, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 35, 35, 35, 225, 0, 0, 0, 0, 95, 1, 1, 0, 218, 5, 5, 243, 255, 6, 6, 255, 255, 187, 187, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 251, 255, 255, 157, 157, 255, 255, 35, 35, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 6, 6, 255, 223, 5, 5, 247, 99, 1, 1, 0, 0, 0, 0, 0, 36, 36, 82, 5, 43, 43, 121, 106, 73, 73, 150, 226, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 85, 85, 164, 255, 189, 189, 236, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 216, 216, 255, 253, 108, 108, 128, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 151, 62, 106, 255, 250, 246, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 249, 250, 255, 155, 70, 113, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 236, 226, 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 251, 244, 255, 221, 204, 119, 255, 233, 223, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 223, 169, 255, 221, 204, 119, 255, 252, 251, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 227, 179, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 223, 184, 216, 255, 255, 255, 255, 255, 252, 247, 251, 255, 255, 255, 255, 255, 227, 195, 222, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 255, 255, 255, 96, 255, 255, 255, 255, 255, 255, 255, 209, 191, 191, 191, 4, 0, 0, 0, 0, 255, 255, 255, 20, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 128, 128, 128, 0, 64, 64, 64, 0, 255, 255, 255, 61, 255, 255, 255, 253, 255, 255, 255, 248, 255, 255, 255, 13, 255, 255, 255, 57, 255, 255, 255, 240, 255, 255, 255, 109, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 118, 255, 255, 255, 240, 255, 255, 255, 48, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 167, 255, 255, 255, 54, 255, 255, 255, 102, 255, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 255, 255, 255, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 47, 255, 255, 255, 184, 255, 255, 255, 246, 255, 255, 255, 255, 255, 255, 255, 231, 255, 255, 255, 159, 255, 255, 255, 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 255, 255, 255, 35, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 32, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 112, 112, 112, 255, 110, 110, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 35, 35, 35, 225, 0, 0, 0, 0, 255, 0, 0, 5, 254, 6, 6, 255, 255, 10, 10, 255, 255, 251, 251, 255, 255, 255, 255, 255, 255, 252, 252, 255, 255, 164, 164, 255, 251, 36, 36, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 39, 39, 255, 255, 160, 160, 255, 255, 15, 15, 255, 255, 6, 6, 255, 255, 0, 0, 11, 0, 0, 0, 0, 102, 102, 157, 86, 132, 132, 189, 255, 126, 126, 183, 255, 123, 123, 180, 255, 119, 119, 177, 255, 115, 115, 175, 255, 114, 114, 174, 255, 109, 109, 173, 255, 108, 108, 173, 255, 106, 106, 175, 255, 103, 103, 172, 255, 98, 98, 167, 255, 103, 103, 172, 252, 112, 112, 180, 255, 108, 108, 178, 255, 107, 107, 177, 255, 95, 95, 170, 255, 92, 92, 168, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 84, 84, 164, 255, 187, 187, 235, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 216, 216, 255, 253, 108, 108, 128, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 166, 90, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 101, 137, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 236, 226, 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 251, 244, 255, 221, 204, 119, 255, 233, 223, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 223, 169, 255, 221, 204, 119, 255, 252, 251, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 227, 179, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 175, 79, 159, 255, 218, 174, 211, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 223, 185, 217, 255, 255, 255, 255, 255, 216, 169, 208, 255, 170, 68, 153, 255, 211, 158, 202, 255, 255, 255, 255, 255, 225, 189, 219, 255, 221, 180, 214, 255, 221, 180, 214, 255, 218, 173, 210, 255, 175, 78, 158, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 255, 255, 255, 83, 255, 255, 255, 255, 255, 255, 255, 233, 191, 191, 191, 27, 0, 0, 0, 0, 191, 191, 191, 10, 255, 255, 255, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 160, 128, 128, 128, 0, 64, 64, 64, 0, 255, 255, 255, 91, 255, 255, 255, 255, 255, 255, 255, 241, 255, 255, 255, 10, 255, 255, 255, 44, 255, 255, 255, 251, 255, 255, 255, 251, 255, 255, 255, 61, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 68, 255, 255, 255, 253, 255, 255, 255, 249, 255, 255, 255, 36, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 6, 255, 255, 255, 120, 255, 255, 255, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 255, 255, 255, 52, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 57, 255, 255, 255, 213, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 255, 181, 255, 255, 255, 173, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 233, 255, 255, 255, 170, 255, 255, 255, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 32, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 248, 248, 255, 10, 10, 10, 255, 9, 9, 9, 255, 246, 246, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 35, 35, 35, 225, 0, 0, 0, 0, 255, 3, 3, 18, 255, 6, 6, 255, 255, 21, 21, 255, 255, 254, 254, 255, 255, 170, 170, 255, 255, 46, 46, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 34, 34, 255, 255, 155, 155, 255, 255, 250, 250, 255, 255, 255, 255, 255, 255, 29, 29, 255, 255, 6, 6, 255, 255, 5, 5, 26, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 137, 137, 193, 255, 141, 141, 195, 255, 141, 141, 196, 255, 175, 175, 223, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 216, 216, 255, 253, 108, 108, 128, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 166, 90, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 101, 137, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 236, 226, 179, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 244, 239, 214, 255, 221, 204, 119, 255, 225, 210, 136, 255, 251, 249, 240, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 251, 250, 240, 255, 225, 210, 136, 255, 221, 204, 119, 255, 244, 239, 213, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 236, 227, 180, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 187, 106, 174, 255, 245, 232, 242, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 248, 239, 246, 255, 255, 255, 255, 255, 201, 136, 190, 255, 170, 68, 153, 255, 196, 126, 184, 255, 255, 255, 255, 255, 248, 240, 247, 255, 247, 236, 245, 255, 247, 236, 245, 255, 244, 231, 242, 255, 186, 104, 173, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 191, 191, 191, 0, 255, 255, 255, 171, 255, 255, 255, 255, 255, 255, 255, 210, 191, 191, 191, 31, 128, 128, 128, 0, 255, 255, 255, 58, 255, 255, 255, 146, 255, 255, 255, 127, 191, 191, 191, 24, 128, 128, 128, 0, 255, 255, 255, 81, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 86, 64, 64, 64, 0, 64, 64, 64, 0, 255, 255, 255, 120, 255, 255, 255, 255, 255, 255, 255, 236, 255, 255, 255, 64, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 70, 255, 255, 255, 239, 255, 255, 255, 255, 255, 255, 255, 111, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 84, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 128, 128, 128, 0, 191, 191, 191, 8, 255, 255, 255, 216, 255, 255, 255, 255, 255, 255, 255, 209, 255, 255, 255, 97, 191, 191, 191, 7, 64, 64, 64, 0, 64, 64, 64, 0, 255, 255, 255, 74, 255, 255, 255, 248, 255, 255, 255, 255, 255, 255, 255, 211, 255, 255, 255, 146, 255, 255, 255, 244, 255, 255, 255, 255, 255, 255, 255, 252, 255, 255, 255, 161, 255, 255, 255, 190, 255, 255, 255, 255, 255, 255, 255, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 32, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 205, 205, 255, 204, 204, 204, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 35, 35, 35, 225, 0, 0, 0, 0, 189, 1, 1, 2, 250, 5, 5, 253, 255, 6, 6, 255, 255, 50, 50, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 30, 30, 255, 250, 144, 144, 255, 255, 248, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 243, 255, 255, 9, 9, 255, 252, 6, 6, 254, 255, 0, 0, 5, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 172, 172, 221, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 216, 216, 255, 253, 108, 108, 128, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 166, 90, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 101, 137, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 223, 207, 126, 255, 224, 209, 133, 255, 224, 209, 133, 255, 224, 208, 130, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 222, 205, 122, 255, 224, 209, 133, 255, 224, 209, 133, 255, 224, 209, 133, 255, 224, 209, 133, 255, 224, 209, 133, 255, 224, 209, 133, 255, 224, 209, 133, 255, 224, 209, 133, 255, 222, 205, 122, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 224, 208, 130, 255, 224, 209, 133, 255, 224, 209, 133, 255, 223, 207, 126, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 171, 71, 155, 255, 241, 224, 238, 255, 249, 242, 248, 255, 223, 185, 217, 255, 248, 239, 246, 255, 244, 231, 242, 255, 173, 74, 157, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 191, 191, 191, 15, 255, 255, 255, 204, 255, 255, 255, 255, 255, 255, 255, 234, 255, 255, 255, 106, 191, 191, 191, 10, 255, 255, 255, 0, 191, 191, 191, 0, 255, 255, 255, 31, 255, 255, 255, 150, 255, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 133, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 1, 255, 255, 255, 162, 255, 255, 255, 255, 255, 255, 255, 250, 255, 255, 255, 142, 255, 255, 255, 33, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 37, 255, 255, 255, 148, 255, 255, 255, 251, 255, 255, 255, 255, 255, 255, 255, 152, 191, 191, 191, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 33, 255, 255, 255, 234, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 255, 255, 255, 162, 255, 255, 255, 213, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 158, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 1, 255, 255, 255, 217, 255, 255, 255, 255, 255, 255, 255, 134, 191, 191, 191, 5, 191, 191, 191, 6, 255, 255, 255, 71, 255, 255, 255, 88, 255, 255, 255, 77, 255, 255, 255, 199, 255, 255, 255, 255, 255, 255, 255, 224, 191, 191, 191, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 32, 222, 255, 255, 255, 255, 255, 255, 255, 255, 252, 252, 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, 252, 252, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 35, 35, 35, 225, 0, 0, 0, 0, 67, 1, 1, 0, 194, 4, 4, 236, 255, 6, 6, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 27, 27, 255, 255, 142, 142, 255, 255, 246, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 247, 247, 255, 255, 158, 158, 255, 255, 6, 6, 255, 199, 5, 5, 242, 81, 1, 1, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 172, 172, 221, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 216, 216, 255, 253, 108, 108, 128, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 166, 90, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 101, 137, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 222, 205, 121, 255, 232, 220, 162, 255, 234, 223, 171, 255, 234, 223, 171, 255, 234, 223, 171, 255, 234, 223, 171, 255, 234, 223, 171, 255, 234, 223, 171, 255, 234, 223, 171, 255, 234, 223, 171, 255, 228, 215, 147, 255, 221, 204, 119, 255, 221, 204, 119, 255, 228, 214, 147, 255, 234, 223, 171, 255, 234, 223, 171, 255, 234, 223, 171, 255, 234, 223, 171, 255, 234, 223, 171, 255, 234, 223, 171, 255, 234, 223, 171, 255, 234, 223, 171, 255, 232, 220, 162, 255, 222, 205, 121, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 181, 92, 166, 255, 229, 198, 224, 255, 246, 236, 244, 255, 231, 202, 226, 255, 183, 97, 169, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 10, 255, 255, 255, 171, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 255, 255, 255, 217, 255, 255, 255, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 255, 255, 255, 102, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 1, 255, 255, 255, 123, 255, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 255, 255, 255, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 255, 255, 255, 117, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 14, 255, 255, 255, 214, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 73, 64, 64, 64, 0, 0, 0, 0, 0, 255, 255, 255, 12, 255, 255, 255, 255, 255, 255, 255, 237, 191, 191, 191, 1, 0, 0, 0, 0, 64, 64, 64, 0, 191, 191, 191, 10, 255, 255, 255, 136, 255, 255, 255, 251, 255, 255, 255, 255, 255, 255, 255, 222, 255, 255, 255, 44, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 32, 32, 222, 255, 255, 255, 255, 102, 102, 102, 255, 17, 17, 17, 255, 222, 222, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 210, 210, 255, 14, 14, 14, 255, 117, 117, 117, 255, 255, 255, 255, 255, 35, 35, 35, 225, 0, 0, 0, 0, 2, 0, 0, 0, 93, 12, 12, 220, 255, 6, 6, 255, 255, 6, 6, 255, 150, 7, 7, 255, 219, 207, 207, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 209, 209, 255, 38, 11, 11, 255, 236, 10, 10, 255, 255, 6, 6, 255, 102, 14, 14, 229, 4, 0, 0, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 172, 172, 221, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 216, 216, 255, 253, 108, 108, 128, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 166, 90, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 101, 137, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 234, 223, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 252, 249, 255, 223, 208, 129, 255, 223, 207, 129, 255, 253, 253, 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, 234, 223, 171, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 71, 255, 255, 255, 186, 255, 255, 255, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 255, 255, 255, 150, 255, 255, 255, 32, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 37, 255, 255, 255, 152, 255, 255, 255, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 223, 255, 255, 255, 150, 255, 255, 255, 32, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 5, 255, 255, 255, 201, 255, 255, 255, 200, 255, 255, 255, 110, 255, 255, 255, 53, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 255, 255, 255, 124, 255, 255, 255, 238, 255, 255, 255, 255, 255, 255, 255, 217, 191, 191, 191, 1, 0, 0, 0, 0, 191, 191, 191, 4, 255, 255, 255, 234, 255, 255, 255, 254, 255, 255, 255, 63, 128, 128, 128, 0, 255, 255, 255, 73, 255, 255, 255, 221, 255, 255, 255, 255, 255, 255, 255, 251, 255, 255, 255, 137, 191, 191, 191, 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, 21, 21, 21, 214, 255, 255, 255, 255, 85, 85, 85, 255, 8, 8, 8, 255, 216, 216, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 202, 202, 255, 6, 6, 6, 255, 101, 101, 101, 255, 255, 255, 255, 255, 24, 24, 24, 217, 0, 0, 0, 0, 0, 0, 0, 0, 27, 27, 27, 218, 255, 77, 77, 255, 255, 6, 6, 255, 226, 5, 5, 255, 222, 159, 159, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 157, 157, 255, 223, 5, 5, 255, 255, 6, 6, 255, 255, 71, 71, 255, 37, 36, 36, 227, 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 172, 172, 221, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 216, 216, 255, 253, 108, 108, 128, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 166, 90, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 228, 234, 255, 238, 224, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 101, 137, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 236, 226, 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, 227, 213, 142, 255, 226, 212, 141, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 226, 179, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 191, 191, 191, 1, 255, 255, 255, 34, 255, 255, 255, 21, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 191, 191, 191, 10, 191, 191, 191, 11, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 5, 128, 128, 128, 0, 64, 64, 64, 0, 191, 191, 191, 0, 255, 255, 255, 234, 255, 255, 255, 255, 255, 255, 255, 148, 191, 191, 191, 0, 191, 191, 191, 14, 255, 255, 255, 125, 255, 255, 255, 72, 64, 64, 64, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 118, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 235, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 255, 255, 255, 47, 64, 64, 64, 0, 0, 0, 0, 0, 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, 1, 1, 154, 187, 187, 187, 254, 255, 255, 255, 255, 242, 242, 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, 242, 242, 242, 255, 255, 255, 255, 255, 190, 190, 190, 254, 1, 1, 1, 157, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 180, 223, 208, 208, 255, 255, 65, 65, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 51, 51, 255, 255, 102, 102, 255, 255, 103, 103, 255, 255, 53, 53, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 60, 60, 255, 227, 209, 209, 255, 5, 5, 5, 187, 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 172, 172, 221, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 216, 216, 255, 253, 108, 108, 128, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 166, 90, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 242, 245, 255, 145, 51, 98, 255, 142, 46, 94, 255, 244, 235, 240, 255, 255, 255, 255, 255, 172, 101, 137, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 236, 226, 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, 227, 213, 142, 255, 226, 212, 141, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 226, 179, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 175, 79, 159, 255, 213, 163, 205, 255, 227, 193, 221, 255, 206, 148, 196, 255, 171, 70, 154, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 182, 255, 255, 255, 255, 255, 255, 255, 62, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 113, 255, 255, 255, 230, 255, 255, 255, 255, 255, 255, 255, 215, 255, 255, 255, 103, 191, 191, 191, 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, 0, 0, 0, 0, 0, 0, 19, 7, 7, 7, 191, 86, 86, 86, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 86, 86, 86, 255, 7, 7, 7, 193, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 23, 23, 23, 223, 95, 89, 89, 255, 138, 18, 18, 255, 239, 6, 6, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 6, 6, 255, 255, 6, 6, 255, 241, 6, 6, 255, 141, 17, 17, 255, 96, 88, 88, 255, 26, 26, 26, 226, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 172, 172, 221, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 216, 216, 255, 253, 108, 108, 128, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 135, 33, 85, 255, 144, 50, 98, 255, 151, 62, 107, 255, 139, 40, 90, 255, 147, 54, 101, 255, 169, 94, 131, 255, 208, 168, 188, 255, 253, 251, 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, 196, 145, 170, 255, 137, 35, 86, 255, 138, 38, 88, 255, 189, 132, 161, 255, 255, 255, 255, 255, 172, 101, 137, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 233, 222, 167, 255, 255, 254, 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, 253, 251, 246, 255, 223, 207, 127, 255, 223, 207, 126, 255, 252, 251, 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, 254, 253, 255, 233, 222, 168, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 172, 72, 155, 255, 239, 219, 235, 255, 254, 252, 253, 255, 243, 230, 241, 255, 255, 255, 255, 255, 222, 182, 215, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 34, 255, 255, 255, 76, 191, 191, 191, 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, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 0, 51, 0, 0, 0, 51, 0, 0, 0, 51, 0, 0, 0, 51, 0, 0, 0, 51, 0, 0, 0, 51, 0, 0, 0, 51, 0, 0, 0, 51, 0, 0, 0, 28, 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, 26, 0, 0, 0, 26, 44, 0, 0, 30, 211, 4, 4, 76, 242, 4, 4, 106, 243, 4, 4, 107, 213, 4, 4, 78, 48, 0, 0, 31, 0, 0, 0, 26, 0, 0, 0, 26, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 172, 172, 221, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 216, 216, 255, 253, 108, 108, 128, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 135, 33, 85, 255, 136, 34, 85, 255, 144, 50, 97, 255, 177, 110, 144, 255, 192, 137, 164, 255, 182, 120, 151, 255, 155, 70, 112, 255, 136, 34, 85, 255, 154, 67, 110, 255, 234, 216, 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 241, 244, 255, 144, 48, 96, 255, 175, 106, 140, 255, 182, 121, 152, 255, 140, 42, 91, 255, 243, 233, 238, 255, 172, 101, 137, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 229, 215, 150, 255, 232, 221, 165, 255, 232, 221, 165, 255, 232, 221, 165, 255, 232, 221, 165, 255, 232, 221, 165, 255, 232, 221, 165, 255, 232, 221, 165, 255, 232, 221, 165, 255, 225, 210, 135, 255, 221, 204, 119, 255, 221, 204, 119, 255, 225, 210, 135, 255, 232, 221, 165, 255, 232, 221, 165, 255, 232, 221, 165, 255, 232, 221, 165, 255, 232, 221, 165, 255, 232, 221, 165, 255, 232, 221, 165, 255, 232, 221, 165, 255, 229, 215, 150, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 179, 88, 164, 255, 227, 194, 221, 255, 230, 199, 224, 255, 230, 199, 224, 255, 235, 210, 230, 255, 255, 255, 255, 255, 199, 132, 188, 255, 170, 68, 153, 255, 218, 174, 211, 255, 255, 254, 254, 255, 230, 199, 224, 255, 230, 199, 224, 255, 230, 199, 224, 255, 230, 199, 224, 255, 230, 199, 224, 255, 230, 199, 224, 255, 230, 199, 224, 255, 230, 199, 224, 255, 230, 199, 224, 255, 230, 199, 224, 255, 230, 199, 224, 255, 230, 199, 224, 255, 227, 193, 221, 255, 178, 87, 163, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 171, 171, 220, 254, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 216, 216, 255, 253, 108, 108, 128, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 137, 37, 87, 255, 197, 147, 172, 255, 251, 247, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 222, 193, 208, 255, 149, 58, 104, 255, 142, 46, 94, 255, 235, 217, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 144, 170, 255, 137, 36, 86, 255, 234, 217, 226, 255, 240, 228, 234, 255, 139, 39, 89, 255, 187, 128, 158, 255, 172, 101, 137, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 225, 210, 135, 255, 230, 217, 154, 255, 230, 217, 154, 255, 229, 217, 153, 255, 222, 206, 123, 255, 221, 204, 119, 255, 221, 204, 119, 255, 225, 210, 134, 255, 230, 217, 154, 255, 230, 217, 154, 255, 230, 217, 154, 255, 230, 217, 154, 255, 230, 217, 154, 255, 230, 217, 154, 255, 230, 217, 154, 255, 230, 217, 154, 255, 225, 210, 135, 255, 221, 204, 119, 255, 221, 204, 119, 255, 222, 206, 123, 255, 229, 217, 153, 255, 230, 217, 154, 255, 230, 217, 154, 255, 225, 210, 136, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 183, 97, 169, 255, 236, 212, 232, 255, 238, 218, 235, 255, 238, 218, 235, 255, 242, 226, 239, 255, 255, 255, 255, 255, 195, 123, 183, 255, 170, 68, 153, 255, 214, 164, 206, 255, 255, 255, 255, 255, 238, 218, 235, 255, 238, 218, 235, 255, 238, 218, 235, 255, 238, 218, 235, 255, 238, 218, 235, 255, 238, 218, 235, 255, 238, 218, 235, 255, 238, 218, 235, 255, 238, 218, 235, 255, 238, 218, 235, 255, 238, 218, 235, 255, 238, 218, 235, 255, 235, 212, 231, 255, 183, 96, 168, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 191, 191, 191, 7, 255, 255, 255, 128, 255, 255, 255, 119, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 143, 255, 255, 255, 124, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 8, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 0, 0, 0, 95, 0, 0, 0, 149, 0, 0, 0, 175, 0, 0, 0, 201, 0, 0, 0, 201, 0, 0, 0, 175, 0, 0, 0, 149, 0, 0, 0, 97, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 170, 170, 220, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 207, 207, 249, 204, 99, 99, 121, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 35, 86, 255, 214, 179, 196, 255, 255, 255, 255, 255, 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, 232, 237, 255, 149, 58, 104, 255, 154, 68, 111, 255, 253, 251, 252, 255, 255, 255, 255, 255, 247, 240, 244, 255, 143, 47, 95, 255, 176, 109, 143, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 124, 155, 255, 140, 41, 90, 255, 164, 86, 125, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 236, 226, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 244, 226, 255, 221, 204, 119, 255, 227, 213, 144, 255, 254, 253, 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, 254, 253, 250, 255, 227, 214, 145, 255, 221, 204, 119, 255, 247, 244, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 227, 180, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 173, 75, 157, 255, 243, 228, 240, 255, 251, 247, 251, 255, 236, 212, 232, 255, 254, 254, 254, 255, 227, 194, 222, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 255, 255, 255, 12, 255, 255, 255, 255, 255, 255, 255, 241, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 114, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 12, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 1, 1, 1, 190, 56, 56, 56, 252, 135, 135, 135, 255, 197, 197, 197, 255, 223, 223, 223, 255, 249, 249, 249, 255, 249, 249, 249, 255, 223, 223, 223, 255, 197, 197, 197, 255, 137, 137, 137, 255, 58, 58, 58, 252, 1, 1, 1, 192, 0, 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 170, 170, 220, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 198, 198, 243, 86, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 180, 116, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 192, 207, 255, 136, 34, 85, 255, 209, 170, 190, 255, 255, 255, 255, 255, 194, 143, 169, 255, 137, 36, 87, 255, 236, 219, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 230, 236, 255, 139, 40, 90, 255, 137, 37, 87, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 236, 226, 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 251, 244, 255, 221, 204, 119, 255, 233, 223, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 223, 169, 255, 221, 204, 119, 255, 252, 251, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 227, 179, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 179, 87, 164, 255, 221, 181, 214, 255, 234, 210, 230, 255, 214, 165, 206, 255, 173, 75, 157, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 255, 255, 255, 10, 255, 255, 255, 255, 255, 255, 255, 243, 191, 191, 191, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 124, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 105, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 15, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 1, 1, 1, 184, 89, 89, 89, 255, 221, 221, 221, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 224, 224, 255, 92, 92, 92, 255, 2, 2, 2, 187, 0, 0, 0, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 170, 170, 220, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 208, 208, 249, 221, 99, 99, 121, 0, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 233, 214, 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, 155, 69, 112, 255, 149, 58, 103, 255, 171, 100, 136, 255, 140, 42, 91, 255, 178, 112, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 127, 157, 255, 136, 34, 85, 255, 135, 33, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 236, 226, 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 251, 244, 255, 221, 204, 119, 255, 233, 223, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 223, 169, 255, 221, 204, 119, 255, 252, 251, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 227, 179, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 255, 255, 255, 7, 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, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 114, 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, 96, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 19, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 1, 1, 78, 38, 38, 38, 242, 203, 203, 203, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 206, 206, 255, 41, 41, 41, 244, 1, 1, 1, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 170, 170, 220, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 126, 126, 248, 101, 0, 0, 64, 0, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 142, 46, 94, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 121, 152, 255, 136, 34, 85, 255, 135, 33, 85, 255, 138, 37, 87, 255, 237, 222, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 232, 238, 255, 140, 41, 91, 255, 135, 33, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 236, 226, 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 249, 238, 255, 221, 204, 119, 255, 230, 217, 154, 255, 255, 254, 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, 254, 254, 255, 230, 217, 155, 255, 221, 204, 119, 255, 251, 249, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 227, 179, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 255, 255, 255, 5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 126, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 105, 255, 255, 255, 255, 255, 255, 255, 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, 255, 88, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 15, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 67, 67, 67, 252, 238, 238, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 207, 207, 255, 132, 132, 132, 255, 202, 202, 202, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 205, 205, 255, 130, 130, 130, 255, 205, 205, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 240, 240, 255, 71, 71, 71, 252, 0, 0, 0, 115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 170, 170, 220, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 210, 210, 251, 233, 115, 115, 167, 2, 0, 0, 0, 0, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 148, 57, 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 133, 161, 255, 136, 34, 85, 255, 136, 34, 85, 255, 180, 116, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 131, 160, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 228, 215, 147, 255, 235, 225, 176, 255, 235, 225, 176, 255, 235, 225, 175, 255, 227, 213, 144, 255, 221, 204, 119, 255, 221, 204, 119, 255, 232, 220, 162, 255, 235, 225, 176, 255, 235, 225, 176, 255, 235, 225, 176, 255, 235, 225, 176, 255, 235, 225, 176, 255, 235, 225, 176, 255, 235, 225, 176, 255, 235, 225, 176, 255, 232, 220, 162, 255, 221, 204, 119, 255, 221, 204, 119, 255, 227, 213, 143, 255, 235, 225, 175, 255, 235, 225, 176, 255, 235, 225, 176, 255, 228, 215, 148, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 204, 142, 194, 255, 239, 219, 235, 255, 239, 219, 235, 255, 204, 143, 194, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 255, 255, 255, 2, 255, 255, 255, 255, 255, 255, 255, 251, 191, 191, 191, 0, 191, 191, 191, 0, 255, 255, 255, 134, 255, 255, 255, 255, 255, 255, 255, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 96, 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, 251, 255, 255, 255, 80, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 27, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 24, 255, 255, 255, 34, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 70, 255, 255, 255, 189, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 71, 71, 71, 253, 251, 251, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 187, 187, 255, 55, 55, 55, 251, 0, 0, 0, 170, 0, 0, 0, 182, 175, 175, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 180, 180, 255, 0, 0, 0, 184, 0, 0, 0, 167, 52, 52, 52, 250, 183, 183, 183, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 252, 252, 255, 75, 75, 75, 253, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 170, 170, 220, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 196, 196, 241, 116, 46, 46, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 135, 33, 85, 255, 138, 38, 88, 255, 251, 248, 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, 175, 107, 141, 255, 136, 34, 85, 255, 138, 38, 88, 255, 239, 224, 232, 255, 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, 234, 239, 255, 141, 43, 92, 255, 135, 33, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 199, 131, 188, 255, 255, 255, 255, 255, 236, 213, 232, 255, 236, 213, 232, 255, 255, 255, 255, 255, 199, 132, 188, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 255, 255, 255, 255, 253, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 133, 255, 255, 255, 255, 255, 255, 255, 120, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 51, 255, 255, 255, 202, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 198, 255, 255, 255, 40, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 22, 255, 255, 255, 51, 255, 255, 255, 51, 255, 255, 255, 51, 255, 255, 255, 75, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 120, 255, 255, 255, 51, 255, 255, 255, 51, 255, 255, 255, 51, 255, 255, 255, 33, 64, 64, 64, 0, 0, 0, 0, 0, 255, 255, 255, 90, 255, 255, 255, 254, 255, 255, 255, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 77, 255, 255, 255, 248, 255, 255, 255, 249, 191, 191, 191, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 39, 39, 39, 243, 239, 239, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 250, 250, 255, 103, 103, 103, 255, 0, 0, 0, 176, 0, 0, 0, 31, 0, 0, 0, 0, 0, 0, 0, 125, 175, 175, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 180, 180, 255, 0, 0, 0, 130, 0, 0, 0, 0, 0, 0, 0, 28, 0, 0, 0, 172, 97, 97, 97, 255, 249, 249, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 242, 242, 255, 42, 42, 42, 244, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 170, 170, 220, 255, 215, 215, 255, 255, 215, 215, 255, 255, 211, 211, 252, 242, 147, 147, 176, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 217, 184, 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, 250, 246, 248, 255, 144, 48, 96, 255, 135, 33, 85, 255, 182, 119, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 134, 162, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 229, 217, 153, 255, 252, 251, 244, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 248, 245, 229, 255, 222, 205, 122, 255, 222, 205, 122, 255, 248, 245, 229, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 253, 252, 247, 255, 252, 251, 244, 255, 230, 217, 153, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 187, 104, 173, 255, 244, 231, 242, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 252, 248, 251, 255, 243, 229, 241, 255, 171, 70, 154, 255, 171, 69, 154, 255, 243, 228, 240, 255, 252, 248, 251, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 247, 236, 245, 255, 244, 230, 241, 255, 186, 103, 172, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 252, 255, 255, 255, 255, 191, 191, 191, 1, 128, 128, 128, 0, 255, 255, 255, 131, 255, 255, 255, 255, 255, 255, 255, 242, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 155, 128, 128, 128, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 73, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 54, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 14, 255, 255, 255, 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, 232, 255, 255, 255, 40, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 126, 255, 255, 255, 255, 255, 255, 255, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 84, 255, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 191, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 249, 249, 255, 70, 70, 70, 252, 0, 0, 0, 111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125, 175, 175, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 180, 180, 255, 0, 0, 0, 130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 106, 65, 65, 65, 251, 248, 248, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 214, 214, 255, 3, 3, 3, 195, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 102, 157, 86, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 170, 170, 220, 255, 215, 215, 255, 255, 215, 215, 255, 255, 201, 201, 244, 131, 48, 48, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 157, 73, 115, 255, 252, 249, 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, 194, 143, 169, 255, 136, 34, 85, 255, 136, 34, 85, 255, 204, 160, 182, 255, 219, 189, 204, 255, 219, 189, 204, 255, 219, 189, 204, 255, 219, 189, 204, 255, 219, 189, 204, 255, 219, 189, 204, 255, 219, 189, 204, 255, 219, 189, 204, 255, 209, 170, 190, 255, 136, 34, 85, 255, 135, 33, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 236, 226, 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, 227, 212, 142, 255, 226, 212, 141, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 226, 179, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 176, 80, 160, 255, 219, 175, 211, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 241, 223, 238, 255, 249, 241, 248, 255, 178, 86, 163, 255, 178, 86, 163, 255, 249, 241, 247, 255, 241, 223, 238, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 221, 180, 214, 255, 218, 174, 211, 255, 175, 79, 159, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 3, 128, 128, 128, 0, 255, 255, 255, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 69, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 17, 255, 255, 255, 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 255, 255, 255, 46, 64, 64, 64, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 119, 255, 255, 255, 255, 255, 255, 255, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 12, 255, 255, 255, 139, 255, 255, 255, 255, 255, 255, 255, 236, 255, 255, 255, 119, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 74, 96, 96, 96, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 99, 99, 99, 255, 0, 0, 0, 109, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125, 105, 105, 105, 255, 153, 153, 153, 255, 153, 153, 153, 255, 108, 108, 108, 255, 0, 0, 0, 130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 104, 93, 93, 93, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 101, 101, 101, 254, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 108, 108, 161, 78, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 170, 170, 220, 255, 215, 215, 255, 255, 212, 212, 253, 248, 145, 145, 179, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 135, 33, 85, 255, 136, 34, 85, 255, 175, 107, 141, 255, 252, 249, 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, 212, 175, 193, 255, 137, 36, 87, 255, 135, 33, 84, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 135, 33, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 236, 226, 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, 227, 213, 142, 255, 226, 212, 141, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 226, 179, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 185, 101, 171, 255, 252, 248, 251, 255, 253, 251, 253, 255, 253, 251, 253, 255, 252, 248, 251, 255, 185, 102, 171, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 247, 255, 255, 255, 255, 255, 255, 255, 6, 128, 128, 128, 0, 255, 255, 255, 130, 255, 255, 255, 255, 255, 255, 255, 136, 255, 255, 255, 26, 255, 255, 255, 26, 255, 255, 255, 26, 255, 255, 255, 26, 255, 255, 255, 26, 255, 255, 255, 17, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 65, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 21, 255, 255, 255, 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, 240, 255, 255, 255, 51, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 79, 255, 255, 255, 255, 255, 255, 255, 99, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 178, 255, 255, 255, 246, 255, 255, 255, 17, 255, 255, 255, 17, 64, 64, 64, 0, 0, 0, 0, 0, 5, 5, 5, 199, 226, 226, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 182, 182, 254, 1, 1, 1, 169, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 102, 0, 0, 0, 102, 0, 0, 0, 102, 0, 0, 0, 102, 0, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 163, 176, 176, 176, 254, 255, 255, 255, 255, 255, 255, 255, 255, 229, 229, 229, 255, 7, 7, 7, 204, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 28, 41, 0, 109, 109, 148, 22, 146, 146, 200, 98, 141, 141, 195, 135, 140, 140, 196, 207, 136, 136, 193, 250, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 170, 170, 220, 255, 215, 215, 255, 255, 205, 205, 247, 147, 49, 49, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 156, 72, 114, 255, 216, 182, 199, 255, 251, 247, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 209, 220, 255, 178, 112, 145, 255, 136, 34, 85, 255, 135, 33, 84, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 235, 225, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 254, 251, 255, 225, 210, 135, 255, 224, 209, 134, 255, 254, 254, 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, 235, 225, 176, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 183, 95, 168, 255, 214, 164, 205, 255, 214, 164, 205, 255, 183, 95, 168, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 8, 128, 128, 128, 0, 255, 255, 255, 131, 255, 255, 255, 255, 255, 255, 255, 122, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 61, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 25, 255, 255, 255, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 255, 255, 255, 58, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 4, 255, 255, 255, 219, 255, 255, 255, 244, 255, 255, 255, 90, 191, 191, 191, 1, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 191, 191, 191, 11, 255, 255, 255, 137, 255, 255, 255, 255, 255, 255, 255, 152, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 69, 69, 69, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 48, 48, 48, 247, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 42, 42, 42, 245, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 74, 74, 74, 255, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 37, 50, 0, 73, 73, 101, 0, 71, 71, 98, 0, 149, 149, 200, 58, 142, 142, 197, 115, 140, 140, 193, 162, 139, 139, 195, 232, 135, 135, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 170, 170, 220, 255, 213, 213, 254, 253, 149, 149, 181, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 135, 33, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 148, 56, 102, 255, 140, 41, 91, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 224, 208, 130, 255, 238, 229, 187, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 234, 223, 171, 255, 221, 204, 119, 255, 221, 204, 119, 255, 234, 223, 171, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 241, 235, 201, 255, 238, 230, 187, 255, 224, 208, 130, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 255, 255, 255, 255, 253, 253, 254, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 242, 255, 255, 255, 255, 255, 255, 255, 11, 128, 128, 128, 0, 255, 255, 255, 133, 255, 255, 255, 255, 255, 255, 255, 174, 255, 255, 255, 102, 255, 255, 255, 102, 255, 255, 255, 102, 255, 255, 255, 102, 191, 191, 191, 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, 0, 0, 0, 0, 255, 255, 255, 58, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 30, 255, 255, 255, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 255, 255, 255, 65, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 38, 255, 255, 255, 221, 255, 255, 255, 255, 255, 255, 255, 230, 255, 255, 255, 178, 255, 255, 255, 153, 255, 255, 255, 147, 255, 255, 255, 176, 255, 255, 255, 238, 255, 255, 255, 255, 255, 255, 255, 187, 191, 191, 191, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 106, 147, 147, 147, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 196, 196, 255, 0, 0, 0, 159, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 154, 190, 190, 190, 255, 255, 255, 255, 255, 255, 255, 255, 255, 152, 152, 152, 255, 0, 0, 0, 111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 73, 73, 98, 0, 72, 72, 100, 0, 111, 111, 149, 15, 146, 146, 201, 88, 127, 127, 175, 126, 141, 141, 196, 198, 137, 137, 194, 247, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 170, 170, 220, 255, 194, 194, 238, 163, 88, 88, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 240, 255, 255, 255, 255, 255, 255, 255, 13, 128, 128, 128, 0, 255, 255, 255, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 54, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 35, 255, 255, 255, 229, 255, 255, 255, 249, 255, 255, 255, 72, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 191, 191, 191, 8, 255, 255, 255, 100, 255, 255, 255, 178, 255, 255, 255, 212, 255, 255, 255, 239, 255, 255, 255, 251, 255, 255, 255, 223, 255, 255, 255, 189, 255, 255, 255, 85, 191, 191, 191, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 166, 215, 215, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 121, 121, 121, 254, 0, 0, 0, 139, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 53, 0, 0, 0, 102, 0, 0, 0, 102, 0, 0, 0, 102, 0, 0, 0, 102, 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 135, 116, 116, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 220, 220, 255, 0, 0, 0, 171, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 27, 36, 0, 74, 74, 100, 0, 71, 71, 98, 0, 147, 147, 200, 47, 143, 143, 198, 110, 140, 140, 194, 150, 140, 140, 195, 225, 135, 135, 192, 254, 134, 134, 191, 255, 134, 134, 191, 255, 169, 169, 219, 254, 172, 172, 233, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 143, 255, 255, 255, 153, 255, 255, 255, 9, 128, 128, 128, 0, 255, 255, 255, 81, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 36, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 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, 255, 255, 255, 40, 255, 255, 255, 77, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 244, 244, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 162, 162, 162, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 60, 60, 60, 255, 0, 0, 0, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133, 111, 111, 111, 255, 153, 153, 153, 255, 153, 153, 153, 255, 114, 114, 114, 255, 0, 0, 0, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 58, 58, 58, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 160, 160, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 248, 248, 255, 0, 0, 0, 196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 38, 50, 0, 73, 73, 100, 0, 110, 110, 148, 9, 147, 147, 201, 80, 140, 140, 195, 122, 156, 156, 207, 130, 81, 81, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 12, 12, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 120, 120, 120, 255, 0, 0, 0, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133, 185, 185, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 190, 190, 255, 0, 0, 0, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 115, 115, 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, 15, 15, 15, 220, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 76, 76, 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 17, 43, 0, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 255, 136, 34, 85, 253, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 221, 204, 119, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 255, 51, 34, 136, 253, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 255, 170, 68, 153, 253, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 26, 0, 0, 0, 26, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 54, 0, 0, 0, 85, 0, 0, 0, 84, 0, 0, 0, 51, 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, 16, 16, 33, 0, 48, 48, 100, 25, 103, 103, 172, 107, 102, 102, 147, 18, 68, 68, 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 22, 22, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 120, 120, 120, 255, 0, 0, 0, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133, 185, 185, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 190, 190, 255, 0, 0, 0, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 115, 115, 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, 27, 27, 27, 232, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 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, 6, 6, 222, 77, 77, 77, 255, 77, 77, 77, 255, 7, 7, 7, 227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 120, 22, 22, 22, 233, 97, 97, 97, 255, 132, 132, 132, 254, 131, 131, 131, 255, 93, 93, 93, 255, 19, 19, 19, 229, 0, 0, 0, 112, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 16, 33, 0, 46, 46, 98, 23, 69, 69, 143, 146, 75, 75, 156, 250, 77, 77, 159, 255, 85, 85, 164, 251, 109, 109, 179, 167, 134, 134, 195, 69, 65, 65, 96, 0, 34, 34, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 203, 251, 251, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 236, 236, 255, 230, 230, 230, 255, 230, 230, 230, 255, 230, 230, 230, 255, 108, 108, 108, 255, 0, 0, 0, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133, 167, 167, 167, 255, 230, 230, 230, 255, 230, 230, 230, 255, 171, 171, 171, 255, 0, 0, 0, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 104, 104, 104, 255, 230, 230, 230, 255, 230, 230, 230, 255, 230, 230, 230, 255, 235, 235, 235, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 255, 4, 4, 4, 208, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 64, 0, 20, 1, 128, 0, 15, 1, 128, 0, 20, 0, 255, 13, 39, 3, 255, 60, 39, 2, 255, 105, 34, 1, 255, 74, 15, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 23, 123, 56, 255, 98, 165, 120, 255, 98, 165, 120, 255, 23, 123, 56, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 19, 221, 255, 255, 255, 255, 255, 255, 255, 255, 22, 22, 22, 227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 6, 6, 6, 202, 138, 138, 138, 255, 248, 248, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 245, 245, 255, 130, 130, 130, 255, 3, 3, 3, 194, 0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 96, 128, 0, 64, 192, 255, 40, 66, 191, 255, 77, 66, 191, 255, 70, 48, 143, 191, 17, 29, 92, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 16, 32, 0, 49, 49, 99, 23, 70, 70, 143, 144, 76, 76, 155, 249, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 99, 99, 173, 224, 119, 119, 185, 118, 105, 105, 147, 18, 68, 68, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 179, 229, 229, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 97, 97, 255, 0, 0, 0, 202, 0, 0, 0, 179, 0, 0, 0, 179, 0, 0, 0, 179, 0, 0, 0, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 93, 0, 0, 0, 179, 0, 0, 0, 179, 0, 0, 0, 179, 0, 0, 0, 179, 0, 0, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 0, 0, 0, 179, 0, 0, 0, 179, 0, 0, 0, 179, 0, 0, 0, 200, 91, 91, 91, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 234, 234, 255, 0, 0, 0, 184, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 2, 191, 24, 39, 2, 255, 133, 40, 3, 255, 178, 40, 4, 255, 223, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 38, 2, 255, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 20, 121, 53, 255, 198, 222, 206, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 222, 206, 255, 20, 121, 53, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 19, 221, 255, 255, 255, 255, 255, 255, 255, 255, 22, 22, 22, 227, 0, 0, 0, 0, 0, 0, 0, 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, 6, 6, 6, 202, 189, 189, 189, 255, 255, 255, 255, 255, 231, 231, 231, 255, 121, 121, 121, 255, 71, 71, 71, 255, 74, 74, 74, 255, 125, 125, 125, 255, 235, 235, 235, 255, 255, 255, 255, 255, 178, 178, 178, 254, 4, 4, 4, 192, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 48, 64, 0, 64, 191, 255, 55, 66, 192, 255, 205, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 250, 62, 189, 255, 153, 46, 142, 191, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58, 58, 91, 6, 70, 70, 141, 141, 75, 75, 155, 249, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 84, 84, 164, 251, 112, 112, 179, 168, 139, 139, 171, 35, 0, 0, 0, 0, 0, 0, 0, 135, 176, 176, 176, 255, 255, 255, 255, 255, 255, 255, 255, 255, 167, 167, 167, 255, 0, 0, 0, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121, 161, 161, 161, 254, 255, 255, 255, 255, 255, 255, 255, 255, 181, 181, 181, 255, 0, 0, 0, 140, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 191, 2, 40, 4, 255, 198, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 239, 35, 1, 255, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 62, 145, 90, 255, 255, 255, 255, 255, 122, 179, 141, 255, 122, 179, 141, 255, 255, 255, 255, 255, 62, 145, 90, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 78, 175, 159, 255, 141, 203, 193, 255, 141, 203, 193, 255, 78, 175, 158, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 19, 221, 255, 255, 255, 255, 255, 255, 255, 255, 22, 22, 22, 227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 122, 140, 140, 140, 255, 255, 255, 255, 255, 181, 181, 181, 254, 19, 19, 19, 226, 0, 0, 0, 89, 0, 0, 0, 26, 0, 0, 0, 29, 0, 0, 0, 94, 23, 23, 23, 231, 190, 190, 190, 254, 255, 255, 255, 255, 127, 127, 127, 255, 0, 0, 0, 109, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 45, 64, 0, 63, 186, 255, 68, 67, 193, 255, 248, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 66, 192, 255, 206, 49, 142, 191, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 91, 91, 141, 28, 126, 126, 183, 255, 99, 99, 167, 255, 78, 78, 158, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 123, 123, 190, 255, 202, 202, 245, 255, 218, 218, 255, 99, 0, 0, 0, 0, 0, 0, 0, 56, 98, 98, 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 245, 245, 255, 18, 18, 18, 226, 0, 0, 0, 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, 3, 15, 15, 15, 222, 242, 242, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 102, 102, 102, 255, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 2, 255, 43, 40, 4, 255, 249, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 38, 3, 255, 176, 19, 1, 255, 35, 4, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 45, 135, 75, 255, 253, 254, 253, 255, 185, 215, 195, 255, 185, 215, 195, 255, 253, 254, 253, 255, 45, 135, 75, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 70, 171, 154, 255, 141, 203, 193, 255, 238, 247, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 247, 246, 255, 140, 203, 193, 255, 70, 171, 154, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 19, 221, 255, 255, 255, 255, 255, 255, 255, 255, 22, 22, 22, 227, 0, 0, 0, 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, 25, 25, 25, 234, 249, 249, 249, 255, 231, 231, 231, 255, 18, 18, 18, 225, 0, 0, 0, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 24, 24, 24, 232, 237, 237, 237, 255, 244, 244, 244, 255, 17, 17, 17, 224, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 48, 143, 191, 12, 66, 193, 255, 232, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 66, 192, 255, 144, 32, 96, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 91, 91, 141, 28, 134, 134, 191, 255, 134, 134, 191, 255, 128, 128, 185, 255, 103, 103, 169, 255, 80, 80, 158, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 77, 77, 159, 255, 102, 102, 176, 255, 181, 181, 231, 255, 215, 215, 255, 255, 215, 215, 255, 255, 218, 218, 255, 99, 0, 0, 0, 0, 0, 0, 0, 2, 22, 22, 22, 231, 249, 249, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 130, 130, 130, 255, 0, 0, 0, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 26, 0, 0, 0, 26, 0, 0, 0, 26, 0, 0, 0, 26, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 123, 123, 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 251, 251, 255, 25, 25, 25, 234, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 64, 0, 39, 3, 255, 129, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 239, 36, 1, 255, 71, 9, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 122, 179, 141, 255, 251, 253, 251, 255, 251, 253, 251, 255, 122, 179, 141, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 159, 214, 241, 255, 160, 214, 241, 255, 158, 213, 241, 255, 140, 206, 239, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 113, 190, 178, 255, 219, 239, 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, 219, 239, 235, 255, 113, 190, 178, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 16, 7, 7, 7, 230, 26, 26, 26, 230, 26, 26, 26, 230, 26, 26, 26, 230, 26, 26, 26, 230, 43, 43, 43, 251, 255, 255, 255, 255, 255, 255, 255, 255, 46, 46, 46, 252, 26, 26, 26, 230, 26, 26, 26, 230, 26, 26, 26, 230, 26, 26, 26, 230, 7, 7, 7, 230, 0, 0, 0, 18, 0, 0, 0, 56, 101, 101, 101, 255, 255, 255, 255, 255, 119, 119, 119, 255, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, 133, 133, 133, 254, 255, 255, 255, 255, 87, 87, 87, 255, 0, 0, 0, 43, 0, 0, 0, 0, 0, 32, 64, 0, 41, 167, 255, 96, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 244, 46, 141, 191, 9, 0, 0, 0, 0, 0, 0, 0, 0, 91, 91, 141, 28, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 130, 130, 187, 255, 106, 106, 170, 255, 86, 86, 162, 252, 77, 77, 159, 255, 86, 86, 165, 255, 159, 159, 216, 255, 215, 215, 254, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 218, 218, 255, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 124, 147, 147, 147, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 248, 248, 255, 42, 42, 42, 243, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125, 53, 53, 53, 255, 77, 77, 77, 255, 77, 77, 77, 255, 54, 54, 54, 255, 0, 0, 0, 130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 37, 37, 37, 241, 246, 246, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 152, 152, 152, 255, 0, 0, 0, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, 191, 7, 40, 3, 255, 214, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 246, 35, 1, 255, 56, 8, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 190, 218, 199, 255, 190, 218, 199, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 176, 221, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 254, 255, 255, 198, 231, 247, 255, 139, 205, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 91, 180, 165, 255, 192, 226, 220, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 226, 220, 255, 91, 180, 165, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 18, 68, 68, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 73, 73, 73, 255, 0, 0, 0, 20, 0, 0, 0, 89, 138, 138, 138, 254, 255, 255, 255, 255, 69, 69, 69, 255, 0, 0, 0, 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, 35, 83, 83, 83, 255, 255, 255, 255, 255, 126, 126, 126, 255, 0, 0, 0, 76, 0, 0, 0, 0, 31, 94, 128, 0, 64, 191, 255, 149, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 66, 192, 255, 51, 0, 0, 0, 0, 0, 0, 0, 0, 91, 91, 141, 28, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 135, 135, 192, 254, 136, 136, 194, 252, 208, 208, 249, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 218, 218, 255, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 22, 22, 22, 230, 243, 243, 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 218, 218, 255, 19, 19, 19, 227, 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125, 175, 175, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 180, 180, 255, 0, 0, 0, 130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 17, 17, 17, 224, 215, 215, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 245, 245, 255, 25, 25, 25, 233, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 24, 1, 255, 59, 40, 4, 255, 254, 39, 3, 255, 192, 38, 2, 255, 80, 40, 3, 255, 221, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 222, 27, 0, 191, 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, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 27, 124, 59, 255, 65, 146, 92, 255, 33, 128, 65, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 190, 218, 199, 255, 190, 218, 199, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 33, 128, 65, 255, 65, 146, 92, 255, 27, 124, 59, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 159, 214, 241, 255, 160, 214, 241, 255, 172, 219, 243, 255, 209, 235, 248, 255, 255, 255, 255, 255, 204, 233, 248, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 76, 174, 158, 255, 164, 214, 206, 255, 249, 252, 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, 249, 252, 252, 255, 164, 214, 205, 255, 76, 174, 157, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 18, 68, 68, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 73, 73, 73, 255, 0, 0, 0, 20, 0, 0, 0, 89, 138, 138, 138, 254, 255, 255, 255, 255, 68, 68, 68, 255, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33, 80, 80, 80, 255, 255, 255, 255, 255, 126, 126, 126, 255, 0, 0, 0, 76, 0, 0, 0, 0, 31, 96, 128, 0, 65, 192, 255, 156, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 66, 191, 255, 56, 0, 0, 0, 0, 0, 0, 0, 0, 91, 91, 141, 28, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 147, 147, 201, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 218, 218, 255, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97, 96, 96, 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 213, 213, 255, 31, 31, 31, 238, 0, 0, 0, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125, 175, 175, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 180, 180, 255, 0, 0, 0, 130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82, 28, 28, 28, 236, 209, 209, 209, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 102, 102, 102, 255, 0, 0, 0, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 128, 0, 29, 2, 255, 150, 35, 2, 255, 104, 8, 0, 64, 0, 28, 2, 191, 20, 40, 4, 255, 225, 40, 4, 255, 255, 40, 4, 255, 255, 38, 2, 255, 119, 9, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 50, 138, 80, 255, 230, 241, 234, 255, 255, 255, 255, 255, 242, 247, 244, 255, 73, 151, 100, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 190, 218, 199, 255, 190, 218, 199, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 73, 151, 100, 255, 242, 247, 244, 255, 255, 255, 255, 255, 230, 241, 234, 255, 50, 138, 80, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 201, 232, 247, 255, 254, 255, 255, 255, 152, 211, 240, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 69, 170, 154, 255, 136, 201, 190, 255, 236, 246, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 246, 244, 255, 136, 201, 190, 255, 69, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 16, 7, 7, 7, 230, 26, 26, 26, 230, 26, 26, 26, 230, 26, 26, 26, 230, 26, 26, 26, 230, 43, 43, 43, 251, 255, 255, 255, 255, 255, 255, 255, 255, 46, 46, 46, 252, 26, 26, 26, 230, 26, 26, 26, 230, 26, 26, 26, 230, 26, 26, 26, 230, 7, 7, 7, 230, 0, 0, 0, 18, 0, 0, 0, 56, 101, 101, 101, 255, 255, 255, 255, 255, 119, 119, 119, 255, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97, 131, 131, 131, 254, 255, 255, 255, 255, 88, 88, 88, 255, 0, 0, 0, 43, 0, 0, 0, 0, 15, 44, 64, 0, 63, 186, 255, 113, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 251, 59, 173, 255, 18, 0, 0, 0, 0, 0, 0, 0, 0, 91, 91, 141, 28, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 147, 147, 201, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 218, 218, 255, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 152, 143, 143, 143, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 238, 238, 255, 97, 97, 97, 255, 2, 2, 2, 192, 0, 0, 0, 82, 0, 0, 0, 134, 175, 175, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 180, 180, 255, 0, 0, 0, 138, 0, 0, 0, 79, 1, 1, 1, 189, 94, 94, 94, 255, 236, 236, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 148, 148, 148, 255, 0, 0, 0, 158, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 3, 3, 0, 255, 11, 11, 20, 64, 2, 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, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 191, 14, 29, 2, 191, 19, 0, 0, 0, 0, 0, 0, 64, 0, 24, 2, 255, 87, 40, 4, 255, 255, 40, 4, 255, 255, 39, 4, 255, 221, 5, 0, 191, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 14, 14, 13, 191, 13, 13, 8, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 158, 199, 171, 255, 242, 248, 244, 255, 97, 165, 120, 255, 224, 237, 228, 255, 191, 218, 200, 255, 51, 138, 80, 255, 178, 211, 189, 255, 184, 214, 194, 255, 184, 214, 194, 255, 169, 205, 181, 255, 22, 122, 55, 255, 51, 138, 80, 255, 178, 211, 189, 255, 235, 244, 238, 255, 235, 244, 238, 255, 169, 205, 181, 255, 22, 122, 55, 255, 51, 138, 80, 255, 178, 211, 189, 255, 184, 214, 194, 255, 184, 214, 194, 255, 169, 205, 181, 255, 22, 122, 55, 255, 191, 218, 200, 255, 224, 237, 228, 255, 97, 165, 120, 255, 242, 248, 244, 255, 157, 199, 171, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 157, 213, 241, 255, 255, 255, 255, 255, 176, 221, 244, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 84, 177, 162, 255, 191, 226, 220, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 226, 220, 255, 84, 177, 161, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 19, 221, 255, 255, 255, 255, 255, 255, 255, 255, 22, 22, 22, 227, 0, 0, 0, 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, 25, 25, 25, 235, 249, 249, 249, 255, 231, 231, 231, 255, 18, 18, 18, 225, 0, 0, 0, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 24, 24, 24, 232, 237, 237, 237, 255, 244, 244, 244, 255, 16, 16, 16, 224, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 59, 172, 255, 26, 67, 193, 255, 246, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 66, 192, 255, 173, 31, 90, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90, 90, 142, 27, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 147, 147, 201, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 218, 218, 255, 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 4, 4, 4, 190, 154, 154, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 255, 116, 116, 116, 255, 44, 44, 44, 255, 175, 175, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 180, 180, 255, 42, 42, 42, 255, 115, 115, 115, 255, 217, 217, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 158, 158, 158, 255, 4, 4, 4, 194, 0, 0, 0, 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, 255, 10, 10, 17, 255, 21, 21, 236, 255, 18, 18, 85, 64, 5, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 191, 4, 40, 4, 255, 246, 40, 4, 255, 255, 40, 4, 255, 255, 38, 3, 255, 51, 0, 0, 0, 0, 0, 0, 0, 0, 64, 5, 5, 0, 255, 20, 20, 46, 255, 21, 21, 217, 255, 20, 20, 86, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 158, 199, 172, 255, 242, 248, 244, 255, 97, 165, 120, 255, 224, 237, 228, 255, 191, 219, 200, 255, 51, 138, 80, 255, 178, 211, 189, 255, 184, 214, 194, 255, 184, 214, 194, 255, 168, 205, 181, 255, 22, 122, 55, 255, 51, 138, 80, 255, 178, 211, 189, 255, 187, 216, 197, 255, 187, 216, 197, 255, 168, 205, 181, 255, 22, 122, 55, 255, 51, 138, 80, 255, 178, 211, 189, 255, 184, 214, 194, 255, 184, 214, 194, 255, 168, 205, 181, 255, 22, 122, 55, 255, 191, 219, 200, 255, 224, 237, 228, 255, 97, 165, 120, 255, 242, 248, 244, 255, 158, 199, 172, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 159, 214, 241, 255, 160, 214, 241, 255, 160, 214, 241, 255, 157, 213, 241, 255, 140, 206, 239, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 140, 206, 239, 255, 255, 255, 255, 255, 192, 228, 246, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 81, 176, 160, 255, 107, 188, 174, 255, 68, 170, 153, 255, 113, 190, 177, 255, 219, 239, 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, 219, 239, 235, 255, 112, 190, 177, 255, 68, 170, 153, 255, 107, 188, 174, 255, 82, 176, 161, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 19, 221, 255, 255, 255, 255, 255, 255, 255, 255, 22, 22, 22, 227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121, 139, 139, 139, 255, 255, 255, 255, 255, 182, 182, 182, 254, 19, 19, 19, 227, 0, 0, 0, 90, 0, 0, 0, 28, 0, 0, 0, 30, 0, 0, 0, 96, 23, 23, 23, 232, 191, 191, 191, 254, 255, 255, 255, 255, 127, 127, 127, 255, 0, 0, 0, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 43, 64, 0, 65, 192, 255, 109, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 234, 49, 144, 191, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 30, 43, 0, 145, 145, 199, 86, 139, 139, 194, 227, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 147, 147, 201, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 214, 214, 254, 255, 205, 205, 247, 160, 146, 146, 175, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 165, 111, 111, 111, 255, 252, 252, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 252, 252, 255, 116, 116, 116, 255, 0, 0, 0, 169, 0, 0, 0, 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, 64, 5, 5, 0, 255, 21, 21, 105, 255, 22, 22, 255, 255, 22, 22, 255, 255, 21, 21, 136, 191, 3, 3, 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, 0, 0, 0, 0, 0, 0, 19, 1, 128, 0, 39, 3, 255, 200, 40, 4, 255, 255, 40, 4, 255, 255, 24, 2, 255, 108, 0, 0, 64, 0, 128, 5, 5, 0, 255, 21, 21, 99, 255, 22, 22, 246, 255, 22, 22, 255, 255, 22, 22, 181, 128, 8, 8, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 51, 138, 80, 255, 230, 241, 234, 255, 255, 255, 255, 255, 242, 247, 244, 255, 73, 151, 100, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 73, 151, 100, 255, 242, 247, 244, 255, 255, 255, 255, 255, 230, 241, 234, 255, 50, 138, 80, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 176, 221, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 248, 253, 255, 156, 213, 241, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 237, 247, 252, 255, 221, 240, 250, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 161, 215, 242, 255, 214, 237, 249, 255, 145, 208, 239, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 96, 183, 168, 255, 254, 254, 254, 255, 184, 223, 216, 255, 86, 178, 163, 255, 70, 171, 154, 255, 142, 204, 193, 255, 239, 248, 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, 239, 248, 246, 255, 141, 203, 193, 255, 70, 171, 154, 255, 86, 178, 163, 255, 185, 223, 217, 255, 254, 255, 254, 255, 97, 183, 169, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 19, 221, 255, 255, 255, 255, 255, 255, 255, 255, 22, 22, 22, 227, 0, 0, 0, 0, 0, 0, 0, 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, 6, 6, 6, 202, 188, 188, 188, 255, 255, 255, 255, 255, 232, 232, 232, 255, 123, 123, 123, 255, 73, 73, 73, 255, 76, 76, 76, 255, 127, 127, 127, 254, 236, 236, 236, 255, 255, 255, 255, 255, 177, 177, 177, 254, 4, 4, 4, 192, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 48, 64, 0, 65, 191, 255, 103, 67, 193, 255, 242, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 66, 193, 255, 206, 58, 172, 255, 40, 13, 38, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 103, 103, 138, 4, 143, 143, 198, 120, 136, 136, 193, 245, 134, 134, 191, 255, 134, 134, 191, 255, 134, 134, 191, 255, 147, 147, 201, 255, 215, 215, 255, 255, 215, 215, 255, 255, 215, 215, 255, 255, 210, 210, 251, 230, 196, 196, 240, 71, 49, 49, 60, 0, 0, 0, 0, 0, 0, 0, 0, 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, 119, 43, 43, 43, 245, 179, 179, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 182, 182, 255, 45, 45, 45, 247, 0, 0, 0, 122, 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, 128, 10, 10, 0, 255, 22, 22, 199, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 21, 21, 186, 191, 15, 15, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 1, 128, 0, 37, 3, 255, 153, 40, 4, 255, 255, 40, 4, 255, 255, 39, 2, 255, 151, 183, 10, 95, 10, 255, 16, 16, 161, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 251, 255, 10, 10, 24, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 27, 124, 59, 255, 65, 146, 92, 255, 33, 128, 65, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 33, 128, 65, 255, 65, 146, 92, 255, 27, 124, 59, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 159, 214, 241, 255, 160, 214, 241, 255, 160, 214, 241, 255, 175, 221, 244, 255, 243, 250, 253, 255, 226, 243, 251, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 195, 229, 246, 255, 254, 255, 255, 255, 162, 215, 242, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 156, 213, 241, 255, 250, 253, 254, 255, 233, 246, 252, 255, 145, 208, 239, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 96, 183, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 251, 250, 255, 155, 209, 200, 255, 73, 172, 156, 255, 79, 175, 159, 255, 171, 217, 209, 255, 251, 253, 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, 251, 253, 253, 255, 171, 217, 209, 255, 79, 175, 159, 255, 73, 172, 156, 255, 156, 210, 201, 255, 246, 251, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 183, 169, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 19, 19, 221, 255, 255, 255, 255, 255, 255, 255, 255, 22, 22, 22, 227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 6, 6, 6, 201, 136, 136, 136, 255, 247, 247, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 245, 245, 255, 129, 129, 129, 255, 3, 3, 3, 193, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 48, 64, 0, 48, 143, 191, 18, 66, 192, 255, 96, 64, 187, 255, 131, 65, 190, 255, 124, 65, 192, 255, 66, 31, 138, 191, 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, 36, 36, 50, 0, 111, 111, 150, 20, 142, 142, 197, 154, 135, 135, 192, 253, 134, 134, 191, 255, 147, 147, 201, 255, 215, 215, 255, 255, 214, 214, 254, 255, 205, 205, 247, 162, 144, 144, 180, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 0, 159, 57, 57, 57, 252, 144, 144, 144, 255, 224, 224, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 226, 226, 255, 146, 146, 146, 255, 60, 60, 60, 253, 0, 0, 0, 162, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 18, 18, 39, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 21, 21, 214, 191, 16, 16, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 4, 255, 128, 40, 4, 255, 255, 40, 4, 255, 255, 64, 5, 228, 193, 255, 21, 21, 212, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 20, 20, 115, 72, 65, 31, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 31, 127, 63, 255, 194, 220, 203, 255, 55, 140, 83, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 55, 141, 84, 255, 194, 220, 203, 255, 31, 127, 63, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 198, 230, 247, 255, 252, 254, 255, 255, 139, 205, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 142, 207, 239, 255, 239, 248, 253, 255, 243, 250, 253, 255, 157, 213, 241, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 166, 217, 242, 255, 250, 253, 254, 255, 233, 245, 252, 255, 145, 208, 239, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 96, 183, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 243, 241, 255, 125, 196, 184, 255, 68, 170, 153, 255, 97, 183, 168, 255, 201, 230, 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 230, 225, 255, 96, 183, 168, 255, 68, 170, 153, 255, 126, 196, 185, 255, 229, 243, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 183, 169, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 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, 6, 6, 222, 77, 77, 77, 255, 77, 77, 77, 255, 7, 7, 7, 227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 118, 20, 20, 20, 231, 93, 93, 93, 255, 130, 130, 130, 255, 129, 129, 129, 255, 89, 89, 89, 255, 18, 18, 18, 227, 0, 0, 0, 111, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 44, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 44, 0, 125, 125, 177, 43, 139, 139, 195, 184, 147, 147, 200, 255, 210, 210, 251, 231, 196, 196, 243, 72, 48, 48, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 106, 0, 0, 0, 185, 30, 30, 30, 238, 57, 57, 57, 255, 83, 83, 83, 255, 84, 84, 84, 255, 58, 58, 58, 255, 32, 32, 32, 239, 0, 0, 0, 187, 0, 0, 0, 107, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 5, 5, 0, 255, 21, 21, 133, 255, 22, 22, 241, 255, 22, 22, 251, 255, 22, 22, 255, 255, 22, 22, 255, 255, 19, 19, 104, 191, 9, 9, 6, 64, 5, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 4, 255, 128, 40, 4, 255, 255, 40, 4, 255, 255, 39, 3, 255, 188, 228, 16, 47, 32, 255, 21, 21, 192, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 251, 255, 22, 22, 210, 136, 67, 33, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 57, 142, 85, 255, 248, 251, 249, 255, 98, 165, 120, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 98, 165, 120, 255, 248, 251, 249, 255, 57, 142, 85, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 168, 218, 243, 255, 255, 255, 255, 255, 206, 234, 248, 255, 163, 216, 242, 255, 161, 215, 241, 255, 172, 219, 243, 255, 174, 220, 243, 255, 174, 220, 243, 255, 193, 228, 246, 255, 250, 253, 254, 255, 253, 254, 255, 255, 209, 235, 248, 255, 190, 227, 246, 255, 188, 226, 245, 255, 187, 226, 245, 255, 187, 226, 245, 255, 187, 226, 245, 255, 215, 237, 249, 255, 254, 255, 255, 255, 233, 245, 252, 255, 145, 208, 239, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 96, 183, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 232, 227, 255, 99, 184, 170, 255, 68, 170, 153, 255, 122, 194, 182, 255, 226, 242, 239, 255, 226, 242, 239, 255, 121, 194, 182, 255, 68, 170, 153, 255, 100, 184, 170, 255, 205, 232, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 183, 169, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 61, 61, 22, 61, 61, 61, 26, 61, 61, 61, 26, 61, 61, 61, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 64, 64, 64, 0, 0, 0, 0, 2, 0, 0, 0, 50, 0, 0, 0, 83, 0, 0, 0, 81, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 72, 100, 0, 155, 155, 210, 63, 146, 146, 176, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 95, 58, 0, 98, 95, 60, 0, 98, 95, 60, 0, 98, 95, 60, 0, 98, 95, 60, 0, 98, 95, 60, 0, 98, 95, 60, 0, 98, 95, 60, 0, 98, 95, 60, 0, 98, 95, 60, 0, 45, 45, 26, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 35, 0, 0, 0, 36, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 5, 5, 0, 255, 20, 20, 29, 255, 9, 9, 2, 255, 21, 21, 156, 255, 22, 22, 255, 255, 22, 22, 255, 255, 20, 20, 193, 191, 12, 12, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 4, 255, 128, 40, 4, 255, 255, 40, 4, 255, 255, 39, 3, 255, 182, 210, 9, 61, 35, 255, 22, 22, 242, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 206, 255, 13, 13, 4, 255, 20, 20, 38, 166, 45, 19, 2, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 57, 142, 85, 255, 248, 251, 249, 255, 98, 165, 120, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 98, 165, 120, 255, 248, 251, 249, 255, 57, 142, 85, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 203, 233, 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, 255, 255, 255, 255, 255, 255, 180, 223, 244, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 96, 183, 168, 255, 255, 255, 255, 255, 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, 254, 254, 255, 174, 218, 211, 255, 81, 176, 160, 255, 70, 171, 154, 255, 69, 170, 153, 255, 81, 176, 160, 255, 175, 219, 212, 255, 252, 254, 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, 97, 183, 169, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 61, 61, 0, 182, 182, 182, 15, 153, 153, 153, 102, 245, 245, 245, 171, 245, 245, 245, 202, 245, 245, 245, 201, 245, 245, 245, 171, 153, 153, 153, 101, 182, 182, 182, 15, 61, 61, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 83, 255, 255, 255, 79, 62, 62, 62, 0, 39, 39, 39, 0, 184, 184, 184, 30, 191, 191, 191, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 43, 64, 0, 42, 86, 128, 0, 80, 168, 255, 19, 88, 173, 255, 54, 87, 172, 255, 53, 80, 168, 255, 19, 40, 88, 121, 0, 21, 43, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 96, 58, 0, 194, 191, 118, 140, 196, 192, 120, 153, 196, 192, 120, 153, 196, 192, 120, 153, 196, 192, 120, 153, 196, 192, 120, 153, 196, 192, 120, 153, 196, 192, 120, 153, 196, 192, 120, 153, 195, 191, 120, 153, 188, 184, 112, 80, 48, 47, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 7, 191, 191, 191, 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, 0, 0, 0, 0, 0, 0, 0, 191, 16, 16, 18, 255, 21, 21, 215, 255, 22, 22, 255, 255, 22, 22, 255, 255, 21, 21, 214, 255, 20, 20, 76, 191, 3, 3, 3, 128, 10, 10, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 64, 0, 38, 3, 255, 131, 40, 4, 255, 255, 40, 4, 255, 255, 75, 6, 216, 210, 255, 22, 22, 229, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 245, 255, 11, 11, 52, 64, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 56, 141, 85, 255, 248, 251, 249, 255, 97, 165, 120, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 97, 165, 120, 255, 248, 251, 249, 255, 56, 141, 85, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 163, 215, 242, 255, 252, 254, 255, 255, 231, 245, 252, 255, 182, 224, 244, 255, 174, 220, 243, 255, 174, 220, 243, 255, 183, 224, 244, 255, 245, 250, 253, 255, 255, 255, 255, 255, 222, 241, 250, 255, 192, 228, 246, 255, 189, 227, 245, 255, 187, 226, 245, 255, 187, 226, 245, 255, 187, 226, 245, 255, 214, 237, 249, 255, 254, 255, 255, 255, 233, 246, 252, 255, 146, 208, 239, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 96, 183, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 249, 247, 255, 96, 182, 168, 255, 94, 182, 167, 255, 241, 249, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 183, 169, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 225, 167, 177, 255, 250, 239, 241, 255, 250, 239, 241, 255, 225, 167, 177, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 225, 167, 177, 255, 250, 239, 241, 255, 250, 239, 241, 255, 225, 167, 177, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 225, 167, 177, 255, 250, 239, 241, 255, 250, 239, 241, 255, 225, 167, 177, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 0, 0, 0, 0, 114, 114, 114, 0, 244, 244, 244, 102, 246, 246, 246, 233, 244, 244, 244, 167, 244, 244, 244, 92, 245, 245, 245, 55, 245, 245, 245, 55, 244, 244, 244, 92, 244, 244, 244, 168, 245, 245, 245, 232, 244, 244, 244, 100, 112, 112, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 199, 251, 251, 251, 247, 106, 106, 106, 180, 96, 96, 96, 179, 241, 241, 241, 234, 255, 255, 255, 202, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 21, 191, 0, 86, 172, 255, 84, 89, 174, 255, 201, 89, 174, 255, 255, 85, 179, 242, 255, 50, 226, 111, 255, 40, 240, 71, 255, 63, 208, 159, 203, 87, 171, 255, 83, 11, 21, 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98, 97, 60, 0, 218, 219, 152, 252, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 239, 242, 181, 255, 204, 203, 132, 254, 193, 191, 119, 93, 49, 47, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 67, 255, 255, 255, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 14, 14, 26, 255, 20, 20, 197, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 21, 21, 230, 255, 21, 21, 172, 255, 13, 13, 117, 255, 20, 20, 63, 255, 20, 20, 42, 255, 20, 20, 26, 191, 14, 14, 10, 128, 10, 10, 0, 255, 19, 19, 20, 255, 21, 21, 34, 228, 17, 49, 51, 71, 5, 221, 187, 40, 4, 255, 255, 40, 4, 255, 255, 130, 11, 157, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 236, 255, 17, 17, 67, 64, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 24, 123, 57, 255, 144, 192, 160, 255, 39, 132, 70, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 39, 132, 70, 255, 144, 192, 160, 255, 23, 123, 56, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 185, 225, 245, 255, 255, 255, 255, 255, 152, 211, 240, 255, 136, 204, 238, 255, 136, 204, 238, 255, 138, 205, 238, 255, 226, 243, 251, 255, 250, 253, 254, 255, 173, 220, 243, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 165, 216, 242, 255, 250, 253, 254, 255, 234, 246, 252, 255, 146, 208, 239, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 96, 183, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 193, 181, 255, 118, 193, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 183, 169, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 216, 137, 150, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 137, 150, 255, 204, 102, 119, 255, 204, 102, 119, 255, 216, 137, 150, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 137, 150, 255, 204, 102, 119, 255, 204, 102, 119, 255, 216, 137, 150, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 137, 150, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 114, 114, 114, 0, 237, 237, 237, 144, 246, 246, 246, 209, 242, 242, 242, 41, 120, 120, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 120, 120, 0, 242, 242, 242, 42, 246, 246, 246, 210, 235, 235, 235, 142, 112, 112, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 168, 255, 255, 255, 255, 241, 241, 241, 217, 243, 243, 243, 221, 255, 255, 255, 255, 255, 255, 255, 152, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 96, 128, 0, 64, 191, 255, 31, 66, 191, 255, 71, 65, 192, 255, 61, 47, 144, 191, 11, 32, 96, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 128, 191, 9, 85, 171, 255, 170, 89, 174, 255, 255, 89, 174, 255, 255, 89, 174, 255, 255, 59, 215, 141, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 255, 32, 255, 75, 192, 204, 255, 88, 173, 255, 168, 61, 128, 191, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98, 97, 60, 0, 218, 219, 152, 252, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 239, 242, 181, 255, 217, 218, 151, 255, 212, 212, 143, 254, 194, 190, 115, 87, 48, 48, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 137, 255, 255, 255, 143, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 11, 11, 5, 255, 20, 20, 110, 255, 22, 22, 235, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 93, 8, 197, 255, 40, 4, 255, 255, 40, 4, 255, 255, 157, 13, 127, 255, 255, 22, 22, 254, 255, 19, 19, 166, 191, 15, 15, 29, 64, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 211, 236, 249, 255, 244, 250, 253, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 181, 223, 244, 255, 255, 255, 255, 255, 178, 222, 244, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 156, 212, 241, 255, 250, 253, 254, 255, 234, 246, 252, 255, 146, 208, 239, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 96, 183, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 193, 181, 255, 118, 193, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 183, 169, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 227, 170, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 170, 179, 255, 204, 102, 119, 255, 204, 102, 119, 255, 227, 170, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 170, 179, 255, 204, 102, 119, 255, 204, 102, 119, 255, 227, 170, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 170, 179, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 61, 61, 61, 0, 245, 245, 245, 106, 245, 245, 245, 207, 183, 183, 183, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 184, 184, 184, 13, 245, 245, 245, 208, 245, 245, 245, 104, 61, 61, 61, 0, 191, 191, 191, 49, 255, 255, 255, 124, 255, 255, 255, 102, 255, 255, 255, 188, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 225, 225, 101, 165, 165, 165, 26, 165, 165, 165, 26, 126, 126, 126, 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, 16, 47, 64, 0, 64, 191, 255, 50, 66, 193, 255, 196, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 247, 66, 192, 255, 145, 47, 143, 191, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 101, 191, 1, 87, 172, 255, 171, 86, 179, 243, 255, 63, 209, 158, 255, 63, 209, 159, 255, 86, 178, 244, 255, 53, 222, 121, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 254, 34, 255, 65, 206, 167, 255, 89, 174, 255, 255, 85, 171, 255, 169, 49, 100, 191, 1, 0, 0, 0, 0, 0, 0, 0, 0, 98, 97, 60, 0, 218, 219, 152, 252, 240, 243, 187, 255, 231, 235, 187, 255, 231, 235, 187, 255, 231, 235, 187, 255, 231, 235, 187, 255, 231, 235, 187, 255, 231, 235, 187, 255, 239, 243, 187, 255, 243, 247, 187, 255, 230, 231, 168, 255, 229, 230, 167, 255, 201, 199, 128, 179, 97, 96, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 207, 255, 255, 255, 225, 191, 191, 191, 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, 64, 5, 5, 0, 191, 13, 13, 8, 255, 21, 21, 90, 255, 21, 21, 179, 255, 22, 22, 242, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 255, 22, 22, 255, 66, 6, 226, 255, 40, 4, 255, 255, 40, 4, 255, 255, 157, 12, 127, 158, 255, 19, 19, 39, 128, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 31, 127, 63, 255, 194, 220, 203, 255, 55, 140, 83, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 55, 141, 84, 255, 194, 220, 203, 255, 31, 127, 63, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 159, 214, 241, 255, 160, 214, 241, 255, 160, 214, 241, 255, 160, 214, 241, 255, 163, 216, 242, 255, 193, 228, 246, 255, 253, 254, 255, 255, 205, 234, 248, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 228, 244, 251, 255, 232, 245, 252, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 161, 215, 242, 255, 214, 237, 249, 255, 146, 208, 239, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 96, 183, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 193, 181, 255, 118, 193, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 183, 169, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 216, 137, 150, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 137, 150, 255, 204, 102, 119, 255, 204, 102, 119, 255, 216, 137, 150, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 137, 150, 255, 204, 102, 119, 255, 204, 102, 119, 255, 216, 137, 150, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 137, 150, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 184, 184, 184, 20, 246, 246, 246, 234, 238, 238, 238, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 239, 239, 239, 37, 246, 246, 246, 234, 248, 248, 248, 19, 255, 255, 255, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 231, 231, 255, 192, 192, 192, 93, 255, 255, 255, 160, 255, 255, 255, 255, 253, 253, 253, 255, 244, 244, 244, 255, 235, 235, 235, 255, 169, 169, 169, 194, 84, 84, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 48, 64, 0, 63, 189, 255, 63, 67, 193, 255, 246, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 66, 192, 255, 200, 38, 133, 191, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 39, 64, 0, 84, 166, 255, 89, 89, 174, 255, 255, 42, 237, 81, 255, 30, 255, 32, 255, 30, 255, 32, 255, 43, 236, 83, 255, 43, 236, 83, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 254, 34, 255, 81, 183, 228, 255, 89, 174, 255, 255, 89, 174, 255, 255, 87, 171, 255, 87, 21, 43, 64, 0, 0, 0, 0, 0, 98, 97, 60, 0, 218, 219, 152, 252, 230, 233, 186, 255, 197, 197, 185, 255, 197, 197, 185, 255, 197, 197, 185, 255, 197, 197, 185, 255, 197, 197, 185, 255, 197, 197, 185, 255, 210, 212, 186, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 204, 203, 133, 178, 97, 96, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 23, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 53, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 10, 10, 0, 191, 12, 12, 4, 255, 20, 20, 49, 255, 21, 21, 89, 255, 21, 21, 123, 255, 21, 21, 147, 255, 21, 21, 153, 255, 20, 20, 155, 255, 21, 21, 153, 255, 19, 19, 145, 180, 14, 102, 133, 41, 4, 254, 255, 40, 4, 255, 255, 40, 4, 255, 252, 19, 0, 255, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 57, 142, 85, 255, 248, 251, 249, 255, 98, 165, 120, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 98, 165, 120, 255, 248, 251, 249, 255, 57, 142, 85, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 176, 221, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 239, 250, 255, 142, 207, 239, 255, 136, 204, 238, 255, 136, 204, 238, 255, 138, 205, 238, 255, 254, 254, 255, 255, 197, 230, 247, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 96, 183, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 193, 181, 255, 118, 193, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 183, 169, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 225, 167, 177, 255, 250, 239, 241, 255, 250, 239, 241, 255, 225, 167, 177, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 225, 167, 177, 255, 250, 239, 241, 255, 250, 239, 241, 255, 225, 167, 177, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 225, 167, 177, 255, 250, 239, 241, 255, 250, 239, 241, 255, 225, 167, 177, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 243, 243, 243, 114, 243, 243, 243, 156, 119, 119, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 119, 119, 119, 0, 244, 244, 244, 157, 241, 241, 241, 112, 189, 189, 189, 3, 234, 234, 234, 108, 255, 255, 255, 241, 255, 255, 255, 255, 154, 154, 154, 245, 68, 68, 68, 8, 190, 190, 190, 5, 250, 250, 250, 254, 255, 255, 255, 255, 255, 255, 255, 255, 252, 252, 252, 203, 172, 172, 172, 208, 84, 84, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 143, 191, 10, 66, 193, 255, 228, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 50, 176, 255, 140, 16, 80, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 86, 128, 0, 88, 174, 255, 208, 87, 176, 248, 255, 30, 255, 33, 255, 30, 255, 32, 255, 30, 255, 32, 255, 29, 255, 32, 255, 30, 255, 32, 255, 30, 255, 32, 255, 29, 255, 31, 255, 29, 255, 31, 255, 34, 250, 46, 255, 50, 227, 109, 255, 85, 180, 239, 255, 88, 173, 255, 206, 43, 86, 128, 0, 0, 0, 0, 0, 98, 97, 60, 0, 218, 219, 152, 252, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 204, 203, 133, 178, 97, 96, 59, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 91, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 191, 191, 191, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 10, 10, 0, 128, 10, 74, 0, 128, 9, 9, 0, 128, 10, 10, 0, 128, 8, 72, 0, 24, 2, 255, 96, 40, 4, 255, 255, 40, 4, 255, 255, 39, 3, 255, 199, 14, 1, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 57, 142, 85, 255, 248, 251, 249, 255, 98, 165, 120, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 98, 165, 120, 255, 248, 251, 249, 255, 57, 142, 85, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 159, 214, 241, 255, 160, 214, 241, 255, 160, 214, 241, 255, 160, 214, 241, 255, 160, 214, 241, 255, 150, 210, 240, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 151, 210, 240, 255, 255, 255, 255, 255, 182, 224, 245, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 83, 177, 161, 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, 119, 193, 181, 255, 118, 193, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 84, 177, 162, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 245, 245, 245, 186, 243, 243, 243, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 244, 244, 244, 77, 246, 246, 246, 184, 0, 0, 0, 167, 0, 0, 0, 210, 167, 167, 167, 245, 255, 255, 255, 255, 197, 197, 197, 253, 137, 137, 137, 13, 255, 255, 255, 73, 255, 255, 255, 255, 243, 243, 243, 251, 251, 251, 251, 62, 170, 170, 170, 8, 169, 169, 169, 208, 84, 84, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 41, 120, 255, 94, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 106, 206, 255, 255, 76, 196, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 66, 193, 255, 242, 45, 141, 191, 8, 0, 0, 0, 0, 0, 0, 0, 0, 87, 171, 255, 29, 89, 174, 255, 255, 89, 174, 255, 255, 52, 225, 115, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 254, 33, 255, 30, 255, 32, 255, 30, 255, 32, 255, 29, 255, 32, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 255, 32, 255, 49, 228, 104, 255, 89, 174, 255, 255, 85, 173, 255, 27, 0, 0, 0, 0, 98, 97, 60, 0, 218, 219, 152, 252, 241, 245, 187, 255, 237, 241, 187, 255, 237, 241, 187, 255, 237, 241, 187, 255, 237, 241, 187, 255, 237, 241, 187, 255, 237, 241, 187, 255, 237, 241, 187, 255, 237, 241, 187, 255, 237, 241, 187, 255, 241, 245, 187, 255, 204, 203, 133, 178, 161, 160, 123, 0, 255, 255, 255, 31, 255, 255, 255, 162, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 220, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 255, 255, 255, 179, 255, 255, 255, 182, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 197, 255, 255, 255, 40, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 191, 14, 19, 1, 255, 31, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 191, 0, 39, 3, 255, 200, 40, 4, 255, 255, 40, 4, 255, 255, 38, 2, 255, 106, 9, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 56, 141, 85, 255, 248, 251, 249, 255, 97, 165, 120, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 97, 165, 120, 255, 248, 251, 249, 255, 56, 141, 85, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 176, 221, 244, 255, 255, 255, 255, 255, 160, 215, 241, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 184, 223, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 193, 181, 255, 118, 193, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 223, 216, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 246, 246, 246, 219, 244, 244, 244, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 244, 244, 244, 37, 246, 246, 246, 216, 0, 0, 0, 188, 168, 168, 168, 131, 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, 253, 254, 255, 255, 255, 38, 153, 153, 153, 8, 169, 169, 169, 208, 159, 159, 159, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 31, 94, 128, 0, 64, 191, 255, 149, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 160, 224, 255, 255, 255, 255, 255, 255, 231, 247, 255, 255, 69, 194, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 65, 192, 255, 49, 0, 0, 0, 0, 0, 0, 0, 0, 88, 173, 255, 64, 89, 174, 255, 255, 89, 174, 255, 255, 67, 203, 173, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 255, 33, 255, 30, 255, 32, 255, 31, 253, 37, 255, 88, 175, 251, 255, 88, 173, 255, 61, 0, 0, 0, 0, 98, 97, 60, 0, 218, 219, 152, 252, 226, 229, 186, 255, 191, 191, 185, 255, 191, 191, 185, 255, 191, 191, 185, 255, 191, 191, 185, 255, 191, 191, 185, 255, 191, 191, 185, 255, 191, 191, 185, 255, 191, 191, 185, 255, 191, 191, 185, 255, 229, 233, 186, 255, 204, 203, 133, 178, 97, 96, 59, 0, 64, 64, 64, 0, 191, 191, 191, 25, 255, 255, 255, 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, 171, 191, 191, 191, 17, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, 191, 7, 39, 3, 255, 189, 40, 3, 255, 93, 0, 0, 0, 0, 9, 0, 64, 0, 38, 2, 255, 97, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 238, 27, 0, 191, 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, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 24, 123, 57, 255, 144, 192, 160, 255, 39, 132, 70, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 39, 132, 70, 255, 144, 192, 160, 255, 23, 123, 56, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 143, 207, 239, 255, 237, 247, 252, 255, 239, 248, 253, 255, 139, 205, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 69, 170, 154, 255, 136, 201, 190, 255, 236, 246, 244, 255, 255, 255, 255, 255, 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, 193, 181, 255, 118, 193, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 246, 244, 255, 136, 201, 190, 255, 69, 170, 154, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 246, 246, 246, 224, 245, 245, 245, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 245, 245, 32, 245, 245, 245, 221, 3, 3, 3, 188, 246, 246, 246, 232, 255, 255, 255, 245, 168, 168, 168, 243, 238, 238, 238, 243, 255, 255, 255, 255, 255, 255, 255, 230, 244, 244, 244, 253, 255, 255, 255, 255, 255, 255, 255, 192, 196, 196, 196, 9, 169, 169, 169, 208, 255, 255, 255, 156, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 113, 64, 64, 64, 0, 31, 96, 128, 0, 65, 192, 255, 156, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 210, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 202, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 66, 192, 255, 56, 0, 0, 0, 0, 0, 0, 0, 0, 87, 172, 255, 66, 89, 174, 255, 255, 89, 174, 255, 255, 49, 228, 107, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 255, 32, 255, 31, 254, 35, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 255, 33, 255, 34, 249, 49, 255, 89, 174, 255, 255, 88, 173, 255, 64, 0, 0, 0, 0, 98, 97, 60, 0, 218, 219, 152, 252, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 204, 203, 133, 178, 97, 96, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 90, 255, 255, 255, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 255, 255, 255, 102, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 191, 2, 37, 3, 255, 170, 40, 4, 255, 255, 36, 2, 255, 130, 24, 0, 191, 4, 38, 2, 255, 106, 40, 4, 255, 250, 40, 4, 255, 255, 40, 4, 255, 255, 38, 2, 255, 116, 9, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 21, 121, 54, 255, 51, 139, 80, 255, 24, 123, 57, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 24, 123, 57, 255, 51, 139, 80, 255, 21, 121, 54, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 137, 204, 238, 255, 159, 214, 241, 255, 160, 214, 241, 255, 160, 214, 241, 255, 160, 214, 241, 255, 160, 214, 241, 255, 165, 216, 242, 255, 189, 227, 245, 255, 241, 249, 253, 255, 253, 254, 255, 255, 164, 216, 242, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 76, 174, 158, 255, 165, 214, 206, 255, 249, 252, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 193, 181, 255, 118, 193, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 252, 252, 255, 165, 214, 206, 255, 76, 174, 158, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 245, 245, 245, 196, 214, 214, 214, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 230, 230, 230, 64, 245, 245, 245, 194, 0, 0, 0, 188, 108, 108, 108, 64, 170, 170, 170, 14, 0, 0, 0, 215, 197, 197, 197, 219, 255, 255, 255, 255, 240, 240, 240, 126, 90, 90, 90, 218, 215, 215, 215, 234, 255, 255, 255, 141, 183, 183, 183, 8, 169, 169, 169, 208, 255, 255, 255, 221, 255, 255, 255, 26, 255, 255, 255, 50, 255, 255, 255, 188, 128, 128, 128, 0, 14, 46, 64, 0, 61, 188, 255, 115, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 252, 50, 187, 255, 19, 0, 0, 0, 0, 0, 0, 0, 0, 87, 171, 255, 34, 89, 174, 255, 255, 89, 174, 255, 255, 54, 221, 125, 255, 30, 255, 32, 255, 30, 255, 32, 255, 30, 254, 33, 255, 30, 254, 34, 255, 72, 197, 191, 255, 66, 205, 168, 255, 30, 255, 33, 255, 30, 255, 32, 255, 30, 255, 32, 255, 63, 209, 158, 255, 89, 174, 255, 255, 86, 171, 255, 32, 0, 0, 0, 0, 98, 97, 60, 0, 218, 219, 152, 252, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 204, 203, 133, 178, 97, 96, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 191, 191, 191, 23, 255, 255, 255, 218, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 255, 255, 255, 44, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 1, 128, 0, 29, 2, 255, 149, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 237, 40, 4, 255, 242, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 39, 3, 255, 191, 24, 0, 191, 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, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 43, 134, 73, 255, 220, 235, 225, 255, 255, 255, 255, 255, 233, 242, 236, 255, 63, 145, 91, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 64, 146, 91, 255, 233, 242, 236, 255, 255, 255, 255, 255, 220, 235, 225, 255, 43, 134, 73, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 177, 222, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 245, 252, 255, 160, 214, 241, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 91, 181, 166, 255, 193, 227, 221, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 193, 181, 255, 118, 193, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 226, 220, 255, 91, 181, 166, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 245, 245, 245, 130, 183, 183, 183, 136, 60, 60, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 92, 92, 0, 215, 215, 215, 138, 224, 224, 224, 128, 0, 0, 0, 188, 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 0, 215, 153, 153, 153, 208, 255, 255, 255, 255, 211, 211, 211, 44, 77, 77, 77, 215, 168, 168, 168, 215, 159, 159, 159, 0, 153, 153, 153, 8, 169, 169, 169, 208, 255, 255, 255, 218, 128, 128, 128, 0, 255, 255, 255, 28, 255, 255, 255, 188, 128, 128, 128, 0, 0, 0, 0, 0, 51, 186, 255, 29, 67, 193, 255, 247, 67, 193, 255, 255, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 65, 191, 255, 177, 28, 93, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 86, 128, 0, 89, 174, 255, 217, 89, 174, 255, 255, 80, 185, 223, 255, 34, 250, 46, 255, 30, 255, 32, 255, 30, 255, 32, 255, 39, 242, 68, 255, 88, 176, 250, 255, 47, 231, 98, 255, 30, 255, 32, 255, 30, 255, 32, 255, 41, 239, 76, 255, 89, 174, 255, 255, 88, 174, 255, 215, 43, 86, 128, 0, 0, 0, 0, 0, 98, 97, 60, 0, 218, 219, 152, 252, 224, 227, 186, 255, 185, 185, 185, 255, 185, 185, 185, 255, 185, 185, 185, 255, 185, 185, 185, 255, 185, 185, 185, 255, 185, 185, 185, 255, 185, 185, 185, 255, 185, 185, 185, 255, 185, 185, 185, 255, 228, 231, 186, 255, 204, 203, 133, 178, 97, 96, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 8, 255, 255, 255, 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 1, 64, 0, 39, 3, 255, 125, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 39, 3, 255, 201, 28, 1, 191, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 152, 196, 167, 255, 245, 250, 247, 255, 114, 174, 134, 255, 230, 240, 233, 255, 187, 216, 197, 255, 39, 131, 70, 255, 149, 194, 164, 255, 155, 198, 169, 255, 155, 198, 169, 255, 140, 189, 157, 255, 19, 120, 53, 255, 39, 131, 70, 255, 149, 194, 164, 255, 155, 198, 169, 255, 155, 198, 169, 255, 140, 189, 157, 255, 19, 120, 53, 255, 39, 131, 70, 255, 149, 194, 164, 255, 155, 198, 169, 255, 155, 198, 169, 255, 140, 189, 157, 255, 19, 120, 53, 255, 187, 216, 197, 255, 230, 240, 233, 255, 115, 175, 135, 255, 245, 250, 247, 255, 152, 196, 167, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 137, 204, 238, 255, 159, 214, 241, 255, 160, 214, 241, 255, 160, 214, 241, 255, 160, 214, 241, 255, 160, 214, 241, 255, 160, 214, 241, 255, 146, 208, 239, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 114, 191, 178, 255, 220, 239, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 193, 181, 255, 118, 193, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 239, 235, 255, 113, 191, 178, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 241, 241, 241, 36, 246, 246, 246, 233, 183, 183, 183, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 183, 183, 183, 19, 246, 246, 246, 234, 180, 180, 180, 35, 0, 0, 0, 188, 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 0, 215, 87, 87, 87, 208, 181, 181, 181, 56, 102, 102, 102, 0, 77, 77, 77, 215, 168, 168, 168, 215, 84, 84, 84, 0, 153, 153, 153, 8, 169, 169, 169, 208, 255, 255, 255, 218, 128, 128, 128, 0, 255, 255, 255, 28, 255, 255, 255, 188, 128, 128, 128, 0, 0, 0, 0, 0, 13, 47, 64, 0, 66, 192, 255, 115, 67, 193, 255, 255, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 67, 193, 255, 237, 32, 180, 255, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 42, 64, 0, 88, 170, 255, 101, 89, 174, 255, 255, 89, 174, 255, 255, 82, 183, 230, 255, 60, 213, 148, 255, 61, 211, 152, 255, 85, 180, 239, 255, 89, 174, 255, 255, 33, 250, 44, 255, 30, 255, 32, 255, 30, 254, 33, 255, 30, 255, 33, 255, 84, 180, 239, 255, 85, 173, 255, 100, 20, 43, 64, 0, 0, 0, 0, 0, 98, 97, 60, 0, 218, 219, 152, 252, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 204, 203, 133, 178, 97, 96, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 79, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 255, 255, 255, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 142, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 64, 0, 37, 3, 255, 102, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 248, 39, 3, 255, 141, 29, 0, 191, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 161, 201, 174, 255, 240, 246, 242, 255, 77, 153, 102, 255, 218, 234, 224, 255, 196, 221, 204, 255, 62, 145, 90, 255, 227, 239, 231, 255, 236, 244, 239, 255, 236, 244, 239, 255, 210, 229, 216, 255, 25, 124, 58, 255, 62, 145, 90, 255, 227, 239, 231, 255, 236, 244, 239, 255, 236, 244, 239, 255, 210, 229, 216, 255, 25, 124, 58, 255, 62, 145, 90, 255, 227, 239, 231, 255, 236, 244, 239, 255, 236, 244, 239, 255, 210, 229, 216, 255, 25, 124, 58, 255, 196, 221, 204, 255, 218, 234, 224, 255, 77, 153, 102, 255, 240, 246, 242, 255, 161, 201, 174, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 70, 171, 154, 255, 141, 203, 193, 255, 239, 248, 246, 255, 119, 193, 181, 255, 118, 193, 180, 255, 239, 248, 246, 255, 141, 203, 193, 255, 70, 171, 154, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 111, 111, 111, 0, 235, 235, 235, 141, 245, 245, 245, 176, 166, 166, 166, 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, 172, 172, 172, 2, 245, 245, 245, 177, 235, 235, 235, 139, 111, 111, 111, 0, 0, 0, 0, 188, 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 0, 215, 77, 77, 77, 208, 68, 68, 68, 8, 39, 39, 39, 0, 77, 77, 77, 215, 168, 168, 168, 215, 84, 84, 84, 0, 153, 153, 153, 8, 169, 169, 169, 208, 255, 255, 255, 218, 128, 128, 128, 0, 255, 255, 255, 28, 255, 255, 255, 188, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 48, 64, 0, 66, 192, 255, 112, 67, 193, 255, 245, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 66, 193, 255, 213, 61, 181, 255, 45, 7, 43, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, 123, 191, 4, 88, 173, 255, 187, 89, 174, 255, 255, 89, 174, 255, 255, 89, 174, 255, 255, 89, 174, 255, 255, 89, 174, 255, 255, 89, 174, 255, 255, 48, 230, 101, 255, 30, 255, 32, 255, 30, 255, 32, 255, 36, 245, 58, 255, 86, 174, 252, 186, 63, 128, 191, 3, 0, 0, 0, 0, 0, 0, 0, 0, 98, 97, 60, 0, 218, 219, 152, 252, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 204, 203, 133, 178, 97, 96, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 161, 255, 255, 255, 255, 255, 255, 255, 204, 191, 191, 191, 30, 191, 191, 191, 12, 255, 255, 255, 161, 255, 255, 255, 255, 255, 255, 255, 233, 191, 191, 191, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 191, 3, 29, 2, 255, 145, 40, 4, 255, 243, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 40, 4, 255, 255, 39, 3, 255, 112, 32, 2, 255, 22, 8, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 59, 143, 87, 255, 240, 246, 242, 255, 255, 255, 255, 255, 248, 251, 249, 255, 85, 157, 109, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 85, 157, 109, 255, 248, 251, 249, 255, 255, 255, 255, 255, 239, 246, 242, 255, 59, 143, 87, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 78, 175, 159, 255, 84, 177, 162, 255, 84, 177, 162, 255, 78, 175, 159, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 177, 177, 177, 5, 245, 245, 245, 187, 244, 244, 244, 171, 183, 183, 183, 12, 59, 59, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 60, 60, 0, 183, 183, 183, 13, 245, 245, 245, 172, 244, 244, 244, 186, 176, 176, 176, 5, 0, 0, 0, 0, 0, 0, 0, 188, 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 0, 215, 77, 77, 77, 208, 68, 68, 68, 8, 39, 39, 39, 0, 77, 77, 77, 215, 168, 168, 168, 215, 84, 84, 84, 0, 153, 153, 153, 8, 169, 169, 169, 208, 255, 255, 255, 218, 128, 128, 128, 0, 255, 255, 255, 28, 255, 255, 255, 188, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 40, 64, 0, 57, 167, 255, 23, 237, 249, 255, 215, 255, 255, 255, 255, 255, 255, 255, 255, 155, 222, 255, 99, 44, 134, 191, 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, 64, 129, 191, 16, 87, 173, 255, 189, 89, 174, 255, 255, 89, 174, 255, 255, 89, 174, 255, 255, 89, 174, 255, 255, 89, 174, 255, 255, 85, 179, 240, 255, 57, 217, 137, 255, 51, 225, 115, 255, 76, 187, 217, 188, 64, 129, 191, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98, 97, 60, 0, 218, 219, 152, 252, 224, 227, 186, 255, 185, 185, 185, 255, 185, 185, 185, 255, 185, 185, 185, 255, 185, 185, 185, 255, 185, 185, 185, 255, 185, 185, 185, 255, 185, 185, 185, 255, 185, 185, 185, 255, 185, 185, 185, 255, 228, 231, 186, 255, 204, 203, 133, 178, 97, 96, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 5, 255, 255, 255, 238, 255, 255, 255, 162, 191, 191, 191, 9, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 91, 255, 255, 255, 242, 255, 255, 255, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 1, 128, 0, 29, 0, 191, 15, 38, 2, 255, 113, 39, 4, 255, 222, 40, 4, 255, 255, 40, 4, 255, 255, 38, 3, 255, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 36, 130, 68, 255, 86, 158, 110, 255, 45, 135, 75, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 45, 135, 75, 255, 86, 158, 110, 255, 36, 130, 68, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 0, 0, 0, 0, 181, 181, 181, 6, 240, 240, 240, 151, 246, 246, 246, 229, 242, 242, 242, 118, 244, 244, 244, 42, 183, 183, 183, 6, 183, 183, 183, 6, 245, 245, 245, 42, 243, 243, 243, 119, 246, 246, 246, 230, 239, 239, 239, 149, 180, 180, 180, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 188, 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 0, 215, 77, 77, 77, 208, 69, 69, 69, 8, 58, 58, 58, 0, 77, 77, 77, 215, 168, 168, 168, 215, 126, 126, 126, 0, 155, 155, 155, 8, 169, 169, 169, 208, 255, 255, 255, 218, 191, 191, 191, 0, 255, 255, 255, 28, 255, 255, 255, 188, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 195, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 128, 191, 4, 87, 172, 255, 107, 88, 173, 255, 224, 89, 174, 255, 255, 89, 174, 255, 255, 89, 174, 255, 255, 89, 174, 255, 255, 88, 174, 255, 223, 88, 171, 255, 106, 55, 123, 191, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98, 97, 60, 0, 218, 219, 152, 252, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 243, 247, 187, 255, 204, 203, 133, 178, 97, 96, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 66, 255, 255, 255, 111, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 34, 255, 255, 255, 121, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 64, 0, 20, 0, 191, 3, 39, 3, 255, 79, 39, 3, 255, 189, 34, 3, 255, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117, 117, 117, 0, 240, 240, 240, 48, 243, 243, 243, 150, 246, 246, 246, 221, 246, 246, 246, 251, 246, 246, 246, 250, 246, 246, 246, 220, 243, 243, 243, 150, 240, 240, 240, 47, 115, 115, 115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 144, 0, 0, 0, 230, 0, 0, 0, 230, 0, 0, 0, 198, 77, 77, 77, 162, 78, 78, 78, 230, 78, 78, 78, 230, 77, 77, 77, 180, 168, 168, 168, 180, 169, 169, 169, 230, 169, 169, 169, 230, 167, 167, 167, 162, 255, 255, 255, 199, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 143, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 195, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 43, 64, 0, 44, 86, 128, 0, 86, 171, 255, 41, 88, 173, 255, 76, 88, 173, 255, 76, 87, 172, 255, 40, 44, 86, 128, 0, 22, 42, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98, 97, 61, 0, 205, 203, 134, 220, 215, 215, 148, 235, 215, 215, 148, 235, 215, 215, 148, 235, 215, 215, 148, 235, 215, 215, 148, 235, 215, 215, 148, 235, 215, 215, 148, 235, 215, 215, 148, 235, 215, 215, 148, 235, 215, 215, 148, 235, 215, 215, 148, 235, 199, 196, 125, 155, 97, 95, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 7, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 2, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 1, 128, 0, 18, 0, 255, 10, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 17, 119, 51, 255, 136, 204, 238, 253, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 136, 204, 238, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 68, 170, 153, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 204, 102, 119, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 120, 120, 0, 123, 123, 123, 0, 123, 123, 123, 0, 123, 123, 123, 0, 123, 123, 123, 0, 120, 120, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 38, 38, 0, 39, 39, 39, 0, 39, 39, 39, 0, 38, 38, 38, 0, 83, 83, 83, 0, 84, 84, 84, 0, 84, 84, 84, 0, 83, 83, 83, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 195, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98, 97, 61, 0, 98, 97, 61, 0, 98, 97, 61, 0, 98, 97, 61, 0, 98, 97, 61, 0, 98, 97, 61, 0, 98, 97, 61, 0, 98, 97, 61, 0, 98, 97, 61, 0, 98, 97, 61, 0, 98, 97, 61, 0, 98, 97, 61, 0, 98, 96, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 55, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 77, 0, 0, 0, 65, 0, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 9, 60, 26, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 68, 102, 119, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 34, 85, 77, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 102, 51, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 195, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 52, 255, 255, 255, 116, 255, 255, 255, 116, 255, 255, 255, 116, 255, 255, 255, 116, 255, 255, 255, 116, 255, 255, 255, 116, 255, 255, 255, 116, 255, 255, 255, 116, 255, 255, 255, 116, 255, 255, 255, 116, 255, 255, 255, 116, 255, 255, 255, 116, 255, 255, 255, 68, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 0, 0, 0, 101, 0, 0, 0, 133, 0, 0, 0, 153, 0, 0, 0, 123, 0, 0, 0, 67, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 0, 0, 195, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 223, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 31, 191, 191, 191, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 138, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 132, 128, 128, 128, 0, 0, 0, 0, 0, 255, 255, 255, 54, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, 167, 191, 0, 252, 254, 255, 197, 255, 255, 255, 255, 255, 255, 255, 255, 217, 242, 255, 45, 16, 48, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 88, 255, 255, 255, 145, 255, 255, 255, 83, 255, 255, 255, 83, 255, 255, 255, 83, 255, 255, 255, 83, 255, 255, 255, 83, 255, 255, 255, 83, 255, 255, 255, 83, 255, 255, 255, 83, 255, 255, 255, 83, 255, 255, 255, 83, 255, 255, 255, 138, 255, 255, 255, 111, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133, 0, 0, 0, 253, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 207, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 151, 0, 0, 0, 255, 25, 25, 25, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 15, 15, 15, 255, 62, 62, 62, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 57, 57, 57, 255, 20, 20, 20, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 23, 23, 23, 255, 55, 55, 55, 255, 42, 42, 42, 255, 0, 0, 0, 255, 0, 0, 0, 209, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 125, 255, 255, 255, 199, 255, 255, 255, 50, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 128, 128, 128, 0, 0, 0, 0, 0, 255, 255, 255, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 46, 64, 0, 58, 185, 255, 44, 66, 192, 255, 188, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 202, 255, 243, 66, 192, 255, 137, 49, 142, 191, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 88, 255, 255, 255, 124, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 109, 255, 255, 255, 111, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 93, 0, 0, 0, 255, 50, 50, 50, 255, 169, 169, 169, 255, 209, 209, 209, 255, 230, 230, 230, 255, 195, 195, 195, 255, 111, 111, 111, 255, 2, 2, 2, 255, 0, 0, 0, 213, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 221, 0, 0, 0, 255, 207, 207, 207, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 50, 50, 50, 255, 208, 208, 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 190, 190, 255, 68, 68, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 75, 75, 75, 255, 183, 183, 183, 255, 247, 247, 247, 255, 17, 17, 17, 255, 0, 0, 0, 255, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 123, 255, 255, 255, 255, 255, 255, 255, 252, 255, 255, 255, 147, 191, 191, 191, 16, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 128, 128, 128, 0, 0, 0, 0, 0, 255, 255, 255, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 46, 64, 0, 54, 188, 255, 58, 67, 193, 255, 243, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 66, 191, 255, 194, 49, 142, 191, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 88, 255, 255, 255, 124, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 109, 255, 255, 255, 111, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 199, 13, 13, 13, 255, 237, 237, 237, 255, 255, 255, 255, 255, 237, 237, 237, 255, 224, 224, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 120, 120, 120, 255, 0, 0, 0, 255, 0, 0, 0, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 50, 50, 50, 255, 208, 208, 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 190, 190, 255, 68, 68, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 75, 75, 75, 255, 183, 183, 183, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 255, 255, 255, 93, 191, 191, 191, 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, 128, 128, 128, 0, 255, 255, 255, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 128, 128, 128, 0, 0, 0, 0, 0, 255, 255, 255, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, 141, 191, 9, 67, 193, 255, 226, 67, 193, 255, 255, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 66, 192, 255, 135, 17, 48, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 88, 255, 255, 255, 124, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 109, 255, 255, 255, 111, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 234, 59, 59, 59, 255, 255, 255, 255, 255, 217, 217, 217, 255, 13, 13, 13, 255, 2, 2, 2, 255, 163, 163, 163, 255, 255, 255, 255, 255, 186, 186, 186, 255, 0, 0, 0, 255, 0, 0, 0, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 50, 50, 50, 255, 208, 208, 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 190, 190, 255, 68, 68, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 75, 75, 75, 255, 183, 183, 183, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 118, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 255, 255, 255, 43, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 128, 128, 128, 0, 0, 0, 0, 0, 255, 255, 255, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 191, 255, 91, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 241, 45, 140, 191, 7, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 88, 255, 255, 255, 124, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 109, 255, 255, 255, 111, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 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, 252, 77, 77, 77, 255, 255, 255, 255, 255, 178, 178, 178, 255, 0, 0, 0, 255, 0, 0, 0, 255, 113, 113, 113, 255, 255, 255, 255, 255, 187, 187, 187, 255, 0, 0, 0, 255, 0, 0, 0, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 166, 166, 166, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 43, 43, 43, 255, 147, 147, 147, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 138, 138, 138, 255, 62, 62, 62, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 67, 67, 67, 255, 134, 134, 134, 255, 179, 179, 179, 255, 28, 28, 28, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 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, 251, 255, 255, 255, 139, 191, 191, 191, 12, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 128, 128, 128, 0, 0, 0, 0, 0, 255, 255, 255, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 0, 0, 0, 0, 0, 0, 0, 0, 32, 93, 128, 0, 65, 190, 255, 148, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 65, 192, 255, 49, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 88, 255, 255, 255, 124, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 109, 255, 255, 255, 111, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 226, 49, 49, 49, 255, 255, 255, 255, 255, 253, 253, 253, 255, 138, 138, 138, 255, 114, 114, 114, 255, 236, 236, 236, 255, 255, 255, 255, 255, 152, 152, 152, 255, 0, 0, 0, 255, 0, 0, 0, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 71, 71, 71, 255, 51, 51, 51, 255, 14, 14, 14, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 17, 17, 17, 255, 49, 49, 49, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 59, 59, 59, 255, 7, 7, 7, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 12, 12, 12, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 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, 255, 255, 255, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 128, 128, 128, 0, 0, 0, 0, 0, 255, 255, 255, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 0, 0, 0, 0, 0, 0, 0, 0, 32, 95, 128, 0, 65, 192, 255, 155, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 66, 192, 255, 58, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 88, 255, 255, 255, 124, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 109, 255, 255, 255, 111, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 189, 12, 12, 12, 255, 252, 252, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 90, 90, 90, 255, 0, 0, 0, 254, 0, 0, 0, 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, 235, 0, 0, 0, 255, 238, 238, 238, 255, 170, 170, 170, 255, 48, 48, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 55, 55, 255, 163, 163, 163, 255, 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, 198, 198, 255, 23, 23, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 255, 255, 255, 40, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 128, 128, 128, 0, 0, 0, 0, 0, 255, 255, 255, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 0, 0, 0, 0, 0, 0, 0, 0, 16, 48, 64, 0, 65, 192, 255, 117, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 253, 61, 181, 255, 21, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 88, 255, 255, 255, 124, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 109, 255, 255, 255, 111, 128, 128, 128, 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, 0, 0, 0, 26, 0, 0, 0, 26, 0, 0, 0, 148, 0, 0, 0, 255, 196, 196, 196, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 246, 246, 255, 17, 17, 17, 255, 0, 0, 0, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 170, 170, 170, 255, 48, 48, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 55, 55, 255, 163, 163, 163, 255, 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, 198, 198, 255, 23, 23, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 255, 255, 255, 72, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 128, 128, 128, 0, 0, 0, 0, 0, 255, 255, 255, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 189, 255, 31, 67, 193, 255, 249, 67, 193, 255, 255, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 65, 192, 255, 181, 31, 93, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 88, 255, 255, 255, 124, 191, 191, 191, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 191, 191, 191, 0, 255, 255, 255, 109, 255, 255, 255, 111, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 69, 0, 0, 0, 245, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 120, 120, 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 161, 161, 161, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 243, 0, 0, 0, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 170, 170, 170, 255, 48, 48, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 55, 55, 255, 163, 163, 163, 255, 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, 198, 198, 255, 23, 23, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 105, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 255, 255, 255, 109, 191, 191, 191, 4, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 128, 128, 128, 0, 0, 0, 0, 0, 255, 255, 255, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 47, 64, 0, 66, 192, 255, 121, 67, 193, 255, 255, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 67, 193, 255, 240, 58, 172, 255, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 88, 255, 255, 255, 158, 255, 255, 255, 133, 255, 255, 255, 133, 255, 255, 255, 133, 255, 255, 255, 133, 255, 255, 255, 133, 255, 255, 255, 133, 255, 255, 255, 133, 255, 255, 255, 133, 255, 255, 255, 133, 255, 255, 255, 133, 255, 255, 255, 155, 255, 255, 255, 111, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 169, 0, 0, 0, 255, 40, 40, 40, 255, 51, 51, 51, 255, 51, 51, 51, 255, 8, 8, 8, 255, 38, 38, 38, 255, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 56, 56, 56, 255, 2, 2, 2, 255, 25, 25, 25, 255, 26, 26, 26, 255, 23, 23, 23, 255, 0, 0, 0, 255, 0, 0, 0, 195, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 170, 170, 170, 255, 48, 48, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 55, 55, 255, 163, 163, 163, 255, 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, 198, 198, 255, 23, 23, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 103, 255, 255, 255, 255, 255, 255, 255, 251, 255, 255, 255, 145, 191, 191, 191, 18, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 128, 128, 128, 0, 0, 0, 0, 0, 255, 255, 255, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 95, 191, 1, 66, 192, 255, 120, 67, 193, 255, 248, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 219, 37, 180, 255, 50, 13, 42, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 88, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 111, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 234, 2, 2, 2, 255, 237, 237, 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 113, 113, 113, 255, 0, 0, 0, 255, 190, 190, 190, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 183, 183, 255, 0, 0, 0, 255, 101, 101, 101, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 250, 250, 255, 9, 9, 9, 255, 0, 0, 0, 245, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 119, 119, 119, 255, 85, 85, 85, 255, 24, 24, 24, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 28, 28, 28, 255, 81, 81, 81, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 99, 99, 99, 255, 11, 11, 11, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 20, 20, 20, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 100, 255, 255, 255, 182, 255, 255, 255, 41, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 138, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 132, 128, 128, 128, 0, 0, 0, 0, 0, 255, 255, 255, 54, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 48, 64, 0, 88, 199, 255, 28, 237, 249, 255, 217, 255, 255, 255, 255, 255, 255, 255, 255, 154, 221, 255, 107, 48, 143, 191, 5, 0, 43, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 88, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 111, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 255, 51, 51, 51, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 214, 214, 255, 1, 1, 1, 255, 90, 90, 90, 255, 255, 255, 255, 255, 254, 254, 254, 255, 53, 53, 53, 255, 7, 7, 7, 255, 225, 225, 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 60, 60, 255, 0, 0, 0, 255, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 119, 119, 119, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 15, 15, 15, 255, 95, 95, 95, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 85, 85, 85, 255, 24, 24, 24, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 28, 28, 28, 255, 81, 81, 81, 255, 128, 128, 128, 255, 23, 23, 23, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 11, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 195, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 72, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 166, 255, 255, 255, 95, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 115, 0, 0, 0, 255, 64, 64, 64, 255, 153, 153, 153, 255, 178, 178, 178, 255, 179, 179, 179, 255, 202, 202, 202, 255, 43, 43, 43, 255, 7, 7, 7, 255, 230, 230, 230, 255, 172, 172, 172, 255, 0, 0, 0, 255, 107, 107, 107, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 116, 116, 116, 255, 0, 0, 0, 255, 0, 0, 0, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 30, 30, 255, 190, 190, 190, 255, 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, 170, 170, 255, 48, 48, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 55, 55, 255, 163, 163, 163, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 195, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 183, 0, 0, 0, 255, 118, 118, 118, 255, 151, 151, 151, 255, 128, 128, 128, 255, 127, 127, 127, 255, 102, 102, 102, 255, 81, 81, 81, 255, 0, 0, 0, 255, 109, 109, 109, 255, 32, 32, 32, 255, 6, 6, 6, 255, 38, 38, 38, 255, 78, 78, 78, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 171, 171, 171, 255, 0, 0, 0, 255, 0, 0, 0, 163, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 30, 30, 255, 190, 190, 190, 255, 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, 170, 170, 255, 48, 48, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 55, 55, 255, 163, 163, 163, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 195, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 244, 7, 7, 7, 255, 246, 246, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 253, 253, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 255, 141, 141, 141, 255, 120, 120, 120, 255, 167, 167, 167, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 228, 228, 255, 0, 0, 0, 255, 0, 0, 0, 220, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 30, 30, 255, 190, 190, 190, 255, 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, 170, 170, 255, 48, 48, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 55, 55, 255, 163, 163, 163, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 10, 10, 0, 128, 11, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 195, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 0, 0, 255, 65, 65, 65, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 156, 156, 156, 255, 0, 0, 0, 255, 42, 42, 42, 255, 239, 239, 239, 255, 48, 48, 48, 255, 251, 251, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 29, 29, 29, 255, 0, 0, 0, 255, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 30, 30, 255, 190, 190, 190, 255, 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, 170, 170, 255, 48, 48, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 55, 55, 255, 163, 163, 163, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 2, 2, 0, 255, 20, 20, 179, 255, 21, 21, 143, 128, 10, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 119, 167, 191, 0, 254, 255, 255, 196, 255, 255, 255, 255, 255, 255, 255, 255, 221, 243, 255, 43, 16, 48, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 129, 0, 0, 0, 255, 132, 132, 132, 255, 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, 248, 255, 26, 26, 26, 255, 188, 188, 188, 255, 146, 146, 146, 255, 141, 141, 141, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 85, 85, 255, 0, 0, 0, 255, 0, 0, 0, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 95, 95, 95, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 12, 12, 12, 255, 76, 76, 76, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 68, 68, 68, 255, 19, 19, 19, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 102, 102, 102, 255, 22, 22, 22, 255, 65, 65, 65, 255, 102, 102, 102, 255, 16, 16, 16, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 5, 5, 0, 255, 21, 21, 84, 255, 22, 22, 255, 255, 22, 22, 253, 255, 19, 19, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 44, 64, 0, 53, 181, 255, 38, 66, 192, 255, 180, 211, 240, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 96, 202, 255, 238, 65, 192, 255, 128, 49, 142, 191, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 197, 0, 0, 0, 255, 200, 200, 200, 255, 255, 255, 255, 255, 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, 203, 255, 252, 252, 252, 255, 49, 49, 49, 255, 241, 241, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 141, 141, 141, 255, 0, 0, 0, 255, 0, 0, 0, 133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 143, 143, 143, 255, 117, 117, 117, 255, 14, 14, 14, 255, 153, 153, 153, 255, 153, 153, 153, 255, 153, 153, 153, 255, 148, 148, 148, 255, 152, 152, 152, 255, 153, 153, 153, 255, 153, 153, 153, 255, 48, 48, 48, 255, 83, 83, 83, 255, 153, 153, 153, 255, 153, 153, 153, 255, 153, 153, 153, 255, 153, 153, 153, 255, 153, 153, 153, 255, 153, 153, 153, 255, 134, 134, 134, 255, 0, 0, 0, 255, 152, 152, 152, 255, 153, 153, 153, 255, 153, 153, 153, 255, 153, 153, 153, 255, 153, 153, 153, 255, 153, 153, 153, 255, 24, 24, 24, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 12, 12, 8, 255, 21, 21, 223, 247, 112, 29, 255, 250, 76, 26, 255, 255, 21, 21, 188, 128, 10, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 48, 64, 0, 61, 189, 255, 53, 67, 193, 255, 240, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 65, 192, 255, 188, 49, 142, 191, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 250, 15, 15, 15, 255, 252, 252, 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, 228, 228, 228, 255, 57, 57, 57, 255, 94, 94, 94, 255, 208, 208, 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 197, 197, 255, 0, 0, 0, 255, 0, 0, 0, 188, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 195, 195, 195, 255, 23, 23, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 80, 80, 255, 138, 138, 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, 223, 223, 223, 255, 0, 0, 0, 255, 253, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 2, 2, 0, 255, 20, 20, 123, 254, 35, 23, 255, 242, 167, 33, 255, 242, 163, 33, 255, 255, 23, 22, 255, 255, 12, 12, 76, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 143, 191, 7, 66, 192, 255, 222, 67, 193, 255, 255, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 65, 192, 255, 130, 16, 48, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 76, 0, 0, 0, 255, 79, 79, 79, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 193, 193, 255, 77, 77, 77, 255, 70, 70, 70, 255, 183, 183, 183, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 247, 247, 255, 6, 6, 6, 255, 0, 0, 0, 242, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 195, 195, 195, 255, 23, 23, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 80, 80, 255, 138, 138, 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, 223, 223, 223, 255, 0, 0, 0, 255, 253, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 9, 9, 27, 255, 22, 22, 243, 244, 148, 32, 255, 250, 85, 28, 255, 247, 121, 31, 255, 248, 104, 28, 255, 255, 21, 21, 215, 191, 12, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 191, 255, 88, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 66, 192, 255, 239, 44, 140, 191, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 143, 0, 0, 0, 255, 146, 146, 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, 248, 248, 248, 255, 230, 230, 230, 255, 230, 230, 230, 255, 230, 230, 230, 255, 191, 191, 191, 255, 83, 83, 83, 255, 51, 51, 51, 255, 150, 150, 150, 255, 225, 225, 225, 255, 46, 46, 46, 255, 0, 0, 0, 255, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 195, 195, 195, 255, 23, 23, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 80, 80, 255, 138, 138, 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, 223, 223, 223, 255, 0, 0, 0, 255, 253, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 9, 9, 0, 255, 20, 20, 162, 252, 55, 24, 255, 236, 249, 40, 255, 250, 85, 28, 255, 247, 121, 31, 255, 237, 227, 39, 255, 254, 30, 23, 255, 255, 21, 21, 111, 64, 5, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 95, 128, 0, 66, 191, 255, 146, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 211, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 203, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 64, 191, 255, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 209, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 195, 195, 195, 255, 23, 23, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 80, 80, 255, 138, 138, 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, 223, 223, 223, 255, 0, 0, 0, 255, 253, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 19, 19, 56, 255, 22, 22, 254, 241, 184, 35, 255, 235, 255, 41, 255, 250, 85, 28, 255, 247, 121, 31, 255, 235, 255, 41, 255, 245, 138, 31, 255, 255, 22, 22, 239, 191, 13, 13, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33, 95, 128, 0, 67, 192, 255, 157, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 191, 234, 255, 255, 255, 255, 255, 255, 251, 254, 255, 255, 81, 198, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 66, 192, 255, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 158, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 242, 0, 0, 0, 230, 0, 0, 0, 230, 0, 0, 0, 230, 0, 0, 0, 230, 0, 0, 0, 230, 0, 0, 0, 230, 0, 0, 0, 230, 0, 0, 0, 230, 0, 0, 0, 230, 0, 0, 0, 230, 0, 0, 0, 230, 0, 0, 0, 230, 0, 0, 0, 230, 0, 0, 0, 205, 0, 0, 0, 204, 0, 0, 0, 204, 0, 0, 0, 204, 0, 0, 0, 204, 0, 0, 0, 192, 0, 0, 0, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 48, 48, 48, 255, 39, 39, 39, 255, 5, 5, 5, 255, 51, 51, 51, 255, 51, 51, 51, 255, 51, 51, 51, 255, 51, 51, 51, 255, 51, 51, 51, 255, 51, 51, 51, 255, 51, 51, 51, 255, 16, 16, 16, 255, 28, 28, 28, 255, 51, 51, 51, 255, 51, 51, 51, 255, 51, 51, 51, 255, 51, 51, 51, 255, 51, 51, 51, 255, 51, 51, 51, 255, 45, 45, 45, 255, 0, 0, 0, 255, 51, 51, 51, 255, 51, 51, 51, 255, 51, 51, 51, 255, 51, 51, 51, 255, 51, 51, 51, 255, 51, 51, 51, 255, 8, 8, 8, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 2, 2, 2, 255, 21, 21, 203, 249, 88, 27, 255, 235, 255, 41, 255, 235, 255, 41, 255, 249, 95, 29, 255, 245, 132, 31, 255, 235, 255, 41, 255, 236, 246, 40, 255, 253, 49, 24, 255, 255, 16, 16, 152, 128, 5, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 48, 64, 0, 65, 192, 255, 120, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 94, 202, 255, 255, 181, 230, 255, 255, 132, 214, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 253, 63, 191, 255, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 190, 190, 190, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 44, 44, 44, 255, 132, 132, 132, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 156, 156, 156, 255, 18, 18, 18, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 204, 204, 204, 255, 66, 66, 66, 255, 110, 110, 110, 255, 204, 204, 204, 255, 32, 32, 32, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 4, 4, 0, 255, 19, 19, 100, 255, 27, 22, 255, 238, 218, 38, 255, 235, 255, 41, 255, 235, 255, 41, 255, 237, 234, 39, 255, 236, 247, 40, 255, 235, 255, 41, 255, 235, 255, 41, 255, 242, 174, 34, 255, 255, 22, 22, 252, 255, 19, 19, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 187, 255, 34, 67, 193, 255, 250, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 65, 192, 255, 185, 32, 96, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 55, 55, 255, 165, 165, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 195, 195, 255, 23, 23, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 83, 83, 255, 138, 138, 138, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 13, 13, 16, 255, 22, 22, 234, 246, 127, 30, 255, 235, 255, 41, 255, 235, 255, 41, 255, 235, 255, 41, 255, 246, 130, 31, 255, 242, 171, 35, 255, 235, 255, 41, 255, 235, 255, 41, 255, 235, 255, 41, 255, 250, 77, 26, 255, 255, 21, 21, 192, 191, 2, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 47, 64, 0, 66, 192, 255, 128, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 242, 64, 191, 255, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 0, 0, 0, 255, 238, 238, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 55, 55, 255, 165, 165, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 195, 195, 255, 23, 23, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 83, 83, 255, 138, 138, 138, 255, 255, 255, 255, 255, 40, 40, 40, 255, 0, 0, 0, 255, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 5, 5, 0, 255, 15, 15, 142, 255, 24, 22, 255, 244, 149, 32, 255, 243, 162, 33, 255, 243, 162, 33, 255, 243, 162, 33, 255, 244, 154, 32, 255, 243, 162, 33, 255, 243, 162, 33, 255, 243, 162, 33, 255, 243, 162, 33, 255, 247, 119, 29, 255, 255, 22, 22, 255, 255, 21, 21, 84, 64, 5, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 128, 191, 2, 66, 192, 255, 128, 67, 193, 255, 251, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 255, 67, 193, 255, 224, 51, 186, 255, 56, 15, 47, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 227, 0, 0, 0, 255, 221, 221, 221, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 55, 55, 255, 165, 165, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 195, 195, 255, 23, 23, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 83, 83, 255, 138, 138, 138, 255, 254, 254, 254, 255, 25, 25, 25, 255, 0, 0, 0, 255, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 10, 10, 0, 255, 20, 20, 158, 255, 22, 22, 230, 255, 22, 22, 230, 255, 22, 22, 230, 255, 22, 22, 230, 255, 22, 22, 230, 255, 22, 22, 230, 255, 22, 22, 230, 255, 22, 22, 230, 255, 22, 22, 230, 255, 22, 22, 230, 255, 22, 22, 230, 255, 22, 22, 230, 255, 15, 15, 114, 128, 4, 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, 15, 47, 64, 0, 60, 187, 255, 34, 63, 190, 255, 120, 66, 191, 255, 155, 65, 191, 255, 149, 65, 191, 255, 91, 46, 140, 191, 8, 9, 46, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 170, 0, 0, 0, 255, 50, 50, 50, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 28, 28, 28, 255, 83, 83, 83, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 98, 98, 98, 255, 11, 11, 11, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 128, 128, 128, 255, 41, 41, 41, 255, 69, 69, 69, 255, 79, 79, 79, 255, 0, 0, 0, 255, 0, 0, 0, 227, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 10, 10, 0, 128, 11, 11, 0, 128, 11, 11, 0, 128, 11, 11, 0, 128, 11, 11, 0, 128, 11, 11, 0, 128, 11, 11, 0, 128, 11, 11, 0, 128, 11, 11, 0, 128, 11, 11, 0, 128, 11, 11, 0, 128, 11, 11, 0, 128, 11, 11, 0, 128, 5, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 46, 64, 0, 33, 95, 128, 0, 31, 94, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 226, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 244, 0, 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 99, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 0, 111, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 191, 20, 20, 5, 128, 75, 75, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 77, 77, 0, 191, 17, 17, 5, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 4, 191, 191, 191, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 7, 255, 255, 255, 83, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 173, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 124, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 172, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 131, 255, 243, 243, 179, 255, 45, 45, 222, 255, 123, 123, 195, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 133, 133, 192, 255, 38, 38, 225, 255, 240, 240, 179, 255, 255, 255, 138, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 4, 255, 255, 255, 167, 255, 255, 255, 186, 191, 191, 191, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 95, 255, 255, 255, 255, 255, 255, 255, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 193, 255, 255, 255, 224, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 192, 255, 255, 255, 255, 255, 255, 255, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 178, 255, 255, 255, 247, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 233, 255, 255, 255, 245, 128, 128, 128, 0, 128, 128, 128, 0, 255, 244, 244, 188, 255, 62, 62, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 126, 126, 232, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 135, 135, 229, 255, 1, 1, 255, 255, 0, 0, 255, 255, 56, 56, 255, 255, 241, 241, 198, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 3, 255, 255, 255, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 191, 191, 191, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 149, 255, 255, 255, 164, 191, 191, 191, 1, 64, 64, 64, 0, 128, 128, 128, 0, 191, 191, 191, 10, 255, 255, 255, 126, 255, 255, 255, 255, 255, 255, 255, 24, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 191, 191, 191, 19, 255, 255, 255, 160, 255, 255, 255, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 193, 255, 255, 255, 178, 191, 191, 191, 0, 128, 128, 128, 0, 128, 128, 128, 0, 51, 255, 32, 26, 26, 255, 0, 204, 26, 255, 0, 204, 53, 255, 32, 90, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 98, 255, 255, 255, 255, 255, 255, 255, 18, 64, 64, 64, 0, 255, 255, 255, 66, 255, 255, 255, 102, 255, 255, 255, 102, 255, 255, 255, 209, 255, 255, 255, 213, 191, 191, 191, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 191, 191, 191, 0, 255, 255, 255, 145, 255, 255, 255, 245, 128, 128, 128, 0, 191, 22, 22, 9, 255, 53, 53, 224, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 21, 21, 110, 191, 128, 128, 0, 191, 128, 128, 0, 255, 21, 21, 102, 255, 0, 0, 254, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 48, 48, 230, 191, 21, 21, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 3, 255, 255, 255, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 191, 191, 191, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 93, 255, 255, 255, 255, 255, 255, 255, 122, 255, 255, 255, 100, 255, 255, 255, 207, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 255, 255, 255, 130, 255, 255, 255, 31, 255, 255, 255, 191, 255, 255, 255, 241, 255, 255, 255, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 193, 255, 255, 255, 178, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 255, 0, 33, 26, 255, 0, 255, 26, 255, 0, 255, 24, 255, 0, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 98, 255, 255, 255, 255, 255, 255, 255, 18, 128, 128, 128, 0, 255, 255, 255, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 145, 255, 255, 255, 245, 128, 128, 128, 0, 191, 29, 29, 3, 255, 80, 80, 215, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 108, 255, 0, 0, 99, 255, 0, 0, 254, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 73, 73, 223, 191, 28, 28, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 3, 255, 255, 255, 164, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 191, 191, 191, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 163, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 255, 255, 255, 112, 255, 255, 255, 76, 255, 255, 255, 72, 255, 255, 255, 101, 255, 255, 255, 164, 255, 255, 255, 249, 255, 255, 255, 251, 255, 255, 255, 253, 255, 255, 255, 74, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 193, 255, 255, 255, 178, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 255, 0, 33, 26, 255, 0, 255, 26, 255, 0, 255, 24, 255, 0, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 98, 255, 255, 255, 255, 255, 255, 255, 18, 128, 128, 128, 0, 255, 255, 255, 165, 255, 255, 255, 231, 255, 255, 255, 51, 255, 255, 255, 193, 255, 255, 255, 213, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 145, 255, 255, 255, 245, 128, 128, 128, 0, 128, 128, 128, 0, 255, 252, 252, 188, 255, 81, 81, 247, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 254, 255, 0, 0, 253, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 73, 73, 248, 255, 250, 250, 198, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 3, 255, 255, 255, 164, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 191, 191, 191, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 42, 255, 255, 255, 238, 255, 255, 255, 226, 255, 255, 255, 56, 128, 128, 128, 0, 191, 191, 191, 31, 255, 255, 255, 159, 255, 255, 255, 172, 255, 255, 255, 66, 191, 191, 191, 0, 255, 255, 255, 24, 255, 255, 255, 187, 255, 255, 255, 254, 255, 255, 255, 96, 64, 64, 64, 0, 191, 191, 191, 3, 255, 255, 255, 15, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 6, 191, 191, 191, 10, 128, 128, 128, 0, 255, 255, 255, 193, 255, 255, 255, 178, 53, 255, 32, 52, 25, 255, 0, 77, 25, 255, 0, 77, 24, 255, 0, 99, 26, 255, 0, 255, 26, 255, 0, 255, 25, 255, 0, 155, 25, 255, 0, 77, 25, 255, 0, 77, 25, 255, 0, 76, 226, 255, 223, 98, 255, 255, 255, 255, 255, 255, 255, 18, 128, 128, 128, 0, 255, 255, 255, 165, 255, 255, 255, 225, 255, 255, 255, 0, 255, 255, 255, 178, 255, 255, 255, 213, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 145, 255, 255, 255, 245, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 188, 255, 246, 246, 180, 255, 0, 0, 170, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 178, 255, 239, 239, 172, 255, 255, 255, 198, 128, 128, 128, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 112, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 131, 191, 191, 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 1, 255, 255, 255, 195, 255, 255, 255, 226, 191, 191, 191, 23, 64, 64, 64, 0, 191, 191, 191, 0, 255, 255, 255, 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 255, 255, 255, 33, 0, 0, 0, 0, 191, 191, 191, 4, 255, 255, 255, 176, 255, 255, 255, 240, 255, 255, 255, 26, 255, 255, 255, 32, 255, 255, 255, 254, 255, 255, 255, 92, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 26, 255, 255, 255, 230, 255, 255, 255, 111, 128, 128, 128, 0, 255, 255, 255, 193, 255, 255, 255, 178, 26, 255, 0, 173, 26, 255, 0, 255, 26, 255, 0, 255, 26, 255, 0, 255, 26, 255, 0, 255, 26, 255, 0, 255, 26, 255, 0, 255, 26, 255, 0, 255, 26, 255, 0, 255, 26, 255, 0, 253, 198, 255, 191, 98, 255, 255, 255, 255, 255, 255, 255, 18, 128, 128, 128, 0, 255, 255, 255, 165, 255, 255, 255, 225, 255, 255, 255, 0, 255, 255, 255, 178, 255, 255, 255, 213, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 145, 255, 255, 255, 245, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 188, 255, 255, 255, 178, 255, 85, 85, 5, 255, 0, 0, 173, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 181, 255, 85, 85, 7, 255, 255, 255, 168, 255, 255, 255, 198, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 191, 191, 191, 0, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 13, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 45, 255, 255, 255, 255, 255, 255, 255, 111, 128, 128, 128, 0, 0, 0, 0, 0, 255, 255, 255, 20, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 89, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 41, 255, 255, 255, 255, 255, 255, 255, 115, 191, 191, 191, 1, 255, 255, 255, 160, 255, 255, 255, 250, 255, 255, 255, 78, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 15, 255, 255, 255, 198, 255, 255, 255, 229, 191, 191, 191, 24, 128, 128, 128, 0, 255, 255, 255, 193, 255, 255, 255, 178, 26, 255, 0, 173, 26, 255, 0, 255, 26, 255, 0, 255, 26, 255, 0, 255, 26, 255, 0, 255, 26, 255, 0, 255, 26, 255, 0, 255, 26, 255, 0, 255, 26, 255, 0, 255, 26, 255, 0, 253, 198, 255, 191, 98, 255, 255, 255, 255, 255, 255, 255, 18, 128, 128, 128, 0, 255, 255, 255, 165, 255, 255, 255, 225, 255, 255, 255, 0, 255, 255, 255, 178, 255, 255, 255, 213, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 145, 255, 255, 255, 245, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 188, 255, 255, 255, 178, 191, 128, 128, 0, 255, 0, 0, 94, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 104, 191, 128, 128, 0, 255, 255, 255, 168, 255, 255, 255, 198, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 191, 191, 191, 0, 255, 255, 255, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 5, 255, 255, 255, 209, 255, 255, 255, 215, 191, 191, 191, 13, 0, 0, 0, 0, 191, 191, 191, 1, 255, 255, 255, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 255, 255, 255, 41, 0, 0, 0, 0, 191, 191, 191, 1, 255, 255, 255, 158, 255, 255, 255, 247, 255, 255, 255, 36, 0, 0, 0, 0, 191, 191, 191, 5, 255, 255, 255, 184, 255, 255, 255, 253, 255, 255, 255, 137, 191, 191, 191, 18, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 191, 191, 191, 0, 255, 255, 255, 66, 255, 255, 255, 219, 255, 255, 255, 251, 255, 255, 255, 61, 64, 64, 64, 0, 128, 128, 128, 0, 255, 255, 255, 193, 255, 255, 255, 178, 52, 255, 32, 35, 25, 255, 0, 51, 25, 255, 0, 51, 24, 255, 0, 77, 26, 255, 0, 255, 26, 255, 0, 255, 25, 255, 0, 141, 25, 255, 0, 51, 25, 255, 0, 51, 25, 255, 0, 51, 226, 255, 223, 98, 255, 255, 255, 255, 255, 255, 255, 18, 128, 128, 128, 0, 255, 255, 255, 165, 255, 255, 255, 225, 255, 255, 255, 0, 255, 255, 255, 178, 255, 255, 255, 213, 191, 191, 191, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 191, 191, 191, 0, 255, 255, 255, 145, 255, 255, 255, 245, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 188, 255, 255, 255, 178, 255, 21, 21, 86, 255, 0, 0, 252, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 253, 255, 21, 21, 95, 255, 255, 255, 168, 255, 255, 255, 198, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 95, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 143, 191, 191, 191, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 55, 255, 255, 255, 247, 255, 255, 255, 211, 255, 255, 255, 35, 191, 191, 191, 0, 255, 255, 255, 45, 255, 255, 255, 183, 255, 255, 255, 197, 255, 255, 255, 87, 128, 128, 128, 0, 191, 191, 191, 11, 255, 255, 255, 165, 255, 255, 255, 255, 255, 255, 255, 116, 64, 64, 64, 0, 0, 0, 0, 0, 191, 191, 191, 10, 255, 255, 255, 205, 255, 255, 255, 237, 255, 255, 255, 252, 255, 255, 255, 249, 255, 255, 255, 186, 255, 255, 255, 152, 255, 255, 255, 142, 255, 255, 255, 168, 255, 255, 255, 220, 255, 255, 255, 255, 255, 255, 255, 222, 255, 255, 255, 252, 255, 255, 255, 149, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 193, 255, 255, 255, 178, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 255, 0, 33, 26, 255, 0, 255, 26, 255, 0, 255, 24, 255, 0, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 98, 255, 255, 255, 255, 255, 255, 255, 18, 128, 128, 128, 0, 255, 255, 255, 165, 255, 255, 255, 225, 255, 255, 255, 0, 255, 255, 255, 178, 255, 255, 255, 238, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 211, 255, 255, 255, 245, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 188, 255, 157, 157, 221, 255, 0, 0, 251, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 253, 255, 145, 145, 220, 255, 255, 255, 198, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 1, 255, 255, 255, 145, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 191, 191, 191, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 54, 255, 255, 255, 230, 255, 255, 255, 251, 255, 255, 255, 169, 255, 255, 255, 87, 255, 255, 255, 52, 255, 255, 255, 41, 255, 255, 255, 77, 255, 255, 255, 140, 255, 255, 255, 238, 255, 255, 255, 250, 255, 255, 255, 103, 64, 64, 64, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 149, 255, 255, 255, 244, 255, 255, 255, 47, 255, 255, 255, 29, 255, 255, 255, 126, 255, 255, 255, 184, 255, 255, 255, 225, 255, 255, 255, 255, 255, 255, 255, 196, 255, 255, 255, 163, 255, 255, 255, 74, 191, 191, 191, 3, 255, 255, 255, 102, 255, 255, 255, 255, 255, 255, 255, 66, 128, 128, 128, 0, 255, 255, 255, 193, 255, 255, 255, 178, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 255, 0, 33, 26, 255, 0, 255, 26, 255, 0, 255, 24, 255, 0, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 98, 255, 255, 255, 255, 255, 255, 255, 18, 128, 128, 128, 0, 255, 255, 255, 165, 255, 255, 255, 225, 255, 255, 255, 0, 255, 255, 255, 160, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 251, 255, 255, 255, 244, 255, 255, 255, 230, 255, 255, 255, 221, 128, 128, 128, 0, 128, 86, 86, 0, 255, 167, 167, 193, 255, 5, 5, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 189, 255, 0, 0, 182, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 3, 3, 255, 255, 160, 160, 204, 128, 85, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 1, 255, 255, 255, 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, 195, 191, 191, 191, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 191, 191, 191, 21, 255, 255, 255, 125, 255, 255, 255, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 255, 255, 255, 155, 255, 255, 255, 44, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 83, 255, 255, 255, 63, 64, 64, 64, 0, 0, 0, 0, 0, 64, 64, 64, 0, 128, 128, 128, 0, 255, 255, 255, 92, 255, 255, 255, 255, 255, 255, 255, 10, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 255, 255, 255, 53, 191, 191, 191, 21, 128, 128, 128, 0, 255, 255, 255, 193, 255, 255, 255, 178, 191, 191, 191, 0, 128, 128, 128, 0, 128, 128, 128, 0, 51, 255, 32, 23, 26, 255, 0, 179, 26, 255, 0, 179, 53, 255, 32, 79, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 255, 255, 255, 98, 255, 255, 255, 255, 255, 255, 255, 18, 128, 128, 128, 0, 255, 255, 255, 165, 255, 255, 255, 225, 191, 191, 191, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 228, 255, 255, 255, 160, 191, 191, 191, 0, 128, 128, 128, 0, 0, 0, 0, 0, 255, 0, 0, 12, 255, 11, 11, 243, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 192, 191, 0, 0, 11, 191, 0, 0, 8, 255, 0, 0, 185, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 10, 10, 248, 255, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 1, 255, 255, 255, 147, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 191, 191, 191, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 191, 191, 191, 2, 255, 255, 255, 34, 255, 255, 255, 67, 255, 255, 255, 74, 255, 255, 255, 41, 191, 191, 191, 9, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 44, 255, 255, 255, 200, 191, 191, 191, 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, 128, 128, 128, 0, 255, 255, 255, 193, 255, 255, 255, 232, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 179, 255, 255, 255, 208, 255, 255, 255, 255, 255, 255, 255, 18, 128, 128, 128, 0, 255, 255, 255, 165, 255, 255, 255, 243, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 153, 255, 255, 255, 244, 255, 255, 255, 160, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 93, 93, 0, 255, 198, 198, 189, 255, 15, 15, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 53, 53, 239, 255, 149, 149, 114, 255, 255, 255, 102, 255, 255, 255, 102, 255, 149, 149, 111, 255, 58, 58, 236, 255, 0, 0, 255, 255, 0, 0, 255, 255, 12, 12, 255, 255, 190, 190, 200, 128, 92, 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 1, 255, 255, 255, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 191, 191, 191, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 64, 0, 191, 191, 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 154, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 204, 255, 255, 255, 14, 128, 128, 128, 0, 255, 255, 255, 149, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 230, 255, 255, 255, 144, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 188, 255, 199, 199, 255, 255, 14, 14, 255, 255, 58, 58, 255, 255, 242, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 245, 255, 255, 65, 65, 255, 255, 11, 11, 255, 255, 192, 192, 255, 255, 255, 255, 198, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 255, 255, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 1, 255, 255, 255, 148, 255, 255, 255, 197, 191, 191, 191, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 94, 94, 0, 255, 0, 0, 52, 191, 25, 25, 14, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 191, 27, 27, 11, 255, 0, 0, 55, 128, 93, 93, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 128, 128, 128, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 1, 191, 191, 191, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 2, 101, 0, 0, 0, 71, 0, 0, 0, 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, 2, 2, 2, 92, 3, 3, 3, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 5, 178, 3, 0, 107, 254, 2, 0, 84, 255, 0, 0, 2, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 8, 188, 151, 151, 151, 254, 37, 37, 37, 225, 0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 27, 29, 29, 29, 220, 25, 25, 25, 213, 1, 1, 1, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 134, 3, 0, 107, 254, 5, 0, 173, 255, 5, 0, 173, 255, 2, 0, 72, 255, 0, 0, 0, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 176, 251, 251, 251, 255, 207, 207, 207, 254, 9, 9, 9, 180, 0, 0, 0, 24, 27, 27, 27, 215, 220, 220, 220, 255, 185, 185, 185, 255, 2, 2, 2, 118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 90, 2, 0, 76, 254, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 170, 255, 1, 0, 61, 253, 0, 0, 0, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145, 223, 223, 223, 255, 255, 255, 255, 255, 152, 152, 152, 255, 23, 23, 23, 236, 216, 216, 216, 255, 255, 255, 255, 255, 124, 124, 124, 254, 0, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 138, 71, 71, 71, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 69, 69, 69, 255, 61, 61, 61, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 77, 77, 77, 255, 3, 3, 3, 169, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 1, 0, 47, 244, 5, 0, 171, 255, 5, 0, 173, 255, 5, 0, 158, 255, 1, 0, 42, 242, 0, 0, 1, 86, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 94, 0, 0, 0, 80, 0, 0, 0, 77, 1, 1, 1, 160, 190, 190, 190, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 252, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 62, 62, 62, 240, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 155, 235, 235, 235, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 213, 213, 255, 62, 62, 62, 239, 4, 4, 4, 177, 0, 0, 0, 165, 39, 39, 39, 227, 176, 176, 176, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 8, 8, 8, 185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 1, 0, 25, 227, 5, 0, 162, 255, 5, 0, 173, 255, 4, 0, 136, 254, 1, 0, 19, 219, 0, 0, 0, 44, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 71, 105, 105, 105, 254, 157, 157, 157, 255, 153, 153, 153, 255, 149, 149, 149, 250, 238, 238, 238, 255, 252, 252, 252, 255, 190, 190, 190, 255, 196, 196, 196, 255, 254, 254, 254, 255, 255, 255, 255, 255, 22, 22, 22, 236, 0, 0, 0, 161, 0, 0, 0, 136, 6, 6, 6, 114, 0, 0, 0, 16, 0, 0, 0, 155, 235, 235, 235, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 217, 217, 255, 10, 10, 10, 196, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 1, 1, 1, 150, 160, 160, 160, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 8, 8, 8, 185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 18, 18, 18, 224, 28, 27, 46, 255, 4, 1, 130, 255, 3, 0, 106, 254, 0, 0, 5, 180, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 116, 124, 124, 124, 255, 252, 252, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 73, 73, 73, 244, 0, 0, 0, 122, 1, 1, 1, 133, 101, 101, 101, 251, 255, 255, 255, 255, 255, 255, 255, 255, 237, 237, 237, 255, 212, 212, 212, 255, 131, 131, 131, 255, 2, 2, 2, 93, 0, 0, 0, 155, 235, 235, 235, 255, 255, 255, 255, 255, 255, 255, 255, 255, 72, 72, 72, 244, 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 19, 19, 19, 204, 244, 244, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 8, 8, 8, 185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 7, 7, 7, 198, 148, 148, 148, 255, 177, 177, 177, 255, 8, 7, 18, 254, 0, 0, 0, 130, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 97, 46, 46, 46, 233, 197, 197, 197, 254, 255, 255, 255, 255, 218, 218, 218, 255, 0, 0, 0, 145, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 171, 243, 243, 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 234, 234, 255, 107, 107, 107, 254, 3, 3, 3, 110, 0, 0, 0, 155, 235, 235, 235, 255, 255, 255, 255, 255, 251, 251, 251, 255, 9, 9, 9, 185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 123, 198, 198, 198, 255, 255, 255, 255, 255, 255, 255, 255, 255, 8, 8, 8, 185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, 162, 12, 12, 12, 239, 14, 14, 14, 255, 45, 45, 45, 255, 170, 170, 170, 255, 49, 49, 49, 253, 1, 1, 1, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 3, 3, 3, 220, 231, 231, 231, 255, 235, 235, 235, 255, 5, 5, 5, 182, 0, 0, 0, 2, 0, 0, 0, 6, 18, 18, 18, 206, 250, 250, 250, 255, 228, 228, 228, 255, 101, 101, 101, 254, 8, 8, 8, 181, 1, 1, 1, 69, 1, 1, 1, 0, 0, 0, 0, 155, 235, 235, 235, 255, 255, 255, 255, 255, 244, 244, 244, 255, 1, 1, 1, 169, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 105, 179, 179, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 8, 8, 8, 185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 53, 25, 0, 0, 239, 77, 0, 0, 255, 32, 11, 11, 255, 47, 47, 47, 255, 35, 35, 35, 255, 8, 8, 8, 237, 0, 0, 0, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 134, 134, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 163, 163, 163, 254, 33, 33, 33, 218, 39, 39, 39, 224, 182, 182, 182, 254, 255, 255, 255, 255, 175, 175, 175, 254, 0, 0, 0, 143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 155, 235, 235, 235, 255, 255, 255, 255, 255, 255, 255, 255, 255, 37, 37, 37, 221, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 161, 229, 229, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 8, 8, 8, 185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 20, 0, 0, 207, 235, 0, 0, 255, 255, 0, 0, 255, 239, 0, 0, 255, 50, 4, 4, 255, 44, 44, 44, 255, 0, 0, 0, 134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 1, 1, 73, 92, 92, 92, 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, 75, 75, 75, 247, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 155, 235, 235, 235, 255, 255, 255, 255, 255, 255, 255, 255, 255, 161, 161, 161, 254, 0, 0, 0, 124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 63, 96, 96, 96, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 8, 8, 8, 185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 87, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 178, 0, 0, 255, 8, 8, 8, 254, 0, 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 1, 1, 164, 208, 208, 208, 255, 221, 221, 221, 255, 127, 127, 127, 254, 42, 42, 42, 245, 201, 201, 201, 255, 255, 255, 255, 255, 252, 252, 252, 255, 119, 119, 119, 254, 213, 213, 213, 255, 255, 255, 255, 255, 226, 226, 226, 255, 14, 14, 14, 193, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 155, 235, 235, 235, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 128, 128, 128, 255, 3, 3, 3, 169, 1, 1, 1, 81, 0, 0, 0, 69, 2, 2, 2, 137, 79, 79, 79, 248, 242, 242, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 8, 8, 8, 185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74, 121, 0, 0, 255, 255, 0, 0, 255, 226, 0, 0, 255, 204, 0, 0, 255, 159, 0, 0, 255, 1, 0, 0, 189, 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, 26, 18, 18, 18, 213, 0, 0, 0, 156, 0, 0, 0, 63, 0, 0, 0, 66, 138, 138, 138, 253, 255, 255, 255, 255, 189, 189, 189, 255, 1, 1, 1, 148, 3, 3, 3, 160, 92, 92, 92, 252, 186, 186, 186, 255, 21, 21, 21, 210, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 155, 165, 165, 165, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 141, 141, 141, 255, 76, 76, 76, 254, 64, 64, 64, 253, 121, 121, 121, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 179, 179, 179, 255, 5, 5, 5, 186, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97, 128, 0, 0, 255, 84, 0, 0, 254, 0, 0, 0, 178, 0, 0, 0, 128, 1, 0, 0, 115, 0, 0, 0, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 90, 90, 90, 254, 255, 255, 255, 255, 104, 104, 104, 254, 0, 0, 0, 36, 0, 0, 0, 0, 0, 0, 0, 40, 1, 1, 1, 142, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 49, 11, 11, 11, 107, 11, 11, 11, 107, 11, 11, 11, 107, 11, 11, 11, 107, 11, 11, 11, 107, 11, 11, 11, 107, 11, 11, 11, 107, 11, 11, 11, 107, 11, 11, 11, 107, 11, 11, 11, 107, 11, 11, 11, 107, 11, 11, 11, 107, 11, 11, 11, 107, 11, 11, 11, 107, 5, 5, 5, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 112, 9, 0, 0, 251, 1, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 1, 1, 0, 31, 31, 31, 221, 176, 176, 176, 255, 22, 22, 22, 205, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 81, 1, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 1, 1, 1, 101, 3, 3, 3, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 167, 0, 0, 0, 221, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 0, 0, 0, 225, 0, 0, 0, 174, 0, 0, 27, 70, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, 0, 0, 0, 166, 1, 1, 1, 220, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 226, 0, 0, 0, 174, 0, 0, 0, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 0, 0, 0, 165, 0, 0, 0, 218, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 0, 0, 0, 226, 0, 0, 0, 175, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 163, 1, 1, 1, 218, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 228, 0, 0, 0, 176, 0, 0, 0, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, 0, 162, 0, 0, 0, 217, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 0, 0, 0, 228, 0, 0, 0, 177, 0, 0, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, 160, 1, 1, 1, 216, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 229, 0, 0, 0, 178, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 0, 0, 0, 158, 0, 0, 0, 215, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 0, 0, 0, 230, 0, 0, 0, 179, 0, 0, 0, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33, 0, 0, 0, 157, 1, 1, 1, 214, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 231, 0, 0, 0, 180, 0, 0, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 104, 2, 2, 2, 248, 52, 52, 52, 253, 85, 85, 85, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 33, 31, 112, 254, 2, 0, 82, 255, 0, 0, 8, 255, 0, 0, 22, 136, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 101, 3, 3, 3, 247, 92, 92, 92, 253, 153, 153, 153, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 128, 127, 166, 253, 19, 15, 160, 255, 7, 4, 132, 255, 5, 4, 26, 252, 0, 0, 0, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97, 2, 2, 2, 246, 50, 50, 50, 253, 84, 84, 84, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 88, 88, 88, 253, 58, 58, 58, 253, 5, 5, 5, 252, 0, 0, 0, 130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94, 3, 3, 3, 246, 89, 89, 89, 253, 151, 151, 151, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 159, 159, 159, 253, 107, 107, 107, 253, 10, 10, 10, 253, 0, 0, 0, 134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90, 1, 1, 1, 244, 48, 48, 48, 253, 83, 83, 83, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 88, 88, 88, 253, 60, 60, 60, 253, 6, 6, 6, 253, 0, 0, 0, 139, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 2, 2, 2, 244, 85, 85, 85, 253, 149, 149, 149, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 161, 161, 161, 253, 110, 110, 110, 253, 11, 11, 11, 254, 0, 0, 0, 143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82, 1, 1, 1, 242, 46, 46, 46, 253, 82, 82, 82, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 95, 95, 95, 253, 89, 89, 89, 253, 61, 61, 61, 253, 7, 7, 7, 253, 0, 0, 0, 148, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 1, 1, 1, 241, 81, 81, 81, 253, 148, 148, 148, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 173, 173, 173, 253, 162, 162, 162, 253, 112, 112, 112, 253, 14, 14, 14, 254, 0, 0, 0, 152, 0, 0, 0, 0, 0, 0, 0, 48, 2, 2, 2, 248, 89, 89, 89, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 90, 89, 132, 253, 5, 0, 173, 255, 5, 0, 173, 255, 4, 0, 141, 255, 0, 0, 9, 255, 0, 0, 38, 86, 0, 0, 0, 45, 4, 4, 4, 247, 159, 159, 159, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 210, 210, 214, 252, 40, 36, 180, 254, 5, 0, 173, 255, 5, 0, 173, 255, 12, 7, 163, 255, 5, 4, 32, 253, 0, 0, 0, 70, 0, 0, 0, 42, 1, 1, 1, 245, 86, 86, 86, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 99, 99, 99, 252, 7, 7, 7, 253, 0, 0, 0, 74, 0, 0, 0, 39, 2, 2, 2, 244, 152, 152, 152, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 182, 182, 182, 252, 14, 14, 14, 254, 0, 0, 0, 78, 0, 0, 0, 35, 1, 1, 1, 242, 82, 82, 82, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 102, 102, 102, 252, 8, 8, 8, 253, 0, 0, 0, 83, 0, 0, 0, 33, 1, 1, 1, 241, 145, 145, 145, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 17, 17, 17, 254, 0, 0, 0, 87, 0, 0, 0, 30, 0, 0, 0, 239, 78, 78, 78, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 104, 104, 104, 252, 10, 10, 10, 253, 0, 0, 0, 92, 0, 0, 0, 27, 1, 1, 1, 238, 138, 138, 138, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 190, 190, 190, 252, 21, 21, 21, 254, 0, 0, 0, 97, 0, 0, 0, 169, 53, 53, 53, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 115, 115, 121, 252, 21, 17, 165, 254, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 2, 0, 92, 255, 0, 0, 2, 193, 0, 0, 0, 166, 92, 92, 92, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 111, 109, 194, 253, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 22, 20, 110, 254, 1, 1, 1, 197, 0, 0, 0, 161, 49, 49, 49, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 67, 67, 67, 253, 0, 0, 0, 200, 0, 0, 0, 157, 84, 84, 84, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 126, 126, 126, 253, 1, 1, 1, 205, 0, 0, 0, 152, 44, 44, 44, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 72, 72, 72, 253, 0, 0, 0, 209, 0, 0, 0, 147, 77, 77, 77, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 134, 134, 134, 253, 1, 1, 1, 214, 0, 0, 0, 142, 41, 41, 41, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 121, 114, 125, 252, 159, 93, 142, 253, 167, 88, 145, 253, 132, 106, 132, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 76, 76, 76, 253, 0, 0, 0, 219, 0, 0, 0, 137, 69, 69, 69, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 207, 201, 210, 252, 205, 140, 188, 253, 205, 125, 182, 253, 201, 173, 200, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 141, 141, 141, 253, 1, 1, 1, 225, 0, 0, 0, 223, 86, 86, 86, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 58, 56, 147, 254, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 4, 0, 141, 255, 0, 0, 4, 245, 1, 1, 1, 219, 152, 152, 152, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 181, 180, 208, 252, 11, 6, 174, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 40, 37, 163, 254, 1, 1, 1, 244, 0, 0, 0, 214, 82, 82, 82, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 101, 101, 101, 252, 1, 1, 1, 247, 1, 1, 1, 210, 146, 146, 146, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 249, 0, 0, 0, 205, 78, 78, 78, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 115, 115, 115, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 105, 105, 105, 252, 1, 1, 1, 250, 1, 1, 1, 203, 138, 138, 138, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 194, 194, 194, 252, 1, 1, 1, 252, 0, 0, 0, 200, 74, 74, 74, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 133, 105, 129, 253, 199, 72, 160, 255, 215, 67, 161, 255, 215, 67, 161, 255, 212, 68, 161, 255, 142, 100, 138, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 110, 110, 110, 252, 1, 1, 1, 253, 1, 1, 1, 198, 130, 130, 130, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 204, 178, 201, 253, 204, 77, 165, 255, 215, 67, 161, 255, 215, 67, 161, 255, 212, 68, 161, 255, 198, 154, 194, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 201, 201, 201, 252, 2, 2, 2, 253, 1, 1, 1, 253, 103, 103, 103, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 97, 97, 129, 252, 7, 2, 172, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 164, 255, 0, 0, 1, 254, 1, 1, 1, 249, 183, 183, 183, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 214, 214, 215, 252, 53, 50, 182, 254, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 32, 28, 177, 254, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 175, 175, 175, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 214, 214, 214, 252, 3, 3, 3, 254, 0, 0, 0, 240, 94, 94, 94, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 115, 115, 115, 252, 51, 51, 51, 253, 2, 2, 2, 255, 3, 3, 3, 255, 38, 38, 38, 253, 111, 111, 111, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 237, 166, 166, 166, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 95, 95, 95, 253, 4, 4, 4, 255, 4, 4, 4, 255, 67, 67, 67, 253, 199, 199, 199, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 9, 9, 9, 254, 0, 0, 0, 235, 90, 90, 90, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 151, 97, 138, 253, 213, 67, 161, 255, 214, 66, 160, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 208, 68, 161, 255, 132, 107, 131, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 7, 7, 7, 253, 1, 1, 1, 233, 159, 159, 159, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 204, 153, 192, 253, 213, 67, 161, 255, 214, 66, 160, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 209, 69, 162, 255, 202, 175, 200, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 17, 17, 17, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 117, 117, 119, 252, 28, 24, 162, 254, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 49, 46, 143, 253, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 128, 126, 197, 253, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 20, 15, 176, 255, 169, 168, 201, 253, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 166, 78, 78, 253, 223, 28, 28, 254, 150, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 228, 144, 144, 253, 245, 50, 50, 254, 224, 163, 163, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 112, 112, 112, 252, 28, 28, 28, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 25, 25, 25, 254, 114, 114, 114, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 204, 204, 204, 252, 54, 54, 54, 254, 1, 1, 1, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 42, 42, 42, 254, 204, 204, 204, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 167, 88, 147, 253, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 200, 71, 160, 255, 124, 112, 127, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 202, 125, 183, 253, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 204, 74, 164, 255, 204, 191, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 67, 66, 143, 253, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 51, 48, 150, 254, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 192, 191, 210, 252, 17, 12, 175, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 18, 13, 175, 255, 172, 172, 206, 253, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 175, 69, 69, 253, 254, 1, 1, 255, 255, 0, 0, 255, 182, 63, 63, 253, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 231, 129, 129, 253, 255, 2, 2, 255, 255, 0, 0, 255, 234, 110, 110, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 115, 115, 115, 252, 100, 100, 100, 252, 117, 117, 117, 252, 108, 108, 108, 252, 23, 23, 23, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 51, 51, 51, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 181, 181, 181, 252, 210, 210, 210, 252, 197, 197, 197, 252, 44, 44, 44, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 88, 88, 88, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 121, 116, 121, 252, 183, 80, 150, 254, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 214, 66, 160, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 190, 76, 156, 254, 120, 116, 123, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 212, 209, 213, 252, 206, 105, 174, 254, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 203, 87, 169, 254, 208, 204, 211, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 104, 103, 126, 252, 10, 5, 171, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 49, 46, 151, 254, 118, 118, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 69, 66, 185, 254, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 16, 12, 175, 255, 170, 169, 205, 253, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 182, 64, 64, 253, 255, 0, 0, 255, 255, 0, 0, 255, 225, 26, 26, 254, 127, 112, 112, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 233, 119, 119, 253, 255, 1, 1, 255, 255, 0, 0, 255, 246, 45, 45, 254, 218, 200, 200, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 93, 93, 93, 253, 14, 14, 14, 254, 3, 3, 3, 255, 17, 17, 17, 254, 18, 18, 18, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 9, 9, 9, 255, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 171, 171, 171, 253, 27, 27, 27, 254, 6, 6, 6, 255, 30, 30, 30, 254, 34, 34, 34, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 12, 12, 12, 255, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 122, 114, 125, 252, 193, 75, 154, 254, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 214, 66, 160, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 175, 82, 152, 254, 119, 118, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 207, 200, 210, 252, 208, 92, 170, 254, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 214, 66, 160, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 198, 102, 174, 254, 214, 213, 214, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 119, 119, 119, 252, 140, 101, 101, 252, 129, 111, 111, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 35, 32, 157, 254, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 46, 44, 152, 254, 118, 118, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 145, 144, 201, 253, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 15, 11, 175, 255, 167, 166, 205, 253, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 188, 58, 58, 253, 255, 0, 0, 255, 255, 0, 0, 255, 220, 30, 30, 254, 125, 113, 113, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 234, 109, 109, 253, 255, 0, 0, 255, 255, 0, 0, 255, 245, 52, 52, 254, 217, 203, 203, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 116, 116, 116, 252, 13, 13, 13, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 12, 12, 12, 254, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 211, 211, 211, 252, 25, 25, 25, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 19, 19, 19, 254, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 127, 110, 128, 253, 195, 73, 158, 254, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 158, 89, 148, 254, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 204, 188, 206, 253, 204, 84, 168, 254, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 214, 66, 160, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 193, 121, 182, 254, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 211, 44, 44, 254, 252, 11, 11, 255, 249, 14, 14, 255, 151, 92, 92, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 141, 141, 153, 253, 114, 112, 181, 255, 17, 13, 174, 255, 5, 0, 173, 255, 5, 0, 173, 255, 44, 42, 153, 254, 118, 118, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 222, 176, 176, 253, 245, 59, 59, 254, 245, 62, 62, 254, 222, 174, 174, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 204, 204, 210, 252, 69, 66, 180, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 14, 9, 175, 255, 164, 163, 204, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 194, 53, 53, 253, 255, 0, 0, 255, 255, 0, 0, 255, 215, 35, 35, 254, 123, 115, 115, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 237, 99, 99, 253, 255, 0, 0, 255, 255, 0, 0, 255, 244, 60, 60, 254, 217, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 101, 101, 101, 252, 3, 3, 3, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 1, 1, 1, 255, 65, 65, 65, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 187, 187, 187, 252, 6, 6, 6, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 2, 2, 2, 255, 114, 114, 114, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 99, 114, 134, 253, 65, 98, 176, 255, 199, 70, 163, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 214, 66, 160, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 137, 102, 135, 253, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 174, 188, 207, 253, 72, 106, 185, 255, 197, 70, 163, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 214, 66, 160, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 198, 161, 196, 253, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 138, 103, 103, 252, 255, 9, 9, 255, 254, 10, 10, 255, 255, 9, 9, 255, 208, 47, 47, 254, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 127, 127, 132, 252, 184, 184, 187, 255, 188, 188, 188, 255, 129, 128, 182, 255, 5, 0, 173, 255, 43, 40, 154, 254, 117, 117, 120, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 247, 47, 47, 254, 255, 9, 9, 255, 255, 12, 12, 255, 248, 46, 46, 254, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 193, 254, 188, 188, 188, 255, 102, 100, 180, 255, 5, 0, 173, 255, 14, 9, 175, 255, 162, 161, 203, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 120, 118, 118, 252, 200, 47, 47, 254, 255, 0, 0, 255, 255, 0, 0, 255, 210, 39, 39, 254, 122, 116, 116, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 214, 214, 252, 238, 89, 89, 254, 255, 0, 0, 255, 255, 0, 0, 255, 242, 68, 68, 254, 216, 210, 210, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 117, 117, 117, 252, 20, 20, 20, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 1, 1, 1, 255, 50, 50, 50, 253, 118, 118, 118, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 212, 212, 212, 252, 39, 39, 39, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 2, 2, 2, 255, 87, 87, 87, 253, 214, 214, 214, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 89, 112, 143, 253, 41, 101, 183, 255, 39, 101, 185, 255, 81, 92, 178, 255, 214, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 214, 66, 160, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 172, 84, 151, 254, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 152, 174, 204, 253, 44, 104, 186, 255, 39, 101, 185, 255, 79, 93, 179, 255, 214, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 214, 66, 160, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 196, 107, 176, 254, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 126, 113, 113, 252, 247, 15, 15, 255, 255, 9, 9, 255, 255, 9, 9, 255, 187, 63, 63, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 120, 120, 120, 252, 169, 169, 174, 254, 188, 188, 188, 255, 188, 188, 188, 255, 187, 187, 188, 255, 59, 57, 157, 254, 117, 117, 120, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 249, 36, 36, 254, 255, 9, 9, 255, 255, 9, 9, 255, 250, 34, 34, 254, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 196, 196, 202, 253, 188, 188, 188, 255, 188, 188, 188, 255, 185, 185, 188, 255, 31, 27, 175, 255, 160, 159, 203, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 121, 117, 117, 252, 206, 42, 42, 254, 255, 0, 0, 255, 255, 0, 0, 255, 204, 44, 44, 254, 121, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 212, 212, 252, 240, 80, 80, 254, 255, 0, 0, 255, 255, 0, 0, 255, 240, 76, 76, 254, 216, 212, 212, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 61, 61, 61, 253, 8, 8, 8, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 1, 1, 1, 255, 61, 61, 61, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 115, 115, 115, 253, 15, 15, 15, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 2, 2, 2, 255, 107, 107, 107, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 119, 119, 252, 77, 109, 153, 253, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 116, 85, 173, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 166, 88, 146, 253, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 214, 214, 215, 252, 125, 157, 199, 253, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 112, 86, 174, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 202, 122, 181, 253, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 148, 95, 95, 253, 206, 48, 48, 254, 185, 64, 64, 253, 123, 116, 116, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 146, 145, 151, 253, 188, 188, 188, 255, 188, 188, 188, 255, 188, 188, 188, 255, 165, 165, 173, 254, 120, 120, 123, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 227, 151, 151, 253, 252, 22, 22, 255, 252, 22, 22, 255, 227, 149, 149, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 207, 207, 211, 252, 184, 184, 188, 255, 188, 188, 188, 255, 188, 188, 188, 255, 186, 186, 188, 255, 184, 183, 203, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 122, 116, 116, 252, 211, 38, 38, 254, 255, 0, 0, 255, 255, 0, 0, 255, 199, 49, 49, 254, 120, 118, 118, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 216, 210, 210, 252, 241, 71, 71, 254, 255, 0, 0, 255, 255, 0, 0, 255, 238, 85, 85, 254, 215, 213, 213, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 68, 68, 68, 253, 81, 81, 81, 253, 94, 94, 94, 253, 6, 6, 6, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 71, 71, 71, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 125, 125, 125, 253, 143, 143, 143, 253, 173, 173, 173, 253, 14, 14, 14, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 1, 1, 1, 255, 126, 126, 126, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 116, 118, 121, 252, 65, 106, 163, 254, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 148, 79, 169, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 199, 71, 160, 255, 124, 112, 127, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 211, 214, 252, 99, 140, 195, 254, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 145, 80, 170, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 204, 75, 164, 255, 204, 192, 207, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 106, 106, 106, 253, 79, 79, 79, 254, 60, 60, 60, 255, 59, 59, 59, 255, 115, 115, 116, 255, 186, 186, 187, 255, 188, 188, 188, 255, 166, 166, 174, 254, 120, 120, 123, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 215, 215, 215, 252, 215, 214, 214, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 130, 130, 130, 253, 121, 121, 121, 254, 156, 156, 159, 254, 188, 188, 188, 255, 188, 188, 188, 255, 187, 187, 188, 255, 192, 192, 202, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 124, 115, 115, 252, 216, 33, 33, 254, 255, 0, 0, 255, 255, 0, 0, 255, 193, 54, 54, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 216, 208, 208, 252, 243, 63, 63, 254, 255, 0, 0, 255, 255, 0, 0, 255, 237, 95, 95, 253, 215, 214, 214, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 60, 60, 60, 253, 88, 88, 88, 253, 119, 119, 119, 252, 119, 119, 119, 252, 87, 87, 87, 253, 2, 2, 2, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 1, 1, 1, 255, 81, 81, 81, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 112, 112, 112, 253, 157, 157, 157, 253, 215, 215, 215, 252, 215, 215, 215, 252, 159, 159, 159, 253, 6, 6, 6, 254, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 2, 2, 2, 255, 143, 143, 143, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 111, 117, 125, 252, 55, 104, 171, 254, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 40, 101, 185, 255, 171, 75, 166, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 198, 72, 157, 254, 125, 112, 128, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 199, 205, 212, 252, 76, 125, 191, 254, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 100, 184, 255, 169, 75, 167, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 207, 79, 166, 254, 204, 190, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 117, 93, 93, 253, 127, 40, 40, 255, 93, 49, 49, 255, 59, 59, 59, 255, 59, 59, 59, 255, 59, 59, 59, 255, 116, 115, 121, 255, 167, 167, 175, 254, 120, 120, 124, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 208, 208, 208, 252, 105, 105, 105, 254, 59, 59, 59, 255, 59, 59, 59, 255, 59, 59, 59, 255, 61, 61, 61, 255, 140, 140, 144, 255, 187, 187, 188, 255, 191, 191, 202, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 126, 113, 113, 252, 221, 29, 29, 254, 255, 0, 0, 255, 255, 0, 0, 255, 186, 60, 60, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 217, 205, 205, 252, 244, 55, 55, 254, 255, 0, 0, 255, 255, 0, 0, 255, 235, 105, 105, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 117, 117, 117, 252, 55, 55, 55, 253, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 79, 79, 79, 253, 1, 1, 1, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 63, 63, 63, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 212, 212, 212, 252, 101, 101, 101, 254, 170, 170, 170, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 146, 146, 146, 253, 2, 2, 2, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 111, 111, 111, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 104, 115, 130, 253, 48, 103, 177, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 50, 98, 183, 255, 189, 71, 164, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 190, 77, 153, 254, 124, 114, 124, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 184, 195, 209, 252, 60, 115, 189, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 48, 99, 183, 255, 187, 71, 164, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 209, 94, 170, 254, 209, 197, 209, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 151, 89, 89, 253, 246, 4, 4, 255, 255, 0, 0, 255, 254, 0, 0, 255, 173, 25, 25, 255, 60, 59, 59, 255, 59, 59, 59, 255, 70, 70, 70, 255, 120, 120, 124, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 216, 210, 210, 252, 210, 68, 68, 254, 240, 4, 4, 255, 217, 11, 11, 255, 115, 42, 42, 255, 59, 59, 59, 255, 59, 59, 59, 255, 67, 67, 68, 255, 192, 192, 200, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 128, 111, 111, 252, 226, 25, 25, 254, 255, 0, 0, 255, 255, 0, 0, 255, 180, 66, 66, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 218, 202, 202, 252, 246, 48, 48, 254, 255, 0, 0, 255, 255, 0, 0, 255, 233, 115, 115, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 115, 115, 115, 252, 51, 51, 51, 253, 102, 102, 102, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 117, 117, 117, 252, 33, 33, 33, 253, 1, 1, 1, 255, 0, 0, 0, 255, 0, 0, 0, 255, 6, 6, 6, 254, 102, 102, 102, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 93, 93, 93, 253, 182, 182, 182, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 212, 212, 212, 252, 64, 64, 64, 253, 2, 2, 2, 255, 0, 0, 0, 255, 0, 0, 0, 255, 10, 10, 10, 254, 181, 181, 181, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 95, 113, 139, 253, 43, 102, 182, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 66, 95, 181, 255, 206, 69, 162, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 179, 83, 149, 254, 119, 117, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 164, 182, 206, 253, 48, 107, 186, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 64, 96, 181, 255, 204, 69, 162, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 206, 108, 176, 254, 213, 210, 213, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 235, 17, 17, 254, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 151, 31, 31, 255, 59, 59, 59, 255, 65, 65, 65, 255, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 235, 103, 103, 254, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 253, 1, 1, 255, 117, 41, 41, 255, 59, 59, 59, 255, 59, 59, 59, 255, 210, 210, 210, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 131, 108, 108, 252, 230, 21, 21, 254, 255, 0, 0, 255, 254, 1, 1, 255, 173, 71, 71, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 218, 197, 197, 252, 247, 41, 41, 254, 255, 0, 0, 255, 255, 1, 1, 255, 232, 125, 125, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 112, 112, 112, 252, 56, 44, 44, 253, 125, 93, 93, 253, 137, 105, 105, 253, 137, 105, 105, 253, 137, 105, 105, 253, 137, 105, 105, 253, 137, 105, 105, 253, 131, 102, 102, 253, 51, 50, 50, 253, 102, 102, 102, 252, 72, 72, 72, 253, 14, 14, 14, 254, 26, 26, 26, 254, 93, 93, 93, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 203, 203, 203, 252, 89, 77, 77, 253, 190, 159, 159, 253, 214, 182, 182, 253, 214, 182, 182, 253, 214, 182, 182, 253, 214, 182, 182, 253, 214, 182, 182, 253, 207, 177, 177, 253, 92, 92, 92, 253, 183, 183, 183, 252, 133, 133, 133, 253, 27, 27, 27, 254, 46, 46, 46, 254, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 83, 110, 148, 253, 40, 101, 184, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 82, 91, 178, 255, 213, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 161, 90, 144, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 139, 166, 202, 253, 41, 102, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 80, 92, 178, 255, 213, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 215, 67, 161, 255, 201, 129, 184, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 144, 98, 98, 253, 197, 56, 56, 253, 180, 69, 69, 253, 122, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 141, 99, 99, 252, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 245, 3, 3, 255, 71, 55, 55, 255, 72, 72, 72, 254, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 215, 215, 215, 252, 222, 176, 176, 252, 222, 177, 177, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 213, 213, 252, 251, 16, 16, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 239, 5, 5, 255, 67, 57, 57, 255, 64, 64, 64, 255, 213, 213, 213, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 134, 106, 106, 252, 234, 18, 18, 254, 255, 0, 0, 255, 253, 2, 2, 255, 168, 76, 76, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 219, 193, 193, 252, 249, 35, 35, 254, 255, 0, 0, 255, 255, 3, 3, 255, 230, 135, 135, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 107, 107, 107, 252, 70, 34, 34, 254, 198, 50, 50, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 197, 50, 50, 255, 69, 34, 34, 254, 108, 107, 107, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 195, 195, 195, 252, 88, 53, 53, 254, 197, 49, 49, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 198, 50, 50, 255, 88, 52, 52, 254, 193, 192, 192, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 73, 108, 156, 253, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 96, 89, 176, 255, 214, 67, 161, 255, 205, 69, 161, 255, 143, 101, 134, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 118, 152, 198, 253, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 93, 90, 176, 255, 213, 67, 161, 255, 207, 70, 162, 255, 204, 160, 195, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 125, 114, 114, 252, 245, 17, 17, 255, 252, 10, 10, 255, 255, 9, 9, 255, 185, 65, 65, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 155, 78, 78, 253, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 129, 38, 38, 255, 86, 86, 86, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 235, 111, 111, 253, 255, 9, 9, 255, 254, 13, 13, 255, 235, 110, 110, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 218, 188, 188, 252, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 131, 37, 37, 255, 94, 94, 94, 254, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 137, 103, 103, 252, 238, 15, 15, 255, 255, 0, 0, 255, 252, 3, 3, 255, 162, 81, 81, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 220, 188, 188, 252, 249, 29, 29, 255, 255, 0, 0, 255, 254, 5, 5, 255, 228, 143, 143, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 102, 101, 101, 252, 77, 32, 32, 254, 204, 51, 51, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 189, 47, 47, 255, 66, 37, 37, 254, 112, 112, 112, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 185, 185, 252, 90, 47, 47, 254, 203, 51, 51, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 191, 48, 48, 255, 88, 58, 58, 254, 201, 201, 201, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 101, 115, 133, 252, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 116, 89, 167, 254, 128, 109, 129, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 180, 192, 209, 252, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 124, 99, 178, 255, 203, 183, 204, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 139, 102, 102, 252, 255, 9, 9, 255, 254, 9, 9, 255, 255, 9, 9, 255, 208, 47, 47, 254, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 174, 65, 65, 253, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 166, 27, 27, 255, 110, 110, 110, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 250, 30, 30, 255, 255, 9, 9, 255, 255, 10, 10, 255, 251, 27, 27, 255, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 211, 150, 150, 253, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 183, 22, 22, 255, 143, 143, 143, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 141, 100, 100, 252, 241, 12, 12, 255, 255, 0, 0, 255, 250, 4, 4, 255, 157, 86, 86, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 221, 183, 183, 252, 251, 24, 24, 255, 255, 0, 0, 255, 254, 7, 7, 255, 227, 152, 152, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 96, 95, 95, 253, 88, 30, 30, 254, 208, 52, 52, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 179, 45, 45, 255, 64, 42, 42, 254, 115, 115, 115, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 175, 173, 173, 253, 96, 41, 41, 254, 207, 52, 52, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 181, 47, 47, 255, 91, 68, 68, 254, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 91, 112, 141, 253, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 58, 105, 168, 254, 113, 118, 124, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 158, 178, 205, 253, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 79, 127, 191, 254, 200, 206, 212, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 120, 118, 118, 252, 216, 40, 40, 254, 255, 9, 9, 255, 251, 12, 12, 255, 155, 89, 89, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 185, 56, 56, 253, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 179, 55, 55, 254, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 243, 68, 68, 254, 255, 9, 9, 255, 255, 9, 9, 255, 244, 66, 66, 254, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 212, 124, 124, 253, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 209, 32, 32, 255, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 144, 96, 96, 253, 244, 10, 10, 255, 255, 0, 0, 255, 248, 6, 6, 255, 152, 90, 90, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 222, 176, 176, 253, 251, 19, 19, 255, 255, 0, 0, 255, 253, 10, 10, 255, 225, 159, 159, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 89, 88, 88, 253, 102, 30, 30, 254, 210, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 167, 43, 43, 255, 64, 49, 49, 254, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 162, 161, 161, 253, 106, 36, 36, 254, 210, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 170, 44, 44, 255, 98, 82, 82, 254, 211, 211, 211, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 111, 117, 125, 252, 43, 102, 182, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 68, 107, 159, 254, 117, 118, 121, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 201, 206, 213, 252, 48, 107, 186, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 102, 141, 195, 254, 210, 212, 214, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 121, 118, 118, 252, 146, 96, 96, 252, 132, 108, 108, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 191, 47, 47, 254, 255, 0, 0, 255, 255, 0, 0, 255, 230, 13, 13, 254, 200, 46, 46, 254, 201, 48, 48, 254, 178, 66, 66, 253, 126, 113, 113, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 218, 201, 201, 252, 235, 109, 109, 253, 235, 109, 109, 253, 218, 200, 200, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 218, 115, 115, 253, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 249, 22, 22, 254, 226, 149, 149, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 148, 93, 93, 253, 246, 8, 8, 255, 255, 0, 0, 255, 246, 8, 8, 255, 147, 93, 93, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 223, 170, 170, 253, 252, 15, 15, 255, 255, 0, 0, 255, 252, 13, 13, 255, 223, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 99, 97, 97, 252, 106, 30, 30, 254, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 154, 39, 39, 255, 66, 58, 58, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 180, 179, 179, 252, 106, 33, 33, 254, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 158, 41, 41, 255, 108, 99, 99, 253, 214, 214, 214, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 91, 112, 141, 253, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 184, 255, 80, 110, 150, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 157, 177, 205, 253, 40, 102, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 40, 102, 185, 255, 128, 159, 200, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 197, 38, 38, 254, 255, 0, 0, 255, 174, 56, 56, 253, 119, 118, 118, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 227, 109, 109, 253, 255, 0, 0, 255, 240, 17, 17, 255, 214, 133, 133, 253, 216, 206, 206, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 153, 89, 89, 253, 248, 6, 6, 255, 255, 0, 0, 255, 243, 11, 11, 255, 144, 97, 97, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 224, 163, 163, 253, 253, 12, 12, 255, 255, 0, 0, 255, 252, 17, 17, 255, 222, 173, 173, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 64, 52, 52, 253, 209, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 141, 36, 36, 255, 70, 67, 67, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 104, 95, 95, 253, 208, 52, 52, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 144, 38, 38, 255, 121, 117, 117, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 79, 109, 151, 253, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 42, 102, 182, 255, 93, 113, 140, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 130, 160, 200, 253, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 45, 105, 186, 255, 155, 176, 204, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 136, 105, 105, 252, 134, 107, 107, 252, 119, 119, 119, 252, 204, 30, 30, 254, 178, 53, 53, 254, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 230, 97, 97, 254, 240, 18, 18, 255, 210, 180, 180, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 158, 84, 84, 253, 250, 4, 4, 255, 255, 0, 0, 255, 240, 13, 13, 255, 140, 101, 101, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 226, 156, 156, 253, 253, 8, 8, 255, 255, 0, 0, 255, 251, 22, 22, 255, 221, 180, 180, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 72, 47, 47, 253, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 127, 33, 33, 255, 78, 76, 76, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 105, 83, 83, 253, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 131, 35, 35, 255, 135, 134, 134, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 66, 106, 161, 254, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 47, 102, 178, 255, 102, 114, 132, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 102, 142, 195, 254, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 55, 112, 188, 255, 176, 190, 208, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 188, 63, 63, 253, 252, 11, 11, 255, 254, 10, 10, 255, 171, 76, 76, 253, 175, 45, 45, 253, 119, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 184, 184, 184, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 219, 194, 194, 252, 243, 71, 71, 254, 246, 54, 54, 254, 227, 151, 151, 253, 223, 79, 79, 253, 211, 160, 160, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 163, 80, 80, 253, 252, 3, 3, 255, 255, 0, 0, 255, 237, 16, 16, 255, 137, 104, 104, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 176, 176, 176, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 227, 148, 148, 253, 254, 6, 6, 255, 255, 0, 0, 255, 250, 27, 27, 255, 221, 185, 185, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 73, 71, 71, 253, 170, 43, 43, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 111, 31, 31, 254, 85, 83, 83, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 133, 131, 131, 253, 168, 43, 43, 255, 211, 53, 53, 255, 211, 53, 53, 255, 211, 53, 53, 255, 117, 34, 34, 254, 150, 148, 148, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 116, 118, 121, 252, 56, 104, 170, 254, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 53, 104, 172, 254, 110, 117, 126, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 161, 161, 161, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 210, 212, 214, 252, 79, 126, 191, 254, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 69, 121, 190, 254, 194, 201, 211, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 1, 1, 1, 253, 104, 104, 104, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 249, 13, 13, 255, 253, 10, 10, 255, 255, 9, 9, 255, 232, 27, 27, 254, 126, 107, 107, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 113, 113, 252, 1, 1, 1, 253, 1, 1, 1, 249, 183, 183, 183, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 240, 84, 84, 254, 255, 9, 9, 255, 254, 12, 12, 255, 253, 17, 17, 255, 202, 138, 138, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 1, 1, 1, 253, 1, 1, 1, 245, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 149, 93, 93, 253, 253, 2, 2, 255, 255, 0, 0, 255, 233, 19, 19, 254, 133, 107, 107, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 1, 1, 1, 253, 1, 1, 1, 242, 175, 175, 175, 253, 215, 215, 215, 252, 215, 215, 215, 252, 224, 170, 170, 252, 254, 4, 4, 255, 255, 0, 0, 255, 249, 32, 32, 254, 219, 191, 191, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 3, 3, 3, 254, 0, 0, 0, 241, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 65, 53, 53, 253, 110, 29, 29, 255, 131, 36, 36, 255, 76, 33, 33, 254, 94, 92, 92, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 4, 4, 4, 253, 1, 1, 1, 238, 167, 167, 167, 253, 215, 215, 215, 252, 215, 215, 215, 252, 213, 213, 213, 252, 106, 95, 95, 253, 111, 30, 30, 255, 134, 39, 39, 255, 92, 47, 47, 254, 165, 164, 164, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 10, 10, 10, 254, 0, 0, 0, 235, 91, 91, 91, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 111, 117, 125, 252, 48, 103, 177, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 62, 106, 164, 254, 115, 118, 122, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 8, 8, 8, 253, 1, 1, 1, 234, 160, 160, 160, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 200, 205, 212, 252, 61, 115, 189, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 90, 134, 193, 254, 206, 209, 213, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 18, 18, 18, 254, 0, 0, 0, 228, 90, 90, 90, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 230, 29, 29, 254, 255, 9, 9, 255, 255, 9, 9, 255, 212, 43, 43, 254, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 99, 99, 99, 252, 0, 0, 0, 246, 1, 1, 1, 225, 158, 158, 158, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 243, 73, 73, 254, 255, 9, 9, 255, 255, 9, 9, 255, 255, 10, 10, 255, 218, 202, 202, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 184, 184, 184, 252, 1, 1, 1, 248, 0, 0, 0, 222, 85, 85, 85, 253, 119, 119, 119, 252, 119, 119, 119, 252, 171, 73, 73, 253, 255, 0, 0, 255, 229, 22, 22, 254, 130, 109, 109, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 104, 104, 104, 252, 1, 1, 1, 250, 1, 1, 1, 218, 150, 150, 150, 253, 215, 215, 215, 252, 215, 215, 215, 252, 230, 135, 135, 253, 255, 0, 0, 255, 248, 38, 38, 254, 219, 196, 196, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 192, 192, 192, 252, 1, 1, 1, 251, 0, 0, 0, 213, 81, 81, 81, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 111, 111, 111, 252, 102, 102, 102, 252, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 109, 109, 109, 252, 1, 1, 1, 252, 1, 1, 1, 210, 143, 143, 143, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 201, 201, 201, 252, 183, 183, 183, 252, 212, 212, 212, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 199, 199, 199, 252, 2, 2, 2, 253, 0, 0, 0, 207, 77, 77, 77, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 103, 115, 130, 253, 43, 102, 181, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 74, 108, 155, 254, 118, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 112, 112, 112, 252, 1, 1, 1, 253, 1, 1, 1, 206, 135, 135, 135, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 184, 195, 209, 252, 50, 108, 187, 255, 39, 101, 185, 255, 39, 101, 185, 255, 39, 101, 185, 255, 114, 149, 197, 254, 213, 214, 214, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 205, 205, 205, 252, 3, 3, 3, 253, 0, 0, 0, 178, 60, 60, 60, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 136, 105, 105, 252, 201, 51, 51, 253, 195, 57, 57, 253, 130, 110, 110, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 69, 69, 69, 253, 0, 0, 0, 199, 0, 0, 0, 173, 105, 105, 105, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 222, 176, 176, 253, 250, 34, 34, 254, 254, 14, 14, 255, 233, 120, 120, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 130, 130, 130, 253, 1, 1, 1, 203, 0, 0, 0, 168, 56, 56, 56, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 146, 95, 95, 253, 122, 116, 116, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 74, 74, 74, 253, 0, 0, 0, 208, 0, 0, 0, 164, 97, 97, 97, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 223, 172, 172, 253, 216, 209, 209, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 137, 137, 137, 253, 1, 1, 1, 213, 0, 0, 0, 160, 51, 51, 51, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 78, 78, 78, 253, 0, 0, 0, 218, 0, 0, 0, 156, 89, 89, 89, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 145, 145, 145, 253, 1, 1, 1, 223, 0, 0, 0, 151, 47, 47, 47, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 106, 116, 129, 252, 69, 107, 159, 254, 65, 106, 163, 254, 96, 114, 137, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 83, 83, 83, 253, 0, 0, 0, 227, 0, 0, 0, 146, 81, 81, 81, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 189, 198, 210, 252, 108, 145, 196, 254, 97, 139, 195, 254, 164, 182, 206, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 153, 153, 153, 253, 1, 1, 1, 231, 0, 0, 0, 65, 5, 5, 5, 252, 99, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 105, 105, 105, 252, 9, 9, 9, 253, 0, 0, 0, 84, 0, 0, 0, 61, 8, 8, 8, 252, 176, 176, 176, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 214, 214, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 192, 192, 192, 252, 18, 18, 18, 254, 0, 0, 0, 89, 0, 0, 0, 57, 4, 4, 4, 251, 96, 96, 96, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 107, 107, 107, 252, 11, 11, 11, 253, 0, 0, 0, 94, 0, 0, 0, 53, 5, 5, 5, 250, 172, 172, 172, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 196, 196, 196, 252, 22, 22, 22, 254, 0, 0, 0, 98, 0, 0, 0, 50, 2, 2, 2, 248, 93, 93, 93, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 109, 109, 109, 252, 13, 13, 13, 253, 0, 0, 0, 103, 0, 0, 0, 47, 4, 4, 4, 248, 166, 166, 166, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 199, 199, 199, 252, 27, 27, 27, 254, 0, 0, 0, 108, 0, 0, 0, 43, 1, 1, 1, 246, 90, 90, 90, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 111, 111, 111, 252, 16, 16, 16, 253, 0, 0, 0, 112, 0, 0, 0, 40, 3, 3, 3, 245, 159, 159, 159, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 202, 202, 202, 252, 31, 31, 31, 254, 0, 0, 0, 117, 0, 0, 0, 0, 0, 0, 0, 130, 6, 6, 6, 253, 66, 66, 66, 253, 99, 99, 99, 252, 118, 118, 118, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 101, 101, 101, 252, 70, 70, 70, 253, 9, 9, 9, 253, 0, 0, 0, 152, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 126, 10, 10, 10, 253, 118, 118, 118, 253, 177, 177, 177, 252, 213, 213, 213, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 183, 183, 183, 252, 128, 128, 128, 253, 18, 18, 18, 254, 0, 0, 0, 156, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 122, 5, 5, 5, 252, 64, 64, 64, 253, 98, 98, 98, 252, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 102, 102, 102, 252, 72, 72, 72, 253, 10, 10, 10, 253, 0, 0, 0, 160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, 9, 9, 9, 252, 114, 114, 114, 253, 176, 176, 176, 252, 212, 212, 212, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 184, 184, 184, 252, 132, 132, 132, 253, 20, 20, 20, 254, 0, 0, 0, 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 4, 4, 4, 252, 62, 62, 62, 253, 97, 97, 97, 252, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 103, 103, 103, 252, 74, 74, 74, 253, 12, 12, 12, 253, 0, 0, 0, 168, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 110, 7, 7, 7, 252, 110, 110, 110, 253, 174, 174, 174, 252, 211, 211, 211, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 135, 135, 135, 253, 23, 23, 23, 254, 0, 0, 0, 173, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 105, 3, 3, 3, 251, 60, 60, 60, 253, 96, 96, 96, 252, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 103, 103, 103, 252, 75, 75, 75, 253, 14, 14, 14, 253, 0, 0, 0, 177, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 101, 5, 5, 5, 250, 106, 106, 106, 253, 173, 173, 173, 252, 210, 210, 210, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 188, 188, 188, 252, 138, 138, 138, 253, 27, 27, 27, 254, 0, 0, 0, 181, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 73, 0, 0, 0, 198, 0, 0, 0, 245, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 247, 0, 0, 0, 203, 0, 0, 0, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70, 1, 1, 1, 197, 1, 1, 1, 245, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 248, 1, 1, 1, 204, 0, 0, 0, 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 0, 0, 0, 195, 0, 0, 0, 244, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 248, 0, 0, 0, 205, 0, 0, 0, 93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 1, 1, 194, 1, 1, 1, 244, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 249, 1, 1, 1, 206, 0, 0, 0, 97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 0, 0, 192, 0, 0, 0, 243, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 249, 0, 0, 0, 206, 0, 0, 0, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 0, 0, 0, 191, 1, 1, 1, 243, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 250, 1, 1, 1, 208, 0, 0, 0, 102, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57, 0, 0, 0, 189, 0, 0, 0, 242, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 250, 0, 0, 0, 208, 0, 0, 0, 105, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54, 0, 0, 0, 188, 1, 1, 1, 242, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 251, 1, 1, 1, 210, 0, 0, 0, 107, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 119, 0, 0, 0, 177, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 212, 0, 0, 0, 196, 0, 0, 0, 146, 0, 0, 7, 58, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0, 117, 0, 0, 0, 176, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 213, 1, 1, 1, 197, 0, 0, 0, 147, 0, 0, 0, 57, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 25, 0, 0, 0, 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, 0, 0, 0, 70, 0, 0, 0, 183, 0, 0, 0, 235, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 0, 0, 0, 229, 0, 0, 0, 176, 0, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 0, 0, 0, 183, 1, 1, 1, 234, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 254, 1, 1, 1, 230, 0, 0, 0, 177, 0, 0, 0, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 218, 25, 25, 25, 253, 64, 64, 64, 253, 82, 82, 82, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 84, 84, 84, 253, 44, 43, 88, 253, 2, 0, 70, 255, 0, 0, 7, 255, 0, 0, 22, 140, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 45, 0, 0, 0, 217, 44, 44, 44, 254, 114, 114, 114, 253, 148, 148, 148, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 151, 151, 151, 253, 139, 139, 148, 253, 22, 19, 135, 254, 4, 1, 112, 255, 4, 3, 27, 251, 0, 0, 0, 131, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 136, 6, 6, 6, 253, 62, 62, 62, 253, 92, 92, 92, 253, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 104, 104, 104, 252, 105, 105, 105, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 88, 88, 88, 253, 55, 55, 55, 253, 2, 2, 2, 249, 0, 0, 0, 106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133, 10, 10, 10, 253, 110, 110, 110, 253, 165, 165, 165, 253, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 193, 193, 193, 252, 186, 186, 186, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 161, 161, 161, 253, 101, 101, 101, 253, 5, 5, 5, 250, 0, 0, 0, 110, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0, 217, 54, 54, 54, 253, 118, 118, 118, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 111, 111, 123, 252, 15, 11, 168, 255, 5, 0, 173, 255, 4, 0, 141, 255, 0, 0, 14, 255, 0, 0, 28, 104, 0, 0, 0, 9, 0, 0, 0, 214, 95, 95, 95, 253, 212, 212, 212, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 92, 89, 190, 254, 5, 0, 173, 255, 5, 0, 173, 255, 11, 7, 164, 255, 6, 5, 38, 254, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 76, 7, 7, 7, 253, 101, 101, 101, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 31, 31, 31, 254, 56, 56, 56, 254, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 90, 90, 90, 253, 2, 2, 2, 248, 0, 0, 0, 48, 0, 0, 0, 72, 12, 12, 12, 253, 180, 180, 180, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 86, 86, 86, 254, 71, 71, 71, 254, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 167, 167, 167, 253, 5, 5, 5, 250, 0, 0, 0, 52, 0, 0, 0, 113, 25, 25, 25, 253, 118, 118, 118, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 48, 45, 152, 254, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 3, 0, 110, 255, 0, 0, 5, 231, 0, 0, 1, 109, 42, 42, 42, 254, 212, 212, 212, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 166, 166, 205, 253, 6, 1, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 25, 21, 137, 254, 1, 1, 1, 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 199, 68, 68, 68, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 51, 51, 51, 253, 0, 0, 0, 255, 73, 73, 73, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 52, 52, 52, 253, 0, 0, 0, 167, 1, 1, 1, 195, 119, 119, 119, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 124, 124, 124, 253, 0, 0, 0, 255, 95, 95, 95, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 99, 99, 99, 253, 0, 0, 0, 171, 0, 0, 0, 170, 62, 62, 62, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 89, 88, 133, 253, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 165, 255, 0, 0, 3, 254, 0, 0, 0, 183, 109, 109, 109, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 210, 210, 214, 252, 39, 35, 179, 254, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 28, 24, 175, 254, 5, 5, 5, 253, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 1, 1, 1, 246, 101, 101, 101, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 117, 117, 117, 252, 49, 49, 49, 253, 17, 17, 17, 255, 68, 68, 68, 255, 2, 2, 2, 255, 96, 96, 96, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 85, 85, 85, 253, 0, 0, 0, 218, 1, 1, 1, 243, 177, 177, 177, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 114, 114, 114, 253, 8, 8, 8, 255, 79, 79, 79, 255, 0, 0, 0, 255, 154, 154, 154, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 156, 156, 156, 253, 1, 1, 1, 223, 0, 0, 0, 206, 81, 81, 81, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 115, 115, 121, 252, 20, 16, 165, 254, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 1, 0, 21, 254, 1, 1, 1, 229, 143, 143, 143, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 109, 107, 194, 253, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 27, 27, 36, 254, 0, 0, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 116, 116, 116, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 103, 103, 103, 252, 23, 23, 23, 254, 54, 54, 54, 255, 195, 195, 195, 255, 211, 211, 211, 255, 45, 45, 45, 255, 17, 17, 17, 254, 115, 115, 115, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 206, 206, 206, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 199, 199, 199, 252, 59, 59, 59, 254, 37, 37, 37, 255, 181, 181, 181, 255, 215, 215, 215, 255, 70, 70, 70, 255, 11, 11, 11, 255, 189, 189, 189, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 185, 185, 185, 252, 1, 1, 1, 253, 0, 0, 0, 208, 83, 83, 83, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 57, 54, 147, 254, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 24, 21, 163, 254, 13, 13, 17, 254, 1, 1, 1, 230, 146, 146, 146, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 180, 179, 208, 252, 10, 5, 174, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 122, 120, 196, 253, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 80, 80, 80, 253, 6, 6, 6, 255, 105, 105, 105, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 191, 191, 191, 255, 15, 15, 15, 255, 37, 37, 37, 254, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 165, 165, 165, 253, 21, 21, 21, 254, 80, 80, 80, 255, 210, 210, 210, 255, 215, 215, 215, 255, 215, 215, 215, 255, 205, 205, 205, 255, 33, 33, 33, 255, 46, 46, 46, 254, 213, 213, 213, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 83, 83, 83, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 97, 96, 129, 253, 7, 2, 172, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 23, 19, 163, 254, 109, 109, 124, 252, 16, 16, 16, 254, 1, 1, 1, 230, 146, 146, 146, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 213, 213, 215, 252, 52, 48, 182, 254, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 120, 118, 196, 253, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 117, 117, 117, 252, 47, 47, 47, 254, 18, 18, 18, 255, 161, 161, 161, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 153, 153, 153, 255, 0, 0, 0, 255, 71, 71, 71, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 112, 112, 112, 253, 8, 8, 8, 255, 140, 140, 140, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 177, 177, 177, 255, 6, 6, 6, 255, 89, 89, 89, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 83, 83, 83, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 117, 117, 120, 252, 27, 23, 162, 254, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 22, 18, 164, 254, 108, 108, 124, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 146, 146, 146, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 126, 124, 197, 253, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 115, 113, 195, 253, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 101, 101, 101, 252, 21, 21, 21, 254, 56, 56, 56, 255, 196, 196, 196, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 104, 104, 104, 255, 1, 1, 1, 255, 94, 94, 94, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 196, 196, 196, 252, 55, 55, 55, 254, 39, 39, 39, 255, 182, 182, 182, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 136, 136, 136, 255, 0, 0, 0, 255, 147, 147, 147, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 83, 83, 83, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 66, 65, 143, 253, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 21, 17, 165, 255, 107, 107, 125, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 146, 146, 146, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 191, 190, 210, 252, 16, 11, 175, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 111, 109, 194, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 78, 78, 78, 253, 5, 5, 5, 255, 112, 112, 112, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 213, 213, 213, 255, 52, 52, 52, 255, 15, 15, 15, 254, 113, 113, 113, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 161, 161, 161, 253, 18, 18, 18, 254, 86, 86, 86, 255, 212, 212, 212, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 79, 79, 79, 255, 9, 9, 9, 255, 185, 185, 185, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 83, 83, 83, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 129, 129, 135, 253, 105, 103, 179, 255, 17, 12, 174, 255, 5, 0, 173, 255, 5, 0, 173, 255, 20, 16, 166, 255, 107, 106, 125, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 146, 146, 146, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 90, 87, 185, 254, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 5, 0, 173, 255, 107, 105, 193, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 116, 116, 116, 252, 44, 44, 44, 254, 21, 21, 21, 255, 164, 164, 164, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 197, 197, 197, 255, 19, 19, 19, 255, 34, 34, 34, 254, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 105, 105, 105, 253, 10, 10, 10, 255, 145, 145, 145, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 209, 209, 209, 255, 39, 39, 39, 255, 41, 41, 41, 254, 210, 210, 210, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 83, 83, 83, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 121, 121, 121, 252, 173, 173, 179, 254, 188, 188, 188, 255, 146, 146, 184, 255, 5, 1, 173, 255, 19, 15, 166, 255, 105, 105, 125, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 146, 146, 146, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 191, 191, 200, 253, 188, 188, 188, 255, 111, 109, 181, 255, 5, 0, 173, 255, 5, 0, 173, 255, 103, 101, 192, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 100, 100, 100, 252, 20, 20, 20, 254, 58, 58, 58, 255, 199, 199, 199, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 161, 161, 161, 255, 1, 1, 1, 255, 66, 66, 66, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 195, 195, 195, 252, 54, 54, 54, 254, 42, 42, 42, 255, 186, 186, 186, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 183, 183, 183, 255, 8, 8, 8, 255, 82, 82, 82, 254, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 83, 83, 83, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 149, 149, 157, 254, 188, 188, 188, 255, 188, 188, 188, 255, 188, 188, 188, 255, 60, 57, 170, 255, 104, 104, 126, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 146, 146, 146, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 204, 204, 209, 252, 184, 184, 188, 255, 188, 188, 188, 255, 188, 188, 188, 255, 43, 40, 176, 255, 99, 96, 192, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 77, 77, 77, 253, 5, 5, 5, 255, 114, 114, 114, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 113, 113, 113, 255, 1, 1, 1, 255, 90, 90, 90, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 160, 160, 160, 253, 16, 16, 16, 254, 88, 88, 88, 255, 212, 212, 212, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 145, 145, 145, 255, 0, 0, 0, 255, 139, 139, 139, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 83, 83, 83, 253, 167, 83, 83, 253, 235, 31, 31, 254, 220, 43, 43, 254, 145, 99, 99, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 128, 128, 133, 253, 185, 185, 187, 255, 188, 188, 188, 255, 188, 188, 188, 255, 179, 179, 185, 255, 126, 126, 133, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 146, 146, 146, 253, 230, 140, 140, 253, 249, 44, 44, 254, 244, 70, 70, 254, 222, 181, 181, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 187, 187, 192, 254, 188, 188, 188, 255, 188, 188, 188, 255, 188, 188, 188, 255, 159, 158, 193, 254, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 13, 13, 13, 254, 110, 110, 110, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 58, 58, 58, 255, 12, 12, 12, 255, 110, 110, 110, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 58, 58, 58, 254, 81, 81, 81, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 86, 86, 86, 255, 7, 7, 7, 255, 179, 179, 179, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 89, 78, 78, 253, 247, 23, 23, 255, 255, 17, 17, 255, 255, 17, 17, 255, 216, 46, 46, 254, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 115, 115, 115, 252, 92, 92, 92, 253, 72, 72, 72, 254, 71, 71, 71, 254, 111, 111, 111, 254, 186, 186, 187, 255, 188, 188, 188, 255, 179, 179, 186, 255, 128, 128, 134, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 148, 134, 134, 253, 253, 25, 25, 255, 255, 17, 17, 255, 255, 17, 17, 255, 242, 80, 80, 254, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 209, 209, 209, 252, 162, 162, 162, 253, 152, 152, 152, 253, 163, 163, 169, 253, 188, 188, 188, 255, 188, 188, 188, 255, 188, 188, 188, 255, 181, 181, 193, 254, 214, 214, 214, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 87, 87, 87, 253, 12, 12, 12, 255, 189, 189, 189, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 202, 202, 202, 255, 23, 23, 23, 255, 30, 30, 30, 254, 118, 118, 118, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 179, 179, 179, 252, 7, 7, 7, 255, 169, 169, 169, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 212, 212, 212, 255, 44, 44, 44, 255, 35, 35, 35, 254, 206, 206, 206, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 114, 59, 59, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 249, 20, 20, 255, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 112, 111, 111, 252, 102, 55, 55, 255, 80, 53, 53, 255, 59, 59, 59, 255, 59, 59, 59, 255, 59, 59, 59, 255, 107, 107, 109, 255, 180, 180, 186, 255, 128, 128, 135, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 156, 93, 93, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 252, 31, 31, 255, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 148, 148, 148, 253, 69, 69, 69, 255, 59, 59, 59, 255, 59, 59, 59, 255, 60, 60, 60, 255, 136, 136, 139, 255, 188, 188, 188, 255, 181, 181, 193, 254, 213, 213, 214, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 54, 54, 54, 253, 47, 47, 47, 255, 214, 214, 214, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 167, 167, 167, 255, 1, 1, 1, 255, 59, 59, 59, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 134, 134, 134, 253, 26, 26, 26, 255, 203, 203, 203, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 215, 215, 215, 255, 187, 187, 187, 255, 10, 10, 10, 255, 73, 73, 73, 254, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 113, 60, 60, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 251, 20, 20, 255, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 130, 110, 110, 252, 222, 21, 21, 254, 255, 0, 0, 255, 252, 1, 1, 255, 172, 25, 25, 255, 61, 58, 58, 255, 59, 59, 59, 255, 59, 59, 59, 255, 125, 125, 130, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 156, 94, 94, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 252, 29, 29, 255, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 207, 131, 131, 253, 206, 15, 15, 255, 201, 16, 16, 255, 110, 44, 44, 255, 59, 59, 59, 255, 59, 59, 59, 255, 61, 61, 61, 255, 175, 175, 186, 253, 213, 213, 214, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 27, 27, 27, 254, 40, 49, 122, 255, 65, 84, 237, 255, 65, 84, 237, 255, 57, 78, 238, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 236, 255, 17, 22, 66, 255, 1, 1, 1, 255, 87, 87, 87, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 74, 74, 74, 254, 22, 30, 94, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 43, 65, 240, 255, 21, 29, 93, 255, 0, 0, 0, 255, 128, 128, 128, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 112, 61, 61, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 252, 19, 19, 255, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 202, 45, 45, 254, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 165, 27, 27, 255, 59, 59, 59, 255, 59, 59, 59, 255, 114, 114, 114, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 155, 96, 96, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 253, 27, 27, 255, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 225, 159, 159, 253, 254, 1, 1, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 128, 38, 38, 255, 59, 59, 59, 255, 59, 59, 59, 255, 182, 182, 182, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 105, 105, 105, 252, 7, 7, 12, 254, 0, 22, 195, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 25, 220, 255, 0, 6, 57, 255, 33, 33, 33, 254, 44, 44, 44, 254, 55, 55, 55, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 207, 207, 207, 252, 31, 31, 31, 254, 0, 19, 165, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 26, 232, 255, 0, 10, 79, 255, 43, 43, 43, 254, 97, 97, 97, 253, 69, 69, 69, 254, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 110, 62, 62, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 254, 17, 17, 255, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 120, 118, 118, 252, 247, 6, 6, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 253, 1, 1, 255, 86, 51, 51, 255, 61, 61, 61, 255, 118, 118, 118, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 155, 98, 98, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 253, 25, 25, 255, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 243, 62, 62, 254, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 248, 2, 2, 255, 78, 53, 53, 255, 59, 59, 59, 255, 187, 187, 187, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 84, 84, 84, 253, 0, 4, 33, 255, 0, 26, 232, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 20, 175, 255, 1, 3, 20, 255, 64, 64, 64, 253, 119, 119, 119, 252, 117, 117, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 174, 174, 174, 252, 4, 5, 19, 255, 0, 24, 214, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 22, 196, 255, 0, 4, 33, 255, 90, 90, 90, 253, 212, 212, 212, 252, 213, 213, 214, 252, 214, 214, 214, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 103, 68, 68, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 128, 111, 111, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 132, 105, 105, 252, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 156, 30, 30, 255, 73, 73, 73, 254, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 153, 110, 110, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 216, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 246, 12, 12, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 157, 29, 29, 255, 64, 64, 64, 255, 212, 212, 212, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 50, 50, 50, 253, 0, 9, 82, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 242, 255, 0, 13, 115, 255, 13, 13, 14, 254, 92, 92, 92, 253, 119, 119, 119, 252, 119, 119, 119, 252, 63, 79, 187, 253, 116, 117, 122, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 127, 127, 127, 253, 0, 6, 52, 254, 0, 27, 241, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 16, 142, 255, 11, 12, 16, 255, 149, 149, 149, 253, 215, 215, 215, 252, 215, 215, 215, 252, 127, 141, 232, 253, 194, 197, 219, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 88, 79, 79, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 147, 97, 97, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 145, 86, 86, 253, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 198, 17, 17, 255, 95, 95, 95, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 148, 132, 132, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 222, 181, 181, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 216, 204, 204, 252, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 213, 13, 13, 255, 106, 106, 106, 254, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 24, 24, 24, 254, 0, 16, 145, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 25, 219, 255, 0, 6, 55, 255, 34, 34, 34, 254, 112, 112, 112, 252, 119, 119, 119, 252, 119, 119, 119, 252, 113, 114, 127, 252, 13, 45, 250, 255, 83, 94, 162, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 67, 67, 67, 254, 0, 12, 111, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 26, 231, 255, 0, 9, 78, 255, 45, 45, 45, 254, 188, 188, 188, 252, 215, 215, 215, 252, 215, 215, 215, 252, 214, 214, 215, 252, 35, 63, 250, 254, 119, 134, 233, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 83, 83, 83, 253, 238, 29, 29, 254, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 179, 73, 73, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 155, 74, 74, 253, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 206, 28, 28, 254, 118, 118, 118, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 146, 145, 145, 253, 251, 34, 34, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 231, 133, 133, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 207, 167, 167, 252, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 232, 7, 7, 255, 182, 182, 182, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 103, 103, 103, 252, 5, 6, 13, 255, 0, 23, 201, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 20, 173, 255, 1, 3, 19, 255, 66, 66, 66, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 77, 89, 170, 253, 9, 42, 255, 255, 42, 65, 213, 254, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 204, 204, 204, 252, 27, 27, 28, 254, 0, 20, 173, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 22, 195, 255, 0, 4, 32, 255, 93, 93, 93, 253, 213, 213, 213, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 166, 174, 225, 252, 9, 42, 255, 255, 42, 70, 248, 254, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 83, 83, 83, 253, 205, 55, 55, 254, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 230, 35, 35, 254, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 164, 68, 68, 253, 255, 0, 0, 255, 255, 0, 0, 255, 250, 2, 2, 255, 223, 19, 19, 254, 213, 32, 32, 254, 204, 44, 44, 254, 142, 98, 98, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 146, 146, 146, 253, 242, 83, 83, 254, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 246, 59, 59, 254, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 201, 145, 145, 253, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 254, 1, 1, 255, 232, 92, 92, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 80, 80, 80, 253, 0, 4, 37, 255, 0, 27, 235, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 242, 255, 0, 13, 113, 255, 14, 14, 14, 254, 93, 93, 93, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 39, 63, 217, 254, 9, 42, 255, 255, 11, 43, 253, 255, 109, 112, 130, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 170, 170, 170, 253, 2, 4, 21, 255, 0, 25, 219, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 16, 139, 255, 12, 13, 17, 255, 151, 151, 151, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 95, 114, 238, 253, 9, 42, 255, 255, 9, 42, 255, 255, 172, 179, 224, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 83, 83, 83, 253, 163, 86, 86, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 170, 80, 80, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 175, 64, 64, 253, 255, 0, 0, 255, 214, 27, 27, 254, 128, 103, 103, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 146, 146, 146, 253, 229, 143, 143, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 228, 147, 147, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 204, 134, 134, 253, 255, 0, 0, 255, 252, 1, 1, 255, 223, 84, 84, 253, 211, 156, 156, 253, 221, 185, 185, 252, 218, 201, 201, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 47, 47, 47, 254, 0, 10, 89, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 25, 217, 255, 0, 6, 54, 255, 35, 35, 35, 254, 112, 112, 112, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 15, 46, 247, 255, 9, 42, 255, 255, 9, 42, 255, 255, 87, 97, 158, 253, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 119, 119, 120, 253, 0, 6, 57, 255, 0, 28, 242, 255, 0, 28, 246, 255, 0, 28, 246, 255, 0, 26, 230, 255, 0, 9, 76, 255, 47, 47, 47, 254, 189, 189, 189, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 50, 76, 247, 254, 9, 42, 255, 255, 9, 42, 255, 255, 126, 141, 232, 253, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 83, 83, 83, 253, 121, 118, 118, 252, 236, 30, 30, 254, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 249, 21, 21, 255, 152, 93, 93, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 185, 59, 59, 253, 217, 24, 24, 254, 122, 114, 114, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 146, 146, 146, 253, 216, 211, 211, 252, 251, 38, 38, 254, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 253, 29, 29, 255, 224, 171, 171, 253, 215, 215, 215, 252, 215, 215, 215, 252, 210, 124, 124, 253, 251, 1, 1, 255, 213, 131, 131, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 117, 117, 117, 252, 22, 22, 22, 254, 0, 17, 153, 255, 0, 28, 246, 255, 0, 19, 171, 255, 1, 3, 19, 255, 67, 67, 67, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 12, 44, 251, 255, 9, 42, 255, 255, 9, 42, 255, 255, 85, 95, 161, 253, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 62, 62, 62, 254, 0, 13, 118, 255, 0, 28, 246, 255, 0, 22, 193, 255, 0, 4, 31, 255, 95, 95, 95, 253, 214, 214, 214, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 43, 70, 248, 254, 9, 42, 255, 255, 9, 42, 255, 255, 123, 137, 233, 253, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 83, 83, 83, 253, 119, 119, 119, 252, 167, 82, 82, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 251, 20, 20, 255, 175, 76, 76, 253, 120, 118, 118, 252, 119, 119, 119, 252, 180, 54, 54, 253, 130, 103, 103, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 146, 146, 146, 253, 215, 215, 215, 252, 231, 137, 137, 253, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 254, 24, 24, 255, 230, 137, 137, 253, 215, 214, 214, 252, 217, 117, 117, 253, 215, 98, 98, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 117, 117, 117, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 101, 101, 101, 252, 4, 5, 14, 255, 0, 11, 96, 255, 15, 15, 15, 254, 94, 94, 94, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 57, 75, 195, 253, 11, 44, 252, 255, 31, 57, 227, 254, 113, 115, 126, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 200, 200, 200, 252, 22, 22, 24, 254, 0, 11, 100, 255, 13, 14, 18, 254, 154, 154, 154, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 126, 140, 232, 253, 16, 48, 253, 255, 36, 64, 250, 254, 189, 193, 220, 252, 215, 215, 215, 252, 215, 215, 215, 252, 186, 186, 186, 252, 1, 1, 1, 253, 0, 0, 0, 208, 83, 83, 83, 253, 119, 119, 119, 252, 119, 119, 119, 252, 204, 54, 54, 254, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 229, 36, 36, 254, 144, 100, 100, 253, 128, 99, 99, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 16, 16, 16, 254, 1, 1, 1, 230, 146, 146, 146, 253, 215, 215, 215, 252, 215, 215, 215, 252, 241, 83, 83, 254, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 247, 58, 58, 254, 217, 106, 106, 253, 214, 212, 212, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 33, 33, 33, 254, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1, 1, 1, 253, 116, 116, 116, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 87, 87, 87, 253, 49, 49, 49, 253, 113, 113, 113, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 121, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 100, 100, 100, 252, 1, 1, 1, 249, 1, 1, 1, 253, 207, 207, 207, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 169, 169, 169, 253, 86, 86, 86, 253, 190, 190, 190, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 212, 213, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 185, 185, 185, 252, 1, 1, 1, 253, 0, 0, 0, 190, 72, 72, 72, 253, 119, 119, 119, 252, 119, 119, 119, 252, 125, 115, 115, 252, 216, 45, 45, 254, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 240, 28, 28, 255, 130, 111, 111, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 7, 7, 7, 253, 1, 1, 1, 210, 127, 127, 127, 253, 215, 215, 215, 252, 215, 215, 215, 252, 217, 205, 205, 252, 244, 67, 67, 254, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 250, 41, 41, 254, 218, 202, 202, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 214, 214, 214, 252, 15, 15, 15, 254, 0, 0, 0, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 1, 1, 1, 247, 102, 102, 102, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 86, 86, 86, 253, 0, 0, 0, 222, 1, 1, 1, 246, 179, 179, 179, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 159, 159, 159, 253, 1, 1, 1, 226, 0, 0, 0, 141, 45, 45, 45, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 121, 117, 117, 252, 201, 57, 57, 254, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 152, 94, 94, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 97, 97, 97, 252, 0, 0, 0, 246, 0, 0, 0, 140, 78, 78, 78, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 216, 210, 210, 252, 240, 89, 89, 254, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 255, 17, 17, 255, 223, 173, 173, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 180, 180, 180, 252, 1, 1, 1, 248, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 71, 71, 71, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 55, 55, 55, 253, 0, 0, 0, 170, 1, 1, 1, 198, 124, 124, 124, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 103, 103, 103, 253, 0, 0, 0, 176, 0, 0, 0, 47, 2, 2, 2, 248, 94, 94, 94, 253, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 158, 89, 89, 253, 235, 32, 32, 254, 255, 17, 17, 255, 255, 17, 17, 255, 242, 26, 26, 255, 130, 110, 110, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 118, 118, 118, 252, 30, 30, 30, 253, 0, 0, 0, 153, 0, 0, 0, 44, 3, 3, 3, 247, 168, 168, 168, 253, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 227, 152, 152, 253, 249, 43, 43, 254, 255, 17, 17, 255, 255, 17, 17, 255, 251, 38, 38, 255, 217, 203, 203, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 214, 214, 214, 252, 59, 59, 59, 254, 0, 0, 0, 158, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 84, 9, 9, 9, 253, 105, 105, 105, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 95, 95, 95, 253, 3, 3, 3, 250, 0, 0, 0, 55, 0, 0, 0, 80, 14, 14, 14, 254, 187, 187, 187, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 174, 174, 174, 253, 7, 7, 7, 251, 0, 0, 0, 58, 0, 0, 0, 0, 0, 0, 0, 119, 7, 7, 7, 253, 72, 72, 72, 253, 111, 111, 111, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 122, 117, 117, 252, 163, 85, 85, 253, 181, 72, 72, 253, 132, 109, 109, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 119, 119, 119, 252, 117, 117, 117, 252, 95, 95, 95, 252, 30, 30, 30, 253, 0, 0, 0, 216, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 115, 13, 13, 13, 254, 128, 128, 128, 253, 200, 200, 200, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 216, 209, 209, 252, 228, 149, 149, 253, 233, 124, 124, 253, 218, 199, 199, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 215, 215, 215, 252, 213, 213, 213, 252, 173, 173, 173, 252, 57, 57, 57, 254, 1, 1, 1, 219, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149, 8, 8, 8, 253, 67, 67, 67, 253, 97, 97, 97, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 107, 107, 107, 252, 94, 94, 94, 252, 60, 60, 60, 253, 4, 4, 4, 251, 0, 0, 0, 117, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 144, 14, 14, 14, 254, 120, 120, 120, 253, 174, 174, 174, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 194, 194, 194, 252, 170, 170, 170, 252, 111, 111, 111, 253, 9, 9, 9, 252, 0, 0, 0, 121, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, 0, 0, 0, 222, 1, 1, 1, 253, 11, 11, 11, 253, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 12, 12, 12, 254, 5, 5, 5, 253, 0, 0, 0, 245, 0, 0, 0, 153, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 75, 1, 1, 1, 220, 1, 1, 1, 253, 21, 21, 21, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 23, 23, 23, 254, 10, 10, 10, 254, 1, 1, 1, 245, 0, 0, 0, 156, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 0, 0, 0, 195, 0, 0, 0, 244, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 0, 0, 0, 240, 0, 0, 0, 186, 0, 0, 0, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, 1, 1, 1, 195, 1, 1, 1, 243, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 253, 1, 1, 1, 241, 0, 0, 0, 188, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0 ), -"format": "RGBA8", -"height": 256, -"mipmaps": false, -"width": 256 -} - -[sub_resource type="ImageTexture" id=3] -image = SubResource( 2 ) -size = Vector2( 256, 256 ) - -[sub_resource type="GDScript" id=1] -script/source = "tool -extends ProxyTexture - -func _init(): - if Directory.new().file_exists(\"res://addons/mat_maker_gd/icons/icons.svg\"): - var t : ImageTexture = ImageTexture.new() - t.load(\"res://addons/mat_maker_gd/icons/icons.svg\") - base = t -" - -[resource] -flags = 7 -base = SubResource( 3 ) -script = SubResource( 1 ) diff --git a/game/addons/mat_maker_gd/icons/link.tres b/game/addons/mat_maker_gd/icons/link.tres deleted file mode 100644 index 0e95109..0000000 --- a/game/addons/mat_maker_gd/icons/link.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="AtlasTexture" load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/icons/icons.tres" type="Texture" id=1] - -[resource] -flags = 7 -atlas = ExtResource( 1 ) -region = Rect2( 16, 0, 16, 15 ) diff --git a/game/addons/mat_maker_gd/icons/minimize.tres b/game/addons/mat_maker_gd/icons/minimize.tres deleted file mode 100644 index 7d367b4..0000000 --- a/game/addons/mat_maker_gd/icons/minimize.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="AtlasTexture" load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/icons/icons.tres" type="Texture" id=1] - -[resource] -flags = 7 -atlas = ExtResource( 1 ) -region = Rect2( 48, 96, 16, 16 ) diff --git a/game/addons/mat_maker_gd/icons/output_preview.tres b/game/addons/mat_maker_gd/icons/output_preview.tres deleted file mode 100644 index c84be54..0000000 --- a/game/addons/mat_maker_gd/icons/output_preview.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="AtlasTexture" load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/icons/icons.tres" type="Texture" id=1] - -[resource] -flags = 7 -atlas = ExtResource( 1 ) -region = Rect2( 0, 80, 16, 16 ) diff --git a/game/addons/mat_maker_gd/icons/port_group_0.tres b/game/addons/mat_maker_gd/icons/port_group_0.tres deleted file mode 100644 index ae29b24..0000000 --- a/game/addons/mat_maker_gd/icons/port_group_0.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="AtlasTexture" load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/icons/icons.tres" type="Texture" id=1] - -[resource] -flags = 7 -atlas = ExtResource( 1 ) -region = Rect2( 32, 64, 16, 16 ) diff --git a/game/addons/mat_maker_gd/icons/port_group_1.tres b/game/addons/mat_maker_gd/icons/port_group_1.tres deleted file mode 100644 index 56412cc..0000000 --- a/game/addons/mat_maker_gd/icons/port_group_1.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="AtlasTexture" load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/icons/icons.tres" type="Texture" id=1] - -[resource] -flags = 7 -atlas = ExtResource( 1 ) -region = Rect2( 32, 80, 16, 16 ) diff --git a/game/addons/mat_maker_gd/icons/port_group_2.tres b/game/addons/mat_maker_gd/icons/port_group_2.tres deleted file mode 100644 index dd08018..0000000 --- a/game/addons/mat_maker_gd/icons/port_group_2.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="AtlasTexture" load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/icons/icons.tres" type="Texture" id=1] - -[resource] -flags = 4 -atlas = ExtResource( 1 ) -region = Rect2( 32, 96, 16, 16 ) diff --git a/game/addons/mat_maker_gd/icons/port_group_3.tres b/game/addons/mat_maker_gd/icons/port_group_3.tres deleted file mode 100644 index 2943001..0000000 --- a/game/addons/mat_maker_gd/icons/port_group_3.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="AtlasTexture" load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/icons/icons.tres" type="Texture" id=1] - -[resource] -flags = 7 -atlas = ExtResource( 1 ) -region = Rect2( 32, 112, 16, 16 ) diff --git a/game/addons/mat_maker_gd/icons/randomness_locked.tres b/game/addons/mat_maker_gd/icons/randomness_locked.tres deleted file mode 100644 index 48fcc12..0000000 --- a/game/addons/mat_maker_gd/icons/randomness_locked.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="AtlasTexture" load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/icons/icons.tres" type="Texture" id=1] - -[resource] -flags = 4 -atlas = ExtResource( 1 ) -region = Rect2( 80, 32, 16, 16 ) diff --git a/game/addons/mat_maker_gd/icons/randomness_unlocked.tres b/game/addons/mat_maker_gd/icons/randomness_unlocked.tres deleted file mode 100644 index 9ec871f..0000000 --- a/game/addons/mat_maker_gd/icons/randomness_unlocked.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="AtlasTexture" load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/icons/icons.tres" type="Texture" id=1] - -[resource] -flags = 7 -atlas = ExtResource( 1 ) -region = Rect2( 64, 32, 16, 16 ) diff --git a/game/addons/mat_maker_gd/icons/remove.tres b/game/addons/mat_maker_gd/icons/remove.tres deleted file mode 100644 index b1f1c2f..0000000 --- a/game/addons/mat_maker_gd/icons/remove.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="AtlasTexture" load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/icons/icons.tres" type="Texture" id=1] - -[resource] -flags = 7 -atlas = ExtResource( 1 ) -region = Rect2( 32, 0, 16, 16 ) diff --git a/game/addons/mat_maker_gd/icons/up.tres b/game/addons/mat_maker_gd/icons/up.tres deleted file mode 100644 index ab48648..0000000 --- a/game/addons/mat_maker_gd/icons/up.tres +++ /dev/null @@ -1,8 +0,0 @@ -[gd_resource type="AtlasTexture" load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/icons/icons.tres" type="Texture" id=1] - -[resource] -flags = 4 -atlas = ExtResource( 1 ) -region = Rect2( 16, 48, 16, 16 ) diff --git a/game/addons/mat_maker_gd/new_resource.tres b/game/addons/mat_maker_gd/new_resource.tres deleted file mode 100644 index 80dc226..0000000 --- a/game/addons/mat_maker_gd/new_resource.tres +++ /dev/null @@ -1,509 +0,0 @@ -[gd_resource type="MMMaterial" load_steps=91 format=2] - -[ext_resource path="res://addons/mat_maker_gd/nodes/filter/colorize.gd" type="Script" id=1] -[ext_resource path="res://addons/mat_maker_gd/nodes/noise/voronoi.gd" type="Script" id=3] -[ext_resource path="res://addons/mat_maker_gd/nodes/filter/invert.gd" type="Script" id=4] -[ext_resource path="res://addons/mat_maker_gd/nodes/filter/combine.gd" type="Script" id=6] -[ext_resource path="res://addons/mat_maker_gd/nodes/transform/scale.gd" type="Script" id=7] -[ext_resource path="res://addons/mat_maker_gd/nodes/transform/repeat.gd" type="Script" id=8] -[ext_resource path="res://addons/mat_maker_gd/nodes/transform/shear.gd" type="Script" id=9] -[ext_resource path="res://addons/mat_maker_gd/nodes/transform/mirror.gd" type="Script" id=10] -[ext_resource path="res://addons/mat_maker_gd/nodes/transform/transform.gd" type="Script" id=11] -[ext_resource path="res://addons/mat_maker_gd/nodes/transform/circle_map.gd" type="Script" id=12] -[ext_resource path="res://addons/mat_maker_gd/nodes/transform/rotate.gd" type="Script" id=13] -[ext_resource path="res://addons/mat_maker_gd/nodes/filter/tonality.gd" type="Script" id=14] -[ext_resource path="res://addons/mat_maker_gd/nodes/filter/fill_to_position.gd" type="Script" id=15] -[ext_resource path="res://addons/mat_maker_gd/nodes/simple/shape.gd" type="Script" id=16] -[ext_resource path="res://addons/mat_maker_gd/nodes/filter/fill_to_uv.gd" type="Script" id=17] -[ext_resource path="res://addons/mat_maker_gd/nodes/filter/fill_to_random_grey.gd" type="Script" id=18] -[ext_resource path="res://addons/mat_maker_gd/nodes/filter/math.gd" type="Script" id=19] -[ext_resource path="res://addons/mat_maker_gd/nodes/transform/color_tiler.gd" type="Script" id=20] - -[sub_resource type="MMNodeUniversalProperty" id=5] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=6] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=7] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=2] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNode" id=8] -graph_position = Vector2( -160, 40 ) -output_properties = [ null, null, null, null, SubResource( 7 ), SubResource( 5 ), SubResource( 2 ), SubResource( 6 ) ] -script = ExtResource( 3 ) -out_nodes = SubResource( 7 ) -out_borders = SubResource( 5 ) -out_random_color = SubResource( 2 ) -out_fill = SubResource( 6 ) -scale = Vector2( 13.6, 18.9 ) -stretch = Vector2( 2.13, 2.13 ) -intensity = 1.07 -randomness = 0.89 - -[sub_resource type="MMNodeUniversalProperty" id=9] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=10] -default_type = 4 -input_slot_type = 6 -slot_name = ">>> Input1 " - -[sub_resource type="MMNode" id=11] -graph_position = Vector2( 380, 80 ) -input_properties = [ null, SubResource( 10 ) ] -output_properties = [ null, SubResource( 9 ) ] -script = ExtResource( 4 ) -image = SubResource( 9 ) -input = SubResource( 10 ) - -[sub_resource type="MMNodeUniversalProperty" id=12] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=13] -default_type = 1 -default_float = 1.0 -input_slot_type = 6 -slot_name = ">>> A " - -[sub_resource type="MMNodeUniversalProperty" id=14] -default_type = 1 -input_slot_type = 6 -slot_name = ">>> B " -input_property = SubResource( 7 ) - -[sub_resource type="MMNodeUniversalProperty" id=15] -default_type = 1 -input_slot_type = 6 -slot_name = ">>> G " -input_property = SubResource( 2 ) - -[sub_resource type="MMNodeUniversalProperty" id=16] -default_type = 1 -input_slot_type = 6 -slot_name = ">>> R " -input_property = SubResource( 5 ) - -[sub_resource type="MMNode" id=17] -graph_position = Vector2( 380, 380 ) -input_properties = [ null, null, null, null, SubResource( 16 ), SubResource( 15 ), SubResource( 14 ), SubResource( 13 ) ] -output_properties = [ null, SubResource( 12 ) ] -script = ExtResource( 6 ) -image = SubResource( 12 ) -input_r = SubResource( 16 ) -input_g = SubResource( 15 ) -input_b = SubResource( 14 ) -input_a = SubResource( 13 ) - -[sub_resource type="MMNodeUniversalProperty" id=18] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=19] -default_type = 4 -input_slot_type = 6 -slot_name = ">>> Input1 " -input_property = SubResource( 12 ) - -[sub_resource type="MMNode" id=20] -graph_position = Vector2( 1080, 180 ) -input_properties = [ null, SubResource( 19 ) ] -output_properties = [ null, SubResource( 18 ) ] -script = ExtResource( 7 ) -image = SubResource( 18 ) -input = SubResource( 19 ) -center = Vector2( 1, 1 ) -scale = Vector2( 1.3, 1.3 ) - -[sub_resource type="MMNodeUniversalProperty" id=21] -default_type = 4 -get_value_from_owner = true -input_slot_type = 6 -output_slot_type = 6 -slot_name = ">>> Apply >>>" -input_property = SubResource( 12 ) - -[sub_resource type="MMNode" id=22] -graph_position = Vector2( 560, 300 ) -input_properties = [ null, SubResource( 21 ) ] -output_properties = [ null, SubResource( 21 ) ] -script = ExtResource( 8 ) -input = SubResource( 21 ) - -[sub_resource type="MMNodeUniversalProperty" id=23] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=24] -default_type = 4 -input_slot_type = 6 -slot_name = ">>> Input " -input_property = SubResource( 21 ) - -[sub_resource type="MMNode" id=25] -graph_position = Vector2( 860, 200 ) -input_properties = [ null, SubResource( 24 ) ] -output_properties = [ null, SubResource( 23 ) ] -script = ExtResource( 9 ) -image = SubResource( 23 ) -input = SubResource( 24 ) -direction = 0 -amount = 1.06 -center = 0.0 - -[sub_resource type="MMNodeUniversalProperty" id=26] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=27] -default_type = 4 -input_slot_type = 6 -slot_name = ">>> Input " -input_property = SubResource( 21 ) - -[sub_resource type="MMNode" id=28] -graph_position = Vector2( 620, 460 ) -input_properties = [ null, SubResource( 27 ) ] -output_properties = [ null, SubResource( 26 ) ] -script = ExtResource( 10 ) -image = SubResource( 26 ) -input = SubResource( 27 ) -direction = 0 -offset = 0.32 - -[sub_resource type="MMNodeUniversalProperty" id=32] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=33] -default_type = 4 -input_slot_type = 6 -slot_name = ">>> Input " -input_property = SubResource( 21 ) - -[sub_resource type="MMNode" id=34] -graph_position = Vector2( 820, 580 ) -input_properties = [ null, SubResource( 33 ) ] -output_properties = [ null, SubResource( 32 ) ] -script = ExtResource( 12 ) -image = SubResource( 32 ) -input = SubResource( 33 ) -radius = 1.0 -repeat = 4 - -[sub_resource type="MMNodeUniversalProperty" id=35] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=36] -default_type = 4 -input_slot_type = 6 -slot_name = ">>> Input1 " - -[sub_resource type="MMNode" id=37] -graph_position = Vector2( 1040, 560 ) -input_properties = [ null, SubResource( 36 ) ] -output_properties = [ null, SubResource( 35 ) ] -script = ExtResource( 13 ) -image = SubResource( 35 ) -input = SubResource( 36 ) -center = Vector2( 0.13, 0 ) -rotate = 150.0 - -[sub_resource type="MMNodeUniversalProperty" id=38] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=39] -default_type = 4 -input_slot_type = 6 -slot_name = ">>> Input " -input_property = SubResource( 21 ) - -[sub_resource type="MMNodeUniversalProperty" id=43] -default_type = 1 -default_float = 4.1 -input_slot_type = 6 -slot_name = "Translate X" - -[sub_resource type="MMNodeUniversalProperty" id=44] -default_type = 1 -default_float = 2.2 -input_slot_type = 6 -slot_name = "Translate Y" - -[sub_resource type="MMNodeUniversalProperty" id=40] -default_type = 1 -default_float = 14.5 -input_slot_type = 6 -slot_name = "Rotate" -input_property = SubResource( 32 ) - -[sub_resource type="MMNodeUniversalProperty" id=41] -default_type = 1 -default_float = 1.6 -input_slot_type = 6 -slot_name = "Scale X" - -[sub_resource type="MMNodeUniversalProperty" id=42] -default_type = 1 -default_float = 1.1 -input_slot_type = 6 -slot_name = "Scale Y" - -[sub_resource type="MMNode" id=45] -graph_position = Vector2( 1280, 560 ) -input_properties = [ null, null, null, null, null, null, SubResource( 39 ), SubResource( 43 ), SubResource( 44 ), SubResource( 40 ), SubResource( 41 ), SubResource( 42 ) ] -output_properties = [ null, SubResource( 38 ) ] -script = ExtResource( 11 ) -image = SubResource( 38 ) -input = SubResource( 39 ) -translate_x = SubResource( 43 ) -translate_y = SubResource( 44 ) -rotate = SubResource( 40 ) -scale_x = SubResource( 41 ) -scale_y = SubResource( 42 ) -mode = 1 - -[sub_resource type="MMNodeUniversalProperty" id=46] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=47] -default_type = 1 -input_slot_type = 6 -slot_name = ">>> Input " -input_property = SubResource( 23 ) - -[sub_resource type="MMNode" id=48] -graph_position = Vector2( 620, 0 ) -input_properties = [ null, SubResource( 47 ) ] -output_properties = [ null, SubResource( 46 ) ] -script = ExtResource( 14 ) -points = [ 0.0, 0.0, 0.0, 1.0, 0.284455, 0.780757, 0.0, 0.0, 0.735577, 0.159306, 0.0, 0.0, 1.0, 1.0, 1.0, 0.0 ] -image = SubResource( 46 ) -input = SubResource( 47 ) - -[sub_resource type="MMNodeUniversalProperty" id=49] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=50] -default_type = 4 -input_slot_type = 6 -slot_name = ">>> Input " - -[sub_resource type="MMNode" id=51] -graph_position = Vector2( 120, 440 ) -input_properties = [ null, SubResource( 50 ) ] -output_properties = [ null, SubResource( 49 ) ] -script = ExtResource( 15 ) -image = SubResource( 49 ) -input = SubResource( 50 ) -axis = 2 - -[sub_resource type="MMNodeUniversalProperty" id=52] -default_type = 1 -default_float = 0.1 -input_slot_type = 6 -slot_name = "edge" -value_step = 0.05 - -[sub_resource type="MMNodeUniversalProperty" id=53] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=54] -default_type = 1 -default_float = 1.3 -input_slot_type = 6 -slot_name = "radius" -value_step = 0.05 -input_property = SubResource( 2 ) - -[sub_resource type="MMNode" id=55] -graph_position = Vector2( -440, 200 ) -input_properties = [ null, null, SubResource( 54 ), SubResource( 52 ) ] -output_properties = [ null, SubResource( 53 ) ] -script = ExtResource( 16 ) -image = SubResource( 53 ) -shape_type = 2 -sides = 7 -radius = SubResource( 54 ) -edge = SubResource( 52 ) - -[sub_resource type="MMNodeUniversalProperty" id=56] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=59] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=57] -default_type = 4 -input_slot_type = 6 -slot_name = ">>> Input " -input_property = SubResource( 59 ) - -[sub_resource type="MMNode" id=58] -graph_position = Vector2( 580, 800 ) -input_properties = [ null, SubResource( 57 ) ] -output_properties = [ null, SubResource( 56 ) ] -script = ExtResource( 17 ) -image = SubResource( 56 ) -input = SubResource( 57 ) -mode = 0 - -[sub_resource type="MMNodeUniversalProperty" id=60] -default_type = 4 -input_slot_type = 6 -slot_name = ">>> Input " -input_property = SubResource( 12 ) - -[sub_resource type="MMNode" id=61] -graph_position = Vector2( 320, 700 ) -input_properties = [ null, SubResource( 60 ) ] -output_properties = [ null, SubResource( 59 ) ] -script = ExtResource( 18 ) -image = SubResource( 59 ) -input = SubResource( 60 ) -edge_color = 0.9 - -[sub_resource type="MMNodeUniversalProperty" id=63] -default_type = 1 -input_slot_type = 6 -slot_name = ">>> A " -value_step = 0.01 -value_range = Vector2( 0, 1 ) -input_property = SubResource( 5 ) - -[sub_resource type="MMNodeUniversalProperty" id=64] -default_type = 1 -input_slot_type = 6 -slot_name = ">>> B " -value_step = 0.01 -value_range = Vector2( 0, 1 ) -input_property = SubResource( 53 ) - -[sub_resource type="MMNodeUniversalProperty" id=65] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=62] -default_type = 1 -get_value_from_owner = true -output_slot_type = 6 -slot_name = " Output >>>" - -[sub_resource type="MMNode" id=66] -graph_position = Vector2( -720, 280 ) -input_properties = [ null, null, SubResource( 63 ), SubResource( 64 ) ] -output_properties = [ null, null, SubResource( 62 ), SubResource( 65 ) ] -script = ExtResource( 19 ) -image = SubResource( 65 ) -a = SubResource( 63 ) -b = SubResource( 64 ) -output = SubResource( 62 ) -operation = 3 -clamp_result = true - -[sub_resource type="MMNodeUniversalProperty" id=67] -default_type = 1 -default_float = 1.0 -input_slot_type = 6 -slot_name = ">>> Mask " - -[sub_resource type="MMNodeUniversalProperty" id=68] -default_type = 4 -input_slot_type = 6 -slot_name = ">>> Input " - -[sub_resource type="MMNodeUniversalProperty" id=69] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=70] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNode" id=71] -graph_position = Vector2( -1060, 280 ) -input_properties = [ null, null, SubResource( 68 ), SubResource( 67 ) ] -output_properties = [ null, null, SubResource( 70 ), SubResource( 69 ) ] -script = ExtResource( 20 ) -input = SubResource( 68 ) -in_mask = SubResource( 67 ) -output = SubResource( 70 ) -instance_map = SubResource( 69 ) -tile = Vector2( 4, 4 ) -overlap = 1.0 -select_inputs = 0 -scale = Vector2( 0.5, 0.5 ) -fixed_offset = 0.0 -rnd_offset = 0.28 -rnd_rotate = 100.0 -rnd_scale = 0.2 -rnd_opacity = 0.0 -variations = false - -[sub_resource type="MMNodeUniversalProperty" id=74] -default_type = 1 -default_float = 0.65 -input_slot_type = 6 -slot_name = "edge" -value_step = 0.05 - -[sub_resource type="MMNodeUniversalProperty" id=72] -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=75] -default_type = 1 -default_float = 0.3 -input_slot_type = 6 -slot_name = "radius" -value_step = 0.05 - -[sub_resource type="MMNode" id=73] -graph_position = Vector2( -340, -420 ) -input_properties = [ null, null, SubResource( 75 ), SubResource( 74 ) ] -output_properties = [ null, SubResource( 72 ) ] -script = ExtResource( 16 ) -image = SubResource( 72 ) -shape_type = 1 -sides = 12 -radius = SubResource( 75 ) -edge = SubResource( 74 ) - -[sub_resource type="MMNodeUniversalProperty" id=76] -default_type = 5 -output_slot_type = 0 - -[sub_resource type="MMNodeUniversalProperty" id=77] -default_type = 1 -default_float = 1.0 -input_slot_type = 6 -slot_name = ">>> Input1 " -input_property = SubResource( 72 ) - -[sub_resource type="MMNode" id=78] -graph_position = Vector2( -80, -520 ) -input_properties = [ null, SubResource( 77 ) ] -output_properties = [ null, SubResource( 76 ) ] -script = ExtResource( 1 ) -interpolation_type = 2 -points = PoolRealArray( 0, 0, 0, 0, 1, 0.458472, 0.921875, 0.860657, 0.860657, 1, 1, 1, 0, 0, 1 ) -image = SubResource( 76 ) -input = SubResource( 77 ) - -[resource] -nodes = [ SubResource( 8 ), SubResource( 11 ), SubResource( 17 ), SubResource( 20 ), SubResource( 22 ), SubResource( 25 ), SubResource( 28 ), SubResource( 34 ), SubResource( 37 ), SubResource( 45 ), SubResource( 48 ), SubResource( 51 ), SubResource( 55 ), SubResource( 58 ), SubResource( 61 ), SubResource( 66 ), SubResource( 71 ), SubResource( 73 ), SubResource( 78 ) ] diff --git a/game/addons/mat_maker_gd/nodes/bases/curve_base.gd b/game/addons/mat_maker_gd/nodes/bases/curve_base.gd deleted file mode 100644 index 76daea5..0000000 --- a/game/addons/mat_maker_gd/nodes/bases/curve_base.gd +++ /dev/null @@ -1,118 +0,0 @@ -tool -extends MMNode - -class Point: - var p : Vector2 - var ls : float - var rs : float - func _init(x : float, y : float, nls : float, nrs : float) -> void: - p = Vector2(x, y) - ls = nls - rs = nrs - -export(PoolRealArray) var points - -func init_points_01(): - if points.size() == 0: - points = [ 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 0.0 ] - -func init_points_11(): - if points.size() == 0: - points = [ 0.0, 1.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.0 ] - -func to_string() -> String: - var rv = PoolStringArray() - for p in points: - rv.append("("+str(p.x)+","+str(p.y)+","+str(p.ls)+","+str(p.rs)+")") - - return rv.join(",") - -func clear() -> void: - points.clear() - curve_changed() - -func add_point(x : float, y : float, ls : float = INF, rs : float = INF) -> void: - var indx : int = points.size() / 4 - - for i in indx: - var ii : int = i * 4 - if x < points[ii]: - if ls == INF: - ls == 0 - if rs == INF: - rs == 0 - - points.insert(ii, x) - points.insert(ii + 1, y) - points.insert(ii + 2, ls) - points.insert(ii + 3, rs) - - curve_changed() - return - - points.append(x) - points.append(y) - points.append(ls) - points.append(rs) - - curve_changed() - -func remove_point(i : int) -> bool: - var index : int = i * 4 - - if index <= 0 or index >= points.size() - 1: - return false - else: - points.remove(index) - points.remove(index) - points.remove(index) - points.remove(index) - - curve_changed() - return true - -func get_point_count() -> int: - return points.size() / 4 - -func set_point(i : int, v : Point) -> void: - var indx : int = i * 4 - - points[indx + 0] = v.p.x - points[indx + 1] = v.p.y - points[indx + 2] = v.ls - points[indx + 3] = v.rs - - curve_changed() - -func get_point(i : int) -> Point: - var indx : int = i * 4 - - return Point.new(points[indx + 0], points[indx + 1], points[indx + 2], points[indx + 3]) - -func get_points() -> Array: - var arr : Array = Array() - - var c : int = get_point_count() - - for i in range(c): - arr.append(get_point(i)) - - return arr - -func set_points(arr : Array, notify : bool = true) -> void: - points.resize(0) - - for p in arr: - points.append(p.p.x) - points.append(p.p.y) - points.append(p.ls) - points.append(p.rs) - - if notify: - curve_changed() - -func curve_changed() -> void: - _curve_changed() - -func _curve_changed() -> void: - emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/bases/gradient_base.gd b/game/addons/mat_maker_gd/nodes/bases/gradient_base.gd deleted file mode 100644 index 369614f..0000000 --- a/game/addons/mat_maker_gd/nodes/bases/gradient_base.gd +++ /dev/null @@ -1,64 +0,0 @@ -tool -extends MMNode - -#var Gradients = preload("res://addons/mat_maker_gd/nodes/common/gradients.gd") - -export(int) var interpolation_type : int = 1 setget set_interpolation_type, get_interpolation_type -export(PoolRealArray) var points : PoolRealArray = PoolRealArray() - -func get_gradient_color(x : float) -> Color: -# if interpolation_type == 0: -# return Gradients.gradient_type_1(x, points) -# elif interpolation_type == 1: -# return Gradients.gradient_type_2(x, points) -# elif interpolation_type == 2: -# return Gradients.gradient_type_3(x, points) -# elif interpolation_type == 3: -# return Gradients.gradient_type_4(x, points) - - return Color(1, 1, 1, 1) - -func get_interpolation_type() -> int: - return interpolation_type - -func set_interpolation_type(val : int) -> void: - interpolation_type = val - - set_dirty(true) - -func get_points() -> PoolRealArray: - return points - -func set_points(val : PoolRealArray) -> void: - points = val - - set_dirty(true) - -func get_point_value(index : int) -> float: - return points[index * 5] - -func get_point_color(index : int) -> Color: - var indx : int = index * 5 - - return Color(points[indx + 1], points[indx + 2], points[indx + 3], points[indx + 4]) - -func add_point(val : float, color : Color) -> void: - var s : int = points.size() - points.resize(s + 5) - - points[s] = val - - points[s + 1] = color.r - points[s + 2] = color.g - points[s + 3] = color.b - points[s + 4] = color.a - - set_dirty(true) - -func get_point_count() -> int: - return points.size() / 5 - -func clear() -> void: - points.resize(0) - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/bases/polygon_base.gd b/game/addons/mat_maker_gd/nodes/bases/polygon_base.gd deleted file mode 100644 index a740455..0000000 --- a/game/addons/mat_maker_gd/nodes/bases/polygon_base.gd +++ /dev/null @@ -1,73 +0,0 @@ -tool -extends MMNode - -export(PoolVector2Array) var points : PoolVector2Array = [Vector2(0.2, 0.2), Vector2(0.7, 0.4), Vector2(0.4, 0.7)] - -func clear() -> void: - points.resize(0) - - _polygon_changed() - -func add_point(x : float, y : float, closed : bool = true) -> void: - var p : Vector2 = Vector2(x, y) - var points_count = points.size() - - if points_count < 3: - points.append(p) - _polygon_changed() - return - - var min_length : float = (p-Geometry.get_closest_point_to_segment_2d(p, points[0], points[points_count-1])).length() - var insert_point = 0 - - for i in points_count-1: - var length = (p - Geometry.get_closest_point_to_segment_2d(p, points[i], points[i+1])).length() - if length < min_length: - min_length = length - insert_point = i+1 - - if !closed and insert_point == 0 and (points[0]-p).length() > (points[points_count-1]-p).length(): - insert_point = points_count - - points.insert(insert_point, p) - - _polygon_changed() - -func remove_point(index : int) -> bool: - var s = points.size() - if s < 4 or index < 0 or index >= s: - return false - else: - points.remove(index) - _polygon_changed() - - return true - -func get_point_count() -> int: - return points.size() - -func get_point(i : int) -> Vector2: - return points[i] - -func set_point(i : int, v : Vector2) -> void: - points[i] = v - - _polygon_changed() - -func set_points(v : PoolVector2Array) -> void: - points = v - - _polygon_changed() - -func polygon_changed() -> void: - _polygon_changed() - -func _polygon_changed() -> void: - emit_changed() - -func to_string() -> String: - var rv = PoolStringArray() - for p in points: - rv.append("("+str(p.x)+","+str(p.y)+")") - - return rv.join(",") diff --git a/game/addons/mat_maker_gd/nodes/filter/adjust_hsv.gd b/game/addons/mat_maker_gd/nodes/filter/adjust_hsv.gd deleted file mode 100644 index b840d89..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/adjust_hsv.gd +++ /dev/null @@ -1,72 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(float) var hue : float = 0 -export(float) var saturation : float = 1 -export(float) var value : float = 1 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input1 " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_float("get_hue", "set_hue", "Hue", 0.01) - mm_graph_node.add_slot_float("get_saturation", "set_saturation", "Saturation", 0.01) - mm_graph_node.add_slot_float("get_value", "set_value", "Value", 0.01) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var c : Color = input.get_value(uv) - - return MMAlgos.adjust_hsv(c, hue, saturation, value) - -#hue -func get_hue() -> float: - return hue - -func set_hue(val : float) -> void: - hue = val - - set_dirty(true) - -#saturation -func get_saturation() -> float: - return saturation - -func set_saturation(val : float) -> void: - saturation = val - - set_dirty(true) - -#value -func get_value() -> float: - return value - -func set_value(val : float) -> void: - value = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/filter/blend.gd b/game/addons/mat_maker_gd/nodes/filter/blend.gd deleted file mode 100644 index 3d32535..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/blend.gd +++ /dev/null @@ -1,123 +0,0 @@ -tool -extends MMNode - -enum BlendType { - NORMAL = 0, - DISSOLVE, - MULTIPLY, - SCREEN, - OVERLAY, - HARD_LIGHT, - SOFT_LIGHT, - BURN, - DODGE, - LIGHTEN, - DARKEN, - DIFFRENCE -} - -export(Resource) var image : Resource -export(Resource) var input1 : Resource -export(Resource) var input2 : Resource -export(int, "Normal,Dissolve,Multiply,Screen,Overlay,Hard Light,Soft Light,Burn,Dodge,Lighten,Darken,Difference") var blend_type : int = 0 -export(Resource) var opacity : Resource - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !input1: - input1 = MMNodeUniversalProperty.new() - input1.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input1.set_default_value(Color(1, 1, 1, 1)) - - input1.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input1.slot_name = ">>> Input1 " - - if !input2: - input2 = MMNodeUniversalProperty.new() - input2.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input2.set_default_value(Color(1, 1, 1, 1)) - - input2.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input2.slot_name = ">>> Input2 " - - if !opacity: - opacity = MMNodeUniversalProperty.new() - opacity.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - opacity.set_default_value(0.5) - opacity.value_range = Vector2(0, 1) - opacity.value_step = 0.01 - - opacity.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - opacity.slot_name = "opacity" - - register_input_property(input1) - register_input_property(input2) - - register_output_property(image) - register_input_property(opacity) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_enum("get_blend_type", "set_blend_type", "blend_type", [ "Normal", "Dissolve", "Multiply", "Screen", "Overlay", "Hard Light", "Soft Light", "Burn", "Dodge", "Lighten", "Darken", "Difference" ]) - - mm_graph_node.add_slot_label_universal(input1) - mm_graph_node.add_slot_label_universal(input2) - mm_graph_node.add_slot_float_universal(opacity) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var b : Vector3 = Vector3() - - #vec4 $(name_uv)_s1 = $s1($uv); - var s1 : Color = input1.get_value(uv) - #vec4 $(name_uv)_s2 = $s2($uv); - var s2 : Color = input2.get_value(uv) - #float $(name_uv)_a = $amount*$a($uv); - var a : float = opacity.get_value(uv) - - #vec4(blend_$blend_type($uv, $(name_uv)_s1.rgb, $(name_uv)_s2.rgb, $(name_uv)_a*$(name_uv)_s1.a), min(1.0, $(name_uv)_s2.a+$(name_uv)_a*$(name_uv)_s1.a)) - - #"Normal,Dissolve,Multiply,Screen,Overlay,Hard Light,Soft Light,Burn,Dodge,Lighten,Darken,Difference" - if blend_type == BlendType.NORMAL: - b = MMAlgos.blend_normal(uv, Vector3(s1.r, s1.g, s1.b), Vector3(s2.r, s2.g, s2.b), a * s1.a) - elif blend_type == BlendType.DISSOLVE: - b = MMAlgos.blend_dissolve(uv, Vector3(s1.r, s1.g, s1.b), Vector3(s2.r, s2.g, s2.b), a * s1.a) - elif blend_type == BlendType.MULTIPLY: - b = MMAlgos.blend_multiply(uv, Vector3(s1.r, s1.g, s1.b), Vector3(s2.r, s2.g, s2.b), a * s1.a) - elif blend_type == BlendType.SCREEN: - b = MMAlgos.blend_screen(uv, Vector3(s1.r, s1.g, s1.b), Vector3(s2.r, s2.g, s2.b), a * s1.a) - elif blend_type == BlendType.OVERLAY: - b = MMAlgos.blend_overlay(uv, Vector3(s1.r, s1.g, s1.b), Vector3(s2.r, s2.g, s2.b), a * s1.a) - elif blend_type == BlendType.HARD_LIGHT: - b = MMAlgos.blend_hard_light(uv, Vector3(s1.r, s1.g, s1.b), Vector3(s2.r, s2.g, s2.b), a * s1.a) - elif blend_type == BlendType.SOFT_LIGHT: - b = MMAlgos.blend_soft_light(uv, Vector3(s1.r, s1.g, s1.b), Vector3(s2.r, s2.g, s2.b), a * s1.a) - elif blend_type == BlendType.BURN: - b = MMAlgos.blend_burn(uv, Vector3(s1.r, s1.g, s1.b), Vector3(s2.r, s2.g, s2.b), a * s1.a) - elif blend_type == BlendType.DODGE: - b = MMAlgos.blend_dodge(uv, Vector3(s1.r, s1.g, s1.b), Vector3(s2.r, s2.g, s2.b), a * s1.a) - elif blend_type == BlendType.LIGHTEN: - b = MMAlgos.blend_lighten(uv, Vector3(s1.r, s1.g, s1.b), Vector3(s2.r, s2.g, s2.b), a * s1.a) - elif blend_type == BlendType.DARKEN: - b = MMAlgos.blend_darken(uv, Vector3(s1.r, s1.g, s1.b), Vector3(s2.r, s2.g, s2.b), a * s1.a) - elif blend_type == BlendType.DIFFRENCE: - b = MMAlgos.blend_difference(uv, Vector3(s1.r, s1.g, s1.b), Vector3(s2.r, s2.g, s2.b), a * s1.a) - - return Color(b.x, b.y, b.z, min(1, s2.a + a * s1.a)) - -func get_blend_type() -> int: - return blend_type - -func set_blend_type(val : int) -> void: - blend_type = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/filter/blur_gaussian.gd b/game/addons/mat_maker_gd/nodes/filter/blur_gaussian.gd deleted file mode 100644 index d61595b..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/blur_gaussian.gd +++ /dev/null @@ -1,218 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(Resource) var sigma : Resource -export(int, "Both,X,Y") var direction : int = 0 - -var size : int = 0 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color()) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input1 " - - if !sigma: - sigma = MMNodeUniversalProperty.new() - sigma.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - sigma.set_default_value(50) - - sigma.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - sigma.slot_name = "Sigma" - - register_input_property(input) - register_output_property(image) - register_input_property(sigma) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_int_universal(sigma) - - mm_graph_node.add_slot_enum("get_direction", "set_direction", "Direction", [ "Both", "X", "Y" ]) - - -func _render(material) -> void: - size = max(material.image_size.x, material.image_size.y) - - var img : Image = render_image(material) - - image.set_value(img) - -func _render_image(material) -> Image: - var img : Image = Image.new() - img.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - - img.lock() - - var w : float = img.get_width() - var h : float = img.get_width() - - var pseed : float = randf() + randi() - - if direction == 0: - for x in range(img.get_width()): - for y in range(img.get_height()): - var v : Vector2 = Vector2(x / w, y / h) - var col : Color = get_value_x(v, pseed) - img.set_pixel(x, y, col) - - img.unlock() - image.set_value(img) - - var image2 : Image = Image.new() - image2.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - image2.lock() - - for x in range(img.get_width()): - for y in range(img.get_height()): - var v : Vector2 = Vector2(x / w, y / h) - var col : Color = get_value_y_img(v, pseed) - image2.set_pixel(x, y, col) - - image2.unlock() - - return image2 - - if direction == 1: - for x in range(img.get_width()): - for y in range(img.get_height()): - var v : Vector2 = Vector2(x / w, y / h) - var col : Color = get_value_x(v, pseed) - img.set_pixel(x, y, col) - - if direction == 2: - for x in range(img.get_width()): - for y in range(img.get_height()): - var v : Vector2 = Vector2(x / w, y / h) - var col : Color = get_value_y(v, pseed) - img.set_pixel(x, y, col) - - img.unlock() - - return img - -func get_value_x(uv : Vector2, pseed : int) -> Color: - var sig_def : float = sigma.get_default_value(uv) - var sig : float = sigma.get_value(uv) - - return gaussian_blur_x(uv, size, sig_def, sig) - -func get_value_y(uv : Vector2, pseed : int) -> Color: - var sig_def : float = sigma.get_default_value(uv) - var sig : float = sigma.get_value(uv) - - return gaussian_blur_y(uv, size, sig_def, sig) - -func get_value_y_img(uv : Vector2, pseed : int) -> Color: - var sig_def : float = sigma.get_default_value(uv) - var sig : float = sigma.get_value(uv) - - return gaussian_blur_y_img(uv, size, sig_def, sig) - -func get_direction() -> int: - return direction - -func set_direction(val : int) -> void: - direction = val - - set_dirty(true) - -#---------------------- -#gaussian_blur_x.mmg - -#vec4 $(name)_fct(vec2 uv) { -# float e = 1.0 / $size; -# vec4 rv = vec4(0.0); -# float sum = 0.0; -# float sigma = max(0.000001, $sigma * $amount(uv)); -# -# for (float i = -50.0; i <= 50.0; i += 1.0) { -# float coef = exp(-0.5 * (pow(i / sigma, 2.0))) / (6.28318530718 * sigma * sigma); -# rv += $in(uv+vec2(i*e, 0.0))*coef; -# sum += coef; -# } -# -# return rv/sum; -#} - -func gaussian_blur_x(uv : Vector2, psize : float, psigma : float, pamount : float) -> Color: - var e : float = 1.0 / psize - var rv : Color = Color() - var sum : float = 0.0 - var sigma : float = max(0.000001, psigma * pamount)#pamount(uv)) - - var i : float = -50 - - while i <= 50: #for (float i = -50.0; i <= 50.0; i += 1.0) { - var coef : float = exp(-0.5 * (pow(i / sigma, 2.0))) / (6.28318530718 * sigma * sigma) - rv += input.get_value(uv + Vector2(i*e, 0.0)) * coef - sum += coef - - i += 1 - - return rv / sum; - - -#---------------------- -#gaussian_blur_y.mmg - -#vec4 $(name)_fct(vec2 uv) { -# float e = 1.0/$size; -# vec4 rv = vec4(0.0); -# float sum = 0.0; -# float sigma = max(0.000001, $sigma*$amount(uv)); -# for (float i = -50.0; i <= 50.0; i += 1.0) { -# float coef = exp(-0.5 * (pow(i / sigma, 2.0))) / (6.28318530718*sigma*sigma); -# rv += $in(uv+vec2(0.0, i*e))*coef; -# sum += coef; -# } -# -# return rv/sum; -#} - -func gaussian_blur_y(uv : Vector2, psize : float, psigma : float, pamount : float) -> Color: - var e : float = 1.0 / psize - var rv : Color = Color() - var sum : float = 0.0 - var sigma : float = max(0.000001, psigma * pamount)#pamount(uv)) - - var i : float = -50 - - while i <= 50: #for (float i = -50.0; i <= 50.0; i += 1.0) { - var coef : float = exp(-0.5 * (pow(i / sigma, 2.0))) / (6.28318530718 * sigma * sigma) - rv += input.get_value(uv + Vector2(0.0, i * e)) * coef - sum += coef - - i += 1 - - return rv / sum; - - -func gaussian_blur_y_img(uv : Vector2, psize : float, psigma : float, pamount : float) -> Color: - var e : float = 1.0 / psize - var rv : Color = Color() - var sum : float = 0.0 - var sigma : float = max(0.000001, psigma * pamount)#pamount(uv)) - - var i : float = -50 - - while i <= 50: #for (float i = -50.0; i <= 50.0; i += 1.0) { - var coef : float = exp(-0.5 * (pow(i / sigma, 2.0))) / (6.28318530718 * sigma * sigma) - rv += image.get_value(uv + Vector2(0.0, i * e)) * coef - sum += coef - - i += 1 - - return rv / sum; diff --git a/game/addons/mat_maker_gd/nodes/filter/brightness_contrast.gd b/game/addons/mat_maker_gd/nodes/filter/brightness_contrast.gd deleted file mode 100644 index 068b1e1..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/brightness_contrast.gd +++ /dev/null @@ -1,61 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(float) var brightness : float = 0 -export(float) var contrast : float = 1 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input1 " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_float("get_brightness", "set_brightness", "Brightness", 0.01) - mm_graph_node.add_slot_float("get_contrast", "set_contrast", "Contrast", 0.01) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var c : Color = input.get_value(uv) - - return MMAlgos.brightness_contrast(c, brightness, contrast) - -#brightness -func get_brightness() -> float: - return brightness - -func set_brightness(val : float) -> void: - brightness = val - - set_dirty(true) - -#contrast -func get_contrast() -> float: - return contrast - -func set_contrast(val : float) -> void: - contrast = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/filter/colorize.gd b/game/addons/mat_maker_gd/nodes/filter/colorize.gd deleted file mode 100644 index 438a70c..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/colorize.gd +++ /dev/null @@ -1,53 +0,0 @@ -tool -extends GradientBase - -export(Resource) var image : Resource -export(Resource) var input : Resource - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - input.set_default_value(1) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input1 " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_gradient() - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var f : float = input.get_value(uv) - - return get_gradient_color(f) -# return Color(0.5, 0.5, 0.5, 1) - -func get_gradient_color(x : float) -> Color: - if interpolation_type == 0: - return MMAlgos.gradient_type_1(x, points) - elif interpolation_type == 1: - return MMAlgos.gradient_type_2(x, points) - elif interpolation_type == 2: - return MMAlgos.gradient_type_3(x, points) - elif interpolation_type == 3: - return MMAlgos.gradient_type_4(x, points) - - return Color(1, 1, 1, 1) diff --git a/game/addons/mat_maker_gd/nodes/filter/combine.gd b/game/addons/mat_maker_gd/nodes/filter/combine.gd deleted file mode 100644 index 18c780d..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/combine.gd +++ /dev/null @@ -1,75 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input_r : Resource -export(Resource) var input_g : Resource -export(Resource) var input_b : Resource -export(Resource) var input_a : Resource - -func _init_properties(): - if !input_r: - input_r = MMNodeUniversalProperty.new() - input_r.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - input_r.set_default_value(0) - - input_r.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input_r.slot_name = ">>> R " - - if !input_g: - input_g = MMNodeUniversalProperty.new() - input_g.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - input_g.set_default_value(0) - - input_g.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input_g.slot_name = ">>> G " - - if !input_b: - input_b = MMNodeUniversalProperty.new() - input_b.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - input_b.set_default_value(0) - - input_b.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input_b.slot_name = ">>> B " - - if !input_a: - input_a = MMNodeUniversalProperty.new() - input_a.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - input_a.set_default_value(1) - - input_a.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input_a.slot_name = ">>> A " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input_r) - register_input_property(input_g) - register_input_property(input_b) - register_input_property(input_a) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input_r) - mm_graph_node.add_slot_label_universal(input_g) - mm_graph_node.add_slot_label_universal(input_b) - mm_graph_node.add_slot_label_universal(input_a) - mm_graph_node.add_slot_texture_universal(image) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var r : float = input_r.get_value(uv) - var g : float = input_g.get_value(uv) - var b : float = input_b.get_value(uv) - var a : float = input_a.get_value(uv) - - return Color(r, g, b, a) diff --git a/game/addons/mat_maker_gd/nodes/filter/decompose.gd b/game/addons/mat_maker_gd/nodes/filter/decompose.gd deleted file mode 100644 index 105c60b..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/decompose.gd +++ /dev/null @@ -1,101 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource -export(Resource) var out_r : Resource -export(Resource) var out_g : Resource -export(Resource) var out_b : Resource -export(Resource) var out_a : Resource - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !out_r: - out_r = MMNodeUniversalProperty.new() - out_r.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_r.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_g: - out_g = MMNodeUniversalProperty.new() - out_g.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_g.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_b: - out_b = MMNodeUniversalProperty.new() - out_b.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_b.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_a: - out_a = MMNodeUniversalProperty.new() - out_a.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_a.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_input_property(input) - register_output_property(out_r) - register_output_property(out_g) - register_output_property(out_b) - register_output_property(out_a) - - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(out_r) - mm_graph_node.add_slot_texture_universal(out_g) - mm_graph_node.add_slot_texture_universal(out_b) - mm_graph_node.add_slot_texture_universal(out_a) - - -func _render(material) -> void: - var img_r : Image = Image.new() - var img_g : Image = Image.new() - var img_b : Image = Image.new() - var img_a : Image = Image.new() - - img_r.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - img_g.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - img_b.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - img_a.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - - img_r.lock() - img_g.lock() - img_b.lock() - img_a.lock() - - var w : float = material.image_size.x - var h : float = material.image_size.y - - var pseed : float = randf() + randi() - - for x in range(material.image_size.x): - for y in range(material.image_size.y): - var uv : Vector2 = Vector2(x / w, y / h) - - var c : Color = input.get_value(uv) - - img_r.set_pixel(x, y, Color(c.r, c.r, c.r, 1)) - img_g.set_pixel(x, y, Color(c.g, c.g, c.g, 1)) - img_b.set_pixel(x, y, Color(c.b, c.b, c.b, 1)) - img_a.set_pixel(x, y, Color(c.a, c.a, c.a, c.a)) - - img_r.unlock() - img_g.unlock() - img_b.unlock() - img_a.unlock() - - out_r.set_value(img_r) - out_g.set_value(img_g) - out_b.set_value(img_b) - out_a.set_value(img_a) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - return Color() diff --git a/game/addons/mat_maker_gd/nodes/filter/emboss.gd b/game/addons/mat_maker_gd/nodes/filter/emboss.gd deleted file mode 100644 index bebb658..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/emboss.gd +++ /dev/null @@ -1,110 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(float) var angle : float = 0 -export(float) var amount : float = 5 -export(float) var width : float = 1 - -var size : int = 0 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - input.set_default_value(1) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input1 " - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_label_universal(input) - - mm_graph_node.add_slot_float("get_angle", "set_angle", "Angle", 0.1) - mm_graph_node.add_slot_float("get_amount", "set_amount", "Amount", 0.1) - mm_graph_node.add_slot_float("get_width", "set_width", "Width", 1) - - -func _render(material) -> void: - size = max(material.image_size.x, material.image_size.y) - - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var f : float = 0 - - f = emboss(uv, size, angle, amount, width) - - return Color(f, f, f, 1) - -func get_angle() -> float: - return angle - -func set_angle(val : float) -> void: - angle = val - - set_dirty(true) - -func get_amount() -> float: - return amount - -func set_amount(val : float) -> void: - amount = val - - set_dirty(true) - -func get_width() -> float: - return width - -func set_width(val : float) -> void: - width = val - - set_dirty(true) - -#float $(name)_fct(vec2 uv) { -# float pixels = max(1.0, $width); -# float e = 1.0/$size; -# float rv = 0.0; -# -# for (float dx = -pixels; dx <= pixels; dx += 1.0) { -# for (float dy = -pixels; dy <= pixels; dy += 1.0) { -# if (abs(dx) > 0.5 || abs(dy) > 0.5) { -# rv += $in(uv+e*vec2(dx, dy))*cos(atan(dy, dx)-$angle*3.14159265359/180.0)/length(vec2(dx, dy)); -# } -# } -# } -# -# return $amount*rv/pixels+0.5; -#} - -func emboss(uv : Vector2, psize : float, pangle : float, pamount : float, pwidth : float) -> float: - var pixels : float = max(1.0, pwidth) - var e : float = 1.0 / psize - var rv : float = 0.0 - - var dx : float = -pixels - var dy : float = -pixels - - while dx <= pixels: #for (float dx = -pixels; dx <= pixels; dx += 1.0) { - while dy <= pixels: #for (float dy = -pixels; dy <= pixels; dy += 1.0) { - if (abs(dx) > 0.5 || abs(dy) > 0.5): - rv += input.get_value(uv + e * Vector2(dx, dy)) * cos(atan2(dy, dx) - pangle * 3.14159265359 / 180.0) / Vector2(dx, dy).length() - - dx += 1 - dy += 1 - - return pamount * rv / pixels + 0.5 - diff --git a/game/addons/mat_maker_gd/nodes/filter/fill_channel.gd b/game/addons/mat_maker_gd/nodes/filter/fill_channel.gd deleted file mode 100644 index b0acc5d..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/fill_channel.gd +++ /dev/null @@ -1,69 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(Resource) var value : Resource -export(int, "R,G,B,A") var channel : int = 3 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color()) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input1 " - - if !value: - value = MMNodeUniversalProperty.new() - value.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - value.set_default_value(1) - - value.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - value.value_step = 0.01 - value.value_range = Vector2(0, 1) - - register_input_property(input) - register_output_property(image) - register_input_property(value) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_float_universal(value) - mm_graph_node.add_slot_enum("get_channel", "set_channel", "Channel", [ "R", "G", "B", "A" ]) - - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var col : Color = input.get_value(uv) - - if channel == 0: - col.r = value.get_value(uv) - if channel == 1: - col.g = value.get_value(uv) - if channel == 2: - col.b = value.get_value(uv) - if channel == 3: - col.a = value.get_value(uv) - - return col - -func get_channel() -> int: - return channel - -func set_channel(val : int) -> void: - channel = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/filter/fill_to_color.gd b/game/addons/mat_maker_gd/nodes/filter/fill_to_color.gd deleted file mode 100644 index b65abe9..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/fill_to_color.gd +++ /dev/null @@ -1,67 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(Resource) var color_map : Resource -export(Color) var edge_color : Color = Color(1, 1, 1, 1) - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !color_map: - color_map = MMNodeUniversalProperty.new() - color_map.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - color_map.set_default_value(Color(1, 1, 1, 1)) - - color_map.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - color_map.slot_name = ">>> Color Map " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_input_property(color_map) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_label_universal(color_map) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_color("get_edge_color", "set_edge_color") - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #vec4 $(name_uv)_bb = $in($uv); - var c : Color = input.get_value(uv) - - #mix($edgecolor, $map(fract($(name_uv)_bb.xy+0.5*$(name_uv)_bb.zw)), step(0.0000001, dot($(name_uv)_bb.zw, vec2(1.0)))) - - var rc : Color = color_map.get_value(MMAlgos.fractv2(Vector2(c.r, c.g) + 0.5 * Vector2(c.b, c.a))) - var s : float = MMAlgos.step(0.0000001, Vector2(c.b, c.a).dot(Vector2(1, 1))) - - return lerp(edge_color, rc, s) - -#edge_color -func get_edge_color() -> Color: - return edge_color - -func set_edge_color(val : Color) -> void: - edge_color = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/filter/fill_to_position.gd b/game/addons/mat_maker_gd/nodes/filter/fill_to_position.gd deleted file mode 100644 index 6cc17b7..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/fill_to_position.gd +++ /dev/null @@ -1,65 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(int, "X,Y,Radial") var axis : int = 2 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_enum("get_axis", "set_axis", "Axis", [ "X", "Y", "Radial" ]) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var c : Color = input.get_value(uv) - #vec2 $(name_uv)_c = fract($in($uv).xy+0.5*$in($uv).zw); - var cnv : Vector2 = MMAlgos.fractv2(Vector2(c.r, c.g) + 0.5 * Vector2(c.b, c.a)) - - #X, $(name_uv)_c.x - #Y, $(name_uv)_c.y - #Radial, length($(name_uv)_c-vec2(0.5)) - - if axis == 0: - return Color(cnv.x, cnv.x, cnv.x, 1) - elif axis == 1: - return Color(cnv.y, cnv.y, cnv.y, 1) - elif axis == 2: - var f : float = (cnv - Vector2(0.5, 0.5)).length() - - return Color(f, f, f, 1) - - return Color(0, 0, 0, 1) - -#axis -func get_axis() -> int: - return axis - -func set_axis(val : int) -> void: - axis = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/filter/fill_to_random_color.gd b/game/addons/mat_maker_gd/nodes/filter/fill_to_random_color.gd deleted file mode 100644 index 3527860..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/fill_to_random_color.gd +++ /dev/null @@ -1,58 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(Color) var edge_color : Color = Color(1, 1, 1, 1) - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_color("get_edge_color", "set_edge_color") - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #vec4 $(name_uv)_bb = $in($uv); - var c : Color = input.get_value(uv) - - #mix($edgecolor.rgb, rand3(vec2(float($seed), rand(vec2(rand($(name_uv)_bb.xy), rand($(name_uv)_bb.zw))))), step(0.0000001, dot($(name_uv)_bb.zw, vec2(1.0)))) - - var r1 : float = MMAlgos.rand(Vector2(c.r, c.g)) - var r2 : float = MMAlgos.rand(Vector2(c.b, c.a)) - var s : float = MMAlgos.step(0.0000001, Vector2(c.b, c.a).dot(Vector2(1, 1))) - - var f : Vector3 = lerp(Vector3(edge_color.r, edge_color.g, edge_color.b), MMAlgos.rand3(Vector2(1.0 / float(pseed), MMAlgos.rand(Vector2(r1, r2)))), s) - return Color(f.x, f.y, f.z, 1) - -#edge_color -func get_edge_color() -> Color: - return edge_color - -func set_edge_color(val : Color) -> void: - edge_color = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/filter/fill_to_random_grey.gd b/game/addons/mat_maker_gd/nodes/filter/fill_to_random_grey.gd deleted file mode 100644 index 0f4e0ba..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/fill_to_random_grey.gd +++ /dev/null @@ -1,57 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(float) var edge_color : float = 1 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_float("get_edge_color", "set_edge_color", "Edge color", 0.01) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #vec4 $(name_uv)_bb = $in($uv); - var c : Color = input.get_value(uv) - - #mix($edgecolor, rand(vec2(float($seed), rand(vec2(rand($(name_uv)_bb.xy), rand($(name_uv)_bb.zw))))), step(0.0000001, dot($(name_uv)_bb.zw, vec2(1.0)))) - var r1 : float = MMAlgos.rand(Vector2(c.r, c.g)) - var r2 : float = MMAlgos.rand(Vector2(c.b, c.a)) - var s : float = MMAlgos.step(0.0000001, Vector2(c.b, c.a).dot(Vector2(1, 1))) - - var f : float = lerp(edge_color, MMAlgos.rand(Vector2(1.0 / float(pseed), MMAlgos.rand(Vector2(r1, r2)))), s) - return Color(f, f, f, 1) - -#edge_color -func get_edge_color() -> float: - return edge_color - -func set_edge_color(val : float) -> void: - edge_color = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/filter/fill_to_size.gd b/game/addons/mat_maker_gd/nodes/filter/fill_to_size.gd deleted file mode 100644 index b10a0ec..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/fill_to_size.gd +++ /dev/null @@ -1,67 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(int, "Area,Width,Height,Max(W,H)") var formula : int = 0 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_enum("get_formula", "set_formula", "Formula", [ "Area", "Width", "Height", "Max(W,H)" ]) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #vec4 $(name_uv)_bb = $in($uv); - var c : Color = input.get_value(uv) - - var f : float = 0 - - #"Area" sqrt($(name_uv)_bb.z*$(name_uv)_bb.w) - #"Width" $(name_uv)_bb.z - #"Height" $(name_uv)_bb.w - #"max(W, H)" max($(name_uv)_bb.z, $(name_uv)_bb.w) - - if formula == 0: - f = sqrt(c.b * c.a) - elif formula == 1: - f = c.b - elif formula == 2: - f = c.a - elif formula == 3: - f = max(c.b, c.a) - - return Color(f, f, f, 1) - -#formula -func get_formula() -> int: - return formula - -func set_formula(val : int) -> void: - formula = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/filter/fill_to_uv.gd b/game/addons/mat_maker_gd/nodes/filter/fill_to_uv.gd deleted file mode 100644 index f2d7115..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/fill_to_uv.gd +++ /dev/null @@ -1,59 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(int, "Stretch,Square") var mode : int = 0 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_enum("get_mode", "set_mode", "Mode", [ "Stretch", "Square" ]) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #vec4 $(name_uv)_bb = $in($uv); - var c : Color = input.get_value(uv) - - #fill_to_uv_$mode($uv, $(name_uv)_bb, float($seed)) - var r : Vector3 = Vector3() - - if mode == 0: - r = MMAlgos.fill_to_uv_stretch(uv, c, float(pseed)) - elif mode == 1: - r = MMAlgos.fill_to_uv_square(uv, c, float(pseed)) - - return Color(r.x, r.y, r.z, 1) - -#mode -func get_mode() -> int: - return mode - -func set_mode(val : int) -> void: - mode = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/filter/greyscale.gd b/game/addons/mat_maker_gd/nodes/filter/greyscale.gd deleted file mode 100644 index 99c396c..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/greyscale.gd +++ /dev/null @@ -1,63 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(int, "Lightness,Average,Luminosity,Min,Max") var type : int = 2 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input1 " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_enum("get_type", "set_type", "Type", [ "Lightness", "Average", "Luminosity", "Min", "Max" ]) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var c : Color = input.get_value(uv) - - var f : float = 0 - - if type == 0: - f = MMAlgos.grayscale_lightness(Vector3(c.r, c.g, c.b)) - elif type == 1: - f = MMAlgos.grayscale_average(Vector3(c.r, c.g, c.b)) - elif type == 2: - f = MMAlgos.grayscale_luminosity(Vector3(c.r, c.g, c.b)) - elif type == 3: - f = MMAlgos.grayscale_min(Vector3(c.r, c.g, c.b)) - elif type == 4: - f = MMAlgos.grayscale_max(Vector3(c.r, c.g, c.b)) - - return Color(f, f, f, c.a) - -#type -func get_type() -> int: - return type - -func set_type(val : int) -> void: - type = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/filter/invert.gd b/game/addons/mat_maker_gd/nodes/filter/invert.gd deleted file mode 100644 index 0d6ee74..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/invert.gd +++ /dev/null @@ -1,39 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input1 " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var c : Color = input.get_value(uv) - - return MMAlgos.invert(c) diff --git a/game/addons/mat_maker_gd/nodes/filter/make_tileable.gd b/game/addons/mat_maker_gd/nodes/filter/make_tileable.gd deleted file mode 100644 index eb7d784..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/make_tileable.gd +++ /dev/null @@ -1,75 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(float) var width : float = 0.1 - -var size : int = 0 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color()) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input1 " - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_label_universal(input) - - mm_graph_node.add_slot_float("get_width", "set_width", "Width", 0.01) - - -func _render(material) -> void: - size = max(material.image_size.x, material.image_size.y) - - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #make_tileable_$(name)($uv, 0.5*$w) - return make_tileable(uv, 0.5 * width) - -func get_width() -> float: - return width - -func set_width(val : float) -> void: - width = val - - set_dirty(true) - - -#---------------------- -#make_tileable.mmg - -#vec4 make_tileable_$(name)(vec2 uv, float w) { -# vec4 a = $in(uv); -# vec4 b = $in(fract(uv+vec2(0.5))); -# float coef_ab = sin(1.57079632679*clamp((length(uv-vec2(0.5))-0.5+w)/w, 0.0, 1.0)); -# vec4 c = $in(fract(uv+vec2(0.25))); -# float coef_abc = sin(1.57079632679*clamp((min(min(length(uv-vec2(0.0, 0.5)), length(uv-vec2(0.5, 0.0))), min(length(uv-vec2(1.0, 0.5)), length(uv-vec2(0.5, 1.0))))-w)/w, 0.0, 1.0)); -# return mix(c, mix(a, b, coef_ab), coef_abc); -#} - -func make_tileable(uv : Vector2, w : float) -> Color: - var a: Color = input.get_value(uv); - var b : Color = input.get_value(MMAlgos.fractv2(uv + Vector2(0.5, 0.5))); - var coef_ab : float = sin(1.57079632679 * clamp(((uv - Vector2(0.5, 0.5)).length() - 0.5 + w) / w, 0.0, 1.0)); - var c: Color = input.get_value(MMAlgos.fractv2(uv + Vector2(0.25, 0.25))); - var coef_abc : float = sin(1.57079632679 * clamp((min(min((uv - Vector2(0.0, 0.5)).length(), (uv - Vector2(0.5, 0.0)).length()), min((uv- Vector2(1.0, 0.5)).length(), (uv - Vector2(0.5, 1.0)).length())) - w) / w, 0.0, 1.0)); - - return lerp(c, lerp(a, b, coef_ab), coef_abc) - diff --git a/game/addons/mat_maker_gd/nodes/filter/math.gd b/game/addons/mat_maker_gd/nodes/filter/math.gd deleted file mode 100644 index 0b9b22c..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/math.gd +++ /dev/null @@ -1,148 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var a : Resource -export(Resource) var b : Resource -export(Resource) var output : Resource - -export(int, "A+B,A-B,A*B,A/B,log(A),log2(A),pow(A; B),abs(A),round(A),floor(A),ceil(A),trunc(A),fract(A),min(A; B),max(A; B),A void: - mm_graph_node.add_slot_label_universal(a) - mm_graph_node.add_slot_label_universal(b) - mm_graph_node.add_slot_label_universal(output) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_enum("get_operation", "set_operation", "Operation", [ "A+B", "A-B", "A*B", "A/B", "log(A)", "log2(A)", "pow(A, B)", "abs(A)", "round(A)", "floor(A)", "ceil(A)", "trunc(A)", "fract(A)", "min(A, B)", "max(A, B)", "A float: - var af : float = a.get_value(uv) - var bf : float = b.get_value(uv) - - var f : float = 0 - - if operation == 0:#"A+B", - f = af + bf - elif operation == 1:#"A-B", - f = af - bf - elif operation == 2:#"A*B", - f = af * bf - elif operation == 3:#"A/B", - if bf == 0: - bf = 0.000001 - f = af / bf - elif operation == 4:#"log(A)", - #todo needs to be implemented - f = log(af) - elif operation == 5:#"log2(A)", - #todo needs to be implemented - f = log(af) - elif operation == 6:#"pow(A, B)", - f = pow(af, bf) - elif operation == 7:#"abs(A)", - f = abs(af) - elif operation == 8:#"round(A)", - f = round(af) - elif operation == 9:#"floor(A)", - f = floor(af) - elif operation == 10:#"ceil(A)", - f = ceil(af) - elif operation == 11:#"trunc(A)", - f = int(af) - elif operation == 12:#"fract(A)", - f = MMAlgos.fractf(af) - elif operation == 13:#"min(A, B)", - f = min(af, bf) - elif operation == 14:#"max(A, B)", - f = max(af, bf) - elif operation == 15:#"A void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var f : float = get_property_value(uv) - - return Color(f, f, f, 1) - -#operation -func get_operation() -> int: - return operation - -func set_operation(val : int) -> void: - operation = val - - set_dirty(true) - output.emit_changed() - -#clamp_result -func get_clamp_result() -> bool: - return clamp_result - -func set_clamp_result(val : bool) -> void: - clamp_result = val - - set_dirty(true) - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/filter/quantize.gd b/game/addons/mat_maker_gd/nodes/filter/quantize.gd deleted file mode 100644 index e1f5498..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/quantize.gd +++ /dev/null @@ -1,53 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(int) var steps : int = 4 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_int("get_steps", "set_steps", "Steps") - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var c : Color = input.get_value(uv) - - #vec4(floor($in($uv).rgb*$steps)/$steps, $in($uv).a) - var v : Vector3 = MMAlgos.floorv3(Vector3(c.r, c.g, c.b) * steps) / float(steps) - - return Color(v.x, v.y, v.z, c.a) - -#steps -func get_steps() -> int: - return steps - -func set_steps(val : int) -> void: - steps = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/filter/swap_channels.gd b/game/addons/mat_maker_gd/nodes/filter/swap_channels.gd deleted file mode 100644 index a565a38..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/swap_channels.gd +++ /dev/null @@ -1,108 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(int, "0,1,R,-R,G,-G,B,-B,A,-A") var op_r : int = 2 -export(int, "0,1,R,-R,G,-G,B,-B,A,-A") var op_g : int = 4 -export(int, "0,1,R,-R,G,-G,B,-B,A,-A") var op_b : int = 6 -export(int, "0,1,R,-R,G,-G,B,-B,A,-A") var op_a : int = 8 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - - mm_graph_node.add_slot_enum("get_op_r", "set_op_r", "R", [ "0", "1", "R", "-R", "G", "-G", "B", "-B", "A","-A" ]) - mm_graph_node.add_slot_enum("get_op_g", "set_op_g", "G", [ "0", "1", "R", "-R", "G", "-G", "B", "-B", "A","-A" ]) - mm_graph_node.add_slot_enum("get_op_b", "set_op_b", "B", [ "0", "1", "R", "-R", "G", "-G", "B", "-B", "A","-A" ]) - mm_graph_node.add_slot_enum("get_op_a", "set_op_a", "A", [ "0", "1", "R", "-R", "G", "-G", "B", "-B", "A","-A" ]) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func apply(op : int, val : Color) -> float: - if op == 0: - return 0.0 - elif op == 1: - return 1.0 - elif op == 2: - return val.r - elif op == 3: - return 1.0 - val.r - elif op == 4: - return val.g - elif op == 5: - return 1.0 - val.g - elif op == 6: - return val.b - elif op == 7: - return 1.0 - val.b - elif op == 8: - return val.a - elif op == 9: - return 1.0 - val.a - - return 0.0 - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var c : Color = input.get_value(uv) - - return Color(apply(op_r, c), apply(op_g, c), apply(op_b, c), apply(op_a, c)) - -#op_r -func get_op_r() -> int: - return op_r - -func set_op_r(val : int) -> void: - op_r = val - - set_dirty(true) - -#op_g -func get_op_g() -> int: - return op_g - -func set_op_g(val : int) -> void: - op_g = val - - set_dirty(true) - -#op_b -func get_op_b() -> int: - return op_b - -func set_op_b(val : int) -> void: - op_b = val - - set_dirty(true) - -#op_a -func get_op_a() -> int: - return op_a - -func set_op_a(val : int) -> void: - op_a = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/filter/tonality.gd b/game/addons/mat_maker_gd/nodes/filter/tonality.gd deleted file mode 100644 index bdf4e5e..0000000 --- a/game/addons/mat_maker_gd/nodes/filter/tonality.gd +++ /dev/null @@ -1,48 +0,0 @@ -tool -extends CurveBase - -export(Resource) var image : Resource -export(Resource) var input : Resource - -func _init(): - init_points_01() - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - input.set_default_value(0) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_curve() - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var f : float = input.get_value(uv) - - var cf : float = MMAlgos.curve(f, points_array) - - return Color(cf, cf, cf, 1) - -func _curve_changed() -> void: - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/gradient/circular_gradient.gd b/game/addons/mat_maker_gd/nodes/gradient/circular_gradient.gd deleted file mode 100644 index e1d8561..0000000 --- a/game/addons/mat_maker_gd/nodes/gradient/circular_gradient.gd +++ /dev/null @@ -1,58 +0,0 @@ -tool -extends GradientBase - -export(Resource) var image : Resource -export(float) var repeat : float = 1 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_float("get_repeat", "set_repeat", "repeat") - mm_graph_node.add_slot_gradient() - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - if interpolation_type == 0: - return MMAlgos.circular_gradient_type_1(uv, repeat, points) - elif interpolation_type == 1: - return MMAlgos.circular_gradient_type_2(uv, repeat, points) - elif interpolation_type == 2: - return MMAlgos.circular_gradient_type_3(uv, repeat, points) - elif interpolation_type == 3: - return MMAlgos.circular_gradient_type_4(uv, repeat, points) - - return Color(1, 1, 1, 1) - - -func _get_gradient_color(x : float) -> Color: - if interpolation_type == 0: - return MMAlgos.gradient_type_1(x, points) - elif interpolation_type == 1: - return MMAlgos.gradient_type_2(x, points) - elif interpolation_type == 2: - return MMAlgos.gradient_type_3(x, points) - elif interpolation_type == 3: - return MMAlgos.gradient_type_4(x, points) - - return Color(1, 1, 1, 1) - -func get_repeat() -> float: - return repeat - -func set_repeat(val : float) -> void: - repeat = val - - set_dirty(true) - diff --git a/game/addons/mat_maker_gd/nodes/gradient/gradient.gd b/game/addons/mat_maker_gd/nodes/gradient/gradient.gd deleted file mode 100644 index 42abef7..0000000 --- a/game/addons/mat_maker_gd/nodes/gradient/gradient.gd +++ /dev/null @@ -1,66 +0,0 @@ -tool -extends GradientBase - -export(Resource) var image : Resource -export(float) var repeat : float = 1 -export(float) var rotate : float = 0 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_float("get_repeat", "set_repeat", "repeat") - mm_graph_node.add_slot_float("get_rotate", "set_rotate", "rotate") - mm_graph_node.add_slot_gradient() - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - if interpolation_type == 0: - return MMAlgos.normal_gradient_type_1(uv, repeat, rotate, points) - elif interpolation_type == 1: - return MMAlgos.normal_gradient_type_2(uv, repeat, rotate, points) - elif interpolation_type == 2: - return MMAlgos.normal_gradient_type_3(uv, repeat, rotate, points) - elif interpolation_type == 3: - return MMAlgos.normal_gradient_type_4(uv, repeat, rotate, points) - - return Color(1, 1, 1, 1) - -func _get_gradient_color(x : float) -> Color: - if interpolation_type == 0: - return MMAlgos.gradient_type_1(x, points) - elif interpolation_type == 1: - return MMAlgos.gradient_type_2(x, points) - elif interpolation_type == 2: - return MMAlgos.gradient_type_3(x, points) - elif interpolation_type == 3: - return MMAlgos.gradient_type_4(x, points) - - return Color(1, 1, 1, 1) - -func get_repeat() -> float: - return repeat - -func set_repeat(val : float) -> void: - repeat = val - - set_dirty(true) - -func get_rotate() -> float: - return rotate - -func set_rotate(val : float) -> void: - rotate = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/gradient/radial_gradient.gd b/game/addons/mat_maker_gd/nodes/gradient/radial_gradient.gd deleted file mode 100644 index 8eeed27..0000000 --- a/game/addons/mat_maker_gd/nodes/gradient/radial_gradient.gd +++ /dev/null @@ -1,58 +0,0 @@ -tool -extends GradientBase - -export(Resource) var image : Resource -export(float) var repeat : float = 1 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_float("get_repeat", "set_repeat", "repeat") - mm_graph_node.add_slot_gradient() - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - if interpolation_type == 0: - return MMAlgos.radial_gradient_type_1(uv, repeat, points) - elif interpolation_type == 1: - return MMAlgos.radial_gradient_type_2(uv, repeat, points) - elif interpolation_type == 2: - return MMAlgos.radial_gradient_type_3(uv, repeat, points) - elif interpolation_type == 3: - return MMAlgos.radial_gradient_type_4(uv, repeat, points) - - return Color(1, 1, 1, 1) - - -func _get_gradient_color(x : float) -> Color: - if interpolation_type == 0: - return MMAlgos.gradient_type_1(x, points) - elif interpolation_type == 1: - return MMAlgos.gradient_type_2(x, points) - elif interpolation_type == 2: - return MMAlgos.gradient_type_3(x, points) - elif interpolation_type == 3: - return MMAlgos.gradient_type_4(x, points) - - return Color(1, 1, 1, 1) - -func get_repeat() -> float: - return repeat - -func set_repeat(val : float) -> void: - repeat = val - - set_dirty(true) - diff --git a/game/addons/mat_maker_gd/nodes/noise/anisotropic_noise.gd b/game/addons/mat_maker_gd/nodes/noise/anisotropic_noise.gd deleted file mode 100644 index 80b2945..0000000 --- a/game/addons/mat_maker_gd/nodes/noise/anisotropic_noise.gd +++ /dev/null @@ -1,58 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource - -export(Vector2) var scale : Vector2 = Vector2(4, 256) -export(float) var smoothness : float = 1 -export(float) var interpolation : float = 1 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_vector2("get_scale", "set_scale", "Scale", 1)#, Vector2(1, 10)) - mm_graph_node.add_slot_float("get_smoothness", "set_smoothness", "Smoothness", 0.01)#, Vector2(0, 1)) - mm_graph_node.add_slot_float("get_interpolation", "set_interpolation", "Interpolation", 0.01)#, Vector2(0, 1)) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var ps : float = 1.0 / float(pseed) - - #anisotropic($(uv), vec2($(scale_x), $(scale_y)), $(seed), $(smoothness), $(interpolation)) - return MMAlgos.anisotropicc(uv, scale, ps, smoothness, interpolation) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func get_scale() -> Vector2: - return scale - -func set_scale(val : Vector2) -> void: - scale = val - - set_dirty(true) - -func get_smoothness() -> float: - return smoothness - -func set_smoothness(val : float) -> void: - smoothness = val - - set_dirty(true) - -func get_interpolation() -> float: - return interpolation - -func set_interpolation(val : float) -> void: - interpolation = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/noise/color_noise.gd b/game/addons/mat_maker_gd/nodes/noise/color_noise.gd deleted file mode 100644 index a6d66f5..0000000 --- a/game/addons/mat_maker_gd/nodes/noise/color_noise.gd +++ /dev/null @@ -1,50 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource - -export(int) var size : int = 8 - -#---------------------- -#color_noise.mmg - -#Outputs: - -#Output - (rgb) - Shows the noise pattern -#color_dots($(uv), 1.0/$(size), $(seed)) - -#Inputs: -#size, float, default: 8, min: 2, max: 12, step: 1 - - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_int("get_size", "set_size", "Size")#, Vector2(1, 10)) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var ps : float = 1.0 / float(pseed) - - #color_dots($(uv), 1.0/$(size), $(seed)) - return MMAlgos.noise_color(uv, float(size), ps) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func get_size() -> int: - return size - -func set_size(val : int) -> void: - size = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/noise/color_value.gd b/game/addons/mat_maker_gd/nodes/noise/color_value.gd deleted file mode 100644 index 6bafd58..0000000 --- a/game/addons/mat_maker_gd/nodes/noise/color_value.gd +++ /dev/null @@ -1,58 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource - -export(Vector2) var scale : Vector2 = Vector2(4, 4) -export(int) var iterations : int = 3 -export(float) var persistence : float = 0.5 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_vector2("get_scale", "set_scale", "Scale")#, Vector2(1, 10)) - mm_graph_node.add_slot_int("get_iterations", "set_iterations", "Iterations")#, Vector2(0, 1)) - mm_graph_node.add_slot_float("get_persistence", "set_persistence", "Persistence", 0.01)#, Vector2(0, 1)) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var ps : float = 1.0 / float(pseed) - - #perlin_color($(uv), vec2($(scale_x), $(scale_y)), int($(iterations)), $(persistence), $(seed)) - return MMAlgos.perlin_colorc(uv, scale, iterations, persistence, ps) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func get_scale() -> Vector2: - return scale - -func set_scale(val : Vector2) -> void: - scale = val - - set_dirty(true) - -func get_iterations() -> int: - return iterations - -func set_iterations(val : int) -> void: - iterations = val - - set_dirty(true) - -func get_persistence() -> float: - return persistence - -func set_persistence(val : float) -> void: - persistence = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/noise/fbm_noise.gd b/game/addons/mat_maker_gd/nodes/noise/fbm_noise.gd deleted file mode 100644 index 797fabe..0000000 --- a/game/addons/mat_maker_gd/nodes/noise/fbm_noise.gd +++ /dev/null @@ -1,97 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource - -export(int, "Value,Perlin,Simplex,Cellular1,Cellular2,Cellular3,Cellular4,Cellular5,Cellular6") var type : int = 0 -export(Vector2) var scale : Vector2 = Vector2(2, 2) -export(int) var folds : int = 0 -export(int) var iterations : int = 5 -export(float) var persistence : float = 0.5 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_enum("get_type", "set_type", "Type", [ "Value", "Perlin", "Simplex", "Cellular1", "Cellular2", "Cellular3", "Cellular4", "Cellular5", "Cellular6" ])#, Vector2(0, 1)) - mm_graph_node.add_slot_vector2("get_scale", "set_scale", "Scale")#, Vector2(1, 10)) - mm_graph_node.add_slot_int("get_folds", "set_folds", "folds")#, Vector2(0, 1)) - mm_graph_node.add_slot_int("get_iterations", "set_iterations", "Iterations")#, Vector2(0, 1)) - mm_graph_node.add_slot_float("get_persistence", "set_persistence", "Persistence", 0.01)#, Vector2(0, 1)) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var ps : float = 1.0 / float(pseed) - - #"Value,Perlin,Simplex,Cellular1,Cellular2,Cellular3,Cellular4,Cellular5,Cellular6" - if type == 0: - return MMAlgos.fbmval(uv, scale, folds, iterations, persistence, ps) - elif type == 1: - return MMAlgos.perlin(uv, scale, folds, iterations, persistence, ps) - elif type == 2: - return MMAlgos.simplex(uv, scale, folds, iterations, persistence, ps) - elif type == 3: - return MMAlgos.cellular(uv, scale, folds, iterations, persistence, ps) - elif type == 4: - return MMAlgos.cellular2(uv, scale, folds, iterations, persistence, ps) - elif type == 5: - return MMAlgos.cellular3(uv, scale, folds, iterations, persistence, ps) - elif type == 6: - return MMAlgos.cellular4(uv, scale, folds, iterations, persistence, ps) - elif type == 7: - return MMAlgos.cellular5(uv, scale, folds, iterations, persistence, ps) - elif type == 8: - return MMAlgos.cellular6(uv, scale, folds, iterations, persistence, ps) - - return Color() - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func get_type() -> int: - return type - -func set_type(val : int) -> void: - type = val - - set_dirty(true) - -func get_scale() -> Vector2: - return scale - -func set_scale(val : Vector2) -> void: - scale = val - - set_dirty(true) - -func get_folds() -> int: - return folds - -func set_folds(val : int) -> void: - folds = val - - set_dirty(true) - -func get_iterations() -> int: - return iterations - -func set_iterations(val : int) -> void: - iterations = val - - set_dirty(true) - -func get_persistence() -> float: - return persistence - -func set_persistence(val : float) -> void: - persistence = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/noise/noise.gd b/game/addons/mat_maker_gd/nodes/noise/noise.gd deleted file mode 100644 index 7c5756e..0000000 --- a/game/addons/mat_maker_gd/nodes/noise/noise.gd +++ /dev/null @@ -1,50 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource - -export(int) var grid_size : int = 16 -export(float) var density : float = 0.5 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_int("get_grid_size", "set_grid_size", "Grid Size")#, Vector2(1, 10)) - mm_graph_node.add_slot_float("get_density", "set_density", "Density", 0.01)#, Vector2(0, 1)) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var ps : float = 1.0 / float(pseed) - - #return dots(uv, 1.0/$(size), $(density), $(seed)); - var f : float = MMAlgos.dots(uv, 1.0 / float(grid_size), density, ps) - - return Color(f, f, f, 1) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func get_grid_size() -> int: - return grid_size - -func set_grid_size(val : int) -> void: - grid_size = val - - set_dirty(true) - -func get_density() -> float: - return density - -func set_density(val : float) -> void: - density = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/noise/voronoi.gd b/game/addons/mat_maker_gd/nodes/noise/voronoi.gd deleted file mode 100644 index 8fdf262..0000000 --- a/game/addons/mat_maker_gd/nodes/noise/voronoi.gd +++ /dev/null @@ -1,160 +0,0 @@ -tool -extends MMNode - -export(Resource) var out_nodes : Resource -export(Resource) var out_borders : Resource -export(Resource) var out_random_color : Resource -export(Resource) var out_fill : Resource - -export(Vector2) var scale : Vector2 = Vector2(4, 4) -export(Vector2) var stretch : Vector2 = Vector2(1, 1) -export(float) var intensity : float = 1 -export(float) var randomness : float = 0.85 - -func _init_properties(): - if !out_nodes: - out_nodes = MMNodeUniversalProperty.new() - out_nodes.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_nodes.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_borders: - out_borders = MMNodeUniversalProperty.new() - out_borders.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_borders.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_random_color: - out_random_color = MMNodeUniversalProperty.new() - out_random_color.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_random_color.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_fill: - out_fill = MMNodeUniversalProperty.new() - out_fill.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_fill.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(out_nodes) - register_output_property(out_borders) - register_output_property(out_random_color) - register_output_property(out_fill) - - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(out_nodes) - mm_graph_node.add_slot_texture_universal(out_borders) - mm_graph_node.add_slot_texture_universal(out_random_color) - mm_graph_node.add_slot_texture_universal(out_fill) - - mm_graph_node.add_slot_vector2("get_scale", "set_scale", "Scale", 0.1)#, Vector2(1, 32))#, Vector2(0, 32)) - mm_graph_node.add_slot_vector2("get_stretch", "set_stretch", "stretch", 0.01)#, Vector2(1, 32))#, Vector2(0, 32)) - mm_graph_node.add_slot_float("get_intensity", "set_intensity", "Intensity", 0.01)#, Vector2(1, 32))#, Vector2(0, 32)) - mm_graph_node.add_slot_float("get_randomness", "set_randomness", "Randomness", 0.01)#, Vector2(1, 32))#, Vector2(0, 32)) - - - - -func _render(material) -> void: - var nodes : Image = Image.new() - var borders : Image = Image.new() - var random_color : Image = Image.new() - var fill : Image = Image.new() - - nodes.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - borders.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - random_color.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - fill.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - - nodes.lock() - borders.lock() - random_color.lock() - fill.lock() - - var w : float = material.image_size.x - var h : float = material.image_size.y - - var pseed : float = randf() + randi() - - for x in range(material.image_size.x): - for y in range(material.image_size.y): - var uv : Vector2 = Vector2(x / w, y / h) - - var ps : float = 1.0 / float(pseed) - - #vec4 $(name_uv)_xyzw = voronoi($uv, vec2($scale_x, $scale_y), vec2($stretch_y, $stretch_x), $intensity, $randomness, $seed); - var voronoi : Color = MMAlgos.voronoi(uv, scale, stretch, intensity, randomness, ps) - - #Nodes - float - A greyscale pattern based on the distance to cell centers - #$(name_uv)_xyzw.z - var nodes_col : Color = Color(voronoi.b, voronoi.b, voronoi.b, 1) - - #Borders - float - A greyscale pattern based on the distance to borders - #$(name_uv)_xyzw.w - var borders_col : Color = Color(voronoi.a, voronoi.a, voronoi.a, 1) - - #Random color - rgb - A color pattern that assigns a random color to each cell - #rand3(fract(floor($(name_uv)_xyzw.xy)/vec2($scale_x, $scale_y))) - var rv3 : Vector3 = MMAlgos.rand3(MMAlgos.fractv2(Vector2(voronoi.r, voronoi.g) / scale)) - var random_color_col : Color = Color(rv3.x, rv3.y, rv3.z, 1) - - #Fill - rgba - An output that should be plugged into a Fill companion node - #vec4(fract(($(name_uv)_xyzw.xy-1.0)/vec2($scale_x, $scale_y)), vec2(2.0)/vec2($scale_x, $scale_y)) - var fv21 : Vector2 = MMAlgos.fractv2((Vector2(voronoi.r, voronoi.g) - Vector2(1, 1)) / scale) - var fv22 : Vector2 = Vector2(2, 2) / scale - var fill_col : Color = Color(fv21.x, fv21.y, fv22.x, fv22.y) - - nodes.set_pixel(x, y, nodes_col) - borders.set_pixel(x, y, borders_col) - random_color.set_pixel(x, y, random_color_col) - fill.set_pixel(x, y, fill_col) - - nodes.unlock() - borders.unlock() - random_color.unlock() - fill.unlock() - - out_nodes.set_value(nodes) - out_borders.set_value(borders) - out_random_color.set_value(random_color) - out_fill.set_value(fill) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - return Color() - -#scale -func get_scale() -> Vector2: - return scale - -func set_scale(val : Vector2) -> void: - scale = val - - set_dirty(true) - -#stretch -func get_stretch() -> Vector2: - return stretch - -func set_stretch(val : Vector2) -> void: - stretch = val - - set_dirty(true) - -#intensity -func get_intensity() -> float: - return intensity - -func set_intensity(val : float) -> void: - intensity = val - - set_dirty(true) - -#randomness -func get_randomness() -> float: - return randomness - -func set_randomness(val : float) -> void: - randomness = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/other/output_image.gd b/game/addons/mat_maker_gd/nodes/other/output_image.gd deleted file mode 100644 index 7003fce..0000000 --- a/game/addons/mat_maker_gd/nodes/other/output_image.gd +++ /dev/null @@ -1,45 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource - -export(String) var postfix : String = "" - -func _init_properties(): - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - image.slot_name = "image" - - register_input_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_line_edit("get_postfix", "set_postfix", "postfix") - -func _render(material) -> void: - if !image: - return - - var img : Image = image.get_active_image() - - if !img: - return - - var matpath : String = material.get_path() - - if matpath == "": - return - - var matbn : String = matpath.get_basename() - var final_file_name : String = matbn + postfix + ".png" - - img.save_png(final_file_name) - -func get_postfix() -> String: - return postfix - -func set_postfix(pf : String) -> void: - postfix = pf - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/pattern/beehive.gd b/game/addons/mat_maker_gd/nodes/pattern/beehive.gd deleted file mode 100644 index a468d33..0000000 --- a/game/addons/mat_maker_gd/nodes/pattern/beehive.gd +++ /dev/null @@ -1,110 +0,0 @@ -tool -extends MMNode - -export(Resource) var out_main : Resource -export(Resource) var out_random_color : Resource -export(Resource) var out_uv_map : Resource - -export(Vector2) var size : Vector2 = Vector2(4, 4) - -func _init_properties(): - if !out_main: - out_main = MMNodeUniversalProperty.new() - out_main.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_main.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_random_color: - out_random_color = MMNodeUniversalProperty.new() - out_random_color.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_random_color.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_uv_map: - out_uv_map = MMNodeUniversalProperty.new() - out_uv_map.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_uv_map.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(out_main) - register_output_property(out_random_color) - register_output_property(out_uv_map) - - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(out_main) - mm_graph_node.add_slot_texture_universal(out_random_color) - mm_graph_node.add_slot_texture_universal(out_uv_map) - - mm_graph_node.add_slot_vector2("get_size", "set_size", "Size")#, Vector2(1, 32))#, Vector2(0, 32)) - - -func _render(material) -> void: - var main_pattern : Image = Image.new() - var random_color : Image = Image.new() - var uv_map : Image = Image.new() - - main_pattern.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - random_color.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - uv_map.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - - main_pattern.lock() - random_color.lock() - uv_map.lock() - - var w : float = material.image_size.x - var h : float = material.image_size.y - - var pseed : float = randf() + randi() - - for x in range(material.image_size.x): - for y in range(material.image_size.y): - var uv : Vector2 = Vector2(x / w, y / h) - - var ps : float = 1.0 / float(pseed) - - #vec2 $(name_uv)_uv = $uv*vec2($sx, $sy*1.73205080757); - #vec4 $(name_uv)_center = beehive_center($(name_uv)_uv); - var beehive_uv : Vector2 = uv * size; - var beehive_uv_center : Color = MMAlgos.beehive_center(beehive_uv); - - #Output (float) - Shows the greyscale pattern - #1.0-2.0*beehive_dist($(name_uv)_center.xy) - var f : float = 1.0 - 2.0 * MMAlgos.beehive_dist(Vector2(beehive_uv_center.r, beehive_uv_center.g)) - var main_pattern_col : Color = Color(f, f, f, 1) - - #Random color (rgb) - Shows a random color for each hexagonal tile - #rand3(fract($(name_uv)_center.zw/vec2($sx, $sy))+vec2(float($seed))) - var rcv3 : Vector3 = MMAlgos.rand3(MMAlgos.fractv2(Vector2(beehive_uv_center.b, beehive_uv_center.a) / size) + Vector2(ps, ps)) - var random_color_col : Color = Color(rcv3.x, rcv3.y, rcv3.z, 1) - - #UV map (rgb) - Shows an UV map to be connected to the UV map port of the Custom UV node - #vec3(vec2(0.5)+$(name_uv)_center.xy, rand(fract($(name_uv)_center.zw/vec2($sx, $sy))+vec2(float($seed)))) - var uvm1 : Vector2 = Vector2(0.5, 0.5) + Vector2(beehive_uv_center.r, beehive_uv_center.g) - var uvm2 : Vector2 = MMAlgos.rand2(MMAlgos.fractv2(Vector2(beehive_uv_center.b, beehive_uv_center.a) / size) + Vector2(ps, ps)) - - var uv_map_col : Color = Color(uvm1.x, uvm1.y, uvm2.x, 1) - - main_pattern.set_pixel(x, y, main_pattern_col) - random_color.set_pixel(x, y, random_color_col) - uv_map.set_pixel(x, y, uv_map_col) - - main_pattern.unlock() - random_color.unlock() - uv_map.unlock() - - out_main.set_value(main_pattern) - out_random_color.set_value(random_color) - out_uv_map.set_value(uv_map) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - return Color() - -#size -func get_size() -> Vector2: - return size - -func set_size(val : Vector2) -> void: - size = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/pattern/bricks.gd b/game/addons/mat_maker_gd/nodes/pattern/bricks.gd deleted file mode 100644 index 3ee396f..0000000 --- a/game/addons/mat_maker_gd/nodes/pattern/bricks.gd +++ /dev/null @@ -1,286 +0,0 @@ -tool -extends MMNode - -export(Resource) var out_bricks_pattern : Resource -export(Resource) var out_random_color : Resource -export(Resource) var out_position_x : Resource -export(Resource) var out_position_y : Resource -export(Resource) var out_brick_uv : Resource -export(Resource) var out_corner_uv : Resource -export(Resource) var out_direction : Resource - -export(int, "Running Bond,Running Bond (2),HerringBone,Basket Weave,Spanish Bond") var type : int = 0 -export(int) var repeat : int = 1 -export(Vector2) var col_row : Vector2 = Vector2(4, 4) -export(float) var offset : float = 0.5 -export(Resource) var mortar : Resource -export(Resource) var bevel : Resource -export(Resource) var roundness : Resource -export(float) var corner : float = 0.3 - -func _init_properties(): - if !out_bricks_pattern: - out_bricks_pattern = MMNodeUniversalProperty.new() - out_bricks_pattern.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_bricks_pattern.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_random_color: - out_random_color = MMNodeUniversalProperty.new() - out_random_color.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_random_color.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_position_x: - out_position_x = MMNodeUniversalProperty.new() - out_position_x.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_position_x.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_position_y: - out_position_y = MMNodeUniversalProperty.new() - out_position_y.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_position_y.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_brick_uv: - out_brick_uv = MMNodeUniversalProperty.new() - out_brick_uv.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_brick_uv.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_corner_uv: - out_corner_uv = MMNodeUniversalProperty.new() - out_corner_uv.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_corner_uv.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_direction: - out_direction = MMNodeUniversalProperty.new() - out_direction.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_direction.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !mortar: - mortar = MMNodeUniversalProperty.new() - mortar.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - mortar.set_default_value(0.1) - - mortar.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - mortar.slot_name = "Mortar" - mortar.value_step = 0.01 - mortar.value_range = Vector2(0, 0.5) - - if !bevel: - bevel = MMNodeUniversalProperty.new() - bevel.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - bevel.set_default_value(0.1) - - bevel.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - bevel.slot_name = "Bevel" - bevel.value_step = 0.01 - bevel.value_range = Vector2(0, 0.5) - - if !roundness: - roundness = MMNodeUniversalProperty.new() - roundness.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - roundness.set_default_value(0.1) - - roundness.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - roundness.slot_name = "Roundness" - roundness.value_step = 0.01 - roundness.value_range = Vector2(0, 0.5) - - register_output_property(out_bricks_pattern) - register_output_property(out_random_color) - register_output_property(out_position_x) - register_output_property(out_position_y) - register_output_property(out_brick_uv) - register_output_property(out_corner_uv) - register_output_property(out_direction) - - register_input_property(mortar) - register_input_property(bevel) - register_input_property(roundness) - - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(out_bricks_pattern) - mm_graph_node.add_slot_texture_universal(out_random_color) - mm_graph_node.add_slot_texture_universal(out_position_x) - mm_graph_node.add_slot_texture_universal(out_position_y) - mm_graph_node.add_slot_texture_universal(out_brick_uv) - mm_graph_node.add_slot_texture_universal(out_corner_uv) - mm_graph_node.add_slot_texture_universal(out_direction) - - mm_graph_node.add_slot_enum("get_type", "set_type", "Type", [ "Running Bond", "Running Bond (2)", "HerringBone", "Basket Weave", "Spanish Bond" ]) - mm_graph_node.add_slot_int("get_repeat", "set_repeat", "Repeat") - - mm_graph_node.add_slot_vector2("get_col_row", "set_col_row", "Col, Row")#, Vector2(1, 32))#, Vector2(0, 32)) - mm_graph_node.add_slot_float("get_offset", "set_offset", "Offset") - - mm_graph_node.add_slot_float_universal(mortar) - mm_graph_node.add_slot_float_universal(bevel) - mm_graph_node.add_slot_float_universal(roundness) - - mm_graph_node.add_slot_float("get_corner", "set_corner", "Corner") - -func _render(material) -> void: - var bricks_pattern : Image = Image.new() - var random_color : Image = Image.new() - var position_x : Image = Image.new() - var position_y : Image = Image.new() - var brick_uv : Image = Image.new() - var corner_uv : Image = Image.new() - var direction : Image = Image.new() - - bricks_pattern.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - random_color.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - position_x.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - position_y.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - brick_uv.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - corner_uv.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - direction.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - - bricks_pattern.lock() - random_color.lock() - position_x.lock() - position_y.lock() - brick_uv.lock() - corner_uv.lock() - direction.lock() - - var w : float = material.image_size.x - var h : float = material.image_size.y - - var pseed : float = randf() + randi() - - for x in range(material.image_size.x): - for y in range(material.image_size.y): - var uv : Vector2 = Vector2(x / w, y / h) - - #vec4 $(name_uv)_rect = bricks_$pattern($uv, vec2($columns, $rows), $repeat, $row_offset); - var brick_rect : Color = Color() - - #"Running Bond,Running Bond (2),HerringBone,Basket Weave,Spanish Bond" - - if type == 0: - brick_rect = MMAlgos.bricks_rb(uv, col_row, repeat, offset) - elif type == 1: - brick_rect = MMAlgos.bricks_rb2(uv, col_row, repeat, offset) - elif type == 2: - brick_rect = MMAlgos.bricks_hb(uv, col_row, repeat, offset) - elif type == 3: - brick_rect = MMAlgos.bricks_bw(uv, col_row, repeat, offset) - elif type == 4: - brick_rect = MMAlgos.bricks_sb(uv, col_row, repeat, offset) - - - #vec4 $(name_uv) = brick($uv, $(name_uv)_rect.xy, $(name_uv)_rect.zw, $mortar*$mortar_map($uv), $round*$round_map($uv), max(0.001, $bevel*$bevel_map($uv))); - var brick : Color = MMAlgos.brick(uv, Vector2(brick_rect.r, brick_rect.g), Vector2(brick_rect.b, brick_rect.a), mortar.get_value(uv), roundness.get_value(uv), max(0.001, bevel.get_value(uv))) - - #Bricks pattern (float) - A greyscale image that shows the bricks pattern - #$(name_uv).x - var bricks_pattern_col : Color = Color(brick.r, brick.r, brick.r, 1) - - #Random color (rgb) - A random color for each brick - #brick_random_color($(name_uv)_rect.xy, $(name_uv)_rect.zw, float($seed)) - var brc : Vector3 = MMAlgos.brick_random_color(Vector2(brick_rect.r, brick_rect.g), Vector2(brick_rect.b, brick_rect.a), 1 / float(pseed)) - var random_color_col : Color = Color(brc.x, brc.y, brc.z, 1) - - #Position.x (float) - The position of each brick along the X axis", - #$(name_uv).y - var position_x_col : Color = Color(brick.g, brick.g, brick.g, 1) - - #Position.y (float) - The position of each brick along the Y axis - #$(name_uv).z - var position_y_col : Color = Color(brick.b, brick.b, brick.b, 1) - - #Brick UV (rgb) - An UV map output for each brick, to be connected to the Map input of a CustomUV node - #brick_uv($uv, $(name_uv)_rect.xy, $(name_uv)_rect.zw, float($seed)) - var buv : Vector3 = MMAlgos.brick_uv(uv, Vector2(brick_rect.r, brick_rect.g), Vector2(brick_rect.b, brick_rect.a), pseed) - var brick_uv_col : Color = Color(buv.x, buv.y, buv.z, 1) - - #Corner UV (rgb) - An UV map output for each brick corner, to be connected to the Map input of a CustomUV node - #brick_corner_uv($uv, $(name_uv)_rect.xy, $(name_uv)_rect.zw, $mortar*$mortar_map($uv), $corner, float($seed)) - var bcuv : Vector3 = MMAlgos.brick_corner_uv(uv, Vector2(brick_rect.r, brick_rect.g), Vector2(brick_rect.b, brick_rect.a), mortar.get_value(uv), corner, pseed) - var corner_uv_col : Color = Color(bcuv.x, bcuv.y, bcuv.z, 1) - - #Direction (float) - The direction of each brick (white: horizontal, black: vertical) - #0.5*(sign($(name_uv)_rect.z-$(name_uv)_rect.x-$(name_uv)_rect.w+$(name_uv)_rect.y)+1.0) - var d : float = 0.5 * (sign(brick_rect.b - brick_rect.r - brick_rect.a + brick_rect.g) + 1.0) - var direction_col : Color = Color(d, d, d, 1) - - bricks_pattern.set_pixel(x, y, bricks_pattern_col) - random_color.set_pixel(x, y, random_color_col) - position_x.set_pixel(x, y, position_x_col) - position_y.set_pixel(x, y, position_y_col) - brick_uv.set_pixel(x, y, brick_uv_col) - corner_uv.set_pixel(x, y, corner_uv_col) - direction.set_pixel(x, y, direction_col) - - bricks_pattern.unlock() - random_color.unlock() - position_x.unlock() - position_y.unlock() - brick_uv.unlock() - corner_uv.unlock() - direction.unlock() - - out_bricks_pattern.set_value(bricks_pattern) - out_random_color.set_value(random_color) - out_position_x.set_value(position_x) - out_position_y.set_value(position_y) - out_brick_uv.set_value(brick_uv) - out_corner_uv.set_value(corner_uv) - out_direction.set_value(direction) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - return Color() - -#type -func get_type() -> int: - return type - -func set_type(val : int) -> void: - type = val - - set_dirty(true) - -#repeat -func get_repeat() -> int: - return repeat - -func set_repeat(val : int) -> void: - repeat = val - - set_dirty(true) - -#col_row -func get_col_row() -> Vector2: - return col_row - -func set_col_row(val : Vector2) -> void: - col_row = val - - set_dirty(true) - -#offset -func get_offset() -> float: - return offset - -func set_offset(val : float) -> void: - offset = val - - set_dirty(true) - -#corner -func get_corner() -> float: - return corner - -func set_corner(val : float) -> void: - corner = val - - set_dirty(true) - - diff --git a/game/addons/mat_maker_gd/nodes/pattern/iching.gd b/game/addons/mat_maker_gd/nodes/pattern/iching.gd deleted file mode 100644 index eacc243..0000000 --- a/game/addons/mat_maker_gd/nodes/pattern/iching.gd +++ /dev/null @@ -1,38 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Vector2) var size : Vector2 = Vector2(4, 4) - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_vector2("get_size", "set_size", "Size", 1) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var ps : float = 1.0 / float(pseed) - - #IChing(vec2($columns, $rows)*$uv, float($seed)) - return MMAlgos.IChingc(uv, size, ps) - -#size -func get_size() -> Vector2: - return size - -func set_size(val : Vector2) -> void: - size = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/pattern/pattern.gd b/game/addons/mat_maker_gd/nodes/pattern/pattern.gd deleted file mode 100644 index fe98d78..0000000 --- a/game/addons/mat_maker_gd/nodes/pattern/pattern.gd +++ /dev/null @@ -1,70 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(int, "Multiply,Add,Max,Min,Xor,Pow") var combiner_type : int = 0 -export(int, "Sine,Triangle,Square,Sawtooth,Constant,Bounce") var combiner_axis_type_x : int = 0 -export(int, "Sine,Triangle,Square,Sawtooth,Constant,Bounce") var combiner_axis_type_y : int = 0 -export(Vector2) var repeat : Vector2 = Vector2(4, 4) - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_enum("get_combiner_type", "set_combiner_type", "Combiner Type", [ "Multiply", "Add" , "Max", "Min", "Xor", "Pow" ]) - mm_graph_node.add_slot_enum("get_combiner_axis_type_x", "set_combiner_axis_type_x", "Combiner Axis type", [ "Sine", "Triangle", "Square", "Sawtooth", "Constant", "Bounce" ]) - mm_graph_node.add_slot_enum("get_combiner_axis_type_y", "set_combiner_axis_type_y", "", [ "Sine", "Triangle", "Square", "Sawtooth", "Constant", "Bounce" ]) - mm_graph_node.add_slot_vector2("get_repeat", "set_repeat", "Repeat", 1)#, Vector2(0, 32)) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var f : float = MMAlgos.pattern(uv, repeat.x, repeat.y, combiner_type, combiner_axis_type_x, combiner_axis_type_y) - - return Color(f, f, f, 1) - -#combiner_type -func get_combiner_type() -> int: - return combiner_type - -func set_combiner_type(val : int) -> void: - combiner_type = val - - set_dirty(true) - -#combiner_axis_type_x -func get_combiner_axis_type_x() -> int: - return combiner_axis_type_x - -func set_combiner_axis_type_x(val : int) -> void: - combiner_axis_type_x = val - - set_dirty(true) - -#combiner_axis_type_y -func get_combiner_axis_type_y() -> int: - return combiner_axis_type_y - -func set_combiner_axis_type_y(val : int) -> void: - combiner_axis_type_y = val - - set_dirty(true) - -#repeat -func get_repeat() -> Vector2: - return repeat - -func set_repeat(val : Vector2) -> void: - repeat = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/pattern/runes.gd b/game/addons/mat_maker_gd/nodes/pattern/runes.gd deleted file mode 100644 index 90aadeb..0000000 --- a/game/addons/mat_maker_gd/nodes/pattern/runes.gd +++ /dev/null @@ -1,38 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Vector2) var size : Vector2 = Vector2(4, 4) - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_vector2("get_size", "set_size", "Size", 1) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var ps : float = 1.0 / float(pseed) - - #Rune(vec2($columns, $rows)*$uv, float($seed)) - return MMAlgos.runesc(uv, size, ps) - -#size -func get_size() -> Vector2: - return size - -func set_size(val : Vector2) -> void: - size = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/pattern/scratches.gd b/game/addons/mat_maker_gd/nodes/pattern/scratches.gd deleted file mode 100644 index 6e92151..0000000 --- a/game/addons/mat_maker_gd/nodes/pattern/scratches.gd +++ /dev/null @@ -1,80 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Vector2) var size : Vector2 = Vector2(0.25, 0.4) -export(int) var layers : int = 4 -export(float) var waviness : float = 0.51 -export(int) var angle : int = 0 -export(float) var randomness : float = 0.44 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_vector2("get_size", "set_size", "Size", 0.01) - mm_graph_node.add_slot_int("get_layers", "set_layers", "Layers") - mm_graph_node.add_slot_float("get_waviness", "set_waviness", "Waviness", 0.01) - mm_graph_node.add_slot_int("get_angle", "set_angle", "Angle") - mm_graph_node.add_slot_float("get_randomness", "set_randomness", "Randomness", 0.01) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #scratches($uv, int($layers), vec2($length, $width), $waviness, $angle, $randomness, vec2(float($seed), 0.0)) - return MMAlgos.scratchesc(uv, layers, size, waviness, angle, randomness, Vector2(pseed, 0.0)) - -#size -func get_size() -> Vector2: - return size - -func set_size(val : Vector2) -> void: - size = val - - set_dirty(true) - -#layers -func get_layers() -> int: - return layers - -func set_layers(val : int) -> void: - layers = val - - set_dirty(true) - -#waviness -func get_waviness() -> float: - return waviness - -func set_waviness(val : float) -> void: - waviness = val - - set_dirty(true) - -#angle -func get_angle() -> int: - return angle - -func set_angle(val : int) -> void: - angle = val - - set_dirty(true) - -#randomness -func get_randomness() -> float: - return randomness - -func set_randomness(val : float) -> void: - randomness = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/pattern/sine_wave.gd b/game/addons/mat_maker_gd/nodes/pattern/sine_wave.gd deleted file mode 100644 index 28f852b..0000000 --- a/game/addons/mat_maker_gd/nodes/pattern/sine_wave.gd +++ /dev/null @@ -1,59 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(float) var amplitude : float = 0.5 -export(float) var frequency : float = 2 -export(float) var phase : float = 0 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_float("get_amplitude", "set_amplitude", "Amplitude", 0.01) - mm_graph_node.add_slot_float("get_frequency", "set_frequency", "Frequency", 0.1) - mm_graph_node.add_slot_float("get_phase", "set_phase", "Phase", 0.01) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var f : float = 1.0 - abs(2.0 * (uv.y - 0.5) - amplitude *sin((frequency * uv.x + phase)*6.28318530718)) - - return Color(f, f, f, 1) - -#amplitude -func get_amplitude() -> float: - return amplitude - -func set_amplitude(val : float) -> void: - amplitude = val - - set_dirty(true) - -#frequency -func get_frequency() -> float: - return frequency - -func set_frequency(val : float) -> void: - frequency = val - - set_dirty(true) - -#phase -func get_phase() -> float: - return phase - -func set_phase(val : float) -> void: - phase = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/pattern/truchet.gd b/game/addons/mat_maker_gd/nodes/pattern/truchet.gd deleted file mode 100644 index cb986c1..0000000 --- a/game/addons/mat_maker_gd/nodes/pattern/truchet.gd +++ /dev/null @@ -1,51 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(int, "Line,Circle") var shape : int = 0 -export(float) var size : float = 4 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_enum("get_shape", "set_shape", "Shape", [ "Line", "Circle" ]) - mm_graph_node.add_slot_float("get_size", "set_size", "Size", 1) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - if shape == 0: - return MMAlgos.truchet1c(uv, size, pseed) - elif shape == 1: - return MMAlgos.truchet2c(uv, size, pseed) - - return Color() - -#shape -func get_shape() -> int: - return shape - -func set_shape(val : int) -> void: - shape = val - - set_dirty(true) - -#size -func get_size() -> float: - return size - -func set_size(val : float) -> void: - size = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/pattern/weave.gd b/game/addons/mat_maker_gd/nodes/pattern/weave.gd deleted file mode 100644 index 0a0e432..0000000 --- a/game/addons/mat_maker_gd/nodes/pattern/weave.gd +++ /dev/null @@ -1,132 +0,0 @@ -tool -extends MMNode - -export(Resource) var out_main : Resource -export(Resource) var out_horizontal_map : Resource -export(Resource) var out_vertical_map : Resource - -export(Vector2) var size : Vector2 = Vector2(4, 4) -export(Resource) var width : Resource -export(int) var stitch : int = 1 - -func _init_properties(): - if !out_main: - out_main = MMNodeUniversalProperty.new() - out_main.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_main.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_horizontal_map: - out_horizontal_map = MMNodeUniversalProperty.new() - out_horizontal_map.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_horizontal_map.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_vertical_map: - out_vertical_map = MMNodeUniversalProperty.new() - out_vertical_map.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_vertical_map.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !width: - width = MMNodeUniversalProperty.new() - width.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - width.set_default_value(Vector2(0.9, 0.9)) - - width.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - width.slot_name = "Width" - width.value_step = 0.01 - width.value_range = Vector2(0, 1) - - register_output_property(out_main) - register_output_property(out_horizontal_map) - register_output_property(out_vertical_map) - - register_input_property(width) - - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(out_main) - mm_graph_node.add_slot_texture_universal(out_horizontal_map) - mm_graph_node.add_slot_texture_universal(out_vertical_map) - - mm_graph_node.add_slot_vector2("get_size", "set_size", "Size")#, Vector2(1, 32))#, Vector2(0, 32)) - mm_graph_node.add_slot_vector2_universal(width) - - mm_graph_node.add_slot_int("get_stitch", "set_stitch", "Stitch") - - -func _render(material) -> void: - var main_pattern : Image = Image.new() - var horizontal_map : Image = Image.new() - var vertical_map : Image = Image.new() - - main_pattern.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - horizontal_map.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - vertical_map.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - - main_pattern.lock() - horizontal_map.lock() - vertical_map.lock() - - var w : float = material.image_size.x - var h : float = material.image_size.y - - var pseed : float = randf() + randi() - - for x in range(material.image_size.x): - for y in range(material.image_size.y): - var uv : Vector2 = Vector2(x / w, y / h) - - var width_val : Vector2 = width.get_value(uv) - - #vec3 $(name_uv) = weave2($uv, vec2($columns, $rows), $stitch, $width_x*$width_map($uv), $width_y*$width_map($uv)); - var weave : Vector3 = MMAlgos.weave2(uv, size, stitch, width_val.x, width_val.y); - - #Outputs: - - #Output (float) - Shows the generated greyscale weave pattern. - #$(name_uv).x - var main_pattern_col : Color = Color(weave.x, weave.x, weave.x, 1) - - #Horizontal mask (float) - Horizontal mask - #$(name_uv).y - var horizontal_map_col : Color = Color(weave.y, weave.y, weave.y, 1) - - #Vertical mask (float) - Mask for vertical stripes - #$(name_uv).z - var vertical_map_col : Color = Color(weave.z, weave.z, weave.z, 1) - - main_pattern.set_pixel(x, y, main_pattern_col) - horizontal_map.set_pixel(x, y, horizontal_map_col) - vertical_map.set_pixel(x, y, vertical_map_col) - - main_pattern.unlock() - horizontal_map.unlock() - vertical_map.unlock() - - out_main.set_value(main_pattern) - out_horizontal_map.set_value(horizontal_map) - out_vertical_map.set_value(vertical_map) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - return Color() - -#size -func get_size() -> Vector2: - return size - -func set_size(val : Vector2) -> void: - size = val - - set_dirty(true) - -#stitch -func get_stitch() -> int: - return stitch - -func set_stitch(val : int) -> void: - stitch = val - - set_dirty(true) - diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_annular_shape.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_annular_shape.gd deleted file mode 100644 index c5daf67..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_annular_shape.gd +++ /dev/null @@ -1,51 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(float) var width : float = 0.1 -export(int) var ripples : int = 1 - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - #output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Apply >>>" - output.get_value_from_owner = true - - register_input_property(output) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_float("get_width", "set_width", "Width", 0.01) - mm_graph_node.add_slot_int("get_ripples", "set_ripples", "Ripples") - -func _get_property_value(uv : Vector2): - var val : float = output.get_value(uv, true) - - return MMAlgos.sdRipples(val, width, ripples) - -#width -func get_width() -> float: - return width - -func set_width(val : float) -> void: - width = val - - emit_changed() - output.emit_changed() - -#ripples -func get_ripples() -> int: - return ripples - -func set_ripples(val : int) -> void: - ripples = val - - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_bool.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_bool.gd deleted file mode 100644 index 9879f36..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_bool.gd +++ /dev/null @@ -1,73 +0,0 @@ -tool -extends MMNode - -export(Resource) var input1 : Resource -export(Resource) var input2 : Resource -export(Resource) var output : Resource -export(int, "Union,Substraction,Intersection") var operation : int = 0 - -func _init_properties(): - if !input1: - input1 = MMNodeUniversalProperty.new() - input1.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - input1.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input1.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - input1.slot_name = ">>> Input 1 " - if !input1.is_connected("changed", self, "on_input_changed"): - input1.connect("changed", self, "on_input_changed") - - if !input2: - input2 = MMNodeUniversalProperty.new() - input2.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - input2.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input2.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - input2.slot_name = ">>> Input 2 " - - if !input2.is_connected("changed", self, "on_input_changed"): - input2.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = " Output >>>" - output.get_value_from_owner = true - - register_input_property(input1) - register_input_property(input2) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input1) - mm_graph_node.add_slot_label_universal(input2) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_enum("get_operation", "set_operation", "Operation", [ "Union", "Substraction", "Intersection" ]) - -func _get_property_value(uv : Vector2) -> float: - if operation == 0: - return MMAlgos.sdf_boolean_union(input1.get_value(uv), input2.get_value(uv)) - elif operation == 1: - return MMAlgos.sdf_boolean_substraction(input1.get_value(uv), input2.get_value(uv)) - elif operation == 2: - return MMAlgos.sdf_boolean_intersection(input1.get_value(uv), input2.get_value(uv)) - - return 0.0 - -#operation -func get_operation() -> int: - return operation - -func set_operation(val : int) -> void: - operation = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_circle_repeat.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_circle_repeat.gd deleted file mode 100644 index d682b96..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_circle_repeat.gd +++ /dev/null @@ -1,41 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(int) var count : int = 6 - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - #output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Apply >>>" - output.get_value_from_owner = true - - register_input_property(output) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_int("get_count", "set_count", "Count") - -func _get_property_value(uv : Vector2): - #$in(circle_repeat_transform_2d($uv-vec2(0.5), $c)+vec2(0.5)) - var new_uv : Vector2 = MMAlgos.circle_repeat_transform_2d(uv - Vector2(0.5, 0.5), count) + Vector2(0.5, 0.5) - - return output.get_value(new_uv, true) - -#count -func get_count() -> int: - return count - -func set_count(val : int) -> void: - count = val - - emit_changed() - output.emit_changed() - diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_morph.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_morph.gd deleted file mode 100644 index 53547f0..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_morph.gd +++ /dev/null @@ -1,66 +0,0 @@ -tool -extends MMNode - -export(Resource) var input1 : Resource -export(Resource) var input2 : Resource -export(Resource) var output : Resource -export(float) var amount : float = 0.5 - -func _init_properties(): - if !input1: - input1 = MMNodeUniversalProperty.new() - input1.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - input1.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input1.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - input1.slot_name = ">>> Input 1 " - if !input1.is_connected("changed", self, "on_input_changed"): - input1.connect("changed", self, "on_input_changed") - - if !input2: - input2 = MMNodeUniversalProperty.new() - input2.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - input2.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input2.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - input2.slot_name = ">>> Input 2 " - - if !input2.is_connected("changed", self, "on_input_changed"): - input2.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = " Output >>>" - output.get_value_from_owner = true - - register_input_property(input1) - register_input_property(input2) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input1) - mm_graph_node.add_slot_label_universal(input2) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_float("get_amount", "set_amount", "Amount", 0.01) - -func _get_property_value(uv : Vector2) -> float: - return MMAlgos.sdf_morph(input1.get_value(uv), input2.get_value(uv), amount) - -#amount -func get_amount() -> float: - return amount - -func set_amount(val : float) -> void: - amount = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_repeat.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_repeat.gd deleted file mode 100644 index e76e768..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_repeat.gd +++ /dev/null @@ -1,66 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(int) var x : int = 3 -export(int) var y : int = 3 -export(float) var random_rotation : float = 0.5 - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - #output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Apply >>>" - output.get_value_from_owner = true - - register_input_property(output) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_int("get_x", "set_x", "X") - mm_graph_node.add_slot_int("get_y", "set_y", "Y") - mm_graph_node.add_slot_float("get_random_rotation", "set_random_rotation", "Random rotation", 0.01) - -func _get_property_value(uv : Vector2): - #todo add this as a parameter - var pseed : int = 123123 - - #$in(repeat_2d($uv, vec2(1.0/$rx, 1.0/$ry), float($seed), $r)) - var new_uv : Vector2 = MMAlgos.repeat_2d(uv, Vector2(1.0 / float(x), 1.0/ float(y)), 1.0/float(pseed), random_rotation) - - return output.get_value(new_uv, true) -#x -func get_x() -> int: - return x - -func set_x(val : int) -> void: - x = val - - emit_changed() - output.emit_changed() - -#y -func get_y() -> int: - return y - -func set_y(val : int) -> void: - y = val - - emit_changed() - output.emit_changed() - -#random_rotation -func get_random_rotation() -> float: - return random_rotation - -func set_random_rotation(val : float) -> void: - random_rotation = val - - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_rounded_shape.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_rounded_shape.gd deleted file mode 100644 index 9849a94..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_rounded_shape.gd +++ /dev/null @@ -1,40 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(float) var radius : float = 0 - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - #output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Apply >>>" - output.get_value_from_owner = true - - register_input_property(output) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_float("get_radius", "set_radius", "Radius", 0.01) - -func _get_property_value(uv : Vector2): - var val : float = output.get_value(uv, true) - - return MMAlgos.sdf_rounded_shape(val, radius) - -#radius -func get_radius() -> float: - return radius - -func set_radius(val : float) -> void: - radius = val - - emit_changed() - output.emit_changed() - diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_smooth_bool.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_smooth_bool.gd deleted file mode 100644 index 77ea9dd..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_op_smooth_bool.gd +++ /dev/null @@ -1,85 +0,0 @@ -tool -extends MMNode - -export(Resource) var input1 : Resource -export(Resource) var input2 : Resource -export(Resource) var output : Resource -export(int, "Union,Substraction,Intersection") var operation : int = 0 -export(float) var smoothness : float = 0.15 - -func _init_properties(): - if !input1: - input1 = MMNodeUniversalProperty.new() - input1.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - input1.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input1.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - input1.slot_name = ">>> Input 1 " - if !input1.is_connected("changed", self, "on_input_changed"): - input1.connect("changed", self, "on_input_changed") - - if !input2: - input2 = MMNodeUniversalProperty.new() - input2.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - input2.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input2.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - input2.slot_name = ">>> Input 2 " - - if !input2.is_connected("changed", self, "on_input_changed"): - input2.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = " Output >>>" - output.get_value_from_owner = true - - register_input_property(input1) - register_input_property(input2) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input1) - mm_graph_node.add_slot_label_universal(input2) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_enum("get_operation", "set_operation", "Operation", [ "Union", "Substraction", "Intersection" ]) - mm_graph_node.add_slot_float("get_smoothness", "set_smoothness", "Smoothness", 0.01) - -func _get_property_value(uv : Vector2) -> float: - if operation == 0: - return MMAlgos.sdf_smooth_boolean_union(input1.get_value(uv), input2.get_value(uv), smoothness) - elif operation == 1: - return MMAlgos.sdf_smooth_boolean_substraction(input1.get_value(uv), input2.get_value(uv), smoothness) - elif operation == 2: - return MMAlgos.sdf_smooth_boolean_intersection(input1.get_value(uv), input2.get_value(uv), smoothness) - - return 0.0 - -#operation -func get_operation() -> int: - return operation - -func set_operation(val : int) -> void: - operation = val - - emit_changed() - output.emit_changed() - -#smoothness -func get_smoothness() -> float: - return smoothness - -func set_smoothness(val : float) -> void: - smoothness = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_arc.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_arc.gd deleted file mode 100644 index e704d38..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_arc.gd +++ /dev/null @@ -1,58 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(Vector2) var angle : Vector2 = Vector2(30, 150) -export(float) var radius : float = 0.3 -export(float) var width : float = 0.1 - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_vector2("get_angle", "set_angle", "Angle", 1) - mm_graph_node.add_slot_float("get_radius", "set_radius", "Radius", 0.01) - mm_graph_node.add_slot_float("get_width", "set_width", "Width", 0.01) - -func _get_property_value(uv : Vector2) -> float: - return MMAlgos.sdf_arc(uv, angle, Vector2(radius, width)) - -#angle -func get_angle() -> Vector2: - return angle - -func set_angle(val : Vector2) -> void: - angle = val - - emit_changed() - output.emit_changed() - -#radius -func get_radius() -> float: - return radius - -func set_radius(val : float) -> void: - radius = val - - emit_changed() - output.emit_changed() - -#width -func get_width() -> float: - return width - -func set_width(val : float) -> void: - width = val - - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_box.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_box.gd deleted file mode 100644 index 3a88da3..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_box.gd +++ /dev/null @@ -1,46 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(Vector2) var center : Vector2 = Vector2(0, 0) -export(Vector2) var size : Vector2 = Vector2(0.3, 0.2) - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_vector2("get_center", "set_center", "Center", 0.01) - mm_graph_node.add_slot_vector2("get_size", "set_size", "Size", 0.01) - -func _get_property_value(uv : Vector2) -> float: - return MMAlgos.sdf_box(uv, center, size) - -#center -func get_center() -> Vector2: - return center - -func set_center(val : Vector2) -> void: - center = val - - emit_changed() - output.emit_changed() - -#size -func get_size() -> Vector2: - return size - -func set_size(val : Vector2) -> void: - size = val - - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_circle.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_circle.gd deleted file mode 100644 index c5cce62..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_circle.gd +++ /dev/null @@ -1,46 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(Vector2) var center : Vector2 = Vector2(0, 0) -export(float) var radius : float = 0.4 - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_vector2("get_center", "set_center", "Center", 0.01) - mm_graph_node.add_slot_float("get_radius", "set_radius", "Radius", 0.01) - -func _get_property_value(uv : Vector2) -> float: - return MMAlgos.sdf_circle(uv, center, radius) - -#center -func get_center() -> Vector2: - return center - -func set_center(val : Vector2) -> void: - center = val - - emit_changed() - output.emit_changed() - -#radius -func get_radius() -> float: - return radius - -func set_radius(val : float) -> void: - radius = val - - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_line.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_line.gd deleted file mode 100644 index f4744da..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_line.gd +++ /dev/null @@ -1,70 +0,0 @@ -tool -extends CurveBase - -export(Resource) var output : Resource -export(Vector2) var A : Vector2 = Vector2(-0.3, -0.3) -export(Vector2) var B : Vector2 = Vector2(0.3, 0.3) -export(float) var width : float = 0.1 - -func _init(): - init_points_11() - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_vector2("get_a", "set_a", "A", 0.01) - mm_graph_node.add_slot_vector2("get_b", "set_b", "B", 0.01) - mm_graph_node.add_slot_float("get_width", "set_width", "Width", 0.01) - mm_graph_node.add_slot_curve() - -func _get_property_value(uv : Vector2) -> float: - var line : Vector2 = MMAlgos.sdf_line(uv, A, B, width) - - #$(name_uv)_sdl.x - $r * $profile($(name_uv)_sdl.y) - - return line.x - width * MMAlgos.curve(line.y, points_array) - -#a -func get_a() -> Vector2: - return A - -func set_a(val : Vector2) -> void: - A = val - - emit_changed() - output.emit_changed() - -#b -func get_b() -> Vector2: - return B - -func set_b(val : Vector2) -> void: - B = val - - emit_changed() - output.emit_changed() - -#width -func get_width() -> float: - return width - -func set_width(val : float) -> void: - width = val - - emit_changed() - output.emit_changed() - -func _curve_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_polygon.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_polygon.gd deleted file mode 100644 index c52e138..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_polygon.gd +++ /dev/null @@ -1,26 +0,0 @@ -tool -extends PolygonBase - -export(Resource) var output : Resource - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - mm_graph_node.add_slot_polygon() - -func _get_property_value(uv : Vector2) -> float: - return MMAlgos.sdPolygon(uv, points) - -func _polygon_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_rhombus.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_rhombus.gd deleted file mode 100644 index 827bc41..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_shape_rhombus.gd +++ /dev/null @@ -1,46 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(Vector2) var center : Vector2 = Vector2(0, 0) -export(Vector2) var size : Vector2 = Vector2(0.3, 0.2) - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_vector2("get_center", "set_center", "Center", 0.01) - mm_graph_node.add_slot_vector2("get_size", "set_size", "Size", 0.01) - -func _get_property_value(uv : Vector2) -> float: - return MMAlgos.sdf_rhombus(uv, center, size) - -#center -func get_center() -> Vector2: - return center - -func set_center(val : Vector2) -> void: - center = val - - emit_changed() - output.emit_changed() - -#size -func get_size() -> Vector2: - return size - -func set_size(val : Vector2) -> void: - size = val - - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_show.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_show.gd deleted file mode 100644 index 3c8871b..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_show.gd +++ /dev/null @@ -1,64 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(float) var bevel : float = 0 -export(float) var base : float = 0 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - #for some reason this doesn't work, todo check -# input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = "Input" - - register_output_property(image) - register_input_property(input) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_label_universal(input) - - mm_graph_node.add_slot_float("get_bevel", "set_bevel", "Bevel", 0.01) - mm_graph_node.add_slot_float("get_base", "set_base", "Base", 0.01) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var f : float = input.get_value(uv) - - #clamp($base-$in($uv)/max($bevel, 0.00001), 0.0, 1.0) - var cf : float = clamp(base - f / max(bevel, 0.00001), 0.0, 1.0) - - return Color(cf, cf, cf, 1) - -#bevel -func get_bevel() -> float: - return bevel - -func set_bevel(val : float) -> void: - bevel = val - - set_dirty(true) - -#base -func get_base() -> float: - return base - -func set_base(val : float) -> void: - base = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_tf_rotate.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_tf_rotate.gd deleted file mode 100644 index 0647613..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_tf_rotate.gd +++ /dev/null @@ -1,39 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(float) var angle : float = 0 - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - #output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Apply >>>" - output.get_value_from_owner = true - - register_input_property(output) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_float("get_angle", "set_angle", "Angle", 1) - -func _get_property_value(uv : Vector2): - #$in(sdf2d_rotate($uv, $a*0.01745329251))", - return output.get_value(MMAlgos.sdf2d_rotate(uv, angle * 0.01745329251), true) - -#angle -func get_angle() -> float: - return angle - -func set_angle(val : float) -> void: - angle = val - - emit_changed() - output.emit_changed() - diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_tf_scale.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_tf_scale.gd deleted file mode 100644 index c42fbaa..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_tf_scale.gd +++ /dev/null @@ -1,39 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(float) var scale : float = 1 - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - #output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Apply >>>" - output.get_value_from_owner = true - - register_input_property(output) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_float("get_scale", "set_scale", "Scale", 0.01) - -func _get_property_value(uv : Vector2): - #$in(($uv-vec2(0.5))/$s+vec2(0.5))*$s - return output.get_value(((uv - Vector2(0.5, 0.5)) / scale + Vector2(0.5, 0.5)), true) - -#scale -func get_scale() -> float: - return scale - -func set_scale(val : float) -> void: - scale = val - - emit_changed() - output.emit_changed() - diff --git a/game/addons/mat_maker_gd/nodes/sdf2d/sd_tf_translate.gd b/game/addons/mat_maker_gd/nodes/sdf2d/sd_tf_translate.gd deleted file mode 100644 index cc2b9bd..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf2d/sd_tf_translate.gd +++ /dev/null @@ -1,38 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(Vector2) var translation : Vector2 = Vector2(0, 0) - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - output.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - #output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Apply >>>" - output.get_value_from_owner = true - - register_input_property(output) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_vector2("get_translation", "set_translation", "Translation", 0.01) - -func _get_property_value(uv : Vector2): - return output.get_value(uv - translation, true) - -#a -func get_translation() -> Vector2: - return translation - -func set_translation(val : Vector2) -> void: - translation = val - - emit_changed() - output.emit_changed() - diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_color.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_color.gd deleted file mode 100644 index 03181aa..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_color.gd +++ /dev/null @@ -1,56 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource -export(Resource) var output : Resource -export(float) var color : float = 0.5 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_VECTOR2 - input.slot_name = ">>> Input " - if !input.is_connected("changed", self, "on_input_changed"): - input.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_input_property(input) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_float("get_color", "set_color", "Color", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - var v : Vector2 = input.get_value_sdf3d(uv3) - - v.y = color - - return v - - -#color -func get_color() -> float: - return color - -func set_color(val : float) -> void: - color = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_bool.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_bool.gd deleted file mode 100644 index 9588677..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_bool.gd +++ /dev/null @@ -1,76 +0,0 @@ -tool -extends MMNode - -export(Resource) var input1 : Resource -export(Resource) var input2 : Resource -export(Resource) var output : Resource -export(int, "Union,Substraction,Intersection") var operation : int = 0 - -func _init_properties(): - if !input1: - input1 = MMNodeUniversalProperty.new() - input1.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - input1.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input1.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_VECTOR2 - input1.slot_name = ">>> Input 1 " - - if !input1.is_connected("changed", self, "on_input_changed"): - input1.connect("changed", self, "on_input_changed") - - if !input2: - input2 = MMNodeUniversalProperty.new() - input2.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - input2.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input2.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_VECTOR2 - input2.slot_name = ">>> Input 2 " - - if !input2.is_connected("changed", self, "on_input_changed"): - input2.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_input_property(input1) - register_input_property(input2) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input1) - mm_graph_node.add_slot_label_universal(input2) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_enum("get_operation", "set_operation", "Operation", [ "Union", "Substraction", "Intersection" ]) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - var s1 : Vector2 = input1.get_value_sdf3d(uv3) - var s2 : Vector2 = input2.get_value_sdf3d(uv3) - - if operation == 0: - return MMAlgos.sdf3dc_union(s1, s2) - elif operation == 1: - return MMAlgos.sdf3dc_sub(s1, s2) - elif operation == 2: - return MMAlgos.sdf3dc_inter(s1, s2) - - return Vector2() - -#operation -func get_operation() -> int: - return operation - -func set_operation(val : int) -> void: - operation = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_circle_repeat.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_circle_repeat.gd deleted file mode 100644 index 71a37cb..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_circle_repeat.gd +++ /dev/null @@ -1,56 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource -export(Resource) var output : Resource -export(int) var count : int = 5 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_VECTOR2 - input.slot_name = ">>> Input " - - if !input.is_connected("changed", self, "on_input_changed"): - input.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_input_property(input) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_int("get_count", "set_count", "Count") - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - #todo make seed a class variable probably into MMNode - - var new_uv : Vector3 = MMAlgos.circle_repeat_transform(uv3, count) - - return input.get_value_sdf3d(new_uv) - -#count -func get_count() -> int: - return count - -func set_count(val : int) -> void: - count = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_elongation.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_elongation.gd deleted file mode 100644 index 882f089..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_elongation.gd +++ /dev/null @@ -1,56 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource -export(Resource) var output : Resource -export(Vector3) var length : Vector3 = Vector3(0.2, 0, 0) - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_VECTOR2 - input.slot_name = ">>> Input " - if !input.is_connected("changed", self, "on_input_changed"): - input.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_input_property(input) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_vector3("get_length", "set_length", "Length", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - #$in($uv - clamp($uv, -abs(vec3($x, $y, $z)), abs(vec3($x, $y, $z)))) - - var new_uv : Vector3 = uv3 - MMAlgos.clampv3(uv3, -MMAlgos.absv3(length), MMAlgos.absv3(length)) - - return input.get_value_sdf3d(new_uv) - - -#length -func get_length() -> Vector3: - return length - -func set_length(val : Vector3) -> void: - length = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_extrusion.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_extrusion.gd deleted file mode 100644 index fe27a4b..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_extrusion.gd +++ /dev/null @@ -1,60 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource -export(Resource) var output : Resource -export(float) var length : float = 0.25 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - input.slot_name = ">>> Input " - - if !input.is_connected("changed", self, "on_input_changed"): - input.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_input_property(input) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_float("get_length", "set_length", "Length", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - #vec2 $(name_uv)_w = vec2($in($uv.xz+vec2(0.5)),abs($uv.y)-$d); - #ret min(max($(name_uv)_w.x,$(name_uv)_w.y),0.0)+length(max($(name_uv)_w,0.0)) - - var f : float = input.get_value(Vector2(uv3.x, uv3.z) + Vector2(0.5, 0.5)) - var w : Vector2 = Vector2(f, abs(uv3.y) - length) - - var ff : float = min(max(w.x,w.y),0.0) + MMAlgos.maxv2(w, Vector2()).length() - - return Vector2(ff, 0) - -#length -func get_length() -> float: - return length - -func set_length(val : float) -> void: - length = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_morph.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_morph.gd deleted file mode 100644 index 4ff09cf..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_morph.gd +++ /dev/null @@ -1,71 +0,0 @@ -tool -extends MMNode - -export(Resource) var input1 : Resource -export(Resource) var input2 : Resource -export(Resource) var output : Resource -export(float) var amount : float = 0.5 - -func _init_properties(): - if !input1: - input1 = MMNodeUniversalProperty.new() - input1.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - input1.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input1.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_VECTOR2 - input1.slot_name = ">>> Input 1 " - - if !input1.is_connected("changed", self, "on_input_changed"): - input1.connect("changed", self, "on_input_changed") - - if !input2: - input2 = MMNodeUniversalProperty.new() - input2.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - input2.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input2.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_VECTOR2 - input2.slot_name = ">>> Input 2 " - - if !input2.is_connected("changed", self, "on_input_changed"): - input2.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_input_property(input1) - register_input_property(input2) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input1) - mm_graph_node.add_slot_label_universal(input2) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_float("get_amount", "set_amount", "Amount", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - var s1 : Vector2 = input1.get_value_sdf3d(uv3) - var s2 : Vector2 = input2.get_value_sdf3d(uv3) - - #mix($in1($uv), $in2($uv), $amount) - - return lerp(s1, s2, amount) - -#amount -func get_amount() -> float: - return amount - -func set_amount(val : float) -> void: - amount = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_repeat.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_repeat.gd deleted file mode 100644 index 781b0e3..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_repeat.gd +++ /dev/null @@ -1,68 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource -export(Resource) var output : Resource -export(Vector2) var col_row : Vector2 = Vector2(3, 3) -export(float) var rotation : float = 0.3 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_VECTOR2 - input.slot_name = ">>> Input " - - if !input.is_connected("changed", self, "on_input_changed"): - input.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_input_property(input) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_vector2("get_col_row", "set_col_row", "Col,Row", 1) - mm_graph_node.add_slot_float("get_rotation", "set_rotation", "Rotation", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - #todo make seed a class variable probably into MMNode - - var new_uv : Vector3 = MMAlgos.sdf3d_repeat(uv3, col_row, rotation, 1) - - return input.get_value_sdf3d(new_uv) - -#col_row -func get_col_row() -> Vector2: - return col_row - -func set_col_row(val : Vector2) -> void: - col_row = val - - emit_changed() - output.emit_changed() - -#rotation -func get_rotation() -> float: - return rotation - -func set_rotation(val : float) -> void: - rotation = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_revolution.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_revolution.gd deleted file mode 100644 index 8916bbf..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_revolution.gd +++ /dev/null @@ -1,57 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource -export(Resource) var output : Resource -export(float) var offset : float = 0.25 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - input.slot_name = ">>> Input " - - if !input.is_connected("changed", self, "on_input_changed"): - input.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_input_property(input) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_float("get_offset", "set_offset", "Offset", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - #vec2 $(name_uv)_q = vec2(length($uv.xy) - $d + 0.5, $uv.z + 0.5); - - var uv : Vector2 = Vector2(Vector2(uv3.x, uv3.y).length() - offset + 0.5, uv3.z + 0.5) - var f : float = input.get_value(uv) - - return Vector2(f, 0) - -#offset -func get_offset() -> float: - return offset - -func set_offset(val : float) -> void: - offset = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_rounded.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_rounded.gd deleted file mode 100644 index ab9da7d..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_rounded.gd +++ /dev/null @@ -1,58 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource -export(Resource) var output : Resource -export(float) var radius : float = 0.15 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_VECTOR2 - input.slot_name = ">>> Input " - if !input.is_connected("changed", self, "on_input_changed"): - input.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_input_property(input) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_float("get_radius", "set_radius", "Radius", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - var v : Vector2 = input.get_value_sdf3d(uv3) - - #vec2($(name_uv)_v.x-$r, $(name_uv)_v.y) - - v.x -= radius - - return v - - -#radius -func get_radius() -> float: - return radius - -func set_radius(val : float) -> void: - radius = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_smooth_bool.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_smooth_bool.gd deleted file mode 100644 index c68d3bf..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_op_smooth_bool.gd +++ /dev/null @@ -1,88 +0,0 @@ -tool -extends MMNode - -export(Resource) var input1 : Resource -export(Resource) var input2 : Resource -export(Resource) var output : Resource -export(int, "Union,Substraction,Intersection") var operation : int = 0 -export(float) var smoothness : float = 0.15 - -func _init_properties(): - if !input1: - input1 = MMNodeUniversalProperty.new() - input1.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - input1.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input1.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_VECTOR2 - input1.slot_name = ">>> Input 1 " - - if !input1.is_connected("changed", self, "on_input_changed"): - input1.connect("changed", self, "on_input_changed") - - if !input2: - input2 = MMNodeUniversalProperty.new() - input2.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - input2.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input2.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_VECTOR2 - input2.slot_name = ">>> Input 2 " - - if !input2.is_connected("changed", self, "on_input_changed"): - input2.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_input_property(input1) - register_input_property(input2) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input1) - mm_graph_node.add_slot_label_universal(input2) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_enum("get_operation", "set_operation", "Operation", [ "Union", "Substraction", "Intersection" ]) - mm_graph_node.add_slot_float("get_smoothness", "set_smoothness", "Smoothness", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - var s1 : Vector2 = input1.get_value_sdf3d(uv3) - var s2 : Vector2 = input2.get_value_sdf3d(uv3) - - if operation == 0: - return MMAlgos.sdf3d_smooth_union(s1, s2, smoothness) - elif operation == 1: - return MMAlgos.sdf3d_smooth_subtraction(s1, s2, smoothness) - elif operation == 2: - return MMAlgos.sdf3d_smooth_intersection(s1, s2, smoothness) - - return Vector2() - -#operation -func get_operation() -> int: - return operation - -func set_operation(val : int) -> void: - operation = val - - emit_changed() - output.emit_changed() - -#smoothness -func get_smoothness() -> float: - return smoothness - -func set_smoothness(val : float) -> void: - smoothness = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_render.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_render.gd deleted file mode 100644 index d1bd3e4..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_render.gd +++ /dev/null @@ -1,176 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource - -export(Resource) var out_height_map : Resource -export(Resource) var out_normal_map : Resource -export(Resource) var out_color_map : Resource - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - #for some reason this doesn't work, todo check -# input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = "Input" - - if !out_height_map: - out_height_map = MMNodeUniversalProperty.new() - out_height_map.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_height_map.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_normal_map: - out_normal_map = MMNodeUniversalProperty.new() - out_normal_map.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_normal_map.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !out_color_map: - out_color_map = MMNodeUniversalProperty.new() - out_color_map.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - out_color_map.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(out_height_map) - register_output_property(out_normal_map) - register_output_property(out_color_map) - register_input_property(input) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(out_height_map) - mm_graph_node.add_slot_texture_universal(out_normal_map) - mm_graph_node.add_slot_texture_universal(out_color_map) - - -func _render(material) -> void: - var height_map : Image = Image.new() - var normal_map : Image = Image.new() - var color_map : Image = Image.new() - - height_map.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - normal_map.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - color_map.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - - height_map.lock() - normal_map.lock() - color_map.lock() - - var w : float = material.image_size.x - var h : float = material.image_size.y - - var pseed : float = randf() + randi() - - for x in range(material.image_size.x): - for y in range(material.image_size.y): - var uv : Vector2 = Vector2(x / w, y / h) - - var raymarch : Vector2 = sdf3d_raymarch(uv) - - #HeightMap - float - The generated height map - #1.0-$(name_uv)_d.x - var hmf : float = 1.0 - raymarch.x - var height_map_col : Color = Color(hmf, hmf, hmf, 1) - - #NormalMap - rgb - The generated normal map - #vec3(0.5) + 0.5* normal_$name(vec3($uv-vec2(0.5), 1.0-$(name_uv)_d.x)) - var nuv : Vector2 = uv - Vector2(0.5, 0.5) - var n : Vector3 = sdf3d_normal(Vector3(nuv.x, nuv.y, 1.0 - raymarch.x)) - var nn : Vector3 = Vector3(0.5, 0.5, 0.5) + 0.5 * n - - var normal_map_col : Color = Color(nn.x, nn.y, nn.z, 1) - - #ColorMap - float - The generated color index map - #$(name_uv)_d.y - var color_map_col : Color = Color(raymarch.y, raymarch.y, raymarch.y, 1) - - height_map.set_pixel(x, y, height_map_col) - normal_map.set_pixel(x, y, normal_map_col) - color_map.set_pixel(x, y, color_map_col) - - height_map.unlock() - normal_map.unlock() - color_map.unlock() - - out_height_map.set_value(height_map) - out_normal_map.set_value(normal_map) - out_color_map.set_value(color_map) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - return Color() - -#vec2 raymarch_$name(vec2 uv) { -# vec3 ro = vec3(uv-vec2(0.5), 1.0); -# vec3 rd = vec3(0.0, 0.0, -1.0); -# float dO = 0.0; -# float c = 0.0; -# -# for (int i=0; i < 100; i++) { -# vec3 p = ro + rd*dO; -# vec2 dS = $sdf(p); -# dO += dS.x; -# -# if (dO >= 1.0) { -# break; -# } else if (dS.x < 0.0001) { -# c = dS.y; -# break; -# } -# } -# -# return vec2(dO, c); -#} - -func sdf3d_raymarch(uv : Vector2) -> Vector2: - var ro : Vector3 = Vector3(uv.x - 0.5, uv.y - 0.5, 1.0); - var rd : Vector3 = Vector3(0.0, 0.0, -1.0); - var dO : float = 0.0; - var c : float = 0.0; - - for i in range(100): - var p : Vector3 = ro + rd * dO; - var dS : Vector2 = input.get_value_sdf3d(p) - - dO += dS.x; - - if (dO >= 1.0): - break; - elif (dS.x < 0.0001): - c = dS.y; - break; - - return Vector2(dO, c); - -#vec3 normal_$name(vec3 p) { -# if (p.z <= 0.0) { -# return vec3(0.0, 0.0, 1.0); -# } -# -# float d = $sdf(p).x; -# float e = .001; -# vec3 n = d - vec3( -# $sdf(p-vec3(e, 0.0, 0.0)).x, -# $sdf(p-vec3(0.0, e, 0.0)).x, -# $sdf(p-vec3(0.0, 0.0, e)).x); -# -# return vec3(-1.0, -1.0, -1.0)*normalize(n); -#} - -func sdf3d_normal(p : Vector3) -> Vector3: - if (p.z <= 0.0): - return Vector3(0.0, 0.0, 1.0); - - var d : float = input.get_value_sdf3d(p).x - var e : float = .001; - - var n : Vector3 = Vector3( - d - input.get_value_sdf3d(p - Vector3(e, 0.0, 0.0)).x, - d - input.get_value_sdf3d(p - Vector3(0.0, e, 0.0)).x, - d - input.get_value_sdf3d(p - Vector3(0.0, 0.0, e)).x) - - return Vector3(-1.0, -1.0, -1.0) * n.normalized() - diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_box.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_box.gd deleted file mode 100644 index 4c23674..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_box.gd +++ /dev/null @@ -1,46 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(Vector3) var size : Vector3 = Vector3(0.3, 0.25, 0.25) -export(float) var radius : float = 0.01 - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_vector3("get_size", "set_size", "Size", 0.01) - mm_graph_node.add_slot_float("get_radius", "set_radius", "Radius", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - return MMAlgos.sdf3d_box(uv3, size.x, size.y, size.z, radius) - -#size -func get_size() -> Vector3: - return size - -func set_size(val : Vector3) -> void: - size = val - - emit_changed() - output.emit_changed() - -#radius -func get_radius() -> float: - return radius - -func set_radius(val : float) -> void: - radius = val - - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_capsule.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_capsule.gd deleted file mode 100644 index a6b38de..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_capsule.gd +++ /dev/null @@ -1,107 +0,0 @@ -tool -extends CurveBase - -export(Resource) var output : Resource -export(int, "X,Y,Z") var axis : int = 1 -export(float) var length : float = 0.3 -export(float) var radius : float = 0.2 - -func _init(): - init_points_11() - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_enum("get_axis", "set_axis", "Axis", [ "X", "Y", "Z" ]) - mm_graph_node.add_slot_float("get_length", "set_length", "Length", 0.01) - mm_graph_node.add_slot_float("get_radius", "set_radius", "Radius", 0.01) - mm_graph_node.add_slot_curve() - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - if axis == 0: - return sdf3d_capsule_x(uv3, radius, length) - elif axis == 1: - return sdf3d_capsule_y(uv3, radius, length) - elif axis == 2: - return sdf3d_capsule_z(uv3, radius, length) - - return Vector2() - -#vec3 $(name_uv)_p = $uv; -#$(name_uv)_p.$axis -= clamp($(name_uv)_p.$axis, -$l, $l); -#return length($(name_uv)_p) - $r * $profile(clamp(0.5+0.5*($uv).$axis/$l, 0.0, 1.0)) - -func sdf3d_capsule_y(p : Vector3, r : float, l : float) -> Vector2: - var v : Vector3 = p; - v.y -= clamp(v.y, -l, l); - - var cx : float = clamp(0.5 + 0.5 * p.y / l, 0.0, 1.0) - var cp : float = MMAlgos.curve(cx, points_array) - var f : float = v.length() - r * cp - - return Vector2(f, 0.0); - -func sdf3d_capsule_x(p : Vector3, r : float, l : float) -> Vector2: - var v : Vector3 = p; - v.x -= clamp(v.x, -l, l); - - var cx : float = clamp(0.5 + 0.5 * p.x / l, 0.0, 1.0) - var cp : float = MMAlgos.curve(cx, points_array) - var f : float = v.length() - r * cp - - return Vector2(f, 0.0); - -func sdf3d_capsule_z(p : Vector3, r : float, l : float) -> Vector2: - var v : Vector3 = p; - v.z -= clamp(v.z, -l, l); - - var cx : float = clamp(0.5 + 0.5 * p.z / l, 0.0, 1.0) - var cp : float = MMAlgos.curve(cx, points_array) - var f : float = v.length() - r * cp - - return Vector2(f, 0.0); - -#axis -func get_axis() -> int: - return axis - -func set_axis(val : int) -> void: - axis = val - - emit_changed() - output.emit_changed() - -#length -func get_length() -> float: - return length - -func set_length(val : float) -> void: - length = val - - emit_changed() - output.emit_changed() - -#radius -func get_radius() -> float: - return radius - -func set_radius(val : float) -> void: - radius = val - - emit_changed() - output.emit_changed() - -func _curve_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_cone.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_cone.gd deleted file mode 100644 index 450242b..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_cone.gd +++ /dev/null @@ -1,60 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(int, "+X,-X,+Y,-Y,+Z,-Z") var axis : int = 2 -export(float) var angle : float = 30 - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_enum("get_axis", "set_axis", "Axis", [ "+X", "-X", "+Y", "-Y", "+Z", "-Z" ]) - mm_graph_node.add_slot_float("get_angle", "set_angle", "Angle", 1) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - if axis == 0: - return MMAlgos.sdf3d_cone_px(uv3, angle) - elif axis == 1: - return MMAlgos.sdf3d_cone_nx(uv3, angle) - elif axis == 2: - return MMAlgos.sdf3d_cone_py(uv3, angle) - elif axis == 3: - return MMAlgos.sdf3d_cone_ny(uv3, angle) - elif axis == 4: - return MMAlgos.sdf3d_cone_pz(uv3, angle) - elif axis == 5: - return MMAlgos.sdf3d_cone_nz(uv3, angle) - - return Vector2() - -#axis -func get_axis() -> int: - return axis - -func set_axis(val : int) -> void: - axis = val - - emit_changed() - output.emit_changed() - -#angle -func get_angle() -> float: - return angle - -func set_angle(val : float) -> void: - angle = val - - emit_changed() - output.emit_changed() - diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_cylinder.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_cylinder.gd deleted file mode 100644 index cc7c664..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_cylinder.gd +++ /dev/null @@ -1,65 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(int, "X,Y,Z") var axis : int = 1 -export(float) var length : float = 0.25 -export(float) var radius : float = 0.25 - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_enum("get_axis", "set_axis", "Axis", [ "X", "Y", "Z" ]) - mm_graph_node.add_slot_float("get_length", "set_length", "Length", 0.01) - mm_graph_node.add_slot_float("get_radius", "set_radius", "Radius", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - if axis == 0: - return MMAlgos.sdf3d_cylinder_x(uv3, radius, length) - elif axis == 1: - return MMAlgos.sdf3d_cylinder_y(uv3, radius, length) - elif axis == 2: - return MMAlgos.sdf3d_cylinder_z(uv3, radius, length) - - return Vector2() - -#axis -func get_axis() -> int: - return axis - -func set_axis(val : int) -> void: - axis = val - - emit_changed() - output.emit_changed() - -#length -func get_length() -> float: - return length - -func set_length(val : float) -> void: - length = val - - emit_changed() - output.emit_changed() - -#radius -func get_radius() -> float: - return radius - -func set_radius(val : float) -> void: - radius = val - - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_sphere.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_sphere.gd deleted file mode 100644 index 66f6718..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_sphere.gd +++ /dev/null @@ -1,34 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(float) var radius : float = 0.5 - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_float("get_radius", "set_radius", "Radius", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - return MMAlgos.sdf3d_sphere(uv3, radius) - -#radius -func get_radius() -> float: - return radius - -func set_radius(val : float) -> void: - radius = val - - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_torus.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_torus.gd deleted file mode 100644 index fef6698..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_shape_torus.gd +++ /dev/null @@ -1,65 +0,0 @@ -tool -extends MMNode - -export(Resource) var output : Resource -export(int, "X,Y,Z") var axis : int = 2 -export(float) var major_radius : float = 0.3 -export(float) var minor_radius : float = 0.15 - -func _init_properties(): - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_enum("get_axis", "set_axis", "Axis", [ "X", "Y", "Z" ]) - mm_graph_node.add_slot_float("get_major_radius", "set_major_radius", "Major_radius", 0.01) - mm_graph_node.add_slot_float("get_minor_radius", "set_minor_radius", "Minor_radius", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - if axis == 0: - return MMAlgos.sdf3d_torus_x(uv3, major_radius, minor_radius) - elif axis == 1: - return MMAlgos.sdf3d_torus_y(uv3, major_radius, minor_radius) - elif axis == 2: - return MMAlgos.sdf3d_torus_z(uv3, major_radius, minor_radius) - - return Vector2() - -#axis -func get_axis() -> int: - return axis - -func set_axis(val : int) -> void: - axis = val - - emit_changed() - output.emit_changed() - -#major_radius -func get_major_radius() -> float: - return major_radius - -func set_major_radius(val : float) -> void: - major_radius = val - - emit_changed() - output.emit_changed() - -#minor_radius -func get_minor_radius() -> float: - return minor_radius - -func set_minor_radius(val : float) -> void: - minor_radius = val - - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_tf_rotate.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_tf_rotate.gd deleted file mode 100644 index 978f20f..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_tf_rotate.gd +++ /dev/null @@ -1,54 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource -export(Resource) var output : Resource -export(Vector3) var rotation : Vector3 = Vector3() - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_VECTOR2 - input.slot_name = ">>> Input " - - if !input.is_connected("changed", self, "on_input_changed"): - input.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_input_property(input) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_vector3("get_rotation", "set_rotation", "Rotation", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - #$in(rotate3d($uv, -vec3($ax, $ay, $az)*0.01745329251)) - - return input.get_value_sdf3d(MMAlgos.rotate3d(uv3, -rotation * 0.01745329251)) - -#rotation -func get_rotation() -> Vector3: - return rotation - -func set_rotation(val : Vector3) -> void: - rotation = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_tf_scale.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_tf_scale.gd deleted file mode 100644 index 7b6776e..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_tf_scale.gd +++ /dev/null @@ -1,53 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource -export(Resource) var output : Resource -export(float) var scale : float = 1 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_VECTOR2 - input.slot_name = ">>> Input " - - if !input.is_connected("changed", self, "on_input_changed"): - input.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_input_property(input) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_float("get_scale", "set_scale", "Scale", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - #vec2 $(name_uv)_in = $in(($uv)/$s); - return input.get_value_sdf3d(uv3 / scale) - -#scale -func get_scale() -> float: - return scale - -func set_scale(val : float) -> void: - scale = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_tf_translate.gd b/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_tf_translate.gd deleted file mode 100644 index fc61785..0000000 --- a/game/addons/mat_maker_gd/nodes/sdf3d/sdf3d_tf_translate.gd +++ /dev/null @@ -1,53 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource -export(Resource) var output : Resource -export(Vector3) var translation : Vector3 = Vector3() - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL -# input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_VECTOR2 - input.slot_name = ">>> Input " - - if !input.is_connected("changed", self, "on_input_changed"): - input.connect("changed", self, "on_input_changed") - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_VECTOR2 - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - output.slot_name = ">>> Output >>>" - output.get_value_from_owner = true - - register_input_property(input) - register_output_property(output) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_label_universal(output) - - mm_graph_node.add_slot_vector3("get_translation", "set_translation", "Translation", 0.01) - -func _get_property_value_sdf3d(uv3 : Vector3) -> Vector2: - #$in($uv-vec3($x, $y, $z)) - return input.get_value_sdf3d(uv3 - translation) - -#translation -func get_translation() -> Vector3: - return translation - -func set_translation(val : Vector3) -> void: - translation = val - - emit_changed() - output.emit_changed() - -func on_input_changed() -> void: - emit_changed() - output.emit_changed() diff --git a/game/addons/mat_maker_gd/nodes/simple/curve.gd b/game/addons/mat_maker_gd/nodes/simple/curve.gd deleted file mode 100644 index b8e6b5c..0000000 --- a/game/addons/mat_maker_gd/nodes/simple/curve.gd +++ /dev/null @@ -1,115 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource - -export(Resource) var input : Resource -export(Vector2) var a : Vector2 = Vector2(-0.35, -0.2) -export(Vector2) var b : Vector2 = Vector2(0, 0.5) -export(Vector2) var c : Vector2 = Vector2(0.35, -0.2) -export(float) var width : float = 0.05 -export(int) var repeat : int = 1 - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - input.set_default_value(1.0) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_label_universal(input) - - mm_graph_node.add_slot_vector2("get_a", "set_a", "A", 0.01) - mm_graph_node.add_slot_vector2("get_b", "set_b", "B", 0.01) - mm_graph_node.add_slot_vector2("get_c", "set_c", "C", 0.01) - mm_graph_node.add_slot_float("get_width", "set_width", "Width", 0.01) - mm_graph_node.add_slot_int("get_repeat", "set_repeat", "Repeat") - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var nuv : Vector2 = transform_uv(uv) - - var f : float = 0 - - if nuv.x != 0 && nuv.y != 0: - f = input.get_value(nuv) - - return Color(f, f, f, 1) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func transform_uv(uv : Vector2) -> Vector2: - #vec2 $(name_uv)_bezier = sdBezier($uv, vec2($ax+0.5, $ay+0.5), vec2($bx+0.5, $by+0.5), vec2($cx+0.5, $cy+0.5)); - var bezier : Vector2 = MMAlgos.sdBezier(uv, Vector2(a.x + 0.5, a.y + 0.5), Vector2(b.x + 0.5, b.y + 0.5), Vector2(c.x + 0.5, c.y + 0.5)) - - #vec2 $(name_uv)_uv = vec2($(name_uv)_bezier.x, $(name_uv)_bezier.y / $width+0.5); - var new_uv : Vector2 = Vector2(bezier.x, bezier.y / width + 0.5) - - #vec2 $(name_uv)_uvtest = step(vec2(0.5), abs($(name_uv)_uv-vec2(0.5))); - var uv_test : Vector2 = MMAlgos.stepv2(Vector2(0.5, 0.5), MMAlgos.absv2(new_uv - Vector2(0.5, 0.5))) - - #$(name_uv)_uv = mix(vec2(fract($repeat*$(name_uv)_uv.x), $(name_uv)_uv.y), vec2(0.0), max($(name_uv)_uvtest.x, $(name_uv)_uvtest.y)); - var final_uv : Vector2 = lerp(Vector2(MMAlgos.fract(repeat * new_uv.x), new_uv.y), Vector2(), max(uv_test.x, uv_test.y)) - - return final_uv - -#b -func get_a() -> Vector2: - return a - -func set_a(val : Vector2) -> void: - a = val - - set_dirty(true) - -#b -func get_b() -> Vector2: - return b - -func set_b(val : Vector2) -> void: - b = val - - set_dirty(true) - -#c -func get_c() -> Vector2: - return c - -func set_c(val : Vector2) -> void: - c = val - - set_dirty(true) - -#width -func get_width() -> float: - return width - -func set_width(val : float) -> void: - width = val - - set_dirty(true) - -#repeat -func get_repeat() -> int: - return repeat - -func set_repeat(val : int) -> void: - repeat = val - - set_dirty(true) - diff --git a/game/addons/mat_maker_gd/nodes/simple/image.gd b/game/addons/mat_maker_gd/nodes/simple/image.gd deleted file mode 100644 index a92d9be..0000000 --- a/game/addons/mat_maker_gd/nodes/simple/image.gd +++ /dev/null @@ -1,41 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(String) var image_path : String - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_image_path_universal(image, "get_image_path", "set_image_path") - -#func _render(material) -> void: -# var img : Image = render_image(material) -# -# image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - return image.get_value(uv) - -func get_image_path() -> String: - return image_path - -func set_image_path(val : String) -> void: - image_path = val - - var img : Image = Image.new() - - if image_path && image_path != "": - img.load(image_path) - - image.set_value(img) - - set_dirty(true) - diff --git a/game/addons/mat_maker_gd/nodes/simple/shape.gd b/game/addons/mat_maker_gd/nodes/simple/shape.gd deleted file mode 100644 index a89abb6..0000000 --- a/game/addons/mat_maker_gd/nodes/simple/shape.gd +++ /dev/null @@ -1,99 +0,0 @@ -tool -extends MMNode - -enum ShapeType { - SHAPE_TYPE_CIRCLE = 0, - SHAPE_TYPE_POLYGON = 1, - SHAPE_TYPE_STAR = 2, - SHAPE_TYPE_CURVED_STAR = 3, - SHAPE_TYPE_RAYS = 4, -} - -export(Resource) var image : Resource -export(int, "Circle,Polygon,Star,Curved Star,Rays") var shape_type : int = 0 -export(int) var sides : int = 6 -export(Resource) var radius : Resource -export(Resource) var edge : Resource - -func _init_properties(): - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !radius: - radius = MMNodeUniversalProperty.new() - radius.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - radius.set_default_value(0.34375) - - radius.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - radius.slot_name = "radius" - radius.value_step = 0.05 - - if !edge: - edge = MMNodeUniversalProperty.new() - edge.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - edge.set_default_value(0.2) - - edge.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - edge.slot_name = "edge" - edge.value_step = 0.05 - - register_input_property(radius) - register_input_property(edge) - - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_enum("get_shape_typoe", "set_shape_typoe", "shape_type", [ "Circle", "Polygon", "Star", "Curved Star", "Rays" ]) - mm_graph_node.add_slot_int("get_sides", "set_sides", "sides")#, Vector2(1, 10)) - mm_graph_node.add_slot_float_universal(radius) - mm_graph_node.add_slot_float_universal(edge) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var c : float = 0 - - var rad : float = radius.get_value(uv) - var edg : float = edge.get_value(uv) - - if rad == 0: - rad = 0.0000001 - - if edg == 0: - edg = 0.0000001 - - if shape_type == ShapeType.SHAPE_TYPE_CIRCLE: - c = MMAlgos.shape_circle(uv, sides, rad, edg) - elif shape_type == ShapeType.SHAPE_TYPE_POLYGON: - c = MMAlgos.shape_polygon(uv, sides, rad, edg) - elif shape_type == ShapeType.SHAPE_TYPE_STAR: - c = MMAlgos.shape_star(uv, sides, rad, edg) - elif shape_type == ShapeType.SHAPE_TYPE_CURVED_STAR: - c = MMAlgos.shape_curved_star(uv, sides, rad, edg) - elif shape_type == ShapeType.SHAPE_TYPE_RAYS: - c = MMAlgos.shape_rays(uv, sides, rad, edg) - - return Color(c, c, c, 1) - -func get_shape_typoe() -> int: - return shape_type - -func set_shape_typoe(val : int) -> void: - shape_type = val - - set_dirty(true) - -func get_sides() -> int: - return sides - -func set_sides(val : int) -> void: - sides = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/transform/circle_map.gd b/game/addons/mat_maker_gd/nodes/transform/circle_map.gd deleted file mode 100644 index 60de4dc..0000000 --- a/game/addons/mat_maker_gd/nodes/transform/circle_map.gd +++ /dev/null @@ -1,67 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource - -export(float) var radius : float = 1 -export(int) var repeat : int = 1 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_float("get_radius", "set_radius", "Radius", 0.01) - mm_graph_node.add_slot_int("get_repeat", "set_repeat", "Repeat") - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #$in(vec2(fract($repeat*atan($uv.y-0.5, $uv.x-0.5)*0.15915494309), min(0.99999, 2.0/$radius*length($uv-vec2(0.5)))))", - - var nuv : Vector2 = Vector2(MMAlgos.fractf(repeat*atan2(uv.y - 0.5, uv.x - 0.5) * 0.15915494309), min(0.99999, 2.0 / radius * (uv - Vector2(0.5, 0.5)).length())) - - return input.get_value(nuv) - -#radius -func get_radius() -> float: - return radius - -func set_radius(val : float) -> void: - radius = val - - if radius == 0: - radius = 0.000000001 - - set_dirty(true) - -#repeat -func get_repeat() -> int: - return repeat - -func set_repeat(val : int) -> void: - repeat = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/transform/color_tiler.gd b/game/addons/mat_maker_gd/nodes/transform/color_tiler.gd deleted file mode 100644 index d106c64..0000000 --- a/game/addons/mat_maker_gd/nodes/transform/color_tiler.gd +++ /dev/null @@ -1,303 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource -export(Resource) var in_mask : Resource - -export(Resource) var output : Resource -export(Resource) var instance_map : Resource - -export(Vector2) var tile : Vector2 = Vector2(4, 4) -export(float) var overlap : float = 1 -export(int, "1,4,16") var select_inputs : int = 0 -export(Vector2) var scale : Vector2 = Vector2(0.5, 0.5) -export(float) var fixed_offset : float = 0 -export(float) var rnd_offset : float = 0.25 -export(float) var rnd_rotate : float = 45 -export(float) var rnd_scale : float = 0.2 -export(float) var rnd_opacity : float = 0 -export(bool) var variations : bool = false - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !in_mask: - in_mask = MMNodeUniversalProperty.new() - in_mask.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - in_mask.set_default_value(1) - - in_mask.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - in_mask.slot_name = ">>> Mask " - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !instance_map: - instance_map = MMNodeUniversalProperty.new() - instance_map.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - instance_map.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_input_property(input) - register_input_property(in_mask) - register_output_property(output) - register_output_property(instance_map) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_label_universal(in_mask) - mm_graph_node.add_slot_texture_universal(output) - mm_graph_node.add_slot_texture_universal(instance_map) - - mm_graph_node.add_slot_vector2("get_tile", "set_tile", "Tile", 1) - mm_graph_node.add_slot_float("get_overlap", "set_overlap", "Overlap", 1) - mm_graph_node.add_slot_enum("get_select_inputs", "set_select_inputs", "Select inputs", [ "1", "4", "16" ]) - mm_graph_node.add_slot_vector2("get_scale", "set_scale", "Scale", 0.01) - mm_graph_node.add_slot_float("get_fixed_offset", "set_fixed_offset", "Fixed Offset", 0.01) - mm_graph_node.add_slot_float("get_rnd_offset", "set_rnd_offset", "Rnd Offset", 0.01) - mm_graph_node.add_slot_float("get_rnd_rotate", "set_rnd_rotate", "Rnd Rotate", 0.1) - mm_graph_node.add_slot_float("get_rnd_scale", "set_rnd_scale", "Rnd Scale", 0.01) - mm_graph_node.add_slot_float("get_rnd_opacity", "set_rnd_opacity", "Rnd Opacity", 0.01) - #mm_graph_node.add_slot_bool("get_variations", "set_variations", "Variations") - -func _render(material) -> void: - var output_img : Image = Image.new() - var instance_map_img : Image = Image.new() - - output_img.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - instance_map_img.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - - output_img.lock() - instance_map_img.lock() - - var w : float = material.image_size.x - var h : float = material.image_size.y - - var pseed : float = randf() + randi() - - var ps : float = 1.0 / float(pseed) - - var ix : int = int(material.image_size.x) - var iy : int = int(material.image_size.y) - - for x in range(ix): - for y in range(iy): - var uv : Vector2 = Vector2(x / w, y / h) - - #vec3 $(name_uv)_random_color; - #vec4 $(name_uv)_tiled_output = tiler_$(name)($uv, vec2($tx, $ty), int($overlap), vec2(float($seed)), $(name_uv)_random_color); - var rch : PoolColorArray = tiler_calc(uv, tile, overlap, Vector2(ps, ps)) - - output_img.set_pixel(x, y, rch[1]) - instance_map_img.set_pixel(x, y, rch[0]) - - output_img.unlock() - instance_map_img.unlock() - - output.set_value(output_img) - instance_map.set_value(instance_map_img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - return Color() - -#tile -func get_tile() -> Vector2: - return tile - -func set_tile(val : Vector2) -> void: - tile = val - - set_dirty(true) - -#overlap -func get_overlap() -> float: - return overlap - -func set_overlap(val : float) -> void: - overlap = val - - set_dirty(true) - -#select_inputs -func get_select_inputs() -> int: - return select_inputs - -func set_select_inputs(val : int) -> void: - select_inputs = val - - set_dirty(true) - -#scale -func get_scale() -> Vector2: - return scale - -func set_scale(val : Vector2) -> void: - scale = val - - set_dirty(true) - -#fixed_offset -func get_fixed_offset() -> float: - return fixed_offset - -func set_fixed_offset(val : float) -> void: - fixed_offset = val - - set_dirty(true) - -#rnd_offset -func get_rnd_offset() -> float: - return rnd_offset - -func set_rnd_offset(val : float) -> void: - rnd_offset = val - - set_dirty(true) - - -#rnd_rotate -func get_rnd_rotate() -> float: - return rnd_rotate - -func set_rnd_rotate(val : float) -> void: - rnd_rotate = val - - set_dirty(true) - -#rnd_scale -func get_rnd_scale() -> float: - return rnd_scale - -func set_rnd_scale(val : float) -> void: - rnd_scale = val - - set_dirty(true) - -#rnd_opacity -func get_rnd_opacity() -> float: - return rnd_opacity - -func set_rnd_opacity(val : float) -> void: - rnd_opacity = val - - set_dirty(true) - -#variations -func get_variations() -> bool: - return variations - -func set_variations(val : bool) -> void: - variations = val - - set_dirty(true) - -#---------------------- -#color_tiler.mmg -#Tiles several occurences of an input image while adding randomness. - -#vec4 tiler_$(name)(vec2 uv, vec2 tile, int overlap, vec2 _seed, out vec3 random_color) { -# vec4 c = vec4(0.0); -# vec3 rc = vec3(0.0); -# vec3 rc1; -# -# for (int dx = -overlap; dx <= overlap; ++dx) { -# for (int dy = -overlap; dy <= overlap; ++dy) { -# vec2 pos = fract((floor(uv*tile)+vec2(float(dx), float(dy))+vec2(0.5))/tile-vec2(0.5)); -# vec2 seed = rand2(pos+_seed); -# rc1 = rand3(seed); -# pos = fract(pos+vec2($fixed_offset/tile.x, 0.0)*floor(mod(pos.y*tile.y, 2.0))+$offset*seed/tile); -# float mask = $mask(fract(pos+vec2(0.5))); -# if (mask > 0.01) { -# vec2 pv = fract(uv - pos)-vec2(0.5); -# seed = rand2(seed); -# float angle = (seed.x * 2.0 - 1.0) * $rotate * 0.01745329251; -# float ca = cos(angle); -# float sa = sin(angle); -# pv = vec2(ca*pv.x+sa*pv.y, -sa*pv.x+ca*pv.y); -# pv *= (seed.y-0.5)*2.0*$scale+1.0; -# pv /= vec2($scale_x, $scale_y); -# pv += vec2(0.5); -# pv = clamp(pv, vec2(0.0), vec2(1.0)); -# -# $select_inputs -# -# vec4 n = $in.variation(pv, $variations ? seed.x : 0.0); -# -# seed = rand2(seed); -# float na = n.a*mask*(1.0-$opacity*seed.x); -# float a = (1.0-c.a)*(1.0*na); -# -# c = mix(c, n, na); -# rc = mix(rc, rc1, n.a); -# } -# } -# } -# -# random_color = rc; -# return c; -#} - - -#select_inputs enum -#1, " " -#4, "pv = clamp(0.5*(pv+floor(rand2(seed)*2.0)), vec2(0.0), vec2(1.0));" -#16, "pv = clamp(0.25*(pv+floor(rand2(seed)*4.0)), vec2(0.0), vec2(1.0));" - -func tiler_calc(uv : Vector2, tile : Vector2, overlap : int, _seed : Vector2) -> PoolColorArray: - var c : Color = Color() - var rc : Vector3 = Vector3() - var rc1 : Vector3 = Vector3() - - for dx in range(-overlap, overlap): #for (int dx = -overlap; dx <= overlap; ++dx) { - for dy in range(-overlap, overlap): #for (int dy = -overlap; dy <= overlap; ++dy) { - var pos : Vector2 = MMAlgos.fractv2((MMAlgos.floorv2(uv * tile) + Vector2(dx, dy) + Vector2(0.5, 0.5)) / tile - Vector2(0.5, 0.5)) - var vseed : Vector2 = MMAlgos.rand2(pos + _seed) - rc1 = MMAlgos.rand3(vseed) - pos = MMAlgos.fractv2(pos + Vector2(fixed_offset / tile.x, 0.0) * floor(MMAlgos.modf(pos.y * tile.y, 2.0)) + rnd_offset * vseed / tile) - var mask : float = in_mask.get_value(MMAlgos.fractv2(pos + Vector2(0.5, 0.5))) - - if (mask > 0.01): - var pv : Vector2 = MMAlgos.fractv2(uv - pos) - Vector2(0.5, 0.5) - vseed = MMAlgos.rand2(vseed) - var angle : float = (vseed.x * 2.0 - 1.0) * rnd_rotate * 0.01745329251 - var ca : float = cos(angle) - var sa : float = sin(angle) - pv = Vector2(ca * pv.x + sa * pv.y, -sa * pv.x + ca * pv.y) - pv *= (vseed.y-0.5) * 2.0 * rnd_scale + 1.0 - pv /= scale - pv += Vector2(0.5, 0.5) - pv = MMAlgos.clampv2(pv, Vector2(), Vector2(1, 1)) - - #1, " " - #4, "pv = clamp(0.5*(pv+floor(rand2(seed)*2.0)), vec2(0.0), vec2(1.0));" - #16, "pv = clamp(0.25*(pv+floor(rand2(seed)*4.0)), vec2(0.0), vec2(1.0));" - - if select_inputs == 1: - pv = MMAlgos.clampv2(0.5*(pv + MMAlgos.floorv2(MMAlgos.rand2(vseed)*2.0)), Vector2(), Vector2(1, 1)); - elif select_inputs == 2: - pv = MMAlgos.clampv2(0.25*(pv + MMAlgos.floorv2(MMAlgos.rand2(vseed)*4.0)), Vector2(), Vector2(1, 1)); - -# vec4 n = $in.variation(pv, $variations ? seed.x : 0.0); - var n : Color = input.get_value(pv) * mask * (1.0 - rnd_opacity * vseed.x) - - vseed = MMAlgos.rand2(vseed) - var na : float = n.a * mask * (1.0 - rnd_opacity * vseed.x) - var a : float = (1.0 - c.a) * (1.0 * na) - - c = lerp(c, n, na); - rc = lerp(rc, rc1, n.a); - - var pc : PoolColorArray = PoolColorArray() - pc.append(Color(rc.x, rc.y, rc.z, 1)) - pc.append(c) - - return pc diff --git a/game/addons/mat_maker_gd/nodes/transform/kaleidoscope.gd b/game/addons/mat_maker_gd/nodes/transform/kaleidoscope.gd deleted file mode 100644 index 22ffff5..0000000 --- a/game/addons/mat_maker_gd/nodes/transform/kaleidoscope.gd +++ /dev/null @@ -1,60 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(int) var count : int = 5 -export(float) var offset : float = 0 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_int("get_count", "set_count", "Count") - mm_graph_node.add_slot_float("get_offset", "set_offset", "Offset", 0.5) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #$i(kal_rotate($uv, $count, $offset)) - return input.get_value(MMAlgos.kal_rotate(uv, count, offset)) - -#count -func get_count() -> int: - return count - -func set_count(val : int) -> void: - count = val - - set_dirty(true) - -#offset -func get_offset() -> float: - return offset - -func set_offset(val : float) -> void: - offset = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/transform/mirror.gd b/game/addons/mat_maker_gd/nodes/transform/mirror.gd deleted file mode 100644 index 2877a84..0000000 --- a/game/addons/mat_maker_gd/nodes/transform/mirror.gd +++ /dev/null @@ -1,66 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(int, "Horizontal,Vertical") var direction : int = 0 -export(float) var offset : float = 0 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_enum("get_direction", "set_direction", "Direction", [ "Horizontal", "Vertical" ]) - mm_graph_node.add_slot_float("get_offset", "set_offset", "offset", 0.01) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #$i(uvmirror_$direction($uv, $offset)) - - if direction == 0: - return input.get_value(MMAlgos.uvmirror_h(uv, offset)) - elif direction == 1: - return input.get_value(MMAlgos.uvmirror_v(uv, offset)) - - return Color(0, 0, 0, 1) - -#direction -func get_direction() -> int: - return direction - -func set_direction(val : int) -> void: - direction = val - - set_dirty(true) - -#offset -func get_offset() -> float: - return offset - -func set_offset(val : float) -> void: - offset = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/transform/repeat.gd b/game/addons/mat_maker_gd/nodes/transform/repeat.gd deleted file mode 100644 index 97182c3..0000000 --- a/game/addons/mat_maker_gd/nodes/transform/repeat.gd +++ /dev/null @@ -1,25 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Apply >>>" - #input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_COLOR - input.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.get_value_from_owner = true - - register_input_property(input) - register_output_property(input) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - -func _get_property_value(uv : Vector2): - return input.get_value(MMAlgos.fractv2(uv), true) diff --git a/game/addons/mat_maker_gd/nodes/transform/rotate.gd b/game/addons/mat_maker_gd/nodes/transform/rotate.gd deleted file mode 100644 index 7652fca..0000000 --- a/game/addons/mat_maker_gd/nodes/transform/rotate.gd +++ /dev/null @@ -1,60 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(Vector2) var center : Vector2 = Vector2() -export(float) var rotate : float = 0 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input1 " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_vector2("get_center", "set_center", "Center", 0.01) - mm_graph_node.add_slot_float("get_rotate", "set_rotate", "Rotate", 0.1) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #$i(rotate($uv, vec2(0.5+$cx, 0.5+$cy), $rotate*0.01745329251)) - return input.get_value(MMAlgos.rotate(uv, center + Vector2(0.5, 0.5), rotate*0.01745329251)) - -#center -func get_center() -> Vector2: - return center - -func set_center(val : Vector2) -> void: - center = val - - set_dirty(true) - -#rotate -func get_rotate() -> float: - return rotate - -func set_rotate(val : float) -> void: - rotate = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/transform/scale.gd b/game/addons/mat_maker_gd/nodes/transform/scale.gd deleted file mode 100644 index a0bf726..0000000 --- a/game/addons/mat_maker_gd/nodes/transform/scale.gd +++ /dev/null @@ -1,60 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(Vector2) var center : Vector2 = Vector2() -export(Vector2) var scale : Vector2 = Vector2(1, 1) - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input1 " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_vector2("get_center", "set_center", "Center", 0.01) - mm_graph_node.add_slot_vector2("get_scale", "set_scale", "Scale", 0.01) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #$i(scale($uv, vec2(0.5+$cx, 0.5+$cy), vec2($scale_x, $scale_y))) - return input.get_value(MMAlgos.scale(uv, center + Vector2(0.5, 0.5), scale)) - -#center -func get_center() -> Vector2: - return center - -func set_center(val : Vector2) -> void: - center = val - - set_dirty(true) - -#scale -func get_scale() -> Vector2: - return scale - -func set_scale(val : Vector2) -> void: - scale = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/transform/shear.gd b/game/addons/mat_maker_gd/nodes/transform/shear.gd deleted file mode 100644 index 3293781..0000000 --- a/game/addons/mat_maker_gd/nodes/transform/shear.gd +++ /dev/null @@ -1,77 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(int, "Horizontal,Vertical") var direction : int = 0 -export(float) var amount : float = 1 -export(float) var center : float = 0 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_enum("get_direction", "set_direction", "Direction", [ "Horizontal", "Vertical" ]) - mm_graph_node.add_slot_float("get_amount", "set_amount", "Amount", 0.01) - mm_graph_node.add_slot_float("get_center", "set_center", "Center", 0.01) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #$in($uv+$amount*($uv.yx-vec2($center))*vec2($direction)) - - if direction == 0: - return input.get_value(uv + amount * (Vector2(uv.y, uv.x) - Vector2(center, center)) * Vector2(1, 0)) - elif direction == 1: - return input.get_value(uv + amount * (Vector2(uv.y, uv.x) - Vector2(center, center)) * Vector2(0, 1)) - - return Color(0, 0, 0, 1) - -#direction -func get_direction() -> int: - return direction - -func set_direction(val : int) -> void: - direction = val - - set_dirty(true) - -#amount -func get_amount() -> float: - return amount - -func set_amount(val : float) -> void: - amount = val - - set_dirty(true) - -#center -func get_center() -> float: - return center - -func set_center(val : float) -> void: - center = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/transform/tiler.gd b/game/addons/mat_maker_gd/nodes/transform/tiler.gd deleted file mode 100644 index ec8f023..0000000 --- a/game/addons/mat_maker_gd/nodes/transform/tiler.gd +++ /dev/null @@ -1,304 +0,0 @@ -tool -extends MMNode - -export(Resource) var input : Resource -export(Resource) var in_mask : Resource - -export(Resource) var output : Resource -export(Resource) var instance_map : Resource - -export(Vector2) var tile : Vector2 = Vector2(4, 4) -export(float) var overlap : float = 1 -export(int, "1,4,16") var select_inputs : int = 0 -export(Vector2) var scale : Vector2 = Vector2(0.5, 0.5) -export(float) var fixed_offset : float = 0 -export(float) var rnd_offset : float = 0.25 -export(float) var rnd_rotate : float = 45 -export(float) var rnd_scale : float = 0.2 -export(float) var rnd_value : float = 2 -export(bool) var variations : bool = false - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - input.set_default_value(0) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !in_mask: - in_mask = MMNodeUniversalProperty.new() - in_mask.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - in_mask.set_default_value(1) - - in_mask.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - in_mask.slot_name = ">>> Mask " - - if !output: - output = MMNodeUniversalProperty.new() - output.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - output.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - if !instance_map: - instance_map = MMNodeUniversalProperty.new() - instance_map.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - instance_map.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - - register_input_property(input) - register_input_property(in_mask) - register_output_property(output) - register_output_property(instance_map) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_label_universal(in_mask) - mm_graph_node.add_slot_texture_universal(output) - mm_graph_node.add_slot_texture_universal(instance_map) - - mm_graph_node.add_slot_vector2("get_tile", "set_tile", "Tile", 1) - mm_graph_node.add_slot_float("get_overlap", "set_overlap", "Overlap", 1) - mm_graph_node.add_slot_enum("get_select_inputs", "set_select_inputs", "Select inputs", [ "1", "4", "16" ]) - mm_graph_node.add_slot_vector2("get_scale", "set_scale", "Scale", 0.01) - mm_graph_node.add_slot_float("get_fixed_offset", "set_fixed_offset", "Fixed Offset", 0.01) - mm_graph_node.add_slot_float("get_rnd_offset", "set_rnd_offset", "Rnd Offset", 0.01) - mm_graph_node.add_slot_float("get_rnd_rotate", "set_rnd_rotate", "Rnd Rotate", 0.1) - mm_graph_node.add_slot_float("get_rnd_scale", "set_rnd_scale", "Rnd Scale", 0.01) - mm_graph_node.add_slot_float("get_rnd_value", "set_rnd_value", "Rnd Value", 0.01) - #mm_graph_node.add_slot_bool("get_variations", "set_variations", "Variations") - -func _render(material) -> void: - var output_img : Image = Image.new() - var instance_map_img : Image = Image.new() - - output_img.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - instance_map_img.create(material.image_size.x, material.image_size.y, false, Image.FORMAT_RGBA8) - - output_img.lock() - instance_map_img.lock() - - var w : float = material.image_size.x - var h : float = material.image_size.y - - var pseed : float = randf() + randi() - - var ps : float = 1.0 / float(pseed) - - var ix : int = int(material.image_size.x) - var iy : int = int(material.image_size.y) - - for x in range(ix): - for y in range(iy): - var uv : Vector2 = Vector2(x / w, y / h) - - #vec4 $(name_uv)_rch = tiler_$(name)($uv, vec2($tx, $ty), int($overlap), vec2(float($seed))) - var rch : Color = tiler_calc(uv, tile, overlap, Vector2(ps, ps)) - - #Output, float, Shows the generated pattern - #$(name_uv)_rch.a - var output_img_col : Color = Color(rch.a, rch.a, rch.a, 1) - - #Instance map, rgb, Shows a random color for each instance of the input image - #$(name_uv)_rch.rgb - var instance_map_img_col : Color = Color(rch.r, rch.g, rch.b, 1) - - output_img.set_pixel(x, y, output_img_col) - instance_map_img.set_pixel(x, y, instance_map_img_col) - - output_img.unlock() - instance_map_img.unlock() - - output.set_value(output_img) - instance_map.set_value(instance_map_img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - return Color() - -#tile -func get_tile() -> Vector2: - return tile - -func set_tile(val : Vector2) -> void: - tile = val - - set_dirty(true) - -#overlap -func get_overlap() -> float: - return overlap - -func set_overlap(val : float) -> void: - overlap = val - - set_dirty(true) - -#select_inputs -func get_select_inputs() -> int: - return select_inputs - -func set_select_inputs(val : int) -> void: - select_inputs = val - - set_dirty(true) - -#scale -func get_scale() -> Vector2: - return scale - -func set_scale(val : Vector2) -> void: - scale = val - - set_dirty(true) - -#fixed_offset -func get_fixed_offset() -> float: - return fixed_offset - -func set_fixed_offset(val : float) -> void: - fixed_offset = val - - set_dirty(true) - -#rnd_offset -func get_rnd_offset() -> float: - return rnd_offset - -func set_rnd_offset(val : float) -> void: - rnd_offset = val - - set_dirty(true) - - -#rnd_rotate -func get_rnd_rotate() -> float: - return rnd_rotate - -func set_rnd_rotate(val : float) -> void: - rnd_rotate = val - - set_dirty(true) - -#rnd_scale -func get_rnd_scale() -> float: - return rnd_scale - -func set_rnd_scale(val : float) -> void: - rnd_scale = val - - set_dirty(true) - -#rnd_value -func get_rnd_value() -> float: - return rnd_value - -func set_rnd_value(val : float) -> void: - rnd_value = val - - set_dirty(true) - -#variations -func get_variations() -> bool: - return variations - -func set_variations(val : bool) -> void: - variations = val - - set_dirty(true) - -#---------------------- -#tiler.mmg -#Tiles several occurences of an input image while adding randomness. - -#instance -#vec4 tiler_$(name)(vec2 uv, vec2 tile, int overlap, vec2 _seed) { -# float c = 0.0; -# vec3 rc = vec3(0.0); -# vec3 rc1; -# for (int dx = -overlap; dx <= overlap; ++dx) { -# for (int dy = -overlap; dy <= overlap; ++dy) { -# vec2 pos = fract((floor(uv*tile)+vec2(float(dx), float(dy))+vec2(0.5))/tile-vec2(0.5)); -# vec2 seed = rand2(pos+_seed); -# rc1 = rand3(seed); -# pos = fract(pos+vec2($fixed_offset/tile.x, 0.0)*floor(mod(pos.y*tile.y, 2.0))+$offset*seed/tile); -# float mask = $mask(fract(pos+vec2(0.5))); -# -# if (mask > 0.01) { -# vec2 pv = fract(uv - pos)-vec2(0.5); -# seed = rand2(seed); -# float angle = (seed.x * 2.0 - 1.0) * $rotate * 0.01745329251; -# float ca = cos(angle); -# float sa = sin(angle); -# pv = vec2(ca*pv.x+sa*pv.y, -sa*pv.x+ca*pv.y); -# pv *= (seed.y-0.5)*2.0*$scale+1.0; -# pv /= vec2($scale_x, $scale_y); -# pv += vec2(0.5); -# seed = rand2(seed); -# vec2 clamped_pv = clamp(pv, vec2(0.0), vec2(1.0)); -# if (pv.x != clamped_pv.x || pv.y != clamped_pv.y) { -# continue; -# } -# -# $select_inputs -# -# float c1 = $in.variation(pv, $variations ? seed.x : 0.0)*mask*(1.0-$value*seed.x); -# c = max(c, c1); -# rc = mix(rc, rc1, step(c, c1)); -# } -# } -# } -# -# return vec4(rc, c); -#} - -#select_inputs enum -#1, " " -#4, "pv = clamp(0.5*(pv+floor(rand2(seed)*2.0)), vec2(0.0), vec2(1.0));" -#16, "pv = clamp(0.25*(pv+floor(rand2(seed)*4.0)), vec2(0.0), vec2(1.0));" - -func tiler_calc(uv : Vector2, tile : Vector2, overlap : int, _seed : Vector2) -> Color: - var c : float = 0.0 - var rc : Vector3 = Vector3() - var rc1 : Vector3 = Vector3() - - for dx in range(-overlap, overlap): #for (int dx = -overlap; dx <= overlap; ++dx) { - for dy in range(-overlap, overlap): #for (int dy = -overlap; dy <= overlap; ++dy) { - var pos : Vector2 = MMAlgos.fractv2((MMAlgos.floorv2(uv * tile) + Vector2(dx, dy) + Vector2(0.5, 0.5)) / tile - Vector2(0.5, 0.5)) - var vseed : Vector2 = MMAlgos.rand2(pos+_seed) - rc1 = MMAlgos.rand3(vseed) - pos = MMAlgos.fractv2(pos + Vector2(fixed_offset / tile.x, 0.0) * floor(MMAlgos.modf(pos.y * tile.y, 2.0)) + rnd_offset * vseed / tile) - var mask : float = in_mask.get_value(MMAlgos.fractv2(pos + Vector2(0.5, 0.5))) - - if (mask > 0.01): - var pv : Vector2 = MMAlgos.fractv2(uv - pos) - Vector2(0.5, 0.5) - vseed = MMAlgos.rand2(vseed) - var angle : float = (vseed.x * 2.0 - 1.0) * rnd_rotate * 0.01745329251 - var ca : float = cos(angle) - var sa : float = sin(angle) - pv = Vector2(ca * pv.x + sa * pv.y, -sa * pv.x + ca * pv.y) - pv *= (vseed.y-0.5) * 2.0 * rnd_scale + 1.0 - pv /= scale - pv += Vector2(0.5, 0.5) - vseed = MMAlgos.rand2(vseed) - var clamped_pv : Vector2 = MMAlgos.clampv2(pv, Vector2(), Vector2(1, 1)) - - if (pv.x != clamped_pv.x || pv.y != clamped_pv.y): - continue - - #1, " " - #4, "pv = clamp(0.5*(pv+floor(rand2(seed)*2.0)), vec2(0.0), vec2(1.0));" - #16, "pv = clamp(0.25*(pv+floor(rand2(seed)*4.0)), vec2(0.0), vec2(1.0));" - - if select_inputs == 1: - pv = MMAlgos.clampv2(0.5*(pv + MMAlgos.floorv2(MMAlgos.rand2(vseed)*2.0)), Vector2(), Vector2(1, 1)); - elif select_inputs == 2: - pv = MMAlgos.clampv2(0.25*(pv + MMAlgos.floorv2(MMAlgos.rand2(vseed)*4.0)), Vector2(), Vector2(1, 1)); - - #float c1 = $in.variation(pv, $variations ? vseed.x : 0.0) * mask * (1.0-$value*vseed.x) - var c1 : float = input.get_value(pv) * mask * (1.0 - rnd_value * vseed.x) - c = max(c, c1) - rc = lerp(rc, rc1, MMAlgos.step(c, c1)) - - return Color(rc.x, rc.y, rc.z, c) - diff --git a/game/addons/mat_maker_gd/nodes/transform/transform.gd b/game/addons/mat_maker_gd/nodes/transform/transform.gd deleted file mode 100644 index c095ca5..0000000 --- a/game/addons/mat_maker_gd/nodes/transform/transform.gd +++ /dev/null @@ -1,129 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource - -export(Resource) var translate_x : Resource -export(Resource) var translate_y : Resource -export(Resource) var rotate : Resource -export(Resource) var scale_x : Resource -export(Resource) var scale_y : Resource -export(int, "Clamp,Repeat,Extend") var mode : int = 0 - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - if !translate_x: - translate_x = MMNodeUniversalProperty.new() - translate_x.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - translate_x.set_default_value(0) - translate_x.value_step = 0.01 - - translate_x.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - translate_x.slot_name = "Translate X" - - if !translate_y: - translate_y = MMNodeUniversalProperty.new() - translate_y.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - translate_y.set_default_value(0) - translate_y.value_step = 0.01 - - translate_y.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - translate_y.slot_name = "Translate Y" - - if !rotate: - rotate = MMNodeUniversalProperty.new() - rotate.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - rotate.set_default_value(0) - rotate.value_step = 0.01 - - rotate.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - rotate.slot_name = "Rotate" - - if !scale_x: - scale_x = MMNodeUniversalProperty.new() - scale_x.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - scale_x.set_default_value(1) - scale_x.value_step = 0.01 - - scale_x.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - scale_x.slot_name = "Scale X" - - if !scale_y: - scale_y = MMNodeUniversalProperty.new() - scale_y.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - scale_y.set_default_value(1) - scale_y.value_step = 0.01 - - scale_y.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - scale_y.slot_name = "Scale Y" - - register_input_property(input) - register_output_property(image) - register_input_property(translate_x) - register_input_property(translate_y) - register_input_property(rotate) - register_input_property(scale_x) - register_input_property(scale_y) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - - mm_graph_node.add_slot_float_universal(translate_x) - mm_graph_node.add_slot_float_universal(translate_y) - mm_graph_node.add_slot_float_universal(rotate) - mm_graph_node.add_slot_float_universal(scale_x) - mm_graph_node.add_slot_float_universal(scale_y) - - mm_graph_node.add_slot_enum("get_mode", "set_mode", "Mode", [ "Clamp", "Repeat", "Extend" ]) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #$i($mode(transform2($uv, vec2($translate_x*(2.0*$tx($uv)-1.0), $translate_y*(2.0*$ty($uv)-1.0)), $rotate*0.01745329251*(2.0*$r($uv)-1.0), vec2($scale_x*(2.0*$sx($uv)-1.0), $scale_y*(2.0*$sy($uv)-1.0)))))", - - #Mode: - #Clamp -> transform2_clamp - #Repeat -> fract - #Extend -> "" - - var tr : Vector2 = Vector2(translate_x.get_default_value() * (2.0 * translate_x.get_value_or_zero(uv) - 1.0), translate_y.get_default_value() *(2.0 * translate_y.get_value_or_zero(uv) - 1.0)) - var rot : float = rotate.get_default_value() * 0.01745329251*(2.0 * rotate.get_value_or_zero(uv) - 1.0) - var sc : Vector2 = Vector2(scale_x.get_default_value() *(2.0 * scale_x.get_value_or_zero(uv) - 1.0), scale_y.get_default_value() *(2.0 * scale_y.get_value_or_zero(uv) - 1.0)) - - var nuv : Vector2 = MMAlgos.transform2(uv, tr, rot, sc) - - if mode == 0: - nuv = MMAlgos.transform2_clamp(nuv) - elif mode == 1: - nuv = MMAlgos.fractv2(nuv) - - return input.get_value(nuv) - -#mode -func get_mode() -> int: - return mode - -func set_mode(val : int) -> void: - mode = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/transform/translate.gd b/game/addons/mat_maker_gd/nodes/transform/translate.gd deleted file mode 100644 index e3423b1..0000000 --- a/game/addons/mat_maker_gd/nodes/transform/translate.gd +++ /dev/null @@ -1,49 +0,0 @@ -tool -extends MMNode - -export(Resource) var image : Resource -export(Resource) var input : Resource -export(Vector2) var translation : Vector2 = Vector2() - -func _init_properties(): - if !input: - input = MMNodeUniversalProperty.new() - input.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - input.set_default_value(Color(0, 0, 0, 1)) - - input.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_UNIVERSAL - input.slot_name = ">>> Input1 " - - if !image: - image = MMNodeUniversalProperty.new() - image.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_IMAGE - - #image.input_slot_type = MMNodeUniversalProperty.SLOT_TYPE_FLOAT - image.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_IMAGE - #image.force_override = true - - register_input_property(input) - register_output_property(image) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_label_universal(input) - mm_graph_node.add_slot_texture_universal(image) - mm_graph_node.add_slot_vector2("get_translation", "set_translation", "Translation", 0.01) - -func _render(material) -> void: - var img : Image = render_image(material) - - image.set_value(img) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - #$i($uv-vec2($translate_x, $translate_y)) - return input.get_value(uv - translation) - -#translation -func get_translation() -> Vector2: - return translation - -func set_translation(val : Vector2) -> void: - translation = val - - set_dirty(true) diff --git a/game/addons/mat_maker_gd/nodes/uniform/greyscale_uniform.gd b/game/addons/mat_maker_gd/nodes/uniform/greyscale_uniform.gd deleted file mode 100644 index e59354e..0000000 --- a/game/addons/mat_maker_gd/nodes/uniform/greyscale_uniform.gd +++ /dev/null @@ -1,25 +0,0 @@ -tool -extends MMNode - -export(Resource) var uniform : Resource - -func _init_properties(): - if !uniform: - uniform = MMNodeUniversalProperty.new() - uniform.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_FLOAT - uniform.set_default_value(0.5) - uniform.slot_name = "Value (Color)" - uniform.value_step = 0.01 - uniform.value_range = Vector2(0, 1) - - uniform.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_COLOR - - register_output_property(uniform) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_float_universal(uniform) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - var f : float = uniform.get_value(uv) - - return Color(f, f, f, 1) diff --git a/game/addons/mat_maker_gd/nodes/uniform/uniform.gd b/game/addons/mat_maker_gd/nodes/uniform/uniform.gd deleted file mode 100644 index bccefa1..0000000 --- a/game/addons/mat_maker_gd/nodes/uniform/uniform.gd +++ /dev/null @@ -1,20 +0,0 @@ -tool -extends MMNode - -export(Resource) var uniform : Resource - -func _init_properties(): - if !uniform: - uniform = MMNodeUniversalProperty.new() - uniform.default_type = MMNodeUniversalProperty.DEFAULT_TYPE_COLOR - uniform.set_default_value(Color(1, 1, 1, 1)) - - uniform.output_slot_type = MMNodeUniversalProperty.SLOT_TYPE_COLOR - - register_output_property(uniform) - -func _register_methods(mm_graph_node) -> void: - mm_graph_node.add_slot_color_universal(uniform) - -func _get_value_for(uv : Vector2, pseed : int) -> Color: - return uniform.get_value(uv) diff --git a/game/addons/mat_maker_gd/plugin.cfg b/game/addons/mat_maker_gd/plugin.cfg deleted file mode 100644 index 0431311..0000000 --- a/game/addons/mat_maker_gd/plugin.cfg +++ /dev/null @@ -1,7 +0,0 @@ -[plugin] - -name="mat_maker_gd" -description="" -author="Relintai" -version="" -script="plugin.gd" diff --git a/game/addons/mat_maker_gd/plugin.gd b/game/addons/mat_maker_gd/plugin.gd deleted file mode 100644 index 1895a6b..0000000 --- a/game/addons/mat_maker_gd/plugin.gd +++ /dev/null @@ -1,86 +0,0 @@ -tool -extends EditorPlugin - -#var editor_packed_scene = preload("res://addons/mat_maker_gd/editor/MatMakerGDEditor.tscn") -#var editor_scene = null -#var tool_button : ToolButton = null - -var folders : PoolStringArray = [ - "res://addons/mat_maker_gd/nodes/uniform", - "res://addons/mat_maker_gd/nodes/noise", - "res://addons/mat_maker_gd/nodes/filter", - "res://addons/mat_maker_gd/nodes/gradient", - "res://addons/mat_maker_gd/nodes/pattern", - "res://addons/mat_maker_gd/nodes/sdf2d", - "res://addons/mat_maker_gd/nodes/sdf3d", - "res://addons/mat_maker_gd/nodes/transform", - "res://addons/mat_maker_gd/nodes/simple", - "res://addons/mat_maker_gd/nodes/other", -] - -func _enter_tree(): - for s in folders: - evaluate_folder(s) - -func evaluate_folder(folder : String) -> void: - var category : String = folder.substr(folder.find_last("/") + 1) - - var dir = Directory.new() - if dir.open(folder) == OK: - dir.list_dir_begin() - var file_name = dir.get_next() - while file_name != "": - if !dir.current_is_dir(): - #print("Found file: " + file_name) - var file : String = folder + "/" + file_name - - MMAlgos.register_node_script(category, file) - - file_name = dir.get_next() - else: - print("An error occurred when trying to access the path.") - -#func _enter_tree(): -# editor_scene = editor_packed_scene.instance() -# editor_scene.set_plugin(self) -# tool_button = add_control_to_bottom_panel(editor_scene, "MMGD") -# tool_button.hide() - -#func _exit_tree(): -# remove_control_from_bottom_panel(editor_scene) -# if editor_scene: -# editor_scene.queue_free() -# editor_scene = null -# tool_button = null - -#func handles(object): -# return object is MMMaterial -# -#func edit(object): -# #if editor_scene: -# # make_bottom_panel_item_visible(editor_scene) -# -# if object is MMMaterial: -# editor_scene.set_mmmaterial(object as MMMaterial) -# -#func make_visible(visible): -# if tool_button: -# if visible: -# tool_button.show() -# else: -# #if tool_button.pressed: -# # tool_button.pressed = false -# -# if !tool_button.pressed: -# tool_button.hide() - -func get_plugin_icon(): - return null - -func get_plugin_name(): - return "MatMakerGD" - -func has_main_screen(): - return false - - diff --git a/game/addons/mat_maker_gd/widgets/color_picker_button/color_picker_button.gd b/game/addons/mat_maker_gd/widgets/color_picker_button/color_picker_button.gd deleted file mode 100644 index cf0e819..0000000 --- a/game/addons/mat_maker_gd/widgets/color_picker_button/color_picker_button.gd +++ /dev/null @@ -1,16 +0,0 @@ -tool -extends ColorPickerButton - -func get_drag_data(_position): - var preview = ColorRect.new() - preview.color = color - preview.rect_min_size = Vector2(32, 32) - set_drag_preview(preview) - return color - -func can_drop_data(_position, data) -> bool: - return typeof(data) == TYPE_COLOR - -func drop_data(_position, data) -> void: - color = data - emit_signal("color_changed", color) diff --git a/game/addons/mat_maker_gd/widgets/color_picker_popup/color_picker_popup.tscn b/game/addons/mat_maker_gd/widgets/color_picker_popup/color_picker_popup.tscn deleted file mode 100644 index c4003f3..0000000 --- a/game/addons/mat_maker_gd/widgets/color_picker_popup/color_picker_popup.tscn +++ /dev/null @@ -1,14 +0,0 @@ -[gd_scene format=2] - -[node name="ColorPickerPopup" type="PopupPanel"] -margin_right = 316.0 -margin_bottom = 470.0 - -[node name="ColorPicker" type="ColorPicker" parent="."] -margin_left = 4.0 -margin_top = 4.0 -margin_right = 312.0 -margin_bottom = 466.0 -__meta__ = { -"_edit_use_anchors_": false -} diff --git a/game/addons/mat_maker_gd/widgets/curve_edit/control_point.gd b/game/addons/mat_maker_gd/widgets/curve_edit/control_point.gd deleted file mode 100644 index 5fd5e48..0000000 --- a/game/addons/mat_maker_gd/widgets/curve_edit/control_point.gd +++ /dev/null @@ -1,70 +0,0 @@ -tool -extends Control - -var MMCurve = preload("res://addons/mat_maker_gd/nodes/bases/curve_base.gd") - -var moving : bool = false - -var min_x : float -var max_x : float -var min_y : float -var max_y : float - -const OFFSET : Vector2 = Vector2(3, 3) - -signal moved(index) -signal removed(index) - -func _ready(): - pass # Replace with function body. - -func _draw(): -# var current_theme : Theme = get_node("/root/MainWindow").theme -# var color : Color = current_theme.get_color("font_color", "Label") - - var color : Color = Color(1, 1, 1, 1) - for c in get_children(): - if c.visible: - draw_line(OFFSET, c.rect_position+OFFSET, color) - - draw_rect(Rect2(0, 0, 7, 7), color) - -#p : MMCurve.Point -func initialize(p) -> void: - rect_position = get_parent().transform_point(p.p)-OFFSET - if p.ls != INF: - $LeftSlope.rect_position = $LeftSlope.distance*(get_parent().rect_size*Vector2(1.0, -p.ls)).normalized() - if p.rs != INF: - $RightSlope.rect_position = $RightSlope.distance*(get_parent().rect_size*Vector2(1.0, -p.rs)).normalized() - -func set_constraint(x : float, X : float, y : float, Y : float) -> void: - min_x = x - max_x = X - min_y = y - max_y = Y - -func _on_ControlPoint_gui_input(event): - if event is InputEventMouseButton: - if event.button_index == BUTTON_LEFT: - if event.pressed: - moving = true - else: - moving = false - get_parent().update_controls() - elif event.button_index == BUTTON_RIGHT and event.pressed: - emit_signal("removed", get_index()) - elif moving and event is InputEventMouseMotion: - rect_position += event.relative - if rect_position.x < min_x: - rect_position.x = min_x - elif rect_position.x > max_x: - rect_position.x = max_x - if rect_position.y < min_y: - rect_position.y = min_y - elif rect_position.y > max_y: - rect_position.y = max_y - emit_signal("moved", get_index()) - -func update_tangents() -> void: - update() - emit_signal("moved", get_index()) diff --git a/game/addons/mat_maker_gd/widgets/curve_edit/control_point.tscn b/game/addons/mat_maker_gd/widgets/curve_edit/control_point.tscn deleted file mode 100644 index 03bfd28..0000000 --- a/game/addons/mat_maker_gd/widgets/curve_edit/control_point.tscn +++ /dev/null @@ -1,39 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://addons/mat_maker_gd/widgets/curve_edit/slope_point.gd" type="Script" id=1] -[ext_resource path="res://addons/mat_maker_gd/widgets/curve_edit/control_point.gd" type="Script" id=2] - -[node name="ControlPoint" type="Control"] -margin_left = 56.9864 -margin_top = 33.8615 -margin_right = 63.9864 -margin_bottom = 40.8615 -rect_min_size = Vector2( 7, 7 ) -script = ExtResource( 2 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="LeftSlope" type="Control" parent="."] -margin_left = -18.5235 -margin_right = -11.5235 -margin_bottom = 7.0 -rect_min_size = Vector2( 7, 7 ) -script = ExtResource( 1 ) -__meta__ = { -"_edit_use_anchors_": false -} -distance = -30.0 - -[node name="RightSlope" type="Control" parent="."] -margin_left = 15.6919 -margin_right = 22.6919 -margin_bottom = 7.0 -script = ExtResource( 1 ) -__meta__ = { -"_edit_use_anchors_": false -} -distance = 30.0 -[connection signal="gui_input" from="." to="." method="_on_ControlPoint_gui_input"] -[connection signal="gui_input" from="LeftSlope" to="LeftSlope" method="_on_ControlPoint_gui_input"] -[connection signal="gui_input" from="RightSlope" to="RightSlope" method="_on_ControlPoint_gui_input"] diff --git a/game/addons/mat_maker_gd/widgets/curve_edit/curve_dialog.gd b/game/addons/mat_maker_gd/widgets/curve_edit/curve_dialog.gd deleted file mode 100644 index df8f79a..0000000 --- a/game/addons/mat_maker_gd/widgets/curve_edit/curve_dialog.gd +++ /dev/null @@ -1,37 +0,0 @@ -tool -extends WindowDialog - -var MMCurve = preload("res://addons/mat_maker_gd/nodes/bases/curve_base.gd") - -var previous_points : Array -var curve - -signal curve_changed(curve) - -# Called when the node enters the scene tree for the first time. -func _ready(): - pass # Replace with function body. - -func _on_CurveDialog_popup_hide(): - queue_free() - -func _on_OK_pressed(): - emit_signal("curve_changed", curve) - curve.curve_changed() - - queue_free() - -func _on_Cancel_pressed(): - curve.set_points(previous_points) - emit_signal("curve_changed", curve) - - queue_free() - -func edit_curve(c) -> void: - curve = c - previous_points = curve.get_points() - $VBoxContainer/EditorContainer/CurveEditor.set_curve(curve) - popup_centered() - -func _on_CurveEditor_value_changed(value): - emit_signal("curve_changed", value) diff --git a/game/addons/mat_maker_gd/widgets/curve_edit/curve_dialog.tscn b/game/addons/mat_maker_gd/widgets/curve_edit/curve_dialog.tscn deleted file mode 100644 index 4898a89..0000000 --- a/game/addons/mat_maker_gd/widgets/curve_edit/curve_dialog.tscn +++ /dev/null @@ -1,81 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://addons/mat_maker_gd/widgets/curve_edit/curve_editor.tscn" type="PackedScene" id=1] -[ext_resource path="res://addons/mat_maker_gd/widgets/curve_edit/curve_dialog.gd" type="Script" id=2] - -[node name="CurveDialog" type="WindowDialog"] -anchor_right = 1.0 -anchor_bottom = 1.0 -margin_left = 307.0 -margin_top = 151.0 -margin_right = -347.0 -margin_bottom = -174.0 -window_title = "Edit curve" -script = ExtResource( 2 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="VBoxContainer" type="VBoxContainer" parent="."] -anchor_right = 1.0 -anchor_bottom = 1.0 -margin_left = 5.0 -margin_top = 5.0 -margin_right = -5.0 -margin_bottom = -5.0 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="EditorContainer" type="MarginContainer" parent="VBoxContainer"] -margin_right = 616.0 -margin_bottom = 353.0 -rect_clip_content = true -size_flags_horizontal = 3 -size_flags_vertical = 3 -custom_constants/margin_right = 4 -custom_constants/margin_top = 4 -custom_constants/margin_left = 4 -custom_constants/margin_bottom = 4 - -[node name="CurveEditor" parent="VBoxContainer/EditorContainer" instance=ExtResource( 1 )] -anchor_right = 0.0 -anchor_bottom = 0.0 -margin_left = 4.0 -margin_top = 4.0 -margin_right = 612.0 -margin_bottom = 349.0 -size_flags_vertical = 3 - -[node name="HSeparator" type="HSeparator" parent="VBoxContainer"] -margin_top = 357.0 -margin_right = 616.0 -margin_bottom = 361.0 - -[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer"] -margin_top = 365.0 -margin_right = 616.0 -margin_bottom = 385.0 - -[node name="Control" type="Control" parent="VBoxContainer/HBoxContainer"] -margin_right = 488.0 -margin_bottom = 20.0 -size_flags_horizontal = 3 - -[node name="OK" type="Button" parent="VBoxContainer/HBoxContainer"] -margin_left = 492.0 -margin_right = 552.0 -margin_bottom = 20.0 -rect_min_size = Vector2( 60, 0 ) -text = "OK" - -[node name="Cancel" type="Button" parent="VBoxContainer/HBoxContainer"] -margin_left = 556.0 -margin_right = 616.0 -margin_bottom = 20.0 -rect_min_size = Vector2( 60, 0 ) -text = "Cancel" -[connection signal="popup_hide" from="." to="." method="_on_CurveDialog_popup_hide"] -[connection signal="value_changed" from="VBoxContainer/EditorContainer/CurveEditor" to="." method="_on_CurveEditor_value_changed"] -[connection signal="pressed" from="VBoxContainer/HBoxContainer/OK" to="." method="_on_OK_pressed"] -[connection signal="pressed" from="VBoxContainer/HBoxContainer/Cancel" to="." method="_on_Cancel_pressed"] diff --git a/game/addons/mat_maker_gd/widgets/curve_edit/curve_edit.gd b/game/addons/mat_maker_gd/widgets/curve_edit/curve_edit.gd deleted file mode 100644 index 885adbc..0000000 --- a/game/addons/mat_maker_gd/widgets/curve_edit/curve_edit.gd +++ /dev/null @@ -1,24 +0,0 @@ -tool -extends Control - -var MMCurve = preload("res://addons/mat_maker_gd/nodes/bases/curve_base.gd") - -var value = null setget set_value - -signal updated(curve) - -func set_value(v) -> void: - value = v - $CurveView.set_curve(value) - $CurveView.update() - -func _on_CurveEdit_pressed(): - var dialog = preload("res://addons/mat_maker_gd/widgets/curve_edit/curve_dialog.tscn").instance() - add_child(dialog) - dialog.connect("curve_changed", self, "on_value_changed") - dialog.edit_curve(value) - -func on_value_changed(v) -> void: - #set_value(v) - emit_signal("updated", v) - $CurveView.update() diff --git a/game/addons/mat_maker_gd/widgets/curve_edit/curve_edit.tscn b/game/addons/mat_maker_gd/widgets/curve_edit/curve_edit.tscn deleted file mode 100644 index 9c018b5..0000000 --- a/game/addons/mat_maker_gd/widgets/curve_edit/curve_edit.tscn +++ /dev/null @@ -1,22 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://addons/mat_maker_gd/widgets/curve_edit/curve_edit.gd" type="Script" id=1] -[ext_resource path="res://addons/mat_maker_gd/widgets/curve_edit/curve_view.tscn" type="PackedScene" id=2] - -[node name="CurveEdit" type="Button"] -anchor_left = 1.0 -anchor_right = 1.0 -anchor_bottom = 1.0 -margin_left = -1280.0 -margin_right = -1220.0 -margin_bottom = -700.0 -rect_min_size = Vector2( 60, 20 ) -focus_mode = 1 -script = ExtResource( 1 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="CurveView" parent="." instance=ExtResource( 2 )] - -[connection signal="pressed" from="." to="." method="_on_CurveEdit_pressed"] diff --git a/game/addons/mat_maker_gd/widgets/curve_edit/curve_editor.gd b/game/addons/mat_maker_gd/widgets/curve_edit/curve_editor.gd deleted file mode 100644 index abbe57f..0000000 --- a/game/addons/mat_maker_gd/widgets/curve_edit/curve_editor.gd +++ /dev/null @@ -1,80 +0,0 @@ -tool -extends "res://addons/mat_maker_gd/widgets/curve_edit/curve_view.gd" - -signal value_changed(value) - -func _ready(): - update_controls() - -func set_curve(c) -> void: - curve = c - update() - update_controls() - -func update_controls() -> void: - if !curve: - return - - for c in get_children(): - c.queue_free() - - var points = curve.get_points() - - for i in points.size(): - var p = points[i] - var control_point = preload("res://addons/mat_maker_gd/widgets/curve_edit/control_point.tscn").instance() - add_child(control_point) - control_point.initialize(p) - control_point.rect_position = transform_point(p.p)-control_point.OFFSET - - if i == 0 or i == points.size()-1: - control_point.set_constraint(control_point.rect_position.x, control_point.rect_position.x, -control_point.OFFSET.y, rect_size.y-control_point.OFFSET.y) - if i == 0: - control_point.get_child(0).visible = false - else: - control_point.get_child(1).visible = false - else: - var min_x = transform_point(points[i-1].p).x+1 - var max_x = transform_point(points[i+1].p).x-1 - control_point.set_constraint(min_x, max_x, -control_point.OFFSET.y, rect_size.y-control_point.OFFSET.y) - - control_point.connect("moved", self, "_on_ControlPoint_moved") - control_point.connect("removed", self, "_on_ControlPoint_removed") - - emit_signal("value_changed", curve) - -func _on_ControlPoint_moved(index): - var points : Array = curve.get_points() - - var control_point = get_child(index) - points[index].p = reverse_transform_point(control_point.rect_position+control_point.OFFSET) - - if control_point.has_node("LeftSlope"): - var slope_vector = control_point.get_node("LeftSlope").rect_position/rect_size - if slope_vector.x != 0: - points[index].ls = -slope_vector.y / slope_vector.x - - if control_point.has_node("RightSlope"): - var slope_vector = control_point.get_node("RightSlope").rect_position/rect_size - if slope_vector.x != 0: - points[index].rs = -slope_vector.y / slope_vector.x - - curve.set_points(points, false) - update() - emit_signal("value_changed", curve) - -func _on_ControlPoint_removed(index): - if curve.remove_point(index): - update() - update_controls() - -func _on_CurveEditor_gui_input(event): - if event is InputEventMouseButton: - if event.button_index == BUTTON_LEFT and event.doubleclick: - var new_point_position = reverse_transform_point(get_local_mouse_position()) - curve.add_point(new_point_position.x, new_point_position.y, 0.0, 0.0) - update_controls() - -func _on_resize() -> void: - ._on_resize() - update_controls() diff --git a/game/addons/mat_maker_gd/widgets/curve_edit/curve_editor.tscn b/game/addons/mat_maker_gd/widgets/curve_edit/curve_editor.tscn deleted file mode 100644 index d8c7935..0000000 --- a/game/addons/mat_maker_gd/widgets/curve_edit/curve_editor.tscn +++ /dev/null @@ -1,14 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://addons/mat_maker_gd/widgets/curve_edit/curve_view.tscn" type="PackedScene" id=1] -[ext_resource path="res://addons/mat_maker_gd/widgets/curve_edit/curve_editor.gd" type="Script" id=2] - -[node name="CurveEditor" instance=ExtResource( 1 )] -margin_left = 10.0 -margin_top = 10.0 -margin_right = -10.0 -margin_bottom = -10.0 -mouse_filter = 0 -script = ExtResource( 2 ) - -[connection signal="gui_input" from="." to="." method="_on_CurveEditor_gui_input"] diff --git a/game/addons/mat_maker_gd/widgets/curve_edit/curve_view.gd b/game/addons/mat_maker_gd/widgets/curve_edit/curve_view.gd deleted file mode 100644 index b6ea144..0000000 --- a/game/addons/mat_maker_gd/widgets/curve_edit/curve_view.gd +++ /dev/null @@ -1,70 +0,0 @@ -tool -extends Control - -var MMCurve = preload("res://addons/mat_maker_gd/nodes/bases/curve_base.gd") - -export var show_axes : bool = false - -var curve #: MMCurve - -func _ready() -> void: -# curve = MMCurve.new() - connect("resized", self, "_on_resize") - update() - -func set_curve(val) -> void: - curve = val - update() - -func transform_point(p : Vector2) -> Vector2: - return (Vector2(0.0, 1.0)+Vector2(1.0, -1.0)*p)*rect_size - -func reverse_transform_point(p : Vector2) -> Vector2: - return Vector2(0.0, 1.0)+Vector2(1.0, -1.0)*p/rect_size - -func _draw(): - if !curve: - return - -# var current_theme : Theme = get_node("/root/MainWindow").theme -# -# var bg = current_theme.get_stylebox("panel", "Panel").bg_color -# var fg = current_theme.get_color("font_color", "Label") -# -# var axes_color : Color = bg.linear_interpolate(fg, 0.25) -# var curve_color : Color = bg.linear_interpolate(fg, 0.75) - - var axes_color : Color = Color(0.9, 0.9, 0.9, 1) - var curve_color : Color = Color(1, 1, 1, 1) - - if show_axes: - for i in range(5): - var p = transform_point(0.25*Vector2(i, i)) - draw_line(Vector2(p.x, 0), Vector2(p.x, rect_size.y-1), axes_color) - draw_line(Vector2(0, p.y), Vector2(rect_size.x-1, p.y), axes_color) - - var points = curve.get_points() - - for i in range(points.size() - 1): - var p1 = points[i].p - var p2 = points[i+1].p - var d = (p2.x-p1.x)/3.0 - var yac = p1.y+d*points[i].rs - var ybc = p2.y-d*points[i+1].ls - var p = transform_point(p1) - var count : int = max(1, int((transform_point(p2).x-p.x/5.0))) - - for tt in range(count): - var t = (tt+1.0)/count - var omt = (1.0 - t) - var omt2 = omt * omt - var omt3 = omt2 * omt - var t2 = t * t - var t3 = t2 * t - var x = p1.x+(p2.x-p1.x)*t - var np = transform_point(Vector2(x, p1.y*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + p2.y*t3)) - draw_line(p, np, curve_color) - p = np - -func _on_resize() -> void: - update() diff --git a/game/addons/mat_maker_gd/widgets/curve_edit/curve_view.tscn b/game/addons/mat_maker_gd/widgets/curve_edit/curve_view.tscn deleted file mode 100644 index ffae7ac..0000000 --- a/game/addons/mat_maker_gd/widgets/curve_edit/curve_view.tscn +++ /dev/null @@ -1,16 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/widgets/curve_edit/curve_view.gd" type="Script" id=1] - -[node name="CurveView" type="Control"] -anchor_right = 1.0 -anchor_bottom = 1.0 -margin_left = 4.0 -margin_top = 4.0 -margin_right = -4.0 -margin_bottom = -4.0 -mouse_filter = 2 -script = ExtResource( 1 ) -__meta__ = { -"_edit_use_anchors_": false -} diff --git a/game/addons/mat_maker_gd/widgets/curve_edit/slope_point.gd b/game/addons/mat_maker_gd/widgets/curve_edit/slope_point.gd deleted file mode 100644 index bcbaa4e..0000000 --- a/game/addons/mat_maker_gd/widgets/curve_edit/slope_point.gd +++ /dev/null @@ -1,49 +0,0 @@ -tool -extends Control - -export var distance : float - -var moving = false - -const OFFSET = -Vector2(0, 0) - -func _ready(): - pass # Replace with function body. - -func _draw(): -# var current_theme : Theme = get_node("/root/MainWindow").theme -# var color : Color = current_theme.get_color("font_color", "Label") - - var color : Color = Color(1, 1, 1, 1) - - draw_circle(Vector2(3.0, 3.0), 3.0, color) - -func _on_ControlPoint_gui_input(event): - if event is InputEventMouseButton: - if event.button_index == BUTTON_LEFT: - if event.pressed: - if event.doubleclick: - var parent = get_parent() - var vector : Vector2 - if get_index() == 0: - vector = parent.rect_position-parent.get_parent().get_child(parent.get_index()-1).rect_position - else: - vector = parent.get_parent().get_child(parent.get_index()+1).rect_position-parent.rect_position - vector = distance*vector.normalized() - rect_position = vector-OFFSET - if event.control: - get_parent().get_child(1-get_index()).rect_position = -vector-OFFSET - get_parent().update_tangents() - else: - moving = true - else: - moving = false - elif moving and event is InputEventMouseMotion: - var vector = get_global_mouse_position()-get_parent().get_global_rect().position+OFFSET - vector *= sign(vector.x) - vector = distance*vector.normalized() - rect_position = vector-OFFSET - if event.control: - get_parent().get_child(1-get_index()).rect_position = -vector-OFFSET - - get_parent().update_tangents() diff --git a/game/addons/mat_maker_gd/widgets/float_edit/float_edit.gd b/game/addons/mat_maker_gd/widgets/float_edit/float_edit.gd deleted file mode 100644 index cdb73e5..0000000 --- a/game/addons/mat_maker_gd/widgets/float_edit/float_edit.gd +++ /dev/null @@ -1,139 +0,0 @@ -tool -extends LineEdit - -export var value : float = 0.5 setget set_value -export var min_value : float = 0.0 setget set_min_value -export var max_value : float = 1.0 setget set_max_value -export var step : float = 0.0 setget set_step -export var float_only : bool = false - -var sliding : bool = false -var start_position : float -var last_position : float -var start_value : float -var modifiers : int -var from_lower_bound : bool = false -var from_upper_bound : bool = false - -onready var slider = $Slider -onready var cursor = $Slider/Cursor - -signal value_changed(value) - -func _ready() -> void: - do_update() - -func set_value(v) -> void: - if v is float: - value = v - do_update() - $Slider.visible = true - elif v is String and !float_only: - text = v - $Slider.visible = false - -func set_min_value(v : float) -> void: - min_value = v - do_update() - -func set_max_value(v : float) -> void: - max_value = v - do_update() - -func set_step(v : float) -> void: - step = v - do_update() - -func do_update(update_text : bool = true) -> void: - if update_text and $Slider.visible: - text = str(value) - if cursor != null: - if max_value != min_value: - cursor.rect_position.x = (clamp(value, min_value, max_value)-min_value)*(slider.rect_size.x-cursor.rect_size.x)/(max_value-min_value) - else: - cursor.rect_position.x = 0 - -func get_modifiers(event): - var new_modifiers = 0 - if event.shift: - new_modifiers |= 1 - if event.control: - new_modifiers |= 2 - if event.alt: - new_modifiers |= 4 - return new_modifiers - -func _on_LineEdit_gui_input(event : InputEvent) -> void: - if !$Slider.visible or !editable: - return - if event is InputEventMouseButton and event.button_index == BUTTON_LEFT: - if event.is_pressed(): - last_position = event.position.x - start_position = last_position - start_value = value - sliding = true - from_lower_bound = value <= min_value - from_upper_bound = value >= max_value - modifiers = get_modifiers(event) - else: - sliding = false - elif sliding and event is InputEventMouseMotion and event.button_mask == BUTTON_MASK_LEFT: - var new_modifiers = get_modifiers(event) - if new_modifiers != modifiers: - start_position = last_position - start_value = value - modifiers = new_modifiers - else: - last_position = event.position.x - var delta : float = last_position-start_position - var current_step = step - if event.control: - delta *= 0.2 - elif event.shift: - delta *= 5.0 - if event.alt: - current_step *= 0.01 - var v : float = start_value+sign(delta)*pow(abs(delta)*0.005, 2)*abs(max_value - min_value) - if current_step != 0: - v = min_value+floor((v - min_value)/current_step)*current_step - if !from_lower_bound and v < min_value: - v = min_value - if !from_upper_bound and v > max_value: - v = max_value - set_value(v) - select(0, 0) - emit_signal("value_changed", value) - release_focus() - elif event is InputEventKey and !event.echo: - match event.scancode: - KEY_SHIFT, KEY_CONTROL, KEY_ALT: - start_position = last_position - start_value = value - modifiers = get_modifiers(event) - -func _on_LineEdit_text_changed(new_text : String) -> void: - if new_text.is_valid_float(): - value = new_text.to_float() - do_update(false) - -func _on_LineEdit_text_entered(new_text : String, release = true) -> void: - if new_text.is_valid_float(): - value = new_text.to_float() - do_update() - emit_signal("value_changed", value) - $Slider.visible = true - elif float_only: - do_update() - emit_signal("value_changed", value) - $Slider.visible = true - else: - emit_signal("value_changed", new_text) - $Slider.visible = false - if release: - release_focus() - -func _on_FloatEdit_focus_entered(): - select_all() - -func _on_LineEdit_focus_exited() -> void: - _on_LineEdit_text_entered(text, false) diff --git a/game/addons/mat_maker_gd/widgets/float_edit/float_edit.tscn b/game/addons/mat_maker_gd/widgets/float_edit/float_edit.tscn deleted file mode 100644 index 7f13ead..0000000 --- a/game/addons/mat_maker_gd/widgets/float_edit/float_edit.tscn +++ /dev/null @@ -1,46 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/widgets/float_edit/float_edit.gd" type="Script" id=1] - -[node name="FloatEdit" type="LineEdit"] -anchor_left = 1.0 -anchor_right = 1.0 -anchor_bottom = 1.0 -margin_left = -1280.0 -margin_right = -1222.0 -margin_bottom = -696.0 -focus_mode = 1 -text = "0.5" -max_length = 100 -context_menu_enabled = false -caret_blink = true -script = ExtResource( 1 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Slider" type="ColorRect" parent="."] -anchor_top = 1.0 -anchor_right = 1.0 -anchor_bottom = 1.0 -margin_left = 2.0 -margin_top = -3.0 -margin_right = -2.0 -margin_bottom = -3.0 -rect_min_size = Vector2( 0, 2 ) -mouse_filter = 2 -color = Color( 0.501961, 0.501961, 0.501961, 1 ) - -[node name="Cursor" type="ColorRect" parent="Slider"] -margin_right = 3.0 -margin_bottom = 1.0 -rect_min_size = Vector2( 3, 2 ) -mouse_filter = 2 - -[connection signal="focus_entered" from="." to="." method="_on_FloatEdit_focus_entered"] -[connection signal="focus_exited" from="." to="." method="_on_LineEdit_focus_exited"] -[connection signal="gui_input" from="." to="." method="_on_LineEdit_gui_input"] -[connection signal="resized" from="." to="." method="do_update"] -[connection signal="text_changed" from="." to="." method="_on_LineEdit_text_changed"] -[connection signal="text_entered" from="." to="." method="_on_LineEdit_text_entered"] -[connection signal="resized" from="Slider" to="." method="do_update"] diff --git a/game/addons/mat_maker_gd/widgets/gradient_editor/gradient_editor.gd b/game/addons/mat_maker_gd/widgets/gradient_editor/gradient_editor.gd deleted file mode 100644 index f1c2625..0000000 --- a/game/addons/mat_maker_gd/widgets/gradient_editor/gradient_editor.gd +++ /dev/null @@ -1,288 +0,0 @@ -tool -extends Control - -class GradientCursor: - extends Control - - var color : Color - var sliding : bool = false - - onready var label : Label = get_parent().get_node("Value") - - const WIDTH : int = 10 - - func _ready() -> void: - rect_position = Vector2(0, 15) - rect_size = Vector2(WIDTH, 15) - - func _draw() -> void: -# warning-ignore:integer_division - var polygon : PoolVector2Array = PoolVector2Array([Vector2(0, 5), Vector2(WIDTH/2, 0), Vector2(WIDTH, 5), Vector2(WIDTH, 15), Vector2(0, 15), Vector2(0, 5)]) - var c = color - c.a = 1.0 - draw_colored_polygon(polygon, c) - draw_polyline(polygon, Color(0.0, 0.0, 0.0) if color.v > 0.5 else Color(1.0, 1.0, 1.0)) - - func _gui_input(ev) -> void: - if ev is InputEventMouseButton: - if ev.button_index == BUTTON_LEFT: - if ev.doubleclick: - get_parent().save_color_state() - get_parent().select_color(self, ev.global_position) - elif ev.pressed: - get_parent().save_color_state() - sliding = true - label.visible = true - label.text = "%.03f" % get_cursor_position() - else: - if sliding: - get_parent().undo_redo_save_color_state() - - sliding = false - label.visible = false - elif ev.button_index == BUTTON_RIGHT and get_parent().get_sorted_cursors().size() > 2: - var parent = get_parent() - parent.save_color_state() - parent.remove_child(self) - parent.update_value() - parent.undo_redo_save_color_state() - queue_free() - elif ev is InputEventMouseMotion and (ev.button_mask & BUTTON_MASK_LEFT) != 0 and sliding: - rect_position.x += get_local_mouse_position().x - if ev.control: - rect_position.x = round(get_cursor_position()*20.0)*0.05*(get_parent().rect_size.x - WIDTH) - rect_position.x = min(max(0, rect_position.x), get_parent().rect_size.x-rect_size.x) - get_parent().update_value() - label.text = "%.03f" % get_cursor_position() - - func get_cursor_position() -> float: - return rect_position.x / (get_parent().rect_size.x - WIDTH) - - func set_color(c) -> void: - color = c - get_parent().update_value() - update() - - static func sort(a, b) -> bool: - return a.get_position() < b.get_position() - - func can_drop_data(_position, data) -> bool: - return typeof(data) == TYPE_COLOR - - func drop_data(_position, data) -> void: - set_color(data) - -var graph_node = null -var value = null setget set_value -export var embedded : bool = true -var _undo_redo : UndoRedo = null - -signal updated(value) - -var _saved_points : PoolRealArray = PoolRealArray() - -func _init(): - connect("resized", self, "on_resized") - -func ignore_changes(val): - graph_node.ignore_changes(val) - -func save_color_state(): - var p : PoolRealArray = value.points - _saved_points.resize(0) - - for v in p: - _saved_points.push_back(v) - - ignore_changes(true) - -func undo_redo_save_color_state(): - var op : PoolRealArray - var np : PoolRealArray - - for v in _saved_points: - op.push_back(v) - - for v in value.get_points(): - np.push_back(v) - - _undo_redo.create_action("MMGD: gradient colors changed") - _undo_redo.add_do_method(value, "set_points", np) - _undo_redo.add_undo_method(value, "set_points", op) - _undo_redo.commit_action() - - ignore_changes(false) - -func set_undo_redo(ur : UndoRedo) -> void: - _undo_redo = ur - -#func get_gradient_from_data(data): -# if typeof(data) == TYPE_ARRAY: -# return data -# elif typeof(data) == TYPE_DICTIONARY: -# if data.has("parameters") and data.parameters.has("gradient"): -# return data.parameters.gradient -# if data.has("type") and data.type == "Gradient": -# return data -# return null - -#func get_drag_data(_position : Vector2): -# var data = 0#MMType.serialize_value(value) -# var preview = ColorRect.new() -# preview.rect_size = Vector2(64, 24) -# preview.material = $Gradient.material -# set_drag_preview(preview) -# return data -# -#func can_drop_data(_position : Vector2, data) -> bool: -# return get_gradient_from_data(data) != null -# -#func drop_data(_position : Vector2, data) -> void: -# var gradient = get_gradient_from_data(data) -# #if gradient != null: -# #set_value(MMType.deserialize_value(gradient)) - -func set_value(v) -> void: - value = v - - update_preview() - call_deferred("update_cursors") - -func update_cursors() -> void: - for c in get_children(): - if c is GradientCursor: - remove_child(c) - c.free() - - var vs : int = value.get_point_count() - - for i in range(vs): - add_cursor(value.get_point_value(i) * (rect_size.x-GradientCursor.WIDTH), value.get_point_color(i)) - - $Interpolation.selected = value.interpolation_type - -func update_value() -> void: - value.clear() - - var sc : Array = get_sorted_cursors() - - var points : PoolRealArray = PoolRealArray() - - for c in sc: - - points.push_back(c.rect_position.x/(rect_size.x-GradientCursor.WIDTH)) - - var color : Color = c.color - - points.push_back(color.r) - points.push_back(color.g) - points.push_back(color.b) - points.push_back(color.a) - - value.set_points(points) - - update_preview() - -func add_cursor(x, color) -> void: - var cursor = GradientCursor.new() - add_child(cursor) - cursor.rect_position.x = x - cursor.color = color - -func _gui_input(ev) -> void: - if ev is InputEventMouseButton and ev.button_index == 1 and ev.doubleclick: - if ev.position.y > 15: - var p = clamp(ev.position.x, 0, rect_size.x-GradientCursor.WIDTH) - save_color_state() - add_cursor(p, get_gradient_color(p)) - update_value() - undo_redo_save_color_state() - elif embedded: - var popup = load("res://addons/mat_maker_gd/widgets/gradient_editor/gradient_popup.tscn").instance() - add_child(popup) - var popup_size = popup.rect_size - popup.popup(Rect2(ev.global_position, Vector2(0, 0))) - popup.set_global_position(ev.global_position-Vector2(popup_size.x / 2, popup_size.y)) - popup.init(value, graph_node, _undo_redo) - popup.connect("updated", self, "set_value") - popup.connect("popup_hide", popup, "queue_free") - -# Showing a color picker popup to change a cursor's color - -var active_cursor - -func select_color(cursor, position) -> void: - active_cursor = cursor - var color_picker_popup = preload("res://addons/mat_maker_gd/widgets/color_picker_popup/color_picker_popup.tscn").instance() - add_child(color_picker_popup) - var color_picker = color_picker_popup.get_node("ColorPicker") - color_picker.color = cursor.color - color_picker.connect("color_changed", cursor, "set_color") - color_picker_popup.rect_position = position - color_picker_popup.connect("popup_hide", self, "undo_redo_save_color_state") - color_picker_popup.connect("popup_hide", color_picker_popup, "queue_free") - color_picker_popup.popup() - -# Calculating a color from the gradient and generating the shader - -func get_sorted_cursors() -> Array: - var array = [] - for c in get_children(): - if c is GradientCursor: - array.append(c) - array.sort_custom(GradientCursor, "sort") - return array - -func generate_preview_image() -> void: - var tex : ImageTexture = $Gradient.texture - - if !tex: - tex = ImageTexture.new() - $Gradient.texture = tex - - var img : Image = tex.get_data() - - var w : float = $Gradient.rect_size.x - var h : float = $Gradient.rect_size.y - - if !img: - img = Image.new() - - if img.get_size().x != w || img.get_size().y != h: - img.create(w, h, false, Image.FORMAT_RGBA8) - - img.lock() - - for i in range(w): - var x : float = float(i) / float(w) - var col : Color = value.get_gradient_color(x) - - for j in range(h): - img.set_pixel(i, j, col) - - img.unlock() - - tex.create_from_image(img, 0) - -func get_gradient_color(x) -> Color: - return value.get_gradient_color(x / (rect_size.x - GradientCursor.WIDTH)) - -func update_preview() -> void: - call_deferred("generate_preview_image") - -func _on_Interpolation_item_selected(ID) -> void: - ignore_changes(true) - - _undo_redo.create_action("MMGD: gradient interpolation_type changed") - _undo_redo.add_do_method(value, "set_interpolation_type", ID) - _undo_redo.add_undo_method(value, "set_interpolation_type", value.interpolation_type) - _undo_redo.commit_action() - - ignore_changes(false) - - update_preview() - -func on_resized() -> void: - if value: - update_preview() - call_deferred("update_cursors") diff --git a/game/addons/mat_maker_gd/widgets/gradient_editor/gradient_editor.tscn b/game/addons/mat_maker_gd/widgets/gradient_editor/gradient_editor.tscn deleted file mode 100644 index 5dc99e5..0000000 --- a/game/addons/mat_maker_gd/widgets/gradient_editor/gradient_editor.tscn +++ /dev/null @@ -1,94 +0,0 @@ -[gd_scene load_steps=10 format=2] - -[ext_resource path="res://addons/mat_maker_gd/widgets/gradient_editor/gradient_editor.gd" type="Script" id=1] -[ext_resource path="res://addons/mat_maker_gd/icons/icons.tres" type="Texture" id=2] - -[sub_resource type="Shader" id=1] -code = "shader_type canvas_item; - -void fragment() { - COLOR = vec4(vec3(2.0*fract(0.5*(floor(0.12*FRAGCOORD.x)+floor(0.125*FRAGCOORD.y)))), 1.0); -}" - -[sub_resource type="ShaderMaterial" id=2] -shader = SubResource( 1 ) - -[sub_resource type="Theme" id=5] - -[sub_resource type="AtlasTexture" id=6] -flags = 7 -atlas = ExtResource( 2 ) -region = Rect2( 96, 0, 32, 16 ) - -[sub_resource type="AtlasTexture" id=7] -flags = 7 -atlas = ExtResource( 2 ) -region = Rect2( 64, 0, 32, 16 ) - -[sub_resource type="AtlasTexture" id=8] -flags = 7 -atlas = ExtResource( 2 ) -region = Rect2( 64, 16, 32, 16 ) - -[sub_resource type="AtlasTexture" id=9] -flags = 7 -atlas = ExtResource( 2 ) -region = Rect2( 96, 16, 32, 16 ) - -[node name="Control" type="Control"] -margin_right = 120.0 -margin_bottom = 30.0 -rect_min_size = Vector2( 120, 32 ) -focus_mode = 1 -script = ExtResource( 1 ) -embedded = true - -[node name="Background" type="ColorRect" parent="."] -material = SubResource( 2 ) -anchor_right = 1.0 -margin_left = 4.0 -margin_right = -4.0 -margin_bottom = 15.0 -rect_min_size = Vector2( 112, 17 ) -mouse_filter = 2 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Gradient" type="TextureRect" parent="."] -anchor_right = 1.0 -margin_left = 4.0 -margin_right = -4.0 -margin_bottom = 15.0 -rect_min_size = Vector2( 112, 17 ) -mouse_filter = 2 -theme = SubResource( 5 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Interpolation" type="OptionButton" parent="."] -margin_left = 0.418457 -margin_top = -2.90374 -margin_right = 73.4185 -margin_bottom = 19.0963 -rect_scale = Vector2( 0.5, 0.5 ) -icon = SubResource( 6 ) -items = [ "", SubResource( 7 ), false, 0, null, "", SubResource( 6 ), false, 1, null, "", SubResource( 8 ), false, 2, null, "", SubResource( 9 ), false, 3, null ] -selected = 1 - -[node name="Value" type="Label" parent="."] -anchor_right = 1.0 -margin_top = -1.0 -margin_bottom = 14.0 -custom_colors/font_color = Color( 1, 1, 1, 1 ) -custom_colors/font_color_shadow = Color( 0, 0, 0, 1 ) -custom_constants/shadow_offset_x = 1 -custom_constants/shadow_offset_y = 1 -custom_constants/shadow_as_outline = 1 -align = 1 -__meta__ = { -"_edit_use_anchors_": false -} - -[connection signal="item_selected" from="Interpolation" to="." method="_on_Interpolation_item_selected"] diff --git a/game/addons/mat_maker_gd/widgets/gradient_editor/gradient_popup.gd b/game/addons/mat_maker_gd/widgets/gradient_editor/gradient_popup.gd deleted file mode 100644 index 466c12c..0000000 --- a/game/addons/mat_maker_gd/widgets/gradient_editor/gradient_popup.gd +++ /dev/null @@ -1,15 +0,0 @@ -tool -extends Popup - -signal updated(value) - -func init(value, graph_node, undo_redo) -> void: - $Panel/Control.set_undo_redo(undo_redo) - $Panel/Control.graph_node = graph_node - $Panel/Control.set_value(value) - -func _on_Control_updated(value) -> void: - emit_signal("updated", value) - -func _on_GradientPopup_popup_hide() -> void: - queue_free() diff --git a/game/addons/mat_maker_gd/widgets/gradient_editor/gradient_popup.tscn b/game/addons/mat_maker_gd/widgets/gradient_editor/gradient_popup.tscn deleted file mode 100644 index 1b9c5b1..0000000 --- a/game/addons/mat_maker_gd/widgets/gradient_editor/gradient_popup.tscn +++ /dev/null @@ -1,31 +0,0 @@ -[gd_scene load_steps=4 format=2] - -[ext_resource path="res://addons/mat_maker_gd/widgets/gradient_editor/gradient_popup.gd" type="Script" id=1] -[ext_resource path="res://addons/mat_maker_gd/widgets/gradient_editor/gradient_editor.tscn" type="PackedScene" id=2] - -[sub_resource type="StyleBoxFlat" id=1] -bg_color = Color( 0, 0, 0.25098, 0.752941 ) - -[node name="GradientPopup" type="Popup"] -margin_right = 632.0 -margin_bottom = 49.0 -size_flags_horizontal = 0 -size_flags_vertical = 0 -script = ExtResource( 1 ) - -[node name="Panel" type="Panel" parent="."] -margin_right = 632.0 -margin_bottom = 49.0 -custom_styles/panel = SubResource( 1 ) - -[node name="Control" parent="Panel" instance=ExtResource( 2 )] -anchor_right = 1.0 -anchor_bottom = 1.0 -margin_left = 10.0 -margin_top = 10.0 -margin_right = -10.0 -margin_bottom = -10.0 -embedded = false - -[connection signal="popup_hide" from="." to="." method="_on_GradientPopup_popup_hide"] -[connection signal="updated" from="Panel/Control" to="." method="_on_Control_updated"] diff --git a/game/addons/mat_maker_gd/widgets/image_picker_button/image_picker_button.gd b/game/addons/mat_maker_gd/widgets/image_picker_button/image_picker_button.gd deleted file mode 100644 index 73072e1..0000000 --- a/game/addons/mat_maker_gd/widgets/image_picker_button/image_picker_button.gd +++ /dev/null @@ -1,46 +0,0 @@ -tool -extends TextureButton - - -var image_path = "" - - -signal on_file_selected(f) - - -func _ready(): - texture_normal = ImageTexture.new() - -func do_set_image_path(path) -> void: - if path == null: - return - image_path = path - - texture_normal.load(image_path) - -func set_image_path(path) -> void: - do_set_image_path(path) - emit_signal("on_file_selected", path) - -func _on_ImagePicker_pressed(): - var dialog = preload("res://addons/mat_maker_gd/windows/file_dialog/file_dialog.tscn").instance() - add_child(dialog) - dialog.rect_min_size = Vector2(500, 500) - dialog.access = FileDialog.ACCESS_FILESYSTEM - dialog.mode = FileDialog.MODE_OPEN_FILE - dialog.add_filter("*.bmp;BMP Image") - dialog.add_filter("*.exr;EXR Image") - dialog.add_filter("*.hdr;Radiance HDR Image") - dialog.add_filter("*.jpg,*.jpeg;JPEG Image") - dialog.add_filter("*.png;PNG Image") - dialog.add_filter("*.svg;SVG Image") - dialog.add_filter("*.tga;TGA Image") - dialog.add_filter("*.webp;WebP Image") - var files = dialog.select_files() - while files is GDScriptFunctionState: - files = yield(files, "completed") - if files.size() > 0: - set_image_path(files[0]) - -func on_drop_image_file(file_name : String) -> void: - set_image_path(file_name) diff --git a/game/addons/mat_maker_gd/widgets/image_picker_button/image_picker_button.tscn b/game/addons/mat_maker_gd/widgets/image_picker_button/image_picker_button.tscn deleted file mode 100644 index e374a08..0000000 --- a/game/addons/mat_maker_gd/widgets/image_picker_button/image_picker_button.tscn +++ /dev/null @@ -1,20 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://addons/mat_maker_gd/widgets/image_picker_button/image_picker_button.gd" type="Script" id=2] - -[sub_resource type="ImageTexture" id=1] - -[node name="ImagePicker" type="TextureButton"] -margin_right = 64.0 -margin_bottom = 64.0 -rect_min_size = Vector2( 64, 64 ) -rect_clip_content = true -texture_normal = SubResource( 1 ) -expand = true -stretch_mode = 5 -script = ExtResource( 2 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[connection signal="pressed" from="." to="." method="_on_ImagePicker_pressed"] diff --git a/game/addons/mat_maker_gd/widgets/polygon_edit/control_point.gd b/game/addons/mat_maker_gd/widgets/polygon_edit/control_point.gd deleted file mode 100644 index 156957f..0000000 --- a/game/addons/mat_maker_gd/widgets/polygon_edit/control_point.gd +++ /dev/null @@ -1,33 +0,0 @@ -tool -extends Control - -var moving : bool = false - -const OFFSET : Vector2 = Vector2(3, 3) - -signal moved(index) -signal removed(index) - -func _draw(): -# var current_theme : Theme = get_node("/root/MainWindow").theme -# var color : Color = current_theme.get_color("font_color", "Label") - - var color : Color = Color(1, 1, 1, 1) - draw_rect(Rect2(0, 0, 7, 7), color) - -func initialize(p : Vector2) -> void: - rect_position = get_parent().transform_point(p) - OFFSET - -func _on_ControlPoint_gui_input(event): - if event is InputEventMouseButton: - if event.button_index == BUTTON_LEFT: - if event.pressed: - moving = true - else: - moving = false - get_parent().update_controls() - elif event.button_index == BUTTON_RIGHT and event.pressed: - emit_signal("removed", get_index()) - elif moving and event is InputEventMouseMotion: - rect_position += event.relative - emit_signal("moved", get_index()) diff --git a/game/addons/mat_maker_gd/widgets/polygon_edit/control_point.tscn b/game/addons/mat_maker_gd/widgets/polygon_edit/control_point.tscn deleted file mode 100644 index 2d445f3..0000000 --- a/game/addons/mat_maker_gd/widgets/polygon_edit/control_point.tscn +++ /dev/null @@ -1,15 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/widgets/polygon_edit/control_point.gd" type="Script" id=1] - -[node name="ControlPoint" type="Control"] -margin_left = 56.9864 -margin_top = 33.8615 -margin_right = 63.9864 -margin_bottom = 40.8615 -rect_min_size = Vector2( 7, 7 ) -script = ExtResource( 1 ) -__meta__ = { -"_edit_use_anchors_": false -} -[connection signal="gui_input" from="." to="." method="_on_ControlPoint_gui_input"] diff --git a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_dialog.gd b/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_dialog.gd deleted file mode 100644 index da96c7a..0000000 --- a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_dialog.gd +++ /dev/null @@ -1,46 +0,0 @@ -tool -extends WindowDialog - -export var closed : bool = true setget set_closed -var previous_points : PoolVector2Array -var polygon - -signal polygon_changed(polygon) - -func set_closed(c : bool = true): - closed = c - window_title = "Edit polygon" if closed else "Edit polyline" - $VBoxContainer/EditorContainer/PolygonEditor.set_closed(closed) - -func _on_CurveDialog_popup_hide(): -# emit_signal("return_polygon", null) - queue_free() - pass - -func _on_OK_pressed(): - emit_signal("polygon_changed", polygon) - polygon.polygon_changed() - - queue_free() - -func _on_Cancel_pressed(): - polygon.set_points(previous_points) - emit_signal("polygon_changed", polygon) - - queue_free() - -func edit_polygon(poly): - polygon = poly - previous_points = polygon.points - - $VBoxContainer/EditorContainer/PolygonEditor.set_polygon(polygon) - popup_centered() - - #var result = yield(self, "return_polygon") - - #queue_free() - - #return result - -func _on_PolygonEditor_value_changed(value): - emit_signal("polygon_changed", value) diff --git a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_dialog.tscn b/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_dialog.tscn deleted file mode 100644 index 1bf6da5..0000000 --- a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_dialog.tscn +++ /dev/null @@ -1,81 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://addons/mat_maker_gd/widgets/polygon_edit/polygon_editor.tscn" type="PackedScene" id=1] -[ext_resource path="res://addons/mat_maker_gd/widgets/polygon_edit/polygon_dialog.gd" type="Script" id=2] - -[node name="PolygonDialog" type="WindowDialog"] -anchor_right = 1.0 -anchor_bottom = 1.0 -margin_left = 307.0 -margin_top = 151.0 -margin_right = -508.0 -margin_bottom = -70.0 -window_title = "Edit polygon" -script = ExtResource( 2 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="VBoxContainer" type="VBoxContainer" parent="."] -anchor_right = 1.0 -anchor_bottom = 1.0 -margin_left = 5.0 -margin_top = 5.0 -margin_right = -5.0 -margin_bottom = -5.0 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="EditorContainer" type="MarginContainer" parent="VBoxContainer"] -margin_right = 455.0 -margin_bottom = 457.0 -rect_clip_content = true -size_flags_horizontal = 3 -size_flags_vertical = 3 -custom_constants/margin_right = 4 -custom_constants/margin_top = 4 -custom_constants/margin_left = 4 -custom_constants/margin_bottom = 4 - -[node name="PolygonEditor" parent="VBoxContainer/EditorContainer" instance=ExtResource( 1 )] -anchor_right = 0.0 -anchor_bottom = 0.0 -margin_left = 4.0 -margin_top = 4.0 -margin_right = 451.0 -margin_bottom = 453.0 - -[node name="HSeparator" type="HSeparator" parent="VBoxContainer"] -margin_top = 461.0 -margin_right = 455.0 -margin_bottom = 465.0 - -[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer"] -margin_top = 469.0 -margin_right = 455.0 -margin_bottom = 489.0 - -[node name="Control" type="Control" parent="VBoxContainer/HBoxContainer"] -margin_right = 327.0 -margin_bottom = 20.0 -size_flags_horizontal = 3 - -[node name="OK" type="Button" parent="VBoxContainer/HBoxContainer"] -margin_left = 331.0 -margin_right = 391.0 -margin_bottom = 20.0 -rect_min_size = Vector2( 60, 0 ) -text = "OK" - -[node name="Cancel" type="Button" parent="VBoxContainer/HBoxContainer"] -margin_left = 395.0 -margin_right = 455.0 -margin_bottom = 20.0 -rect_min_size = Vector2( 60, 0 ) -text = "Cancel" - -[connection signal="popup_hide" from="." to="." method="_on_CurveDialog_popup_hide"] -[connection signal="value_changed" from="VBoxContainer/EditorContainer/PolygonEditor" to="." method="_on_PolygonEditor_value_changed"] -[connection signal="pressed" from="VBoxContainer/HBoxContainer/OK" to="." method="_on_OK_pressed"] -[connection signal="pressed" from="VBoxContainer/HBoxContainer/Cancel" to="." method="_on_Cancel_pressed"] diff --git a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_edit.gd b/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_edit.gd deleted file mode 100644 index e8febfd..0000000 --- a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_edit.gd +++ /dev/null @@ -1,34 +0,0 @@ -tool -extends Control - -var MMPolygon = preload("res://addons/mat_maker_gd/nodes/bases/polygon_base.gd") - -export var closed : bool = true setget set_closed -var value = null setget set_value - -signal updated(polygon) - -func set_closed(c : bool = true): - closed = c - $PolygonView.set_closed(c) - -func set_value(v) -> void: - value = v - $PolygonView.set_polygon(value) - $PolygonView.update() - -func _on_PolygonEdit_pressed(): - var dialog = preload("res://addons/mat_maker_gd/widgets/polygon_edit/polygon_dialog.tscn").instance() - dialog.set_closed(closed) - add_child(dialog) - - dialog.connect("polygon_changed", self, "on_value_changed") - - dialog.edit_polygon(value) - - - -func on_value_changed(v) -> void: - #set_value(v) - emit_signal("updated", v) - $PolygonView.update() diff --git a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_edit.tscn b/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_edit.tscn deleted file mode 100644 index ccea5f9..0000000 --- a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_edit.tscn +++ /dev/null @@ -1,26 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://addons/mat_maker_gd/widgets/polygon_edit/polygon_edit.gd" type="Script" id=1] -[ext_resource path="res://addons/mat_maker_gd/widgets/polygon_edit/polygon_view.tscn" type="PackedScene" id=2] - -[node name="PolygonEdit" type="Button"] -anchor_left = 1.0 -anchor_right = 1.0 -anchor_bottom = 1.0 -margin_left = -1280.0 -margin_right = -1248.0 -margin_bottom = -688.0 -rect_min_size = Vector2( 32, 32 ) -focus_mode = 1 -script = ExtResource( 1 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="PolygonView" parent="." instance=ExtResource( 2 )] -anchor_right = 1.0 -anchor_bottom = 1.0 -margin_right = 0.0 -margin_bottom = 0.0 - -[connection signal="pressed" from="." to="." method="_on_PolygonEdit_pressed"] diff --git a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_editor.gd b/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_editor.gd deleted file mode 100644 index 90c9d01..0000000 --- a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_editor.gd +++ /dev/null @@ -1,57 +0,0 @@ -tool -extends "res://addons/mat_maker_gd/widgets/polygon_edit/polygon_view.gd" - -signal value_changed(value) - -func _ready(): - update_controls() - -func set_polygon(p) -> void: - polygon = p - update() - update_controls() - -func update_controls() -> void: - for c in get_children(): - c.queue_free() - - if !polygon: - return - - for i in polygon.points.size(): - var p = polygon.points[i] - var control_point = preload("res://addons/mat_maker_gd/widgets/polygon_edit/control_point.tscn").instance() - add_child(control_point) - control_point.initialize(p) - control_point.rect_position = transform_point(p)-control_point.OFFSET - control_point.connect("moved", self, "_on_ControlPoint_moved") - control_point.connect("removed", self, "_on_ControlPoint_removed") - - emit_signal("value_changed", polygon) - -func _on_ControlPoint_moved(index): - var control_point = get_child(index) - polygon.points[index] = reverse_transform_point(control_point.rect_position+control_point.OFFSET) - - update() - - emit_signal("value_changed", polygon) - -func _on_ControlPoint_removed(index): - if polygon.remove_point(index): - update() - update_controls() - -func _on_PolygonEditor_gui_input(event): - if !polygon: - return - - if event is InputEventMouseButton: - if event.button_index == BUTTON_LEFT and event.doubleclick: - var new_point_position = reverse_transform_point(get_local_mouse_position()) - polygon.add_point(new_point_position.x, new_point_position.y, closed) - update_controls() - -func _on_resize() -> void: - ._on_resize() - update_controls() diff --git a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_editor.tscn b/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_editor.tscn deleted file mode 100644 index 166b925..0000000 --- a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_editor.tscn +++ /dev/null @@ -1,14 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://addons/mat_maker_gd/widgets/curve_edit/curve_view.tscn" type="PackedScene" id=1] -[ext_resource path="res://addons/mat_maker_gd/widgets/polygon_edit/polygon_editor.gd" type="Script" id=2] - -[node name="PolygonEditor" instance=ExtResource( 1 )] -margin_left = 10.0 -margin_top = 10.0 -margin_right = -10.0 -margin_bottom = -10.0 -mouse_filter = 0 -script = ExtResource( 2 ) - -[connection signal="gui_input" from="." to="." method="_on_PolygonEditor_gui_input"] diff --git a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_view.gd b/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_view.gd deleted file mode 100644 index cf64af9..0000000 --- a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_view.gd +++ /dev/null @@ -1,58 +0,0 @@ -tool -extends Control - -var MMPolygon = preload("res://addons/mat_maker_gd/nodes/bases/polygon_base.gd") - -#: MMPolygon -var polygon - -var draw_size : Vector2 = Vector2(1, 1) -var draw_offset : Vector2 = Vector2(0, 0) -var closed : bool = true - -func set_closed(c : bool = true): - closed = c - update() - -func _ready() -> void: -# polygon = MMPolygon.new() - connect("resized", self, "_on_resize") - _on_resize() - -func transform_point(p : Vector2) -> Vector2: - return draw_offset+p*draw_size - -func reverse_transform_point(p : Vector2) -> Vector2: - return (p-draw_offset)/draw_size - -func set_polygon(val): - polygon = val - - update() - -func _draw(): - if !polygon: - return - -# var current_theme : Theme = get_node("/root/MainWindow").theme -# var bg = current_theme.get_stylebox("panel", "Panel").bg_color -# var fg = current_theme.get_color("font_color", "Label") -# var axes_color : Color = bg.linear_interpolate(fg, 0.25) -# var curve_color : Color = bg.linear_interpolate(fg, 0.75) - - var axes_color : Color = Color(0.9, 0.9, 0.9, 1) - var curve_color : Color = Color(1, 1, 1, 1) - - draw_rect(Rect2(draw_offset, draw_size), axes_color, false) - var tp : Vector2 = transform_point(polygon.points[polygon.points.size()-1 if closed else 0]) - - for p in polygon.points: - var tnp = transform_point(p) - draw_line(tp, tnp, curve_color) - tp = tnp - -func _on_resize() -> void: - var ds : float = min(rect_size.x, rect_size.y) - draw_size = Vector2(ds, ds) - draw_offset = 0.5*(rect_size-draw_size) - update() diff --git a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_view.tscn b/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_view.tscn deleted file mode 100644 index 0b9f2ee..0000000 --- a/game/addons/mat_maker_gd/widgets/polygon_edit/polygon_view.tscn +++ /dev/null @@ -1,12 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/widgets/polygon_edit/polygon_view.gd" type="Script" id=1] - -[node name="PolygonView" type="Control"] -margin_right = 64.0 -margin_bottom = 64.0 -mouse_filter = 2 -script = ExtResource( 1 ) -__meta__ = { -"_edit_use_anchors_": false -} diff --git a/game/addons/mat_maker_gd/windows/file_dialog/fav_button.tscn b/game/addons/mat_maker_gd/windows/file_dialog/fav_button.tscn deleted file mode 100644 index 95d056c..0000000 --- a/game/addons/mat_maker_gd/windows/file_dialog/fav_button.tscn +++ /dev/null @@ -1,17 +0,0 @@ -[gd_scene load_steps=3 format=2] - -[ext_resource path="res://addons/mat_maker_gd/icons/icons.svg" type="Texture" id=1] - -[sub_resource type="AtlasTexture" id=1] -flags = 4 -atlas = ExtResource( 1 ) -region = Rect2( 80, 80, 16, 16 ) - -[node name="FavButton" type="Button"] -margin_right = 12.0 -margin_bottom = 20.0 -icon = SubResource( 1 ) -flat = true -__meta__ = { -"_edit_use_anchors_": false -} diff --git a/game/addons/mat_maker_gd/windows/file_dialog/file_dialog.gd b/game/addons/mat_maker_gd/windows/file_dialog/file_dialog.gd deleted file mode 100644 index f384b95..0000000 --- a/game/addons/mat_maker_gd/windows/file_dialog/file_dialog.gd +++ /dev/null @@ -1,57 +0,0 @@ -tool -extends FileDialog - - -var left_panel = null -var volume_option = null - - -signal return_paths(path_list) - -func _ready() -> void: - var vbox = get_child(3) - var hbox = HSplitContainer.new() - add_child(hbox) - remove_child(vbox) - left_panel = preload("res://addons/mat_maker_gd/windows/file_dialog/left_panel.tscn").instance() - hbox.add_child(left_panel) - left_panel.connect("open_directory", self, "set_current_dir") - hbox.add_child(vbox) - vbox.size_flags_horizontal = SIZE_EXPAND_FILL - var fav_button = preload("res://addons/mat_maker_gd/windows/file_dialog/fav_button.tscn").instance() - vbox.get_child(0).add_child(fav_button) - fav_button.connect("pressed", self, "add_favorite") - if OS.get_name() == "Windows": - volume_option = vbox.get_child(0).get_child(3) - if ! volume_option is OptionButton: - volume_option = null - - -func get_full_current_dir() -> String: - var prefix = "" - if volume_option != null and volume_option.visible: - prefix = volume_option.get_item_text(volume_option.selected) - return prefix+get_current_dir() - -func _on_FileDialog_file_selected(path) -> void: - left_panel.add_recent(get_full_current_dir()) - emit_signal("return_paths", [ path ]) - -func _on_FileDialog_files_selected(paths) -> void: - left_panel.add_recent(get_full_current_dir()) - emit_signal("return_paths", paths) - -func _on_FileDialog_dir_selected(dir) -> void: - emit_signal("return_paths", [ dir ]) - -func _on_FileDialog_popup_hide() -> void: - emit_signal("return_paths", [ ]) - -func select_files() -> Array: - popup_centered() - var result = yield(self, "return_paths") - queue_free() - return result - -func add_favorite(): - left_panel.add_favorite(get_full_current_dir()) diff --git a/game/addons/mat_maker_gd/windows/file_dialog/file_dialog.tscn b/game/addons/mat_maker_gd/windows/file_dialog/file_dialog.tscn deleted file mode 100644 index ec783c4..0000000 --- a/game/addons/mat_maker_gd/windows/file_dialog/file_dialog.tscn +++ /dev/null @@ -1,16 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/windows/file_dialog/file_dialog.gd" type="Script" id=1] - -[node name="FileDialog" type="FileDialog"] -margin_right = 360.0 -margin_bottom = 130.0 -window_title = "Enregistrer un fichier" -resizable = true -show_hidden_files = true -script = ExtResource( 1 ) - -[connection signal="dir_selected" from="." to="." method="_on_FileDialog_dir_selected"] -[connection signal="file_selected" from="." to="." method="_on_FileDialog_file_selected"] -[connection signal="files_selected" from="." to="." method="_on_FileDialog_files_selected"] -[connection signal="popup_hide" from="." to="." method="_on_FileDialog_popup_hide"] diff --git a/game/addons/mat_maker_gd/windows/file_dialog/left_panel.gd b/game/addons/mat_maker_gd/windows/file_dialog/left_panel.gd deleted file mode 100644 index 5673e70..0000000 --- a/game/addons/mat_maker_gd/windows/file_dialog/left_panel.gd +++ /dev/null @@ -1,71 +0,0 @@ -tool -extends VBoxContainer - -var recents : Array = [] -var favorites : Array = [] - -signal open_directory(dirpath) - -#func _ready(): -# if get_node("/root/MainWindow") != null: -# var config_cache = get_node("/root/MainWindow").config_cache -# if config_cache.has_section_key("file_dialog", "recents"): -# var parse_result = JSON.parse(config_cache.get_value("file_dialog", "recents")) -# if parse_result != null: -# recents = parse_result.result -# if config_cache.has_section_key("file_dialog", "favorites"): -# var parse_result = JSON.parse(config_cache.get_value("file_dialog", "favorites")) -# if parse_result != null: -# favorites = parse_result.result -# update_lists() - -#func _exit_tree(): -# if get_node("/root/MainWindow") != null: -# var config_cache = get_node("/root/MainWindow").config_cache -# config_cache.set_value("file_dialog", "recents", JSON.print(recents)) -# config_cache.set_value("file_dialog", "favorites", JSON.print(favorites)) - -func add_recent(file_path : String): - if recents.find(file_path) != -1: - recents.erase(file_path) - recents.push_front(file_path) - update_lists() - -func add_favorite(file_path : String): - if favorites.find(file_path) == -1: - favorites.push_back(file_path) - update_lists() - -func my_basename(s : String) -> String: - var slash_pos : int = s.find_last("/") - if slash_pos == -1 or slash_pos+1 == s.length(): - return s - return s.right(slash_pos+1) - -func update_lists(): - $FavList.clear() - for d in favorites: - $FavList.add_item(my_basename(d)) - $FavList.set_item_tooltip($FavList.get_item_count()-1, d) - $RecentList.clear() - for d in recents: - $RecentList.add_item(my_basename(d)) - $RecentList.set_item_tooltip($RecentList.get_item_count()-1, d) - -func _on_FavList_item_activated(index): - emit_signal("open_directory", $FavList.get_item_tooltip(index)) - -func _on_RecentList_item_activated(index): - emit_signal("open_directory", $RecentList.get_item_tooltip(index)) - -func _on_FavList_gui_input(event): - if event is InputEventKey and event.pressed and event.scancode == KEY_DELETE: - if ! $FavList.get_selected_items().empty(): - favorites.remove($FavList.get_selected_items()[0]) - update_lists() - -func _on_RecentList_gui_input(event): - if event is InputEventKey and event.pressed and event.scancode == KEY_DELETE: - if ! $RecentList.get_selected_items().empty(): - recents.remove($RecentList.get_selected_items()[0]) - update_lists() diff --git a/game/addons/mat_maker_gd/windows/file_dialog/left_panel.tscn b/game/addons/mat_maker_gd/windows/file_dialog/left_panel.tscn deleted file mode 100644 index a5ad9b0..0000000 --- a/game/addons/mat_maker_gd/windows/file_dialog/left_panel.tscn +++ /dev/null @@ -1,48 +0,0 @@ -[gd_scene load_steps=2 format=2] - -[ext_resource path="res://addons/mat_maker_gd/windows/file_dialog/left_panel.gd" type="Script" id=1] - -[node name="LeftPanel" type="VBoxContainer"] -margin_right = 40.0 -margin_bottom = 40.0 -size_flags_vertical = 3 -script = ExtResource( 1 ) -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="RecentLabel" type="Label" parent="."] -margin_right = 100.0 -margin_bottom = 14.0 -text = "Recent" - -[node name="RecentList" type="ItemList" parent="."] -margin_top = 18.0 -margin_right = 100.0 -margin_bottom = 18.0 -rect_min_size = Vector2( 100, 0 ) -size_flags_vertical = 3 -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="FavLabel" type="Label" parent="."] -margin_top = 22.0 -margin_right = 100.0 -margin_bottom = 36.0 -text = "Favorite" - -[node name="FavList" type="ItemList" parent="."] -margin_top = 40.0 -margin_right = 100.0 -margin_bottom = 40.0 -rect_min_size = Vector2( 100, 0 ) -size_flags_vertical = 3 -__meta__ = { -"_edit_use_anchors_": false -} - -[connection signal="gui_input" from="RecentList" to="." method="_on_RecentList_gui_input"] -[connection signal="item_activated" from="RecentList" to="." method="_on_RecentList_item_activated"] -[connection signal="gui_input" from="FavList" to="." method="_on_FavList_gui_input"] -[connection signal="item_activated" from="FavList" to="." method="_on_FavList_item_activated"]