diff --git a/README.md b/README.md
index 68195c874354..a716a0694527 100644
--- a/README.md
+++ b/README.md
@@ -990,6 +990,7 @@ Here is a list of template creators:
* Groovy: @victorgit
* Go: @wing328 [:heart:](https://www.patreon.com/wing328)
* Go (rewritten in 2.3.0): @antihax
+ * Godot (GDScript): @Goutte [:heart:](https://liberapay.com/Goutte)
* Haskell (http-client): @jonschoning
* Java (Feign): @davidkiss
* Java (Retrofit): @0legg
diff --git a/bin/configs/gdscript-petstore.yaml b/bin/configs/gdscript-petstore.yaml
new file mode 100644
index 000000000000..60bb555a3d09
--- /dev/null
+++ b/bin/configs/gdscript-petstore.yaml
@@ -0,0 +1,35 @@
+# Run this configuration to update the sample project used in integration testing:
+# bin/generate-samples.sh bin/configs/gdscript-petstore.yaml
+
+generatorName: gdscript
+
+# We output straight into an addon directory. (any addon name will work)
+# The addon need not be enabled in Project Settings to be used, for now,
+# but that may change, so as best practice you should enable it anyway.
+outputDir: samples/client/petstore/gdscript/addons/oas.petstore.client
+
+# We have two test servers available.
+# See https://github.com/OpenAPITools/openapi-generator/wiki/Integration-Tests
+
+# A: Newer, recommended echo server OAS, that we're failing for now:
+# Exception: Could not process model 'Bird'. Please make sure that your schema is correct!
+# Caused by: java.lang.RuntimeException: reserved word color not allowed
+# Perhaps try this again later, using another config file like gdscript-echo.yaml
+# > Later: this has been solved, we should now be able to use echo as well
+#inputSpec: modules/openapi-generator/src/test/resources/3_0/echo_api.yaml
+
+# B: Older (legacy, deprecated) petstore server OAS
+inputSpec: modules/openapi-generator/src/test/resources/3_0/gdscript/petstore.yaml
+
+templateDir: modules/openapi-generator/src/main/resources/gdscript
+
+additionalProperties:
+ # Timestamping the generated sample project would only add noise to git
+ hideGenerationTimestamp: "true"
+ # Since we're polluting the global namespace with class_name (it's really convenient),
+ # we can use these affixes to namespace the generated classes.
+ # Best make sure the words you use here are not part of the domain of Godot.
+ apiNamePrefix: Demo
+ modelNamePrefix: Demo
+ modelNameSuffix: Model
+ coreNamePrefix: Demo
\ No newline at end of file
diff --git a/docs/generators/gdscript.md b/docs/generators/gdscript.md
new file mode 100644
index 000000000000..d5a70846ab0b
--- /dev/null
+++ b/docs/generators/gdscript.md
@@ -0,0 +1,1704 @@
+---
+title: Documentation for the gdscript Generator
+---
+
+## METADATA
+
+| Property | Value | Notes |
+| -------- | ----- | ----- |
+| generator name | gdscript | pass this to the generate command after -g |
+| generator stability | STABLE | |
+| generator type | CLIENT | |
+| generator language | Java | |
+| generator default templating engine | handlebars | |
+| helpTxt | Generates a GDScript client (Godot 4+). | |
+
+## CONFIG OPTIONS
+These options may be applied as additional-properties (cli) or configOptions (plugins). Refer to [configuration docs](https://openapi-generator.tech/docs/configuration) for more details.
+
+| Option | Description | Values | Default |
+| ------ | ----------- | ------ | ------- |
+|allowUnicodeIdentifiers|boolean, toggles whether unicode identifiers are allowed in names or not, default is false| |false|
+|anticollisionPrefix|Prefix added at the beginning of reserved words| |some_|
+|anticollisionSuffix|Suffix added at the ending of reserved words| ||
+|coreNamePrefix|PascalCase prefix added to all core classes| ||
+|coreNameSuffix|PascalCase suffix added to all core classes| ||
+|disallowAdditionalPropertiesIfNotPresent|If false, the 'additionalProperties' implementation (set to true by default) is compliant with the OAS and JSON schema specifications. If true (default), keep the old (incorrect) behaviour that 'additionalProperties' is set to false by default.|
- **false**
- The 'additionalProperties' implementation is compliant with the OAS and JSON schema specifications.
- **true**
- Keep the old (incorrect) behaviour that 'additionalProperties' is set to false by default.
|true|
+|ensureUniqueParams|Whether to ensure parameter names are unique in an operation (rename parameters that are not).| |true|
+|enumUnknownDefaultCase|If the server adds new enum cases, that are unknown by an old spec/client, the client will fail to parse the network response.With this option enabled, each enum will have a new case, 'unknown_default_open_api', so that when the server sends an enum case that is not known by the client/spec, they can safely fallback to this case.|- **false**
- No changes to the enum's are made, this is the default option.
- **true**
- With this option enabled, each enum will have a new case, 'unknown_default_open_api', so that when the enum case sent by the server is not known by the client/spec, can safely be decoded to this case.
|false|
+|legacyDiscriminatorBehavior|Set to false for generators with better support for discriminators. (Python, Java, Go, PowerShell, C# have this enabled by default).|- **true**
- The mapping in the discriminator includes descendent schemas that allOf inherit from self and the discriminator mapping schemas in the OAS document.
- **false**
- The mapping in the discriminator includes any descendent schemas that allOf inherit from self, any oneOf schemas, any anyOf schemas, any x-discriminator-values, and the discriminator mapping schemas in the OAS document AND Codegen validates that oneOf and anyOf schemas contain the required discriminator and throws an error if the discriminator is missing.
|true|
+|prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false|
+|sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |true|
+|sortParamsByRequiredFlag|Sort method arguments to place required parameters before optional parameters.| |true|
+
+## IMPORT MAPPING
+
+| Type/Alias | Imports |
+| ---------- | ------- |
+
+
+## INSTANTIATION TYPES
+
+| Type/Alias | Instantiated By |
+| ---------- | --------------- |
+
+
+## LANGUAGE PRIMITIVES
+
+
+
+## RESERVED WORDS
+
+
+- _bzz_client
+- _bzz_config
+- _bzz_connect_client_if_needed
+- _bzz_convert_http_method
+- _bzz_do_request_text
+- _bzz_escape_path_param
+- _bzz_format_error_response
+- _bzz_get_content_type
+- _bzz_name
+- _bzz_next_loop_iteration
+- _bzz_request
+- _bzz_request_text
+- _bzz_urlize_path_param
+- aabb
+- abs
+- absf
+- absi
+- acceptdialog
+- acos
+- aescontext
+- and
+- animatablebody2d
+- animatablebody3d
+- animatedsprite2d
+- animatedsprite3d
+- animatedtexture
+- animation
+- animationlibrary
+- animationnode
+- animationnodeadd2
+- animationnodeadd3
+- animationnodeanimation
+- animationnodeblend2
+- animationnodeblend3
+- animationnodeblendspace1d
+- animationnodeblendspace2d
+- animationnodeblendtree
+- animationnodeoneshot
+- animationnodeoutput
+- animationnodestatemachine
+- animationnodestatemachineplayback
+- animationnodestatemachinetransition
+- animationnodesync
+- animationnodetimescale
+- animationnodetimeseek
+- animationnodetransition
+- animationplayer
+- animationrootnode
+- animationtrackeditplugin
+- animationtree
+- area2d
+- area3d
+- arraymesh
+- arrayoccluder3d
+- as
+- asin
+- aspectratiocontainer
+- assert
+- astar2d
+- astar3d
+- astargrid2d
+- atan
+- atan2
+- atlastexture
+- audiobuslayout
+- audioeffect
+- audioeffectamplify
+- audioeffectbandlimitfilter
+- audioeffectbandpassfilter
+- audioeffectcapture
+- audioeffectchorus
+- audioeffectcompressor
+- audioeffectdelay
+- audioeffectdistortion
+- audioeffecteq
+- audioeffecteq10
+- audioeffecteq21
+- audioeffecteq6
+- audioeffectfilter
+- audioeffecthighpassfilter
+- audioeffecthighshelffilter
+- audioeffectinstance
+- audioeffectlimiter
+- audioeffectlowpassfilter
+- audioeffectlowshelffilter
+- audioeffectnotchfilter
+- audioeffectpanner
+- audioeffectphaser
+- audioeffectpitchshift
+- audioeffectrecord
+- audioeffectreverb
+- audioeffectspectrumanalyzer
+- audioeffectspectrumanalyzerinstance
+- audioeffectstereoenhance
+- audiolistener2d
+- audiolistener3d
+- audioserver
+- audiostream
+- audiostreamgenerator
+- audiostreamgeneratorplayback
+- audiostreammicrophone
+- audiostreamplayback
+- audiostreamplaybackresampled
+- audiostreamplayer
+- audiostreamplayer2d
+- audiostreamplayer3d
+- audiostreamrandomizer
+- audiostreamwav
+- await
+- backbuffercopy
+- basebutton
+- basematerial3d
+- basis
+- bezier_interpolate
+- bitmap
+- bone2d
+- boneattachment3d
+- bonemap
+- bool
+- boxcontainer
+- boxmesh
+- boxoccluder3d
+- boxshape3d
+- break
+- breakpoint
+- button
+- buttongroup
+- bytes_to_var
+- bytes_to_var_with_objects
+- bzz_code
+- bzz_error
+- bzz_headers
+- bzz_method
+- bzz_path
+- bzz_query
+- bzz_result
+- callable
+- callbacktweener
+- camera2d
+- camera3d
+- cameraattributes
+- cameraattributesphysical
+- cameraattributespractical
+- camerafeed
+- cameraserver
+- cameratexture
+- canvasgroup
+- canvasitem
+- canvasitemmaterial
+- canvaslayer
+- canvasmodulate
+- canvastexture
+- capsulemesh
+- capsuleshape2d
+- capsuleshape3d
+- ceil
+- ceilf
+- ceili
+- centercontainer
+- characterbody2d
+- characterbody3d
+- charfxtransform
+- checkbox
+- checkbutton
+- circleshape2d
+- clamp
+- clampf
+- clampi
+- class
+- class_name
+- classdb
+- clockwise
+- codeedit
+- codehighlighter
+- collisionobject2d
+- collisionobject3d
+- collisionpolygon2d
+- collisionpolygon3d
+- collisionshape2d
+- collisionshape3d
+- color
+- colorpicker
+- colorpickerbutton
+- colorrect
+- compressedcubemap
+- compressedcubemaparray
+- compressedtexture2d
+- compressedtexture2darray
+- compressedtexture3d
+- compressedtexturelayered
+- concavepolygonshape2d
+- concavepolygonshape3d
+- conetwistjoint3d
+- configfile
+- confirmationdialog
+- const
+- container
+- continue
+- control
+- convexpolygonshape2d
+- convexpolygonshape3d
+- corner_bottom_left
+- corner_bottom_right
+- corner_top_left
+- corner_top_right
+- cos
+- cosh
+- counterclockwise
+- cpuparticles2d
+- cpuparticles3d
+- crypto
+- cryptokey
+- cubemap
+- cubemaparray
+- cubic_interpolate
+- cubic_interpolate_angle
+- cubic_interpolate_angle_in_time
+- cubic_interpolate_in_time
+- curve
+- curve2d
+- curve3d
+- curvetexture
+- curvexyztexture
+- cylindermesh
+- cylindershape3d
+- dampedspringjoint2d
+- db_to_linear
+- decal
+- deg_to_rad
+- dictionary
+- diraccess
+- directionallight2d
+- directionallight3d
+- displayserver
+- dtlsserver
+- ease
+- editorcommandpalette
+- editordebuggerplugin
+- editorexportplatform
+- editorexportplugin
+- editorfeatureprofile
+- editorfiledialog
+- editorfilesystem
+- editorfilesystemdirectory
+- editorfilesystemimportformatsupportquery
+- editorimportplugin
+- editorinspector
+- editorinspectorplugin
+- editorinterface
+- editornode3dgizmo
+- editornode3dgizmoplugin
+- editorpaths
+- editorplugin
+- editorproperty
+- editorresourceconversionplugin
+- editorresourcepicker
+- editorresourcepreview
+- editorresourcepreviewgenerator
+- editorsceneformatimporter
+- editorscenepostimport
+- editorscenepostimportplugin
+- editorscript
+- editorscriptpicker
+- editorselection
+- editorsettings
+- editorspinslider
+- editorsyntaxhighlighter
+- editortranslationparserplugin
+- editorundoredomanager
+- editorvcsinterface
+- elif
+- else
+- encodedobjectasid
+- engine
+- enginedebugger
+- engineprofiler
+- enum
+- environment
+- err_already_exists
+- err_already_in_use
+- err_bug
+- err_busy
+- err_cant_acquire_resource
+- err_cant_connect
+- err_cant_create
+- err_cant_fork
+- err_cant_open
+- err_cant_resolve
+- err_compilation_failed
+- err_connection_error
+- err_cyclic_link
+- err_database_cant_read
+- err_database_cant_write
+- err_does_not_exist
+- err_duplicate_symbol
+- err_file_already_in_use
+- err_file_bad_drive
+- err_file_bad_path
+- err_file_cant_open
+- err_file_cant_read
+- err_file_cant_write
+- err_file_corrupt
+- err_file_eof
+- err_file_missing_dependencies
+- err_file_no_permission
+- err_file_not_found
+- err_file_unrecognized
+- err_help
+- err_invalid_data
+- err_invalid_declaration
+- err_invalid_parameter
+- err_link_failed
+- err_locked
+- err_method_not_found
+- err_out_of_memory
+- err_parameter_range_error
+- err_parse_error
+- err_printer_on_fire
+- err_query_failed
+- err_script_failed
+- err_skip
+- err_timeout
+- err_unauthorized
+- err_unavailable
+- err_unconfigured
+- error_string
+- exp
+- expression
+- extends
+- failed
+- fileaccess
+- filedialog
+- filesystemdock
+- float
+- floor
+- floorf
+- floori
+- flowcontainer
+- fmod
+- fogmaterial
+- fogvolume
+- font
+- fontfile
+- fontvariation
+- for
+- fposmod
+- func
+- generic6dofjoint3d
+- geometry2d
+- geometry3d
+- geometryinstance3d
+- godotsharp
+- gpuparticles2d
+- gpuparticles3d
+- gpuparticlesattractor3d
+- gpuparticlesattractorbox3d
+- gpuparticlesattractorsphere3d
+- gpuparticlesattractorvectorfield3d
+- gpuparticlescollision3d
+- gpuparticlescollisionbox3d
+- gpuparticlescollisionheightfield3d
+- gpuparticlescollisionsdf3d
+- gpuparticlescollisionsphere3d
+- gradient
+- gradienttexture1d
+- gradienttexture2d
+- graphedit
+- graphnode
+- gridcontainer
+- groovejoint2d
+- hash
+- hashingcontext
+- hboxcontainer
+- heightmapshape3d
+- hflowcontainer
+- hingejoint3d
+- hmaccontext
+- horizontal
+- horizontal_alignment_center
+- horizontal_alignment_fill
+- horizontal_alignment_left
+- horizontal_alignment_right
+- hscrollbar
+- hseparator
+- hslider
+- hsplitcontainer
+- httpclient
+- httprequest
+- if
+- image
+- imageformatloader
+- imageformatloaderextension
+- imagetexture
+- imagetexture3d
+- imagetexturelayered
+- immediatemesh
+- importermesh
+- importermeshinstance3d
+- in
+- inf
+- inline_alignment_bottom
+- inline_alignment_bottom_to
+- inline_alignment_center
+- inline_alignment_center_to
+- inline_alignment_image_mask
+- inline_alignment_text_mask
+- inline_alignment_to_baseline
+- inline_alignment_to_bottom
+- inline_alignment_to_center
+- inline_alignment_to_top
+- inline_alignment_top
+- inline_alignment_top_to
+- input
+- inputevent
+- inputeventaction
+- inputeventfromwindow
+- inputeventgesture
+- inputeventjoypadbutton
+- inputeventjoypadmotion
+- inputeventkey
+- inputeventmagnifygesture
+- inputeventmidi
+- inputeventmouse
+- inputeventmousebutton
+- inputeventmousemotion
+- inputeventpangesture
+- inputeventscreendrag
+- inputeventscreentouch
+- inputeventshortcut
+- inputeventwithmodifiers
+- inputmap
+- instance_from_id
+- instanceplaceholder
+- int
+- intervaltweener
+- inverse_lerp
+- ip
+- is
+- is_equal_approx
+- is_finite
+- is_inf
+- is_instance_id_valid
+- is_instance_valid
+- is_nan
+- is_zero_approx
+- itemlist
+- javaclass
+- javaclasswrapper
+- javascriptbridge
+- javascriptobject
+- jnisingleton
+- joint2d
+- joint3d
+- joy_axis_invalid
+- joy_axis_left_x
+- joy_axis_left_y
+- joy_axis_max
+- joy_axis_right_x
+- joy_axis_right_y
+- joy_axis_sdl_max
+- joy_axis_trigger_left
+- joy_axis_trigger_right
+- joy_button_a
+- joy_button_b
+- joy_button_back
+- joy_button_dpad_down
+- joy_button_dpad_left
+- joy_button_dpad_right
+- joy_button_dpad_up
+- joy_button_guide
+- joy_button_invalid
+- joy_button_left_shoulder
+- joy_button_left_stick
+- joy_button_max
+- joy_button_misc1
+- joy_button_paddle1
+- joy_button_paddle2
+- joy_button_paddle3
+- joy_button_paddle4
+- joy_button_right_shoulder
+- joy_button_right_stick
+- joy_button_sdl_max
+- joy_button_start
+- joy_button_touchpad
+- joy_button_x
+- joy_button_y
+- json
+- jsonrpc
+- key_0
+- key_1
+- key_2
+- key_3
+- key_4
+- key_5
+- key_6
+- key_7
+- key_8
+- key_9
+- key_a
+- key_aacute
+- key_acircumflex
+- key_acute
+- key_adiaeresis
+- key_ae
+- key_agrave
+- key_alt
+- key_ampersand
+- key_apostrophe
+- key_aring
+- key_asciicircum
+- key_asciitilde
+- key_asterisk
+- key_at
+- key_atilde
+- key_b
+- key_back
+- key_backslash
+- key_backspace
+- key_backtab
+- key_bar
+- key_bassboost
+- key_bassdown
+- key_bassup
+- key_braceleft
+- key_braceright
+- key_bracketleft
+- key_bracketright
+- key_brokenbar
+- key_c
+- key_capslock
+- key_ccedilla
+- key_cedilla
+- key_cent
+- key_clear
+- key_code_mask
+- key_colon
+- key_comma
+- key_copyright
+- key_ctrl
+- key_currency
+- key_d
+- key_degree
+- key_delete
+- key_diaeresis
+- key_direction_l
+- key_direction_r
+- key_division
+- key_dollar
+- key_down
+- key_e
+- key_eacute
+- key_ecircumflex
+- key_ediaeresis
+- key_egrave
+- key_end
+- key_enter
+- key_equal
+- key_escape
+- key_eth
+- key_exclam
+- key_exclamdown
+- key_f
+- key_f1
+- key_f10
+- key_f11
+- key_f12
+- key_f13
+- key_f14
+- key_f15
+- key_f16
+- key_f17
+- key_f18
+- key_f19
+- key_f2
+- key_f20
+- key_f21
+- key_f22
+- key_f23
+- key_f24
+- key_f25
+- key_f26
+- key_f27
+- key_f28
+- key_f29
+- key_f3
+- key_f30
+- key_f31
+- key_f32
+- key_f33
+- key_f34
+- key_f35
+- key_f4
+- key_f5
+- key_f6
+- key_f7
+- key_f8
+- key_f9
+- key_favorites
+- key_forward
+- key_g
+- key_greater
+- key_guillemotleft
+- key_guillemotright
+- key_h
+- key_help
+- key_home
+- key_homepage
+- key_hyper_l
+- key_hyper_r
+- key_hyphen
+- key_i
+- key_iacute
+- key_icircumflex
+- key_idiaeresis
+- key_igrave
+- key_insert
+- key_j
+- key_k
+- key_kp_0
+- key_kp_1
+- key_kp_2
+- key_kp_3
+- key_kp_4
+- key_kp_5
+- key_kp_6
+- key_kp_7
+- key_kp_8
+- key_kp_9
+- key_kp_add
+- key_kp_divide
+- key_kp_enter
+- key_kp_multiply
+- key_kp_period
+- key_kp_subtract
+- key_l
+- key_launch0
+- key_launch1
+- key_launch2
+- key_launch3
+- key_launch4
+- key_launch5
+- key_launch6
+- key_launch7
+- key_launch8
+- key_launch9
+- key_launcha
+- key_launchb
+- key_launchc
+- key_launchd
+- key_launche
+- key_launchf
+- key_launchmail
+- key_launchmedia
+- key_left
+- key_less
+- key_m
+- key_macron
+- key_masculine
+- key_mask_alt
+- key_mask_cmd_or_ctrl
+- key_mask_ctrl
+- key_mask_group_switch
+- key_mask_kpad
+- key_mask_meta
+- key_mask_shift
+- key_medianext
+- key_mediaplay
+- key_mediaprevious
+- key_mediarecord
+- key_mediastop
+- key_menu
+- key_meta
+- key_minus
+- key_modifier_mask
+- key_mu
+- key_multiply
+- key_n
+- key_nobreakspace
+- key_none
+- key_notsign
+- key_ntilde
+- key_numbersign
+- key_numlock
+- key_o
+- key_oacute
+- key_ocircumflex
+- key_odiaeresis
+- key_ograve
+- key_onehalf
+- key_onequarter
+- key_onesuperior
+- key_ooblique
+- key_openurl
+- key_ordfeminine
+- key_otilde
+- key_p
+- key_pagedown
+- key_pageup
+- key_paragraph
+- key_parenleft
+- key_parenright
+- key_pause
+- key_percent
+- key_period
+- key_periodcentered
+- key_plus
+- key_plusminus
+- key_print
+- key_q
+- key_question
+- key_questiondown
+- key_quotedbl
+- key_quoteleft
+- key_r
+- key_refresh
+- key_registered
+- key_right
+- key_s
+- key_scrolllock
+- key_search
+- key_section
+- key_semicolon
+- key_shift
+- key_slash
+- key_space
+- key_special
+- key_ssharp
+- key_standby
+- key_sterling
+- key_stop
+- key_super_l
+- key_super_r
+- key_sysreq
+- key_t
+- key_tab
+- key_thorn
+- key_threequarters
+- key_threesuperior
+- key_trebledown
+- key_trebleup
+- key_twosuperior
+- key_u
+- key_uacute
+- key_ucircumflex
+- key_udiaeresis
+- key_ugrave
+- key_underscore
+- key_unknown
+- key_up
+- key_v
+- key_volumedown
+- key_volumemute
+- key_volumeup
+- key_w
+- key_x
+- key_y
+- key_yacute
+- key_ydiaeresis
+- key_yen
+- key_z
+- kinematiccollision2d
+- kinematiccollision3d
+- label
+- label3d
+- labelsettings
+- lerp
+- lerp_angle
+- lerpf
+- light2d
+- light3d
+- lightmapgi
+- lightmapgidata
+- lightmapper
+- lightmapperrd
+- lightmapprobe
+- lightoccluder2d
+- line2d
+- linear_to_db
+- lineedit
+- linkbutton
+- log
+- mainloop
+- margincontainer
+- marker2d
+- marker3d
+- marshalls
+- match
+- material
+- max
+- maxf
+- maxi
+- menubar
+- menubutton
+- mesh
+- meshdatatool
+- meshinstance2d
+- meshinstance3d
+- meshlibrary
+- meshtexture
+- method_flag_const
+- method_flag_editor
+- method_flag_normal
+- method_flag_object_core
+- method_flag_static
+- method_flag_vararg
+- method_flag_virtual
+- method_flags_default
+- methodtweener
+- midi_message_active_sensing
+- midi_message_aftertouch
+- midi_message_channel_pressure
+- midi_message_continue
+- midi_message_control_change
+- midi_message_none
+- midi_message_note_off
+- midi_message_note_on
+- midi_message_pitch_bend
+- midi_message_program_change
+- midi_message_quarter_frame
+- midi_message_song_position_pointer
+- midi_message_song_select
+- midi_message_start
+- midi_message_stop
+- midi_message_system_exclusive
+- midi_message_system_reset
+- midi_message_timing_clock
+- midi_message_tune_request
+- min
+- minf
+- mini
+- missingnode
+- missingresource
+- mouse_button_left
+- mouse_button_mask_left
+- mouse_button_mask_middle
+- mouse_button_mask_right
+- mouse_button_mask_xbutton1
+- mouse_button_mask_xbutton2
+- mouse_button_middle
+- mouse_button_none
+- mouse_button_right
+- mouse_button_wheel_down
+- mouse_button_wheel_left
+- mouse_button_wheel_right
+- mouse_button_wheel_up
+- mouse_button_xbutton1
+- mouse_button_xbutton2
+- move_toward
+- moviewriter
+- multimesh
+- multimeshinstance2d
+- multimeshinstance3d
+- multiplayerapi
+- multiplayerapiextension
+- multiplayerpeer
+- multiplayerpeerextension
+- mutex
+- namespace
+- nan
+- nativeextension
+- nativeextensionmanager
+- navigationagent2d
+- navigationagent3d
+- navigationlink2d
+- navigationlink3d
+- navigationmesh
+- navigationmeshgenerator
+- navigationobstacle2d
+- navigationobstacle3d
+- navigationpathqueryparameters2d
+- navigationpathqueryparameters3d
+- navigationpathqueryresult2d
+- navigationpathqueryresult3d
+- navigationpolygon
+- navigationregion2d
+- navigationregion3d
+- navigationserver2d
+- navigationserver3d
+- nearest_po2
+- ninepatchrect
+- node
+- node2d
+- node3d
+- node3dgizmo
+- nodepath
+- not
+- object
+- occluder3d
+- occluderinstance3d
+- occluderpolygon2d
+- ok
+- omnilight3d
+- on_failure
+- on_success
+- op_add
+- op_and
+- op_bit_and
+- op_bit_negate
+- op_bit_or
+- op_bit_xor
+- op_divide
+- op_equal
+- op_greater
+- op_greater_equal
+- op_in
+- op_less
+- op_less_equal
+- op_max
+- op_module
+- op_multiply
+- op_negate
+- op_not
+- op_not_equal
+- op_or
+- op_positive
+- op_power
+- op_shift_left
+- op_shift_right
+- op_subtract
+- op_xor
+- optimizedtranslation
+- optionbutton
+- or
+- ormmaterial3d
+- os
+- packedbytearray
+- packedcolorarray
+- packeddatacontainer
+- packeddatacontainerref
+- packedfloat32array
+- packedfloat64array
+- packedint32array
+- packedint64array
+- packedscene
+- packedstringarray
+- packedvector2array
+- packedvector3array
+- packetpeer
+- packetpeerdtls
+- packetpeerextension
+- packetpeerstream
+- packetpeerudp
+- panel
+- panelcontainer
+- panoramaskymaterial
+- parallaxbackground
+- parallaxlayer
+- particleprocessmaterial
+- pass
+- path2d
+- path3d
+- pathfollow2d
+- pathfollow3d
+- pckpacker
+- performance
+- physicalbone2d
+- physicalbone3d
+- physicalskymaterial
+- physicsbody2d
+- physicsbody3d
+- physicsdirectbodystate2d
+- physicsdirectbodystate2dextension
+- physicsdirectbodystate3d
+- physicsdirectbodystate3dextension
+- physicsdirectspacestate2d
+- physicsdirectspacestate2dextension
+- physicsdirectspacestate3d
+- physicsdirectspacestate3dextension
+- physicsmaterial
+- physicspointqueryparameters2d
+- physicspointqueryparameters3d
+- physicsrayqueryparameters2d
+- physicsrayqueryparameters3d
+- physicsserver2d
+- physicsserver2dextension
+- physicsserver2dmanager
+- physicsserver3d
+- physicsserver3dextension
+- physicsserver3dmanager
+- physicsserver3drenderingserverhandler
+- physicsshapequeryparameters2d
+- physicsshapequeryparameters3d
+- physicstestmotionparameters2d
+- physicstestmotionparameters3d
+- physicstestmotionresult2d
+- physicstestmotionresult3d
+- pi
+- pingpong
+- pinjoint2d
+- pinjoint3d
+- placeholdercubemap
+- placeholdercubemaparray
+- placeholdermaterial
+- placeholdermesh
+- placeholdertexture2d
+- placeholdertexture2darray
+- placeholdertexture3d
+- placeholdertexturelayered
+- plane
+- planemesh
+- pointlight2d
+- pointmesh
+- polygon2d
+- polygonoccluder3d
+- polygonpathfinder
+- popup
+- popupmenu
+- popuppanel
+- portablecompressedtexture2d
+- posmod
+- pow
+- preload
+- primitivemesh
+- print
+- print_rich
+- print_verbose
+- printerr
+- printraw
+- prints
+- printt
+- prismmesh
+- proceduralskymaterial
+- progressbar
+- projection
+- projectsettings
+- property_hint_array_type
+- property_hint_color_no_alpha
+- property_hint_dir
+- property_hint_enum
+- property_hint_enum_suggestion
+- property_hint_exp_easing
+- property_hint_expression
+- property_hint_file
+- property_hint_flags
+- property_hint_global_dir
+- property_hint_global_file
+- property_hint_global_save_file
+- property_hint_hide_quaternion_edit
+- property_hint_image_compress_lossless
+- property_hint_image_compress_lossy
+- property_hint_int_is_objectid
+- property_hint_int_is_pointer
+- property_hint_layers_2d_navigation
+- property_hint_layers_2d_physics
+- property_hint_layers_2d_render
+- property_hint_layers_3d_navigation
+- property_hint_layers_3d_physics
+- property_hint_layers_3d_render
+- property_hint_link
+- property_hint_locale_id
+- property_hint_localizable_string
+- property_hint_max
+- property_hint_method_of_base_type
+- property_hint_method_of_instance
+- property_hint_method_of_script
+- property_hint_method_of_variant_type
+- property_hint_multiline_text
+- property_hint_node_path_to_edited_node
+- property_hint_node_path_valid_types
+- property_hint_node_type
+- property_hint_none
+- property_hint_object_id
+- property_hint_object_too_big
+- property_hint_password
+- property_hint_placeholder_text
+- property_hint_property_of_base_type
+- property_hint_property_of_instance
+- property_hint_property_of_script
+- property_hint_property_of_variant_type
+- property_hint_range
+- property_hint_resource_type
+- property_hint_save_file
+- property_hint_type_string
+- property_usage_animate_as_trigger
+- property_usage_array
+- property_usage_category
+- property_usage_checkable
+- property_usage_checked
+- property_usage_class_is_bitfield
+- property_usage_class_is_enum
+- property_usage_default
+- property_usage_default_intl
+- property_usage_deferred_set_resource
+- property_usage_do_not_share_on_duplicate
+- property_usage_editor
+- property_usage_editor_basic_setting
+- property_usage_editor_instantiate_object
+- property_usage_group
+- property_usage_high_end_gfx
+- property_usage_internal
+- property_usage_internationalized
+- property_usage_keying_increments
+- property_usage_nil_is_variant
+- property_usage_no_editor
+- property_usage_no_instance_state
+- property_usage_node_path_from_scene_root
+- property_usage_none
+- property_usage_read_only
+- property_usage_resource_not_persistent
+- property_usage_restart_if_changed
+- property_usage_script_default_value
+- property_usage_script_variable
+- property_usage_storage
+- property_usage_store_if_null
+- property_usage_subgroup
+- property_usage_update_all_if_modified
+- propertytweener
+- push_error
+- push_warning
+- quadmesh
+- quadoccluder3d
+- quaternion
+- rad_to_deg
+- rand_from_seed
+- randf
+- randf_range
+- randfn
+- randi
+- randi_range
+- randomize
+- randomnumbergenerator
+- range
+- raycast2d
+- raycast3d
+- rdattachmentformat
+- rdframebufferpass
+- rdpipelinecolorblendstate
+- rdpipelinecolorblendstateattachment
+- rdpipelinedepthstencilstate
+- rdpipelinemultisamplestate
+- rdpipelinerasterizationstate
+- rdpipelinespecializationconstant
+- rdsamplerstate
+- rdshaderfile
+- rdshadersource
+- rdshaderspirv
+- rdtextureformat
+- rdtextureview
+- rduniform
+- rdvertexattribute
+- rect2
+- rect2i
+- rectangleshape2d
+- refcounted
+- referencerect
+- reflectionprobe
+- remap
+- remotetransform2d
+- remotetransform3d
+- renderingdevice
+- renderingserver
+- resource
+- resourceformatloader
+- resourceformatsaver
+- resourceimporter
+- resourceloader
+- resourcepreloader
+- resourcesaver
+- resourceuid
+- return
+- ribbontrailmesh
+- richtexteffect
+- richtextlabel
+- rid
+- rid_allocate_id
+- rid_from_int64
+- rigidbody2d
+- rigidbody3d
+- rootmotionview
+- round
+- roundf
+- roundi
+- scenestate
+- scenetree
+- scenetreetimer
+- script
+- scriptcreatedialog
+- scripteditor
+- scripteditorbase
+- scriptextension
+- scriptlanguage
+- scriptlanguageextension
+- scrollbar
+- scrollcontainer
+- seed
+- segmentshape2d
+- self
+- semaphore
+- separationrayshape2d
+- separationrayshape3d
+- separator
+- shader
+- shaderglobalsoverride
+- shaderinclude
+- shadermaterial
+- shape2d
+- shape3d
+- shapecast2d
+- shapecast3d
+- shortcut
+- side_bottom
+- side_left
+- side_right
+- side_top
+- sign
+- signal
+- signf
+- signi
+- sin
+- sinh
+- skeleton2d
+- skeleton3d
+- skeletonik3d
+- skeletonmodification2d
+- skeletonmodification2dccdik
+- skeletonmodification2dfabrik
+- skeletonmodification2djiggle
+- skeletonmodification2dlookat
+- skeletonmodification2dphysicalbones
+- skeletonmodification2dstackholder
+- skeletonmodification2dtwoboneik
+- skeletonmodification3d
+- skeletonmodification3dccdik
+- skeletonmodification3dfabrik
+- skeletonmodification3djiggle
+- skeletonmodification3dlookat
+- skeletonmodification3dstackholder
+- skeletonmodification3dtwoboneik
+- skeletonmodificationstack2d
+- skeletonmodificationstack3d
+- skeletonprofile
+- skeletonprofilehumanoid
+- skin
+- skinreference
+- sky
+- slider
+- sliderjoint3d
+- smoothstep
+- snapped
+- softbody3d
+- spheremesh
+- sphereoccluder3d
+- sphereshape3d
+- spinbox
+- splitcontainer
+- spotlight3d
+- springarm3d
+- sprite2d
+- sprite3d
+- spritebase3d
+- spriteframes
+- sqrt
+- standardmaterial3d
+- static
+- staticbody2d
+- staticbody3d
+- step_decimals
+- str
+- str_to_var
+- streampeer
+- streampeerbuffer
+- streampeerextension
+- streampeergzip
+- streampeertcp
+- streampeertls
+- string
+- stringname
+- stylebox
+- styleboxempty
+- styleboxflat
+- styleboxline
+- styleboxtexture
+- subviewport
+- subviewportcontainer
+- super
+- surfacetool
+- syntaxhighlighter
+- systemfont
+- tabbar
+- tabcontainer
+- tan
+- tanh
+- tau
+- tcpserver
+- textedit
+- textline
+- textmesh
+- textparagraph
+- textserver
+- textserverdummy
+- textserverextension
+- textservermanager
+- texture
+- texture2d
+- texture2darray
+- texture3d
+- texturebutton
+- texturelayered
+- textureprogressbar
+- texturerect
+- theme
+- themedb
+- thread
+- tiledata
+- tilemap
+- tilemappattern
+- tileset
+- tilesetatlassource
+- tilesetscenescollectionsource
+- tilesetsource
+- time
+- timer
+- torusmesh
+- touchscreenbutton
+- trait
+- transform2d
+- transform3d
+- translation
+- translationserver
+- tree
+- treeitem
+- trianglemesh
+- tubetrailmesh
+- tween
+- tweener
+- type_aabb
+- type_array
+- type_basis
+- type_bool
+- type_callable
+- type_color
+- type_dictionary
+- type_float
+- type_int
+- type_max
+- type_nil
+- type_node_path
+- type_object
+- type_packed_byte_array
+- type_packed_color_array
+- type_packed_float32_array
+- type_packed_float64_array
+- type_packed_int32_array
+- type_packed_int64_array
+- type_packed_string_array
+- type_packed_vector2_array
+- type_packed_vector3_array
+- type_plane
+- type_projection
+- type_quaternion
+- type_rect2
+- type_rect2i
+- type_rid
+- type_signal
+- type_string
+- type_string_name
+- type_transform2d
+- type_transform3d
+- type_vector2
+- type_vector2i
+- type_vector3
+- type_vector3i
+- type_vector4
+- type_vector4i
+- typeof
+- udpserver
+- undoredo
+- var
+- var_to_bytes
+- var_to_bytes_with_objects
+- var_to_str
+- variant
+- vboxcontainer
+- vector2
+- vector2i
+- vector3
+- vector3i
+- vector4
+- vector4i
+- vehiclebody3d
+- vehiclewheel3d
+- vertical
+- vertical_alignment_bottom
+- vertical_alignment_center
+- vertical_alignment_fill
+- vertical_alignment_top
+- vflowcontainer
+- videostream
+- videostreamplayer
+- viewport
+- viewporttexture
+- visibleonscreenenabler2d
+- visibleonscreenenabler3d
+- visibleonscreennotifier2d
+- visibleonscreennotifier3d
+- visualinstance3d
+- visualshader
+- visualshadernode
+- visualshadernodebillboard
+- visualshadernodebooleanconstant
+- visualshadernodebooleanparameter
+- visualshadernodeclamp
+- visualshadernodecolorconstant
+- visualshadernodecolorfunc
+- visualshadernodecolorop
+- visualshadernodecolorparameter
+- visualshadernodecomment
+- visualshadernodecompare
+- visualshadernodeconstant
+- visualshadernodecubemap
+- visualshadernodecubemapparameter
+- visualshadernodecurvetexture
+- visualshadernodecurvexyztexture
+- visualshadernodecustom
+- visualshadernodederivativefunc
+- visualshadernodedeterminant
+- visualshadernodedistancefade
+- visualshadernodedotproduct
+- visualshadernodeexpression
+- visualshadernodefaceforward
+- visualshadernodefloatconstant
+- visualshadernodefloatfunc
+- visualshadernodefloatop
+- visualshadernodefloatparameter
+- visualshadernodefresnel
+- visualshadernodeglobalexpression
+- visualshadernodegroupbase
+- visualshadernodeif
+- visualshadernodeinput
+- visualshadernodeintconstant
+- visualshadernodeintfunc
+- visualshadernodeintop
+- visualshadernodeintparameter
+- visualshadernodeis
+- visualshadernodelinearscenedepth
+- visualshadernodemix
+- visualshadernodemultiplyadd
+- visualshadernodeouterproduct
+- visualshadernodeoutput
+- visualshadernodeparameter
+- visualshadernodeparameterref
+- visualshadernodeparticleaccelerator
+- visualshadernodeparticleboxemitter
+- visualshadernodeparticleconevelocity
+- visualshadernodeparticleemit
+- visualshadernodeparticleemitter
+- visualshadernodeparticlemeshemitter
+- visualshadernodeparticlemultiplybyaxisangle
+- visualshadernodeparticleoutput
+- visualshadernodeparticlerandomness
+- visualshadernodeparticleringemitter
+- visualshadernodeparticlesphereemitter
+- visualshadernodeproximityfade
+- visualshadernoderandomrange
+- visualshadernoderemap
+- visualshadernoderesizablebase
+- visualshadernodesample3d
+- visualshadernodescreenuvtosdf
+- visualshadernodesdfraymarch
+- visualshadernodesdftoscreenuv
+- visualshadernodesmoothstep
+- visualshadernodestep
+- visualshadernodeswitch
+- visualshadernodetexture
+- visualshadernodetexture2darray
+- visualshadernodetexture2darrayparameter
+- visualshadernodetexture2dparameter
+- visualshadernodetexture3d
+- visualshadernodetexture3dparameter
+- visualshadernodetextureparameter
+- visualshadernodetextureparametertriplanar
+- visualshadernodetexturesdf
+- visualshadernodetexturesdfnormal
+- visualshadernodetransformcompose
+- visualshadernodetransformconstant
+- visualshadernodetransformdecompose
+- visualshadernodetransformfunc
+- visualshadernodetransformop
+- visualshadernodetransformparameter
+- visualshadernodetransformvecmult
+- visualshadernodeuvfunc
+- visualshadernodeuvpolarcoord
+- visualshadernodevarying
+- visualshadernodevaryinggetter
+- visualshadernodevaryingsetter
+- visualshadernodevec2constant
+- visualshadernodevec2parameter
+- visualshadernodevec3constant
+- visualshadernodevec3parameter
+- visualshadernodevec4constant
+- visualshadernodevec4parameter
+- visualshadernodevectorbase
+- visualshadernodevectorcompose
+- visualshadernodevectordecompose
+- visualshadernodevectordistance
+- visualshadernodevectorfunc
+- visualshadernodevectorlen
+- visualshadernodevectorop
+- visualshadernodevectorrefract
+- void
+- voxelgi
+- voxelgidata
+- vscrollbar
+- vseparator
+- vslider
+- vsplitcontainer
+- weakref
+- while
+- window
+- workerthreadpool
+- world2d
+- world3d
+- worldboundaryshape2d
+- worldboundaryshape3d
+- worldenvironment
+- wrap
+- wrapf
+- wrapi
+- x509certificate
+- xmlparser
+- xranchor3d
+- xrcamera3d
+- xrcontroller3d
+- xrinterface
+- xrinterfaceextension
+- xrnode3d
+- xrorigin3d
+- xrpose
+- xrpositionaltracker
+- xrserver
+- yield
+
+
+## FEATURE SET
+
+
+### Client Modification Feature
+| Name | Supported | Defined By |
+| ---- | --------- | ---------- |
+|BasePath|✗|ToolingExtension
+|Authorizations|✗|ToolingExtension
+|UserAgent|✗|ToolingExtension
+|MockServer|✗|ToolingExtension
+
+### Data Type Feature
+| Name | Supported | Defined By |
+| ---- | --------- | ---------- |
+|Custom|✓|OAS2,OAS3
+|Int32|✓|OAS2,OAS3
+|Int64|✓|OAS2,OAS3
+|Float|✓|OAS2,OAS3
+|Double|✓|OAS2,OAS3
+|Decimal|✓|ToolingExtension
+|String|✓|OAS2,OAS3
+|Byte|✓|OAS2,OAS3
+|Binary|✓|OAS2,OAS3
+|Boolean|✓|OAS2,OAS3
+|Date|✓|OAS2,OAS3
+|DateTime|✓|OAS2,OAS3
+|Password|✓|OAS2,OAS3
+|File|✓|OAS2
+|Uuid|✓|
+|Array|✓|OAS2,OAS3
+|Null|✓|OAS3
+|AnyType|✗|OAS2,OAS3
+|Object|✓|OAS2,OAS3
+|Maps|✗|ToolingExtension
+|CollectionFormat|✗|OAS2
+|CollectionFormatMulti|✗|OAS2
+|Enum|✓|OAS2,OAS3
+|ArrayOfEnum|✗|ToolingExtension
+|ArrayOfModel|✓|ToolingExtension
+|ArrayOfCollectionOfPrimitives|✗|ToolingExtension
+|ArrayOfCollectionOfModel|✗|ToolingExtension
+|ArrayOfCollectionOfEnum|✗|ToolingExtension
+|MapOfEnum|✗|ToolingExtension
+|MapOfModel|✗|ToolingExtension
+|MapOfCollectionOfPrimitives|✗|ToolingExtension
+|MapOfCollectionOfModel|✗|ToolingExtension
+|MapOfCollectionOfEnum|✗|ToolingExtension
+
+### Documentation Feature
+| Name | Supported | Defined By |
+| ---- | --------- | ---------- |
+|Readme|✓|ToolingExtension
+|Model|✓|ToolingExtension
+|Api|✓|ToolingExtension
+
+### Global Feature
+| Name | Supported | Defined By |
+| ---- | --------- | ---------- |
+|Host|✓|OAS2,OAS3
+|BasePath|✓|OAS2,OAS3
+|Info|✓|OAS2,OAS3
+|Schemes|✓|OAS2,OAS3
+|PartialSchemes|✓|OAS2,OAS3
+|Consumes|✓|OAS2
+|Produces|✓|OAS2
+|ExternalDocumentation|✓|OAS2,OAS3
+|Examples|✓|OAS2,OAS3
+|XMLStructureDefinitions|✗|OAS2,OAS3
+|MultiServer|✗|OAS3
+|ParameterizedServer|✗|OAS3
+|ParameterStyling|✓|OAS3
+|Callbacks|✗|OAS3
+|LinkObjects|✗|OAS3
+
+### Parameter Feature
+| Name | Supported | Defined By |
+| ---- | --------- | ---------- |
+|Path|✓|OAS2,OAS3
+|Query|✓|OAS2,OAS3
+|Header|✓|OAS2,OAS3
+|Body|✓|OAS2
+|FormUnencoded|✓|OAS2
+|FormMultipart|✗|OAS2
+|Cookie|✗|OAS3
+
+### Schema Support Feature
+| Name | Supported | Defined By |
+| ---- | --------- | ---------- |
+|Simple|✓|OAS2,OAS3
+|Composite|✓|OAS2,OAS3
+|Polymorphism|✗|OAS2,OAS3
+|Union|✗|OAS3
+|allOf|✗|OAS2,OAS3
+|anyOf|✗|OAS3
+|oneOf|✗|OAS3
+|not|✗|OAS3
+
+### Security Feature
+| Name | Supported | Defined By |
+| ---- | --------- | ---------- |
+|BasicAuth|✗|OAS2,OAS3
+|ApiKey|✓|OAS2,OAS3
+|OpenIDConnect|✗|OAS3
+|BearerToken|✓|OAS3
+|OAuth2_Implicit|✓|OAS2,OAS3
+|OAuth2_Password|✓|OAS2,OAS3
+|OAuth2_ClientCredentials|✓|OAS2,OAS3
+|OAuth2_AuthorizationCode|✓|OAS2,OAS3
+|SignatureAuth|✗|OAS3
+|AWSV4Signature|✗|ToolingExtension
+
+### Wire Format Feature
+| Name | Supported | Defined By |
+| ---- | --------- | ---------- |
+|JSON|✓|OAS2,OAS3
+|XML|✗|OAS2,OAS3
+|PROTOBUF|✗|ToolingExtension
+|Custom|✗|OAS2,OAS3
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/GdscriptClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/GdscriptClientCodegen.java
new file mode 100644
index 000000000000..cb71b0d5d82a
--- /dev/null
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/GdscriptClientCodegen.java
@@ -0,0 +1,1409 @@
+package org.openapitools.codegen.languages;
+
+import io.swagger.v3.oas.models.media.Schema;
+import io.swagger.v3.oas.models.media.StringSchema;
+import org.openapitools.codegen.*;
+
+import java.io.File;
+import java.util.*;
+
+import org.openapitools.codegen.api.TemplatingEngineAdapter;
+import org.openapitools.codegen.meta.features.*;
+import org.openapitools.codegen.model.ModelsMap;
+import org.openapitools.codegen.templating.HandlebarsEngineAdapter;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import static org.openapitools.codegen.utils.StringUtils.camelize;
+
+
+public class GdscriptClientCodegen extends DefaultCodegen implements CodegenConfig {
+
+ // All generated core classes will use this affixes both in class_name and file name.
+ public static final String CORE_NAME_PREFIX = "coreNamePrefix";
+ public static final String CORE_NAME_PREFIX_VALUE = "";
+ public static final String CORE_NAME_SUFFIX = "coreNameSuffix";
+ public static final String CORE_NAME_SUFFIX_VALUE = "";
+ // Affixes added to reserved words ; do include the _ for snake_case.
+ public static final String ANTICOLLISION_PREFIX = "anticollisionPrefix";
+ public static final String ANTICOLLISION_PREFIX_VALUE = "some_";
+ public static final String ANTICOLLISION_SUFFIX = "anticollisionSuffix";
+ public static final String ANTICOLLISION_SUFFIX_VALUE = "";
+
+ @SuppressWarnings("FieldCanBeLocal")
+ private final Logger LOGGER = LoggerFactory.getLogger(GdscriptClientCodegen.class);
+
+ protected String coreNamePrefix = CORE_NAME_PREFIX_VALUE;
+ protected String coreNameSuffix = CORE_NAME_SUFFIX_VALUE;
+
+ protected String anticollisionPrefix = ANTICOLLISION_PREFIX_VALUE;
+ protected String anticollisionSuffix = ANTICOLLISION_SUFFIX_VALUE;
+
+ // We're putting the doc files right next their target code file
+ protected String apiDocPath = "apis/";
+ protected String modelDocPath = "models/";
+
+ public void setCoreNamePrefix(String prefix) {
+ coreNamePrefix = prefix;
+ }
+
+ public String getCoreNamePrefix() {
+ return coreNamePrefix;
+ }
+
+ public void setCoreNameSuffix(String coreNameSuffix) {
+ this.coreNameSuffix = coreNameSuffix;
+ }
+
+ public String getCoreNameSuffix() {
+ return coreNameSuffix;
+ }
+
+ public void setAnticollisionPrefix(String anticollisionPrefix) {
+ this.anticollisionPrefix = anticollisionPrefix;
+ }
+
+ public String getAnticollisionPrefix() {
+ return anticollisionPrefix;
+ }
+
+ public void setAnticollisionSuffix(String anticollisionSuffix) {
+ this.anticollisionSuffix = anticollisionSuffix;
+ }
+
+ public String getAnticollisionSuffix() {
+ return anticollisionSuffix;
+ }
+
+ public CodegenType getTag() {
+ return CodegenType.CLIENT;
+ }
+
+ public String getName() {
+ return "gdscript";
+ }
+
+ public String getHelp() {
+ return "Generates a GDScript client (Godot 4+).";
+ }
+
+ public GdscriptClientCodegen() {
+ super();
+
+ modifyFeatureSet(features -> features
+ .includeSchemaSupportFeatures(
+ SchemaSupportFeature.Simple,
+ SchemaSupportFeature.Composite
+ )
+ .excludeSchemaSupportFeatures(
+ SchemaSupportFeature.Polymorphism,
+ SchemaSupportFeature.Union,
+ SchemaSupportFeature.allOf,
+ SchemaSupportFeature.anyOf,
+ SchemaSupportFeature.oneOf,
+ SchemaSupportFeature.not
+ )
+ .includeDocumentationFeatures(
+ DocumentationFeature.Readme
+ )
+ .includeWireFormatFeatures(
+ WireFormatFeature.JSON
+ )
+ .excludeWireFormatFeatures(
+ WireFormatFeature.Custom,
+ WireFormatFeature.XML,
+ WireFormatFeature.PROTOBUF
+ )
+ .includeSecurityFeatures(
+ SecurityFeature.BearerToken,
+ SecurityFeature.ApiKey,
+ SecurityFeature.OAuth2_Implicit // untested
+ )
+ .excludeSecurityFeatures(
+ SecurityFeature.BasicAuth // desired
+ )
+ .includeDataTypeFeatures(
+ DataTypeFeature.Array,
+ DataTypeFeature.ArrayOfModel,
+ DataTypeFeature.Binary,
+ DataTypeFeature.Boolean,
+ DataTypeFeature.Byte,
+ DataTypeFeature.Custom, // help (?)
+ DataTypeFeature.Date,
+ DataTypeFeature.DateTime,
+ DataTypeFeature.Decimal,
+ DataTypeFeature.Double,
+ DataTypeFeature.Enum,
+ DataTypeFeature.File, // untested
+ DataTypeFeature.Float,
+ DataTypeFeature.Int32,
+ DataTypeFeature.Int64,
+ DataTypeFeature.Null,
+ DataTypeFeature.Object,
+ DataTypeFeature.Password,
+ DataTypeFeature.String,
+ DataTypeFeature.Uuid
+ )
+ .excludeDataTypeFeatures(
+ DataTypeFeature.AnyType, // Variant will be there eventually
+ DataTypeFeature.ArrayOfCollectionOfEnum,
+ DataTypeFeature.ArrayOfCollectionOfModel,
+ DataTypeFeature.ArrayOfCollectionOfPrimitives,
+ DataTypeFeature.ArrayOfEnum,
+ DataTypeFeature.CollectionFormat,
+ DataTypeFeature.CollectionFormatMulti,
+ DataTypeFeature.MapOfCollectionOfEnum,
+ DataTypeFeature.MapOfCollectionOfModel,
+ DataTypeFeature.MapOfCollectionOfPrimitives,
+ DataTypeFeature.MapOfEnum,
+ DataTypeFeature.MapOfModel,
+ DataTypeFeature.Maps
+ )
+ .includeGlobalFeatures(
+ GlobalFeature.BasePath,
+ GlobalFeature.Examples,
+ GlobalFeature.ExternalDocumentation,
+ GlobalFeature.Host,
+ GlobalFeature.Info,
+ GlobalFeature.Produces,
+ GlobalFeature.Consumes,
+ GlobalFeature.Schemes,
+ GlobalFeature.ParameterStyling
+ )
+ .excludeGlobalFeatures(
+ GlobalFeature.Callbacks,
+ GlobalFeature.ParameterizedServer,
+ GlobalFeature.MultiServer,
+ GlobalFeature.LinkObjects,
+ GlobalFeature.XMLStructureDefinitions
+ )
+ .includeParameterFeatures(
+ ParameterFeature.Body,
+ ParameterFeature.Path,
+ ParameterFeature.Header,
+ ParameterFeature.FormUnencoded,
+ ParameterFeature.Query
+ )
+ .excludeParameterFeatures(
+ ParameterFeature.FormMultipart,
+ ParameterFeature.Cookie
+ )
+ );
+
+ // It makes sense to package the generated code like a Godot addon, for ease of installation.
+ // Since most users will set the output dir, we perhaps ought to document that fact.
+ String addonName = "goas.client";
+ outputFolder = "generated-code"
+ + File.separator + "gdscript"
+ + File.separator + "addons"
+ + File.separator + addonName;
+ embeddedTemplateDir = templateDir = "gdscript";
+ apiPackage = "apis";
+ modelPackage = "models";
+
+ modelTemplateFiles.put("model.handlebars", ".gd");
+ apiTemplateFiles.put("api.handlebars", ".gd");
+ apiDocTemplateFiles.put("api_doc.handlebars", ".md");
+ // more supported files are defined in processOpts() (they use coreNamePrefix)
+
+ setReservedWordsLowerCase(getReservedWords());
+
+ typeMapping.clear();
+ typeMapping.put("array", "Array");
+ typeMapping.put("List", "Array");
+ typeMapping.put("boolean", "bool");
+ typeMapping.put("string", "String");
+ typeMapping.put("int", "int");
+ typeMapping.put("float", "float");
+ typeMapping.put("number", "float");
+ typeMapping.put("long", "float");
+ typeMapping.put("short", "float");
+ typeMapping.put("char", "String");
+ typeMapping.put("double", "int");
+ typeMapping.put("object", "Object");
+ typeMapping.put("integer", "int");
+ typeMapping.put("map", "Dictionary");
+ typeMapping.put("set", "Array");
+ // No timezone support in Godot so I'm skipping Datetimes for now
+ // We might at some point enable datetime support for UTC (non-timezoned)
+ typeMapping.put("date", "String");
+ typeMapping.put("datetime", "String");
+ typeMapping.put("DateTime", "String"); // case matters (format: date-time)
+ typeMapping.put("date-time", "String"); // possibly useless
+ //typeMapping.put("binary", "?");
+ typeMapping.put("file", "String"); // untested
+ typeMapping.put("ByteArray", "Array");
+ typeMapping.put("UUID", "String");
+ //typeMapping.put("Error", "?");
+ //typeMapping.put("AnyType", "Variant");
+
+ cliOptions.add(new CliOption(CORE_NAME_PREFIX, "PascalCase prefix added to all core classes")
+ .defaultValue(CORE_NAME_PREFIX_VALUE));
+ cliOptions.add(new CliOption(CORE_NAME_SUFFIX, "PascalCase suffix added to all core classes")
+ .defaultValue(CORE_NAME_SUFFIX_VALUE));
+ cliOptions.add(new CliOption(ANTICOLLISION_PREFIX, "Prefix added at the beginning of reserved words")
+ .defaultValue(ANTICOLLISION_PREFIX_VALUE));
+ cliOptions.add(new CliOption(ANTICOLLISION_SUFFIX, "Suffix added at the ending of reserved words")
+ .defaultValue(ANTICOLLISION_SUFFIX_VALUE));
+
+ // Alas, I have not taken care of escaping things properly in the templates.
+ // I'm not sure how to handle the different escaping strategies required.
+ // FIXME: we can't log like this here → too verbose
+ //LOGGER.warn("---- THE GENERATED CODE MAY BE UNSAFE AND MALICIOUS OAS FILES MAY HURT YOU ----");
+ //LOGGER.warn("PLEASE READ *CAREFULLY* THE OAS FILE YOU ARE USING BEFORE YOU TRUST IT.");
+ }
+
+ @Override
+ public String defaultTemplatingEngine() {
+ return "handlebars";
+ }
+
+ public void processAdditionalProperties() {
+ additionalProperties.put("apiDocPath", apiDocPath);
+ additionalProperties.put("modelDocPath", modelDocPath);
+ additionalProperties.put("modelNameSuffix", modelNameSuffix);
+
+ if (additionalProperties.containsKey(CORE_NAME_PREFIX)) {
+ setCoreNamePrefix((String) additionalProperties.get(CORE_NAME_PREFIX));
+ }
+ writePropertyBack(CORE_NAME_PREFIX, getCoreNamePrefix());
+
+ if (additionalProperties.containsKey(CORE_NAME_SUFFIX)) {
+ setCoreNameSuffix((String) additionalProperties.get(CORE_NAME_SUFFIX));
+ }
+ writePropertyBack(CORE_NAME_SUFFIX, getCoreNameSuffix());
+
+ if (additionalProperties.containsKey(ANTICOLLISION_PREFIX)) {
+ setAnticollisionPrefix((String) additionalProperties.get(ANTICOLLISION_PREFIX));
+ }
+ writePropertyBack(ANTICOLLISION_PREFIX, getAnticollisionPrefix());
+
+ if (additionalProperties.containsKey(ANTICOLLISION_SUFFIX)) {
+ setAnticollisionSuffix((String) additionalProperties.get(ANTICOLLISION_SUFFIX));
+ }
+ writePropertyBack(ANTICOLLISION_SUFFIX, getAnticollisionSuffix());
+ }
+
+ @Override
+ public void processOpts() {
+ super.processOpts();
+
+ processAdditionalProperties();
+ supportingFiles.add(new SupportingFile("core/ApiBee.handlebars", "core", toCoreFilename("ApiBee") + ".gd"));
+ supportingFiles.add(new SupportingFile("core/ApiError.handlebars", "core", toCoreFilename("ApiError") + ".gd"));
+ supportingFiles.add(new SupportingFile("core/ApiConfig.handlebars", "core", toCoreFilename("ApiConfig") + ".gd"));
+ supportingFiles.add(new SupportingFile("core/ApiResponse.handlebars", "core", toCoreFilename("ApiResponse") + ".gd"));
+ supportingFiles.add(new SupportingFile("README.handlebars", "", "README.md"));
+
+ // Ensure we're using the appropriate template engine, and configure it while we're at it.
+ // We had to use handlebars because the truthy values of mustache include `""` and `"null"`,
+ // and things went south for default values and examples (but descriptions were OK, somehow)
+ TemplatingEngineAdapter templatingEngine = getTemplatingEngine();
+ if (templatingEngine instanceof HandlebarsEngineAdapter) {
+ HandlebarsEngineAdapter handlebars = (HandlebarsEngineAdapter) templatingEngine;
+ //handlebars.infiniteLoops(true); // will we want this eventually?
+ handlebars.setPrettyPrint(true); // removes blank lines left by flow control tags
+ } else {
+ throw new RuntimeException("Only the HandlebarsEngineAdapter is supported for this generator");
+ }
+ }
+
+ @Override
+ public String apiDocFileFolder() {
+ return (outputFolder + File.separator + apiDocPath);
+ }
+
+ @Override
+ public String modelDocFileFolder() {
+ return (outputFolder + File.separator + modelDocPath);
+ }
+
+ @Override
+ public String escapeUnsafeCharacters(String input) {
+ // There might be ways to inject code in Gdscript, but I don't see any for now. (no /* */ comments)
+ // TODO: review this can of worms with someone knowledgeable
+ return input;
+ }
+
+ @Override
+ public String escapeQuotationMark(String input) {
+ // I've seen some other targets REMOVE the quotation marks altogether.
+ // We might need to do that as well ?
+ // TODO: review this with someone knowledgeable
+ return input
+ .replace("\"", "\\\"")
+ .replace("'", "\\'")
+ ;
+ }
+
+ @Override
+ public String escapeReservedWord(String name) {
+ return getAnticollisionPrefix() + name + getAnticollisionSuffix();
+ }
+
+ public String escapeStringLiteral(String input) {
+ return input
+ .replace("\"", "\\\"") // escape double quotes
+ .replaceAll("[\\\\]+$", "") // remove trailing backslash(es)
+ // issue: "foo\" will perhaps still wreak havoc
+ ;
+ }
+
+ // In GDScript we want our file names to match our class names.
+ // This ensures we get the (optional) prefix and suffix added to the file name.
+ // Perhaps we'll even do (optional) snake_case in here later on.
+ @Override
+ public String toModelFilename(String name) {
+ return toModelName(name);
+ }
+
+ public String toCoreFilename(String name) {
+ return camelize(getCoreNamePrefix() + '_' + name + '_' + getCoreNameSuffix());
+ }
+
+ @Override
+ public String toExampleValue(Schema schema) {
+ if (schema.getExample() != null) {
+ return escapeStringLiteral(super.toExampleValue(schema));
+ }
+
+ return "";
+ }
+
+ @Override
+ public String toDefaultValue(Schema schema) {
+ if (schema.getDefault() != null) {
+ if (schema instanceof StringSchema) {
+ return "\"" + escapeStringLiteral(schema.getDefault().toString()) + "\"";
+ }
+ return schema.getDefault().toString();
+ }
+
+ if (schema instanceof StringSchema) {
+ return "\"\"";
+ }
+
+ return null; // if instead we call super here, we get "null" where we should not
+ }
+
+ @Override
+ public String getTypeDeclaration(Schema schema) {
+ String type = super.getTypeDeclaration(schema);
+
+ // purpose: camelize the inline response models dataType (requests are already fine)
+ // Possibly not the correct way to do it but I've tried many, many things.
+ if (type.contains("_")) {
+ type = camelize(type);
+ }
+
+ return type;
+ }
+
+ @Override
+ public Map updateAllModels(Map objs) {
+ objs = super.updateAllModels(objs);
+
+ String[] names = objs.keySet().toArray(new String[0]);
+ for (String modelName : names) {
+ // Skip models with jsonld, we don't support them atm
+ // eg: Announcement.jsonld
+ if (modelName.contains("jsonld")) {
+ objs.remove(modelName);
+ LOGGER.warn("Skipped model " + modelName + " (jsonld not supported)");
+ }
+ // Also skip Hydra models, we're not supporting them atm
+ if (modelName.contains("Hydra") || modelName.contains("hydra")) {
+ objs.remove(modelName);
+ LOGGER.warn("Skipped model " + modelName + " (hydra not supported)");
+ }
+ }
+
+ return objs;
+ }
+
+ protected List getReservedWords() {
+ return Arrays.asList(
+ // Local method names used in base API class
+ "_bzz_connect_client_if_needed", "_bzz_request", "_bzz_request_text", "_bzz_do_request_text",
+ "_bzz_convert_http_method", "_bzz_urlize_path_param", "_bzz_escape_path_param",
+ "_bzz_next_loop_iteration", "_bzz_get_content_type", "_bzz_format_error_response",
+ // Local properties used in base API class
+ "_bzz_config", "_bzz_client", "_bzz_name",
+ // Local variable names used in API methods (endpoints)
+ "bzz_method", "bzz_path", "bzz_query",
+ "bzz_result", "bzz_code", "bzz_headers",
+ "bzz_error",
+ // Hmmm… Will be removed eventually. Promises ! ;)
+ "on_success", "on_failure",
+
+ // Godot's Global Scope
+ // https://github.com/godotengine/godot/blob/master/doc/classes/%40GlobalScope.xml
+ // List generated from modules/openapi-generator/src/main/resources/gdscript/utils/extract_reserved_words.py
+ // Godot's global functions
+ "abs", "absf", "absi", "acos", "asin", "atan", "atan2", "bezier_interpolate", "bytes_to_var",
+ "bytes_to_var_with_objects", "ceil", "ceilf", "ceili", "clamp", "clampf", "clampi", "cos",
+ "cosh", "cubic_interpolate", "cubic_interpolate_angle", "cubic_interpolate_angle_in_time",
+ "cubic_interpolate_in_time", "db_to_linear", "deg_to_rad", "ease", "error_string", "exp",
+ "floor", "floorf", "floori", "fmod", "fposmod", "hash", "instance_from_id", "inverse_lerp",
+ "is_equal_approx", "is_finite", "is_inf", "is_instance_id_valid", "is_instance_valid",
+ "is_nan", "is_zero_approx", "lerp", "lerp_angle", "lerpf", "linear_to_db", "log", "max",
+ "maxf", "maxi", "min", "minf", "mini", "move_toward", "nearest_po2", "pingpong", "posmod",
+ "pow", "print", "print_rich", "print_verbose", "printerr", "printraw", "prints", "printt",
+ "push_error", "push_warning", "rad_to_deg", "rand_from_seed", "randf", "randf_range",
+ "randfn", "randi", "randi_range", "randomize", "remap", "rid_allocate_id", "rid_from_int64",
+ "round", "roundf", "roundi", "seed", "sign", "signf", "signi", "sin", "sinh", "smoothstep",
+ "snapped", "sqrt", "step_decimals", "str", "str_to_var", "tan", "tanh", "typeof",
+ "var_to_bytes", "var_to_bytes_with_objects", "var_to_str", "weakref", "wrap", "wrapf", "wrapi",
+ // Godot's global constants
+ "SIDE_LEFT", "SIDE_TOP", "SIDE_RIGHT", "SIDE_BOTTOM", "CORNER_TOP_LEFT",
+ "CORNER_TOP_RIGHT", "CORNER_BOTTOM_RIGHT", "CORNER_BOTTOM_LEFT", "VERTICAL", "HORIZONTAL",
+ "CLOCKWISE", "COUNTERCLOCKWISE", "HORIZONTAL_ALIGNMENT_LEFT", "HORIZONTAL_ALIGNMENT_CENTER",
+ "HORIZONTAL_ALIGNMENT_RIGHT", "HORIZONTAL_ALIGNMENT_FILL", "VERTICAL_ALIGNMENT_TOP",
+ "VERTICAL_ALIGNMENT_CENTER", "VERTICAL_ALIGNMENT_BOTTOM", "VERTICAL_ALIGNMENT_FILL",
+ "INLINE_ALIGNMENT_TOP_TO", "INLINE_ALIGNMENT_CENTER_TO", "INLINE_ALIGNMENT_BOTTOM_TO",
+ "INLINE_ALIGNMENT_TO_TOP", "INLINE_ALIGNMENT_TO_CENTER", "INLINE_ALIGNMENT_TO_BASELINE",
+ "INLINE_ALIGNMENT_TO_BOTTOM", "INLINE_ALIGNMENT_TOP", "INLINE_ALIGNMENT_CENTER",
+ "INLINE_ALIGNMENT_BOTTOM", "INLINE_ALIGNMENT_IMAGE_MASK", "INLINE_ALIGNMENT_TEXT_MASK",
+ "KEY_NONE", "KEY_SPECIAL", "KEY_ESCAPE", "KEY_TAB", "KEY_BACKTAB", "KEY_BACKSPACE",
+ "KEY_ENTER", "KEY_KP_ENTER", "KEY_INSERT", "KEY_DELETE", "KEY_PAUSE", "KEY_PRINT",
+ "KEY_SYSREQ", "KEY_CLEAR", "KEY_HOME", "KEY_END", "KEY_LEFT", "KEY_UP", "KEY_RIGHT",
+ "KEY_DOWN", "KEY_PAGEUP", "KEY_PAGEDOWN", "KEY_SHIFT", "KEY_CTRL", "KEY_META", "KEY_ALT",
+ "KEY_CAPSLOCK", "KEY_NUMLOCK", "KEY_SCROLLLOCK", "KEY_F1", "KEY_F2", "KEY_F3", "KEY_F4",
+ "KEY_F5", "KEY_F6", "KEY_F7", "KEY_F8", "KEY_F9", "KEY_F10", "KEY_F11", "KEY_F12", "KEY_F13",
+ "KEY_F14", "KEY_F15", "KEY_F16", "KEY_F17", "KEY_F18", "KEY_F19", "KEY_F20", "KEY_F21",
+ "KEY_F22", "KEY_F23", "KEY_F24", "KEY_F25", "KEY_F26", "KEY_F27", "KEY_F28", "KEY_F29",
+ "KEY_F30", "KEY_F31", "KEY_F32", "KEY_F33", "KEY_F34", "KEY_F35", "KEY_KP_MULTIPLY",
+ "KEY_KP_DIVIDE", "KEY_KP_SUBTRACT", "KEY_KP_PERIOD", "KEY_KP_ADD", "KEY_KP_0", "KEY_KP_1",
+ "KEY_KP_2", "KEY_KP_3", "KEY_KP_4", "KEY_KP_5", "KEY_KP_6", "KEY_KP_7", "KEY_KP_8",
+ "KEY_KP_9", "KEY_SUPER_L", "KEY_SUPER_R", "KEY_MENU", "KEY_HYPER_L", "KEY_HYPER_R",
+ "KEY_HELP", "KEY_DIRECTION_L", "KEY_DIRECTION_R", "KEY_BACK", "KEY_FORWARD", "KEY_STOP",
+ "KEY_REFRESH", "KEY_VOLUMEDOWN", "KEY_VOLUMEMUTE", "KEY_VOLUMEUP", "KEY_BASSBOOST",
+ "KEY_BASSUP", "KEY_BASSDOWN", "KEY_TREBLEUP", "KEY_TREBLEDOWN", "KEY_MEDIAPLAY",
+ "KEY_MEDIASTOP", "KEY_MEDIAPREVIOUS", "KEY_MEDIANEXT", "KEY_MEDIARECORD", "KEY_HOMEPAGE",
+ "KEY_FAVORITES", "KEY_SEARCH", "KEY_STANDBY", "KEY_OPENURL", "KEY_LAUNCHMAIL",
+ "KEY_LAUNCHMEDIA", "KEY_LAUNCH0", "KEY_LAUNCH1", "KEY_LAUNCH2", "KEY_LAUNCH3", "KEY_LAUNCH4",
+ "KEY_LAUNCH5", "KEY_LAUNCH6", "KEY_LAUNCH7", "KEY_LAUNCH8", "KEY_LAUNCH9", "KEY_LAUNCHA",
+ "KEY_LAUNCHB", "KEY_LAUNCHC", "KEY_LAUNCHD", "KEY_LAUNCHE", "KEY_LAUNCHF", "KEY_UNKNOWN",
+ "KEY_SPACE", "KEY_EXCLAM", "KEY_QUOTEDBL", "KEY_NUMBERSIGN", "KEY_DOLLAR", "KEY_PERCENT",
+ "KEY_AMPERSAND", "KEY_APOSTROPHE", "KEY_PARENLEFT", "KEY_PARENRIGHT", "KEY_ASTERISK",
+ "KEY_PLUS", "KEY_COMMA", "KEY_MINUS", "KEY_PERIOD", "KEY_SLASH", "KEY_0", "KEY_1", "KEY_2",
+ "KEY_3", "KEY_4", "KEY_5", "KEY_6", "KEY_7", "KEY_8", "KEY_9", "KEY_COLON", "KEY_SEMICOLON",
+ "KEY_LESS", "KEY_EQUAL", "KEY_GREATER", "KEY_QUESTION", "KEY_AT", "KEY_A", "KEY_B", "KEY_C",
+ "KEY_D", "KEY_E", "KEY_F", "KEY_G", "KEY_H", "KEY_I", "KEY_J", "KEY_K", "KEY_L", "KEY_M",
+ "KEY_N", "KEY_O", "KEY_P", "KEY_Q", "KEY_R", "KEY_S", "KEY_T", "KEY_U", "KEY_V", "KEY_W",
+ "KEY_X", "KEY_Y", "KEY_Z", "KEY_BRACKETLEFT", "KEY_BACKSLASH", "KEY_BRACKETRIGHT",
+ "KEY_ASCIICIRCUM", "KEY_UNDERSCORE", "KEY_QUOTELEFT", "KEY_BRACELEFT", "KEY_BAR",
+ "KEY_BRACERIGHT", "KEY_ASCIITILDE", "KEY_NOBREAKSPACE", "KEY_EXCLAMDOWN", "KEY_CENT",
+ "KEY_STERLING", "KEY_CURRENCY", "KEY_YEN", "KEY_BROKENBAR", "KEY_SECTION", "KEY_DIAERESIS",
+ "KEY_COPYRIGHT", "KEY_ORDFEMININE", "KEY_GUILLEMOTLEFT", "KEY_NOTSIGN", "KEY_HYPHEN",
+ "KEY_REGISTERED", "KEY_MACRON", "KEY_DEGREE", "KEY_PLUSMINUS", "KEY_TWOSUPERIOR",
+ "KEY_THREESUPERIOR", "KEY_ACUTE", "KEY_MU", "KEY_PARAGRAPH", "KEY_PERIODCENTERED",
+ "KEY_CEDILLA", "KEY_ONESUPERIOR", "KEY_MASCULINE", "KEY_GUILLEMOTRIGHT", "KEY_ONEQUARTER",
+ "KEY_ONEHALF", "KEY_THREEQUARTERS", "KEY_QUESTIONDOWN", "KEY_AGRAVE", "KEY_AACUTE",
+ "KEY_ACIRCUMFLEX", "KEY_ATILDE", "KEY_ADIAERESIS", "KEY_ARING", "KEY_AE", "KEY_CCEDILLA",
+ "KEY_EGRAVE", "KEY_EACUTE", "KEY_ECIRCUMFLEX", "KEY_EDIAERESIS", "KEY_IGRAVE", "KEY_IACUTE",
+ "KEY_ICIRCUMFLEX", "KEY_IDIAERESIS", "KEY_ETH", "KEY_NTILDE", "KEY_OGRAVE", "KEY_OACUTE",
+ "KEY_OCIRCUMFLEX", "KEY_OTILDE", "KEY_ODIAERESIS", "KEY_MULTIPLY", "KEY_OOBLIQUE",
+ "KEY_UGRAVE", "KEY_UACUTE", "KEY_UCIRCUMFLEX", "KEY_UDIAERESIS", "KEY_YACUTE", "KEY_THORN",
+ "KEY_SSHARP", "KEY_DIVISION", "KEY_YDIAERESIS", "KEY_CODE_MASK", "KEY_MODIFIER_MASK",
+ "KEY_MASK_CMD_OR_CTRL", "KEY_MASK_SHIFT", "KEY_MASK_ALT", "KEY_MASK_META", "KEY_MASK_CTRL",
+ "KEY_MASK_KPAD", "KEY_MASK_GROUP_SWITCH", "MOUSE_BUTTON_NONE", "MOUSE_BUTTON_LEFT",
+ "MOUSE_BUTTON_RIGHT", "MOUSE_BUTTON_MIDDLE", "MOUSE_BUTTON_WHEEL_UP",
+ "MOUSE_BUTTON_WHEEL_DOWN", "MOUSE_BUTTON_WHEEL_LEFT", "MOUSE_BUTTON_WHEEL_RIGHT",
+ "MOUSE_BUTTON_XBUTTON1", "MOUSE_BUTTON_XBUTTON2", "MOUSE_BUTTON_MASK_LEFT",
+ "MOUSE_BUTTON_MASK_RIGHT", "MOUSE_BUTTON_MASK_MIDDLE", "MOUSE_BUTTON_MASK_XBUTTON1",
+ "MOUSE_BUTTON_MASK_XBUTTON2", "JOY_BUTTON_INVALID", "JOY_BUTTON_A", "JOY_BUTTON_B",
+ "JOY_BUTTON_X", "JOY_BUTTON_Y", "JOY_BUTTON_BACK", "JOY_BUTTON_GUIDE", "JOY_BUTTON_START",
+ "JOY_BUTTON_LEFT_STICK", "JOY_BUTTON_RIGHT_STICK", "JOY_BUTTON_LEFT_SHOULDER",
+ "JOY_BUTTON_RIGHT_SHOULDER", "JOY_BUTTON_DPAD_UP", "JOY_BUTTON_DPAD_DOWN",
+ "JOY_BUTTON_DPAD_LEFT", "JOY_BUTTON_DPAD_RIGHT", "JOY_BUTTON_MISC1", "JOY_BUTTON_PADDLE1",
+ "JOY_BUTTON_PADDLE2", "JOY_BUTTON_PADDLE3", "JOY_BUTTON_PADDLE4", "JOY_BUTTON_TOUCHPAD",
+ "JOY_BUTTON_SDL_MAX", "JOY_BUTTON_MAX", "JOY_AXIS_INVALID", "JOY_AXIS_LEFT_X",
+ "JOY_AXIS_LEFT_Y", "JOY_AXIS_RIGHT_X", "JOY_AXIS_RIGHT_Y", "JOY_AXIS_TRIGGER_LEFT",
+ "JOY_AXIS_TRIGGER_RIGHT", "JOY_AXIS_SDL_MAX", "JOY_AXIS_MAX", "MIDI_MESSAGE_NONE",
+ "MIDI_MESSAGE_NOTE_OFF", "MIDI_MESSAGE_NOTE_ON", "MIDI_MESSAGE_AFTERTOUCH",
+ "MIDI_MESSAGE_CONTROL_CHANGE", "MIDI_MESSAGE_PROGRAM_CHANGE", "MIDI_MESSAGE_CHANNEL_PRESSURE",
+ "MIDI_MESSAGE_PITCH_BEND", "MIDI_MESSAGE_SYSTEM_EXCLUSIVE", "MIDI_MESSAGE_QUARTER_FRAME",
+ "MIDI_MESSAGE_SONG_POSITION_POINTER", "MIDI_MESSAGE_SONG_SELECT", "MIDI_MESSAGE_TUNE_REQUEST",
+ "MIDI_MESSAGE_TIMING_CLOCK", "MIDI_MESSAGE_START", "MIDI_MESSAGE_CONTINUE",
+ "MIDI_MESSAGE_STOP", "MIDI_MESSAGE_ACTIVE_SENSING", "MIDI_MESSAGE_SYSTEM_RESET", "OK",
+ "FAILED", "ERR_UNAVAILABLE", "ERR_UNCONFIGURED", "ERR_UNAUTHORIZED",
+ "ERR_PARAMETER_RANGE_ERROR", "ERR_OUT_OF_MEMORY", "ERR_FILE_NOT_FOUND", "ERR_FILE_BAD_DRIVE",
+ "ERR_FILE_BAD_PATH", "ERR_FILE_NO_PERMISSION", "ERR_FILE_ALREADY_IN_USE",
+ "ERR_FILE_CANT_OPEN", "ERR_FILE_CANT_WRITE", "ERR_FILE_CANT_READ", "ERR_FILE_UNRECOGNIZED",
+ "ERR_FILE_CORRUPT", "ERR_FILE_MISSING_DEPENDENCIES", "ERR_FILE_EOF", "ERR_CANT_OPEN",
+ "ERR_CANT_CREATE", "ERR_QUERY_FAILED", "ERR_ALREADY_IN_USE", "ERR_LOCKED", "ERR_TIMEOUT",
+ "ERR_CANT_CONNECT", "ERR_CANT_RESOLVE", "ERR_CONNECTION_ERROR", "ERR_CANT_ACQUIRE_RESOURCE",
+ "ERR_CANT_FORK", "ERR_INVALID_DATA", "ERR_INVALID_PARAMETER", "ERR_ALREADY_EXISTS",
+ "ERR_DOES_NOT_EXIST", "ERR_DATABASE_CANT_READ", "ERR_DATABASE_CANT_WRITE",
+ "ERR_COMPILATION_FAILED", "ERR_METHOD_NOT_FOUND", "ERR_LINK_FAILED", "ERR_SCRIPT_FAILED",
+ "ERR_CYCLIC_LINK", "ERR_INVALID_DECLARATION", "ERR_DUPLICATE_SYMBOL", "ERR_PARSE_ERROR",
+ "ERR_BUSY", "ERR_SKIP", "ERR_HELP", "ERR_BUG", "ERR_PRINTER_ON_FIRE", "PROPERTY_HINT_NONE",
+ "PROPERTY_HINT_RANGE", "PROPERTY_HINT_ENUM", "PROPERTY_HINT_ENUM_SUGGESTION",
+ "PROPERTY_HINT_EXP_EASING", "PROPERTY_HINT_LINK", "PROPERTY_HINT_FLAGS",
+ "PROPERTY_HINT_LAYERS_2D_RENDER", "PROPERTY_HINT_LAYERS_2D_PHYSICS",
+ "PROPERTY_HINT_LAYERS_2D_NAVIGATION", "PROPERTY_HINT_LAYERS_3D_RENDER",
+ "PROPERTY_HINT_LAYERS_3D_PHYSICS", "PROPERTY_HINT_LAYERS_3D_NAVIGATION", "PROPERTY_HINT_FILE",
+ "PROPERTY_HINT_DIR", "PROPERTY_HINT_GLOBAL_FILE", "PROPERTY_HINT_GLOBAL_DIR",
+ "PROPERTY_HINT_RESOURCE_TYPE", "PROPERTY_HINT_MULTILINE_TEXT", "PROPERTY_HINT_EXPRESSION",
+ "PROPERTY_HINT_PLACEHOLDER_TEXT", "PROPERTY_HINT_COLOR_NO_ALPHA",
+ "PROPERTY_HINT_IMAGE_COMPRESS_LOSSY", "PROPERTY_HINT_IMAGE_COMPRESS_LOSSLESS",
+ "PROPERTY_HINT_OBJECT_ID", "PROPERTY_HINT_TYPE_STRING",
+ "PROPERTY_HINT_NODE_PATH_TO_EDITED_NODE", "PROPERTY_HINT_METHOD_OF_VARIANT_TYPE",
+ "PROPERTY_HINT_METHOD_OF_BASE_TYPE", "PROPERTY_HINT_METHOD_OF_INSTANCE",
+ "PROPERTY_HINT_METHOD_OF_SCRIPT", "PROPERTY_HINT_PROPERTY_OF_VARIANT_TYPE",
+ "PROPERTY_HINT_PROPERTY_OF_BASE_TYPE", "PROPERTY_HINT_PROPERTY_OF_INSTANCE",
+ "PROPERTY_HINT_PROPERTY_OF_SCRIPT", "PROPERTY_HINT_OBJECT_TOO_BIG",
+ "PROPERTY_HINT_NODE_PATH_VALID_TYPES", "PROPERTY_HINT_SAVE_FILE",
+ "PROPERTY_HINT_GLOBAL_SAVE_FILE", "PROPERTY_HINT_INT_IS_OBJECTID",
+ "PROPERTY_HINT_INT_IS_POINTER", "PROPERTY_HINT_ARRAY_TYPE", "PROPERTY_HINT_LOCALE_ID",
+ "PROPERTY_HINT_LOCALIZABLE_STRING", "PROPERTY_HINT_NODE_TYPE",
+ "PROPERTY_HINT_HIDE_QUATERNION_EDIT", "PROPERTY_HINT_PASSWORD", "PROPERTY_HINT_MAX",
+ "PROPERTY_USAGE_NONE", "PROPERTY_USAGE_STORAGE", "PROPERTY_USAGE_EDITOR",
+ "PROPERTY_USAGE_CHECKABLE", "PROPERTY_USAGE_CHECKED", "PROPERTY_USAGE_INTERNATIONALIZED",
+ "PROPERTY_USAGE_GROUP", "PROPERTY_USAGE_CATEGORY", "PROPERTY_USAGE_SUBGROUP",
+ "PROPERTY_USAGE_CLASS_IS_BITFIELD", "PROPERTY_USAGE_NO_INSTANCE_STATE",
+ "PROPERTY_USAGE_RESTART_IF_CHANGED", "PROPERTY_USAGE_SCRIPT_VARIABLE",
+ "PROPERTY_USAGE_STORE_IF_NULL", "PROPERTY_USAGE_ANIMATE_AS_TRIGGER",
+ "PROPERTY_USAGE_UPDATE_ALL_IF_MODIFIED", "PROPERTY_USAGE_SCRIPT_DEFAULT_VALUE",
+ "PROPERTY_USAGE_CLASS_IS_ENUM", "PROPERTY_USAGE_NIL_IS_VARIANT", "PROPERTY_USAGE_INTERNAL",
+ "PROPERTY_USAGE_DO_NOT_SHARE_ON_DUPLICATE", "PROPERTY_USAGE_HIGH_END_GFX",
+ "PROPERTY_USAGE_NODE_PATH_FROM_SCENE_ROOT", "PROPERTY_USAGE_RESOURCE_NOT_PERSISTENT",
+ "PROPERTY_USAGE_KEYING_INCREMENTS", "PROPERTY_USAGE_DEFERRED_SET_RESOURCE",
+ "PROPERTY_USAGE_EDITOR_INSTANTIATE_OBJECT", "PROPERTY_USAGE_EDITOR_BASIC_SETTING",
+ "PROPERTY_USAGE_READ_ONLY", "PROPERTY_USAGE_ARRAY", "PROPERTY_USAGE_DEFAULT",
+ "PROPERTY_USAGE_DEFAULT_INTL", "PROPERTY_USAGE_NO_EDITOR", "METHOD_FLAG_NORMAL",
+ "METHOD_FLAG_EDITOR", "METHOD_FLAG_CONST", "METHOD_FLAG_VIRTUAL", "METHOD_FLAG_VARARG",
+ "METHOD_FLAG_STATIC", "METHOD_FLAG_OBJECT_CORE", "METHOD_FLAGS_DEFAULT", "TYPE_NIL",
+ "TYPE_BOOL", "TYPE_INT", "TYPE_FLOAT", "TYPE_STRING", "TYPE_VECTOR2", "TYPE_VECTOR2I",
+ "TYPE_RECT2", "TYPE_RECT2I", "TYPE_VECTOR3", "TYPE_VECTOR3I", "TYPE_TRANSFORM2D",
+ "TYPE_VECTOR4", "TYPE_VECTOR4I", "TYPE_PLANE", "TYPE_QUATERNION", "TYPE_AABB", "TYPE_BASIS",
+ "TYPE_TRANSFORM3D", "TYPE_PROJECTION", "TYPE_COLOR", "TYPE_STRING_NAME", "TYPE_NODE_PATH",
+ "TYPE_RID", "TYPE_OBJECT", "TYPE_CALLABLE", "TYPE_SIGNAL", "TYPE_DICTIONARY", "TYPE_ARRAY",
+ "TYPE_PACKED_BYTE_ARRAY", "TYPE_PACKED_INT32_ARRAY", "TYPE_PACKED_INT64_ARRAY",
+ "TYPE_PACKED_FLOAT32_ARRAY", "TYPE_PACKED_FLOAT64_ARRAY", "TYPE_PACKED_STRING_ARRAY",
+ "TYPE_PACKED_VECTOR2_ARRAY", "TYPE_PACKED_VECTOR3_ARRAY", "TYPE_PACKED_COLOR_ARRAY",
+ "TYPE_MAX", "OP_EQUAL", "OP_NOT_EQUAL", "OP_LESS", "OP_LESS_EQUAL", "OP_GREATER",
+ "OP_GREATER_EQUAL", "OP_ADD", "OP_SUBTRACT", "OP_MULTIPLY", "OP_DIVIDE", "OP_NEGATE",
+ "OP_POSITIVE", "OP_MODULE", "OP_POWER", "OP_SHIFT_LEFT", "OP_SHIFT_RIGHT", "OP_BIT_AND",
+ "OP_BIT_OR", "OP_BIT_XOR", "OP_BIT_NEGATE", "OP_AND", "OP_OR", "OP_XOR", "OP_NOT", "OP_IN",
+ "OP_MAX",
+ // Godot's singletons
+ "AudioServer", "CameraServer", "ClassDB", "DisplayServer", "Engine",
+ "EngineDebugger", "Geometry2D", "Geometry3D", "GodotSharp", "IP", "Input", "InputMap",
+ "JavaClassWrapper", "JavaScriptBridge", "Marshalls", "NativeExtensionManager",
+ "NavigationMeshGenerator", "NavigationServer2D", "NavigationServer3D", "OS", "Performance",
+ "PhysicsServer2D", "PhysicsServer2DManager", "PhysicsServer3D", "PhysicsServer3DManager",
+ "ProjectSettings", "RenderingServer", "ResourceLoader", "ResourceSaver", "ResourceUID",
+ "TextServerManager", "ThemeDB", "Time", "TranslationServer", "WorkerThreadPool", "XRServer",
+
+ // Tokens from GDScript
+ // https://github.com/godotengine/godot/blob/master/modules/gdscript/gdscript_tokenizer.cpp
+ // Logical
+ "and", "or", "not",
+ // Control flow
+ "if", "elif", "else", "for", "while", "break", "continue", "pass", "return", "match",
+ // Keywords – hey, namespace is here, and so is trait !
+ "as", "assert", "await", "breakpoint", "class", "class_name", "const", "enum", "extends",
+ "func", "in", "is", "namespace", "preload", "self", "signal", "static", "super", "trait",
+ "var", "void", "yield",
+ // Constants
+ "PI", "TAU", "INF", "NaN",
+ // Primitive (lowercase) types
+ "float", "int", "bool",
+ // Types
+ "AABB",
+ "AcceptDialog",
+ "AESContext",
+ "AnimatableBody2D",
+ "AnimatableBody3D",
+ "AnimatedSprite2D",
+ "AnimatedSprite3D",
+ "AnimatedTexture",
+ "AnimationLibrary",
+ "AnimationNodeAdd2",
+ "AnimationNodeAdd3",
+ "AnimationNodeAnimation",
+ "AnimationNodeBlend2",
+ "AnimationNodeBlend3",
+ "AnimationNodeBlendSpace1D",
+ "AnimationNodeBlendSpace2D",
+ "AnimationNodeBlendTree",
+ "AnimationNodeOneShot",
+ "AnimationNodeOutput",
+ "AnimationNodeStateMachinePlayback",
+ "AnimationNodeStateMachineTransition",
+ "AnimationNodeStateMachine",
+ "AnimationNodeSync",
+ "AnimationNodeTimeScale",
+ "AnimationNodeTimeSeek",
+ "AnimationNodeTransition",
+ "AnimationNode",
+ "AnimationPlayer",
+ "AnimationRootNode",
+ "AnimationTrackEditPlugin",
+ "AnimationTree",
+ "Animation",
+ "Area2D",
+ "Area3D",
+ "ArrayMesh",
+ "ArrayOccluder3D",
+ "AspectRatioContainer",
+ "AStar2D",
+ "AStar3D",
+ "AStarGrid2D",
+ "AtlasTexture",
+ "AudioBusLayout",
+ "AudioEffectAmplify",
+ "AudioEffectBandLimitFilter",
+ "AudioEffectBandPassFilter",
+ "AudioEffectCapture",
+ "AudioEffectChorus",
+ "AudioEffectCompressor",
+ "AudioEffectDelay",
+ "AudioEffectDistortion",
+ "AudioEffectEQ10",
+ "AudioEffectEQ21",
+ "AudioEffectEQ6",
+ "AudioEffectEQ",
+ "AudioEffectFilter",
+ "AudioEffectHighPassFilter",
+ "AudioEffectHighShelfFilter",
+ "AudioEffectInstance",
+ "AudioEffectLimiter",
+ "AudioEffectLowPassFilter",
+ "AudioEffectLowShelfFilter",
+ "AudioEffectNotchFilter",
+ "AudioEffectPanner",
+ "AudioEffectPhaser",
+ "AudioEffectPitchShift",
+ "AudioEffectRecord",
+ "AudioEffectReverb",
+ "AudioEffectSpectrumAnalyzerInstance",
+ "AudioEffectSpectrumAnalyzer",
+ "AudioEffectStereoEnhance",
+ "AudioEffect",
+ "AudioListener2D",
+ "AudioListener3D",
+ "AudioServer",
+ "AudioStreamGeneratorPlayback",
+ "AudioStreamGenerator",
+ "AudioStreamMicrophone",
+ "AudioStreamPlaybackResampled",
+ "AudioStreamPlayback",
+ "AudioStreamPlayer2D",
+ "AudioStreamPlayer3D",
+ "AudioStreamPlayer",
+ "AudioStreamRandomizer",
+ "AudioStreamWAV",
+ "AudioStream",
+ "BackBufferCopy",
+ "BaseButton",
+ "BaseMaterial3D",
+ "Basis",
+ "BitMap",
+ "Bone2D",
+ "BoneAttachment3D",
+ "BoneMap",
+ "BoxContainer",
+ "BoxMesh",
+ "BoxOccluder3D",
+ "BoxShape3D",
+ "ButtonGroup",
+ "Button",
+ "Callable",
+ "CallbackTweener",
+ "Camera2D",
+ "Camera3D",
+ "CameraAttributesPhysical",
+ "CameraAttributesPractical",
+ "CameraAttributes",
+ "CameraFeed",
+ "CameraServer",
+ "CameraTexture",
+ "CanvasGroup",
+ "CanvasItemMaterial",
+ "CanvasItem",
+ "CanvasLayer",
+ "CanvasModulate",
+ "CanvasTexture",
+ "CapsuleMesh",
+ "CapsuleShape2D",
+ "CapsuleShape3D",
+ "CenterContainer",
+ "CharacterBody2D",
+ "CharacterBody3D",
+ "CharFXTransform",
+ "CheckBox",
+ "CheckButton",
+ "CircleShape2D",
+ "ClassDB",
+ "CodeEdit",
+ "CodeHighlighter",
+ "CollisionObject2D",
+ "CollisionObject3D",
+ "CollisionPolygon2D",
+ "CollisionPolygon3D",
+ "CollisionShape2D",
+ "CollisionShape3D",
+ "ColorPickerButton",
+ "ColorPicker",
+ "ColorRect",
+ "Color",
+ "CompressedCubemapArray",
+ "CompressedCubemap",
+ "CompressedTexture2DArray",
+ "CompressedTexture2D",
+ "CompressedTexture3D",
+ "CompressedTextureLayered",
+ "ConcavePolygonShape2D",
+ "ConcavePolygonShape3D",
+ "ConeTwistJoint3D",
+ "ConfigFile",
+ "ConfirmationDialog",
+ "Container",
+ "Control",
+ "ConvexPolygonShape2D",
+ "ConvexPolygonShape3D",
+ "CPUParticles2D",
+ "CPUParticles3D",
+ "CryptoKey",
+ "Crypto",
+ "CubemapArray",
+ "Cubemap",
+ "Curve2D",
+ "Curve3D",
+ "CurveTexture",
+ "Curve",
+ "CurveXYZTexture",
+ "CylinderMesh",
+ "CylinderShape3D",
+ "DampedSpringJoint2D",
+ "Decal",
+ "Dictionary",
+ "DirAccess",
+ "DirectionalLight2D",
+ "DirectionalLight3D",
+ "DisplayServer",
+ "DTLSServer",
+ "EditorCommandPalette",
+ "EditorDebuggerPlugin",
+ "EditorExportPlatform",
+ "EditorExportPlugin",
+ "EditorFeatureProfile",
+ "EditorFileDialog",
+ "EditorFileSystemDirectory",
+ "EditorFileSystemImportFormatSupportQuery",
+ "EditorFileSystem",
+ "EditorImportPlugin",
+ "EditorInspectorPlugin",
+ "EditorInspector",
+ "EditorInterface",
+ "EditorNode3DGizmoPlugin",
+ "EditorNode3DGizmo",
+ "EditorPaths",
+ "EditorPlugin",
+ "EditorProperty",
+ "EditorResourceConversionPlugin",
+ "EditorResourcePicker",
+ "EditorResourcePreviewGenerator",
+ "EditorResourcePreview",
+ "EditorSceneFormatImporter",
+ "EditorScenePostImportPlugin",
+ "EditorScenePostImport",
+ "EditorScriptPicker",
+ "EditorScript",
+ "EditorSelection",
+ "EditorSettings",
+ "EditorSpinSlider",
+ "EditorSyntaxHighlighter",
+ "EditorTranslationParserPlugin",
+ "EditorUndoRedoManager",
+ "EditorVCSInterface",
+ "EncodedObjectAsID",
+ "EngineDebugger",
+ "EngineProfiler",
+ "Engine",
+ "Environment",
+ "Expression",
+ "FileAccess",
+ "FileDialog",
+ "FileSystemDock",
+ "FlowContainer",
+ "FogMaterial",
+ "FogVolume",
+ "FontFile",
+ "FontVariation",
+ "Font",
+ "Generic6DOFJoint3D",
+ "Geometry2D",
+ "Geometry3D",
+ "GeometryInstance3D",
+ "GPUParticles2D",
+ "GPUParticles3D",
+ "GPUParticlesAttractor3D",
+ "GPUParticlesAttractorBox3D",
+ "GPUParticlesAttractorSphere3D",
+ "GPUParticlesAttractorVectorField3D",
+ "GPUParticlesCollision3D",
+ "GPUParticlesCollisionBox3D",
+ "GPUParticlesCollisionHeightField3D",
+ "GPUParticlesCollisionSDF3D",
+ "GPUParticlesCollisionSphere3D",
+ "GradientTexture1D",
+ "GradientTexture2D",
+ "Gradient",
+ "GraphEdit",
+ "GraphNode",
+ "GridContainer",
+ "GrooveJoint2D",
+ "HashingContext",
+ "HBoxContainer",
+ "HeightMapShape3D",
+ "HFlowContainer",
+ "HingeJoint3D",
+ "HMACContext",
+ "HScrollBar",
+ "HSeparator",
+ "HSlider",
+ "HSplitContainer",
+ "HTTPClient",
+ "HTTPRequest",
+ "ImageFormatLoaderExtension",
+ "ImageFormatLoader",
+ "ImageTexture3D",
+ "ImageTextureLayered",
+ "ImageTexture",
+ "Image",
+ "ImmediateMesh",
+ "ImporterMeshInstance3D",
+ "ImporterMesh",
+ "InputEventAction",
+ "InputEventFromWindow",
+ "InputEventGesture",
+ "InputEventJoypadButton",
+ "InputEventJoypadMotion",
+ "InputEventKey",
+ "InputEventMagnifyGesture",
+ "InputEventMIDI",
+ "InputEventMouseButton",
+ "InputEventMouseMotion",
+ "InputEventMouse",
+ "InputEventPanGesture",
+ "InputEventScreenDrag",
+ "InputEventScreenTouch",
+ "InputEventShortcut",
+ "InputEventWithModifiers",
+ "InputEvent",
+ "InputMap",
+ "Input",
+ "InstancePlaceholder",
+ "IntervalTweener",
+ "IP",
+ "ItemList",
+ "JavaClassWrapper",
+ "JavaClass",
+ "JavaScriptBridge",
+ "JavaScriptObject",
+ "JNISingleton",
+ "Joint2D",
+ "Joint3D",
+ "JSONRPC",
+ "JSON",
+ "KinematicCollision2D",
+ "KinematicCollision3D",
+ "Label3D",
+ "LabelSettings",
+ "Label",
+ "Light2D",
+ "Light3D",
+ "LightmapGIData",
+ "LightmapGI",
+ "LightmapperRD",
+ "Lightmapper",
+ "LightmapProbe",
+ "LightOccluder2D",
+ "Line2D",
+ "LineEdit",
+ "LinkButton",
+ "MainLoop",
+ "MarginContainer",
+ "Marker2D",
+ "Marker3D",
+ "Marshalls",
+ "Material",
+ "MenuBar",
+ "MenuButton",
+ "MeshDataTool",
+ "MeshInstance2D",
+ "MeshInstance3D",
+ "MeshLibrary",
+ "MeshTexture",
+ "Mesh",
+ "MethodTweener",
+ "MissingNode",
+ "MissingResource",
+ "MovieWriter",
+ "MultiMeshInstance2D",
+ "MultiMeshInstance3D",
+ "MultiMesh",
+ "MultiplayerAPIExtension",
+ "MultiplayerAPI",
+ "MultiplayerPeerExtension",
+ "MultiplayerPeer",
+ "Mutex",
+ "NativeExtensionManager",
+ "NativeExtension",
+ "NavigationAgent2D",
+ "NavigationAgent3D",
+ "NavigationLink2D",
+ "NavigationLink3D",
+ "NavigationMeshGenerator",
+ "NavigationMesh",
+ "NavigationObstacle2D",
+ "NavigationObstacle3D",
+ "NavigationPathQueryParameters2D",
+ "NavigationPathQueryParameters3D",
+ "NavigationPathQueryResult2D",
+ "NavigationPathQueryResult3D",
+ "NavigationPolygon",
+ "NavigationRegion2D",
+ "NavigationRegion3D",
+ "NavigationServer2D",
+ "NavigationServer3D",
+ "NinePatchRect",
+ "Node2D",
+ "Node3DGizmo",
+ "Node3D",
+ "NodePath",
+ "Node",
+ "Object",
+ "Occluder3D",
+ "OccluderInstance3D",
+ "OccluderPolygon2D",
+ "OmniLight3D",
+ "OptimizedTranslation",
+ "OptionButton",
+ "ORMMaterial3D",
+ "OS",
+ "PackedByteArray",
+ "PackedColorArray",
+ "PackedDataContainerRef",
+ "PackedDataContainer",
+ "PackedFloat32Array",
+ "PackedFloat64Array",
+ "PackedInt32Array",
+ "PackedInt64Array",
+ "PackedScene",
+ "PackedStringArray",
+ "PackedVector2Array",
+ "PackedVector3Array",
+ "PacketPeerDTLS",
+ "PacketPeerExtension",
+ "PacketPeerStream",
+ "PacketPeerUDP",
+ "PacketPeer",
+ "PanelContainer",
+ "Panel",
+ "PanoramaSkyMaterial",
+ "ParallaxBackground",
+ "ParallaxLayer",
+ "ParticleProcessMaterial",
+ "Path2D",
+ "Path3D",
+ "PathFollow2D",
+ "PathFollow3D",
+ "PCKPacker",
+ "Performance",
+ "PhysicalBone2D",
+ "PhysicalBone3D",
+ "PhysicalSkyMaterial",
+ "PhysicsBody2D",
+ "PhysicsBody3D",
+ "PhysicsDirectBodyState2DExtension",
+ "PhysicsDirectBodyState2D",
+ "PhysicsDirectBodyState3DExtension",
+ "PhysicsDirectBodyState3D",
+ "PhysicsDirectSpaceState2DExtension",
+ "PhysicsDirectSpaceState2D",
+ "PhysicsDirectSpaceState3DExtension",
+ "PhysicsDirectSpaceState3D",
+ "PhysicsMaterial",
+ "PhysicsPointQueryParameters2D",
+ "PhysicsPointQueryParameters3D",
+ "PhysicsRayQueryParameters2D",
+ "PhysicsRayQueryParameters3D",
+ "PhysicsServer2DExtension",
+ "PhysicsServer2DManager",
+ "PhysicsServer2D",
+ "PhysicsServer3DExtension",
+ "PhysicsServer3DManager",
+ "PhysicsServer3DRenderingServerHandler",
+ "PhysicsServer3D",
+ "PhysicsShapeQueryParameters2D",
+ "PhysicsShapeQueryParameters3D",
+ "PhysicsTestMotionParameters2D",
+ "PhysicsTestMotionParameters3D",
+ "PhysicsTestMotionResult2D",
+ "PhysicsTestMotionResult3D",
+ "PinJoint2D",
+ "PinJoint3D",
+ "PlaceholderCubemapArray",
+ "PlaceholderCubemap",
+ "PlaceholderMaterial",
+ "PlaceholderMesh",
+ "PlaceholderTexture2DArray",
+ "PlaceholderTexture2D",
+ "PlaceholderTexture3D",
+ "PlaceholderTextureLayered",
+ "PlaneMesh",
+ "Plane",
+ "PointLight2D",
+ "PointMesh",
+ "Polygon2D",
+ "PolygonOccluder3D",
+ "PolygonPathFinder",
+ "PopupMenu",
+ "PopupPanel",
+ "Popup",
+ "PortableCompressedTexture2D",
+ "PrimitiveMesh",
+ "PrismMesh",
+ "ProceduralSkyMaterial",
+ "ProgressBar",
+ "Projection",
+ "ProjectSettings",
+ "PropertyTweener",
+ "QuadMesh",
+ "QuadOccluder3D",
+ "Quaternion",
+ "RandomNumberGenerator",
+ "Range",
+ "RayCast2D",
+ "RayCast3D",
+ "RDAttachmentFormat",
+ "RDFramebufferPass",
+ "RDPipelineColorBlendStateAttachment",
+ "RDPipelineColorBlendState",
+ "RDPipelineDepthStencilState",
+ "RDPipelineMultisampleState",
+ "RDPipelineRasterizationState",
+ "RDPipelineSpecializationConstant",
+ "RDSamplerState",
+ "RDShaderFile",
+ "RDShaderSource",
+ "RDShaderSPIRV",
+ "RDTextureFormat",
+ "RDTextureView",
+ "RDUniform",
+ "RDVertexAttribute",
+ "Rect2i",
+ "Rect2",
+ "RectangleShape2D",
+ "RefCounted",
+ "ReferenceRect",
+ "ReflectionProbe",
+ "RemoteTransform2D",
+ "RemoteTransform3D",
+ "RenderingDevice",
+ "RenderingServer",
+ "ResourceFormatLoader",
+ "ResourceFormatSaver",
+ "ResourceImporter",
+ "ResourceLoader",
+ "ResourcePreloader",
+ "ResourceSaver",
+ "ResourceUID",
+ "Resource",
+ "RibbonTrailMesh",
+ "RichTextEffect",
+ "RichTextLabel",
+ "RID",
+ "RigidBody2D",
+ "RigidBody3D",
+ "RootMotionView",
+ "SceneState",
+ "SceneTreeTimer",
+ "SceneTree",
+ "ScriptCreateDialog",
+ "ScriptEditorBase",
+ "ScriptEditor",
+ "ScriptExtension",
+ "ScriptLanguageExtension",
+ "ScriptLanguage",
+ "Script",
+ "ScrollBar",
+ "ScrollContainer",
+ "SegmentShape2D",
+ "Semaphore",
+ "SeparationRayShape2D",
+ "SeparationRayShape3D",
+ "Separator",
+ "ShaderGlobalsOverride",
+ "ShaderInclude",
+ "ShaderMaterial",
+ "Shader",
+ "Shape2D",
+ "Shape3D",
+ "ShapeCast2D",
+ "ShapeCast3D",
+ "Shortcut",
+ "Signal",
+ "Skeleton2D",
+ "Skeleton3D",
+ "SkeletonIK3D",
+ "SkeletonModification2DCCDIK",
+ "SkeletonModification2DFABRIK",
+ "SkeletonModification2DJiggle",
+ "SkeletonModification2DLookAt",
+ "SkeletonModification2DPhysicalBones",
+ "SkeletonModification2DStackHolder",
+ "SkeletonModification2DTwoBoneIK",
+ "SkeletonModification2D",
+ "SkeletonModification3DCCDIK",
+ "SkeletonModification3DFABRIK",
+ "SkeletonModification3DJiggle",
+ "SkeletonModification3DLookAt",
+ "SkeletonModification3DStackHolder",
+ "SkeletonModification3DTwoBoneIK",
+ "SkeletonModification3D",
+ "SkeletonModificationStack2D",
+ "SkeletonModificationStack3D",
+ "SkeletonProfileHumanoid",
+ "SkeletonProfile",
+ "SkinReference",
+ "Skin",
+ "Sky",
+ "SliderJoint3D",
+ "Slider",
+ "SoftBody3D",
+ "SphereMesh",
+ "SphereOccluder3D",
+ "SphereShape3D",
+ "SpinBox",
+ "SplitContainer",
+ "SpotLight3D",
+ "SpringArm3D",
+ "Sprite2D",
+ "Sprite3D",
+ "SpriteBase3D",
+ "SpriteFrames",
+ "StandardMaterial3D",
+ "StaticBody2D",
+ "StaticBody3D",
+ "StreamPeerBuffer",
+ "StreamPeerExtension",
+ "StreamPeerGZIP",
+ "StreamPeerTCP",
+ "StreamPeerTLS",
+ "StreamPeer",
+ "StringName",
+ "String",
+ "StyleBoxEmpty",
+ "StyleBoxFlat",
+ "StyleBoxLine",
+ "StyleBoxTexture",
+ "StyleBox",
+ "SubViewportContainer",
+ "SubViewport",
+ "SurfaceTool",
+ "SyntaxHighlighter",
+ "SystemFont",
+ "TabBar",
+ "TabContainer",
+ "TCPServer",
+ "TextEdit",
+ "TextLine",
+ "TextMesh",
+ "TextParagraph",
+ "TextServerDummy",
+ "TextServerExtension",
+ "TextServerManager",
+ "TextServer",
+ "Texture2DArray",
+ "Texture2D",
+ "Texture3D",
+ "TextureButton",
+ "TextureLayered",
+ "TextureProgressBar",
+ "TextureRect",
+ "Texture",
+ "ThemeDB",
+ "Theme",
+ "Thread",
+ "TileData",
+ "TileMapPattern",
+ "TileMap",
+ "TileSetAtlasSource",
+ "TileSetScenesCollectionSource",
+ "TileSetSource",
+ "TileSet",
+ "Timer",
+ "Time",
+ "TorusMesh",
+ "TouchScreenButton",
+ "Transform2D",
+ "Transform3D",
+ "TranslationServer",
+ "Translation",
+ "TreeItem",
+ "Tree",
+ "TriangleMesh",
+ "TubeTrailMesh",
+ "Tweener",
+ "Tween",
+ "UDPServer",
+ "UndoRedo",
+ "Variant",
+ "VBoxContainer",
+ "Vector2i",
+ "Vector2",
+ "Vector3i",
+ "Vector3",
+ "Vector4i",
+ "Vector4",
+ "VehicleBody3D",
+ "VehicleWheel3D",
+ "VFlowContainer",
+ "VideoStreamPlayer",
+ "VideoStream",
+ "ViewportTexture",
+ "Viewport",
+ "VisibleOnScreenEnabler2D",
+ "VisibleOnScreenEnabler3D",
+ "VisibleOnScreenNotifier2D",
+ "VisibleOnScreenNotifier3D",
+ "VisualInstance3D",
+ "VisualShaderNodeBillboard",
+ "VisualShaderNodeBooleanConstant",
+ "VisualShaderNodeBooleanParameter",
+ "VisualShaderNodeClamp",
+ "VisualShaderNodeColorConstant",
+ "VisualShaderNodeColorFunc",
+ "VisualShaderNodeColorOp",
+ "VisualShaderNodeColorParameter",
+ "VisualShaderNodeComment",
+ "VisualShaderNodeCompare",
+ "VisualShaderNodeConstant",
+ "VisualShaderNodeCubemapParameter",
+ "VisualShaderNodeCubemap",
+ "VisualShaderNodeCurveTexture",
+ "VisualShaderNodeCurveXYZTexture",
+ "VisualShaderNodeCustom",
+ "VisualShaderNodeDerivativeFunc",
+ "VisualShaderNodeDeterminant",
+ "VisualShaderNodeDistanceFade",
+ "VisualShaderNodeDotProduct",
+ "VisualShaderNodeExpression",
+ "VisualShaderNodeFaceForward",
+ "VisualShaderNodeFloatConstant",
+ "VisualShaderNodeFloatFunc",
+ "VisualShaderNodeFloatOp",
+ "VisualShaderNodeFloatParameter",
+ "VisualShaderNodeFresnel",
+ "VisualShaderNodeGlobalExpression",
+ "VisualShaderNodeGroupBase",
+ "VisualShaderNodeIf",
+ "VisualShaderNodeInput",
+ "VisualShaderNodeIntConstant",
+ "VisualShaderNodeIntFunc",
+ "VisualShaderNodeIntOp",
+ "VisualShaderNodeIntParameter",
+ "VisualShaderNodeIs",
+ "VisualShaderNodeLinearSceneDepth",
+ "VisualShaderNodeMix",
+ "VisualShaderNodeMultiplyAdd",
+ "VisualShaderNodeOuterProduct",
+ "VisualShaderNodeOutput",
+ "VisualShaderNodeParameterRef",
+ "VisualShaderNodeParameter",
+ "VisualShaderNodeParticleAccelerator",
+ "VisualShaderNodeParticleBoxEmitter",
+ "VisualShaderNodeParticleConeVelocity",
+ "VisualShaderNodeParticleEmitter",
+ "VisualShaderNodeParticleEmit",
+ "VisualShaderNodeParticleMeshEmitter",
+ "VisualShaderNodeParticleMultiplyByAxisAngle",
+ "VisualShaderNodeParticleOutput",
+ "VisualShaderNodeParticleRandomness",
+ "VisualShaderNodeParticleRingEmitter",
+ "VisualShaderNodeParticleSphereEmitter",
+ "VisualShaderNodeProximityFade",
+ "VisualShaderNodeRandomRange",
+ "VisualShaderNodeRemap",
+ "VisualShaderNodeResizableBase",
+ "VisualShaderNodeSample3D",
+ "VisualShaderNodeScreenUVToSDF",
+ "VisualShaderNodeSDFRaymarch",
+ "VisualShaderNodeSDFToScreenUV",
+ "VisualShaderNodeSmoothStep",
+ "VisualShaderNodeStep",
+ "VisualShaderNodeSwitch",
+ "VisualShaderNodeTexture2DArrayParameter",
+ "VisualShaderNodeTexture2DArray",
+ "VisualShaderNodeTexture2DParameter",
+ "VisualShaderNodeTexture3DParameter",
+ "VisualShaderNodeTexture3D",
+ "VisualShaderNodeTextureParameterTriplanar",
+ "VisualShaderNodeTextureParameter",
+ "VisualShaderNodeTextureSDFNormal",
+ "VisualShaderNodeTextureSDF",
+ "VisualShaderNodeTexture",
+ "VisualShaderNodeTransformCompose",
+ "VisualShaderNodeTransformConstant",
+ "VisualShaderNodeTransformDecompose",
+ "VisualShaderNodeTransformFunc",
+ "VisualShaderNodeTransformOp",
+ "VisualShaderNodeTransformParameter",
+ "VisualShaderNodeTransformVecMult",
+ "VisualShaderNodeUVFunc",
+ "VisualShaderNodeUVPolarCoord",
+ "VisualShaderNodeVaryingGetter",
+ "VisualShaderNodeVaryingSetter",
+ "VisualShaderNodeVarying",
+ "VisualShaderNodeVec2Constant",
+ "VisualShaderNodeVec2Parameter",
+ "VisualShaderNodeVec3Constant",
+ "VisualShaderNodeVec3Parameter",
+ "VisualShaderNodeVec4Constant",
+ "VisualShaderNodeVec4Parameter",
+ "VisualShaderNodeVectorBase",
+ "VisualShaderNodeVectorCompose",
+ "VisualShaderNodeVectorDecompose",
+ "VisualShaderNodeVectorDistance",
+ "VisualShaderNodeVectorFunc",
+ "VisualShaderNodeVectorLen",
+ "VisualShaderNodeVectorOp",
+ "VisualShaderNodeVectorRefract",
+ "VisualShaderNode",
+ "VisualShader",
+ "VoxelGIData",
+ "VoxelGI",
+ "VScrollBar",
+ "VSeparator",
+ "VSlider",
+ "VSplitContainer",
+ "WeakRef",
+ "Window",
+ "WorkerThreadPool",
+ "World2D",
+ "World3D",
+ "WorldBoundaryShape2D",
+ "WorldBoundaryShape3D",
+ "WorldEnvironment",
+ "X509Certificate",
+ "XMLParser",
+ "XRAnchor3D",
+ "XRCamera3D",
+ "XRController3D",
+ "XRInterfaceExtension",
+ "XRInterface",
+ "XRNode3D",
+ "XROrigin3D",
+ "XRPose",
+ "XRPositionalTracker",
+ "XRServer"
+ );
+ }
+}
+
diff --git a/modules/openapi-generator/src/main/resources/META-INF/services/org.openapitools.codegen.CodegenConfig b/modules/openapi-generator/src/main/resources/META-INF/services/org.openapitools.codegen.CodegenConfig
index ba2d139af981..ea930aa38c86 100644
--- a/modules/openapi-generator/src/main/resources/META-INF/services/org.openapitools.codegen.CodegenConfig
+++ b/modules/openapi-generator/src/main/resources/META-INF/services/org.openapitools.codegen.CodegenConfig
@@ -32,6 +32,7 @@ org.openapitools.codegen.languages.ErlangProperCodegen
org.openapitools.codegen.languages.ErlangServerCodegen
org.openapitools.codegen.languages.FsharpFunctionsServerCodegen
org.openapitools.codegen.languages.FsharpGiraffeServerCodegen
+org.openapitools.codegen.languages.GdscriptClientCodegen
org.openapitools.codegen.languages.GoClientCodegen
org.openapitools.codegen.languages.GoEchoServerCodegen
org.openapitools.codegen.languages.GoServerCodegen
diff --git a/modules/openapi-generator/src/main/resources/gdscript/README.handlebars b/modules/openapi-generator/src/main/resources/gdscript/README.handlebars
new file mode 100644
index 000000000000..049c3946d56e
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/README.handlebars
@@ -0,0 +1,129 @@
+# {{{openAPI.info.title}}} GDScript Client
+
+{{#if appDescriptionWithNewLines}}
+{{{appDescriptionWithNewLines}}}
+{{/if}}
+
+This *Godot 4* addon was automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
+
+{{#if servers}}
+− Servers:
+{{#each servers}}
+ - [{{#if this.description}}{{this.description}}{{else}}{{this.url}}{{/if}}]({{this.url}})
+{{/each}}
+{{/if}}
+- API version: {{appVersion}}
+{{#unless hideGenerationTimestamp}}
+- Build date: {{generatedDate}}
+{{/unless}}
+- Build package: {{generatorClass}}
+{{#if infoUrl}}
+For more information, please visit [{{{infoUrl}}}]({{{infoUrl}}}).
+{{/if}}
+
+
+## Requirements.
+
+Godot `4.x`.
+
+
+## Installation & Usage
+
+Copy the files into the `addon` directory of your Godot project.
+
+Then, enable the addon in your project settings.
+
+You can now use it anywhere in your code:
+
+{{#with apiInfo}}
+{{#each apis}}
+{{#if @first}}
+{{#with operations}}
+{{#each operation}}
+{{#if @first}}
+{{>api_doc_example}}
+{{/if}}
+{{/each}}
+{{/with}}
+{{/if}}
+{{/each}}
+{{/with}}
+
+
+## Customization
+
+You can [override the templates](https://openapi-generator.tech/docs/templating/).
+
+> 1. Grab templates with `openapi-generator author template -g gdscript --library gdscript`
+> 2. Hack around
+> 3. Regenerate using `--template ` to target your custom templates dir
+
+
+## Documentation for API Endpoints
+
+All URIs are relative to *{{basePath}}*
+
+Class | Method | HTTP request | Description
+------------ | ------------- | ------------- | -------------
+{{#with apiInfo}}
+{{#each apis}}
+{{#with operations}}
+{{#each operation}}*{{classname}}* | [**{{operationIdSnakeCase}}**]({{apiDocPath}}{{classname}}.md#{{operationIdSnakeCase}}) | **{{httpMethod}}** {{path}} | {{#if summary}}{{summary}}{{/if}}
+{{/each}}
+{{/with}}
+{{/each}}
+{{/with}}
+
+
+## Documentation For Models
+
+{{#each models}}
+{{#with model}}
+- [{{{classname}}}]({{modelDocPath}}{{{classname}}}.md)
+{{/with}}
+{{/each}}
+
+
+## Documentation For Authorization
+
+{{#unless authMethods}}
+ All endpoints do not require authorization.
+{{/unless}}
+{{#each authMethods}}
+{{#if @last}} Authentication schemes defined for the API:{{/if}}
+## {{{name}}}
+
+{{#if isApiKey}}
+- **Type**: API key
+- **API key parameter name**: {{{keyParamName}}}
+- **Location**: {{#if isKeyInQuery}}URL query string{{/if}}{{#if isKeyInHeader}}HTTP header{{/if}}
+{{/if}}
+{{#if isBasic}}
+{{#if isBasicBasic}}
+- **Type**: HTTP basic authentication
+{{/if}}
+{{#if isBasicBearer}}
+- **Type**: Bearer authentication{{#if bearerFormat}} ({{{bearerFormat}}}){{/if}}
+{{/if}}
+{{#if isHttpSignature}}
+- **Type**: HTTP signature authentication
+{{/if}}
+{{/if}}
+{{#if isOAuth}}
+- **Type**: OAuth
+- **Flow**: {{{flow}}}
+- **Authorization URL**: {{{authorizationUrl}}}
+- **Scopes**: {{#unless scopes}}N/A{{/unless}}
+{{#each scopes}} - **{{{scope}}}**: {{#if description}}{{{description}}}{{/if}}
+{{/each}}
+{{/if}}
+
+{{/each}}
+
+
+## Troubleshooting
+
+### `TLS handshake error: -9984`
+
+https://github.com/godotengine/godot/issues/59080#issuecomment-1065973210
+
diff --git a/modules/openapi-generator/src/main/resources/gdscript/README.md b/modules/openapi-generator/src/main/resources/gdscript/README.md
new file mode 100644
index 000000000000..b9beac66db70
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/README.md
@@ -0,0 +1,41 @@
+In here are the `handlebars` templates used to generate the `GDScript` client.
+
+All files without the `.handlebars` extension (including this very `README.md` file) are ignored.
+
+You can copy them all (or parts) and override them as needed.
+
+
+## Domain Overview
+
+### ApiBee
+
+Base class for all Api endpoints classes.
+Holds most of the nitty-gritty.
+
+
+### ApiConfig
+
+Reusable configuration (host, port, etc.) for Apis, injected into their constructor.
+
+
+### ApiError
+
+Godot does not have an `Exception` (`try / catch`) mechanism, by design.
+
+> It actually makes _some_ sense in the volatile environment that are video games,
+> due to their gigantic amount of user inputs and userland data,
+> inherent complexity, low stakes, and entertainment value of glitches.
+
+Therefore, whenever there's trouble in paradise, we pass around an `ApiError` object. (a `RefCounted`, don't worry about garbage collection)
+
+
+### ApiResponse
+
+A wrapper for an API Response, used in callbacks.
+Holds the HTTP components of the Response, as well as the deserialized `data` (if any).
+
+
+## Extending
+
+Most classes can be configured to extend your own class.
+Override the `partials/*_parent_class.handlebars` to define them.
diff --git a/modules/openapi-generator/src/main/resources/gdscript/api.handlebars b/modules/openapi-generator/src/main/resources/gdscript/api.handlebars
new file mode 100644
index 000000000000..0a959dd0f070
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/api.handlebars
@@ -0,0 +1,206 @@
+{{>partials/api_statement_extends}}
+{{>partials/api_statement_class_name}}
+
+
+{{>partials/api_headers}}
+
+func _bzz_get_api_name() -> String:
+ return "{{classname}}"
+
+{{#with operations}}
+{{#each operation}}
+
+{{#if isDeprecated}}
+# /!. DEPRECATED
+{{/if}}
+# Operation {{{operationId}}} → {{{httpMethod}}} {{{path}}}
+{{#if summary}}
+# {{{summary}}}
+{{/if}}
+{{#if description}}
+#
+# {{{description}}}
+{{/if}}
+{{#if notes}}
+#
+# {{{notes}}}
+{{/if}}
+func {{operationIdSnakeCase}}(
+{{>partials/api_method_params}}
+):
+{{#if isDeprecated}}
+ push_warning("Usage of `{{operationIdSnakeCase}}()` is deprecated.")
+{{/if}}
+
+ {{#each allParams}}
+ {{#if hasValidation}}
+ # Validate param `{{paramName}}` constraints
+ {{#if maxLength}}
+ {{#if isString}}
+ if ({{paramName}} is String) and {{paramName}}.length() > {{maxLength}}:
+ var error := {{>partials/api_error_class_name}}.new()
+ #error.internal_code = ERR_INVALID_PARAMETER
+ error.identifier = "{{operationIdSnakeCase}}.param.validation.max_length"
+ error.message = "Invalid length for `{{paramName}}`, must be smaller than or equal to {{maxLength}}."
+ on_failure.call(error)
+ return
+ {{/if}}
+ {{/if}}
+ {{#if minLength}}
+ {{#if isString}}
+ if ({{paramName}} is String) and {{paramName}}.length() < {{minLength}}:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.identifier = "{{operationIdSnakeCase}}.param.validation.min_length"
+ error.message = "Invalid length for `{{paramName}}`, must be greater than or equal to {{minLength}}."
+ on_failure.call(error)
+ return
+ {{/if}}
+ {{/if}}
+ {{#if maximum}}
+ {{! isNumeric / isNumber yields false yet isLong yields true }}
+ {{! not sure if bug 'cause of handlebars or not ; let's skip }}
+ {{!#if isNumeric}}
+ if {{paramName}} >{{#if exclusiveMaximum}}={{/if}} {{maximum}}:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.identifier = "{{operationIdSnakeCase}}.param.validation.maximum"
+ error.message = "Invalid value for `{{paramName}}`, must be smaller than{{#unless exclusiveMaximum}} or equal to{{/unless}} {{maximum}}."
+ on_failure.call(error)
+ return
+ {{!/if}}
+ {{/if}}
+ {{#if minimum}}
+ {{!#if isNumeric}}
+ if {{paramName}} <{{#if exclusiveMinimum}}={{/if}} {{minimum}}:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.identifier = "{{operationIdSnakeCase}}.param.validation.minimum"
+ error.message = "Invalid value for `{{paramName}}`, must be greater than{{#unless exclusiveMinimum}} or equal to{{/unless}} {{minimum}}."
+ on_failure.call(error)
+ return
+ {{!/if}}
+ {{/if}}
+ {{#if maxItems}}
+ {{#if isArray}}
+ if ({{paramName}} is Array) and {{paramName}}.size() > {{maxItems}}:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.identifier = "{{operationIdSnakeCase}}.param.validation.max_items"
+ error.message = "Invalid array size for `{{paramName}}`, must hold at most {{maxItems}} elements."
+ on_failure.call(error)
+ return
+ {{/if}}
+ {{/if}}
+ {{#if minItems}}
+ {{#if isArray}}
+ if ({{paramName}} is Array) and {{paramName}}.size() < {{minItems}}:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.identifier = "{{operationIdSnakeCase}}.param.validation.min_items"
+ error.message = "Invalid array size for `{{paramName}}`, must hold at least {{minItems}} elements."
+ on_failure.call(error)
+ return
+ {{/if}}
+ {{/if}}
+ {{#if pattern}}
+ var bzz_{{paramName}}_regex := RegEx.new()
+ {{! These regex trimming shenanigans will fail if regex has flags }}
+ {{! A solution would be to use another RegEx to extract that data from the pattern ? }}
+ bzz_{{paramName}}_regex.compile("{{{pattern}}}".trim_prefix('/').trim_suffix('/'))
+ if not bzz_{{paramName}}_regex.search(str({{paramName}})):
+ var error := {{>partials/api_error_class_name}}.new()
+ error.identifier = "{{operationIdSnakeCase}}.param.validation.pattern"
+ error.message = "Invalid value for `{{paramName}}`, must conform to the pattern `{{{pattern}}}`."
+ on_failure.call(error)
+ return
+ {{/if}}
+
+ {{/if}}
+ {{/each}}
+ # Convert the String HTTP method to a Constant Godot understands
+ var bzz_method := self._bzz_convert_http_method("{{httpMethod}}")
+
+ # Compute the URL path to the API resource
+ var bzz_path := "{{{contextPath}}}{{{path}}}"{{#each pathParams}}.replace("{" + "{{baseName}}" + "}", _bzz_urlize_path_param({{{paramName}}})){{/each}}
+
+ # Collect the headers
+ var bzz_headers := Dictionary()
+ {{#each headerParams}}
+ bzz_headers["{{baseName}}"] = {{paramName}}
+ {{/each}}
+ {{#if consumes}}
+ var bzz_mimes_consumable_by_server := [{{#each consumes}}'{{{mediaType}}}'{{#unless @last}}, {{/unless}}{{/each}}]
+ var bzz_found_producible_mime := false
+ for bzz_mime in BZZ_PRODUCIBLE_CONTENT_TYPES:
+ if bzz_mime in bzz_mimes_consumable_by_server:
+ bzz_headers["Content-Type"] = bzz_mime
+ bzz_found_producible_mime = true
+ break
+ if not bzz_found_producible_mime:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.identifier = "{{operationIdSnakeCase}}.headers.content_type"
+ error.message = "That endpoint only accepts %s as content type(s) and none are supported by this client."
+ on_failure.call(error)
+ return
+ {{/if}}
+ {{#if produces}}
+ var bzz_mimes_produced_by_server := [{{#each produces}}'{{{mediaType}}}'{{#unless @last}}, {{/unless}}{{/each}}]
+ for bzz_mime in BZZ_CONSUMABLE_CONTENT_TYPES:
+ if bzz_mime in bzz_mimes_produced_by_server:
+ bzz_headers["Accept"] = bzz_mime
+ break
+ {{/if}}
+
+ # Collect the query parameters
+ # Note: we do not support multiple values for a single param (for now), nor arrays
+ var bzz_query := Dictionary()
+ {{#each queryParams}}
+ bzz_query["{{baseName}}"] = {{paramName}}
+ {{/each}}
+
+ var bzz_body = null
+ {{#if bodyParams}}
+ {{#each bodyParams}}
+ {{! What should happen here when there are multiple body params? for now last wins }}
+ bzz_body = {{paramName}}
+ {{/each}}
+ {{/if}}
+ {{#if formParams}}
+ bzz_body = Dictionary()
+ {{#each formParams}}
+ bzz_body["{{paramName}}"] = {{paramName}}
+ {{/each}}
+ {{/if}}
+
+ self._bzz_request(
+ bzz_method, bzz_path, bzz_headers, bzz_query, bzz_body,
+ func(bzz_response):
+{{#with returnProperty}}
+ {{#if isArray}}
+ bzz_response.data = {{>partials/complex_type}}.bzz_denormalize_multiple(bzz_response.data)
+ {{else if isModel}}
+ bzz_response.data = {{>partials/data_type}}.bzz_denormalize_single(bzz_response.data)
+ {{/if}}
+{{/with}}
+ on_success.call(bzz_response)
+ ,
+ func(bzz_error):
+ on_failure.call(bzz_error)
+ , # ざわ‥
+ )
+
+
+func {{operationIdSnakeCase}}_threaded(
+{{>partials/api_method_params}}
+) -> Thread:
+ var bzz_thread := Thread.new()
+ var bzz_callable := Callable(self, "{{operationIdSnakeCase}}")
+ bzz_callable.bind(
+ {{#each allParams}}
+ {{paramName}},
+ {{/each}}
+ on_success,
+ on_failure,
+ )
+ bzz_thread.start(bzz_callable)
+ return bzz_thread
+
+{{/each}}
+
+{{/with}}
diff --git a/modules/openapi-generator/src/main/resources/gdscript/api_doc.handlebars b/modules/openapi-generator/src/main/resources/gdscript/api_doc.handlebars
new file mode 100644
index 000000000000..4a7f40b5d7b6
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/api_doc.handlebars
@@ -0,0 +1,64 @@
+
+# {{{classname}}} { #{{classname}} }
+{{#if description}}{{description}}{{/if}}
+
+All URIs are relative to *{{basePath}}*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+{{#with operations}}
+{{#each operation}}
+[**{{operationIdSnakeCase}}**](#{{operationIdSnakeCase}}) | **{{httpMethod}}** `{{path}}` | {{#if summary}}{{summary}}{{/if}}
+{{/each}}
+{{/with}}
+
+{{#with operations}}
+{{#each operation}}
+# **{{{operationIdSnakeCase}}}** { #{{{operationIdSnakeCase}}} }
+
+
+> `{{operationIdSnakeCase}}({{#each allParams}}{{paramName}}{{#if required}}{{#if dataType}}: {{{dataType}}}{{/if}}{{/if}}{{#unless required}} = {{#if defaultValue}}{{{defaultValue}}}{{/if}}{{#unless defaultValue}}null{{/unless}}{{/unless}},{{/each}} on_success: Callable, on_failure: Callable)`
+
+{{#if summary}}{{{summary}}}{{/if}}
+
+{{#if notes}}{{{notes}}}{{/if}}
+
+### Example
+
+{{#if hasAuthMethods}}
+{{#each authMethods}}
+{{#if isBasic}}
+{{#if isBasicBasic}}
+* Basic Authentication (`{{name}}`)
+{{/if}}
+{{#if isBasicBearer}}
+* Bearer{{#if bearerFormat}} ({{{bearerFormat}}}){{/if}} Authentication (`{{name}}`)
+{{/if}}
+{{/if}}
+{{#if isApiKey}}
+* Api Key Authentication (`{{name}}`)
+{{/if}}
+{{#if isOAuth}}
+* OAuth Authentication (`{{name}}`)
+{{/if}}
+{{/each}}
+{{/if}}
+
+{{> api_doc_example }}
+
+{{/each}}
+
+### Authorization
+
+{{#each authMethods}}
+[{{{name}}}](../README.md#{{name}}){{#unless @last}}, {{/unless}}
+{{else}}
+No authorization required.
+{{/each}}
+
+[[Back to top]](#__pageTop) \
+[[Back to API list]](../README.md#documentation-for-api-endpoints) \
+[[Back to Model list]](../README.md#documentation-for-models) \
+[[Back to README]](../README.md) \
+
+{{/with}}
diff --git a/modules/openapi-generator/src/main/resources/gdscript/api_doc_example.handlebars b/modules/openapi-generator/src/main/resources/gdscript/api_doc_example.handlebars
new file mode 100644
index 000000000000..975f6d9d66a0
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/api_doc_example.handlebars
@@ -0,0 +1,45 @@
+```gdscript
+
+# Customize configuration
+var config := {{>partials/api_config_class_name}}.new()
+config.host = "localhost"
+config.port = 8080
+#config.tls_enabled = true
+#config.trusted_chain = preload("res://my_cert_chain.crt")
+
+# Instantiate the api
+var api = {{{classname}}}.new(config)
+# You can also provide your own HTTPClient, to re-use it across apis.
+#var api = {{{classname}}}.new(config, client)
+
+{{#each bodyParams}}
+{{#if dataType}}
+{{#if isModel}}
+var {{paramName}} = {{dataType}}.new()
+# … fill model {{paramName}} with data
+{{/if}}
+{{/if}}
+{{/each}}
+
+# Invoke an endpoint
+api.{{{operationIdSnakeCase}}}(
+{{#each allParams}}
+ # {{paramName}}{{#if dataType}}: {{dataType}}{{/if}}{{#if defaultValue}} = {{{defaultValue}}}{{/if}}{{#if example}} Eg: {{{example}}}{{/if}}
+ {{~#if description}}
+
+ # {{{description}}}{{/if}}
+ {{paramName}},
+{{/each}}
+ # On Success
+ func(response):{{#with returnProperty}} # response is {{>partials/api_response_class_name}}{{/with}}
+ prints("Success!", "{{operationIdSnakeCase}}", response)
+ {{#with returnProperty}}assert(response.data is {{>partials/complex_type}}){{/with}}
+ pass # do things, make stuff
+ ,
+ # On Error
+ func(error): # error is {{>partials/api_error_class_name}}
+ push_error(str(error))
+ ,
+)
+
+```
diff --git a/modules/openapi-generator/src/main/resources/gdscript/core/ApiBee.handlebars b/modules/openapi-generator/src/main/resources/gdscript/core/ApiBee.handlebars
new file mode 100644
index 000000000000..4cc521764df3
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/core/ApiBee.handlebars
@@ -0,0 +1,502 @@
+extends {{>partials/api_base_parent_class}}
+class_name {{>partials/api_base_class_name}}
+
+{{>partials/disclaimer_autogenerated}}
+
+# Base class for all generated API endpoints
+# ==========================================
+#
+# Every property/method defined here may collide with userland,
+# so these are all listed and excluded in our CodeGen Java file.
+# We want to keep the amount of renaming to a minimum, though.
+# Therefore, we use the _bzz_ prefix, even if awkward.
+
+
+const BZZ_CONTENT_TYPE_TEXT := "text/plain"
+const BZZ_CONTENT_TYPE_HTML := "text/html"
+const BZZ_CONTENT_TYPE_JSON := "application/json"
+const BZZ_CONTENT_TYPE_FORM := "application/x-www-form-urlencoded"
+const BZZ_CONTENT_TYPE_JSONLD := "application/json+ld" # unsupported (for now)
+const BZZ_CONTENT_TYPE_XML := "application/xml" # unsupported (for now)
+
+# From this client's point of view.
+# Adding a content type here won't magically make the client support it, but you may reorder.
+# These are sorted by decreasing preference. (first → preferred)
+const BZZ_PRODUCIBLE_CONTENT_TYPES := [
+ BZZ_CONTENT_TYPE_JSON,
+ BZZ_CONTENT_TYPE_FORM,
+]
+
+# From this client's point of view.
+# Adding a content type here won't magically make the client support it, but you may reorder.
+# These are sorted by decreasing preference. (first → preferred)
+const BZZ_CONSUMABLE_CONTENT_TYPES := [
+ BZZ_CONTENT_TYPE_JSON,
+]
+
+
+# Godot's HTTP Client this Api instance is using.
+# If none was set (by you), we'll lazily make one.
+var _bzz_client: HTTPClient:
+ set(value):
+ _bzz_client = value
+ get:
+ if not _bzz_client:
+ _bzz_client = HTTPClient.new()
+ return _bzz_client
+
+
+# General configuration that can be shared across Api instances for convenience.
+# If no configuration was provided, we'll lazily make one with defaults,
+# but you probably want to make your own with your own domain and scheme.
+var _bzz_config: {{>partials/api_config_class_name}}:
+ set(value):
+ _bzz_config = value
+ get:
+ if not _bzz_config:
+ _bzz_config = {{>partials/api_config_class_name}}.new()
+ return _bzz_config
+
+
+# Useful in logs
+var _bzz_name: String:
+ get:
+ return _bzz_get_api_name()
+
+
+# Constructor, where you probably want to inject your configuration,
+# and as Godot recommends re-using HTTP clients, your client as well.
+func _init(config : {{>partials/api_config_class_name}} = null, client : HTTPClient = null):
+ if config != null:
+ self._bzz_config = config
+ if client != null:
+ self._bzz_client = client
+
+
+{{! We'll probably only use this for logging. }}
+{{! Each Api child can define its own, and it should be similar to class_name. }}
+{{! https://github.com/godotengine/godot/issues/21789 }}
+func _bzz_get_api_name() -> String:
+ return "ApiBee"
+
+
+func _bzz_next_loop_iteration():
+ # I can't find `idle_frame` in 4.0, but we probably want idle_frame here
+ return Engine.get_main_loop().process_frame
+
+
+func _bzz_connect_client_if_needed(
+ on_success: Callable, # func()
+ on_failure: Callable, # func(error: {{>partials/api_error_class_name}})
+ #finally: Callable,
+):
+ if (
+ self._bzz_client.get_status() == HTTPClient.STATUS_CONNECTED
+ or
+ self._bzz_client.get_status() == HTTPClient.STATUS_RESOLVING
+ or
+ self._bzz_client.get_status() == HTTPClient.STATUS_CONNECTING
+ or
+ self._bzz_client.get_status() == HTTPClient.STATUS_REQUESTING
+ or
+ self._bzz_client.get_status() == HTTPClient.STATUS_BODY
+ ):
+ on_success.call()
+
+ var connecting := self._bzz_client.connect_to_host(
+ self._bzz_config.host, self._bzz_config.port, self._bzz_config.tls_options
+ )
+ if connecting != OK:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.internal_code = connecting
+ error.identifier = "apibee.connect_to_host.failure"
+ error.message = "%s: failed to connect to `%s' port `%d' with error: %s" % [
+ _bzz_name, self._bzz_config.host, self._bzz_config.port,
+ _bzz_httpclient_status_string(connecting),
+ ]
+ on_failure.call(error)
+ return
+
+ # Wait until resolved and connected.
+ while (
+ self._bzz_client.get_status() == HTTPClient.STATUS_CONNECTING
+ or
+ self._bzz_client.get_status() == HTTPClient.STATUS_RESOLVING
+ ):
+ self._bzz_client.poll()
+ self._bzz_config.log_debug("Connecting…")
+ if self._bzz_config.polling_interval_ms:
+ OS.delay_msec(self._bzz_config.polling_interval_ms)
+ await _bzz_next_loop_iteration()
+
+ var connected := self._bzz_client.get_status()
+ if connected != HTTPClient.STATUS_CONNECTED:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.internal_code = connected as Error
+ error.identifier = "apibee.connect_to_host.status_failure"
+ error.message = "%s: failed to connect to `%s' port `%d' : %s" % [
+ _bzz_name, self._bzz_config.host, self._bzz_config.port,
+ _bzz_httpclient_status_string(connected),
+ ]
+ on_failure.call(error)
+ return
+
+ on_success.call()
+
+
+func _bzz_request(
+ method: int, # one of HTTPClient.METHOD_XXXXX
+ path: String,
+ headers: Dictionary,
+ query: Dictionary,
+ body, # Variant that will be serialized and sent
+ on_success: Callable, # func(response: {{>partials/api_response_class_name}})
+ on_failure: Callable, # func(error: {{>partials/api_error_class_name}})
+):
+ # This method does not handle full deserialization, it only handles decode and not denormalization.
+ # Denormalization is handled in each generated API endpoint in the on_success callable of this method.
+
+ _bzz_request_text(
+ method, path, headers, query, body,
+ func(response):
+ var mime: String = response.headers['Mime']
+ var decodedBody # Variant
+
+ # Isn't there a match/case now in Gdscript?
+ if BZZ_CONTENT_TYPE_TEXT == mime:
+ decodedBody = response.body
+ elif BZZ_CONTENT_TYPE_HTML == mime:
+ decodedBody = response.body
+ elif BZZ_CONTENT_TYPE_JSON == mime:
+ var parser := JSON.new()
+ var parsing := parser.parse(response.body)
+ if OK != parsing:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.internal_code = parsing
+ error.identifier = "apibee.decode.cannot_parse_json"
+ error.response_code = response.code
+ error.response = response
+ error.message = "%s: failed to parse JSON response at line %d.\n%s" % [
+ _bzz_name, parser.get_error_line(), parser.get_error_message()
+ ]
+ on_failure.call(error)
+ return
+ decodedBody = parser.data
+ else:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.internal_code = ERR_INVALID_DATA
+ error.identifier = "apibee.decode.mime_type_unsupported"
+ error.response_code = response.code
+ error.response = response
+ error.message = "%s: mime type `%s' is not supported (yet -- MRs welcome)" % [
+ _bzz_name, mime
+ ]
+ on_failure.call(error)
+ return
+
+ response.data = decodedBody
+ on_success.call(response)
+ ,
+ func(error):
+ on_failure.call(error)
+ ,
+ )
+
+
+func _bzz_request_text(
+ method: int, # one of HTTPClient.METHOD_XXXXX
+ path: String,
+ headers: Dictionary,
+ query: Dictionary,
+ body, # Variant that will be serialized
+ on_success: Callable, # func(response: {{>partials/api_response_class_name}})
+ on_failure: Callable, # func(error: {{>partials/api_error_class_name}})
+):
+ _bzz_connect_client_if_needed(
+ func():
+ _bzz_do_request_text(method, path, headers, query, body, on_success, on_failure)
+ ,
+ func(error):
+ on_failure.call(error)
+ ,
+ )
+
+
+func _bzz_do_request_text(
+ method: int, # one of HTTPClient.METHOD_XXXXX
+ path: String,
+ headers: Dictionary,
+ query: Dictionary,
+ body, # Variant that will be serialized
+ on_success: Callable, # func(response: {{>partials/api_response_class_name}})
+ on_failure: Callable, # func(error: {{>partials/api_error_class_name}})
+):
+
+ headers = headers.duplicate(true)
+ headers.merge(self._bzz_config.headers_base)
+ headers.merge(self._bzz_config.headers_override, true)
+
+ var body_normalized = body
+ if body is Object:
+ if body.has_method('bzz_collect_missing_properties'):
+ var missing_properties : Array = body.bzz_collect_missing_properties()
+ if missing_properties:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.identifier = "apibee.request.body.missing_properties"
+ error.message = "%s: `%s' is missing required properties %s." % [
+ _bzz_name, body.bzz_class_name, missing_properties
+ ]
+ on_failure.call(error)
+ return
+ if body.has_method('bzz_normalize'):
+ body_normalized = body.bzz_normalize()
+
+ var body_serialized := ""
+ var content_type := self._bzz_get_content_type(headers)
+ if content_type == BZZ_CONTENT_TYPE_JSON:
+ body_serialized = JSON.stringify(body_normalized)
+ elif content_type == BZZ_CONTENT_TYPE_FORM:
+ body_serialized = self._bzz_client.query_string_from_dict(body_normalized)
+ else:
+ # TODO: Handle other serialization schemes (json+ld, xml…)
+ push_warning("Unsupported content-type `%s`." % content_type)
+
+ var path_queried := path
+ var query_string := self._bzz_client.query_string_from_dict(query)
+ if query_string:
+ path_queried = "%s?%s" % [path, query_string]
+
+ {{! Godot HTTP Client expects an array of strings, not a dictionary }}
+ var headers_for_godot := Array() # of String
+ for key in headers:
+ headers_for_godot.append("%s: %s" % [key, headers[key]])
+
+ self._bzz_config.log_info("%s: REQUEST %s %s" % [_bzz_name, method, path_queried])
+ if not headers.is_empty():
+ self._bzz_config.log_debug("→ HEADERS: %s" % [str(headers)])
+ if body_serialized:
+ self._bzz_config.log_debug("→ BODY: \n%s" % [body_serialized])
+
+ var requesting := self._bzz_client.request(method, path_queried, headers_for_godot, body_serialized)
+ if requesting != OK:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.internal_code = requesting
+ error.identifier = "apibee.request.failure"
+ error.message = "%s: failed to request to path `%s'." % [
+ _bzz_name, path
+ ]
+ on_failure.call(error)
+ return
+
+ # Keep polling for as long as the request is being processed.
+ while self._bzz_client.get_status() == HTTPClient.STATUS_REQUESTING:
+ self._bzz_config.log_debug("Requesting…")
+ if self._bzz_config.polling_interval_ms:
+ OS.delay_msec(self._bzz_config.polling_interval_ms)
+ await _bzz_next_loop_iteration()
+ self._bzz_client.poll()
+
+ if not self._bzz_client.has_response():
+ var error := {{>partials/api_error_class_name}}.new()
+ error.identifier = "apibee.request.no_response"
+ error.message = "%s: request to `%s' returned no response whatsoever. (status=%d)" % [
+ _bzz_name, path, self._bzz_client.get_status(),
+ ]
+ on_failure.call(error)
+ return
+
+ var response := {{>partials/api_response_class_name}}.new()
+ #response.collect_meta_from_client(self._bzz_client) # to refactor
+ response.code = self._bzz_client.get_response_code()
+ response.headers = self._bzz_client.get_response_headers_as_dictionary()
+ # FIXME: extract from headers "Content-Type": "application/json; charset=utf-8"
+ # Perhaps use a method of {{>partials/api_response_class_name}} for this?
+ var encoding := "utf-8"
+ var mime := "application/json"
+ response.headers['Encoding'] = encoding
+ response.headers['Mime'] = mime
+
+ #response.collect_body_from_client(self._bzz_client, self._bzz_config) # to refactor
+ # TODO: cap the size of this, perhaps?
+ var response_bytes := PackedByteArray()
+
+ while self._bzz_client.get_status() == HTTPClient.STATUS_BODY:
+ var chunk = self._bzz_client.read_response_body_chunk()
+ if chunk.size() == 0: # Got nothing, wait for buffers to fill a bit.
+ if self._bzz_config.polling_interval_ms:
+ OS.delay_usec(self._bzz_config.polling_interval_ms)
+ await _bzz_next_loop_iteration()
+ else: # Yummy data has arrived
+ response_bytes = response_bytes + chunk
+ self._bzz_client.poll()
+
+ self._bzz_config.log_info("%s: RESPONSE %d (%d bytes)" % [
+ _bzz_name, response.code, response_bytes.size()
+ ])
+ if not response.headers.is_empty():
+ self._bzz_config.log_debug("→ HEADERS: %s" % str(response.headers))
+
+ var response_text: String
+ if encoding == "utf-8":
+ response_text = response_bytes.get_string_from_utf8()
+ elif encoding == "utf-16":
+ response_text = response_bytes.get_string_from_utf16()
+ elif encoding == "utf-32":
+ response_text = response_bytes.get_string_from_utf32()
+ else:
+ response_text = response_bytes.get_string_from_ascii()
+
+ if response_text:
+ self._bzz_config.log_debug("→ BODY: \n%s" % response_text)
+ response.body = response_text
+
+ if response.code >= 500:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.internal_code = ERR_PRINTER_ON_FIRE
+ error.response_code = response.code
+ error.response = response
+ error.identifier = "apibee.response.5xx"
+ error.message = "%s: request to `%s' made the server hiccup with a %d." % [
+ _bzz_name, path, response.code
+ ]
+ error.message += "\n%s" % [
+ _bzz_format_error_response(response_text)
+ ]
+ on_failure.call(error)
+ return
+ elif response.code >= 400:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.identifier = "apibee.response.4xx"
+ error.response_code = response.code
+ error.response = response
+ error.message = "%s: request to `%s' was denied with a %d." % [
+ _bzz_name, path, response.code
+ ]
+ error.message += "\n%s" % [
+ _bzz_format_error_response(response_text)
+ ]
+ on_failure.call(error)
+ return
+ elif response.code >= 300:
+ var error := {{>partials/api_error_class_name}}.new()
+ error.identifier = "apibee.response.3xx"
+ error.response_code = response.code
+ error.response = response
+ error.message = "%s: request to `%s' was redirected with a %d. We do not support redirects in that client yet." % [
+ _bzz_name, path, response.code
+ ]
+ on_failure.call(error)
+ return
+
+ # Should we close ?
+ #self._bzz_client.close()
+
+ on_success.call(response)
+
+
+func _bzz_convert_http_method(method: String) -> int:
+ match method:
+ 'GET': return HTTPClient.METHOD_GET
+ 'POST': return HTTPClient.METHOD_POST
+ 'PUT': return HTTPClient.METHOD_PUT
+ 'PATCH': return HTTPClient.METHOD_PATCH
+ 'DELETE': return HTTPClient.METHOD_DELETE
+ 'CONNECT': return HTTPClient.METHOD_CONNECT
+ 'HEAD': return HTTPClient.METHOD_HEAD
+ 'MAX': return HTTPClient.METHOD_MAX
+ 'OPTIONS': return HTTPClient.METHOD_OPTIONS
+ 'TRACE': return HTTPClient.METHOD_TRACE
+ _:
+ push_error("%s: unknown http method `%s`, assuming GET." % [
+ _bzz_name, method
+ ])
+ return HTTPClient.METHOD_GET
+
+
+func _bzz_urlize_path_param(anything) -> String:
+ var serialized := _bzz_escape_path_param(str(anything))
+ return serialized
+
+
+func _bzz_escape_path_param(value: String) -> String:
+ # TODO: escape for URL
+ return value
+
+
+func _bzz_get_content_type(headers: Dictionary) -> String:
+ if headers.has("Content-Type"):
+ return headers["Content-Type"]
+ return BZZ_PRODUCIBLE_CONTENT_TYPES[0]
+
+
+func _bzz_format_error_response(response: String) -> String:
+ # TODO: handle other (de)serialization schemes
+ var parser := JSON.new()
+ var parsing := parser.parse(response)
+ if OK != parsing:
+ return response
+ if not (parser.data is Dictionary):
+ return response
+ var s := "ERROR"
+ if parser.data.has("code"):
+ s += " %d" % parser.data['code']
+ if parser.data.has("message"):
+ s += "\n%s" % parser.data['message']
+ else:
+ return response
+ return s
+
+
+func _bzz_httpclient_status_info(status: int) -> Dictionary:
+ # At some point Godot ought to natively implement this and we won't need this "shim" anymore.
+ match status:
+ HTTPClient.STATUS_DISCONNECTED: return {
+ "name": "STATUS_DISCONNECTED",
+ "description": "Disconnected from the server."
+ }
+ HTTPClient.STATUS_RESOLVING: return {
+ "name": "STATUS_RESOLVING",
+ "description": "Currently resolving the hostname for the given URL into an IP."
+ }
+ HTTPClient.STATUS_CANT_RESOLVE: return {
+ "name": "STATUS_CANT_RESOLVE",
+ "description": "DNS failure: Can't resolve the hostname for the given URL."
+ }
+ HTTPClient.STATUS_CONNECTING: return {
+ "name": "STATUS_CONNECTING",
+ "description": "Currently connecting to server."
+ }
+ HTTPClient.STATUS_CANT_CONNECT: return {
+ "name": "STATUS_CANT_CONNECT",
+ "description": "Can't connect to the server."
+ }
+ HTTPClient.STATUS_CONNECTED: return {
+ "name": "STATUS_CONNECTED",
+ "description": "Connection established."
+ }
+ HTTPClient.STATUS_REQUESTING: return {
+ "name": "STATUS_REQUESTING",
+ "description": "Currently sending request."
+ }
+ HTTPClient.STATUS_BODY: return {
+ "name": "STATUS_BODY",
+ "description": "HTTP body received."
+ }
+ HTTPClient.STATUS_CONNECTION_ERROR: return {
+ "name": "STATUS_CONNECTION_ERROR",
+ "description": "Error in HTTP connection."
+ }
+ HTTPClient.STATUS_TLS_HANDSHAKE_ERROR: return {
+ "name": "STATUS_TLS_HANDSHAKE_ERROR",
+ "description": "Error in TLS handshake."
+ }
+ return {
+ "name": "UNKNOWN (%d)" % status,
+ "description": "Unknown HTTPClient status."
+ }
+
+
+func _bzz_httpclient_status_string(status: int) -> String:
+ var info := _bzz_httpclient_status_info(status)
+ return "%s (%s)" % [info["description"], info["name"]]
+
diff --git a/modules/openapi-generator/src/main/resources/gdscript/core/ApiConfig.handlebars b/modules/openapi-generator/src/main/resources/gdscript/core/ApiConfig.handlebars
new file mode 100644
index 000000000000..f883e95f2e50
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/core/ApiConfig.handlebars
@@ -0,0 +1,170 @@
+extends {{>partials/api_config_parent_class}}
+class_name {{>partials/api_config_class_name}}
+
+{{>partials/disclaimer_autogenerated}}
+
+# Configuration options for Api endpoints
+# =======================================
+#
+# Helps share configuration customizations across Apis:
+# - host, port & scheme
+# - extra headers (low priority, high priority)
+# - transport layer security options (TLS certificates)
+# - log level
+#
+# You probably want to make an instance of this class with your own values,
+# and feed it to each Api's constructor, before calling the Api's methods.
+#
+# Since it is a Resource, you may use `ResourceSaver.save()` and `preload()`
+# to save it and load it from file, for convenience.
+#
+
+
+# These are constant, immutable default values. Best not edit them.
+# To set different values at runtime, use the @export'ed properties below.
+const BEE_DEFAULT_HOST := "{{#if host}}{{{host}}}{{else}}localhost{{/if}}"
+const BEE_DEFAULT_PORT_HTTP := 80
+const BEE_DEFAULT_PORT_HTTPS := 443
+const BEE_DEFAULT_POLLING_INTERVAL_MS := 333 # milliseconds
+
+
+# Configuration also handles logging because it's convenient.
+enum LogLevel {
+ SILENT,
+ ERROR,
+ WARNING,
+ INFO,
+ DEBUG,
+}
+
+
+## Log level to configure verbosity.
+@export var log_level := LogLevel.WARNING
+
+{{!--
+# Not sure if this should hold the HTTPClient instance or not. Not for now.
+# Godot recommends using a single client for all requests, so it perhaps should.
+
+# Godot's HTTP Client we are using.
+# If none was set (by you), we'll lazily make one.
+var bee_client: HTTPClient:
+ set(value):
+ bee_client = value
+ get:
+ if not bee_client:
+ bee_client = HTTPClient.new()
+ return bee_client
+--}}
+
+## The host to connect to, with or without the protocol scheme.
+## Eg: "gitea.com", "https://gitea.com"
+## We toggle TLS accordingly to the provided scheme, if any.
+@export var host := BEE_DEFAULT_HOST:
+ set(value):
+ if value.begins_with("https://"):
+ tls_enabled = true
+ value = value.substr(8) # "https://".length() == 8
+ elif value.begins_with("http://"):
+ tls_enabled = false
+ value = value.substr(7) # "http://".length() == 7
+ host = value
+
+
+## Port through which the connection will be established.
+## NOTE: changing the host may change the port as well if the scheme was provided, see above.
+@export var port := BEE_DEFAULT_PORT_HTTP
+
+
+## Headers used as base for all requests made by Api instances using this config.
+## Those are the lowest priority headers, and are merged with custom headers provided in the bee_request() method call
+## as well as the headers override below, to compute the final, actually sent headers.
+@export var headers_base := {
+ # Stigmergy: everyone does what is left to do (like ants do)
+ "User-Agent": "Stigmergiac/1.0 (Godot)",
+ # For my mental health's sake, only JSON is supported for now
+ "Accept": "application/json",
+ "Content-Type": "application/json",
+}
+
+
+## High-priority headers, they will always override other headers coming from the base above or the method call.
+@export var headers_override := {}
+
+
+## Duration of sleep between poll() calls.
+@export var polling_interval_ms := BEE_DEFAULT_POLLING_INTERVAL_MS # milliseconds
+
+
+## Enable the Transport Security Layer (packet encryption, HTTPS)
+@export var tls_enabled := false:
+ set(value):
+ tls_enabled = value
+ port = BEE_DEFAULT_PORT_HTTPS if tls_enabled else BEE_DEFAULT_PORT_HTTP
+
+
+## You should preload your *.crt file (the whole chain) in here if you want TLS.
+## I usually concatenate my /etc/ssl/certs/ca-certificates.crt and webserver certs here.
+## Remember to add the *.crt file to the exports, if necessary.
+@export var trusted_chain: X509Certificate # only used if tls is enabled
+@export var common_name_override := "" # for TLSOptions
+
+
+## Dynamic accessor using the TLS properties above, but you may inject your own
+## for example if you need to use TLSOptions.client_unsafe. Best not @export this.
+var tls_options: TLSOptions:
+ set(value):
+ tls_options = value
+ get:
+ if not tls_enabled:
+ return null
+ if not tls_options:
+ tls_options = TLSOptions.client(trusted_chain, common_name_override)
+ return tls_options
+
+
+func log_error(message: String):
+ if self.log_level >= LogLevel.ERROR:
+ push_error(message)
+
+func log_warning(message: String):
+ if self.log_level >= LogLevel.WARNING:
+ push_warning(message)
+
+func log_info(message: String):
+ if self.log_level >= LogLevel.INFO:
+ print(message)
+
+func log_debug(message: String):
+ if self.log_level >= LogLevel.DEBUG:
+ print(message)
+
+
+{{#each authMethods}}
+# Authentication method `{{name}}`.
+{{#if isBasicBearer }}
+# Basic Bearer Authentication `{{bearerFormat}}`
+func set_security_{{name}}(value: String):
+ self.headers_base["Authorization"] = "Bearer %s" % value
+
+
+{{else if isApiKey }}
+# Api Key Authentication `{{keyParamName}}`
+func set_security_{{name}}(value: String):
+ {{#if isKeyInHeader }}
+ self.headers_base["{{keyParamName}}"] = value
+ {{else if isKeyInQuery }}
+ # Implementing this should be straightforward
+ log_error("Api Key in Query is not supported at the moment. (contribs welcome)")
+ {{else if isKeyInCookie }}
+ log_error("Api Key in Cookie is not supported at the moment. (contribs welcome)")
+ {{else }}
+ log_error("Unrecognized Api Key format (contribs welcome).")
+ {{/if}}
+
+
+{{else}}
+# → Skipped: not implemented in the gdscript templates. (contribs are welcome)
+
+
+{{/if}}
+{{/each}}
diff --git a/modules/openapi-generator/src/main/resources/gdscript/core/ApiError.handlebars b/modules/openapi-generator/src/main/resources/gdscript/core/ApiError.handlebars
new file mode 100644
index 000000000000..15438d3535b4
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/core/ApiError.handlebars
@@ -0,0 +1,41 @@
+extends {{>partials/api_error_parent_class}}
+class_name {{>partials/api_error_class_name}}
+
+{{>partials/disclaimer_autogenerated}}
+
+# Error wrapper provided to error callbacks
+# =========================================
+#
+# Whenever this OAS client fails to comply to your request, for any reason,
+# it will trigger the error callback, with an instance of this as parameter.
+#
+
+## Helps finding the error in the code, among other things.
+## Could be a UUID, or even a translation key, so long as it's unique.
+## Right now we're mostly using a lowercase ~namespace joined by dots. (.)
+@export var identifier := ""
+
+## A message for humans. May be multiline.
+@export var message := ""
+
+## One of Godot's ERR_XXXX, when relevant.
+@export var internal_code := OK
+
+## The HTTP response code, if any. (usually >= 400)
+## DEPRECATED: prefer reading from response object below
+@export var response_code := HTTPClient.RESPONSE_OK
+
+## The HTTP response, if any.
+@export var response: {{>partials/api_response_class_name}}
+
+
+func _to_string() -> String:
+ var s := "{{>partials/api_error_class_name}}"
+ if identifier:
+ s += " %s" % identifier
+ if message:
+ s += " %s" % message
+ if response:
+ s += "\n%s" % str(response)
+ return s
+
diff --git a/modules/openapi-generator/src/main/resources/gdscript/core/ApiResponse.handlebars b/modules/openapi-generator/src/main/resources/gdscript/core/ApiResponse.handlebars
new file mode 100644
index 000000000000..6ffc77d7890e
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/core/ApiResponse.handlebars
@@ -0,0 +1,33 @@
+extends {{>partials/api_response_parent_class}}
+class_name {{>partials/api_response_class_name}}
+
+{{>partials/disclaimer_autogenerated}}
+
+# Response wrapper provided to success callbacks
+# ==============================================
+#
+# Holds the response metadata, its body, and the deserialized model(s), if any.
+# This object is directly passed to the success callback, and in case of failure
+# is injected in the error object.
+#
+
+## Headers sent back by the server
+@export var headers := Dictionary()
+
+## The HTTP response code, if any. A constant like HTTPClient.RESPONSE_XXXX
+@export var code := 0
+
+## Raw body of this response, in String form (before deserialization)
+@export var body := ""
+
+## Deserialized body (may be pretty much any type)
+var data
+
+
+func _to_string() -> String:
+ var s := "{{>partials/api_response_class_name}}"
+ if code:
+ s += " %d" % code
+ if body:
+ s += " %s" % body
+ return s
diff --git a/modules/openapi-generator/src/main/resources/gdscript/model.handlebars b/modules/openapi-generator/src/main/resources/gdscript/model.handlebars
new file mode 100644
index 000000000000..1eeb8a0479c0
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/model.handlebars
@@ -0,0 +1,121 @@
+{{#each models}}
+{{#with model}}
+{{>partials/model_statement_extends}}
+{{>partials/model_statement_class_name}}
+
+
+{{>partials/model_headers}}
+
+
+{{#each vars}}
+{{#if deprecated}}
+# /!. DEPRECATED
+{{/if}}
+{{#if description}}
+{{! FIXME: multiline description (how?) }}
+# {{{description}}}
+{{/if}}
+{{#if isDate}}
+# (but it's actually a Date ; no timezones support in Gdscript)
+{{/if}}
+{{#if isDateTime}}
+# (but it's actually a DateTime ; no timezones support in Gdscript)
+{{/if}}
+# Required: {{#unless required}}False{{/unless}}{{#if required}}True{{/if}}
+{{#if example}}
+# Example: {{{example}}}
+{{/if}}
+# isArray: {{isArray}}
+{{#if isEnum}}
+# Allowed values: {{#with allowableValues}}{{#each values}}"{{this}}"{{#unless @last}}, {{/unless}}{{/each}}{{/with}}
+{{/if}}
+@export var {{name}}: {{>partials/data_type}}{{#if defaultValue}} = {{{defaultValue}}}{{/if}}:
+ set(value):
+{{#if deprecated}}
+ if str(value) != "":
+ push_warning("{{classname}}: property `{{name}}` is deprecated.")
+{{/if}}
+{{#if isEnum}}
+ if str(value) != "" and not (str(value) in __{{name}}__allowable__values):
+ push_error("{{classname}}: tried to set property `{{name}}` to a value that is not allowed." +
+ " Allowed values: {{#with allowableValues}}{{#each values}}`{{this}}`{{#unless @last}}, {{/unless}}{{/each}}{{/with}}")
+ return
+{{/if}}
+ __{{name}}__was__set = true
+ {{name}} = value
+{{! Flag used to only serialize what has been explicitely set. (no nullable types, anyway null might be legit) }}
+var __{{name}}__was__set := false
+{{! Store the allowed values if the property is an enum }}
+{{#if isEnum}}
+var __{{name}}__allowable__values := [
+ {{~#with allowableValues}}{{#each values}}"{{this}}"{{#unless @last}}, {{/unless}}{{/each}}{{~/with~}}
+]
+{{/if}}
+
+{{/each}}
+
+func bzz_collect_missing_properties() -> Array:
+ var bzz_missing_properties := Array()
+{{#each vars}}
+{{#if required}}
+ if not self.__{{name}}__was__set:
+ bzz_missing_properties.append("{{name}}")
+{{/if}}
+{{/each}}
+ return bzz_missing_properties
+
+
+func bzz_normalize() -> Dictionary:
+ var bzz_dictionary := Dictionary()
+{{#each vars}}
+ if self.__{{name}}__was__set:
+ bzz_dictionary["{{name}}"] = self.{{name}}
+{{/each}}
+ return bzz_dictionary
+
+
+# Won't work for JSON+LD
+{{!-- LEAKING if we specify return -> {{classname}} in func def --}}
+static func bzz_denormalize_single(from_dict: Dictionary):
+ var me := new()
+{{#each vars}}
+ if from_dict.has("{{name}}"):
+ {{#if isModel}}
+ me.{{name}} = {{>partials/complex_type}}.bzz_denormalize_single(from_dict["{{name}}"])
+ {{else if isArray}}
+ {{#if mostInnerItems.isModel}}
+ me.{{name}} = {{>partials/complex_type}}.bzz_denormalize_multiple(from_dict["{{name}}"])
+ {{else}}
+ me.{{name}} = from_dict["{{name}}"]
+ {{/if}}
+ {{else}}
+ me.{{name}} = from_dict["{{name}}"]
+ {{/if}}
+{{/each}}
+ return me
+
+
+# Won't work for JSON+LD
+{{!-- LEAKING if we specify return -> {{classname}} in func def --}}
+static func bzz_denormalize_multiple(from_array: Array):
+ var mes := Array()
+ for element in from_array:
+ if element is Array:
+ mes.append(bzz_denormalize_multiple(element))
+ elif element is Dictionary:
+ # TODO: perhaps check first if it looks like a match or an intermediate container
+ mes.append(bzz_denormalize_single(element))
+ else:
+ mes.append(element)
+ return mes
+
+{{!-- UNUSED
+func bzz_normalize_fully() -> Dictionary:
+ return {
+{{#each vars}}
+ "{{name}}": self.{{name}},
+{{/each}}
+ }
+--}}
+{{/with}}
+{{/each}}
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/README.md b/modules/openapi-generator/src/main/resources/gdscript/partials/README.md
new file mode 100644
index 000000000000..fcd63a0bd53f
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/README.md
@@ -0,0 +1,10 @@
+**Partials** are bits of code that we reuse through templates,
+or use once but provide anyway in order to make template customization easier.
+
+For example, if you only want to change the utmost parent class of API classes,
+you may override `api_bee_parent_class.handlebars` in this directory.
+
+Note that these are probably not registered as actual partials to Handlebars,
+so they are _pseuds-partials_ and won't allow recursion.
+
+> _May the fork be with you, always._
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/api_base_class_name.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/api_base_class_name.handlebars
new file mode 100644
index 000000000000..08057a5269b3
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/api_base_class_name.handlebars
@@ -0,0 +1 @@
+{{coreNamePrefix}}ApiBee{{coreNameSuffix}}
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/api_base_parent_class.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/api_base_parent_class.handlebars
new file mode 100644
index 000000000000..bd5a5e369db0
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/api_base_parent_class.handlebars
@@ -0,0 +1,8 @@
+{{!--
+Override this template to let Apis inherit from your own desired class.
+You can for example use Node here of you want to use Apis as Autoloads,
+or provide the class_name of your own custom class, or even a quoted filepath.
+Anything that goes after the `extends` statement will work.
+TODO: would be nice to be able to customize this parent class from CLI.
+--}}
+RefCounted
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/api_config_class_name.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/api_config_class_name.handlebars
new file mode 100644
index 000000000000..3532f4f17337
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/api_config_class_name.handlebars
@@ -0,0 +1 @@
+{{coreNamePrefix}}ApiConfig{{coreNameSuffix}}
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/api_config_parent_class.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/api_config_parent_class.handlebars
new file mode 100644
index 000000000000..8c1c5ab56408
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/api_config_parent_class.handlebars
@@ -0,0 +1,6 @@
+{{!--
+Override this template to let config inherit from your own desired class.
+It's probably best to use a descendant of Resource here (@export is used).
+TODO: would be neat to be able to customize this parent class from CLI.
+--}}
+Resource
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/api_error_class_name.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/api_error_class_name.handlebars
new file mode 100644
index 000000000000..f38073b6e89f
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/api_error_class_name.handlebars
@@ -0,0 +1 @@
+{{coreNamePrefix}}ApiError{{coreNameSuffix}}
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/api_error_parent_class.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/api_error_parent_class.handlebars
new file mode 100644
index 000000000000..74e340b6b798
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/api_error_parent_class.handlebars
@@ -0,0 +1,6 @@
+{{!--
+Override this template to let error inherit from your own desired class.
+It's probably best to use a descendant of Resource here (@export is used).
+TODO: would be cool to be able to customize this parent class from CLI.
+--}}
+Resource
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/api_headers.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/api_headers.handlebars
new file mode 100644
index 000000000000..ade76368be55
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/api_headers.handlebars
@@ -0,0 +1,4 @@
+{{>partials/disclaimer_autogenerated}}
+
+# API {{classname}}
+# Instantiate this object and use it to make requests to the API.
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/api_method_params.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/api_method_params.handlebars
new file mode 100644
index 000000000000..9303a0c31002
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/api_method_params.handlebars
@@ -0,0 +1,9 @@
+ {{#each allParams}}
+ # {{paramName}}{{#if dataType}}: {{dataType}}{{/if}}{{#if defaultValue}} = {{{defaultValue}}}{{/if}}{{#if example}} Eg: {{{example}}}{{/if}}
+ {{~#if description}}
+
+ # {{{description}}}{{/if}}
+ {{paramName}}{{#if required}}{{#if dataType}}: {{{dataType}}}{{/if}}{{/if}}{{#unless required}} = {{#if defaultValue}}{{{defaultValue}}}{{/if}}{{#unless defaultValue}}null{{/unless}}{{/unless}},
+ {{/each}}
+ on_success: Callable = Callable(), # func(response: {{>partials/api_response_class_name}})
+ on_failure: Callable = Callable(), # func(error: {{>partials/api_error_class_name}})
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/api_response_class_name.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/api_response_class_name.handlebars
new file mode 100644
index 000000000000..a5390bde706d
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/api_response_class_name.handlebars
@@ -0,0 +1 @@
+{{coreNamePrefix}}ApiResponse{{coreNameSuffix}}
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/api_response_parent_class.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/api_response_parent_class.handlebars
new file mode 100644
index 000000000000..021cd88b1d1b
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/api_response_parent_class.handlebars
@@ -0,0 +1,6 @@
+{{!--
+Override this template to let response inherit from your own desired class.
+It's probably best to use a descendant of Resource here (@export is used).
+TODO: would be cool to be able to customize this parent class from CLI.
+--}}
+Resource
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/api_statement_class.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/api_statement_class.handlebars
new file mode 100644
index 000000000000..5c3f55515a9e
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/api_statement_class.handlebars
@@ -0,0 +1 @@
+class {{classname}}
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/api_statement_class_name.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/api_statement_class_name.handlebars
new file mode 100644
index 000000000000..909ca91ef095
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/api_statement_class_name.handlebars
@@ -0,0 +1 @@
+{{>partials/statement_class_name}}
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/api_statement_extends.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/api_statement_extends.handlebars
new file mode 100644
index 000000000000..1c54bc905c0d
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/api_statement_extends.handlebars
@@ -0,0 +1 @@
+extends {{>partials/api_base_class_name}}
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/complex_type.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/complex_type.handlebars
new file mode 100644
index 000000000000..4e0e28c153c9
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/complex_type.handlebars
@@ -0,0 +1,2 @@
+{{! Hotfix to ensure our complex types include the "namespace" ~}}
+{{modelNamePrefix}}{{complexType}}{{modelNameSuffix~}}
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/data_type.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/data_type.handlebars
new file mode 100644
index 000000000000..7048df07b84f
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/data_type.handlebars
@@ -0,0 +1,3 @@
+{{! Hotfix to ensure our data types include the "namespace" ~}}
+{{#if isModel}}{{modelNamePrefix}}{{{dataType}}}{{modelNameSuffix}}{{/if~}}
+{{#unless isModel}}{{{dataType}}}{{/unless~}}
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/disclaimer_autogenerated.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/disclaimer_autogenerated.handlebars
new file mode 100644
index 000000000000..0df5c9ffa785
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/disclaimer_autogenerated.handlebars
@@ -0,0 +1,5 @@
+# THIS FILE WAS AUTOMATICALLY GENERATED by the OpenAPI Generator project.
+# For more information on how to customize templates, see:
+# https://openapi-generator.tech
+# https://github.com/OpenAPITools/openapi-generator/tree/master/modules/openapi-generator/src/main/resources/gdscript
+# The OpenAPI Generator Community, © Public Domain, 2022
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/model_headers.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/model_headers.handlebars
new file mode 100644
index 000000000000..0f8264c7102e
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/model_headers.handlebars
@@ -0,0 +1,7 @@
+{{>partials/disclaimer_autogenerated}}
+
+# {{classname}} Model
+{{#if description}}
+{{! FIXME: multiline description (how?) }}
+# {{{description}}}
+{{/if}}
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/model_statement_class_name.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/model_statement_class_name.handlebars
new file mode 100644
index 000000000000..909ca91ef095
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/model_statement_class_name.handlebars
@@ -0,0 +1 @@
+{{>partials/statement_class_name}}
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/model_statement_extends.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/model_statement_extends.handlebars
new file mode 100644
index 000000000000..4249efa1f9e3
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/model_statement_extends.handlebars
@@ -0,0 +1 @@
+extends Resource
diff --git a/modules/openapi-generator/src/main/resources/gdscript/partials/statement_class_name.handlebars b/modules/openapi-generator/src/main/resources/gdscript/partials/statement_class_name.handlebars
new file mode 100644
index 000000000000..a65cc1867eeb
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/partials/statement_class_name.handlebars
@@ -0,0 +1 @@
+class_name {{classname}}
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/gdscript/utils/README.md b/modules/openapi-generator/src/main/resources/gdscript/utils/README.md
new file mode 100644
index 000000000000..81a1a49cf972
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/utils/README.md
@@ -0,0 +1,5 @@
+Utils are not part of the template.
+No need to customize them.
+
+They probably ought not be here, since this whole dir may be downloaded by generator consumers.
+Help me find the right spot for these !
diff --git a/modules/openapi-generator/src/main/resources/gdscript/utils/extract_reserved_words.py b/modules/openapi-generator/src/main/resources/gdscript/utils/extract_reserved_words.py
new file mode 100755
index 000000000000..6b1dc7dbc818
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/gdscript/utils/extract_reserved_words.py
@@ -0,0 +1,62 @@
+#!/bin/env python
+
+# Generates and prints a list of reserved words in Godot
+
+import xml.etree.ElementTree as ET
+import requests
+
+
+words_code = "" # output
+indentation = " "
+max_line_len = 119
+url = "https://raw.githubusercontent.com/godotengine/godot/master/doc/classes/%40GlobalScope.xml"
+
+xml_string = requests.get(url).content
+root = ET.fromstring(xml_string)
+
+methods_list = [] # of string
+constants_list = [] # of string
+singletons_list = [] # of string
+
+for method in root.iter('method'):
+ methods_list.append(method.attrib['name'])
+for constant in root.iter('constant'):
+ constants_list.append(constant.attrib['name'])
+for singleton in root.iter('member'):
+ singletons_list.append(singleton.attrib['name'])
+
+words_code += "%s// List generated from modules/openapi-generator/src/main/resources/gdscript/utils/extract_reserved_words.py\n" % indentation
+
+current_line = ""
+
+def new_line():
+ global current_line
+ current_line = "%s" % indentation
+
+def write_line():
+ global current_line, words_code
+ words_code += "%s\n" % current_line
+
+def add_word(word):
+ global current_line, words_code
+ words_string = "\"%s\", " % word
+ if len(current_line) + len(words_string) > max_line_len:
+ write_line()
+ new_line()
+ current_line += words_string
+
+new_line()
+
+words_code += "%s// Godot's global functions\n" % indentation
+for reserved in methods_list:
+ add_word(reserved)
+words_code += "%s// Godot's global constants\n" % indentation
+for reserved in constants_list:
+ add_word(reserved)
+words_code += "%s// Godot's singletons\n" % indentation
+for reserved in singletons_list:
+ add_word(reserved)
+
+write_line()
+
+print(words_code)
diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/gdscript/GdscriptClientCodegenModelTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/gdscript/GdscriptClientCodegenModelTest.java
new file mode 100644
index 000000000000..6eb7cde852e6
--- /dev/null
+++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/gdscript/GdscriptClientCodegenModelTest.java
@@ -0,0 +1,29 @@
+package org.openapitools.codegen.gdscript;
+
+import org.openapitools.codegen.*;
+import org.openapitools.codegen.languages.GdscriptClientCodegen;
+import io.swagger.models.*;
+import io.swagger.models.properties.*;
+
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+@SuppressWarnings("static-method")
+public class GdscriptClientCodegenModelTest {
+
+ @Test(description = "convert a simple java model")
+ public void simpleModelTest() {
+ final Model model = new ModelImpl()
+ .description("a sample model")
+ .property("id", new LongProperty())
+ .property("name", new StringProperty())
+ .required("id")
+ .required("name");
+ final DefaultCodegen codegen = new GdscriptClientCodegen();
+
+ // TODO: Complete this test.
+ //Assert.fail("Not implemented.");
+ }
+
+}
+
diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/gdscript/GdscriptClientCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/gdscript/GdscriptClientCodegenTest.java
new file mode 100644
index 000000000000..2995a45d2085
--- /dev/null
+++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/gdscript/GdscriptClientCodegenTest.java
@@ -0,0 +1,18 @@
+package org.openapitools.codegen.gdscript;
+
+import org.openapitools.codegen.languages.GdscriptClientCodegen;
+import org.testng.annotations.Test;
+
+import static org.mockito.Mockito.verify;
+
+public class GdscriptClientCodegenTest {
+
+ GdscriptClientCodegen clientCodegen = new GdscriptClientCodegen();
+
+ @Test
+ public void shouldSucceed() throws Exception {
+ // TODO: Complete this test.
+ //Assert.fail("Not implemented.");
+// verify(clientCodegen).setArtifactVersion(GdscriptClientCodegenOptionsProvider.ARTIFACT_VERSION_VALUE);
+ }
+}
diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/gdscript/GdscriptClientOptionsTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/gdscript/GdscriptClientOptionsTest.java
new file mode 100644
index 000000000000..cc55e1d1eaaf
--- /dev/null
+++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/gdscript/GdscriptClientOptionsTest.java
@@ -0,0 +1,37 @@
+package org.openapitools.codegen.gdscript;
+
+//import org.openapitools.codegen.AbstractOptionsTest;
+//import org.openapitools.codegen.CodegenConfig;
+//import org.openapitools.codegen.languages.GdscriptClientCodegen;
+//import org.openapitools.codegen.options.GdscriptClientOptionsProvider;
+//
+//import static org.mockito.Mockito.mock;
+//import static org.mockito.Mockito.verify;
+
+
+// NOTE:
+// This is commented out because it fails to use handlebars.
+// It is perhaps trivial to fix, but I could not figure it out.
+// Anyway, there's no test case in here right now, so it does not matter much.
+
+
+//public class GdscriptClientOptionsTest extends AbstractOptionsTest {
+// private final GdscriptClientCodegen codegen = mock(GdscriptClientCodegen.class, mockSettings);
+//
+// public GdscriptClientOptionsTest() {
+// super(new GdscriptClientOptionsProvider());
+// }
+//
+// @Override
+// protected CodegenConfig getCodegenConfig() {
+// return codegen;
+// }
+//
+// @SuppressWarnings("unused")
+// @Override
+// protected void verifyOptions() {
+// // TODO: Complete options using Mockito
+// // verify(codegen).someMethod(arguments)
+// }
+//}
+
diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/GdscriptClientOptionsProvider.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/GdscriptClientOptionsProvider.java
new file mode 100644
index 000000000000..2c00ea50b189
--- /dev/null
+++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/GdscriptClientOptionsProvider.java
@@ -0,0 +1,74 @@
+package org.openapitools.codegen.options;
+
+import org.openapitools.codegen.CodegenConstants;
+import org.openapitools.codegen.languages.GdscriptClientCodegen;
+
+import com.google.common.collect.ImmutableMap;
+
+import java.util.Map;
+
+public class GdscriptClientOptionsProvider implements OptionsProvider {
+
+// public static final String MODEL_PACKAGE_VALUE = "package";
+// public static final String API_PACKAGE_VALUE = "apiPackage";
+// public static final String VARIABLE_NAMING_CONVENTION_VALUE = "snake_case";
+// public static final String INVOKER_PACKAGE_VALUE = "OpenAPITools\\Client\\Php";
+// public static final String PACKAGE_NAME_VALUE = "OpenAPIToolsClient-php";
+// public static final String SRC_BASE_PATH_VALUE = "libPhp";
+// public static final String ARTIFACT_VERSION_VALUE = "1.0.0-SNAPSHOT";
+
+ public static final String SORT_PARAMS_VALUE = "false";
+ public static final String SORT_MODEL_PROPERTIES_VALUE = "false";
+ public static final String ENSURE_UNIQUE_PARAMS_VALUE = "true";
+ public static final String ALLOW_UNICODE_IDENTIFIERS_VALUE = "false";
+ public static final String PREPEND_FORM_OR_BODY_PARAMETERS_VALUE = "true";
+ public static final String LEGACY_DISCRIMINATOR_BEHAVIOR_VALUE = "true";
+ public static final String NO_ADDITIONAL_PROPERTIES_VALUE = "true";
+ public static final String ENUM_UNKNOWN_DEFAULT_CASE_VALUE = "false";
+
+ @Override
+ public String getLanguage() {
+ return "gdscript";
+ }
+
+ @Override
+ public Map createOptions() {
+ ImmutableMap.Builder builder = new ImmutableMap.Builder();
+ return builder
+
+ .put(GdscriptClientCodegen.CORE_NAME_PREFIX, GdscriptClientCodegen.CORE_NAME_PREFIX_VALUE)
+ .put(GdscriptClientCodegen.CORE_NAME_SUFFIX, GdscriptClientCodegen.CORE_NAME_SUFFIX_VALUE)
+ .put(GdscriptClientCodegen.ANTICOLLISION_PREFIX, GdscriptClientCodegen.ANTICOLLISION_PREFIX_VALUE)
+ .put(GdscriptClientCodegen.ANTICOLLISION_SUFFIX, GdscriptClientCodegen.ANTICOLLISION_SUFFIX_VALUE)
+
+ // Things we *might* need (we'll see)
+
+// .put(CodegenConstants.API_PACKAGE, API_PACKAGE_VALUE)
+// .put(PhpClientCodegen.VARIABLE_NAMING_CONVENTION, VARIABLE_NAMING_CONVENTION_VALUE)
+// .put(CodegenConstants.INVOKER_PACKAGE, INVOKER_PACKAGE_VALUE)
+// .put(PhpClientCodegen.PACKAGE_NAME, PACKAGE_NAME_VALUE)
+// .put(PhpClientCodegen.SRC_BASE_PATH, SRC_BASE_PATH_VALUE)
+// .put(CodegenConstants.ARTIFACT_VERSION, ARTIFACT_VERSION_VALUE)
+// .put(CodegenConstants.HIDE_GENERATION_TIMESTAMP, "true")
+
+ // The following is required by CodeGen
+
+ //.put(CodegenConstants.TEMPLATING_ENGINE, "handlebars")
+ .put(CodegenConstants.SORT_PARAMS_BY_REQUIRED_FLAG, SORT_PARAMS_VALUE)
+ .put(CodegenConstants.SORT_MODEL_PROPERTIES_BY_REQUIRED_FLAG, SORT_MODEL_PROPERTIES_VALUE)
+ .put(CodegenConstants.ENSURE_UNIQUE_PARAMS, ENSURE_UNIQUE_PARAMS_VALUE)
+ .put(CodegenConstants.ALLOW_UNICODE_IDENTIFIERS, ALLOW_UNICODE_IDENTIFIERS_VALUE)
+ .put(CodegenConstants.PREPEND_FORM_OR_BODY_PARAMETERS, PREPEND_FORM_OR_BODY_PARAMETERS_VALUE)
+ .put(CodegenConstants.LEGACY_DISCRIMINATOR_BEHAVIOR, LEGACY_DISCRIMINATOR_BEHAVIOR_VALUE)
+ .put(CodegenConstants.DISALLOW_ADDITIONAL_PROPERTIES_IF_NOT_PRESENT, NO_ADDITIONAL_PROPERTIES_VALUE)
+ .put(CodegenConstants.ENUM_UNKNOWN_DEFAULT_CASE, ENUM_UNKNOWN_DEFAULT_CASE_VALUE)
+
+ .build();
+ }
+
+ @Override
+ public boolean isServer() {
+ return false;
+ }
+}
+
diff --git a/modules/openapi-generator/src/test/resources/3_0/gdscript/petstore.yaml b/modules/openapi-generator/src/test/resources/3_0/gdscript/petstore.yaml
new file mode 100644
index 000000000000..41861771aadd
--- /dev/null
+++ b/modules/openapi-generator/src/test/resources/3_0/gdscript/petstore.yaml
@@ -0,0 +1,915 @@
+openapi: 3.0.0
+servers:
+ - url: 'http://petstore.swagger.io/v2'
+info:
+ description: >-
+ This is a sample server Petstore server. For this sample, you can use the api key
+ `special-key` to test the authorization filters.
+ version: 1.0.0
+ title: OpenAPI Petstore
+ license:
+ name: Apache-2.0
+ url: 'https://www.apache.org/licenses/LICENSE-2.0.html'
+tags:
+ - name: pet
+ description: Everything about your Pets
+ - name: store
+ description: Access to Petstore orders
+ - name: user
+ description: Operations about user
+paths:
+ /pet:
+ post:
+ tags:
+ - pet
+ summary: Add a new pet to the store
+ description: ''
+ operationId: addPet
+ responses:
+ '200':
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ '405':
+ description: Invalid input
+ security:
+ - petstore_auth:
+ - 'write:pets'
+ - 'read:pets'
+ requestBody:
+ $ref: '#/components/requestBodies/Pet'
+ put:
+ tags:
+ - pet
+ summary: Update an existing pet
+ description: ''
+ operationId: updatePet
+ responses:
+ '200':
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ '400':
+ description: Invalid ID supplied
+ '404':
+ description: Pet not found
+ '405':
+ description: Validation exception
+ security:
+ - petstore_auth:
+ - 'write:pets'
+ - 'read:pets'
+ requestBody:
+ $ref: '#/components/requestBodies/Pet'
+ /pet/findByStatus:
+ get:
+ tags:
+ - pet
+ summary: Finds Pets by status
+ description: Multiple status values can be provided with comma separated strings
+ operationId: findPetsByStatus
+ parameters:
+ - name: status
+ in: query
+ description: Status values that need to be considered for filter
+ required: true
+ style: form
+ explode: false
+ deprecated: true
+ schema:
+ type: array
+ items:
+ type: string
+ enum:
+ - available
+ - pending
+ - sold
+ default: available
+ responses:
+ '200':
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Pet'
+ application/json:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Pet'
+ '400':
+ description: Invalid status value
+ security:
+ - petstore_auth:
+ - 'read:pets'
+ /pet/findByTags:
+ get:
+ tags:
+ - pet
+ summary: Finds Pets by tags
+ description: >-
+ Multiple tags can be provided with comma separated strings. Use tag1,
+ tag2, tag3 for testing.
+ operationId: findPetsByTags
+ parameters:
+ - name: tags
+ in: query
+ description: Tags to filter by
+ required: true
+ style: form
+ explode: false
+ schema:
+ type: array
+ items:
+ type: string
+ responses:
+ '200':
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Pet'
+ application/json:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/Pet'
+ '400':
+ description: Invalid tag value
+ security:
+ - petstore_auth:
+ - 'read:pets'
+ deprecated: true
+ '/pet/{petId}':
+ get:
+ tags:
+ - pet
+ summary: Find pet by ID
+ description: Returns a single pet
+ operationId: getPetById
+ parameters:
+ - name: petId
+ in: path
+ description: ID of pet to return
+ required: true
+ schema:
+ type: integer
+ format: int64
+ responses:
+ '200':
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ '400':
+ description: Invalid ID supplied
+ '404':
+ description: Pet not found
+ security:
+ - api_key: []
+ post:
+ tags:
+ - pet
+ summary: Updates a pet in the store with form data
+ description: ''
+ operationId: updatePetWithForm
+ parameters:
+ - name: petId
+ in: path
+ description: ID of pet that needs to be updated
+ required: true
+ schema:
+ type: integer
+ format: int64
+ responses:
+ '405':
+ description: Invalid input
+ security:
+ - petstore_auth:
+ - 'write:pets'
+ - 'read:pets'
+ requestBody:
+ content:
+ application/x-www-form-urlencoded:
+ schema:
+ type: object
+ properties:
+ name:
+ description: Updated name of the pet
+ type: string
+ status:
+ description: Updated status of the pet
+ type: string
+ delete:
+ tags:
+ - pet
+ summary: Deletes a pet
+ description: ''
+ operationId: deletePet
+ parameters:
+ - name: api_key
+ in: header
+ required: false
+ schema:
+ type: string
+ - name: petId
+ in: path
+ description: Pet id to delete
+ required: true
+ schema:
+ type: integer
+ format: int64
+ responses:
+ '400':
+ description: Invalid pet value
+ security:
+ - petstore_auth:
+ - 'write:pets'
+ - 'read:pets'
+ '/pet/{petId}/uploadImage':
+ post:
+ tags:
+ - pet
+ summary: uploads an image
+ description: ''
+ operationId: uploadFile
+ parameters:
+ - name: petId
+ in: path
+ description: ID of pet to update
+ required: true
+ schema:
+ type: integer
+ format: int64
+ responses:
+ '200':
+ description: successful operation
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ApiResponse'
+ security:
+ - petstore_auth:
+ - 'write:pets'
+ - 'read:pets'
+ requestBody:
+ content:
+ multipart/form-data:
+ schema:
+ type: object
+ properties:
+ additionalMetadata:
+ description: Additional data to pass to server
+ type: string
+ file:
+ description: file to upload
+ type: string
+ format: binary
+ /store/inventory:
+ get:
+ tags:
+ - store
+ summary: Returns pet inventories by status
+ description: Returns a map of status codes to quantities
+ operationId: getInventory
+ responses:
+ '200':
+ description: successful operation
+ content:
+ application/json:
+ schema:
+ type: object
+ additionalProperties:
+ type: integer
+ format: int32
+ security:
+ - api_key: []
+ /store/order:
+ post:
+ tags:
+ - store
+ summary: Place an order for a pet
+ description: ''
+ operationId: placeOrder
+ responses:
+ '200':
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Order'
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Order'
+ '400':
+ description: Invalid Order
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Order'
+ description: order placed for purchasing the pet
+ required: true
+ '/store/order/{orderId}':
+ get:
+ tags:
+ - store
+ summary: Find purchase order by ID
+ description: >-
+ For valid response try integer IDs with value <= 5 or > 10. Other values
+ will generate exceptions
+ operationId: getOrderById
+ parameters:
+ - name: orderId
+ in: path
+ description: ID of pet that needs to be fetched
+ required: true
+ schema:
+ type: integer
+ format: int64
+ minimum: 1
+ maximum: 5
+ responses:
+ '200':
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Order'
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Order'
+ '400':
+ description: Invalid ID supplied
+ '404':
+ description: Order not found
+ delete:
+ tags:
+ - store
+ summary: Delete purchase order by ID
+ description: >-
+ For valid response try integer IDs with value < 1000. Anything above
+ 1000 or nonintegers will generate API errors
+ operationId: deleteOrder
+ parameters:
+ - name: orderId
+ in: path
+ description: ID of the order that needs to be deleted
+ required: true
+ schema:
+ type: string
+ responses:
+ '400':
+ description: Invalid ID supplied
+ '404':
+ description: Order not found
+ /user:
+ post:
+ tags:
+ - user
+ summary: Create user
+ description: This can only be done by the logged in user.
+ operationId: createUser
+ responses:
+ default:
+ description: successful operation
+ security:
+ - api_key: []
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/User'
+ description: Created user object
+ required: true
+ /user/createWithArray:
+ post:
+ tags:
+ - user
+ summary: Creates list of users with given input array
+ description: ''
+ operationId: createUsersWithArrayInput
+ responses:
+ default:
+ description: successful operation
+ security:
+ - api_key: []
+ requestBody:
+ $ref: '#/components/requestBodies/UserArray'
+ /user/createWithList:
+ post:
+ tags:
+ - user
+ summary: Creates list of users with given input array
+ description: ''
+ operationId: createUsersWithListInput
+ responses:
+ default:
+ description: successful operation
+ security:
+ - api_key: []
+ requestBody:
+ $ref: '#/components/requestBodies/UserArray'
+ /user/login:
+ get:
+ tags:
+ - user
+ summary: Logs user into the system
+ description: ''
+ operationId: loginUser
+ parameters:
+ - name: username
+ in: query
+ description: The user name for login
+ required: true
+ schema:
+ type: string
+ pattern: '^[a-zA-Z0-9]+[a-zA-Z0-9\.\-_]*[a-zA-Z0-9]+$'
+ - name: password
+ in: query
+ description: The password for login in clear text
+ required: true
+ schema:
+ type: string
+ responses:
+ '200':
+ description: successful operation
+ headers:
+ Set-Cookie:
+ description: >-
+ Cookie authentication key for use with the `api_key`
+ apiKey authentication.
+ schema:
+ type: string
+ example: AUTH_KEY=abcde12345; Path=/; HttpOnly
+ X-Rate-Limit:
+ description: calls per hour allowed by the user
+ schema:
+ type: integer
+ format: int32
+ X-Expires-After:
+ description: date in UTC when token expires
+ schema:
+ type: string
+ format: date-time
+ content:
+ application/xml:
+ schema:
+ type: string
+ application/json:
+ schema:
+ type: string
+ '400':
+ description: Invalid username/password supplied
+ /user/logout:
+ get:
+ tags:
+ - user
+ summary: Logs out current logged in user session
+ description: ''
+ operationId: logoutUser
+ responses:
+ default:
+ description: successful operation
+ security:
+ - api_key: []
+ '/user/{username}':
+ get:
+ tags:
+ - user
+ summary: Get user by user name
+ description: ''
+ operationId: getUserByName
+ parameters:
+ - name: username
+ in: path
+ description: The name that needs to be fetched. Use user1 for testing.
+ required: true
+ schema:
+ type: string
+ responses:
+ '200':
+ description: successful operation
+ content:
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/User'
+ application/json:
+ schema:
+ $ref: '#/components/schemas/User'
+ '400':
+ description: Invalid username supplied
+ '404':
+ description: User not found
+ put:
+ tags:
+ - user
+ summary: Updated user
+ description: This can only be done by the logged in user.
+ operationId: updateUser
+ parameters:
+ - name: username
+ in: path
+ description: name that need to be deleted
+ required: true
+ schema:
+ type: string
+ responses:
+ '400':
+ description: Invalid user supplied
+ '404':
+ description: User not found
+ security:
+ - api_key: []
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/User'
+ description: Updated user object
+ required: true
+ delete:
+ tags:
+ - user
+ summary: Delete user
+ description: This can only be done by the logged in user.
+ operationId: deleteUser
+ parameters:
+ - name: username
+ in: path
+ description: The name that needs to be deleted
+ required: true
+ schema:
+ type: string
+ responses:
+ '400':
+ description: Invalid username supplied
+ '404':
+ description: User not found
+ security:
+ - api_key: []
+ '/fake/user/{username}':
+ get:
+ tags:
+ - fake
+ summary: To test nullable required parameters
+ description: ''
+ operationId: test_nullable_required_param
+ parameters:
+ - name: username
+ in: path
+ description: The name that needs to be fetched. Use user1 for testing.
+ required: true
+ schema:
+ type: string
+ - name: dummy_required_nullable_param
+ in: header
+ description: To test nullable required parameters
+ required: true
+ schema:
+ type: string
+ nullable: true
+ - name: UPPERCASE
+ in: header
+ description: To test parameter names in upper case
+ schema:
+ type: string
+ responses:
+ '200':
+ description: successful operation
+ '400':
+ description: Invalid username supplied
+ '404':
+ description: User not found
+ '/tests/fileResponse':
+ get:
+ tags:
+ - testing
+ summary: Returns an image file
+ responses:
+ '200':
+ description: An image file
+ content:
+ image/jpeg:
+ schema:
+ type: string
+ format: binary
+ '/tests/typeTesting':
+ get:
+ tags:
+ - testing
+ summary: Route to test the TypeTesting schema
+ responses:
+ '200':
+ description: The TypeTesting response
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/TypeTesting'
+externalDocs:
+ description: Find out more about Swagger
+ url: 'http://swagger.io'
+components:
+ requestBodies:
+ UserArray:
+ content:
+ application/json:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/User'
+ description: List of user object
+ required: true
+ Pet:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ application/xml:
+ schema:
+ $ref: '#/components/schemas/Pet'
+ description: Pet object that needs to be added to the store
+ required: true
+ securitySchemes:
+ petstore_auth:
+ type: oauth2
+ flows:
+ implicit:
+ authorizationUrl: 'http://petstore.swagger.io/api/oauth/dialog'
+ scopes:
+ 'write:pets': modify pets in your account
+ 'read:pets': read your pets
+ api_key:
+ type: apiKey
+ name: api_key
+ in: header
+ schemas:
+ Order:
+ title: Pet Order
+ description: An order for a pets from the pet store
+ type: object
+ properties:
+ id:
+ type: integer
+ format: int64
+ petId:
+ type: integer
+ format: int64
+ quantity:
+ type: integer
+ format: int32
+ shipDate:
+ type: string
+ format: date-time
+ status:
+ type: string
+ description: Order Status
+ enum:
+ - placed
+ - approved
+ - delivered
+ complete:
+ type: boolean
+ default: false
+ xml:
+ name: Order
+ Category:
+ title: Pet category
+ description: A category for a pet
+ type: object
+ properties:
+ id:
+ type: integer
+ format: int64
+ name:
+ type: string
+ pattern: '^[a-zA-Z0-9]+[a-zA-Z0-9\.\-_]*[a-zA-Z0-9]+$'
+ xml:
+ name: Category
+ User:
+ title: a User
+ description: A User who is purchasing from the pet store
+ type: object
+ properties:
+ id:
+ type: integer
+ format: int64
+ username:
+ type: string
+ firstName:
+ type: string
+ lastName:
+ type: string
+ email:
+ type: string
+ password:
+ type: string
+ phone:
+ type: string
+ userStatus:
+ type: integer
+ format: int32
+ description: User Status
+ xml:
+ name: User
+ Tag:
+ title: Pet Tag
+ description: A tag for a pet
+ type: object
+ properties:
+ id:
+ type: integer
+ format: int64
+ name:
+ type: string
+ xml:
+ name: Tag
+ Pet:
+ title: a Pet
+ description: A pet for sale in the pet store
+ type: object
+ required:
+ - name
+ - photoUrls
+ properties:
+ id:
+ type: integer
+ format: int64
+ category:
+ $ref: '#/components/schemas/Category'
+ name:
+ type: string
+ example: doggie
+ photoUrls:
+ type: array
+ xml:
+ name: photoUrl
+ wrapped: true
+ items:
+ type: string
+ tags:
+ type: array
+ xml:
+ name: tag
+ wrapped: true
+ items:
+ $ref: '#/components/schemas/Tag'
+ status:
+ type: string
+ description: pet status in the store
+ deprecated: true
+ enum:
+ - available
+ - pending
+ - sold
+ xml:
+ name: Pet
+ ApiResponse:
+ title: An uploaded response
+ description: Describes the result of uploading an image resource
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ type:
+ type: string
+ message:
+ type: string
+ property_test:
+ title: A model to test various formats, e.g. UUID
+ description: A model to test various formats, e.g. UUID
+ type: object
+ properties:
+ uuid:
+ type: string
+ format: uuid
+ ActionContainer:
+ required:
+ - action
+ type: object
+ properties:
+ action:
+ allOf:
+ - $ref: '#/components/schemas/Baz'
+ - nullable: false
+ Baz:
+ description: Test handling of empty variants
+ enum:
+ - A
+ - B
+ - ""
+ type: string
+ TypeTesting:
+ description: Test handling of different field data types
+ type: object
+ required:
+ - int32
+ - int64
+ - float
+ - double
+ - string
+ - boolean
+ - uuid
+ properties:
+ int32:
+ type: integer
+ format: int32
+ int64:
+ type: integer
+ format: int64
+ float:
+ type: number
+ format: float
+ double:
+ type: number
+ format: double
+ string:
+ type: string
+ boolean:
+ type: boolean
+ uuid:
+ type: string
+ format: uuid
+ Return:
+ description: Test using keywords
+ type: object
+ properties:
+ match:
+ type: integer
+ async:
+ type: boolean
+ super:
+ type: boolean
+ OptionalTesting:
+ description: Test handling of optional and nullable fields
+ type: object
+ required:
+ - required_nonnull
+ - required_nullable
+ properties:
+ optional_nonnull:
+ type: string
+ nullable: false
+ required_nonnull:
+ type: string
+ nullable: false
+ optional_nullable:
+ type: string
+ nullable: true
+ required_nullable:
+ type: string
+ nullable: true
+ EnumArrayTesting:
+ description: Test of enum array
+ type: object
+ required:
+ - required_enums
+ properties:
+ required_enums:
+ type: array
+ items:
+ type: string
+ enum: ["A", "B", "C"]
+ ArrayRefItem:
+ description: Helper object for the array item ref test
+ type: array
+ items:
+ type: string
+ ObjectRefItem:
+ description: Helper object for the array item ref test
+ type: object
+ additionalProperties: true
+ ArrayItemRefTest:
+ description: Test handling of object reference in arrays
+ type: object
+ required:
+ - list_with_array_ref
+ - list_with_object_ref
+ properties:
+ list_with_array_ref:
+ type: array
+ items:
+ $ref: '#/components/schemas/ArrayRefItem'
+ list_with_object_ref:
+ type: array
+ items:
+ $ref: '#/components/schemas/ObjectRefItem'
diff --git a/samples/client/petstore/gdscript/.gitignore b/samples/client/petstore/gdscript/.gitignore
new file mode 100644
index 000000000000..ab9304dace02
--- /dev/null
+++ b/samples/client/petstore/gdscript/.gitignore
@@ -0,0 +1,4 @@
+# Godot 4+ specific ignores
+.godot/
+
+*.import
diff --git a/samples/client/petstore/gdscript/.gut_editor_config.json b/samples/client/petstore/gdscript/.gut_editor_config.json
new file mode 100644
index 000000000000..a334f8296b1c
--- /dev/null
+++ b/samples/client/petstore/gdscript/.gut_editor_config.json
@@ -0,0 +1,42 @@
+{
+ "background_color": "262626ff",
+ "compact_mode": false,
+ "config_file": "res://.gutconfig.json",
+ "dirs": [
+ "res://test/integration"
+ ],
+ "disable_colors": false,
+ "double_strategy": "partial",
+ "font_color": "ccccccff",
+ "font_name": "CourierPrime",
+ "font_size": 16,
+ "gut_on_top": true,
+ "hide_orphans": false,
+ "ignore_pause": false,
+ "include_subdirs": false,
+ "inner_class": null,
+ "junit_xml_file": "",
+ "junit_xml_timestamp": false,
+ "log_level": 1,
+ "opacity": 100,
+ "paint_after": 0.5,
+ "panel_options": {
+ "font_name": "CourierPrime",
+ "font_size": 30,
+ "hide_output_text": false,
+ "hide_result_tree": false,
+ "hide_settings": false,
+ "use_colors": false
+ },
+ "post_run_script": "",
+ "pre_run_script": "",
+ "prefix": "test_",
+ "selected": null,
+ "should_exit": false,
+ "should_exit_on_success": false,
+ "should_maximize": false,
+ "show_help": false,
+ "suffix": ".gd",
+ "tests": [],
+ "unit_test_name": null
+}
\ No newline at end of file
diff --git a/samples/client/petstore/gdscript/.gut_editor_shortcuts.cfg b/samples/client/petstore/gdscript/.gut_editor_shortcuts.cfg
new file mode 100644
index 000000000000..b7d0aa99782c
--- /dev/null
+++ b/samples/client/petstore/gdscript/.gut_editor_shortcuts.cfg
@@ -0,0 +1,17 @@
+[main]
+
+run_all=Object(Shortcut,"resource_local_to_scene":false,"resource_name":"","events":[Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null)
+],"script":null)
+
+run_current_script=Object(Shortcut,"resource_local_to_scene":false,"resource_name":"","events":[Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null)
+],"script":null)
+
+run_current_inner=Object(Shortcut,"resource_local_to_scene":false,"resource_name":"","events":[Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null)
+],"script":null)
+
+run_current_test=Object(Shortcut,"resource_local_to_scene":false,"resource_name":"","events":[Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null)
+],"script":null)
+
+panel_button=Object(Shortcut,"resource_local_to_scene":false,"resource_name":"","events":[Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null)
+],"script":null)
+
diff --git a/samples/client/petstore/gdscript/.gutconfig.json b/samples/client/petstore/gdscript/.gutconfig.json
new file mode 100644
index 000000000000..0ac33b54f1a0
--- /dev/null
+++ b/samples/client/petstore/gdscript/.gutconfig.json
@@ -0,0 +1,32 @@
+{
+ "background_color": null,
+ "compact_mode": null,
+ "dirs": [
+ "res://test/integration"
+ ],
+ "disable_colors": null,
+ "double_strategy": null,
+ "font_color": null,
+ "font_name": null,
+ "font_size": null,
+ "gut_on_top": null,
+ "hide_orphans": null,
+ "ignore_pause": null,
+ "include_subdirs": null,
+ "inner_class": null,
+ "junit_xml_file": null,
+ "junit_xml_timestamp": null,
+ "log_level": null,
+ "opacity": null,
+ "paint_after": null,
+ "post_run_script": null,
+ "pre_run_script": null,
+ "prefix": null,
+ "selected": null,
+ "should_exit": true,
+ "should_exit_on_success": null,
+ "should_maximize": null,
+ "suffix": null,
+ "tests": null,
+ "unit_test_name": null
+}
diff --git a/samples/client/petstore/gdscript/.openapi-generator/FILES b/samples/client/petstore/gdscript/.openapi-generator/FILES
new file mode 100644
index 000000000000..d00050b7e846
--- /dev/null
+++ b/samples/client/petstore/gdscript/.openapi-generator/FILES
@@ -0,0 +1,16 @@
+README.md
+apis/DemoPetApi.gd
+apis/DemoPetApi.md
+apis/DemoStoreApi.gd
+apis/DemoStoreApi.md
+apis/DemoUserApi.gd
+apis/DemoUserApi.md
+core/DemoApiBee.gd
+core/DemoApiConfig.gd
+core/DemoApiError.gd
+models/DemoApiResponse.gd
+models/DemoCategory.gd
+models/DemoOrder.gd
+models/DemoPet.gd
+models/DemoTag.gd
+models/DemoUser.gd
diff --git a/samples/client/petstore/gdscript/.openapi-generator/VERSION b/samples/client/petstore/gdscript/.openapi-generator/VERSION
new file mode 100644
index 000000000000..ed829dbcddec
--- /dev/null
+++ b/samples/client/petstore/gdscript/.openapi-generator/VERSION
@@ -0,0 +1 @@
+6.2.1-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/gdscript/README.md b/samples/client/petstore/gdscript/README.md
new file mode 100644
index 000000000000..1b545542c479
--- /dev/null
+++ b/samples/client/petstore/gdscript/README.md
@@ -0,0 +1,36 @@
+# Petstore GDScript Testing Client
+
+## What
+
+- [Godot] `4.x` project
+- Made for `--headless` mode
+- Returns non-zero exit code upon test failure
+- Uses [GUT] as test engine
+
+
+## Prepare the test server
+
+See https://github.com/OpenAPITools/openapi-generator/wiki/Integration-Tests
+
+> We are using the petstore docker, not the echo server for now.
+> Feel free to refactor or duplicate the sample demo to use the new echo server.
+> See `bin/configs/gdscript-petstore.yaml`.
+
+
+## Run
+
+ godot --headless --debug --path samples/client/petstore/gdscript --script addons/gut/gut_cmdln.gd
+
+The command should return a _zero_ exit code if all tests _passed_.
+You may want to add `--verbose` for more logs when debugging.
+
+
+## Update
+
+Refresh the generated files, after modifying the gdscript templates or java generator:
+
+ bin/generate-samples.sh bin/configs/gdscript-petstore.yaml
+
+
+[Godot]: https://godotengine.org
+[GUT]: https://github.com/bitwes/Gut
diff --git a/samples/client/petstore/gdscript/addons/gut/GutScene.gd b/samples/client/petstore/gdscript/addons/gut/GutScene.gd
new file mode 100644
index 000000000000..619eba7a7986
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/GutScene.gd
@@ -0,0 +1,124 @@
+extends Node2D
+# ##############################################################################
+# This is a wrapper around the normal and compact gui controls and serves as
+# the interface between gut.gd and the gui. The GutRunner creates an instance
+# of this and then this takes care of managing the different GUI controls.
+# ##############################################################################
+@onready var _normal_gui = $Normal
+@onready var _compact_gui = $Compact
+var gut = null :
+ set(val):
+ gut = val
+ _set_gut(val)
+
+
+func _ready():
+ _normal_gui.switch_modes.connect(use_compact_mode.bind(true))
+ _compact_gui.switch_modes.connect(use_compact_mode.bind(false))
+
+ _normal_gui.set_title("GUT")
+ _compact_gui.set_title("GUT")
+
+ _normal_gui.align_right()
+ _compact_gui.to_bottom_right()
+
+ use_compact_mode(false)
+
+ if(get_parent() == get_tree().root):
+ _test_running_setup()
+
+func _test_running_setup():
+ _normal_gui.get_textbox().text = "hello world, how are you doing?"
+
+# ------------------------
+# Private
+# ------------------------
+func _set_gut(val):
+ _normal_gui.set_gut(val)
+ _compact_gui.set_gut(val)
+
+ val.start_run.connect(_on_gut_start_run)
+ val.end_run.connect(_on_gut_end_run)
+ val.start_pause_before_teardown.connect(_on_gut_pause)
+ val.end_pause_before_teardown.connect(_on_pause_end)
+
+func _set_both_titles(text):
+ _normal_gui.set_title(text)
+ _compact_gui.set_title(text)
+
+
+# ------------------------
+# Events
+# ------------------------
+func _on_gut_start_run():
+ _set_both_titles('Running')
+
+func _on_gut_end_run():
+ _set_both_titles('Finished')
+
+func _on_gut_pause():
+ _set_both_titles('-- Paused --')
+
+func _on_pause_end():
+ _set_both_titles('Running')
+
+
+# ------------------------
+# Public
+# ------------------------
+func get_textbox():
+ return _normal_gui.get_textbox()
+
+
+func set_font_size(new_size):
+ return
+ var rtl = _normal_gui.get_textbox()
+ if(rtl.get('custom_fonts/normal_font') != null):
+ rtl.get('custom_fonts/bold_italics_font').size = new_size
+ rtl.get('custom_fonts/bold_font').size = new_size
+ rtl.get('custom_fonts/italics_font').size = new_size
+ rtl.get('custom_fonts/normal_font').size = new_size
+
+
+func set_font(font_name):
+ _set_all_fonts_in_rtl(_normal_gui.get_textbox(), font_name)
+
+
+func _set_font(rtl, font_name, custom_name):
+ if(font_name == null):
+ rtl.add_theme_font_override(custom_name, null)
+ else:
+ var dyn_font = FontFile.new()
+ dyn_font.load_dynamic_font('res://addons/gut/fonts/' + font_name + '.ttf')
+ rtl.add_theme_font_override(custom_name, dyn_font)
+
+
+func _set_all_fonts_in_rtl(rtl, base_name):
+ if(base_name == 'Default'):
+ _set_font(rtl, null, 'normal_font')
+ _set_font(rtl, null, 'bold_font')
+ _set_font(rtl, null, 'italics_font')
+ _set_font(rtl, null, 'bold_italics_font')
+ else:
+ _set_font(rtl, base_name + '-Regular', 'normal_font')
+ _set_font(rtl, base_name + '-Bold', 'bold_font')
+ _set_font(rtl, base_name + '-Italic', 'italics_font')
+ _set_font(rtl, base_name + '-BoldItalic', 'bold_italics_font')
+
+
+func set_default_font_color(color):
+ _normal_gui.get_textbox().set('custom_colors/default_color', color)
+
+
+func set_background_color(color):
+ _normal_gui.set_bg_color(color)
+
+
+func use_compact_mode(should=true):
+ _compact_gui.visible = should
+ _normal_gui.visible = !should
+
+
+func set_opacity(val):
+ _normal_gui.modulate.a = val
+ _compact_gui.modulate.a = val
diff --git a/samples/client/petstore/gdscript/addons/gut/GutScene.tscn b/samples/client/petstore/gdscript/addons/gut/GutScene.tscn
new file mode 100644
index 000000000000..57d7f036e392
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/GutScene.tscn
@@ -0,0 +1,16 @@
+[gd_scene load_steps=4 format=3 uid="uid://m28heqtswbuq"]
+
+[ext_resource type="Script" path="res://addons/gut/GutScene.gd" id="1_b4m8y"]
+[ext_resource type="PackedScene" uid="uid://duxblir3vu8x7" path="res://addons/gut/gui/NormalGui.tscn" id="2_j6ywb"]
+[ext_resource type="PackedScene" uid="uid://cnqqdfsn80ise" path="res://addons/gut/gui/MinGui.tscn" id="3_3glw1"]
+
+[node name="GutScene" type="Node2D"]
+script = ExtResource("1_b4m8y")
+
+[node name="Normal" parent="." instance=ExtResource("2_j6ywb")]
+
+[node name="Compact" parent="." instance=ExtResource("3_3glw1")]
+offset_left = 5.0
+offset_top = 273.0
+offset_right = 265.0
+offset_bottom = 403.0
diff --git a/samples/client/petstore/gdscript/addons/gut/LICENSE.md b/samples/client/petstore/gdscript/addons/gut/LICENSE.md
new file mode 100644
index 000000000000..a38ac231fed3
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/LICENSE.md
@@ -0,0 +1,22 @@
+The MIT License (MIT)
+=====================
+
+Copyright (c) 2018 Tom "Butch" Wesley
+
+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/samples/client/petstore/gdscript/addons/gut/UserFileViewer.gd b/samples/client/petstore/gdscript/addons/gut/UserFileViewer.gd
new file mode 100644
index 000000000000..73b6a004a947
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/UserFileViewer.gd
@@ -0,0 +1,52 @@
+extends Window
+
+@onready var rtl = $TextDisplay/RichTextLabel
+
+func _get_file_as_text(path):
+ var to_return = null
+ var f = FileAccess.open(path, FileAccess.READ)
+ if(f != null):
+ to_return = f.get_as_text()
+ else:
+ to_return = str('ERROR: Could not open file. Error code ', FileAccess.get_open_error())
+ return to_return
+
+func _ready():
+ rtl.clear()
+
+func _on_OpenFile_pressed():
+ $FileDialog.popup_centered()
+
+func _on_FileDialog_file_selected(path):
+ show_file(path)
+
+func _on_Close_pressed():
+ self.hide()
+
+func show_file(path):
+ var text = _get_file_as_text(path)
+ if(text == ''):
+ text = ''
+ rtl.set_text(text)
+ self.window_title = path
+
+func show_open():
+ self.popup_centered()
+ $FileDialog.popup_centered()
+
+func get_rich_text_label():
+ return $TextDisplay/RichTextLabel
+
+func _on_Home_pressed():
+ rtl.scroll_to_line(0)
+
+func _on_End_pressed():
+ rtl.scroll_to_line(rtl.get_line_count() -1)
+
+func _on_Copy_pressed():
+ return
+ # OS.clipboard = rtl.text
+
+func _on_file_dialog_visibility_changed():
+ if rtl.text.length() == 0 and not $FileDialog.visible:
+ self.hide()
diff --git a/samples/client/petstore/gdscript/addons/gut/UserFileViewer.tscn b/samples/client/petstore/gdscript/addons/gut/UserFileViewer.tscn
new file mode 100644
index 000000000000..eb37c9acc434
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/UserFileViewer.tscn
@@ -0,0 +1,92 @@
+[gd_scene load_steps=2 format=3 uid="uid://bsm7wtt1gie4v"]
+
+[ext_resource type="Script" path="res://addons/gut/UserFileViewer.gd" id="1"]
+
+[node name="UserFileViewer" type="Window"]
+exclusive = true
+script = ExtResource("1")
+
+[node name="FileDialog" type="FileDialog" parent="."]
+access = 1
+show_hidden_files = true
+__meta__ = {
+"_edit_use_anchors_": false
+}
+
+[node name="TextDisplay" type="ColorRect" parent="."]
+anchor_right = 1.0
+anchor_bottom = 1.0
+offset_left = 8.0
+offset_right = -10.0
+offset_bottom = -65.0
+color = Color(0.2, 0.188235, 0.188235, 1)
+
+[node name="RichTextLabel" type="RichTextLabel" parent="TextDisplay"]
+anchor_right = 1.0
+anchor_bottom = 1.0
+focus_mode = 2
+text = "In publishing and graphic design, Lorem ipsum is a placeholder text commonly used to demonstrate the visual form of a document or a typeface without relying on meaningful content. Lorem ipsum may be used before final copy is available, but it may also be used to temporarily replace copy in a process called greeking, which allows designers to consider form without the meaning of the text influencing the design.
+
+Lorem ipsum is typically a corrupted version of De finibus bonorum et malorum, a first-century BCE text by the Roman statesman and philosopher Cicero, with words altered, added, and removed to make it nonsensical, improper Latin.
+
+Versions of the Lorem ipsum text have been used in typesetting at least since the 1960s, when it was popularized by advertisements for Letraset transfer sheets. Lorem ipsum was introduced to the digital world in the mid-1980s when Aldus employed it in graphic and word-processing templates for its desktop publishing program PageMaker. Other popular word processors including Pages and Microsoft Word have since adopted Lorem ipsum as well."
+selection_enabled = true
+
+[node name="OpenFile" type="Button" parent="."]
+anchor_left = 1.0
+anchor_top = 1.0
+anchor_right = 1.0
+anchor_bottom = 1.0
+offset_left = -158.0
+offset_top = -50.0
+offset_right = -84.0
+offset_bottom = -30.0
+text = "Open File"
+
+[node name="Home" type="Button" parent="."]
+anchor_left = 1.0
+anchor_top = 1.0
+anchor_right = 1.0
+anchor_bottom = 1.0
+offset_left = -478.0
+offset_top = -50.0
+offset_right = -404.0
+offset_bottom = -30.0
+text = "Home"
+
+[node name="Copy" type="Button" parent="."]
+anchor_top = 1.0
+anchor_bottom = 1.0
+offset_left = 160.0
+offset_top = -50.0
+offset_right = 234.0
+offset_bottom = -30.0
+text = "Copy"
+
+[node name="End" type="Button" parent="."]
+anchor_left = 1.0
+anchor_top = 1.0
+anchor_right = 1.0
+anchor_bottom = 1.0
+offset_left = -318.0
+offset_top = -50.0
+offset_right = -244.0
+offset_bottom = -30.0
+text = "End"
+
+[node name="Close" type="Button" parent="."]
+anchor_top = 1.0
+anchor_bottom = 1.0
+offset_left = 10.0
+offset_top = -50.0
+offset_right = 80.0
+offset_bottom = -30.0
+text = "Close"
+
+[connection signal="file_selected" from="FileDialog" to="." method="_on_FileDialog_file_selected"]
+[connection signal="visibility_changed" from="FileDialog" to="." method="_on_file_dialog_visibility_changed"]
+[connection signal="pressed" from="OpenFile" to="." method="_on_OpenFile_pressed"]
+[connection signal="pressed" from="Home" to="." method="_on_Home_pressed"]
+[connection signal="pressed" from="Copy" to="." method="_on_Copy_pressed"]
+[connection signal="pressed" from="End" to="." method="_on_End_pressed"]
+[connection signal="pressed" from="Close" to="." method="_on_Close_pressed"]
diff --git a/samples/client/petstore/gdscript/addons/gut/autofree.gd b/samples/client/petstore/gdscript/addons/gut/autofree.gd
new file mode 100644
index 000000000000..b82676bcfae2
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/autofree.gd
@@ -0,0 +1,59 @@
+# ##############################################################################
+#(G)odot (U)nit (T)est class
+#
+# ##############################################################################
+# The MIT License (MIT)
+# =====================
+#
+# Copyright (c) 2020 Tom "Butch" Wesley
+#
+# 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.
+#
+# ##############################################################################
+# Class used to keep track of objects to be freed and utilities to free them.
+# ##############################################################################
+var _to_free = []
+var _to_queue_free = []
+
+func add_free(thing):
+ if(typeof(thing) == TYPE_OBJECT):
+ if(!thing is RefCounted):
+ _to_free.append(thing)
+
+func add_queue_free(thing):
+ _to_queue_free.append(thing)
+
+func get_queue_free_count():
+ return _to_queue_free.size()
+
+func get_free_count():
+ return _to_free.size()
+
+func free_all():
+ for i in range(_to_free.size()):
+ if(is_instance_valid(_to_free[i])):
+ _to_free[i].free()
+ _to_free.clear()
+
+ for i in range(_to_queue_free.size()):
+ if(is_instance_valid(_to_queue_free[i])):
+ _to_queue_free[i].queue_free()
+ _to_queue_free.clear()
+
+
diff --git a/samples/client/petstore/gdscript/addons/gut/awaiter.gd b/samples/client/petstore/gdscript/addons/gut/awaiter.gd
new file mode 100644
index 000000000000..4d568a2ffc6b
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/awaiter.gd
@@ -0,0 +1,67 @@
+extends Node
+
+signal timeout
+signal wait_started
+
+var _wait_time = 0.0
+var _wait_frames = 0
+var _signal_to_wait_on = null
+
+var _elapsed_time = 0.0
+var _elapsed_frames = 0
+
+
+func _physics_process(delta):
+ if(_wait_time != 0.0):
+ _elapsed_time += delta
+ if(_elapsed_time >= _wait_time):
+ _end_wait()
+
+ if(_wait_frames != 0):
+ _elapsed_frames += 1
+ if(_elapsed_frames >= _wait_frames):
+ _end_wait()
+
+
+func _end_wait():
+ _wait_time = 0.0
+ _wait_frames = 0
+ _signal_to_wait_on = null
+ _elapsed_time = 0.0
+ _elapsed_frames = 0
+ timeout.emit()
+
+
+const ARG_NOT_SET = '_*_argument_*_is_*_not_set_*_'
+func _signal_callback(
+ arg1=ARG_NOT_SET, arg2=ARG_NOT_SET, arg3=ARG_NOT_SET,
+ arg4=ARG_NOT_SET, arg5=ARG_NOT_SET, arg6=ARG_NOT_SET,
+ arg7=ARG_NOT_SET, arg8=ARG_NOT_SET, arg9=ARG_NOT_SET):
+
+ _signal_to_wait_on.disconnect(_signal_callback)
+ # DO NOT _end_wait here. For other parts of the test to get the signal that
+ # was waited on, we have to wait for a couple more frames. For example, the
+ # signal_watcher doesn't get the signal in time if we don't do this.
+ _wait_frames = 2
+
+
+func wait_for(x):
+ _wait_time = x
+ wait_started.emit()
+
+
+func wait_frames(x):
+ _wait_frames = x
+ wait_started.emit()
+
+
+func wait_for_signal(the_signal, x):
+ the_signal.connect(_signal_callback)
+ _signal_to_wait_on = the_signal
+ _wait_time = x
+ wait_started.emit()
+
+
+func is_waiting():
+ return _wait_time != 0.0 || _wait_frames != 0
+
diff --git a/samples/client/petstore/gdscript/addons/gut/comparator.gd b/samples/client/petstore/gdscript/addons/gut/comparator.gd
new file mode 100644
index 000000000000..48776c4188f4
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/comparator.gd
@@ -0,0 +1,123 @@
+var _utils = load('res://addons/gut/utils.gd').get_instance()
+var _strutils = _utils.Strutils.new()
+var _max_length = 100
+var _should_compare_int_to_float = true
+
+const MISSING = '|__missing__gut__compare__value__|'
+
+func _cannot_compare_text(v1, v2):
+ return str('Cannot compare ', _strutils.types[typeof(v1)], ' with ',
+ _strutils.types[typeof(v2)], '.')
+
+func _make_missing_string(text):
+ return ''
+
+func _create_missing_result(v1, v2, text):
+ var to_return = null
+ var v1_str = format_value(v1)
+ var v2_str = format_value(v2)
+
+ if(typeof(v1) == TYPE_STRING and v1 == MISSING):
+ v1_str = _make_missing_string(text)
+ to_return = _utils.CompareResult.new()
+ elif(typeof(v2) == TYPE_STRING and v2 == MISSING):
+ v2_str = _make_missing_string(text)
+ to_return = _utils.CompareResult.new()
+
+ if(to_return != null):
+ to_return.summary = str(v1_str, ' != ', v2_str)
+ to_return.are_equal = false
+
+ return to_return
+
+
+func simple(v1, v2, missing_string=''):
+ var missing_result = _create_missing_result(v1, v2, missing_string)
+ if(missing_result != null):
+ return missing_result
+
+ var result = _utils.CompareResult.new()
+ var cmp_str = null
+ var extra = ''
+
+ var tv1 = typeof(v1)
+ var tv2 = typeof(v2)
+
+ # print(tv1, '::', tv2, ' ', _strutils.types[tv1], '::', _strutils.types[tv2])
+ if(_should_compare_int_to_float and [TYPE_INT, TYPE_FLOAT].has(tv1) and [TYPE_INT, TYPE_FLOAT].has(tv2)):
+ result.are_equal = v1 == v2
+ elif([TYPE_STRING, TYPE_STRING_NAME].has(tv1) and [TYPE_STRING, TYPE_STRING_NAME].has(tv2)):
+ result.are_equal = v1 == v2
+ elif(_utils.are_datatypes_same(v1, v2)):
+ result.are_equal = v1 == v2
+
+ if(typeof(v1) == TYPE_DICTIONARY or typeof(v1) == TYPE_ARRAY):
+ var sub_result = _utils.DiffTool.new(v1, v2, _utils.DIFF.DEEP)
+ result.summary = sub_result.get_short_summary()
+ if(!sub_result.are_equal):
+ extra = ".\n" + sub_result.get_short_summary()
+ else:
+ cmp_str = '!='
+ result.are_equal = false
+ extra = str('. ', _cannot_compare_text(v1, v2))
+
+ cmp_str = get_compare_symbol(result.are_equal)
+ result.summary = str(format_value(v1), ' ', cmp_str, ' ', format_value(v2), extra)
+
+ return result
+
+
+func shallow(v1, v2):
+ var result = null
+ if(_utils.are_datatypes_same(v1, v2)):
+ if(typeof(v1) in [TYPE_ARRAY, TYPE_DICTIONARY]):
+ result = _utils.DiffTool.new(v1, v2, _utils.DIFF.DEEP)
+ else:
+ result = simple(v1, v2)
+ else:
+ result = simple(v1, v2)
+
+ return result
+
+
+func deep(v1, v2):
+ var result = null
+
+ if(_utils.are_datatypes_same(v1, v2)):
+ if(typeof(v1) in [TYPE_ARRAY, TYPE_DICTIONARY]):
+ result = _utils.DiffTool.new(v1, v2, _utils.DIFF.DEEP)
+ else:
+ result = simple(v1, v2)
+ else:
+ result = simple(v1, v2)
+
+ return result
+
+
+func format_value(val, max_val_length=_max_length):
+ return _strutils.truncate_string(_strutils.type2str(val), max_val_length)
+
+
+func compare(v1, v2, diff_type=_utils.DIFF.SIMPLE):
+ var result = null
+ if(diff_type == _utils.DIFF.SIMPLE):
+ result = simple(v1, v2)
+ elif(diff_type == _utils.DIFF.DEEP):
+ result = deep(v1, v2)
+
+ return result
+
+
+func get_should_compare_int_to_float():
+ return _should_compare_int_to_float
+
+
+func set_should_compare_int_to_float(should_compare_int_float):
+ _should_compare_int_to_float = should_compare_int_float
+
+
+func get_compare_symbol(is_equal):
+ if(is_equal):
+ return '=='
+ else:
+ return '!='
diff --git a/samples/client/petstore/gdscript/addons/gut/compare_result.gd b/samples/client/petstore/gdscript/addons/gut/compare_result.gd
new file mode 100644
index 000000000000..1a8afb5da234
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/compare_result.gd
@@ -0,0 +1,70 @@
+var _are_equal = false
+var are_equal = false :
+ get:
+ return get_are_equal()
+ set(val):
+ set_are_equal(val)
+
+var _summary = null
+var summary = null :
+ get:
+ return get_summary()
+ set(val):
+ set_summary(val)
+
+var _max_differences = 30
+var max_differences = 30 :
+ get:
+ return get_max_differences()
+ set(val):
+ set_max_differences(val)
+
+var _differences = {}
+var differences :
+ get:
+ return get_differences()
+ set(val):
+ set_differences(val)
+
+func _block_set(which, val):
+ push_error(str('cannot set ', which, ', value [', val, '] ignored.'))
+
+func _to_string():
+ return str(get_summary()) # could be null, gotta str it.
+
+func get_are_equal():
+ return _are_equal
+
+func set_are_equal(r_eq):
+ _are_equal = r_eq
+
+func get_summary():
+ return _summary
+
+func set_summary(smry):
+ _summary = smry
+
+func get_total_count():
+ pass
+
+func get_different_count():
+ pass
+
+func get_short_summary():
+ return summary
+
+func get_max_differences():
+ return _max_differences
+
+func set_max_differences(max_diff):
+ _max_differences = max_diff
+
+func get_differences():
+ return _differences
+
+func set_differences(diffs):
+ _block_set('differences', diffs)
+
+func get_brackets():
+ return null
+
diff --git a/samples/client/petstore/gdscript/addons/gut/diff_formatter.gd b/samples/client/petstore/gdscript/addons/gut/diff_formatter.gd
new file mode 100644
index 000000000000..fd954affb7aa
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/diff_formatter.gd
@@ -0,0 +1,64 @@
+var _utils = load('res://addons/gut/utils.gd').get_instance()
+var _strutils = _utils.Strutils.new()
+const INDENT = ' '
+var _max_to_display = 30
+const ABSOLUTE_MAX_DISPLAYED = 10000
+const UNLIMITED = -1
+
+
+func _single_diff(diff, depth=0):
+ var to_return = ""
+ var brackets = diff.get_brackets()
+
+ if(brackets != null and !diff.are_equal):
+ to_return = ''
+ to_return += str(brackets.open, "\n",
+ _strutils.indent_text(differences_to_s(diff.differences, depth), depth+1, INDENT), "\n",
+ brackets.close)
+ else:
+ to_return = str(diff)
+
+ return to_return
+
+
+func make_it(diff):
+ var to_return = ''
+ if(diff.are_equal):
+ to_return = diff.summary
+ else:
+ if(_max_to_display == ABSOLUTE_MAX_DISPLAYED):
+ to_return = str(diff.get_value_1(), ' != ', diff.get_value_2())
+ else:
+ to_return = diff.get_short_summary()
+ to_return += str("\n", _strutils.indent_text(_single_diff(diff, 0), 1, ' '))
+ return to_return
+
+
+func differences_to_s(differences, depth=0):
+ var to_return = ''
+ var keys = differences.keys()
+ keys.sort()
+ var limit = min(_max_to_display, differences.size())
+
+ for i in range(limit):
+ var key = keys[i]
+ to_return += str(key, ": ", _single_diff(differences[key], depth))
+
+ if(i != limit -1):
+ to_return += "\n"
+
+ if(differences.size() > _max_to_display):
+ to_return += str("\n\n... ", differences.size() - _max_to_display, " more.")
+
+ return to_return
+
+
+func get_max_to_display():
+ return _max_to_display
+
+
+func set_max_to_display(max_to_display):
+ _max_to_display = max_to_display
+ if(_max_to_display == UNLIMITED):
+ _max_to_display = ABSOLUTE_MAX_DISPLAYED
+
diff --git a/samples/client/petstore/gdscript/addons/gut/diff_tool.gd b/samples/client/petstore/gdscript/addons/gut/diff_tool.gd
new file mode 100644
index 000000000000..bc33a9024c30
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/diff_tool.gd
@@ -0,0 +1,158 @@
+extends 'res://addons/gut/compare_result.gd'
+const INDENT = ' '
+enum {
+ DEEP,
+ SIMPLE
+}
+
+var _utils = load('res://addons/gut/utils.gd').get_instance()
+var _strutils = _utils.Strutils.new()
+var _compare = _utils.Comparator.new()
+var DiffTool = load('res://addons/gut/diff_tool.gd')
+
+var _value_1 = null
+var _value_2 = null
+var _total_count = 0
+var _diff_type = null
+var _brackets = null
+var _valid = true
+var _desc_things = 'somethings'
+
+# -------- comapre_result.gd "interface" ---------------------
+func set_are_equal(val):
+ _block_set('are_equal', val)
+
+func get_are_equal():
+ if(!_valid):
+ return null
+ else:
+ return differences.size() == 0
+
+
+func set_summary(val):
+ _block_set('summary', val)
+
+func get_summary():
+ return summarize()
+
+func get_different_count():
+ return differences.size()
+
+func get_total_count():
+ return _total_count
+
+func get_short_summary():
+ var text = str(_strutils.truncate_string(str(_value_1), 50),
+ ' ', _compare.get_compare_symbol(are_equal), ' ',
+ _strutils.truncate_string(str(_value_2), 50))
+ if(!are_equal):
+ text += str(' ', get_different_count(), ' of ', get_total_count(),
+ ' ', _desc_things, ' do not match.')
+ return text
+
+func get_brackets():
+ return _brackets
+# -------- comapre_result.gd "interface" ---------------------
+
+
+func _invalidate():
+ _valid = false
+ differences = null
+
+
+func _init(v1,v2,diff_type=DEEP):
+ _value_1 = v1
+ _value_2 = v2
+ _diff_type = diff_type
+ _compare.set_should_compare_int_to_float(false)
+ _find_differences(_value_1, _value_2)
+
+
+func _find_differences(v1, v2):
+ if(_utils.are_datatypes_same(v1, v2)):
+ if(typeof(v1) == TYPE_ARRAY):
+ _brackets = {'open':'[', 'close':']'}
+ _desc_things = 'indexes'
+ _diff_array(v1, v2)
+ elif(typeof(v2) == TYPE_DICTIONARY):
+ _brackets = {'open':'{', 'close':'}'}
+ _desc_things = 'keys'
+ _diff_dictionary(v1, v2)
+ else:
+ _invalidate()
+ _utils.get_logger().error('Only Arrays and Dictionaries are supported.')
+ else:
+ _invalidate()
+ _utils.get_logger().error('Only Arrays and Dictionaries are supported.')
+
+
+func _diff_array(a1, a2):
+ _total_count = max(a1.size(), a2.size())
+ for i in range(a1.size()):
+ var result = null
+ if(i < a2.size()):
+ if(_diff_type == DEEP):
+ result = _compare.deep(a1[i], a2[i])
+ else:
+ result = _compare.simple(a1[i], a2[i])
+ else:
+ result = _compare.simple(a1[i], _compare.MISSING, 'index')
+
+ if(!result.are_equal):
+ differences[i] = result
+
+ if(a1.size() < a2.size()):
+ for i in range(a1.size(), a2.size()):
+ differences[i] = _compare.simple(_compare.MISSING, a2[i], 'index')
+
+
+func _diff_dictionary(d1, d2):
+ var d1_keys = d1.keys()
+ var d2_keys = d2.keys()
+
+ # Process all the keys in d1
+ _total_count += d1_keys.size()
+ for key in d1_keys:
+ if(!d2.has(key)):
+ differences[key] = _compare.simple(d1[key], _compare.MISSING, 'key')
+ else:
+ d2_keys.remove_at(d2_keys.find(key))
+
+ var result = null
+ if(_diff_type == DEEP):
+ result = _compare.deep(d1[key], d2[key])
+ else:
+ result = _compare.simple(d1[key], d2[key])
+
+ if(!result.are_equal):
+ differences[key] = result
+
+ # Process all the keys in d2 that didn't exist in d1
+ _total_count += d2_keys.size()
+ for i in range(d2_keys.size()):
+ differences[d2_keys[i]] = _compare.simple(_compare.MISSING, d2[d2_keys[i]], 'key')
+
+
+func summarize():
+ var summary = ''
+
+ if(are_equal):
+ summary = get_short_summary()
+ else:
+ var formatter = load('res://addons/gut/diff_formatter.gd').new()
+ formatter.set_max_to_display(max_differences)
+ summary = formatter.make_it(self)
+
+ return summary
+
+
+func get_diff_type():
+ return _diff_type
+
+
+func get_value_1():
+ return _value_1
+
+
+func get_value_2():
+ return _value_2
diff --git a/samples/client/petstore/gdscript/addons/gut/double_templates/function_template.txt b/samples/client/petstore/gdscript/addons/gut/double_templates/function_template.txt
new file mode 100644
index 000000000000..a22ff063a34e
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/double_templates/function_template.txt
@@ -0,0 +1,6 @@
+{func_decleration}
+ __gutdbl.spy_on('{method_name}', {param_array})
+ if(__gutdbl.should_call_super('{method_name}', {param_array})):
+ return {super_call}
+ else:
+ return __gutdbl.get_stubbed_return('{method_name}', {param_array})
diff --git a/samples/client/petstore/gdscript/addons/gut/double_templates/init_template.txt b/samples/client/petstore/gdscript/addons/gut/double_templates/init_template.txt
new file mode 100644
index 000000000000..9b43474d0878
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/double_templates/init_template.txt
@@ -0,0 +1,4 @@
+{func_decleration}:
+ super({super_params})
+ __gutdbl.spy_on('{method_name}', {param_array})
+
diff --git a/samples/client/petstore/gdscript/addons/gut/double_templates/script_template.txt b/samples/client/petstore/gdscript/addons/gut/double_templates/script_template.txt
new file mode 100644
index 000000000000..bb597387b414
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/double_templates/script_template.txt
@@ -0,0 +1,31 @@
+# ##############################################################################
+# Gut Doubled Script
+# ##############################################################################
+{extends}
+
+{constants}
+
+{properties}
+
+# ------------------------------------------------------------------------------
+# GUT stuff
+# ------------------------------------------------------------------------------
+var __gutdbl_values = {
+ double = self,
+ thepath = '{path}',
+ subpath = '{subpath}',
+ stubber = {stubber_id},
+ spy = {spy_id},
+ gut = {gut_id},
+ from_singleton = '{singleton_name}',
+ is_partial = {is_partial},
+}
+var __gutdbl = load('res://addons/gut/double_tools.gd').new(__gutdbl_values)
+
+# Here so other things can check for a method to know if this is a double.
+func __gutdbl_check_method__():
+ pass
+
+# ------------------------------------------------------------------------------
+# Doubled Methods
+# ------------------------------------------------------------------------------
diff --git a/samples/client/petstore/gdscript/addons/gut/double_tools.gd b/samples/client/petstore/gdscript/addons/gut/double_tools.gd
new file mode 100644
index 000000000000..ab75cc7950d1
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/double_tools.gd
@@ -0,0 +1,52 @@
+var thepath = ''
+var subpath = ''
+var stubber = null
+var spy = null
+var gut = null
+var from_singleton = null
+var is_partial = null
+var double = null
+
+const NO_DEFAULT_VALUE = '!__gut__no__default__value__!'
+func from_id(inst_id):
+ if(inst_id == -1):
+ return null
+ else:
+ return instance_from_id(inst_id)
+
+func should_call_super(method_name, called_with):
+ if(stubber != null):
+ return stubber.should_call_super(double, method_name, called_with)
+ else:
+ return false
+
+func spy_on(method_name, called_with):
+ if(spy != null):
+ spy.add_call(double, method_name, called_with)
+
+func get_stubbed_return(method_name, called_with):
+ if(stubber != null):
+ return stubber.get_return(double, method_name, called_with)
+ else:
+ return null
+
+func default_val(method_name, p_index, default_val=NO_DEFAULT_VALUE):
+ if(stubber != null):
+ return stubber.get_default_value(double, method_name, p_index)
+ else:
+ return null
+
+func _init(values=null):
+ if(values != null):
+ double = values.double
+ thepath = values.thepath
+ subpath = values.subpath
+ stubber = from_id(values.stubber)
+ spy = from_id(values.spy)
+ gut = from_id(values.gut)
+ from_singleton = values.from_singleton
+ is_partial = values.is_partial
+
+ if(gut != null):
+ gut.get_autofree().add_free(double)
+
diff --git a/samples/client/petstore/gdscript/addons/gut/doubler.gd b/samples/client/petstore/gdscript/addons/gut/doubler.gd
new file mode 100644
index 000000000000..e4b984db3c2a
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/doubler.gd
@@ -0,0 +1,321 @@
+# ##############################################################################
+#(G)odot (U)nit (T)est class
+#
+# ##############################################################################
+# The MIT License (MIT)
+# =====================
+#
+# Copyright (c) 2020 Tom "Butch" Wesley
+#
+# 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.
+#
+# ##############################################################################
+# Description
+# -----------
+# ##############################################################################
+
+
+
+# ------------------------------------------------------------------------------
+# A stroke of genius if I do say so. This allows for doubling a scene without
+# having to write any files. By overloading the "instantiate" method we can
+# make whatever we want.
+# ------------------------------------------------------------------------------
+class PackedSceneDouble:
+ extends PackedScene
+ var _script = null
+ var _scene = null
+
+ func set_script_obj(obj):
+ _script = obj
+
+ func instantiate(edit_state=0):
+ var inst = _scene.instantiate(edit_state)
+ if(_script != null):
+ inst.set_script(_script)
+ return inst
+
+ func load_scene(path):
+ _scene = load(path)
+
+
+
+
+# ------------------------------------------------------------------------------
+# START Doubler
+# ------------------------------------------------------------------------------
+var _utils = load('res://addons/gut/utils.gd').get_instance()
+var _base_script_text = _utils.get_file_as_text('res://addons/gut/double_templates/script_template.txt')
+var _script_collector = _utils.ScriptCollector.new()
+# used by tests for debugging purposes.
+var print_source = false
+var inner_class_registry = _utils.InnerClassRegistry.new()
+
+# ###############
+# Properties
+# ###############
+var _stubber = _utils.Stubber.new()
+func get_stubber():
+ return _stubber
+func set_stubber(stubber):
+ _stubber = stubber
+
+var _lgr = _utils.get_logger()
+func get_logger():
+ return _lgr
+func set_logger(logger):
+ _lgr = logger
+ _method_maker.set_logger(logger)
+
+var _spy = null
+func get_spy():
+ return _spy
+func set_spy(spy):
+ _spy = spy
+
+var _gut = null
+func get_gut():
+ return _gut
+func set_gut(gut):
+ _gut = gut
+
+var _strategy = null
+func get_strategy():
+ return _strategy
+func set_strategy(strategy):
+ _strategy = strategy
+
+
+var _method_maker = _utils.MethodMaker.new()
+func get_method_maker():
+ return _method_maker
+
+var _ignored_methods = _utils.OneToMany.new()
+func get_ignored_methods():
+ return _ignored_methods
+
+# ###############
+# Private
+# ###############
+func _init(strategy=_utils.DOUBLE_STRATEGY.SCRIPT_ONLY):
+ set_logger(_utils.get_logger())
+ _strategy = strategy
+
+
+func _get_indented_line(indents, text):
+ var to_return = ''
+ for _i in range(indents):
+ to_return += "\t"
+ return str(to_return, text, "\n")
+
+
+func _stub_to_call_super(parsed, method_name):
+ if(_utils.non_super_methods.has(method_name)):
+ return
+
+ var params = _utils.StubParams.new(parsed.script_path, method_name, parsed.subpath)
+ params.to_call_super()
+ _stubber.add_stub(params)
+
+
+func _get_base_script_text(parsed, override_path, partial):
+ var path = parsed.script_path
+ if(override_path != null):
+ path = override_path
+
+ var stubber_id = -1
+ if(_stubber != null):
+ stubber_id = _stubber.get_instance_id()
+
+ var spy_id = -1
+ if(_spy != null):
+ spy_id = _spy.get_instance_id()
+
+ var gut_id = -1
+ if(_gut != null):
+ gut_id = _gut.get_instance_id()
+
+ var extends_text = parsed.get_extends_text()
+
+ var values = {
+ # Top sections
+ "extends":extends_text,
+ "constants":'',#obj_info.get_constants_text(),
+ "properties":'',#obj_info.get_properties_text(),
+
+ # metadata values
+ "path":path,
+ "subpath":_utils.nvl(parsed.subpath, ''),
+ "stubber_id":stubber_id,
+ "spy_id":spy_id,
+ "gut_id":gut_id,
+ "singleton_name":'',#_utils.nvl(obj_info.get_singleton_name(), ''),
+ "is_partial":partial,
+ }
+
+ return _base_script_text.format(values)
+
+
+func _is_valid_double_method(parsed_script, parsed_method):
+ return !parsed_method.is_accessor() and \
+ !parsed_method.is_black_listed() and \
+ !_ignored_methods.has(parsed_script.resource, parsed_method.meta.name)
+
+func _create_double(parsed, strategy, override_path, partial):
+ var base_script = _get_base_script_text(parsed, override_path, partial)
+ var super_name = ""
+ var path = ""
+
+ path = parsed.script_path
+ var dbl_src = ""
+ dbl_src += base_script
+
+ for method in parsed.get_local_methods():
+ if(_is_valid_double_method(parsed, method)):
+ var mthd = parsed.get_local_method(method.meta.name)
+ if(parsed.is_native):
+ dbl_src += _get_func_text(method.meta, parsed.resource, super_name)
+ else:
+ dbl_src += _get_func_text(method.meta, path, super_name)
+
+ if(strategy == _utils.DOUBLE_STRATEGY.INCLUDE_SUPER):
+ for method in parsed.get_super_methods():
+ if(_is_valid_double_method(parsed, method)):
+ _stub_to_call_super(parsed, method.meta.name)
+ if(parsed.is_native):
+ dbl_src += _get_func_text(method.meta, parsed.resource, super_name)
+ else:
+ dbl_src += _get_func_text(method.meta, path, super_name)
+
+ if(print_source):
+ print(_utils.add_line_numbers(dbl_src))
+
+ var DblClass = _utils.create_script_from_source(dbl_src)
+ if(_stubber != null):
+ _stub_method_default_values(DblClass, parsed, strategy)
+
+ return DblClass
+
+
+func _stub_method_default_values(which, parsed, strategy):
+ for method in parsed.get_local_methods():
+ if(!method.is_black_listed() && !_ignored_methods.has(parsed.resource, method.meta.name)):
+ _stubber.stub_defaults_from_meta(parsed.script_path, method.meta)
+
+
+
+func _double_scene_and_script(scene, strategy, partial):
+ var to_return = PackedSceneDouble.new()
+ to_return.load_scene(scene.get_path())
+
+ var script_obj = _utils.get_scene_script_object(scene)
+ if(script_obj != null):
+ var script_dbl = null
+ if(partial):
+ script_dbl = _partial_double(script_obj, strategy, scene.get_path())
+ else:
+ script_dbl = _double(script_obj, strategy, scene.get_path())
+ to_return.set_script_obj(script_dbl)
+
+ return to_return
+
+
+func _get_inst_id_ref_str(inst):
+ var ref_str = 'null'
+ if(inst):
+ ref_str = str('instance_from_id(', inst.get_instance_id(),')')
+ return ref_str
+
+
+func _get_func_text(method_hash, path, super_=""):
+ var override_count = null;
+ if(_stubber != null):
+ override_count = _stubber.get_parameter_count(path, method_hash.name)
+
+ var text = _method_maker.get_function_text(method_hash, path, override_count, super_) + "\n"
+
+ return text
+
+
+func _parse_script(obj):
+ var parsed = null
+
+ if(_utils.is_inner_class(obj)):
+ if(inner_class_registry.has(obj)):
+ parsed = _script_collector.parse(inner_class_registry.get_base_resource(obj), obj)
+ else:
+ _lgr.error('Doubling Inner Classes requires you register them first. Call register_inner_classes passing the script that contains the inner class.')
+ else:
+ parsed = _script_collector.parse(obj)
+
+ return parsed
+
+
+# Override path is used with scenes.
+func _double(obj, strategy, override_path=null):
+ var parsed = _parse_script(obj)
+ if(parsed != null):
+ return _create_double(parsed, strategy, override_path, false)
+
+
+func _partial_double(obj, strategy, override_path=null):
+ var parsed = _parse_script(obj)
+ if(parsed != null):
+ return _create_double(parsed, strategy, override_path, true)
+
+
+# -------------------------
+# Public
+# -------------------------
+
+# double a script/object
+func double(obj, strategy=_strategy):
+ return _double(obj, strategy)
+
+func partial_double(obj, strategy=_strategy):
+ return _partial_double(obj, strategy)
+
+
+# double a scene
+func double_scene(scene, strategy=_strategy):
+ return _double_scene_and_script(scene, strategy, false)
+
+func partial_double_scene(scene, strategy=_strategy):
+ return _double_scene_and_script(scene, strategy, true)
+
+
+func double_gdnative(which):
+ return _double(which, _utils.DOUBLE_STRATEGY.INCLUDE_SUPER)
+
+func partial_double_gdnative(which):
+ return _partial_double(which, _utils.DOUBLE_STRATEGY.INCLUDE_SUPER)
+
+
+func double_inner(parent, inner, strategy=_strategy):
+ var parsed = _script_collector.parse(parent, inner)
+ return _create_double(parsed, strategy, null, false)
+
+
+func partial_double_inner(parent, inner, strategy=_strategy):
+ var parsed = _script_collector.parse(parent, inner)
+ return _create_double(parsed, strategy, null, true)
+
+
+func add_ignored_method(obj, method_name):
+ _ignored_methods.add(obj, method_name)
diff --git a/samples/client/petstore/gdscript/addons/gut/fonts/AnonymousPro-Bold.ttf b/samples/client/petstore/gdscript/addons/gut/fonts/AnonymousPro-Bold.ttf
new file mode 100644
index 000000000000..1d4bf2b5265b
Binary files /dev/null and b/samples/client/petstore/gdscript/addons/gut/fonts/AnonymousPro-Bold.ttf differ
diff --git a/samples/client/petstore/gdscript/addons/gut/fonts/AnonymousPro-BoldItalic.ttf b/samples/client/petstore/gdscript/addons/gut/fonts/AnonymousPro-BoldItalic.ttf
new file mode 100644
index 000000000000..12863cadbec6
Binary files /dev/null and b/samples/client/petstore/gdscript/addons/gut/fonts/AnonymousPro-BoldItalic.ttf differ
diff --git a/samples/client/petstore/gdscript/addons/gut/fonts/AnonymousPro-Italic.ttf b/samples/client/petstore/gdscript/addons/gut/fonts/AnonymousPro-Italic.ttf
new file mode 100644
index 000000000000..f6870b7c4e5a
Binary files /dev/null and b/samples/client/petstore/gdscript/addons/gut/fonts/AnonymousPro-Italic.ttf differ
diff --git a/samples/client/petstore/gdscript/addons/gut/fonts/AnonymousPro-Regular.ttf b/samples/client/petstore/gdscript/addons/gut/fonts/AnonymousPro-Regular.ttf
new file mode 100644
index 000000000000..57aa893826db
Binary files /dev/null and b/samples/client/petstore/gdscript/addons/gut/fonts/AnonymousPro-Regular.ttf differ
diff --git a/samples/client/petstore/gdscript/addons/gut/fonts/CourierPrime-Bold.ttf b/samples/client/petstore/gdscript/addons/gut/fonts/CourierPrime-Bold.ttf
new file mode 100644
index 000000000000..91d6de4f3467
Binary files /dev/null and b/samples/client/petstore/gdscript/addons/gut/fonts/CourierPrime-Bold.ttf differ
diff --git a/samples/client/petstore/gdscript/addons/gut/fonts/CourierPrime-BoldItalic.ttf b/samples/client/petstore/gdscript/addons/gut/fonts/CourierPrime-BoldItalic.ttf
new file mode 100644
index 000000000000..0afaa98dffc3
Binary files /dev/null and b/samples/client/petstore/gdscript/addons/gut/fonts/CourierPrime-BoldItalic.ttf differ
diff --git a/samples/client/petstore/gdscript/addons/gut/fonts/CourierPrime-Italic.ttf b/samples/client/petstore/gdscript/addons/gut/fonts/CourierPrime-Italic.ttf
new file mode 100644
index 000000000000..f8a20bd09728
Binary files /dev/null and b/samples/client/petstore/gdscript/addons/gut/fonts/CourierPrime-Italic.ttf differ
diff --git a/samples/client/petstore/gdscript/addons/gut/fonts/CourierPrime-Regular.ttf b/samples/client/petstore/gdscript/addons/gut/fonts/CourierPrime-Regular.ttf
new file mode 100644
index 000000000000..4f638f699227
Binary files /dev/null and b/samples/client/petstore/gdscript/addons/gut/fonts/CourierPrime-Regular.ttf differ
diff --git a/samples/client/petstore/gdscript/addons/gut/fonts/LobsterTwo-Bold.ttf b/samples/client/petstore/gdscript/addons/gut/fonts/LobsterTwo-Bold.ttf
new file mode 100644
index 000000000000..2e979fbff2ca
Binary files /dev/null and b/samples/client/petstore/gdscript/addons/gut/fonts/LobsterTwo-Bold.ttf differ
diff --git a/samples/client/petstore/gdscript/addons/gut/fonts/LobsterTwo-BoldItalic.ttf b/samples/client/petstore/gdscript/addons/gut/fonts/LobsterTwo-BoldItalic.ttf
new file mode 100644
index 000000000000..8bbf8d827893
Binary files /dev/null and b/samples/client/petstore/gdscript/addons/gut/fonts/LobsterTwo-BoldItalic.ttf differ
diff --git a/samples/client/petstore/gdscript/addons/gut/fonts/LobsterTwo-Italic.ttf b/samples/client/petstore/gdscript/addons/gut/fonts/LobsterTwo-Italic.ttf
new file mode 100644
index 000000000000..b88ec1723c6c
Binary files /dev/null and b/samples/client/petstore/gdscript/addons/gut/fonts/LobsterTwo-Italic.ttf differ
diff --git a/samples/client/petstore/gdscript/addons/gut/fonts/LobsterTwo-Regular.ttf b/samples/client/petstore/gdscript/addons/gut/fonts/LobsterTwo-Regular.ttf
new file mode 100644
index 000000000000..556c45e7d1d6
Binary files /dev/null and b/samples/client/petstore/gdscript/addons/gut/fonts/LobsterTwo-Regular.ttf differ
diff --git a/samples/client/petstore/gdscript/addons/gut/fonts/OFL.txt b/samples/client/petstore/gdscript/addons/gut/fonts/OFL.txt
new file mode 100644
index 000000000000..3ed0152c4cee
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/fonts/OFL.txt
@@ -0,0 +1,94 @@
+Copyright (c) 2009, Mark Simonson (http://www.ms-studio.com, mark@marksimonson.com),
+with Reserved Font Name Anonymous Pro.
+
+This Font Software is licensed under the SIL Open Font License, Version 1.1.
+This license is copied below, and is also available with a FAQ at:
+http://scripts.sil.org/OFL
+
+
+-----------------------------------------------------------
+SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+-----------------------------------------------------------
+
+PREAMBLE
+The goals of the Open Font License (OFL) are to stimulate worldwide
+development of collaborative font projects, to support the font creation
+efforts of academic and linguistic communities, and to provide a free and
+open framework in which fonts may be shared and improved in partnership
+with others.
+
+The OFL allows the licensed fonts to be used, studied, modified and
+redistributed freely as long as they are not sold by themselves. The
+fonts, including any derivative works, can be bundled, embedded,
+redistributed and/or sold with any software provided that any reserved
+names are not used by derivative works. The fonts and derivatives,
+however, cannot be released under any other type of license. The
+requirement for fonts to remain under this license does not apply
+to any document created using the fonts or their derivatives.
+
+DEFINITIONS
+"Font Software" refers to the set of files released by the Copyright
+Holder(s) under this license and clearly marked as such. This may
+include source files, build scripts and documentation.
+
+"Reserved Font Name" refers to any names specified as such after the
+copyright statement(s).
+
+"Original Version" refers to the collection of Font Software components as
+distributed by the Copyright Holder(s).
+
+"Modified Version" refers to any derivative made by adding to, deleting,
+or substituting -- in part or in whole -- any of the components of the
+Original Version, by changing formats or by porting the Font Software to a
+new environment.
+
+"Author" refers to any designer, engineer, programmer, technical
+writer or other person who contributed to the Font Software.
+
+PERMISSION & CONDITIONS
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Font Software, to use, study, copy, merge, embed, modify,
+redistribute, and sell modified and unmodified copies of the Font
+Software, subject to the following conditions:
+
+1) Neither the Font Software nor any of its individual components,
+in Original or Modified Versions, may be sold by itself.
+
+2) Original or Modified Versions of the Font Software may be bundled,
+redistributed and/or sold with any software, provided that each copy
+contains the above copyright notice and this license. These can be
+included either as stand-alone text files, human-readable headers or
+in the appropriate machine-readable metadata fields within text or
+binary files as long as those fields can be easily viewed by the user.
+
+3) No Modified Version of the Font Software may use the Reserved Font
+Name(s) unless explicit written permission is granted by the corresponding
+Copyright Holder. This restriction only applies to the primary font name as
+presented to the users.
+
+4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
+Software shall not be used to promote, endorse or advertise any
+Modified Version, except to acknowledge the contribution(s) of the
+Copyright Holder(s) and the Author(s) or with their explicit written
+permission.
+
+5) The Font Software, modified or unmodified, in part or in whole,
+must be distributed entirely under this license, and must not be
+distributed under any other license. The requirement for fonts to
+remain under this license does not apply to any document created
+using the Font Software.
+
+TERMINATION
+This license becomes null and void if any of the above conditions are
+not met.
+
+DISCLAIMER
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
+COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
+DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
+OTHER DEALINGS IN THE FONT SOFTWARE.
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/BottomPanelShortcuts.gd b/samples/client/petstore/gdscript/addons/gut/gui/BottomPanelShortcuts.gd
new file mode 100644
index 000000000000..2e167c5e0958
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/BottomPanelShortcuts.gd
@@ -0,0 +1,82 @@
+@tool
+extends Window
+
+@onready var _ctrls = {
+ run_all = $Layout/CRunAll/ShortcutButton,
+ run_current_script = $Layout/CRunCurrentScript/ShortcutButton,
+ run_current_inner = $Layout/CRunCurrentInner/ShortcutButton,
+ run_current_test = $Layout/CRunCurrentTest/ShortcutButton,
+ panel_button = $Layout/CPanelButton/ShortcutButton,
+}
+
+func _ready():
+ for key in _ctrls:
+ var sc_button = _ctrls[key]
+ sc_button.connect('start_edit', _on_edit_start.bind(sc_button))
+ sc_button.connect('end_edit', _on_edit_end)
+
+
+ # show dialog when running scene from editor.
+ if(get_parent() == get_tree().root):
+ popup_centered()
+
+# ------------
+# Events
+# ------------
+func _on_Hide_pressed():
+ hide()
+
+func _on_edit_start(which):
+ for key in _ctrls:
+ var sc_button = _ctrls[key]
+ if(sc_button != which):
+ sc_button.disable_set(true)
+ sc_button.disable_clear(true)
+
+func _on_edit_end():
+ for key in _ctrls:
+ var sc_button = _ctrls[key]
+ sc_button.disable_set(false)
+ sc_button.disable_clear(false)
+
+# ------------
+# Public
+# ------------
+func get_run_all():
+ return _ctrls.run_all.get_shortcut()
+
+func get_run_current_script():
+ return _ctrls.run_current_script.get_shortcut()
+
+func get_run_current_inner():
+ return _ctrls.run_current_inner.get_shortcut()
+
+func get_run_current_test():
+ return _ctrls.run_current_test.get_shortcut()
+
+func get_panel_button():
+ return _ctrls.panel_button.get_shortcut()
+
+
+func save_shortcuts(path):
+ var f = ConfigFile.new()
+
+ f.set_value('main', 'run_all', _ctrls.run_all.get_shortcut())
+ f.set_value('main', 'run_current_script', _ctrls.run_current_script.get_shortcut())
+ f.set_value('main', 'run_current_inner', _ctrls.run_current_inner.get_shortcut())
+ f.set_value('main', 'run_current_test', _ctrls.run_current_test.get_shortcut())
+ f.set_value('main', 'panel_button', _ctrls.panel_button.get_shortcut())
+
+ f.save(path)
+
+
+func load_shortcuts(path):
+ var emptyShortcut = Shortcut.new()
+ var f = ConfigFile.new()
+ f.load(path)
+
+ _ctrls.run_all.set_shortcut(f.get_value('main', 'run_all', emptyShortcut))
+ _ctrls.run_current_script.set_shortcut(f.get_value('main', 'run_current_script', emptyShortcut))
+ _ctrls.run_current_inner.set_shortcut(f.get_value('main', 'run_current_inner', emptyShortcut))
+ _ctrls.run_current_test.set_shortcut(f.get_value('main', 'run_current_test', emptyShortcut))
+ _ctrls.panel_button.set_shortcut(f.get_value('main', 'panel_button', emptyShortcut))
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/BottomPanelShortcuts.tscn b/samples/client/petstore/gdscript/addons/gut/gui/BottomPanelShortcuts.tscn
new file mode 100644
index 000000000000..bfcdd389e34d
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/BottomPanelShortcuts.tscn
@@ -0,0 +1,150 @@
+[gd_scene load_steps=3 format=3 uid="uid://bsk32dh41b4gs"]
+
+[ext_resource type="PackedScene" uid="uid://sfb1fw8j6ufu" path="res://addons/gut/gui/ShortcutButton.tscn" id="1"]
+[ext_resource type="Script" path="res://addons/gut/gui/BottomPanelShortcuts.gd" id="2"]
+
+[node name="BottomPanelShortcuts" type="Popup"]
+title = "Shortcuts"
+size = Vector2i(500, 350)
+visible = true
+exclusive = true
+script = ExtResource("2")
+
+[node name="Layout" type="VBoxContainer" parent="."]
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
+offset_left = 5.0
+offset_right = -5.0
+offset_bottom = 2.0
+
+[node name="TopPad" type="CenterContainer" parent="Layout"]
+custom_minimum_size = Vector2(0, 5)
+layout_mode = 2
+
+[node name="Label2" type="Label" parent="Layout"]
+custom_minimum_size = Vector2(0, 20)
+layout_mode = 2
+text = "Always Active"
+
+[node name="ColorRect" type="ColorRect" parent="Layout/Label2"]
+show_behind_parent = true
+layout_mode = 0
+anchor_right = 1.0
+anchor_bottom = 1.0
+color = Color(0, 0, 0, 0.196078)
+
+[node name="CPanelButton" type="HBoxContainer" parent="Layout"]
+layout_mode = 2
+
+[node name="Label" type="Label" parent="Layout/CPanelButton"]
+custom_minimum_size = Vector2(50, 0)
+layout_mode = 2
+size_flags_vertical = 7
+text = "Show/Hide GUT Panel"
+
+[node name="ShortcutButton" parent="Layout/CPanelButton" instance=ExtResource("1")]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="GutPanelPad" type="CenterContainer" parent="Layout"]
+custom_minimum_size = Vector2(0, 5)
+layout_mode = 2
+
+[node name="Label" type="Label" parent="Layout"]
+custom_minimum_size = Vector2(0, 20)
+layout_mode = 2
+text = "Only Active When GUT Panel Shown"
+
+[node name="ColorRect2" type="ColorRect" parent="Layout/Label"]
+show_behind_parent = true
+layout_mode = 0
+anchor_right = 1.0
+anchor_bottom = 1.0
+color = Color(0, 0, 0, 0.196078)
+
+[node name="TopPad2" type="CenterContainer" parent="Layout"]
+custom_minimum_size = Vector2(0, 5)
+layout_mode = 2
+
+[node name="CRunAll" type="HBoxContainer" parent="Layout"]
+layout_mode = 2
+
+[node name="Label" type="Label" parent="Layout/CRunAll"]
+custom_minimum_size = Vector2(50, 0)
+layout_mode = 2
+size_flags_vertical = 7
+text = "Run All"
+
+[node name="ShortcutButton" parent="Layout/CRunAll" instance=ExtResource("1")]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="CRunCurrentScript" type="HBoxContainer" parent="Layout"]
+layout_mode = 2
+
+[node name="Label" type="Label" parent="Layout/CRunCurrentScript"]
+custom_minimum_size = Vector2(50, 0)
+layout_mode = 2
+size_flags_vertical = 7
+text = "Run Current Script"
+
+[node name="ShortcutButton" parent="Layout/CRunCurrentScript" instance=ExtResource("1")]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="CRunCurrentInner" type="HBoxContainer" parent="Layout"]
+layout_mode = 2
+
+[node name="Label" type="Label" parent="Layout/CRunCurrentInner"]
+custom_minimum_size = Vector2(50, 0)
+layout_mode = 2
+size_flags_vertical = 7
+text = "Run Current Inner Class"
+
+[node name="ShortcutButton" parent="Layout/CRunCurrentInner" instance=ExtResource("1")]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="CRunCurrentTest" type="HBoxContainer" parent="Layout"]
+layout_mode = 2
+
+[node name="Label" type="Label" parent="Layout/CRunCurrentTest"]
+custom_minimum_size = Vector2(50, 0)
+layout_mode = 2
+size_flags_vertical = 7
+text = "Run Current Test"
+
+[node name="ShortcutButton" parent="Layout/CRunCurrentTest" instance=ExtResource("1")]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="CenterContainer2" type="CenterContainer" parent="Layout"]
+custom_minimum_size = Vector2(0, 5)
+layout_mode = 2
+size_flags_horizontal = 3
+size_flags_vertical = 3
+
+[node name="ShiftDisclaimer" type="Label" parent="Layout"]
+layout_mode = 2
+text = "\"Shift\" cannot be the only modifier for a shortcut."
+
+[node name="HBoxContainer" type="HBoxContainer" parent="Layout"]
+layout_mode = 2
+
+[node name="CenterContainer" type="CenterContainer" parent="Layout/HBoxContainer"]
+layout_mode = 2
+size_flags_horizontal = 3
+size_flags_vertical = 3
+
+[node name="Hide" type="Button" parent="Layout/HBoxContainer"]
+custom_minimum_size = Vector2(60, 30)
+layout_mode = 2
+text = "Close"
+
+[node name="BottomPad" type="CenterContainer" parent="Layout"]
+custom_minimum_size = Vector2(0, 10)
+layout_mode = 2
+size_flags_horizontal = 3
+
+[connection signal="pressed" from="Layout/HBoxContainer/Hide" to="." method="_on_Hide_pressed"]
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/GutBottomPanel.gd b/samples/client/petstore/gdscript/addons/gut/gui/GutBottomPanel.gd
new file mode 100644
index 000000000000..404320b90cb6
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/GutBottomPanel.gd
@@ -0,0 +1,367 @@
+@tool
+extends Control
+
+const RUNNER_JSON_PATH = 'res://.gut_editor_config.json'
+const RESULT_FILE = 'user://.gut_editor.bbcode'
+const RESULT_JSON = 'user://.gut_editor.json'
+const SHORTCUTS_PATH = 'res://.gut_editor_shortcuts.cfg'
+
+var TestScript = load('res://addons/gut/test.gd')
+var GutConfigGui = load('res://addons/gut/gui/gut_config_gui.gd')
+var ScriptTextEditors = load('res://addons/gut/gui/script_text_editor_controls.gd')
+
+var _interface = null;
+var _is_running = false;
+var _gut_config = load('res://addons/gut/gut_config.gd').new()
+var _gut_config_gui = null
+var _gut_plugin = null
+var _light_color = Color(0, 0, 0, .5)
+var _panel_button = null
+var _last_selected_path = null
+
+
+@onready var _ctrls = {
+ output = $layout/RSplit/CResults/TabBar/OutputText.get_rich_text_edit(),
+ output_ctrl = $layout/RSplit/CResults/TabBar/OutputText,
+ run_button = $layout/ControlBar/RunAll,
+ shortcuts_button = $layout/ControlBar/Shortcuts,
+
+ settings_button = $layout/ControlBar/Settings,
+ run_results_button = $layout/ControlBar/RunResultsBtn,
+ output_button = $layout/ControlBar/OutputBtn,
+
+ settings = $layout/RSplit/sc/Settings,
+ shortcut_dialog = $BottomPanelShortcuts,
+ light = $layout/RSplit/CResults/ControlBar/Light3D,
+ results = {
+ bar = $layout/RSplit/CResults/ControlBar,
+ passing = $layout/RSplit/CResults/ControlBar/Passing/value,
+ failing = $layout/RSplit/CResults/ControlBar/Failing/value,
+ pending = $layout/RSplit/CResults/ControlBar/Pending/value,
+ errors = $layout/RSplit/CResults/ControlBar/Errors/value,
+ warnings = $layout/RSplit/CResults/ControlBar/Warnings/value,
+ orphans = $layout/RSplit/CResults/ControlBar/Orphans/value
+ },
+ run_at_cursor = $layout/ControlBar/RunAtCursor,
+ run_results = $layout/RSplit/CResults/TabBar/RunResults
+}
+
+
+func _init():
+ _gut_config.load_panel_options(RUNNER_JSON_PATH)
+
+
+func _ready():
+ _ctrls.results.bar.connect('draw', _on_results_bar_draw.bind(_ctrls.results.bar))
+ hide_settings(!_ctrls.settings_button.button_pressed)
+ _gut_config_gui = GutConfigGui.new(_ctrls.settings)
+ _gut_config_gui.set_options(_gut_config.options)
+
+ _apply_options_to_controls()
+
+ _ctrls.shortcuts_button.icon = get_theme_icon('Shortcut', 'EditorIcons')
+ _ctrls.settings_button.icon = get_theme_icon('Tools', 'EditorIcons')
+ _ctrls.run_results_button.icon = get_theme_icon('AnimationTrackGroup', 'EditorIcons') # Tree
+ _ctrls.output_button.icon = get_theme_icon('Font', 'EditorIcons')
+
+ _ctrls.run_results.set_output_control(_ctrls.output_ctrl)
+ _ctrls.run_results.set_font(
+ _gut_config.options.panel_options.font_name,
+ _gut_config.options.panel_options.font_size)
+
+ var check_import = load('res://addons/gut/images/red.png')
+ if(check_import == null):
+ _ctrls.run_results.add_centered_text("GUT got some new images that are not imported yet. Please restart Godot.")
+ print('GUT got some new images that are not imported yet. Please restart Godot.')
+ else:
+ _ctrls.run_results.add_centered_text("Let's run some tests!")
+
+
+func _apply_options_to_controls():
+ hide_settings(_gut_config.options.panel_options.hide_settings)
+ hide_result_tree(_gut_config.options.panel_options.hide_result_tree)
+ hide_output_text(_gut_config.options.panel_options.hide_output_text)
+
+ _ctrls.output_ctrl.set_use_colors(_gut_config.options.panel_options.use_colors)
+ _ctrls.output_ctrl.set_all_fonts(_gut_config.options.panel_options.font_name)
+ _ctrls.output_ctrl.set_font_size(_gut_config.options.panel_options.font_size)
+
+ _ctrls.run_results.set_font(
+ _gut_config.options.panel_options.font_name,
+ _gut_config.options.panel_options.font_size)
+ _ctrls.run_results.set_show_orphans(!_gut_config.options.hide_orphans)
+
+
+func _process(delta):
+ if(_is_running):
+ if(!_interface.is_playing_scene()):
+ _is_running = false
+ _ctrls.output_ctrl.add_text("\ndone")
+ load_result_output()
+ _gut_plugin.make_bottom_panel_item_visible(self)
+
+# ---------------
+# Private
+# ---------------
+
+func load_shortcuts():
+ _ctrls.shortcut_dialog.load_shortcuts(SHORTCUTS_PATH)
+ _apply_shortcuts()
+
+
+func _is_test_script(script):
+ var from = script.get_base_script()
+ while(from and from.resource_path != 'res://addons/gut/test.gd'):
+ from = from.get_base_script()
+
+ return from != null
+
+
+func _show_errors(errs):
+ _ctrls.output_ctrl.clear()
+ var text = "Cannot run tests, you have a configuration error:\n"
+ for e in errs:
+ text += str('* ', e, "\n")
+ text += "Check your settings ----->"
+ _ctrls.output_ctrl.add_text(text)
+ hide_output_text(false)
+ hide_settings(false)
+
+
+func _save_config():
+ _gut_config.options = _gut_config_gui.get_options(_gut_config.options)
+ _gut_config.options.panel_options.hide_settings = !_ctrls.settings_button.button_pressed
+ _gut_config.options.panel_options.hide_result_tree = !_ctrls.run_results_button.button_pressed
+ _gut_config.options.panel_options.hide_output_text = !_ctrls.output_button.button_pressed
+ _gut_config.options.panel_options.use_colors = _ctrls.output_ctrl.get_use_colors()
+
+ var w_result = _gut_config.write_options(RUNNER_JSON_PATH)
+ if(w_result != OK):
+ push_error(str('Could not write options to ', RUNNER_JSON_PATH, ': ', w_result))
+ return;
+
+
+func _run_tests():
+ var issues = _gut_config_gui.get_config_issues()
+ if(issues.size() > 0):
+ _show_errors(issues)
+ return
+
+ write_file(RESULT_FILE, 'Run in progress')
+ _save_config()
+ _apply_options_to_controls()
+
+ _ctrls.output_ctrl.clear()
+ _ctrls.run_results.clear()
+ _ctrls.run_results.add_centered_text('Running...')
+
+ _interface.play_custom_scene('res://addons/gut/gui/GutRunner.tscn')
+ _is_running = true
+ _ctrls.output_ctrl.add_text('Running...')
+
+
+func _apply_shortcuts():
+ _ctrls.run_button.shortcut = _ctrls.shortcut_dialog.get_run_all()
+
+ _ctrls.run_at_cursor.get_script_button().shortcut = \
+ _ctrls.shortcut_dialog.get_run_current_script()
+ _ctrls.run_at_cursor.get_inner_button().shortcut = \
+ _ctrls.shortcut_dialog.get_run_current_inner()
+ _ctrls.run_at_cursor.get_test_button().shortcut = \
+ _ctrls.shortcut_dialog.get_run_current_test()
+
+ _panel_button.shortcut = _ctrls.shortcut_dialog.get_panel_button()
+
+
+func _run_all():
+ _gut_config.options.selected = null
+ _gut_config.options.inner_class = null
+ _gut_config.options.unit_test_name = null
+
+ _run_tests()
+
+
+# ---------------
+# Events
+# ---------------
+func _on_results_bar_draw(bar):
+ bar.draw_rect(Rect2(Vector2(0, 0), bar.size), Color(0, 0, 0, .2))
+
+
+func _on_Light_draw():
+ var l = _ctrls.light
+ l.draw_circle(Vector2(l.size.x / 2, l.size.y / 2), l.size.x / 2, _light_color)
+
+
+func _on_editor_script_changed(script):
+ if(script):
+ set_current_script(script)
+
+
+func _on_RunAll_pressed():
+ _run_all()
+
+
+func _on_Shortcuts_pressed():
+ _ctrls.shortcut_dialog.popup_centered()
+
+func _on_bottom_panel_shortcuts_visibility_changed():
+ _apply_shortcuts()
+ _ctrls.shortcut_dialog.save_shortcuts(SHORTCUTS_PATH)
+
+func _on_RunAtCursor_run_tests(what):
+ _gut_config.options.selected = what.script
+ _gut_config.options.inner_class = what.inner_class
+ _gut_config.options.unit_test_name = what.test_method
+
+ _run_tests()
+
+
+func _on_Settings_pressed():
+ hide_settings(!_ctrls.settings_button.button_pressed)
+ _save_config()
+
+
+func _on_OutputBtn_pressed():
+ hide_output_text(!_ctrls.output_button.button_pressed)
+ _save_config()
+
+
+func _on_RunResultsBtn_pressed():
+ hide_result_tree(! _ctrls.run_results_button.button_pressed)
+ _save_config()
+
+
+# Currently not used, but will be when I figure out how to put
+# colors into the text results
+func _on_UseColors_pressed():
+ pass
+
+# ---------------
+# Public
+# ---------------
+func hide_result_tree(should):
+ _ctrls.run_results.visible = !should
+ _ctrls.run_results_button.button_pressed = !should
+
+
+func hide_settings(should):
+ var s_scroll = _ctrls.settings.get_parent()
+ s_scroll.visible = !should
+
+ # collapse only collapses the first control, so we move
+ # settings around to be the collapsed one
+ if(should):
+ s_scroll.get_parent().move_child(s_scroll, 0)
+ else:
+ s_scroll.get_parent().move_child(s_scroll, 1)
+
+ $layout/RSplit.collapsed = should
+ _ctrls.settings_button.button_pressed = !should
+
+
+func hide_output_text(should):
+ $layout/RSplit/CResults/TabBar/OutputText.visible = !should
+ _ctrls.output_button.button_pressed = !should
+
+
+func load_result_output():
+ _ctrls.output_ctrl.load_file(RESULT_FILE)
+
+ var summary = get_file_as_text(RESULT_JSON)
+ var test_json_conv = JSON.new()
+ if (test_json_conv.parse(summary) != OK):
+ return
+ var results = test_json_conv.get_data()
+
+ _ctrls.run_results.load_json_results(results)
+
+ var summary_json = results['test_scripts']['props']
+ _ctrls.results.passing.text = str(summary_json.passing)
+ _ctrls.results.passing.get_parent().visible = true
+
+ _ctrls.results.failing.text = str(summary_json.failures)
+ _ctrls.results.failing.get_parent().visible = true
+
+ _ctrls.results.pending.text = str(summary_json.pending)
+ _ctrls.results.pending.get_parent().visible = _ctrls.results.pending.text != '0'
+
+ _ctrls.results.errors.text = str(summary_json.errors)
+ _ctrls.results.errors.get_parent().visible = _ctrls.results.errors.text != '0'
+
+ _ctrls.results.warnings.text = str(summary_json.warnings)
+ _ctrls.results.warnings.get_parent().visible = _ctrls.results.warnings.text != '0'
+
+ _ctrls.results.orphans.text = str(summary_json.orphans)
+ _ctrls.results.orphans.get_parent().visible = _ctrls.results.orphans.text != '0' and !_gut_config.options.hide_orphans
+
+ if(summary_json.tests == 0):
+ _light_color = Color(1, 0, 0, .75)
+ elif(summary_json.failures != 0):
+ _light_color = Color(1, 0, 0, .75)
+ elif(summary_json.pending != 0):
+ _light_color = Color(1, 1, 0, .75)
+ else:
+ _light_color = Color(0, 1, 0, .75)
+ _ctrls.light.visible = true
+ _ctrls.light.queue_redraw()
+
+
+func set_current_script(script):
+ if(script):
+ if(_is_test_script(script)):
+ var file = script.resource_path.get_file()
+ _last_selected_path = script.resource_path.get_file()
+ _ctrls.run_at_cursor.activate_for_script(script.resource_path)
+
+
+func set_interface(value):
+ _interface = value
+ _interface.get_script_editor().connect("editor_script_changed",Callable(self,'_on_editor_script_changed'))
+
+ var ste = ScriptTextEditors.new(_interface.get_script_editor())
+ _ctrls.run_results.set_interface(_interface)
+ _ctrls.run_results.set_script_text_editors(ste)
+ _ctrls.run_at_cursor.set_script_text_editors(ste)
+ set_current_script(_interface.get_script_editor().get_current_script())
+
+
+func set_plugin(value):
+ _gut_plugin = value
+
+
+func set_panel_button(value):
+ _panel_button = value
+
+# ------------------------------------------------------------------------------
+# Write a file.
+# ------------------------------------------------------------------------------
+func write_file(path, content):
+ var f = FileAccess.open(path, FileAccess.WRITE)
+ if(f != null):
+ f.store_string(content)
+ f = null;
+
+ return FileAccess.get_open_error()
+
+
+# ------------------------------------------------------------------------------
+# Returns the text of a file or an empty string if the file could not be opened.
+# ------------------------------------------------------------------------------
+func get_file_as_text(path):
+ var to_return = ''
+ var f = FileAccess.open(path, FileAccess.READ)
+ if(f != null):
+ to_return = f.get_as_text()
+ f = null
+ return to_return
+
+
+# ------------------------------------------------------------------------------
+# return if_null if value is null otherwise return value
+# ------------------------------------------------------------------------------
+func nvl(value, if_null):
+ if(value == null):
+ return if_null
+ else:
+ return value
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/GutBottomPanel.tscn b/samples/client/petstore/gdscript/addons/gut/gui/GutBottomPanel.tscn
new file mode 100644
index 000000000000..fdcdc1e6ed70
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/GutBottomPanel.tscn
@@ -0,0 +1,249 @@
+[gd_scene load_steps=10 format=3 uid="uid://b3bostcslstem"]
+
+[ext_resource type="Script" path="res://addons/gut/gui/GutBottomPanel.gd" id="1"]
+[ext_resource type="PackedScene" uid="uid://bsk32dh41b4gs" path="res://addons/gut/gui/BottomPanelShortcuts.tscn" id="2"]
+[ext_resource type="PackedScene" uid="uid://0yunjxtaa8iw" path="res://addons/gut/gui/RunAtCursor.tscn" id="3"]
+[ext_resource type="Texture2D" uid="uid://cr6tvdv0ve6cv" path="res://addons/gut/gui/play.png" id="4"]
+[ext_resource type="PackedScene" uid="uid://4gyyn12um08h" path="res://addons/gut/gui/RunResults.tscn" id="5"]
+[ext_resource type="PackedScene" uid="uid://bqmo4dj64c7yl" path="res://addons/gut/gui/OutputText.tscn" id="6"]
+
+[sub_resource type="Shortcut" id="9"]
+
+[sub_resource type="Image" id="Image_18d1g"]
+data = {
+"data": PackedByteArray(255, 255, 255, 0, 255, 255, 255, 0, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 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, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 93, 93, 131, 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, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 131, 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, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 131, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 94, 94, 127, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 231, 255, 93, 93, 55, 255, 97, 97, 58, 255, 93, 93, 233, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 231, 255, 94, 94, 54, 255, 94, 94, 57, 255, 93, 93, 233, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 97, 97, 42, 255, 255, 255, 0, 255, 255, 255, 0, 255, 97, 97, 42, 255, 93, 93, 233, 255, 93, 93, 232, 255, 93, 93, 41, 255, 255, 255, 0, 255, 255, 255, 0, 255, 97, 97, 42, 255, 93, 93, 233, 255, 93, 93, 232, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 96, 96, 45, 255, 97, 97, 42, 255, 255, 255, 0, 255, 97, 97, 42, 255, 97, 97, 42, 255, 255, 255, 0, 255, 98, 98, 47, 255, 97, 97, 42, 255, 255, 255, 0, 255, 97, 97, 42, 255, 97, 97, 42, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 96, 96, 45, 255, 93, 93, 235, 255, 93, 93, 233, 255, 97, 97, 42, 255, 255, 255, 0, 255, 255, 255, 0, 255, 94, 94, 46, 255, 93, 93, 236, 255, 93, 93, 233, 255, 97, 97, 42, 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, 93, 93, 235, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 233, 255, 95, 95, 59, 255, 96, 96, 61, 255, 93, 93, 235, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 233, 255, 95, 95, 59, 255, 96, 96, 61, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 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, 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, 0, 255, 255, 255, 0, 255, 255, 255, 0),
+"format": "RGBA8",
+"height": 16,
+"mipmaps": false,
+"width": 16
+}
+
+[sub_resource type="ImageTexture" id="ImageTexture_8u17l"]
+image = SubResource("Image_18d1g")
+
+[node name="GutBottomPanel" type="Control"]
+custom_minimum_size = Vector2(250, 250)
+layout_mode = 3
+anchor_left = -0.0025866
+anchor_top = -0.00176575
+anchor_right = 0.997413
+anchor_bottom = 0.998234
+offset_left = 2.64868
+offset_top = 1.05945
+offset_right = 2.64862
+offset_bottom = 1.05945
+script = ExtResource("1")
+
+[node name="layout" type="VBoxContainer" parent="."]
+layout_mode = 0
+anchor_right = 1.0
+anchor_bottom = 1.0
+
+[node name="ControlBar" type="HBoxContainer" parent="layout"]
+layout_mode = 2
+
+[node name="RunAll" type="Button" parent="layout/ControlBar"]
+layout_mode = 2
+size_flags_vertical = 11
+shortcut = SubResource("9")
+text = "Run All"
+icon = ExtResource("4")
+
+[node name="Label" type="Label" parent="layout/ControlBar"]
+layout_mode = 2
+mouse_filter = 1
+text = "Current: "
+
+[node name="RunAtCursor" parent="layout/ControlBar" instance=ExtResource("3")]
+layout_mode = 2
+
+[node name="CenterContainer2" type="CenterContainer" parent="layout/ControlBar"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="Sep1" type="ColorRect" parent="layout/ControlBar"]
+custom_minimum_size = Vector2(1, 2.08165e-12)
+layout_mode = 2
+
+[node name="RunResultsBtn" type="Button" parent="layout/ControlBar"]
+layout_mode = 2
+toggle_mode = true
+button_pressed = true
+icon = SubResource("ImageTexture_8u17l")
+
+[node name="OutputBtn" type="Button" parent="layout/ControlBar"]
+layout_mode = 2
+toggle_mode = true
+icon = SubResource("ImageTexture_8u17l")
+
+[node name="Settings" type="Button" parent="layout/ControlBar"]
+layout_mode = 2
+toggle_mode = true
+button_pressed = true
+icon = SubResource("ImageTexture_8u17l")
+
+[node name="Sep2" type="ColorRect" parent="layout/ControlBar"]
+custom_minimum_size = Vector2(1, 2.08165e-12)
+layout_mode = 2
+
+[node name="Shortcuts" type="Button" parent="layout/ControlBar"]
+layout_mode = 2
+size_flags_vertical = 11
+icon = SubResource("ImageTexture_8u17l")
+
+[node name="RSplit" type="HSplitContainer" parent="layout"]
+layout_mode = 2
+size_flags_horizontal = 3
+size_flags_vertical = 3
+
+[node name="CResults" type="VBoxContainer" parent="layout/RSplit"]
+layout_mode = 2
+size_flags_horizontal = 3
+size_flags_vertical = 3
+
+[node name="ControlBar" type="HBoxContainer" parent="layout/RSplit/CResults"]
+layout_mode = 2
+
+[node name="Sep2" type="ColorRect" parent="layout/RSplit/CResults/ControlBar"]
+custom_minimum_size = Vector2(1, 2.08165e-12)
+layout_mode = 2
+
+[node name="Light3D" type="Control" parent="layout/RSplit/CResults/ControlBar"]
+custom_minimum_size = Vector2(30, 30)
+layout_mode = 2
+
+[node name="Passing" type="HBoxContainer" parent="layout/RSplit/CResults/ControlBar"]
+visible = false
+layout_mode = 2
+
+[node name="Sep" type="ColorRect" parent="layout/RSplit/CResults/ControlBar/Passing"]
+custom_minimum_size = Vector2(1, 2.08165e-12)
+layout_mode = 2
+
+[node name="label" type="Label" parent="layout/RSplit/CResults/ControlBar/Passing"]
+layout_mode = 2
+text = "Passing"
+
+[node name="value" type="Label" parent="layout/RSplit/CResults/ControlBar/Passing"]
+layout_mode = 2
+text = "---"
+
+[node name="Failing" type="HBoxContainer" parent="layout/RSplit/CResults/ControlBar"]
+visible = false
+layout_mode = 2
+
+[node name="Sep" type="ColorRect" parent="layout/RSplit/CResults/ControlBar/Failing"]
+custom_minimum_size = Vector2(1, 2.08165e-12)
+layout_mode = 2
+
+[node name="label" type="Label" parent="layout/RSplit/CResults/ControlBar/Failing"]
+layout_mode = 2
+text = "Failing"
+
+[node name="value" type="Label" parent="layout/RSplit/CResults/ControlBar/Failing"]
+layout_mode = 2
+text = "---"
+
+[node name="Pending" type="HBoxContainer" parent="layout/RSplit/CResults/ControlBar"]
+visible = false
+layout_mode = 2
+
+[node name="Sep" type="ColorRect" parent="layout/RSplit/CResults/ControlBar/Pending"]
+custom_minimum_size = Vector2(1, 2.08165e-12)
+layout_mode = 2
+
+[node name="label" type="Label" parent="layout/RSplit/CResults/ControlBar/Pending"]
+layout_mode = 2
+text = "Pending"
+
+[node name="value" type="Label" parent="layout/RSplit/CResults/ControlBar/Pending"]
+layout_mode = 2
+text = "---"
+
+[node name="Orphans" type="HBoxContainer" parent="layout/RSplit/CResults/ControlBar"]
+visible = false
+layout_mode = 2
+
+[node name="Sep" type="ColorRect" parent="layout/RSplit/CResults/ControlBar/Orphans"]
+custom_minimum_size = Vector2(1, 2.08165e-12)
+layout_mode = 2
+
+[node name="label" type="Label" parent="layout/RSplit/CResults/ControlBar/Orphans"]
+layout_mode = 2
+text = "Orphans"
+
+[node name="value" type="Label" parent="layout/RSplit/CResults/ControlBar/Orphans"]
+layout_mode = 2
+text = "---"
+
+[node name="Errors" type="HBoxContainer" parent="layout/RSplit/CResults/ControlBar"]
+visible = false
+layout_mode = 2
+
+[node name="Sep" type="ColorRect" parent="layout/RSplit/CResults/ControlBar/Errors"]
+custom_minimum_size = Vector2(1, 2.08165e-12)
+layout_mode = 2
+
+[node name="label" type="Label" parent="layout/RSplit/CResults/ControlBar/Errors"]
+layout_mode = 2
+text = "Errors"
+
+[node name="value" type="Label" parent="layout/RSplit/CResults/ControlBar/Errors"]
+layout_mode = 2
+text = "---"
+
+[node name="Warnings" type="HBoxContainer" parent="layout/RSplit/CResults/ControlBar"]
+visible = false
+layout_mode = 2
+
+[node name="Sep" type="ColorRect" parent="layout/RSplit/CResults/ControlBar/Warnings"]
+custom_minimum_size = Vector2(1, 2.08165e-12)
+layout_mode = 2
+
+[node name="label" type="Label" parent="layout/RSplit/CResults/ControlBar/Warnings"]
+layout_mode = 2
+text = "Warnings"
+
+[node name="value" type="Label" parent="layout/RSplit/CResults/ControlBar/Warnings"]
+layout_mode = 2
+text = "---"
+
+[node name="CenterContainer" type="CenterContainer" parent="layout/RSplit/CResults/ControlBar"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="TabBar" type="HSplitContainer" parent="layout/RSplit/CResults"]
+layout_mode = 2
+size_flags_horizontal = 3
+size_flags_vertical = 3
+
+[node name="RunResults" parent="layout/RSplit/CResults/TabBar" instance=ExtResource("5")]
+layout_mode = 2
+size_flags_horizontal = 3
+size_flags_vertical = 3
+
+[node name="OutputText" parent="layout/RSplit/CResults/TabBar" instance=ExtResource("6")]
+visible = false
+layout_mode = 2
+
+[node name="sc" type="ScrollContainer" parent="layout/RSplit"]
+custom_minimum_size = Vector2(500, 2.08165e-12)
+layout_mode = 2
+size_flags_vertical = 3
+
+[node name="Settings" type="VBoxContainer" parent="layout/RSplit/sc"]
+layout_mode = 2
+size_flags_horizontal = 3
+size_flags_vertical = 3
+
+[node name="BottomPanelShortcuts" parent="." instance=ExtResource("2")]
+visible = false
+
+[connection signal="pressed" from="layout/ControlBar/RunAll" to="." method="_on_RunAll_pressed"]
+[connection signal="run_tests" from="layout/ControlBar/RunAtCursor" to="." method="_on_RunAtCursor_run_tests"]
+[connection signal="pressed" from="layout/ControlBar/RunResultsBtn" to="." method="_on_RunResultsBtn_pressed"]
+[connection signal="pressed" from="layout/ControlBar/OutputBtn" to="." method="_on_OutputBtn_pressed"]
+[connection signal="pressed" from="layout/ControlBar/Settings" to="." method="_on_Settings_pressed"]
+[connection signal="pressed" from="layout/ControlBar/Shortcuts" to="." method="_on_Shortcuts_pressed"]
+[connection signal="draw" from="layout/RSplit/CResults/ControlBar/Light3D" to="." method="_on_Light_draw"]
+[connection signal="visibility_changed" from="BottomPanelShortcuts" to="." method="_on_bottom_panel_shortcuts_visibility_changed"]
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/GutRunner.gd b/samples/client/petstore/gdscript/addons/gut/gui/GutRunner.gd
new file mode 100644
index 000000000000..1214353b6de3
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/GutRunner.gd
@@ -0,0 +1,121 @@
+extends Node2D
+
+var Gut = load('res://addons/gut/gut.gd')
+var ResultExporter = load('res://addons/gut/result_exporter.gd')
+var GutConfig = load('res://addons/gut/gut_config.gd')
+
+const RUNNER_JSON_PATH = 'res://.gut_editor_config.json'
+const RESULT_FILE = 'user://.gut_editor.bbcode'
+const RESULT_JSON = 'user://.gut_editor.json'
+
+var _gut_config = null
+var _gut = null;
+var _wrote_results = false
+# Flag for when this is being used at the command line. Otherwise it is
+# assumed this is being used by the panel and being launched with
+# play_custom_scene
+var _cmdln_mode = false
+
+@onready var _gut_layer = $GutLayer
+@onready var _gui = $GutLayer/GutScene
+
+var auto_run_tests = true
+
+func _ready():
+ if(_gut_config == null):
+ _gut_config = GutConfig.new()
+ _gut_config.load_panel_options(RUNNER_JSON_PATH)
+
+ # The command line will call run_tests on its own. When used from the panel
+ # we have to kick off the tests ourselves b/c there's no way I know of to
+ # interact with the scene that was run via play_custom_scene.
+ if(!_cmdln_mode and auto_run_tests):
+ call_deferred('run_tests')
+
+
+func run_tests(show_gui=true):
+
+ if(_gut == null):
+ get_gut()
+
+ _setup_gui(show_gui)
+
+ _gut.add_children_to = self
+ if(_gut_config.options.gut_on_top):
+ _gut_layer.add_child(_gut)
+ else:
+ add_child(_gut)
+
+ if(!_cmdln_mode):
+ _gut.end_run.connect(_on_tests_finished.bind(_gut_config.options.should_exit, _gut_config.options.should_exit_on_success))
+
+ _gut_config.config_gut(_gut)
+ var run_rest_of_scripts = _gut_config.options.unit_test_name == ''
+
+ _gut.test_scripts(run_rest_of_scripts)
+
+
+func _setup_gui(show_gui):
+ if(show_gui):
+ _gui.gut = _gut
+ var printer = _gut.logger.get_printer('gui')
+ printer.set_textbox(_gui.get_textbox())
+ else:
+ _gut.logger.disable_printer('gui', true)
+ _gui.visible = false
+
+ var opts = _gut_config.options
+ _gui.set_font_size(opts.font_size)
+ _gui.set_font(opts.font_name)
+ if(opts.font_color != null and opts.font_color.is_valid_html_color()):
+ _gui.set_default_font_color(Color(opts.font_color))
+ if(opts.background_color != null and opts.background_color.is_valid_html_color()):
+ _gui.set_background_color(Color(opts.background_color))
+
+ _gui.set_opacity(min(1.0, float(opts.opacity) / 100))
+ # if(opts.should_maximize):
+ # _tester.maximize()
+ _gui.use_compact_mode(opts.compact_mode)
+
+
+
+func _write_results():
+ var content = _gui.get_textbox().get_parsed_text() #_gut.logger.get_gui_bbcode()
+ var f = FileAccess.open(RESULT_FILE, FileAccess.WRITE)
+ if(f != null):
+ f.store_string(content)
+ f = null # closes file
+ else:
+ push_error('Could not save bbcode, result = ', FileAccess.get_open_error())
+
+ var exporter = ResultExporter.new()
+ var f_result = exporter.write_json_file(_gut, RESULT_JSON)
+ _wrote_results = true
+
+
+func _exit_tree():
+ if(!_wrote_results and !_cmdln_mode):
+ _write_results()
+
+
+func _on_tests_finished(should_exit, should_exit_on_success):
+ _write_results()
+
+ if(should_exit):
+ get_tree().quit()
+ elif(should_exit_on_success and _gut.get_fail_count() == 0):
+ get_tree().quit()
+
+
+func get_gut():
+ if(_gut == null):
+ _gut = Gut.new()
+ return _gut
+
+
+func set_gut_config(which):
+ _gut_config = which
+
+
+func set_cmdln_mode(is_it):
+ _cmdln_mode = is_it
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/GutRunner.tscn b/samples/client/petstore/gdscript/addons/gut/gui/GutRunner.tscn
new file mode 100644
index 000000000000..fa98d3399ff9
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/GutRunner.tscn
@@ -0,0 +1,12 @@
+[gd_scene load_steps=3 format=3 uid="uid://bqy3ikt6vu4b5"]
+
+[ext_resource type="Script" path="res://addons/gut/gui/GutRunner.gd" id="1"]
+[ext_resource type="PackedScene" uid="uid://m28heqtswbuq" path="res://addons/gut/GutScene.tscn" id="2_6ruxb"]
+
+[node name="GutRunner" type="Node2D"]
+script = ExtResource("1")
+
+[node name="GutLayer" type="CanvasLayer" parent="."]
+layer = 128
+
+[node name="GutScene" parent="GutLayer" instance=ExtResource("2_6ruxb")]
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/GutSceneTheme.tres b/samples/client/petstore/gdscript/addons/gut/gui/GutSceneTheme.tres
new file mode 100644
index 000000000000..61ca6ab5edd1
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/GutSceneTheme.tres
@@ -0,0 +1,505 @@
+[gd_resource type="Theme" load_steps=6 format=3 uid="uid://cstkhwkpajvqu"]
+
+[ext_resource type="FontFile" uid="uid://c6c7gnx36opr0" path="res://addons/gut/fonts/AnonymousPro-Regular.ttf" id="1_df57p"]
+
+[sub_resource type="Image" id="Image_1b8gs"]
+data = {
+"data": PackedByteArray(255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 8, 255, 139, 255, 221, 255, 245, 255, 222, 255, 163, 255, 42, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 66, 255, 207, 255, 247, 255, 231, 255, 135, 255, 6, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 252, 255, 253, 255, 184, 255, 62, 255, 207, 255, 247, 255, 237, 255, 23, 255, 0, 255, 0, 255, 0, 255, 0, 255, 20, 255, 255, 255, 96, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 36, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 71, 255, 204, 255, 247, 255, 225, 255, 120, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 155, 255, 185, 255, 243, 255, 223, 255, 121, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 95, 255, 223, 255, 240, 255, 175, 255, 20, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 251, 255, 248, 255, 248, 255, 248, 255, 248, 255, 224, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 20, 255, 255, 255, 96, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 135, 255, 248, 255, 255, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 75, 255, 209, 255, 248, 255, 228, 255, 127, 255, 5, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 140, 255, 244, 255, 142, 255, 135, 255, 243, 255, 163, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 56, 255, 196, 255, 246, 255, 231, 255, 133, 255, 161, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 19, 255, 247, 255, 57, 255, 0, 255, 0, 255, 0, 255, 7, 255, 237, 255, 79, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 251, 255, 248, 255, 248, 255, 248, 255, 248, 255, 224, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 155, 255, 249, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 56, 255, 255, 255, 138, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 88, 255, 184, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 11, 255, 144, 255, 54, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 157, 255, 182, 255, 35, 255, 1, 255, 23, 255, 94, 255, 87, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 65, 255, 222, 255, 62, 255, 4, 255, 29, 255, 170, 255, 166, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 88, 255, 203, 255, 218, 255, 62, 255, 1, 255, 31, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 11, 255, 144, 255, 54, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 27, 255, 216, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 57, 255, 235, 255, 75, 255, 5, 255, 43, 255, 207, 255, 127, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 215, 255, 60, 255, 7, 255, 46, 255, 204, 255, 123, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 173, 255, 174, 255, 18, 255, 15, 255, 180, 255, 149, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 11, 255, 144, 255, 54, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 85, 255, 227, 255, 70, 255, 7, 255, 39, 255, 187, 255, 164, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 127, 255, 33, 255, 250, 255, 156, 255, 19, 255, 237, 255, 43, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 37, 255, 237, 255, 94, 255, 7, 255, 37, 255, 179, 255, 240, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 162, 255, 157, 255, 0, 255, 0, 255, 0, 255, 87, 255, 227, 255, 3, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 135, 255, 208, 255, 217, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 88, 255, 184, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 20, 255, 255, 255, 96, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 192, 255, 108, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 194, 255, 71, 255, 0, 255, 0, 255, 0, 255, 6, 255, 235, 255, 33, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 88, 255, 255, 255, 65, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 140, 255, 107, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 177, 255, 106, 255, 0, 255, 0, 255, 0, 255, 36, 255, 236, 255, 8, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 35, 255, 241, 255, 14, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 231, 255, 8, 255, 0, 255, 0, 255, 66, 255, 210, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 225, 255, 71, 255, 0, 255, 0, 255, 0, 255, 14, 255, 234, 255, 50, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 39, 255, 0, 255, 229, 255, 71, 255, 0, 255, 201, 255, 69, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 149, 255, 134, 255, 0, 255, 0, 255, 0, 255, 9, 255, 228, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 57, 255, 243, 255, 12, 255, 0, 255, 0, 255, 185, 255, 127, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 214, 255, 76, 255, 242, 255, 40, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 88, 255, 184, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 48, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 72, 255, 242, 255, 202, 255, 154, 255, 109, 255, 42, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 243, 255, 248, 255, 248, 255, 248, 255, 248, 255, 248, 255, 251, 255, 73, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 88, 255, 222, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 16, 255, 221, 255, 9, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 13, 255, 248, 255, 20, 255, 0, 255, 0, 255, 0, 255, 0, 255, 197, 255, 81, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 219, 255, 61, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 150, 255, 0, 255, 0, 255, 0, 255, 44, 255, 231, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 137, 255, 252, 255, 255, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 28, 255, 251, 255, 4, 255, 0, 255, 0, 255, 0, 255, 0, 255, 174, 255, 108, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 21, 255, 0, 255, 228, 255, 50, 255, 0, 255, 200, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 237, 255, 45, 255, 0, 255, 0, 255, 0, 255, 0, 255, 101, 255, 41, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 207, 255, 100, 255, 0, 255, 29, 255, 249, 255, 27, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 67, 255, 207, 255, 246, 255, 213, 255, 125, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 37, 255, 244, 255, 7, 255, 174, 255, 119, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 252, 255, 253, 255, 254, 255, 252, 255, 252, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 155, 255, 116, 255, 0, 255, 0, 255, 0, 255, 81, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 15, 255, 85, 255, 131, 255, 174, 255, 241, 255, 144, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 1, 255, 251, 255, 47, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 88, 255, 188, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 121, 255, 126, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 43, 255, 228, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 160, 255, 115, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 219, 255, 61, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 120, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 30, 255, 249, 255, 3, 255, 0, 255, 0, 255, 0, 255, 0, 255, 171, 255, 110, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 20, 255, 0, 255, 228, 255, 48, 255, 0, 255, 200, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 15, 255, 253, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 102, 255, 199, 255, 0, 255, 124, 255, 175, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 63, 255, 233, 255, 75, 255, 8, 255, 37, 255, 172, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 117, 255, 177, 255, 0, 255, 100, 255, 198, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 88, 255, 184, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 135, 255, 137, 255, 0, 255, 0, 255, 0, 255, 170, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 31, 255, 255, 255, 13, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 194, 255, 129, 255, 0, 255, 0, 255, 0, 255, 0, 255, 35, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 88, 255, 184, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 7, 255, 221, 255, 19, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 62, 255, 212, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 138, 255, 136, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 34, 255, 243, 255, 15, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 251, 255, 248, 255, 248, 255, 248, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 251, 255, 248, 255, 248, 255, 248, 255, 249, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 1, 255, 231, 255, 66, 255, 0, 255, 0, 255, 0, 255, 11, 255, 232, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 20, 255, 0, 255, 228, 255, 48, 255, 0, 255, 200, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 34, 255, 240, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 11, 255, 241, 255, 44, 255, 220, 255, 71, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 251, 255, 248, 255, 248, 255, 248, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 191, 255, 98, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 196, 255, 102, 255, 0, 255, 26, 255, 253, 255, 23, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 88, 255, 184, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 74, 255, 227, 255, 40, 255, 5, 255, 120, 255, 172, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 1, 255, 205, 255, 127, 255, 29, 255, 0, 255, 13, 255, 114, 255, 227, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 53, 255, 243, 255, 96, 255, 10, 255, 22, 255, 149, 255, 183, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 88, 255, 184, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 11, 255, 144, 255, 54, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 102, 255, 145, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 43, 255, 227, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 152, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 214, 255, 59, 255, 6, 255, 45, 255, 204, 255, 125, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 92, 255, 224, 255, 68, 255, 7, 255, 39, 255, 182, 255, 171, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 20, 255, 0, 255, 228, 255, 48, 255, 0, 255, 200, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 15, 255, 253, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 148, 255, 200, 255, 221, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 239, 255, 32, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 21, 255, 252, 255, 28, 255, 0, 255, 0, 255, 208, 255, 100, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 88, 255, 184, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 131, 255, 232, 255, 238, 255, 149, 255, 48, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 57, 255, 165, 255, 227, 255, 247, 255, 234, 255, 171, 255, 34, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 54, 255, 197, 255, 246, 255, 235, 255, 152, 255, 13, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 252, 255, 253, 255, 254, 255, 252, 255, 94, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 20, 255, 255, 255, 96, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 2, 255, 213, 255, 31, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 14, 255, 249, 255, 19, 255, 0, 255, 0, 255, 0, 255, 0, 255, 195, 255, 85, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 156, 255, 188, 255, 244, 255, 226, 255, 111, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 81, 255, 212, 255, 248, 255, 230, 255, 133, 255, 6, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 20, 255, 0, 255, 228, 255, 48, 255, 0, 255, 200, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 239, 255, 44, 255, 0, 255, 0, 255, 0, 255, 0, 255, 50, 255, 7, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 42, 255, 255, 255, 119, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 240, 255, 31, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 99, 255, 254, 255, 232, 255, 232, 255, 232, 255, 247, 255, 179, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 87, 255, 184, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 83, 255, 164, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 180, 255, 110, 255, 0, 255, 0, 255, 0, 255, 34, 255, 246, 255, 20, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 152, 255, 138, 255, 0, 255, 0, 255, 0, 255, 14, 255, 234, 255, 34, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 52, 255, 249, 255, 21, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 193, 255, 95, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 178, 255, 137, 255, 24, 255, 24, 255, 24, 255, 65, 255, 247, 255, 11, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 65, 255, 209, 255, 0, 255, 0, 255, 0, 255, 135, 255, 49, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 200, 255, 47, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 60, 255, 243, 255, 73, 255, 3, 255, 36, 255, 210, 255, 134, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 39, 255, 242, 255, 95, 255, 4, 255, 31, 255, 185, 255, 151, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 31, 255, 2, 255, 169, 255, 165, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 66, 255, 232, 255, 70, 255, 5, 255, 27, 255, 172, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 10, 255, 246, 255, 45, 255, 0, 255, 0, 255, 0, 255, 0, 255, 221, 255, 81, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 11, 255, 230, 255, 96, 255, 5, 255, 75, 255, 228, 255, 15, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 64, 255, 184, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 73, 255, 205, 255, 246, 255, 226, 255, 123, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 137, 255, 252, 255, 255, 255, 252, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 137, 255, 252, 255, 255, 255, 252, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 57, 255, 197, 255, 244, 255, 226, 255, 131, 255, 6, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 206, 255, 244, 255, 196, 255, 31, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 253, 255, 252, 255, 252, 255, 252, 255, 252, 255, 228, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 71, 255, 210, 255, 244, 255, 213, 255, 125, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 80, 255, 218, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 138, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 52, 255, 200, 255, 243, 255, 204, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 182, 255, 65, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 63, 255, 204, 255, 247, 255, 215, 255, 84, 255, 244, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 56, 255, 196, 255, 246, 255, 231, 255, 133, 255, 161, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 88, 255, 216, 255, 248, 255, 217, 255, 99, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 252, 255, 31, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 45, 255, 202, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 249, 255, 255, 255, 229, 255, 0, 255, 155, 255, 254, 255, 251, 255, 69, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 9, 255, 246, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 70, 255, 204, 255, 247, 255, 225, 255, 120, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 59, 255, 234, 255, 77, 255, 8, 255, 36, 255, 188, 255, 244, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 37, 255, 237, 255, 94, 255, 7, 255, 37, 255, 177, 255, 240, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 99, 255, 220, 255, 64, 255, 10, 255, 57, 255, 217, 255, 96, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 250, 255, 142, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 113, 255, 84, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 4, 255, 222, 255, 77, 255, 0, 255, 20, 255, 245, 255, 41, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 140, 255, 255, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 55, 255, 236, 255, 77, 255, 5, 255, 46, 255, 212, 255, 131, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 187, 255, 102, 255, 0, 255, 0, 255, 0, 255, 40, 255, 244, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 149, 255, 134, 255, 0, 255, 0, 255, 0, 255, 8, 255, 227, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 3, 255, 235, 255, 62, 255, 0, 255, 0, 255, 0, 255, 55, 255, 226, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 164, 255, 241, 255, 13, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 103, 255, 192, 255, 0, 255, 122, 255, 173, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 24, 255, 152, 255, 211, 255, 233, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 173, 255, 112, 255, 0, 255, 0, 255, 0, 255, 86, 255, 247, 255, 19, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 236, 255, 36, 255, 0, 255, 0, 255, 0, 255, 0, 255, 30, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 237, 255, 45, 255, 0, 255, 0, 255, 0, 255, 0, 255, 101, 255, 41, 255, 0, 255, 0, 255, 0, 255, 0, 255, 37, 255, 248, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 240, 255, 41, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 191, 255, 113, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 248, 255, 248, 255, 255, 255, 249, 255, 248, 255, 253, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 6, 255, 227, 255, 57, 255, 228, 255, 52, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 92, 255, 211, 255, 246, 255, 202, 255, 93, 255, 196, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 252, 255, 252, 255, 252, 255, 252, 255, 252, 255, 252, 255, 252, 255, 70, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 63, 255, 206, 255, 246, 255, 212, 255, 128, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 185, 255, 24, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 11, 255, 248, 255, 19, 255, 0, 255, 0, 255, 38, 255, 219, 255, 221, 255, 84, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 20, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 20, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 51, 255, 27, 255, 0, 255, 0, 255, 0, 255, 0, 255, 1, 255, 76, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 20, 255, 249, 255, 59, 255, 0, 255, 0, 255, 0, 255, 4, 255, 234, 255, 84, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 245, 255, 39, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 15, 255, 253, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 36, 255, 248, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 236, 255, 70, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 77, 255, 223, 255, 3, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 110, 255, 219, 255, 201, 255, 38, 255, 0, 255, 1, 255, 187, 255, 23, 255, 0, 255, 0, 255, 0, 255, 0, 255, 236, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 160, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 111, 255, 227, 255, 187, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 74, 255, 221, 255, 47, 255, 7, 255, 67, 255, 219, 255, 196, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 57, 255, 233, 255, 77, 255, 8, 255, 40, 255, 177, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 22, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 41, 255, 232, 255, 0, 255, 0, 255, 26, 255, 215, 255, 63, 255, 153, 255, 115, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 57, 255, 215, 255, 6, 255, 0, 255, 0, 255, 0, 255, 0, 255, 161, 255, 122, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 41, 255, 226, 255, 55, 255, 0, 255, 0, 255, 0, 255, 0, 255, 11, 255, 209, 255, 96, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 168, 255, 154, 255, 0, 255, 0, 255, 0, 255, 78, 255, 234, 255, 5, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 187, 255, 112, 255, 0, 255, 0, 255, 0, 255, 0, 255, 15, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 34, 255, 240, 255, 0, 255, 0, 255, 0, 255, 174, 255, 248, 255, 249, 255, 165, 255, 0, 255, 0, 255, 0, 255, 0, 255, 2, 255, 230, 255, 61, 255, 0, 255, 0, 255, 0, 255, 46, 255, 255, 255, 90, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 1, 255, 218, 255, 84, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 19, 255, 196, 255, 4, 255, 52, 255, 170, 255, 0, 255, 103, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 236, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 160, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 24, 255, 255, 255, 102, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 159, 255, 121, 255, 0, 255, 0, 255, 0, 255, 87, 255, 196, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 186, 255, 102, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 61, 255, 212, 255, 0, 255, 16, 255, 206, 255, 80, 255, 0, 255, 137, 255, 136, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 46, 255, 221, 255, 44, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 11, 255, 199, 255, 105, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 2, 255, 209, 255, 77, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 26, 255, 224, 255, 35, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 66, 255, 240, 255, 8, 255, 0, 255, 0, 255, 173, 255, 138, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 49, 255, 238, 255, 93, 255, 12, 255, 16, 255, 124, 255, 194, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 15, 255, 253, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 137, 255, 143, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 95, 255, 219, 255, 57, 255, 8, 255, 57, 255, 201, 255, 205, 255, 75, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 106, 255, 198, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 13, 255, 203, 255, 20, 255, 80, 255, 158, 255, 22, 255, 220, 255, 21, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 165, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 112, 255, 50, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 123, 255, 215, 255, 200, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 136, 255, 182, 255, 3, 255, 0, 255, 0, 255, 6, 255, 24, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 237, 255, 34, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 43, 255, 225, 255, 8, 255, 194, 255, 99, 255, 0, 255, 0, 255, 158, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 36, 255, 220, 255, 55, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 17, 255, 208, 255, 90, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 101, 255, 170, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 93, 255, 175, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 1, 255, 218, 255, 88, 255, 0, 255, 18, 255, 248, 255, 38, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 95, 255, 223, 255, 240, 255, 175, 255, 20, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 52, 255, 195, 255, 246, 255, 236, 255, 162, 255, 22, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 239, 255, 44, 255, 0, 255, 0, 255, 0, 255, 0, 255, 181, 255, 106, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 86, 255, 214, 255, 242, 255, 191, 255, 51, 255, 215, 255, 25, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 10, 255, 238, 255, 99, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 149, 255, 200, 255, 8, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 79, 255, 198, 255, 168, 255, 23, 255, 163, 255, 100, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 11, 255, 234, 255, 44, 255, 218, 255, 66, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 18, 255, 211, 255, 208, 255, 95, 255, 9, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 243, 255, 30, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 14, 255, 251, 255, 184, 255, 119, 255, 0, 255, 0, 255, 0, 255, 197, 255, 85, 255, 0, 255, 0, 255, 0, 255, 0, 255, 27, 255, 216, 255, 67, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 24, 255, 215, 255, 76, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 208, 255, 40, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 1, 255, 214, 255, 30, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 118, 255, 184, 255, 0, 255, 106, 255, 192, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 173, 255, 174, 255, 18, 255, 15, 255, 180, 255, 149, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 152, 255, 138, 255, 0, 255, 0, 255, 0, 255, 27, 255, 245, 255, 22, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 69, 255, 189, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 136, 255, 212, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 101, 255, 227, 255, 24, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 65, 255, 196, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 116, 255, 182, 255, 0, 255, 107, 255, 189, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 6, 255, 107, 255, 205, 255, 237, 255, 113, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 23, 255, 134, 255, 219, 255, 247, 255, 224, 255, 131, 255, 4, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 201, 255, 89, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 180, 255, 173, 255, 0, 255, 0, 255, 0, 255, 37, 255, 247, 255, 20, 255, 0, 255, 0, 255, 0, 255, 0, 255, 24, 255, 214, 255, 71, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 26, 255, 217, 255, 71, 255, 0, 255, 0, 255, 0, 255, 0, 255, 34, 255, 211, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 133, 255, 112, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 21, 255, 246, 255, 26, 255, 201, 255, 91, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 231, 255, 8, 255, 0, 255, 0, 255, 66, 255, 210, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 39, 255, 242, 255, 95, 255, 4, 255, 28, 255, 191, 255, 151, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 31, 255, 110, 255, 14, 255, 5, 255, 83, 255, 227, 255, 47, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 27, 255, 250, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 60, 255, 238, 255, 49, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 6, 255, 211, 255, 45, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 8, 255, 231, 255, 67, 255, 0, 255, 11, 255, 238, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 59, 255, 217, 255, 129, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 56, 255, 121, 255, 35, 255, 4, 255, 33, 255, 188, 255, 135, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 79, 255, 227, 255, 66, 255, 8, 255, 41, 255, 180, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 60, 255, 238, 255, 75, 255, 1, 255, 33, 255, 201, 255, 134, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 33, 255, 219, 255, 58, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 18, 255, 210, 255, 85, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 89, 255, 146, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 67, 255, 168, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 170, 255, 158, 255, 238, 255, 8, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 150, 255, 0, 255, 0, 255, 0, 255, 44, 255, 231, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 57, 255, 197, 255, 244, 255, 230, 255, 133, 255, 4, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 15, 255, 157, 255, 239, 255, 242, 255, 185, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 165, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 29, 255, 231, 255, 82, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 125, 255, 139, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 47, 255, 252, 255, 255, 255, 181, 255, 0, 255, 110, 255, 255, 255, 253, 255, 114, 255, 0, 255, 0, 255, 0, 255, 0, 255, 66, 255, 12, 255, 0, 255, 0, 255, 0, 255, 54, 255, 243, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 59, 255, 221, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 97, 255, 214, 255, 248, 255, 211, 255, 123, 255, 230, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 137, 255, 252, 255, 255, 255, 252, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 73, 255, 205, 255, 243, 255, 226, 255, 123, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 43, 255, 220, 255, 45, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 12, 255, 200, 255, 100, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 116, 255, 119, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 38, 255, 195, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 67, 255, 255, 255, 146, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 120, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 126, 255, 206, 255, 131, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 35, 255, 217, 255, 13, 255, 144, 255, 213, 255, 152, 255, 4, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 204, 255, 90, 255, 0, 255, 0, 255, 0, 255, 35, 255, 247, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 6, 255, 126, 255, 207, 255, 239, 255, 247, 255, 237, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 3, 255, 2, 255, 0, 255, 0, 255, 0, 255, 78, 255, 202, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 55, 255, 214, 255, 6, 255, 0, 255, 0, 255, 0, 255, 0, 255, 161, 255, 118, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 127, 255, 107, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 24, 255, 207, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 251, 255, 248, 255, 247, 255, 231, 255, 170, 255, 35, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 242, 255, 227, 255, 175, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 184, 255, 79, 255, 80, 255, 147, 255, 0, 255, 134, 255, 96, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 204, 255, 228, 255, 86, 255, 9, 255, 24, 255, 179, 255, 145, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 171, 255, 180, 255, 49, 255, 7, 255, 0, 255, 53, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 119, 255, 173, 255, 44, 255, 15, 255, 63, 255, 218, 255, 86, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 18, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 18, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 103, 255, 131, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 51, 255, 182, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 236, 255, 4, 255, 0, 255, 0, 255, 166, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 17, 255, 133, 255, 217, 255, 5, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 196, 255, 16, 255, 222, 255, 84, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 87, 255, 177, 255, 0, 255, 85, 255, 135, 255, 0, 255, 121, 255, 103, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 137, 255, 252, 255, 255, 255, 252, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 204, 255, 74, 255, 190, 255, 245, 255, 227, 255, 132, 255, 5, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 250, 255, 35, 255, 0, 255, 0, 255, 0, 255, 111, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 5, 255, 129, 255, 226, 255, 246, 255, 208, 255, 92, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 68, 255, 172, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 92, 255, 148, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 253, 255, 252, 255, 252, 255, 252, 255, 252, 255, 228, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 255, 255, 67, 255, 0, 255, 7, 255, 241, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 227, 255, 45, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 72, 255, 231, 255, 17, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 177, 255, 30, 255, 0, 255, 4, 255, 166, 255, 215, 255, 173, 255, 8, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 211, 255, 130, 255, 8, 255, 19, 255, 108, 255, 215, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 7, 255, 230, 255, 8, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 172, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 203, 255, 150, 255, 0, 255, 77, 255, 202, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 44, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 204, 255, 19, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 12, 255, 150, 255, 229, 255, 250, 255, 67, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 255, 255, 255, 255, 0, 255, 188, 255, 255, 255, 255, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 167, 255, 158, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 135, 255, 248, 255, 255, 255, 249, 255, 205, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 47, 255, 192, 255, 241, 255, 234, 255, 146, 255, 57, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 81, 255, 210, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 139, 255, 159, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 164, 255, 99, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 29, 255, 225, 255, 5, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 33, 255, 252, 255, 7, 255, 2, 255, 245, 255, 70, 255, 0, 255, 174, 255, 111, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 129, 255, 224, 255, 2, 255, 160, 255, 120, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 20, 255, 134, 255, 217, 255, 5, 255, 0, 255, 0, 255, 0, 255, 0, 255, 34, 255, 7, 255, 0, 255, 196, 255, 11, 255, 0, 255, 42, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 140, 255, 184, 255, 27, 255, 2, 255, 3, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 8, 255, 161, 255, 161, 255, 0, 255, 79, 255, 228, 255, 21, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 23, 255, 238, 255, 68, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 10, 255, 246, 255, 32, 255, 0, 255, 0, 255, 0, 255, 0, 255, 215, 255, 80, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 37, 255, 224, 255, 11, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 168, 255, 104, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 239, 255, 46, 255, 37, 255, 255, 255, 117, 255, 0, 255, 216, 255, 64, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 181, 255, 65, 255, 225, 255, 51, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 251, 255, 248, 255, 247, 255, 229, 255, 169, 255, 35, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 103, 255, 207, 255, 52, 255, 187, 255, 25, 255, 173, 255, 172, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 209, 255, 65, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 17, 255, 228, 255, 64, 255, 220, 255, 75, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 101, 255, 222, 255, 10, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 179, 255, 110, 255, 0, 255, 0, 255, 0, 255, 36, 255, 246, 255, 10, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 96, 255, 82, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 131, 255, 179, 255, 4, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 108, 255, 200, 255, 3, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 193, 255, 88, 255, 82, 255, 217, 255, 163, 255, 6, 255, 251, 255, 17, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 100, 255, 209, 255, 168, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 38, 255, 179, 255, 236, 255, 199, 255, 77, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 137, 255, 252, 255, 255, 255, 252, 255, 252, 255, 252, 255, 70, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 78, 255, 247, 255, 162, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 251, 255, 248, 255, 247, 255, 227, 255, 126, 255, 3, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 252, 255, 252, 255, 252, 255, 252, 255, 252, 255, 252, 255, 252, 255, 70, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 153, 255, 181, 255, 241, 255, 224, 255, 110, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 100, 255, 187, 255, 0, 255, 0, 255, 0, 255, 113, 255, 178, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 9, 255, 245, 255, 74, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 1, 255, 158, 255, 76, 255, 0, 255, 0, 255, 0, 255, 0, 255, 12, 255, 200, 255, 20, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 253, 255, 252, 255, 252, 255, 252, 255, 254, 255, 191, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 145, 255, 130, 255, 128, 255, 119, 255, 208, 255, 45, 255, 225, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 93, 255, 214, 255, 248, 255, 220, 255, 118, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 21, 255, 252, 255, 86, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 39, 255, 185, 255, 238, 255, 205, 255, 79, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 99, 255, 235, 255, 181, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 32, 255, 192, 255, 142, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 218, 255, 60, 255, 3, 255, 44, 255, 202, 255, 125, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 23, 255, 248, 255, 15, 255, 0, 255, 0, 255, 190, 255, 98, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 82, 255, 207, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 76, 255, 0, 255, 0, 255, 39, 255, 239, 255, 84, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 97, 255, 172, 255, 173, 255, 49, 255, 222, 255, 93, 255, 177, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 67, 255, 226, 255, 66, 255, 8, 255, 41, 255, 203, 255, 117, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 109, 255, 12, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 101, 255, 211, 255, 57, 255, 187, 255, 27, 255, 178, 255, 170, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 26, 255, 233, 255, 43, 255, 206, 255, 94, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 42, 255, 183, 255, 238, 255, 228, 255, 141, 255, 9, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 251, 255, 248, 255, 247, 255, 225, 255, 141, 255, 10, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 24, 255, 241, 255, 16, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 251, 255, 248, 255, 247, 255, 231, 255, 170, 255, 35, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 36, 255, 242, 255, 14, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 198, 255, 87, 255, 0, 255, 16, 255, 248, 255, 22, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 164, 255, 86, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 76, 255, 0, 255, 16, 255, 217, 255, 129, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 49, 255, 214, 255, 213, 255, 6, 255, 178, 255, 176, 255, 130, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 181, 255, 88, 255, 0, 255, 0, 255, 0, 255, 67, 255, 216, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 36, 255, 9, 255, 0, 255, 196, 255, 11, 255, 0, 255, 46, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 4, 255, 178, 255, 137, 255, 0, 255, 56, 255, 236, 255, 27, 255, 1, 255, 0, 255, 0, 255, 0, 255, 20, 255, 229, 255, 94, 255, 12, 255, 29, 255, 189, 255, 143, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 1, 255, 41, 255, 201, 255, 148, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 16, 255, 206, 255, 162, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 179, 255, 95, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 18, 255, 138, 255, 217, 255, 5, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 223, 255, 61, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 119, 255, 165, 255, 0, 255, 88, 255, 196, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 6, 255, 202, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 31, 255, 15, 255, 3, 255, 185, 255, 173, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 6, 255, 245, 255, 205, 255, 0, 255, 128, 255, 248, 255, 82, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 199, 255, 31, 255, 0, 255, 0, 255, 0, 255, 69, 255, 217, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 204, 255, 19, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 40, 255, 255, 255, 255, 255, 208, 255, 0, 255, 140, 255, 255, 255, 255, 255, 116, 255, 0, 255, 0, 255, 0, 255, 115, 255, 148, 255, 0, 255, 0, 255, 0, 255, 47, 255, 228, 255, 0, 255, 47, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 69, 255, 222, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 13, 255, 200, 255, 163, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 141, 255, 130, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 238, 255, 45, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 223, 255, 61, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 40, 255, 238, 255, 4, 255, 165, 255, 117, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 144, 255, 209, 255, 11, 255, 0, 255, 44, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 208, 255, 160, 255, 0, 255, 77, 255, 255, 255, 35, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 1, 255, 184, 255, 134, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 232, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 101, 255, 69, 255, 0, 255, 0, 255, 0, 255, 50, 255, 237, 255, 0, 255, 78, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 57, 255, 219, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 10, 255, 194, 255, 164, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 122, 255, 152, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 238, 255, 42, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 78, 255, 201, 255, 244, 255, 220, 255, 125, 255, 4, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 36, 255, 244, 255, 15, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 217, 255, 67, 255, 238, 255, 37, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 155, 255, 116, 255, 0, 255, 0, 255, 0, 255, 44, 255, 231, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 97, 255, 234, 255, 31, 255, 0, 255, 0, 255, 236, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 133, 255, 208, 255, 10, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 5, 255, 53, 255, 201, 255, 122, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 34, 255, 194, 255, 123, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 123, 255, 187, 255, 190, 255, 3, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 141, 255, 133, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 20, 255, 139, 255, 204, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 63, 255, 232, 255, 67, 255, 6, 255, 38, 255, 194, 255, 136, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 214, 255, 59, 255, 6, 255, 45, 255, 204, 255, 128, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 138, 255, 203, 255, 214, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 140, 255, 126, 255, 0, 255, 0, 255, 0, 255, 55, 255, 214, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 107, 255, 183, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 117, 255, 178, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 58, 255, 243, 255, 61, 255, 0, 255, 0, 255, 0, 255, 236, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 114, 255, 224, 255, 28, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 137, 255, 252, 255, 255, 255, 252, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 219, 255, 255, 255, 169, 255, 9, 255, 0, 255, 7, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 247, 255, 240, 255, 244, 255, 255, 255, 196, 255, 11, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 243, 255, 184, 255, 237, 255, 60, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 137, 255, 252, 255, 255, 255, 252, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 178, 255, 101, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 251, 255, 248, 255, 252, 255, 231, 255, 157, 255, 23, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 159, 255, 123, 255, 0, 255, 0, 255, 0, 255, 48, 255, 238, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 160, 255, 189, 255, 244, 255, 227, 255, 114, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 59, 255, 255, 255, 135, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 105, 255, 179, 255, 0, 255, 0, 255, 0, 255, 107, 255, 177, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 64, 255, 224, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 157, 255, 135, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 159, 255, 255, 255, 252, 255, 252, 255, 252, 255, 252, 255, 239, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 97, 255, 232, 255, 37, 255, 0, 255, 22, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 3, 255, 29, 255, 149, 255, 180, 255, 0, 255, 175, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 21, 255, 137, 255, 196, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 180, 255, 4, 255, 84, 255, 236, 255, 38, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 24, 255, 244, 255, 21, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 166, 255, 166, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 118, 255, 0, 255, 0, 255, 0, 255, 42, 255, 234, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 18, 255, 241, 255, 93, 255, 2, 255, 46, 255, 232, 255, 75, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 22, 255, 254, 255, 11, 255, 0, 255, 0, 255, 0, 255, 0, 255, 198, 255, 92, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 81, 255, 236, 255, 48, 255, 0, 255, 0, 255, 236, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 251, 255, 248, 255, 248, 255, 248, 255, 248, 255, 189, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 250, 255, 248, 255, 248, 255, 248, 255, 248, 255, 254, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 43, 255, 21, 255, 0, 255, 0, 255, 0, 255, 5, 255, 248, 255, 27, 255, 230, 255, 57, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 228, 255, 48, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 127, 255, 221, 255, 22, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 35, 255, 193, 255, 150, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 27, 255, 243, 255, 66, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 56, 255, 224, 255, 59, 255, 5, 255, 32, 255, 184, 255, 127, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 54, 255, 207, 255, 247, 255, 226, 255, 99, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 235, 255, 50, 255, 2, 255, 247, 255, 61, 255, 0, 255, 238, 255, 49, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 67, 255, 239, 255, 60, 255, 0, 255, 0, 255, 0, 255, 236, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 76, 255, 0, 255, 0, 255, 0, 255, 67, 255, 196, 255, 5, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 155, 255, 119, 255, 0, 255, 0, 255, 0, 255, 9, 255, 249, 255, 29, 255, 169, 255, 113, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 229, 255, 45, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 1, 255, 169, 255, 201, 255, 10, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 253, 255, 252, 255, 251, 255, 229, 255, 132, 255, 5, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 119, 255, 214, 255, 5, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 128, 255, 254, 255, 254, 255, 255, 255, 189, 255, 11, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 193, 255, 91, 255, 38, 255, 255, 255, 105, 255, 24, 255, 253, 255, 9, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 176, 255, 254, 255, 252, 255, 252, 255, 252, 255, 252, 255, 239, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 76, 255, 0, 255, 0, 255, 13, 255, 219, 255, 33, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 52, 255, 235, 255, 81, 255, 7, 255, 21, 255, 167, 255, 176, 255, 0, 255, 168, 255, 113, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 25, 255, 144, 255, 216, 255, 4, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 6, 255, 217, 255, 119, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 124, 255, 190, 255, 46, 255, 4, 255, 24, 255, 138, 255, 194, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 150, 255, 132, 255, 82, 255, 245, 255, 149, 255, 65, 255, 219, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 140, 255, 173, 255, 246, 255, 230, 255, 125, 255, 3, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 21, 255, 10, 255, 0, 255, 0, 255, 122, 255, 135, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 63, 255, 192, 255, 239, 255, 228, 255, 144, 255, 13, 255, 0, 255, 228, 255, 58, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 253, 255, 252, 255, 251, 255, 230, 255, 167, 255, 34, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 116, 255, 0, 255, 0, 255, 0, 255, 72, 255, 244, 255, 29, 255, 0, 255, 0, 255, 0, 255, 0, 255, 2, 255, 243, 255, 31, 255, 0, 255, 0, 255, 0, 255, 0, 255, 209, 255, 66, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 108, 255, 172, 255, 126, 255, 161, 255, 193, 255, 105, 255, 176, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 156, 255, 232, 255, 75, 255, 6, 255, 48, 255, 204, 255, 142, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 1, 255, 220, 255, 26, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 31, 255, 232, 255, 94, 255, 11, 255, 30, 255, 173, 255, 177, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 5, 255, 252, 255, 34, 255, 0, 255, 0, 255, 0, 255, 0, 255, 213, 255, 75, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 65, 255, 213, 255, 170, 255, 70, 255, 229, 255, 146, 255, 133, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 21, 255, 18, 255, 0, 255, 0, 255, 0, 255, 32, 255, 245, 255, 25, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 64, 255, 199, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 52, 255, 194, 255, 245, 255, 234, 255, 138, 255, 8, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 158, 255, 194, 255, 46, 255, 2, 255, 23, 255, 142, 255, 219, 255, 11, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 23, 255, 250, 255, 217, 255, 17, 255, 205, 255, 212, 255, 90, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 209, 255, 73, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 119, 255, 152, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 7, 255, 129, 255, 219, 255, 246, 255, 230, 255, 164, 255, 33, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 236, 255, 221, 255, 0, 255, 157, 255, 255, 255, 47, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 144, 255, 28, 255, 0, 255, 0, 255, 0, 255, 0, 255, 208, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 167, 255, 109, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 193, 255, 172, 255, 0, 255, 108, 255, 253, 255, 8, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 187, 255, 108, 255, 0, 255, 0, 255, 0, 255, 31, 255, 241, 255, 19, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 201, 255, 80, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 67, 255, 238, 255, 77, 255, 7, 255, 45, 255, 202, 255, 124, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 214, 255, 66, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 76, 255, 203, 255, 245, 255, 224, 255, 107, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 226, 255, 59, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0),
+"format": "LumAlpha8",
+"height": 256,
+"mipmaps": false,
+"width": 256
+}
+
+[sub_resource type="Image" id="Image_f4u7m"]
+data = {
+"data": PackedByteArray(255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 255, 255, 255, 255, 255, 255, 254, 255, 232, 255, 162, 255, 31, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 92, 255, 255, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 255, 255, 255, 255, 104, 255, 61, 255, 193, 255, 227, 255, 236, 255, 201, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 21, 255, 144, 255, 224, 255, 250, 255, 231, 255, 159, 255, 32, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 18, 255, 139, 255, 221, 255, 249, 255, 222, 255, 121, 255, 134, 255, 176, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 240, 255, 104, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 27, 255, 150, 255, 225, 255, 250, 255, 231, 255, 162, 255, 41, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 84, 255, 187, 255, 233, 255, 251, 255, 238, 255, 190, 255, 89, 255, 4, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 113, 255, 219, 255, 245, 255, 206, 255, 82, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 48, 255, 255, 255, 255, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 92, 255, 255, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 255, 255, 156, 255, 0, 255, 0, 255, 0, 255, 0, 255, 184, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 3, 255, 80, 255, 178, 255, 232, 255, 250, 255, 226, 255, 160, 255, 37, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 139, 255, 209, 255, 241, 255, 126, 255, 119, 255, 230, 255, 225, 255, 82, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 212, 255, 24, 255, 24, 255, 25, 255, 57, 255, 176, 255, 237, 255, 40, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 70, 255, 196, 255, 88, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 28, 255, 28, 255, 241, 255, 150, 255, 223, 255, 63, 255, 0, 255, 0, 255, 24, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 24, 255, 224, 255, 215, 255, 83, 255, 35, 255, 65, 255, 186, 255, 235, 255, 36, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 19, 255, 219, 255, 209, 255, 70, 255, 31, 255, 68, 255, 192, 255, 233, 255, 176, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 240, 255, 104, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 39, 255, 235, 255, 198, 255, 65, 255, 29, 255, 57, 255, 177, 255, 246, 255, 64, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 104, 255, 247, 255, 127, 255, 52, 255, 30, 255, 54, 255, 101, 255, 204, 255, 33, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 100, 255, 253, 255, 118, 255, 55, 255, 133, 255, 253, 255, 58, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 212, 255, 24, 255, 24, 255, 24, 255, 24, 255, 24, 255, 24, 255, 15, 255, 0, 255, 0, 255, 0, 255, 0, 255, 4, 255, 24, 255, 53, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 70, 255, 196, 255, 88, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 254, 255, 251, 255, 35, 255, 0, 255, 0, 255, 0, 255, 184, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 41, 255, 174, 255, 98, 255, 56, 255, 31, 255, 55, 255, 150, 255, 232, 255, 31, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 206, 255, 8, 255, 93, 255, 254, 255, 188, 255, 4, 255, 121, 255, 235, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 2, 255, 184, 255, 193, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 240, 255, 248, 255, 42, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 158, 255, 230, 255, 21, 255, 0, 255, 0, 255, 0, 255, 4, 255, 200, 255, 176, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 147, 255, 226, 255, 11, 255, 0, 255, 0, 255, 0, 255, 8, 255, 217, 255, 176, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 240, 255, 104, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 190, 255, 200, 255, 3, 255, 0, 255, 0, 255, 0, 255, 0, 255, 168, 255, 222, 255, 3, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 183, 255, 168, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 182, 255, 176, 255, 0, 255, 0, 255, 0, 255, 227, 255, 130, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 211, 255, 215, 255, 161, 255, 0, 255, 0, 255, 0, 255, 184, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 199, 255, 132, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 119, 255, 0, 255, 35, 255, 255, 255, 92, 255, 0, 255, 63, 255, 255, 255, 20, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 53, 255, 255, 255, 38, 255, 0, 255, 0, 255, 0, 255, 0, 255, 48, 255, 255, 255, 255, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 240, 255, 171, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 238, 255, 133, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 97, 255, 250, 255, 8, 255, 0, 255, 0, 255, 0, 255, 0, 255, 227, 255, 127, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 108, 255, 126, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 21, 255, 254, 255, 83, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 47, 255, 255, 255, 55, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 115, 255, 248, 255, 145, 255, 80, 255, 45, 255, 8, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 185, 255, 170, 255, 0, 255, 0, 255, 46, 255, 253, 255, 93, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 89, 255, 252, 255, 38, 255, 0, 255, 0, 255, 184, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 54, 255, 147, 255, 207, 255, 232, 255, 243, 255, 229, 255, 243, 255, 159, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 92, 255, 0, 255, 32, 255, 255, 255, 63, 255, 0, 255, 60, 255, 255, 255, 28, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 1, 255, 242, 255, 96, 255, 0, 255, 0, 255, 0, 255, 0, 255, 5, 255, 28, 255, 56, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 240, 255, 122, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 6, 255, 255, 255, 248, 255, 244, 255, 244, 255, 244, 255, 244, 255, 244, 255, 246, 255, 255, 255, 41, 255, 0, 255, 0, 255, 0, 255, 0, 255, 250, 255, 98, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 28, 255, 28, 255, 241, 255, 120, 255, 28, 255, 28, 255, 28, 255, 7, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 46, 255, 255, 255, 47, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 11, 255, 255, 255, 81, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 86, 255, 183, 255, 240, 255, 255, 255, 252, 255, 204, 255, 113, 255, 2, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 97, 255, 241, 255, 28, 255, 103, 255, 237, 255, 156, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 2, 255, 212, 255, 165, 255, 0, 255, 0, 255, 184, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 101, 255, 253, 255, 160, 255, 76, 255, 45, 255, 36, 255, 48, 255, 202, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 88, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 60, 255, 255, 255, 28, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 216, 255, 123, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 240, 255, 104, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 235, 255, 139, 255, 36, 255, 36, 255, 36, 255, 36, 255, 36, 255, 36, 255, 36, 255, 7, 255, 0, 255, 0, 255, 0, 255, 0, 255, 225, 255, 133, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 240, 255, 104, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 22, 255, 255, 255, 80, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 44, 255, 255, 255, 57, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 24, 255, 64, 255, 125, 255, 239, 255, 151, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 1, 255, 199, 255, 249, 255, 218, 255, 78, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 253, 255, 244, 255, 244, 255, 244, 255, 244, 255, 205, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 85, 255, 253, 255, 41, 255, 0, 255, 184, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 231, 255, 131, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 201, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 88, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 60, 255, 255, 255, 28, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 215, 255, 124, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 240, 255, 104, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 148, 255, 214, 255, 11, 255, 0, 255, 0, 255, 0, 255, 0, 255, 35, 255, 13, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 139, 255, 234, 255, 20, 255, 0, 255, 0, 255, 0, 255, 0, 255, 42, 255, 23, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 240, 255, 104, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 195, 255, 195, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 161, 255, 226, 255, 4, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 35, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 146, 255, 210, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 92, 255, 253, 255, 216, 255, 212, 255, 32, 255, 0, 255, 0, 255, 6, 255, 108, 255, 21, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 214, 255, 36, 255, 36, 255, 36, 255, 36, 255, 30, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 1, 255, 209, 255, 169, 255, 0, 255, 184, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 243, 255, 102, 255, 0, 255, 0, 255, 0, 255, 0, 255, 87, 255, 255, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 88, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 60, 255, 255, 255, 28, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 241, 255, 100, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 28, 255, 28, 255, 241, 255, 120, 255, 28, 255, 12, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 16, 255, 208, 255, 206, 255, 82, 255, 38, 255, 47, 255, 119, 255, 238, 255, 95, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 13, 255, 203, 255, 225, 255, 91, 255, 35, 255, 45, 255, 116, 255, 239, 255, 107, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 240, 255, 104, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 42, 255, 234, 255, 194, 255, 76, 255, 39, 255, 69, 255, 174, 255, 247, 255, 67, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 2, 255, 222, 255, 210, 255, 110, 255, 51, 255, 32, 255, 46, 255, 105, 255, 238, 255, 128, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 11, 255, 239, 255, 149, 255, 6, 255, 163, 255, 233, 255, 57, 255, 0, 255, 82, 255, 250, 255, 21, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 69, 255, 192, 255, 87, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 81, 255, 254, 255, 44, 255, 184, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 168, 255, 230, 255, 84, 255, 35, 255, 53, 255, 149, 255, 218, 255, 209, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 88, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 60, 255, 255, 255, 28, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 51, 255, 255, 255, 45, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 6, 255, 121, 255, 217, 255, 249, 255, 239, 255, 188, 255, 69, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 4, 255, 116, 255, 215, 255, 249, 255, 239, 255, 188, 255, 74, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 235, 255, 108, 255, 0, 255, 0, 255, 0, 255, 0, 255, 38, 255, 1, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 18, 255, 148, 255, 227, 255, 251, 255, 233, 255, 166, 255, 43, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 22, 255, 120, 255, 193, 255, 237, 255, 251, 255, 235, 255, 187, 255, 90, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 52, 255, 255, 255, 61, 255, 0, 255, 0, 255, 132, 255, 247, 255, 97, 255, 217, 255, 154, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 92, 255, 255, 255, 116, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 1, 255, 206, 255, 173, 255, 184, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 15, 255, 143, 255, 222, 255, 248, 255, 224, 255, 140, 255, 17, 255, 184, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 88, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 60, 255, 255, 255, 28, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 1, 255, 181, 255, 202, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 196, 255, 160, 255, 0, 255, 0, 255, 0, 255, 42, 255, 251, 255, 16, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 35, 255, 255, 255, 101, 255, 0, 255, 0, 255, 0, 255, 108, 255, 255, 255, 243, 255, 16, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 32, 255, 255, 255, 56, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 77, 255, 254, 255, 226, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 213, 255, 28, 255, 28, 255, 29, 255, 60, 255, 176, 255, 241, 255, 46, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 5, 255, 28, 255, 56, 255, 255, 255, 77, 255, 28, 255, 7, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 81, 255, 252, 255, 114, 255, 40, 255, 73, 255, 216, 255, 154, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 159, 255, 240, 255, 114, 255, 75, 255, 116, 255, 223, 255, 212, 255, 243, 255, 172, 255, 10, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 5, 255, 28, 255, 56, 255, 255, 255, 77, 255, 28, 255, 7, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 202, 255, 255, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 255, 255, 255, 255, 255, 255, 254, 255, 233, 255, 166, 255, 36, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 82, 255, 204, 255, 244, 255, 222, 255, 129, 255, 6, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 6, 255, 121, 255, 216, 255, 248, 255, 216, 255, 117, 255, 4, 255, 55, 255, 196, 255, 19, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 72, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 132, 255, 208, 255, 0, 255, 0, 255, 0, 255, 0, 255, 73, 255, 255, 255, 160, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0),
+"format": "LumAlpha8",
+"height": 256,
+"mipmaps": false,
+"width": 256
+}
+
+[sub_resource type="FontFile" id="FontFile_f0lek"]
+data = PackedByteArray(0, 1, 0, 0, 0, 16, 1, 0, 0, 4, 0, 0, 79, 83, 47, 50, 74, 98, 190, 132, 0, 1, 82, 64, 0, 0, 0, 96, 86, 68, 77, 88, 106, 165, 114, 60, 0, 1, 82, 160, 0, 0, 5, 224, 99, 109, 97, 112, 146, 18, 23, 146, 0, 1, 98, 88, 0, 0, 3, 226, 99, 118, 116, 32, 4, 138, 10, 158, 0, 1, 104, 76, 0, 0, 0, 46, 102, 112, 103, 109, 146, 65, 218, 250, 0, 1, 102, 60, 0, 0, 1, 97, 103, 97, 115, 112, 0, 21, 0, 8, 0, 1, 181, 184, 0, 0, 0, 16, 103, 108, 121, 102, 188, 115, 236, 191, 0, 0, 1, 12, 0, 1, 70, 240, 104, 100, 109, 120, 121, 100, 77, 180, 0, 1, 88, 128, 0, 0, 9, 216, 104, 101, 97, 100, 255, 43, 154, 196, 0, 1, 77, 0, 0, 0, 0, 54, 104, 104, 101, 97, 10, 103, 2, 206, 0, 1, 82, 28, 0, 0, 0, 36, 104, 109, 116, 120, 52, 106, 53, 208, 0, 1, 77, 56, 0, 0, 4, 226, 108, 111, 99, 97, 177, 5, 98, 167, 0, 1, 72, 28, 0, 0, 4, 226, 109, 97, 120, 112, 4, 136, 3, 97, 0, 1, 71, 252, 0, 0, 0, 32, 110, 97, 109, 101, 4, 103, 92, 104, 0, 1, 104, 124, 0, 0, 59, 106, 112, 111, 115, 116, 230, 170, 54, 215, 0, 1, 163, 232, 0, 0, 17, 206, 112, 114, 101, 112, 48, 247, 212, 104, 0, 1, 103, 160, 0, 0, 0, 171, 0, 2, 0, 49, 0, 0, 3, 115, 5, 25, 0, 3, 0, 7, 0, 69, 176, 8, 47, 176, 9, 47, 176, 0, 220, 176, 8, 16, 176, 1, 208, 176, 1, 47, 177, 4, 12, 244, 176, 0, 16, 177, 5, 8, 244, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 4, 6, 244, 176, 2, 16, 177, 6, 6, 244, 48, 49, 33, 33, 17, 33, 1, 33, 17, 33, 3, 115, 252, 190, 3, 66, 253, 71, 2, 47, 253, 209, 5, 25, 251, 92, 4, 47, 0, 0, 2, 0, 0, 0, 1, 3, 164, 3, 165, 0, 27, 0, 31, 0, 189, 176, 32, 47, 176, 33, 47, 176, 2, 220, 177, 3, 13, 244, 176, 32, 16, 176, 7, 208, 176, 7, 47, 177, 6, 13, 244, 176, 7, 16, 176, 11, 208, 176, 7, 16, 176, 15, 208, 176, 6, 16, 176, 17, 208, 176, 3, 16, 176, 19, 208, 176, 2, 16, 176, 21, 208, 176, 2, 16, 176, 25, 208, 176, 3, 16, 176, 28, 208, 176, 6, 16, 176, 30, 208, 0, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 19, 62, 89, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 19, 62, 89, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 15, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 179, 27, 1, 0, 4, 43, 179, 15, 1, 12, 4, 43, 176, 0, 16, 176, 4, 208, 176, 0, 16, 176, 8, 208, 176, 27, 16, 176, 10, 208, 176, 15, 16, 176, 18, 208, 176, 15, 16, 176, 22, 208, 176, 12, 16, 176, 24, 208, 176, 27, 16, 176, 28, 208, 176, 12, 16, 176, 29, 208, 48, 49, 37, 35, 21, 35, 53, 33, 21, 35, 53, 35, 53, 51, 17, 35, 53, 51, 53, 51, 21, 33, 53, 51, 21, 51, 21, 35, 17, 51, 33, 17, 33, 17, 3, 164, 221, 117, 255, 0, 117, 221, 221, 221, 221, 117, 1, 0, 117, 221, 221, 221, 254, 174, 255, 0, 222, 221, 221, 221, 221, 110, 1, 8, 109, 228, 228, 228, 228, 109, 254, 248, 1, 8, 254, 248, 0, 0, 3, 0, 0, 255, 70, 3, 131, 5, 211, 0, 43, 0, 50, 0, 59, 0, 175, 179, 51, 8, 15, 4, 43, 179, 36, 8, 44, 4, 43, 179, 41, 8, 0, 4, 43, 176, 0, 16, 176, 9, 208, 176, 0, 16, 176, 20, 208, 176, 41, 16, 176, 22, 208, 176, 36, 16, 176, 28, 208, 176, 28, 47, 180, 218, 44, 234, 44, 2, 93, 64, 27, 9, 44, 25, 44, 41, 44, 57, 44, 73, 44, 89, 44, 105, 44, 121, 44, 137, 44, 153, 44, 169, 44, 185, 44, 201, 44, 13, 93, 176, 44, 16, 176, 29, 208, 176, 29, 47, 176, 41, 16, 176, 32, 208, 176, 41, 16, 176, 47, 208, 64, 27, 6, 51, 22, 51, 38, 51, 54, 51, 70, 51, 86, 51, 102, 51, 118, 51, 134, 51, 150, 51, 166, 51, 182, 51, 198, 51, 13, 93, 180, 213, 51, 229, 51, 2, 93, 176, 0, 16, 176, 54, 208, 176, 36, 16, 176, 61, 220, 0, 176, 21, 47, 176, 42, 47, 178, 47, 42, 21, 17, 18, 57, 178, 54, 42, 21, 17, 18, 57, 48, 49, 5, 46, 3, 39, 55, 22, 22, 23, 17, 46, 3, 53, 52, 62, 2, 55, 53, 51, 21, 30, 3, 23, 7, 38, 38, 39, 17, 22, 22, 21, 20, 14, 2, 7, 21, 35, 1, 52, 38, 39, 17, 54, 54, 1, 20, 22, 23, 17, 14, 3, 1, 141, 84, 137, 100, 64, 12, 129, 23, 129, 116, 84, 131, 92, 47, 49, 90, 131, 84, 138, 75, 127, 92, 56, 6, 143, 13, 104, 96, 182, 182, 49, 94, 135, 86, 138, 1, 97, 109, 106, 116, 97, 253, 204, 115, 98, 55, 82, 51, 25, 16, 10, 63, 95, 122, 68, 33, 101, 149, 21, 2, 15, 31, 65, 84, 109, 73, 64, 112, 91, 57, 10, 164, 164, 10, 68, 98, 119, 61, 25, 88, 146, 20, 254, 41, 67, 175, 147, 68, 120, 95, 65, 8, 170, 2, 2, 86, 121, 47, 254, 34, 17, 125, 2, 237, 77, 103, 39, 1, 170, 8, 43, 57, 66, 0, 0, 5, 255, 236, 255, 229, 3, 193, 5, 55, 0, 19, 0, 23, 0, 43, 0, 55, 0, 67, 1, 69, 179, 50, 10, 10, 4, 43, 179, 0, 9, 44, 4, 43, 179, 24, 9, 56, 4, 43, 64, 27, 6, 0, 22, 0, 38, 0, 54, 0, 70, 0, 86, 0, 102, 0, 118, 0, 134, 0, 150, 0, 166, 0, 182, 0, 198, 0, 13, 93, 180, 213, 0, 229, 0, 2, 93, 178, 34, 44, 0, 17, 18, 57, 176, 34, 47, 180, 218, 34, 234, 34, 2, 93, 64, 27, 9, 34, 25, 34, 41, 34, 57, 34, 73, 34, 89, 34, 105, 34, 121, 34, 137, 34, 153, 34, 169, 34, 185, 34, 201, 34, 13, 93, 64, 15, 102, 50, 118, 50, 134, 50, 150, 50, 166, 50, 182, 50, 198, 50, 7, 93, 64, 13, 6, 50, 22, 50, 38, 50, 54, 50, 70, 50, 86, 50, 6, 93, 180, 213, 50, 229, 50, 2, 93, 180, 218, 56, 234, 56, 2, 93, 64, 27, 9, 56, 25, 56, 41, 56, 57, 56, 73, 56, 89, 56, 105, 56, 121, 56, 137, 56, 153, 56, 169, 56, 185, 56, 201, 56, 13, 93, 177, 62, 9, 244, 176, 24, 16, 176, 69, 220, 0, 176, 15, 47, 176, 23, 47, 176, 0, 69, 88, 176, 21, 47, 27, 177, 21, 15, 62, 89, 176, 0, 69, 88, 176, 29, 47, 27, 177, 29, 15, 62, 89, 179, 39, 2, 59, 4, 43, 179, 53, 1, 5, 4, 43, 176, 15, 16, 177, 47, 1, 244, 180, 217, 47, 233, 47, 2, 93, 64, 27, 8, 47, 24, 47, 40, 47, 56, 47, 72, 47, 88, 47, 104, 47, 120, 47, 136, 47, 152, 47, 168, 47, 184, 47, 200, 47, 13, 93, 176, 29, 16, 177, 65, 1, 244, 64, 27, 7, 65, 23, 65, 39, 65, 55, 65, 71, 65, 87, 65, 103, 65, 119, 65, 135, 65, 151, 65, 167, 65, 183, 65, 199, 65, 13, 93, 180, 214, 65, 230, 65, 2, 93, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 37, 1, 39, 1, 19, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 1, 52, 38, 35, 34, 6, 21, 20, 22, 51, 50, 54, 1, 52, 38, 35, 34, 6, 21, 20, 22, 51, 50, 54, 1, 225, 39, 69, 92, 52, 51, 92, 68, 38, 38, 68, 92, 51, 52, 92, 69, 39, 1, 195, 252, 188, 94, 3, 70, 121, 41, 68, 94, 51, 52, 92, 67, 41, 41, 67, 92, 52, 51, 92, 70, 41, 253, 186, 86, 64, 63, 86, 86, 63, 64, 86, 1, 223, 88, 63, 64, 86, 86, 64, 63, 88, 4, 49, 51, 92, 68, 41, 41, 68, 92, 51, 51, 95, 67, 41, 41, 67, 95, 148, 250, 237, 60, 5, 22, 251, 174, 53, 90, 70, 39, 39, 68, 92, 53, 52, 92, 67, 39, 39, 67, 92, 3, 24, 64, 88, 88, 64, 63, 88, 88, 252, 243, 64, 86, 86, 64, 63, 88, 88, 0, 0, 3, 255, 231, 255, 229, 3, 188, 5, 47, 0, 39, 0, 50, 0, 66, 0, 227, 179, 48, 8, 14, 4, 43, 179, 30, 8, 59, 4, 43, 64, 27, 6, 48, 22, 48, 38, 48, 54, 48, 70, 48, 86, 48, 102, 48, 118, 48, 134, 48, 150, 48, 166, 48, 182, 48, 198, 48, 13, 93, 180, 213, 48, 229, 48, 2, 93, 178, 22, 14, 48, 17, 18, 57, 176, 22, 47, 177, 51, 8, 244, 180, 218, 59, 234, 59, 2, 93, 64, 27, 9, 59, 25, 59, 41, 59, 57, 59, 73, 59, 89, 59, 105, 59, 121, 59, 137, 59, 153, 59, 169, 59, 185, 59, 201, 59, 13, 93, 0, 176, 0, 69, 88, 176, 25, 47, 27, 177, 25, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 177, 40, 7, 244, 64, 27, 7, 40, 23, 40, 39, 40, 55, 40, 71, 40, 87, 40, 103, 40, 119, 40, 135, 40, 151, 40, 167, 40, 183, 40, 199, 40, 13, 93, 180, 214, 40, 230, 40, 2, 93, 176, 25, 16, 177, 62, 4, 244, 180, 217, 62, 233, 62, 2, 93, 64, 27, 8, 62, 24, 62, 40, 62, 56, 62, 72, 62, 88, 62, 104, 62, 120, 62, 136, 62, 152, 62, 168, 62, 184, 62, 200, 62, 13, 93, 48, 49, 1, 6, 6, 7, 23, 7, 39, 6, 6, 35, 34, 46, 2, 53, 52, 62, 2, 55, 38, 38, 53, 52, 54, 51, 50, 30, 2, 21, 20, 14, 2, 7, 1, 54, 54, 55, 1, 50, 54, 55, 1, 39, 6, 6, 21, 20, 22, 3, 20, 22, 23, 62, 3, 53, 52, 38, 35, 34, 14, 2, 3, 188, 18, 80, 59, 157, 94, 157, 74, 180, 105, 76, 135, 100, 60, 27, 47, 64, 37, 62, 68, 179, 149, 68, 119, 88, 49, 62, 94, 119, 57, 1, 104, 48, 61, 16, 254, 33, 78, 135, 53, 254, 168, 30, 52, 63, 125, 86, 35, 57, 51, 101, 77, 47, 104, 78, 43, 69, 50, 24, 2, 53, 86, 174, 78, 147, 107, 154, 66, 84, 56, 96, 129, 76, 63, 105, 84, 67, 29, 78, 153, 78, 154, 182, 41, 76, 108, 70, 78, 110, 84, 68, 37, 254, 174, 66, 145, 70, 254, 23, 59, 49, 1, 80, 29, 45, 117, 86, 96, 129, 3, 114, 47, 119, 75, 30, 58, 65, 80, 53, 78, 90, 35, 59, 78, 0, 1, 1, 117, 3, 68, 2, 47, 5, 25, 0, 3, 0, 19, 0, 176, 1, 47, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 48, 49, 1, 3, 35, 3, 2, 47, 43, 102, 41, 5, 25, 254, 43, 1, 213, 0, 1, 0, 188, 254, 141, 2, 193, 5, 223, 0, 21, 0, 62, 179, 16, 13, 5, 4, 43, 64, 27, 6, 16, 22, 16, 38, 16, 54, 16, 70, 16, 86, 16, 102, 16, 118, 16, 134, 16, 150, 16, 166, 16, 182, 16, 198, 16, 13, 93, 180, 213, 16, 229, 16, 2, 93, 0, 176, 10, 47, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 17, 62, 89, 48, 49, 1, 46, 2, 2, 53, 52, 18, 54, 54, 55, 23, 14, 3, 21, 20, 30, 2, 23, 2, 121, 107, 166, 112, 60, 60, 112, 166, 107, 72, 95, 149, 103, 53, 53, 103, 147, 97, 254, 141, 84, 213, 242, 1, 8, 135, 135, 1, 7, 241, 213, 84, 90, 76, 192, 219, 238, 121, 123, 237, 217, 195, 76, 0, 1, 0, 229, 254, 141, 2, 236, 5, 223, 0, 21, 0, 62, 179, 0, 13, 11, 4, 43, 180, 218, 11, 234, 11, 2, 93, 64, 27, 9, 11, 25, 11, 41, 11, 57, 11, 73, 11, 89, 11, 105, 11, 121, 11, 137, 11, 153, 11, 169, 11, 185, 11, 201, 11, 13, 93, 0, 176, 17, 47, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 17, 62, 89, 48, 49, 1, 20, 2, 6, 6, 7, 39, 62, 3, 53, 52, 46, 2, 39, 55, 30, 2, 18, 2, 236, 60, 115, 165, 107, 72, 95, 149, 105, 53, 53, 105, 149, 95, 72, 107, 165, 115, 60, 2, 53, 135, 254, 250, 242, 213, 84, 90, 76, 193, 219, 237, 121, 121, 240, 219, 192, 76, 90, 84, 213, 241, 254, 247, 0, 0, 1, 0, 35, 0, 1, 3, 129, 3, 165, 0, 17, 0, 71, 0, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 178, 1, 5, 14, 17, 18, 57, 178, 4, 5, 14, 17, 18, 57, 178, 7, 5, 14, 17, 18, 57, 178, 10, 5, 14, 17, 18, 57, 178, 13, 5, 14, 17, 18, 57, 178, 16, 5, 14, 17, 18, 57, 48, 49, 1, 5, 5, 7, 37, 19, 35, 19, 5, 39, 37, 37, 55, 5, 3, 51, 3, 37, 3, 129, 254, 170, 1, 86, 55, 254, 180, 14, 116, 14, 254, 180, 55, 1, 86, 254, 170, 55, 1, 76, 14, 116, 14, 1, 76, 2, 140, 184, 189, 94, 203, 254, 125, 1, 131, 203, 94, 189, 184, 96, 205, 1, 134, 254, 122, 205, 0, 0, 1, 0, 0, 0, 13, 3, 164, 3, 176, 0, 11, 0, 55, 179, 2, 13, 3, 4, 43, 176, 3, 16, 176, 7, 208, 176, 2, 16, 176, 9, 208, 0, 176, 2, 47, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 19, 62, 89, 179, 11, 6, 0, 4, 43, 176, 0, 16, 176, 4, 208, 176, 11, 16, 176, 6, 208, 48, 49, 1, 33, 17, 35, 17, 33, 53, 33, 17, 51, 17, 33, 3, 164, 254, 104, 116, 254, 104, 1, 152, 116, 1, 152, 1, 164, 254, 105, 1, 151, 117, 1, 151, 254, 105, 0, 1, 0, 240, 254, 139, 2, 98, 0, 186, 0, 3, 0, 19, 0, 176, 0, 47, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 17, 62, 89, 48, 49, 37, 1, 35, 19, 2, 98, 254, 238, 96, 186, 186, 253, 209, 2, 47, 0, 1, 0, 0, 1, 164, 3, 164, 2, 25, 0, 3, 0, 9, 0, 179, 3, 6, 0, 4, 43, 48, 49, 1, 33, 53, 33, 3, 164, 252, 92, 3, 164, 1, 164, 117, 0, 1, 1, 117, 0, 0, 2, 47, 0, 186, 0, 3, 0, 19, 0, 176, 2, 47, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 48, 49, 33, 35, 53, 51, 2, 47, 186, 186, 186, 0, 1, 0, 41, 255, 16, 3, 137, 5, 74, 0, 3, 0, 9, 0, 176, 1, 47, 176, 3, 47, 48, 49, 1, 1, 39, 1, 3, 137, 253, 2, 98, 2, 254, 5, 23, 249, 249, 52, 6, 6, 0, 0, 3, 255, 223, 255, 233, 3, 199, 5, 47, 0, 8, 0, 17, 0, 37, 0, 248, 176, 38, 47, 176, 39, 47, 176, 38, 16, 176, 18, 208, 176, 18, 47, 177, 0, 12, 244, 64, 27, 6, 0, 22, 0, 38, 0, 54, 0, 70, 0, 86, 0, 102, 0, 118, 0, 134, 0, 150, 0, 166, 0, 182, 0, 198, 0, 13, 93, 180, 213, 0, 229, 0, 2, 93, 176, 39, 16, 176, 28, 220, 178, 2, 18, 28, 17, 18, 57, 177, 14, 8, 244, 180, 218, 14, 234, 14, 2, 93, 64, 27, 9, 14, 25, 14, 41, 14, 57, 14, 73, 14, 89, 14, 105, 14, 121, 14, 137, 14, 153, 14, 169, 14, 185, 14, 201, 14, 13, 93, 178, 17, 18, 28, 17, 18, 57, 0, 176, 0, 69, 88, 176, 23, 47, 27, 177, 23, 21, 62, 89, 176, 0, 69, 88, 176, 33, 47, 27, 177, 33, 15, 62, 89, 178, 2, 33, 23, 17, 18, 57, 176, 23, 16, 177, 6, 6, 244, 180, 217, 6, 233, 6, 2, 93, 64, 27, 8, 6, 24, 6, 40, 6, 56, 6, 72, 6, 88, 6, 104, 6, 120, 6, 136, 6, 152, 6, 168, 6, 184, 6, 200, 6, 13, 93, 176, 33, 16, 177, 11, 6, 244, 64, 27, 7, 11, 23, 11, 39, 11, 55, 11, 71, 11, 87, 11, 103, 11, 119, 11, 135, 11, 151, 11, 167, 11, 183, 11, 199, 11, 13, 93, 180, 214, 11, 230, 11, 2, 93, 178, 17, 33, 23, 17, 18, 57, 48, 49, 19, 20, 23, 1, 38, 38, 35, 34, 2, 19, 22, 51, 50, 18, 17, 52, 38, 39, 1, 52, 62, 2, 51, 50, 30, 2, 21, 20, 14, 2, 35, 34, 46, 2, 104, 35, 2, 99, 48, 141, 94, 176, 187, 82, 99, 182, 172, 190, 18, 16, 252, 196, 56, 118, 191, 135, 135, 191, 120, 54, 54, 118, 191, 137, 137, 191, 119, 53, 2, 139, 145, 127, 2, 133, 90, 96, 254, 213, 253, 125, 176, 1, 43, 1, 4, 72, 129, 59, 254, 252, 131, 244, 188, 113, 113, 188, 244, 131, 131, 244, 186, 113, 113, 186, 244, 0, 0, 1, 0, 0, 0, 0, 2, 233, 5, 25, 0, 18, 0, 58, 179, 17, 8, 3, 4, 43, 176, 3, 16, 176, 15, 208, 0, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 2, 6, 244, 178, 4, 0, 15, 17, 18, 57, 176, 17, 208, 176, 18, 208, 48, 49, 33, 33, 53, 51, 17, 14, 3, 35, 53, 50, 62, 2, 53, 51, 17, 51, 2, 233, 253, 209, 211, 18, 78, 106, 127, 68, 61, 140, 118, 78, 138, 210, 117, 3, 123, 41, 93, 77, 52, 142, 76, 118, 150, 74, 251, 92, 0, 1, 0, 10, 0, 0, 3, 119, 5, 47, 0, 32, 0, 114, 176, 5, 47, 179, 24, 11, 25, 4, 43, 179, 9, 8, 18, 4, 43, 176, 9, 16, 176, 0, 208, 176, 0, 47, 176, 9, 16, 177, 7, 13, 244, 176, 9, 16, 176, 34, 220, 0, 176, 0, 69, 88, 176, 28, 47, 27, 177, 28, 21, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 15, 62, 89, 177, 6, 6, 244, 176, 28, 16, 177, 21, 6, 244, 180, 217, 21, 233, 21, 2, 93, 64, 27, 8, 21, 24, 21, 40, 21, 56, 21, 72, 21, 88, 21, 104, 21, 120, 21, 136, 21, 152, 21, 168, 21, 184, 21, 200, 21, 13, 93, 48, 49, 1, 20, 14, 2, 7, 1, 33, 17, 51, 17, 33, 53, 1, 62, 3, 53, 52, 38, 35, 34, 6, 21, 35, 52, 54, 51, 50, 30, 2, 3, 115, 19, 49, 80, 61, 254, 57, 2, 39, 117, 252, 176, 1, 252, 39, 71, 56, 32, 159, 117, 164, 168, 127, 236, 223, 84, 149, 115, 66, 3, 199, 54, 86, 88, 98, 63, 254, 51, 1, 0, 254, 139, 121, 2, 4, 39, 78, 80, 86, 47, 120, 123, 182, 172, 221, 250, 49, 92, 133, 0, 0, 1, 0, 27, 255, 233, 3, 152, 5, 47, 0, 54, 0, 212, 179, 36, 11, 37, 4, 43, 179, 47, 12, 30, 4, 43, 176, 47, 16, 177, 19, 9, 244, 177, 0, 8, 244, 176, 36, 16, 176, 11, 208, 176, 11, 47, 180, 218, 30, 234, 30, 2, 93, 64, 27, 9, 30, 25, 30, 41, 30, 57, 30, 73, 30, 89, 30, 105, 30, 121, 30, 137, 30, 153, 30, 169, 30, 185, 30, 201, 30, 13, 93, 178, 50, 37, 0, 17, 18, 57, 176, 47, 16, 176, 56, 220, 0, 176, 0, 69, 88, 176, 42, 47, 27, 177, 42, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 179, 25, 6, 24, 4, 43, 176, 5, 16, 177, 14, 6, 244, 64, 27, 7, 14, 23, 14, 39, 14, 55, 14, 71, 14, 87, 14, 103, 14, 119, 14, 135, 14, 151, 14, 167, 14, 183, 14, 199, 14, 13, 93, 180, 214, 14, 230, 14, 2, 93, 176, 42, 16, 177, 33, 6, 244, 180, 217, 33, 233, 33, 2, 93, 64, 27, 8, 33, 24, 33, 40, 33, 56, 33, 72, 33, 88, 33, 104, 33, 120, 33, 136, 33, 152, 33, 168, 33, 184, 33, 200, 33, 13, 93, 178, 50, 24, 25, 17, 18, 57, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 39, 55, 22, 22, 51, 50, 62, 2, 53, 52, 46, 2, 35, 53, 50, 62, 2, 53, 52, 38, 35, 34, 6, 21, 35, 52, 62, 2, 51, 50, 30, 2, 21, 20, 6, 7, 30, 3, 3, 152, 70, 117, 153, 84, 95, 163, 125, 78, 8, 133, 12, 186, 138, 59, 104, 78, 45, 51, 96, 141, 93, 68, 127, 100, 62, 146, 116, 146, 176, 129, 66, 118, 166, 101, 84, 145, 109, 61, 133, 123, 70, 104, 70, 37, 1, 104, 86, 141, 100, 56, 52, 100, 152, 98, 18, 151, 152, 39, 72, 96, 59, 80, 101, 57, 20, 117, 23, 53, 88, 68, 110, 133, 153, 164, 102, 162, 111, 59, 49, 92, 133, 86, 111, 147, 19, 10, 59, 91, 110, 0, 0, 2, 0, 0, 0, 0, 3, 164, 5, 25, 0, 14, 0, 17, 0, 81, 179, 13, 12, 3, 4, 43, 176, 13, 16, 176, 8, 208, 176, 3, 16, 176, 15, 208, 0, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 179, 15, 3, 4, 4, 43, 176, 0, 16, 177, 2, 6, 244, 176, 15, 16, 176, 9, 208, 176, 4, 16, 176, 11, 208, 176, 2, 16, 176, 13, 208, 176, 14, 208, 48, 49, 33, 33, 53, 51, 17, 33, 53, 1, 51, 17, 51, 21, 35, 17, 51, 1, 17, 1, 3, 164, 253, 209, 211, 253, 184, 2, 35, 174, 211, 211, 211, 254, 164, 254, 73, 117, 1, 0, 119, 3, 45, 252, 211, 119, 255, 0, 1, 119, 2, 139, 253, 117, 0, 0, 1, 0, 4, 255, 233, 3, 170, 5, 25, 0, 42, 0, 166, 176, 43, 47, 176, 44, 47, 176, 0, 220, 177, 21, 12, 244, 180, 218, 21, 234, 21, 2, 93, 64, 27, 9, 21, 25, 21, 41, 21, 57, 21, 73, 21, 89, 21, 105, 21, 121, 21, 137, 21, 153, 21, 169, 21, 185, 21, 201, 21, 13, 93, 176, 43, 16, 176, 30, 208, 176, 30, 47, 177, 29, 12, 244, 176, 34, 208, 178, 35, 30, 0, 17, 18, 57, 0, 176, 0, 69, 88, 176, 31, 47, 27, 177, 31, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 179, 38, 6, 26, 4, 43, 176, 5, 16, 177, 16, 6, 244, 64, 27, 7, 16, 23, 16, 39, 16, 55, 16, 71, 16, 87, 16, 103, 16, 119, 16, 135, 16, 151, 16, 167, 16, 183, 16, 199, 16, 13, 93, 180, 214, 16, 230, 16, 2, 93, 176, 31, 16, 177, 33, 6, 244, 178, 35, 5, 31, 17, 18, 57, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 39, 55, 30, 3, 51, 50, 62, 2, 53, 52, 46, 2, 35, 34, 6, 7, 35, 17, 33, 21, 33, 17, 54, 54, 51, 50, 30, 2, 3, 170, 72, 125, 176, 104, 94, 160, 121, 74, 8, 133, 6, 52, 84, 114, 68, 80, 125, 88, 47, 47, 86, 125, 76, 80, 147, 54, 137, 3, 49, 253, 88, 60, 153, 80, 101, 168, 122, 68, 1, 182, 96, 168, 125, 72, 56, 104, 152, 98, 21, 68, 117, 82, 47, 53, 95, 125, 71, 74, 127, 92, 53, 67, 64, 2, 140, 117, 254, 104, 58, 63, 65, 119, 172, 0, 0, 2, 255, 248, 255, 233, 3, 190, 5, 47, 0, 34, 0, 54, 0, 223, 179, 25, 11, 10, 4, 43, 179, 0, 12, 35, 4, 43, 64, 27, 6, 25, 22, 25, 38, 25, 54, 25, 70, 25, 86, 25, 102, 25, 118, 25, 134, 25, 150, 25, 166, 25, 182, 25, 198, 25, 13, 93, 180, 213, 25, 229, 25, 2, 93, 180, 218, 35, 234, 35, 2, 93, 64, 27, 9, 35, 25, 35, 41, 35, 57, 35, 73, 35, 89, 35, 105, 35, 121, 35, 137, 35, 153, 35, 169, 35, 185, 35, 201, 35, 13, 93, 176, 10, 16, 177, 45, 8, 244, 0, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 179, 30, 6, 40, 4, 43, 176, 15, 16, 177, 20, 6, 244, 180, 217, 20, 233, 20, 2, 93, 64, 27, 8, 20, 24, 20, 40, 20, 56, 20, 72, 20, 88, 20, 104, 20, 120, 20, 136, 20, 152, 20, 168, 20, 184, 20, 200, 20, 13, 93, 178, 25, 5, 15, 17, 18, 57, 176, 5, 16, 177, 50, 6, 244, 64, 27, 7, 50, 23, 50, 39, 50, 55, 50, 71, 50, 87, 50, 103, 50, 119, 50, 135, 50, 151, 50, 167, 50, 183, 50, 199, 50, 13, 93, 180, 214, 50, 230, 50, 2, 93, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 23, 7, 38, 35, 34, 14, 2, 21, 62, 3, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 62, 2, 3, 190, 71, 127, 174, 101, 139, 188, 115, 51, 69, 138, 207, 139, 194, 129, 90, 90, 143, 105, 161, 107, 53, 14, 78, 102, 119, 60, 102, 172, 123, 69, 137, 45, 84, 123, 77, 76, 127, 90, 49, 40, 84, 125, 86, 74, 123, 90, 49, 1, 188, 108, 172, 121, 66, 113, 186, 244, 131, 133, 244, 189, 110, 135, 80, 98, 80, 143, 201, 120, 51, 90, 65, 39, 69, 123, 172, 103, 74, 129, 94, 54, 50, 90, 123, 75, 74, 131, 100, 58, 49, 90, 132, 0, 1, 0, 49, 0, 0, 3, 152, 5, 25, 0, 16, 0, 75, 176, 17, 47, 176, 18, 47, 176, 5, 220, 177, 6, 8, 244, 176, 17, 16, 176, 14, 208, 176, 14, 47, 177, 13, 13, 244, 0, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 19, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 15, 16, 177, 11, 6, 244, 48, 49, 1, 6, 10, 2, 7, 35, 54, 26, 2, 55, 33, 17, 35, 17, 33, 3, 152, 123, 148, 80, 28, 2, 144, 2, 35, 88, 152, 116, 253, 146, 117, 3, 103, 4, 160, 133, 254, 254, 254, 231, 254, 193, 193, 182, 1, 66, 1, 37, 1, 10, 125, 255, 0, 1, 117, 0, 3, 255, 248, 255, 233, 3, 174, 5, 47, 0, 39, 0, 51, 0, 71, 1, 49, 179, 62, 12, 10, 4, 43, 179, 30, 12, 40, 4, 43, 180, 218, 40, 234, 40, 2, 93, 64, 27, 9, 40, 25, 40, 41, 40, 57, 40, 73, 40, 89, 40, 105, 40, 121, 40, 137, 40, 153, 40, 169, 40, 185, 40, 201, 40, 13, 93, 178, 52, 40, 30, 17, 18, 57, 176, 52, 47, 180, 218, 52, 234, 52, 2, 93, 64, 27, 9, 52, 25, 52, 41, 52, 57, 52, 73, 52, 89, 52, 105, 52, 121, 52, 137, 52, 153, 52, 169, 52, 185, 52, 201, 52, 13, 93, 177, 0, 12, 244, 178, 15, 10, 0, 17, 18, 57, 64, 27, 6, 62, 22, 62, 38, 62, 54, 62, 70, 62, 86, 62, 102, 62, 118, 62, 134, 62, 150, 62, 166, 62, 182, 62, 198, 62, 13, 93, 180, 213, 62, 229, 62, 2, 93, 178, 20, 10, 62, 17, 18, 57, 176, 20, 47, 178, 35, 10, 0, 17, 18, 57, 177, 46, 12, 244, 0, 176, 0, 69, 88, 176, 25, 47, 27, 177, 25, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 179, 49, 6, 57, 4, 43, 178, 15, 57, 49, 17, 18, 57, 178, 35, 57, 49, 17, 18, 57, 176, 25, 16, 177, 43, 6, 244, 180, 217, 43, 233, 43, 2, 93, 64, 23, 40, 43, 56, 43, 72, 43, 88, 43, 104, 43, 120, 43, 136, 43, 152, 43, 168, 43, 184, 43, 200, 43, 11, 93, 180, 8, 43, 24, 43, 2, 93, 176, 5, 16, 177, 67, 6, 244, 64, 27, 7, 67, 23, 67, 39, 67, 55, 67, 71, 67, 87, 67, 103, 67, 119, 67, 135, 67, 151, 67, 167, 67, 183, 67, 199, 67, 13, 93, 180, 214, 67, 230, 67, 2, 93, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 55, 46, 3, 53, 52, 62, 2, 51, 50, 30, 2, 21, 20, 14, 2, 7, 30, 3, 3, 52, 38, 35, 34, 6, 21, 20, 22, 51, 50, 54, 19, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 62, 2, 3, 174, 74, 129, 174, 98, 100, 172, 129, 74, 39, 73, 105, 63, 55, 86, 59, 33, 70, 118, 156, 84, 84, 156, 118, 70, 33, 59, 88, 56, 64, 104, 74, 41, 184, 156, 135, 135, 156, 148, 143, 143, 148, 47, 55, 95, 120, 68, 68, 120, 95, 55, 55, 95, 120, 68, 68, 120, 95, 55, 1, 111, 103, 145, 96, 46, 46, 96, 145, 103, 53, 108, 93, 61, 8, 6, 60, 80, 94, 43, 88, 133, 88, 45, 45, 88, 133, 88, 43, 94, 80, 60, 6, 8, 61, 93, 108, 2, 41, 110, 127, 127, 110, 103, 122, 122, 254, 9, 71, 101, 63, 29, 29, 63, 101, 71, 70, 102, 68, 33, 33, 68, 102, 0, 2, 255, 233, 255, 233, 3, 176, 5, 47, 0, 35, 0, 55, 0, 229, 179, 36, 8, 0, 4, 43, 179, 10, 8, 46, 4, 43, 176, 10, 16, 177, 26, 11, 244, 64, 27, 6, 36, 22, 36, 38, 36, 54, 36, 70, 36, 86, 36, 102, 36, 118, 36, 134, 36, 150, 36, 166, 36, 182, 36, 198, 36, 13, 93, 180, 213, 36, 229, 36, 2, 93, 180, 218, 46, 234, 46, 2, 93, 64, 27, 9, 46, 25, 46, 41, 46, 57, 46, 73, 46, 89, 46, 105, 46, 121, 46, 137, 46, 153, 46, 169, 46, 185, 46, 201, 46, 13, 93, 176, 10, 16, 176, 57, 220, 0, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 21, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 15, 62, 89, 179, 41, 6, 31, 4, 43, 176, 15, 16, 177, 21, 6, 244, 64, 27, 7, 21, 23, 21, 39, 21, 55, 21, 71, 21, 87, 21, 103, 21, 119, 21, 135, 21, 151, 21, 167, 21, 183, 21, 199, 21, 13, 93, 180, 214, 21, 230, 21, 2, 93, 178, 26, 15, 5, 17, 18, 57, 176, 5, 16, 177, 51, 6, 244, 180, 217, 51, 233, 51, 2, 93, 64, 27, 8, 51, 24, 51, 40, 51, 56, 51, 72, 51, 88, 51, 104, 51, 120, 51, 136, 51, 152, 51, 168, 51, 184, 51, 200, 51, 13, 93, 48, 49, 3, 52, 62, 2, 51, 50, 30, 2, 21, 20, 14, 2, 35, 34, 39, 55, 22, 22, 51, 50, 62, 2, 53, 14, 3, 35, 34, 46, 2, 55, 20, 30, 2, 51, 50, 62, 2, 53, 52, 46, 2, 35, 34, 14, 2, 23, 72, 127, 174, 101, 137, 190, 115, 51, 70, 137, 209, 137, 194, 129, 90, 45, 119, 69, 105, 159, 109, 53, 16, 76, 102, 121, 58, 102, 172, 123, 70, 138, 45, 84, 123, 77, 76, 127, 90, 49, 41, 83, 125, 86, 74, 123, 90, 49, 3, 92, 109, 172, 121, 65, 113, 188, 242, 131, 133, 244, 188, 111, 136, 80, 50, 49, 80, 143, 201, 121, 51, 90, 66, 39, 70, 123, 172, 102, 74, 129, 94, 53, 49, 88, 125, 76, 74, 131, 100, 57, 49, 90, 131, 0, 2, 1, 117, 0, 0, 2, 47, 3, 164, 0, 3, 0, 7, 0, 47, 179, 0, 8, 1, 4, 43, 176, 0, 16, 176, 4, 208, 176, 1, 16, 176, 5, 208, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 19, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 48, 49, 1, 35, 53, 51, 17, 35, 53, 51, 2, 47, 186, 186, 186, 186, 2, 233, 187, 252, 92, 186, 0, 0, 2, 0, 240, 254, 139, 2, 98, 3, 164, 0, 3, 0, 7, 0, 42, 179, 0, 8, 1, 4, 43, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 17, 62, 89, 178, 4, 5, 2, 17, 18, 57, 48, 49, 1, 35, 53, 51, 19, 1, 35, 19, 2, 47, 186, 186, 51, 254, 238, 96, 186, 2, 233, 187, 253, 22, 253, 209, 2, 47, 0, 1, 0, 199, 255, 222, 3, 20, 3, 222, 0, 5, 0, 9, 0, 176, 1, 47, 176, 3, 47, 48, 49, 37, 7, 1, 1, 23, 1, 3, 20, 77, 254, 0, 2, 0, 77, 254, 80, 45, 79, 2, 0, 2, 0, 80, 254, 80, 0, 2, 0, 0, 0, 199, 3, 164, 2, 246, 0, 3, 0, 7, 0, 15, 0, 179, 7, 6, 4, 4, 43, 179, 3, 3, 0, 4, 43, 48, 49, 1, 33, 53, 33, 17, 33, 53, 33, 3, 164, 252, 92, 3, 164, 252, 92, 3, 164, 2, 127, 119, 253, 209, 117, 0, 0, 1, 0, 143, 255, 222, 2, 221, 3, 222, 0, 5, 0, 9, 0, 176, 1, 47, 176, 5, 47, 48, 49, 1, 1, 39, 1, 1, 55, 2, 221, 254, 0, 78, 1, 176, 254, 80, 78, 1, 222, 254, 0, 79, 1, 177, 1, 176, 80, 0, 0, 2, 0, 168, 0, 0, 3, 141, 5, 47, 0, 3, 0, 33, 0, 144, 179, 11, 8, 12, 4, 43, 179, 4, 8, 19, 4, 43, 176, 12, 16, 176, 1, 208, 176, 1, 47, 176, 12, 16, 177, 3, 8, 244, 180, 218, 19, 234, 19, 2, 93, 64, 27, 9, 19, 25, 19, 41, 19, 57, 19, 73, 19, 89, 19, 105, 19, 121, 19, 137, 19, 153, 19, 169, 19, 185, 19, 201, 19, 13, 93, 176, 4, 16, 176, 35, 220, 0, 176, 0, 69, 88, 176, 31, 47, 27, 177, 31, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 31, 16, 177, 22, 6, 244, 180, 217, 22, 233, 22, 2, 93, 64, 27, 8, 22, 24, 22, 40, 22, 56, 22, 72, 22, 88, 22, 104, 22, 120, 22, 136, 22, 152, 22, 168, 22, 184, 22, 200, 22, 13, 93, 48, 49, 33, 35, 53, 51, 1, 20, 14, 4, 21, 35, 52, 62, 4, 53, 52, 38, 35, 34, 14, 2, 7, 39, 54, 54, 51, 50, 22, 2, 47, 186, 186, 1, 94, 57, 86, 102, 86, 58, 145, 59, 86, 105, 86, 59, 108, 103, 63, 95, 65, 39, 6, 123, 18, 195, 176, 166, 186, 186, 3, 68, 78, 117, 98, 86, 92, 109, 69, 78, 122, 107, 94, 92, 99, 57, 88, 100, 41, 69, 96, 58, 19, 168, 194, 170, 0, 2, 255, 223, 255, 233, 3, 199, 5, 47, 0, 79, 0, 96, 1, 64, 179, 50, 9, 68, 4, 43, 179, 88, 12, 19, 4, 43, 179, 30, 12, 11, 4, 43, 179, 0, 9, 38, 4, 43, 176, 11, 16, 176, 27, 208, 182, 169, 38, 185, 38, 201, 38, 3, 93, 180, 218, 38, 234, 38, 2, 93, 64, 13, 73, 38, 89, 38, 105, 38, 121, 38, 137, 38, 153, 38, 6, 93, 64, 9, 9, 38, 25, 38, 41, 38, 57, 38, 4, 93, 64, 17, 86, 50, 102, 50, 118, 50, 134, 50, 150, 50, 166, 50, 182, 50, 198, 50, 8, 93, 64, 11, 6, 50, 22, 50, 38, 50, 54, 50, 70, 50, 5, 93, 180, 213, 50, 229, 50, 2, 93, 176, 11, 16, 176, 80, 208, 64, 17, 6, 88, 22, 88, 38, 88, 54, 88, 70, 88, 86, 88, 102, 88, 118, 88, 8, 93, 64, 11, 134, 88, 150, 88, 166, 88, 182, 88, 198, 88, 5, 93, 180, 213, 88, 229, 88, 2, 93, 0, 176, 0, 69, 88, 176, 75, 47, 27, 177, 75, 21, 62, 89, 176, 0, 69, 88, 176, 61, 47, 27, 177, 61, 15, 62, 89, 179, 91, 3, 14, 4, 43, 179, 24, 1, 83, 4, 43, 176, 14, 16, 176, 5, 208, 178, 11, 61, 75, 17, 18, 57, 178, 27, 83, 24, 17, 18, 57, 176, 91, 16, 176, 33, 208, 176, 33, 47, 176, 75, 16, 177, 45, 2, 244, 180, 217, 45, 233, 45, 2, 93, 64, 27, 8, 45, 24, 45, 40, 45, 56, 45, 72, 45, 88, 45, 104, 45, 120, 45, 136, 45, 152, 45, 168, 45, 184, 45, 200, 45, 13, 93, 176, 61, 16, 177, 55, 2, 244, 64, 27, 7, 55, 23, 55, 39, 55, 55, 55, 71, 55, 87, 55, 103, 55, 119, 55, 135, 55, 151, 55, 167, 55, 183, 55, 199, 55, 13, 93, 180, 214, 55, 230, 55, 2, 93, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 53, 6, 6, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 22, 23, 53, 51, 17, 20, 22, 51, 50, 62, 2, 53, 52, 46, 4, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 54, 55, 23, 6, 35, 34, 46, 4, 53, 52, 62, 4, 51, 50, 30, 2, 37, 38, 38, 35, 34, 14, 2, 21, 20, 22, 51, 50, 62, 2, 53, 3, 199, 22, 54, 90, 67, 29, 54, 42, 25, 22, 94, 62, 66, 88, 53, 22, 34, 68, 101, 67, 35, 78, 24, 131, 24, 23, 28, 40, 24, 11, 17, 39, 62, 89, 117, 74, 113, 152, 93, 40, 40, 93, 153, 112, 82, 130, 53, 59, 128, 196, 92, 145, 111, 79, 50, 23, 24, 50, 79, 112, 144, 91, 135, 191, 120, 54, 254, 129, 23, 63, 38, 38, 55, 36, 17, 57, 52, 37, 60, 42, 22, 2, 172, 68, 140, 113, 72, 20, 38, 51, 32, 28, 75, 94, 58, 96, 122, 64, 74, 135, 103, 61, 35, 37, 53, 253, 243, 32, 28, 54, 83, 100, 47, 69, 137, 123, 105, 77, 43, 96, 162, 212, 117, 115, 211, 162, 96, 58, 49, 68, 129, 51, 92, 126, 150, 168, 87, 89, 169, 150, 126, 91, 51, 111, 182, 230, 4, 49, 39, 45, 75, 95, 49, 109, 110, 45, 73, 91, 45, 0, 2, 255, 197, 0, 0, 3, 227, 5, 25, 0, 7, 0, 10, 0, 48, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 179, 8, 3, 2, 4, 43, 48, 49, 33, 35, 3, 33, 3, 35, 1, 51, 19, 3, 3, 3, 227, 147, 123, 253, 252, 121, 147, 1, 178, 186, 125, 219, 219, 1, 117, 254, 139, 5, 25, 252, 213, 2, 161, 253, 95, 0, 0, 3, 0, 49, 0, 0, 3, 162, 5, 25, 0, 14, 0, 27, 0, 36, 0, 135, 179, 33, 12, 4, 4, 43, 179, 11, 12, 15, 4, 43, 176, 11, 16, 177, 28, 10, 244, 177, 0, 12, 244, 178, 13, 4, 0, 17, 18, 57, 180, 218, 15, 234, 15, 2, 93, 64, 27, 9, 15, 25, 15, 41, 15, 57, 15, 73, 15, 89, 15, 105, 15, 121, 15, 137, 15, 153, 15, 169, 15, 185, 15, 201, 15, 13, 93, 176, 33, 16, 176, 21, 208, 176, 11, 16, 176, 38, 220, 0, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 21, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 179, 23, 1, 31, 4, 43, 178, 13, 31, 23, 17, 18, 57, 176, 5, 16, 177, 20, 6, 244, 176, 3, 16, 177, 33, 6, 244, 48, 49, 1, 20, 6, 35, 33, 17, 33, 50, 30, 2, 21, 20, 7, 22, 3, 52, 46, 2, 35, 33, 17, 33, 50, 62, 2, 19, 52, 38, 35, 33, 17, 33, 50, 54, 3, 162, 242, 223, 254, 96, 1, 137, 82, 158, 125, 78, 203, 248, 182, 58, 90, 108, 50, 255, 0, 1, 0, 56, 108, 86, 56, 45, 175, 153, 254, 233, 1, 23, 153, 175, 1, 117, 187, 186, 5, 25, 27, 74, 131, 106, 203, 74, 76, 1, 97, 69, 88, 47, 17, 254, 69, 17, 49, 86, 253, 244, 135, 123, 253, 254, 129, 0, 1, 255, 236, 255, 233, 3, 172, 5, 47, 0, 37, 0, 227, 176, 38, 47, 176, 39, 47, 176, 18, 220, 176, 0, 208, 176, 0, 47, 176, 38, 16, 176, 8, 208, 176, 8, 47, 176, 18, 16, 177, 17, 13, 244, 176, 20, 208, 176, 8, 16, 177, 30, 12, 244, 64, 27, 6, 30, 22, 30, 38, 30, 54, 30, 70, 30, 86, 30, 102, 30, 118, 30, 134, 30, 150, 30, 166, 30, 182, 30, 198, 30, 13, 93, 180, 213, 30, 229, 30, 2, 93, 176, 17, 16, 176, 37, 208, 176, 37, 47, 0, 176, 0, 69, 88, 176, 17, 47, 27, 177, 17, 21, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 21, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 178, 16, 3, 13, 17, 18, 57, 176, 13, 16, 177, 25, 6, 244, 180, 217, 25, 233, 25, 2, 93, 182, 8, 25, 24, 25, 40, 25, 3, 93, 64, 21, 56, 25, 72, 25, 88, 25, 104, 25, 120, 25, 136, 25, 152, 25, 168, 25, 184, 25, 200, 25, 10, 93, 176, 3, 16, 177, 35, 6, 244, 64, 27, 7, 35, 23, 35, 39, 35, 55, 35, 71, 35, 87, 35, 103, 35, 119, 35, 135, 35, 151, 35, 167, 35, 183, 35, 199, 35, 13, 93, 180, 214, 35, 230, 35, 2, 93, 48, 49, 1, 6, 6, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 22, 23, 53, 51, 17, 35, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 19, 3, 172, 51, 232, 176, 137, 190, 121, 53, 53, 121, 190, 137, 121, 172, 41, 117, 117, 53, 90, 123, 68, 106, 139, 84, 35, 35, 84, 139, 106, 244, 96, 1, 86, 168, 197, 113, 186, 244, 131, 131, 244, 188, 113, 86, 88, 152, 254, 84, 69, 123, 90, 51, 100, 162, 198, 99, 98, 199, 159, 101, 1, 39, 0, 0, 2, 0, 49, 0, 0, 3, 207, 5, 25, 0, 12, 0, 21, 0, 112, 176, 22, 47, 176, 23, 47, 176, 0, 220, 176, 22, 16, 176, 6, 208, 176, 6, 47, 176, 0, 16, 177, 13, 12, 244, 180, 218, 13, 234, 13, 2, 93, 64, 27, 9, 13, 25, 13, 41, 13, 57, 13, 73, 13, 89, 13, 105, 13, 121, 13, 137, 13, 153, 13, 169, 13, 185, 13, 201, 13, 13, 93, 176, 6, 16, 177, 18, 12, 244, 0, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 7, 16, 177, 16, 6, 244, 176, 5, 16, 177, 18, 6, 244, 48, 49, 1, 20, 14, 2, 35, 33, 17, 33, 50, 30, 2, 7, 16, 2, 35, 33, 17, 33, 50, 18, 3, 207, 55, 121, 191, 135, 254, 88, 1, 168, 133, 191, 121, 57, 137, 193, 172, 254, 225, 1, 31, 172, 193, 2, 139, 131, 237, 179, 104, 5, 25, 107, 180, 236, 131, 1, 0, 1, 25, 251, 209, 1, 22, 0, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 11, 0, 61, 179, 10, 12, 1, 4, 43, 176, 10, 16, 176, 5, 208, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 179, 7, 6, 8, 4, 43, 176, 2, 16, 177, 4, 6, 244, 176, 0, 16, 177, 10, 6, 244, 48, 49, 33, 33, 17, 33, 21, 33, 17, 33, 21, 33, 17, 33, 3, 115, 252, 190, 3, 66, 253, 71, 2, 2, 253, 254, 2, 185, 5, 25, 117, 254, 45, 117, 254, 25, 0, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 9, 0, 54, 179, 6, 12, 7, 4, 43, 176, 6, 16, 176, 1, 208, 0, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 179, 3, 6, 4, 4, 43, 176, 8, 16, 177, 0, 6, 244, 48, 49, 1, 33, 17, 33, 21, 33, 17, 35, 17, 33, 3, 115, 253, 71, 2, 2, 253, 254, 137, 3, 66, 4, 164, 254, 45, 117, 253, 164, 5, 25, 0, 1, 255, 236, 255, 233, 3, 215, 5, 47, 0, 43, 0, 211, 179, 32, 12, 10, 4, 43, 179, 20, 13, 19, 4, 43, 176, 19, 16, 176, 22, 208, 64, 27, 6, 32, 22, 32, 38, 32, 54, 32, 70, 32, 86, 32, 102, 32, 118, 32, 134, 32, 150, 32, 166, 32, 182, 32, 198, 32, 13, 93, 180, 213, 32, 229, 32, 2, 93, 176, 19, 16, 177, 43, 8, 244, 176, 20, 16, 176, 45, 220, 0, 176, 0, 69, 88, 176, 19, 47, 27, 177, 19, 21, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 179, 43, 6, 40, 4, 43, 178, 18, 5, 15, 17, 18, 57, 176, 15, 16, 177, 27, 6, 244, 180, 217, 27, 233, 27, 2, 93, 64, 27, 8, 27, 24, 27, 40, 27, 56, 27, 72, 27, 88, 27, 104, 27, 120, 27, 136, 27, 152, 27, 168, 27, 184, 27, 200, 27, 13, 93, 176, 5, 16, 177, 37, 6, 244, 64, 27, 7, 37, 23, 37, 39, 37, 55, 37, 71, 37, 87, 37, 103, 37, 119, 37, 135, 37, 151, 37, 167, 37, 183, 37, 199, 37, 13, 93, 180, 214, 37, 230, 37, 2, 93, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 22, 23, 53, 51, 17, 35, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 54, 55, 33, 53, 33, 3, 215, 55, 121, 191, 135, 137, 190, 121, 53, 53, 121, 190, 137, 121, 172, 41, 117, 117, 53, 90, 123, 68, 106, 139, 84, 35, 35, 84, 139, 106, 158, 182, 17, 254, 223, 1, 178, 2, 137, 133, 242, 186, 111, 113, 186, 244, 131, 131, 244, 188, 113, 86, 88, 152, 254, 84, 71, 123, 88, 51, 100, 162, 198, 99, 98, 199, 159, 101, 244, 221, 117, 0, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 11, 0, 96, 176, 12, 47, 176, 13, 47, 176, 0, 220, 177, 1, 8, 244, 176, 12, 16, 176, 5, 208, 176, 5, 47, 177, 4, 12, 244, 176, 7, 208, 176, 1, 16, 176, 9, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 179, 9, 6, 2, 4, 43, 48, 49, 33, 35, 17, 33, 17, 35, 17, 51, 17, 33, 17, 51, 3, 115, 138, 253, 209, 137, 137, 2, 47, 138, 2, 92, 253, 164, 5, 25, 253, 184, 2, 72, 0, 1, 0, 186, 0, 0, 2, 233, 5, 25, 0, 11, 0, 61, 179, 10, 8, 3, 4, 43, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 2, 6, 244, 176, 6, 16, 177, 4, 6, 244, 176, 8, 208, 176, 9, 208, 176, 2, 16, 176, 10, 208, 176, 11, 208, 48, 49, 33, 33, 53, 51, 17, 35, 53, 33, 21, 35, 17, 51, 2, 233, 253, 209, 211, 211, 2, 47, 210, 210, 117, 4, 47, 117, 117, 251, 209, 0, 1, 255, 254, 255, 233, 3, 115, 5, 25, 0, 17, 0, 76, 179, 0, 8, 15, 4, 43, 0, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 21, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 177, 10, 6, 244, 64, 27, 7, 10, 23, 10, 39, 10, 55, 10, 71, 10, 87, 10, 103, 10, 119, 10, 135, 10, 151, 10, 167, 10, 183, 10, 199, 10, 13, 93, 180, 214, 10, 230, 10, 2, 93, 48, 49, 1, 20, 2, 35, 34, 38, 39, 55, 22, 22, 51, 50, 62, 2, 53, 17, 51, 3, 115, 211, 217, 174, 236, 47, 119, 43, 170, 125, 92, 115, 61, 22, 138, 1, 242, 248, 254, 239, 183, 182, 45, 162, 131, 74, 115, 143, 72, 3, 39, 0, 0, 1, 0, 49, 0, 0, 3, 158, 5, 25, 0, 11, 0, 74, 179, 4, 12, 5, 4, 43, 176, 4, 16, 176, 7, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 178, 8, 0, 6, 17, 18, 57, 48, 49, 33, 35, 1, 7, 17, 35, 17, 51, 17, 1, 51, 1, 3, 158, 168, 254, 78, 138, 137, 137, 2, 47, 181, 254, 0, 2, 127, 154, 254, 27, 5, 25, 253, 133, 2, 123, 253, 198, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 5, 0, 39, 179, 4, 12, 1, 4, 43, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 4, 6, 244, 48, 49, 33, 33, 17, 51, 17, 33, 3, 115, 252, 190, 137, 2, 185, 5, 25, 251, 92, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 12, 0, 109, 176, 13, 47, 176, 14, 47, 176, 0, 220, 177, 1, 8, 244, 176, 13, 16, 176, 7, 208, 176, 7, 47, 177, 6, 12, 244, 178, 10, 7, 0, 17, 18, 57, 0, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 21, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 178, 2, 0, 8, 17, 18, 57, 178, 5, 0, 8, 17, 18, 57, 178, 10, 0, 8, 17, 18, 57, 48, 49, 33, 35, 17, 3, 35, 3, 17, 35, 17, 51, 19, 19, 51, 3, 115, 138, 231, 98, 230, 137, 178, 238, 240, 178, 4, 63, 253, 95, 2, 161, 251, 193, 5, 25, 253, 86, 2, 170, 0, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 9, 0, 98, 176, 10, 47, 176, 11, 47, 176, 0, 220, 176, 10, 16, 176, 4, 208, 176, 4, 47, 177, 3, 12, 244, 176, 0, 16, 177, 7, 8, 244, 0, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 21, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 178, 2, 0, 5, 17, 18, 57, 178, 7, 0, 5, 17, 18, 57, 48, 49, 33, 35, 1, 17, 35, 17, 51, 1, 17, 51, 3, 115, 170, 253, 241, 137, 193, 1, 247, 138, 4, 80, 251, 176, 5, 25, 251, 227, 4, 29, 0, 2, 255, 223, 255, 233, 3, 199, 5, 47, 0, 19, 0, 39, 0, 226, 176, 40, 47, 176, 41, 47, 176, 0, 220, 176, 40, 16, 176, 10, 208, 176, 10, 47, 176, 0, 16, 177, 20, 8, 244, 180, 218, 20, 234, 20, 2, 93, 64, 27, 9, 20, 25, 20, 41, 20, 57, 20, 73, 20, 89, 20, 105, 20, 121, 20, 137, 20, 153, 20, 169, 20, 185, 20, 201, 20, 13, 93, 176, 10, 16, 177, 30, 12, 244, 64, 23, 6, 30, 22, 30, 38, 30, 54, 30, 70, 30, 86, 30, 102, 30, 118, 30, 134, 30, 150, 30, 166, 30, 11, 93, 180, 182, 30, 198, 30, 2, 93, 180, 213, 30, 229, 30, 2, 93, 0, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 15, 16, 177, 25, 6, 244, 180, 217, 25, 233, 25, 2, 93, 64, 27, 8, 25, 24, 25, 40, 25, 56, 25, 72, 25, 88, 25, 104, 25, 120, 25, 136, 25, 152, 25, 168, 25, 184, 25, 200, 25, 13, 93, 176, 5, 16, 177, 35, 6, 244, 64, 27, 7, 35, 23, 35, 39, 35, 55, 35, 71, 35, 87, 35, 103, 35, 119, 35, 135, 35, 151, 35, 167, 35, 183, 35, 199, 35, 13, 93, 180, 214, 35, 230, 35, 2, 93, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 62, 2, 3, 199, 54, 118, 191, 137, 137, 191, 119, 53, 53, 121, 191, 135, 135, 191, 118, 56, 138, 49, 92, 135, 86, 107, 139, 84, 33, 33, 84, 139, 107, 106, 140, 84, 32, 2, 139, 131, 244, 186, 113, 113, 186, 244, 131, 131, 244, 188, 113, 113, 188, 244, 131, 129, 207, 146, 77, 100, 162, 198, 99, 98, 199, 159, 101, 101, 159, 199, 0, 2, 0, 49, 0, 0, 3, 162, 5, 25, 0, 10, 0, 19, 0, 114, 176, 20, 47, 176, 21, 47, 176, 0, 220, 176, 20, 16, 176, 6, 208, 176, 6, 47, 177, 5, 12, 244, 176, 0, 16, 177, 11, 12, 244, 180, 218, 11, 234, 11, 2, 93, 64, 27, 9, 11, 25, 11, 41, 11, 57, 11, 73, 11, 89, 11, 105, 11, 121, 11, 137, 11, 153, 11, 169, 11, 185, 11, 201, 11, 13, 93, 176, 5, 16, 176, 15, 208, 0, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 179, 17, 6, 3, 4, 43, 176, 7, 16, 177, 14, 6, 244, 48, 49, 1, 20, 6, 35, 33, 17, 35, 17, 33, 50, 22, 7, 52, 38, 35, 33, 17, 33, 50, 54, 3, 162, 236, 213, 254, 217, 137, 1, 174, 215, 236, 137, 170, 142, 254, 217, 1, 39, 142, 170, 3, 164, 189, 184, 253, 209, 5, 25, 187, 186, 135, 121, 254, 0, 121, 0, 0, 2, 255, 223, 254, 141, 3, 199, 5, 47, 0, 32, 0, 48, 1, 28, 176, 49, 47, 176, 50, 47, 176, 0, 220, 177, 33, 8, 244, 180, 218, 33, 234, 33, 2, 93, 64, 27, 9, 33, 25, 33, 41, 33, 57, 33, 73, 33, 89, 33, 105, 33, 121, 33, 137, 33, 153, 33, 169, 33, 185, 33, 201, 33, 13, 93, 176, 8, 208, 176, 8, 47, 176, 33, 16, 176, 15, 208, 176, 15, 47, 176, 49, 16, 176, 23, 208, 176, 23, 47, 177, 43, 12, 244, 64, 27, 6, 43, 22, 43, 38, 43, 54, 43, 70, 43, 86, 43, 102, 43, 118, 43, 134, 43, 150, 43, 166, 43, 182, 43, 198, 43, 13, 93, 180, 213, 43, 229, 43, 2, 93, 0, 176, 0, 69, 88, 176, 28, 47, 27, 177, 28, 21, 62, 89, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 17, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 17, 62, 89, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 15, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 15, 16, 177, 8, 6, 244, 64, 27, 7, 8, 23, 8, 39, 8, 55, 8, 71, 8, 87, 8, 103, 8, 119, 8, 135, 8, 151, 8, 167, 8, 183, 8, 199, 8, 13, 93, 180, 214, 8, 230, 8, 2, 93, 176, 11, 208, 176, 11, 47, 176, 28, 16, 177, 38, 6, 244, 180, 217, 38, 233, 38, 2, 93, 64, 27, 8, 38, 24, 38, 40, 38, 56, 38, 72, 38, 88, 38, 104, 38, 120, 38, 136, 38, 152, 38, 168, 38, 184, 38, 200, 38, 13, 93, 176, 18, 16, 177, 46, 1, 244, 48, 49, 1, 20, 14, 2, 7, 22, 22, 51, 50, 54, 55, 21, 6, 6, 35, 34, 38, 39, 46, 3, 53, 52, 62, 2, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 14, 2, 21, 16, 18, 51, 50, 18, 3, 199, 47, 105, 168, 119, 23, 139, 135, 35, 49, 23, 29, 53, 25, 204, 207, 23, 110, 162, 103, 49, 53, 121, 191, 135, 135, 191, 118, 56, 138, 34, 82, 142, 104, 107, 139, 84, 33, 189, 174, 172, 190, 2, 139, 125, 231, 182, 119, 12, 134, 102, 2, 2, 117, 2, 2, 174, 181, 14, 115, 178, 231, 129, 131, 244, 188, 113, 113, 188, 244, 131, 99, 198, 162, 100, 100, 162, 198, 99, 254, 252, 254, 215, 1, 41, 0, 2, 0, 49, 0, 0, 3, 176, 5, 25, 0, 15, 0, 24, 0, 142, 176, 25, 47, 176, 26, 47, 176, 10, 220, 176, 0, 208, 176, 0, 47, 176, 25, 16, 176, 5, 208, 176, 5, 47, 177, 4, 12, 244, 176, 10, 16, 177, 16, 8, 244, 180, 218, 16, 234, 16, 2, 93, 64, 27, 9, 16, 25, 16, 41, 16, 57, 16, 73, 16, 89, 16, 105, 16, 121, 16, 137, 16, 153, 16, 169, 16, 185, 16, 201, 16, 13, 93, 176, 4, 16, 176, 20, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 179, 22, 1, 15, 4, 43, 176, 15, 16, 176, 2, 208, 176, 2, 47, 176, 6, 16, 177, 19, 6, 244, 48, 49, 33, 35, 1, 35, 17, 35, 17, 33, 50, 22, 21, 20, 14, 2, 7, 19, 52, 38, 35, 33, 17, 33, 50, 54, 3, 176, 174, 254, 131, 203, 137, 1, 174, 215, 236, 58, 100, 139, 82, 237, 165, 144, 254, 219, 1, 37, 144, 165, 2, 47, 253, 209, 5, 25, 187, 186, 82, 131, 92, 56, 6, 1, 111, 133, 123, 254, 0, 121, 0, 1, 0, 25, 255, 233, 3, 131, 5, 47, 0, 63, 0, 220, 179, 12, 10, 32, 4, 43, 179, 42, 11, 41, 4, 43, 176, 41, 16, 177, 0, 8, 244, 176, 12, 16, 176, 8, 208, 176, 41, 16, 176, 44, 208, 176, 32, 16, 177, 54, 12, 244, 176, 42, 16, 176, 65, 220, 0, 176, 0, 69, 88, 176, 41, 47, 27, 177, 41, 21, 62, 89, 176, 0, 69, 88, 176, 43, 47, 27, 177, 43, 19, 62, 89, 176, 0, 69, 88, 176, 37, 47, 27, 177, 37, 21, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 179, 59, 4, 27, 4, 43, 178, 8, 5, 37, 17, 18, 57, 176, 5, 16, 177, 17, 6, 244, 64, 27, 7, 17, 23, 17, 39, 17, 55, 17, 71, 17, 87, 17, 103, 17, 119, 17, 135, 17, 151, 17, 167, 17, 183, 17, 199, 17, 13, 93, 180, 214, 17, 230, 17, 2, 93, 178, 40, 5, 37, 17, 18, 57, 176, 37, 16, 177, 49, 6, 244, 180, 217, 49, 233, 49, 2, 93, 64, 27, 8, 49, 24, 49, 40, 49, 56, 49, 72, 49, 88, 49, 104, 49, 120, 49, 136, 49, 152, 49, 168, 49, 184, 49, 200, 49, 13, 93, 48, 49, 1, 20, 14, 2, 35, 34, 38, 39, 21, 35, 17, 51, 20, 30, 2, 51, 50, 62, 2, 53, 52, 46, 2, 39, 46, 3, 53, 52, 62, 2, 51, 50, 22, 23, 53, 51, 17, 35, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 23, 30, 3, 3, 131, 68, 114, 148, 80, 110, 184, 54, 116, 116, 62, 96, 125, 65, 58, 98, 74, 43, 55, 93, 116, 60, 71, 142, 112, 70, 68, 110, 146, 77, 95, 161, 45, 121, 121, 49, 84, 108, 60, 53, 96, 72, 43, 51, 86, 113, 59, 74, 146, 116, 74, 1, 84, 82, 133, 96, 52, 82, 80, 139, 1, 141, 67, 111, 80, 45, 33, 61, 88, 56, 63, 90, 64, 45, 22, 25, 55, 84, 121, 90, 80, 125, 86, 45, 78, 80, 136, 254, 139, 59, 103, 73, 43, 24, 53, 84, 58, 51, 72, 55, 45, 23, 26, 64, 90, 131, 0, 0, 1, 0, 0, 0, 0, 3, 164, 5, 25, 0, 15, 0, 107, 176, 16, 47, 176, 13, 208, 176, 13, 47, 176, 9, 220, 178, 64, 9, 1, 93, 176, 1, 220, 178, 64, 1, 1, 93, 177, 0, 13, 244, 176, 9, 16, 177, 4, 8, 244, 176, 13, 16, 177, 12, 13, 244, 176, 0, 16, 176, 17, 220, 0, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 176, 14, 16, 177, 2, 6, 244, 176, 6, 16, 177, 4, 6, 244, 176, 8, 208, 176, 9, 208, 176, 2, 16, 176, 10, 208, 176, 11, 208, 48, 49, 1, 35, 17, 33, 17, 51, 21, 33, 53, 51, 17, 33, 17, 35, 17, 33, 3, 164, 117, 254, 232, 210, 253, 209, 211, 254, 232, 117, 3, 164, 3, 96, 1, 68, 251, 209, 117, 117, 4, 47, 254, 188, 1, 185, 0, 0, 1, 0, 49, 255, 233, 3, 115, 5, 25, 0, 25, 0, 112, 176, 26, 47, 176, 27, 47, 176, 0, 220, 176, 26, 16, 176, 10, 208, 176, 10, 47, 177, 13, 12, 244, 176, 0, 16, 177, 23, 8, 244, 0, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 21, 62, 89, 176, 0, 69, 88, 176, 24, 47, 27, 177, 24, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 177, 18, 6, 244, 64, 27, 7, 18, 23, 18, 39, 18, 55, 18, 71, 18, 87, 18, 103, 18, 119, 18, 135, 18, 151, 18, 167, 18, 183, 18, 199, 18, 13, 93, 180, 214, 18, 230, 18, 2, 93, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 17, 51, 17, 20, 30, 2, 51, 50, 62, 2, 53, 17, 51, 3, 115, 49, 103, 158, 108, 109, 157, 101, 49, 137, 21, 61, 109, 88, 88, 111, 61, 20, 138, 1, 209, 111, 180, 127, 70, 70, 127, 182, 111, 3, 70, 252, 184, 59, 132, 108, 72, 72, 108, 132, 59, 3, 72, 0, 1, 255, 197, 0, 0, 3, 227, 5, 25, 0, 6, 0, 49, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 21, 62, 89, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 15, 62, 89, 178, 5, 1, 0, 17, 18, 57, 48, 49, 1, 1, 35, 1, 51, 1, 1, 3, 227, 254, 76, 186, 254, 80, 145, 1, 125, 1, 123, 5, 25, 250, 231, 5, 25, 251, 114, 4, 142, 0, 1, 255, 193, 0, 0, 3, 227, 5, 25, 0, 12, 0, 89, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 19, 62, 89, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 178, 3, 1, 0, 17, 18, 57, 178, 8, 1, 0, 17, 18, 57, 178, 11, 1, 0, 17, 18, 57, 48, 49, 1, 3, 35, 3, 3, 35, 3, 51, 19, 19, 51, 19, 19, 3, 227, 235, 162, 133, 135, 160, 233, 145, 184, 131, 135, 132, 184, 5, 25, 250, 231, 2, 125, 253, 131, 5, 25, 251, 206, 2, 189, 253, 67, 4, 50, 0, 1, 255, 233, 0, 0, 3, 186, 5, 25, 0, 27, 0, 122, 0, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 21, 62, 89, 176, 0, 69, 88, 176, 21, 47, 27, 177, 21, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 15, 62, 89, 177, 2, 6, 244, 176, 3, 208, 178, 4, 0, 14, 17, 18, 57, 176, 5, 208, 176, 6, 208, 176, 9, 208, 176, 10, 208, 176, 14, 16, 177, 12, 6, 244, 176, 16, 208, 176, 17, 208, 178, 18, 0, 14, 17, 18, 57, 176, 19, 208, 176, 20, 208, 176, 23, 208, 176, 24, 208, 176, 10, 16, 176, 26, 208, 176, 27, 208, 48, 49, 33, 33, 53, 51, 3, 3, 51, 21, 33, 53, 51, 1, 1, 35, 53, 33, 21, 35, 19, 19, 35, 53, 33, 21, 35, 1, 1, 51, 3, 186, 254, 142, 88, 205, 207, 88, 254, 141, 127, 1, 27, 254, 234, 109, 1, 117, 109, 203, 197, 105, 1, 117, 113, 254, 240, 1, 24, 127, 117, 1, 172, 254, 84, 117, 117, 2, 28, 2, 19, 117, 117, 254, 94, 1, 162, 117, 117, 253, 237, 253, 228, 0, 0, 1, 255, 236, 0, 0, 3, 184, 5, 25, 0, 20, 0, 103, 179, 3, 8, 8, 4, 43, 178, 16, 8, 3, 17, 18, 57, 0, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 21, 62, 89, 176, 0, 69, 88, 176, 19, 47, 27, 177, 19, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 19, 16, 177, 0, 6, 244, 176, 5, 16, 177, 3, 6, 244, 176, 7, 208, 176, 8, 208, 176, 0, 16, 176, 10, 208, 176, 11, 208, 176, 14, 208, 176, 15, 208, 178, 16, 5, 12, 17, 18, 57, 176, 17, 208, 176, 18, 208, 48, 49, 1, 35, 1, 17, 51, 21, 33, 53, 51, 17, 1, 35, 53, 33, 21, 35, 19, 19, 35, 53, 33, 3, 184, 106, 254, 201, 210, 253, 209, 211, 254, 201, 106, 1, 112, 108, 227, 225, 108, 1, 112, 4, 164, 253, 143, 254, 66, 117, 117, 1, 190, 2, 113, 117, 117, 254, 20, 1, 236, 117, 0, 0, 1, 0, 49, 0, 0, 3, 119, 5, 25, 0, 13, 0, 85, 176, 14, 47, 176, 15, 47, 176, 0, 220, 176, 14, 16, 176, 6, 208, 176, 6, 47, 176, 1, 208, 178, 3, 6, 0, 17, 18, 57, 176, 6, 16, 177, 5, 13, 244, 176, 0, 16, 177, 11, 13, 244, 0, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 7, 16, 177, 3, 6, 244, 176, 0, 16, 177, 10, 6, 244, 48, 49, 33, 33, 53, 1, 33, 17, 35, 17, 33, 21, 1, 33, 17, 51, 3, 119, 252, 186, 2, 144, 253, 229, 117, 3, 49, 253, 119, 2, 41, 117, 117, 4, 47, 254, 192, 1, 181, 117, 251, 209, 1, 69, 0, 0, 1, 1, 117, 254, 139, 2, 233, 5, 211, 0, 7, 0, 45, 179, 6, 9, 1, 4, 43, 176, 1, 16, 177, 0, 14, 244, 176, 3, 208, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 17, 62, 89, 179, 3, 1, 4, 4, 43, 176, 0, 16, 177, 6, 1, 244, 48, 49, 1, 33, 17, 33, 21, 33, 17, 33, 2, 233, 254, 140, 1, 116, 254, 250, 1, 6, 254, 139, 7, 72, 111, 249, 152, 0, 1, 0, 133, 255, 16, 3, 229, 5, 74, 0, 3, 0, 9, 0, 176, 1, 47, 176, 3, 47, 48, 49, 5, 7, 1, 55, 3, 229, 98, 253, 2, 98, 188, 52, 6, 7, 51, 0, 1, 0, 186, 254, 139, 2, 47, 5, 211, 0, 7, 0, 48, 179, 0, 14, 1, 4, 43, 176, 0, 16, 177, 3, 9, 244, 176, 1, 16, 176, 5, 208, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 17, 62, 89, 179, 7, 1, 4, 4, 43, 176, 0, 16, 177, 2, 1, 244, 48, 49, 1, 33, 53, 33, 17, 33, 53, 33, 2, 47, 254, 139, 1, 7, 254, 249, 1, 117, 254, 139, 113, 6, 104, 111, 0, 1, 0, 2, 2, 47, 3, 166, 5, 25, 0, 6, 0, 29, 0, 176, 0, 47, 176, 3, 47, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 21, 62, 89, 178, 2, 0, 5, 17, 18, 57, 48, 49, 1, 35, 1, 1, 35, 1, 51, 3, 166, 152, 254, 197, 254, 199, 152, 1, 117, 184, 2, 47, 2, 101, 253, 155, 2, 234, 0, 0, 1, 0, 0, 255, 70, 3, 164, 255, 187, 0, 3, 0, 9, 0, 179, 3, 6, 0, 4, 43, 48, 49, 5, 33, 53, 33, 3, 164, 252, 92, 3, 164, 186, 117, 0, 0, 1, 0, 229, 3, 244, 2, 188, 5, 84, 0, 3, 0, 9, 0, 176, 1, 47, 176, 3, 47, 48, 49, 1, 7, 37, 55, 2, 188, 41, 254, 82, 66, 4, 53, 65, 243, 109, 0, 2, 255, 254, 255, 233, 3, 115, 3, 186, 0, 38, 0, 55, 0, 237, 176, 56, 47, 176, 57, 47, 176, 56, 16, 176, 0, 208, 176, 0, 47, 176, 57, 16, 176, 28, 220, 177, 11, 8, 244, 176, 30, 208, 178, 31, 0, 28, 17, 18, 57, 176, 11, 16, 176, 44, 208, 176, 0, 16, 177, 53, 12, 244, 64, 27, 6, 53, 22, 53, 38, 53, 54, 53, 70, 53, 86, 53, 102, 53, 118, 53, 134, 53, 150, 53, 166, 53, 182, 53, 198, 53, 13, 93, 180, 213, 53, 229, 53, 2, 93, 0, 176, 0, 69, 88, 176, 23, 47, 27, 177, 23, 19, 62, 89, 176, 0, 69, 88, 176, 29, 47, 27, 177, 29, 15, 62, 89, 176, 0, 69, 88, 176, 36, 47, 27, 177, 36, 15, 62, 89, 179, 5, 6, 48, 4, 43, 176, 23, 16, 177, 16, 6, 244, 180, 217, 16, 233, 16, 2, 93, 64, 27, 8, 16, 24, 16, 40, 16, 56, 16, 72, 16, 88, 16, 104, 16, 120, 16, 136, 16, 152, 16, 168, 16, 184, 16, 200, 16, 13, 93, 178, 31, 36, 23, 17, 18, 57, 176, 36, 16, 177, 39, 6, 244, 64, 27, 7, 39, 23, 39, 39, 39, 55, 39, 71, 39, 87, 39, 103, 39, 119, 39, 135, 39, 151, 39, 167, 39, 183, 39, 199, 39, 13, 93, 180, 214, 39, 230, 39, 2, 93, 176, 48, 16, 176, 45, 208, 176, 45, 47, 48, 49, 39, 52, 62, 2, 51, 50, 30, 2, 23, 53, 52, 46, 2, 35, 34, 6, 7, 39, 54, 54, 51, 50, 30, 2, 21, 17, 35, 53, 14, 3, 35, 34, 38, 5, 50, 62, 2, 53, 53, 38, 38, 35, 34, 14, 2, 21, 20, 22, 2, 88, 143, 185, 96, 37, 59, 53, 54, 32, 59, 86, 94, 33, 104, 176, 76, 62, 84, 209, 125, 76, 147, 117, 70, 138, 36, 91, 100, 100, 45, 185, 190, 1, 119, 86, 137, 96, 53, 67, 123, 45, 74, 137, 102, 62, 115, 252, 88, 119, 69, 31, 2, 4, 6, 4, 67, 68, 88, 51, 21, 56, 47, 103, 51, 65, 39, 81, 132, 92, 253, 158, 156, 45, 68, 43, 23, 142, 25, 51, 76, 86, 35, 88, 10, 2, 20, 45, 72, 53, 59, 99, 0, 0, 2, 0, 49, 255, 233, 3, 164, 5, 25, 0, 20, 0, 36, 0, 236, 176, 37, 47, 176, 38, 47, 176, 0, 220, 176, 37, 16, 176, 10, 208, 176, 10, 47, 177, 9, 12, 244, 176, 12, 208, 178, 13, 10, 0, 17, 18, 57, 176, 0, 16, 177, 21, 8, 244, 180, 218, 21, 234, 21, 2, 93, 64, 27, 9, 21, 25, 21, 41, 21, 57, 21, 73, 21, 89, 21, 105, 21, 121, 21, 137, 21, 153, 21, 169, 21, 185, 21, 201, 21, 13, 93, 176, 9, 16, 176, 28, 208, 0, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 21, 62, 89, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 19, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 177, 32, 6, 244, 64, 27, 7, 32, 23, 32, 39, 32, 55, 32, 71, 32, 87, 32, 103, 32, 119, 32, 135, 32, 151, 32, 167, 32, 183, 32, 199, 32, 13, 93, 180, 214, 32, 230, 32, 2, 93, 178, 8, 5, 32, 17, 18, 57, 176, 16, 16, 177, 26, 6, 244, 180, 217, 26, 233, 26, 2, 93, 64, 27, 8, 26, 24, 26, 40, 26, 56, 26, 72, 26, 88, 26, 104, 26, 120, 26, 136, 26, 152, 26, 168, 26, 184, 26, 200, 26, 13, 93, 178, 13, 16, 26, 17, 18, 57, 48, 49, 1, 20, 14, 2, 35, 34, 38, 39, 21, 35, 17, 51, 17, 54, 54, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 7, 17, 22, 22, 51, 50, 62, 2, 3, 164, 66, 123, 174, 108, 76, 139, 60, 137, 137, 60, 139, 76, 108, 174, 123, 66, 139, 41, 84, 125, 82, 158, 117, 60, 137, 78, 82, 123, 84, 43, 1, 209, 107, 180, 129, 72, 54, 53, 84, 5, 25, 254, 53, 51, 57, 73, 129, 181, 106, 80, 135, 100, 58, 125, 254, 14, 65, 56, 58, 100, 135, 0, 1, 0, 0, 255, 233, 3, 129, 3, 186, 0, 40, 0, 215, 176, 41, 47, 176, 42, 47, 176, 20, 220, 176, 0, 208, 176, 0, 47, 176, 41, 16, 176, 8, 208, 176, 8, 47, 176, 20, 16, 177, 19, 11, 244, 176, 22, 208, 176, 8, 16, 177, 32, 12, 244, 64, 27, 6, 32, 22, 32, 38, 32, 54, 32, 70, 32, 86, 32, 102, 32, 118, 32, 134, 32, 150, 32, 166, 32, 182, 32, 198, 32, 13, 93, 180, 213, 32, 229, 32, 2, 93, 0, 176, 0, 69, 88, 176, 19, 47, 27, 177, 19, 19, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 19, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 178, 18, 3, 13, 17, 18, 57, 176, 13, 16, 177, 27, 6, 244, 180, 217, 27, 233, 27, 2, 93, 64, 27, 8, 27, 24, 27, 40, 27, 56, 27, 72, 27, 88, 27, 104, 27, 120, 27, 136, 27, 152, 27, 168, 27, 184, 27, 200, 27, 13, 93, 176, 3, 16, 177, 37, 6, 244, 64, 27, 7, 37, 23, 37, 39, 37, 55, 37, 71, 37, 87, 37, 103, 37, 119, 37, 135, 37, 151, 37, 167, 37, 183, 37, 199, 37, 13, 93, 180, 214, 37, 230, 37, 2, 93, 48, 49, 37, 6, 6, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 23, 53, 51, 17, 35, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 54, 55, 3, 129, 59, 205, 141, 109, 182, 129, 72, 66, 122, 177, 108, 43, 90, 80, 64, 16, 123, 123, 45, 78, 108, 62, 84, 125, 84, 43, 49, 93, 131, 82, 104, 162, 43, 178, 92, 109, 72, 129, 178, 109, 106, 181, 129, 73, 20, 41, 57, 39, 135, 254, 139, 62, 102, 74, 41, 58, 100, 135, 80, 80, 135, 98, 58, 82, 68, 0, 0, 2, 255, 254, 255, 233, 3, 115, 5, 25, 0, 22, 0, 38, 0, 232, 176, 39, 47, 176, 40, 47, 176, 0, 220, 177, 1, 8, 244, 176, 39, 16, 176, 10, 208, 176, 10, 47, 176, 1, 16, 176, 18, 208, 176, 1, 16, 176, 23, 208, 176, 10, 16, 177, 31, 12, 244, 64, 27, 6, 31, 22, 31, 38, 31, 54, 31, 70, 31, 86, 31, 102, 31, 118, 31, 134, 31, 150, 31, 166, 31, 182, 31, 198, 31, 13, 93, 180, 213, 31, 229, 31, 2, 93, 0, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 19, 62, 89, 176, 0, 69, 88, 176, 21, 47, 27, 177, 21, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 177, 36, 6, 244, 64, 27, 7, 36, 23, 36, 39, 36, 55, 36, 71, 36, 87, 36, 103, 36, 119, 36, 135, 36, 151, 36, 167, 36, 183, 36, 199, 36, 13, 93, 180, 214, 36, 230, 36, 2, 93, 178, 2, 5, 36, 17, 18, 57, 176, 21, 16, 177, 19, 6, 244, 176, 15, 16, 177, 26, 6, 244, 180, 217, 26, 233, 26, 2, 93, 64, 27, 8, 26, 24, 26, 40, 26, 56, 26, 72, 26, 88, 26, 104, 26, 120, 26, 136, 26, 152, 26, 168, 26, 184, 26, 200, 26, 13, 93, 48, 49, 33, 35, 53, 6, 6, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 22, 23, 17, 35, 53, 33, 3, 38, 38, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 55, 3, 115, 138, 59, 141, 74, 111, 176, 121, 65, 65, 121, 176, 111, 74, 141, 59, 186, 1, 68, 138, 59, 139, 78, 82, 125, 84, 43, 43, 84, 125, 82, 158, 118, 86, 53, 56, 72, 129, 180, 107, 106, 181, 129, 73, 53, 53, 1, 84, 117, 253, 178, 65, 58, 58, 100, 135, 80, 80, 135, 100, 58, 125, 0, 2, 255, 252, 255, 233, 3, 174, 3, 186, 0, 25, 0, 34, 0, 123, 0, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 19, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 15, 62, 89, 179, 34, 6, 0, 4, 43, 176, 10, 16, 177, 3, 6, 244, 64, 27, 7, 3, 23, 3, 39, 3, 55, 3, 71, 3, 87, 3, 103, 3, 119, 3, 135, 3, 151, 3, 167, 3, 183, 3, 199, 3, 13, 93, 180, 214, 3, 230, 3, 2, 93, 176, 20, 16, 177, 29, 6, 244, 180, 217, 29, 233, 29, 2, 93, 64, 27, 8, 29, 24, 29, 40, 29, 56, 29, 72, 29, 88, 29, 104, 29, 120, 29, 136, 29, 152, 29, 168, 29, 184, 29, 200, 29, 13, 93, 48, 49, 19, 22, 22, 51, 50, 54, 55, 23, 6, 6, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 21, 39, 38, 38, 35, 34, 14, 2, 7, 137, 15, 186, 149, 105, 164, 41, 96, 70, 194, 142, 108, 180, 131, 72, 65, 123, 176, 109, 119, 178, 119, 57, 145, 23, 176, 129, 66, 112, 86, 58, 8, 1, 162, 148, 176, 86, 64, 66, 98, 103, 72, 129, 178, 109, 106, 179, 131, 73, 80, 141, 196, 119, 117, 153, 150, 43, 80, 113, 67, 0, 1, 0, 186, 0, 0, 3, 164, 5, 47, 0, 25, 0, 159, 179, 2, 8, 7, 4, 43, 176, 7, 16, 176, 11, 208, 176, 2, 16, 176, 24, 208, 0, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 21, 62, 89, 176, 0, 69, 88, 176, 17, 47, 27, 177, 17, 21, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 19, 62, 89, 176, 0, 69, 88, 176, 24, 47, 27, 177, 24, 19, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 176, 24, 16, 177, 0, 6, 244, 176, 4, 16, 177, 2, 6, 244, 176, 6, 208, 176, 7, 208, 176, 0, 16, 176, 8, 208, 176, 9, 208, 176, 14, 16, 177, 21, 6, 244, 180, 217, 21, 233, 21, 2, 93, 64, 27, 8, 21, 24, 21, 40, 21, 56, 21, 72, 21, 88, 21, 104, 21, 120, 21, 136, 21, 152, 21, 168, 21, 184, 21, 200, 21, 13, 93, 48, 49, 1, 33, 17, 51, 21, 33, 53, 51, 17, 35, 53, 51, 52, 54, 51, 50, 22, 23, 21, 38, 38, 35, 34, 6, 21, 33, 3, 164, 254, 115, 210, 253, 209, 211, 211, 211, 199, 201, 47, 65, 23, 29, 63, 43, 131, 131, 1, 141, 3, 47, 253, 70, 117, 117, 2, 186, 117, 192, 203, 6, 4, 117, 4, 6, 133, 145, 0, 0, 2, 255, 254, 254, 117, 3, 115, 3, 186, 0, 31, 0, 46, 1, 1, 176, 47, 47, 176, 48, 47, 176, 0, 220, 176, 47, 16, 176, 21, 208, 176, 21, 47, 177, 40, 12, 244, 64, 27, 6, 40, 22, 40, 38, 40, 54, 40, 70, 40, 86, 40, 102, 40, 118, 40, 134, 40, 150, 40, 166, 40, 182, 40, 198, 40, 13, 93, 180, 213, 40, 229, 40, 2, 93, 176, 9, 208, 176, 9, 47, 176, 0, 16, 177, 15, 8, 244, 176, 29, 208, 176, 15, 16, 176, 32, 208, 0, 176, 0, 69, 88, 176, 30, 47, 27, 177, 30, 19, 62, 89, 176, 0, 69, 88, 176, 26, 47, 27, 177, 26, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 15, 62, 89, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 15, 62, 89, 179, 12, 4, 5, 4, 43, 176, 18, 16, 177, 43, 6, 244, 64, 27, 7, 43, 23, 43, 39, 43, 55, 43, 71, 43, 87, 43, 103, 43, 119, 43, 135, 43, 151, 43, 167, 43, 183, 43, 199, 43, 13, 93, 180, 214, 43, 230, 43, 2, 93, 178, 16, 18, 43, 17, 18, 57, 176, 26, 16, 177, 35, 6, 244, 180, 217, 35, 233, 35, 2, 93, 64, 27, 8, 35, 24, 35, 40, 35, 56, 35, 72, 35, 88, 35, 104, 35, 120, 35, 136, 35, 152, 35, 168, 35, 184, 35, 200, 35, 13, 93, 178, 29, 26, 35, 17, 18, 57, 48, 49, 37, 20, 14, 2, 35, 34, 38, 39, 55, 22, 22, 51, 50, 54, 53, 53, 6, 35, 34, 38, 53, 52, 62, 2, 51, 50, 22, 23, 53, 51, 7, 38, 38, 35, 34, 14, 2, 21, 20, 22, 51, 50, 54, 55, 3, 115, 66, 119, 161, 99, 139, 195, 71, 96, 43, 162, 104, 142, 165, 122, 156, 219, 250, 65, 121, 174, 109, 76, 143, 59, 138, 138, 59, 141, 78, 82, 125, 82, 43, 166, 166, 78, 141, 59, 10, 96, 150, 104, 55, 104, 98, 74, 65, 88, 143, 135, 100, 108, 250, 217, 106, 179, 131, 73, 53, 53, 84, 217, 65, 58, 58, 100, 137, 78, 160, 190, 59, 66, 0, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 19, 0, 142, 176, 20, 47, 176, 21, 47, 176, 0, 220, 177, 1, 8, 244, 176, 20, 16, 176, 12, 208, 176, 12, 47, 177, 11, 12, 244, 176, 14, 208, 178, 15, 12, 0, 17, 18, 57, 0, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 21, 62, 89, 176, 0, 69, 88, 176, 17, 47, 27, 177, 17, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 15, 62, 89, 176, 17, 16, 177, 5, 6, 244, 180, 217, 5, 233, 5, 2, 93, 64, 27, 8, 5, 24, 5, 40, 5, 56, 5, 72, 5, 88, 5, 104, 5, 120, 5, 136, 5, 152, 5, 168, 5, 184, 5, 200, 5, 13, 93, 178, 15, 0, 13, 17, 18, 57, 48, 49, 33, 35, 17, 52, 38, 35, 34, 14, 2, 21, 17, 35, 17, 51, 17, 18, 51, 32, 17, 3, 115, 138, 108, 121, 76, 123, 86, 45, 137, 137, 99, 254, 1, 88, 2, 63, 125, 138, 70, 117, 151, 82, 254, 94, 5, 25, 253, 161, 1, 0, 254, 133, 0, 2, 0, 186, 0, 0, 2, 233, 5, 25, 0, 3, 0, 13, 0, 95, 179, 12, 14, 6, 4, 43, 178, 1, 6, 12, 17, 18, 57, 176, 1, 47, 177, 0, 8, 244, 176, 12, 16, 177, 7, 8, 244, 176, 6, 16, 176, 9, 208, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 19, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 177, 6, 6, 244, 176, 10, 16, 177, 8, 6, 244, 176, 6, 16, 176, 12, 208, 176, 13, 208, 48, 49, 1, 35, 53, 51, 19, 33, 53, 51, 17, 35, 53, 33, 17, 51, 2, 47, 186, 186, 186, 253, 209, 211, 211, 1, 93, 210, 4, 94, 187, 250, 231, 117, 2, 186, 117, 252, 209, 0, 2, 0, 4, 254, 117, 2, 233, 5, 25, 0, 3, 0, 22, 0, 62, 179, 0, 8, 1, 4, 43, 178, 15, 1, 0, 17, 18, 57, 176, 15, 47, 177, 20, 12, 244, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 19, 62, 89, 179, 10, 6, 4, 4, 43, 176, 18, 16, 177, 16, 6, 244, 48, 49, 1, 35, 53, 51, 1, 34, 39, 55, 22, 22, 51, 50, 62, 2, 53, 17, 35, 53, 33, 17, 20, 6, 2, 233, 186, 186, 254, 115, 246, 98, 105, 36, 117, 86, 68, 92, 53, 23, 211, 1, 92, 189, 4, 94, 187, 249, 92, 202, 72, 76, 82, 39, 72, 102, 66, 3, 47, 117, 252, 92, 180, 215, 0, 1, 0, 49, 0, 0, 3, 162, 5, 25, 0, 11, 0, 81, 179, 4, 12, 5, 4, 43, 176, 4, 16, 176, 7, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 178, 8, 0, 6, 17, 18, 57, 178, 10, 0, 6, 17, 18, 57, 48, 49, 33, 35, 1, 7, 17, 35, 17, 51, 17, 1, 51, 1, 3, 162, 195, 254, 131, 168, 137, 137, 2, 19, 196, 254, 45, 1, 162, 154, 254, 248, 5, 25, 252, 149, 1, 246, 254, 84, 0, 0, 1, 0, 186, 0, 0, 2, 233, 5, 25, 0, 9, 0, 68, 179, 8, 14, 2, 4, 43, 176, 8, 16, 177, 3, 8, 244, 176, 2, 16, 176, 5, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 2, 6, 244, 176, 6, 16, 177, 4, 6, 244, 176, 2, 16, 176, 8, 208, 176, 9, 208, 48, 49, 33, 33, 53, 51, 17, 35, 53, 33, 17, 51, 2, 233, 253, 209, 211, 211, 1, 93, 210, 117, 4, 47, 117, 251, 92, 0, 0, 1, 0, 0, 0, 0, 3, 164, 3, 186, 0, 33, 0, 218, 176, 34, 47, 176, 21, 208, 176, 21, 47, 176, 10, 220, 178, 239, 10, 1, 93, 178, 64, 10, 1, 93, 176, 1, 220, 178, 239, 1, 1, 93, 178, 64, 1, 1, 93, 177, 0, 12, 244, 176, 10, 16, 177, 9, 8, 244, 176, 21, 16, 177, 20, 12, 244, 176, 23, 208, 178, 24, 21, 10, 17, 18, 57, 178, 28, 10, 1, 17, 18, 57, 176, 0, 16, 176, 35, 220, 0, 176, 0, 69, 88, 176, 22, 47, 27, 177, 22, 19, 62, 89, 176, 0, 69, 88, 176, 26, 47, 27, 177, 26, 19, 62, 89, 176, 0, 69, 88, 176, 30, 47, 27, 177, 30, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 15, 62, 89, 176, 30, 16, 177, 5, 6, 244, 180, 217, 5, 233, 5, 2, 93, 64, 27, 8, 5, 24, 5, 40, 5, 56, 5, 72, 5, 88, 5, 104, 5, 120, 5, 136, 5, 152, 5, 168, 5, 184, 5, 200, 5, 13, 93, 176, 14, 208, 178, 24, 0, 26, 17, 18, 57, 178, 28, 0, 26, 17, 18, 57, 48, 49, 33, 35, 17, 52, 38, 35, 34, 6, 21, 17, 35, 17, 52, 38, 35, 34, 14, 2, 21, 17, 35, 17, 51, 21, 54, 51, 50, 23, 54, 51, 50, 22, 21, 3, 164, 137, 56, 53, 78, 73, 138, 57, 53, 49, 58, 33, 10, 137, 137, 43, 144, 137, 49, 68, 124, 119, 111, 2, 158, 80, 88, 164, 148, 253, 242, 2, 158, 80, 88, 58, 90, 110, 54, 253, 242, 3, 164, 135, 157, 137, 137, 141, 143, 0, 0, 1, 0, 49, 0, 0, 3, 115, 3, 186, 0, 19, 0, 142, 176, 20, 47, 176, 21, 47, 176, 0, 220, 177, 1, 8, 244, 176, 20, 16, 176, 12, 208, 176, 12, 47, 177, 11, 12, 244, 176, 14, 208, 178, 15, 12, 0, 17, 18, 57, 0, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 19, 62, 89, 176, 0, 69, 88, 176, 17, 47, 27, 177, 17, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 15, 62, 89, 176, 17, 16, 177, 5, 6, 244, 180, 217, 5, 233, 5, 2, 93, 64, 27, 8, 5, 24, 5, 40, 5, 56, 5, 72, 5, 88, 5, 104, 5, 120, 5, 136, 5, 152, 5, 168, 5, 184, 5, 200, 5, 13, 93, 178, 15, 0, 17, 17, 18, 57, 48, 49, 33, 35, 17, 52, 38, 35, 34, 14, 2, 21, 17, 35, 17, 51, 21, 18, 51, 32, 17, 3, 115, 138, 108, 121, 76, 123, 86, 45, 137, 137, 99, 254, 1, 88, 2, 63, 125, 138, 70, 117, 151, 82, 254, 94, 3, 164, 234, 1, 0, 254, 133, 0, 0, 2, 255, 236, 255, 233, 3, 188, 3, 186, 0, 19, 0, 39, 0, 226, 176, 40, 47, 176, 41, 47, 176, 0, 220, 176, 40, 16, 176, 10, 208, 176, 10, 47, 176, 0, 16, 177, 20, 12, 244, 180, 218, 20, 234, 20, 2, 93, 64, 27, 9, 20, 25, 20, 41, 20, 57, 20, 73, 20, 89, 20, 105, 20, 121, 20, 137, 20, 153, 20, 169, 20, 185, 20, 201, 20, 13, 93, 176, 10, 16, 177, 30, 12, 244, 64, 23, 6, 30, 22, 30, 38, 30, 54, 30, 70, 30, 86, 30, 102, 30, 118, 30, 134, 30, 150, 30, 166, 30, 11, 93, 180, 182, 30, 198, 30, 2, 93, 180, 213, 30, 229, 30, 2, 93, 0, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 15, 16, 177, 25, 6, 244, 180, 217, 25, 233, 25, 2, 93, 64, 27, 8, 25, 24, 25, 40, 25, 56, 25, 72, 25, 88, 25, 104, 25, 120, 25, 136, 25, 152, 25, 168, 25, 184, 25, 200, 25, 13, 93, 176, 5, 16, 177, 35, 6, 244, 64, 27, 7, 35, 23, 35, 39, 35, 55, 35, 71, 35, 87, 35, 103, 35, 119, 35, 135, 35, 151, 35, 167, 35, 183, 35, 199, 35, 13, 93, 180, 214, 35, 230, 35, 2, 93, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 62, 2, 3, 188, 69, 129, 180, 111, 109, 180, 129, 69, 69, 129, 180, 109, 111, 180, 129, 69, 137, 47, 92, 131, 82, 82, 131, 90, 47, 47, 90, 131, 82, 82, 131, 92, 47, 1, 207, 109, 178, 127, 72, 72, 127, 178, 109, 106, 183, 129, 73, 73, 129, 183, 106, 80, 135, 102, 58, 58, 102, 135, 80, 80, 135, 98, 56, 56, 98, 135, 0, 2, 0, 49, 254, 139, 3, 164, 3, 186, 0, 19, 0, 36, 0, 236, 176, 37, 47, 176, 38, 47, 176, 0, 220, 176, 37, 16, 176, 10, 208, 176, 10, 47, 177, 9, 12, 244, 176, 12, 208, 178, 13, 10, 0, 17, 18, 57, 176, 0, 16, 177, 20, 12, 244, 180, 218, 20, 234, 20, 2, 93, 64, 27, 9, 20, 25, 20, 41, 20, 57, 20, 73, 20, 89, 20, 105, 20, 121, 20, 137, 20, 153, 20, 169, 20, 185, 20, 201, 20, 13, 93, 176, 9, 16, 176, 28, 208, 0, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 19, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 19, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 17, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 177, 32, 6, 244, 64, 27, 7, 32, 23, 32, 39, 32, 55, 32, 71, 32, 87, 32, 103, 32, 119, 32, 135, 32, 151, 32, 167, 32, 183, 32, 199, 32, 13, 93, 180, 214, 32, 230, 32, 2, 93, 178, 8, 5, 32, 17, 18, 57, 176, 15, 16, 177, 25, 6, 244, 180, 217, 25, 233, 25, 2, 93, 64, 27, 8, 25, 24, 25, 40, 25, 56, 25, 72, 25, 88, 25, 104, 25, 120, 25, 136, 25, 152, 25, 168, 25, 184, 25, 200, 25, 13, 93, 178, 13, 15, 25, 17, 18, 57, 48, 49, 1, 20, 14, 2, 35, 34, 38, 39, 17, 35, 17, 51, 21, 54, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 6, 7, 17, 22, 22, 51, 50, 62, 2, 3, 164, 68, 123, 174, 108, 74, 139, 60, 137, 137, 127, 146, 108, 174, 123, 68, 137, 43, 86, 125, 82, 78, 135, 60, 60, 135, 78, 82, 125, 86, 43, 1, 209, 109, 178, 129, 72, 54, 53, 254, 55, 5, 25, 86, 108, 71, 131, 181, 106, 78, 137, 100, 58, 58, 65, 254, 12, 65, 56, 58, 100, 135, 0, 2, 0, 0, 254, 139, 3, 115, 3, 186, 0, 19, 0, 36, 0, 242, 176, 37, 47, 176, 38, 47, 176, 37, 16, 176, 0, 208, 176, 0, 47, 176, 38, 16, 176, 9, 220, 177, 8, 8, 244, 176, 11, 208, 178, 12, 0, 9, 17, 18, 57, 176, 0, 16, 177, 20, 12, 244, 64, 27, 6, 20, 22, 20, 38, 20, 54, 20, 70, 20, 86, 20, 102, 20, 118, 20, 134, 20, 150, 20, 166, 20, 182, 20, 198, 20, 13, 93, 180, 213, 20, 229, 20, 2, 93, 176, 8, 16, 176, 28, 208, 0, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 19, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 17, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 15, 62, 89, 176, 5, 16, 177, 32, 6, 244, 180, 217, 32, 233, 32, 2, 93, 64, 27, 8, 32, 24, 32, 40, 32, 56, 32, 72, 32, 88, 32, 104, 32, 120, 32, 136, 32, 152, 32, 168, 32, 184, 32, 200, 32, 13, 93, 178, 7, 5, 32, 17, 18, 57, 176, 15, 16, 177, 25, 6, 244, 64, 27, 7, 25, 23, 25, 39, 25, 55, 25, 71, 25, 87, 25, 103, 25, 119, 25, 135, 25, 151, 25, 167, 25, 183, 25, 199, 25, 13, 93, 180, 214, 25, 230, 25, 2, 93, 178, 12, 15, 25, 17, 18, 57, 48, 49, 17, 52, 62, 2, 51, 50, 23, 53, 51, 17, 35, 17, 6, 6, 35, 34, 46, 2, 55, 20, 30, 2, 51, 50, 54, 55, 17, 38, 38, 35, 34, 14, 2, 68, 122, 175, 108, 145, 127, 138, 138, 59, 139, 74, 108, 175, 122, 68, 137, 43, 86, 125, 82, 78, 135, 59, 59, 135, 78, 82, 125, 86, 43, 1, 209, 106, 181, 131, 71, 108, 86, 250, 231, 1, 201, 53, 54, 72, 129, 178, 109, 78, 135, 100, 58, 56, 65, 1, 244, 65, 58, 58, 100, 137, 0, 1, 0, 0, 0, 0, 3, 158, 3, 186, 0, 23, 0, 131, 179, 8, 14, 12, 4, 43, 176, 8, 16, 177, 13, 12, 244, 176, 12, 16, 176, 15, 208, 176, 8, 16, 176, 17, 208, 0, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 19, 62, 89, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 19, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 15, 62, 89, 176, 20, 16, 177, 2, 6, 244, 180, 217, 2, 233, 2, 2, 93, 64, 27, 8, 2, 24, 2, 40, 2, 56, 2, 72, 2, 88, 2, 104, 2, 120, 2, 136, 2, 152, 2, 168, 2, 184, 2, 200, 2, 13, 93, 176, 10, 16, 177, 8, 6, 244, 176, 12, 208, 176, 13, 208, 178, 18, 10, 20, 17, 18, 57, 48, 49, 1, 38, 35, 34, 14, 2, 21, 17, 51, 21, 33, 53, 51, 17, 35, 53, 33, 21, 18, 33, 50, 22, 23, 3, 113, 74, 102, 84, 132, 92, 49, 211, 253, 209, 211, 211, 1, 92, 94, 1, 7, 71, 105, 45, 3, 33, 37, 72, 117, 151, 80, 254, 211, 117, 117, 2, 186, 117, 234, 1, 0, 18, 23, 0, 1, 255, 246, 255, 233, 3, 139, 3, 186, 0, 50, 0, 223, 176, 51, 47, 176, 52, 47, 176, 0, 220, 177, 14, 12, 244, 180, 218, 14, 234, 14, 2, 93, 64, 27, 9, 14, 25, 14, 41, 14, 57, 14, 73, 14, 89, 14, 105, 14, 121, 14, 137, 14, 153, 14, 169, 14, 185, 14, 201, 14, 13, 93, 176, 51, 16, 176, 24, 208, 176, 24, 47, 177, 41, 12, 244, 64, 27, 6, 41, 22, 41, 38, 41, 54, 41, 70, 41, 86, 41, 102, 41, 118, 41, 134, 41, 150, 41, 166, 41, 182, 41, 198, 41, 13, 93, 180, 213, 41, 229, 41, 2, 93, 0, 176, 0, 69, 88, 176, 29, 47, 27, 177, 29, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 179, 46, 5, 19, 4, 43, 176, 5, 16, 177, 12, 6, 244, 64, 27, 7, 12, 23, 12, 39, 12, 55, 12, 71, 12, 87, 12, 103, 12, 119, 12, 135, 12, 151, 12, 167, 12, 183, 12, 199, 12, 13, 93, 180, 214, 12, 230, 12, 2, 93, 176, 29, 16, 177, 36, 6, 244, 180, 217, 36, 233, 36, 2, 93, 64, 27, 8, 36, 24, 36, 40, 36, 56, 36, 72, 36, 88, 36, 104, 36, 120, 36, 136, 36, 152, 36, 168, 36, 184, 36, 200, 36, 13, 93, 48, 49, 1, 20, 14, 2, 35, 34, 38, 39, 55, 22, 22, 51, 32, 53, 52, 46, 2, 39, 46, 3, 53, 52, 62, 2, 51, 50, 22, 23, 7, 38, 38, 35, 34, 14, 2, 21, 20, 30, 2, 23, 30, 3, 3, 139, 82, 129, 159, 76, 127, 252, 92, 61, 103, 200, 107, 1, 53, 51, 86, 111, 61, 78, 154, 127, 77, 71, 119, 160, 86, 123, 194, 78, 55, 80, 164, 96, 43, 105, 90, 61, 51, 86, 111, 61, 76, 155, 127, 78, 1, 2, 82, 108, 64, 27, 74, 60, 118, 65, 70, 160, 39, 49, 31, 18, 8, 11, 30, 60, 100, 82, 70, 102, 68, 32, 57, 53, 107, 56, 45, 15, 37, 59, 45, 39, 47, 31, 18, 8, 11, 30, 58, 100, 0, 0, 1, 0, 0, 255, 233, 3, 174, 5, 25, 0, 27, 0, 133, 179, 19, 12, 8, 4, 43, 176, 8, 16, 176, 12, 208, 176, 19, 16, 176, 14, 208, 0, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 21, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 19, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 19, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 176, 15, 16, 177, 9, 6, 244, 176, 10, 208, 176, 17, 208, 176, 18, 208, 176, 3, 16, 177, 24, 6, 244, 64, 27, 7, 24, 23, 24, 39, 24, 55, 24, 71, 24, 87, 24, 103, 24, 119, 24, 135, 24, 151, 24, 167, 24, 183, 24, 199, 24, 13, 93, 180, 214, 24, 230, 24, 2, 93, 48, 49, 1, 6, 6, 35, 34, 46, 2, 53, 17, 35, 53, 51, 17, 51, 17, 33, 21, 33, 17, 20, 30, 2, 51, 50, 54, 55, 3, 174, 16, 199, 149, 82, 136, 96, 53, 211, 211, 137, 1, 141, 254, 115, 33, 59, 84, 54, 102, 137, 10, 1, 41, 147, 173, 54, 96, 135, 80, 1, 217, 117, 1, 117, 254, 139, 117, 254, 39, 51, 90, 68, 39, 127, 101, 0, 1, 0, 49, 255, 233, 3, 115, 3, 164, 0, 19, 0, 142, 176, 20, 47, 176, 21, 47, 176, 20, 16, 176, 0, 208, 176, 0, 47, 177, 1, 12, 244, 176, 21, 16, 176, 12, 220, 177, 11, 8, 244, 176, 14, 208, 178, 15, 0, 12, 17, 18, 57, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 19, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 15, 62, 89, 176, 0, 69, 88, 176, 17, 47, 27, 177, 17, 15, 62, 89, 177, 5, 6, 244, 64, 27, 7, 5, 23, 5, 39, 5, 55, 5, 71, 5, 87, 5, 103, 5, 119, 5, 135, 5, 151, 5, 167, 5, 183, 5, 199, 5, 13, 93, 180, 214, 5, 230, 5, 2, 93, 178, 15, 17, 0, 17, 18, 57, 48, 49, 19, 51, 17, 20, 22, 51, 50, 62, 2, 53, 17, 51, 17, 35, 53, 2, 35, 32, 17, 49, 137, 109, 121, 76, 122, 86, 45, 138, 138, 98, 254, 254, 168, 3, 164, 253, 192, 125, 137, 70, 117, 151, 82, 1, 162, 252, 92, 233, 255, 0, 1, 123, 0, 1, 255, 225, 0, 0, 3, 195, 3, 164, 0, 6, 0, 49, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 19, 62, 89, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 15, 62, 89, 178, 5, 1, 0, 17, 18, 57, 48, 49, 1, 1, 35, 1, 51, 1, 1, 3, 195, 254, 108, 184, 254, 106, 164, 1, 78, 1, 76, 3, 164, 252, 92, 3, 164, 252, 207, 3, 49, 0, 1, 255, 229, 0, 0, 3, 195, 3, 164, 0, 12, 0, 89, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 19, 62, 89, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 178, 3, 1, 0, 17, 18, 57, 178, 8, 1, 0, 17, 18, 57, 178, 11, 1, 0, 17, 18, 57, 48, 49, 1, 3, 35, 3, 3, 35, 3, 51, 19, 19, 51, 19, 19, 3, 195, 189, 160, 149, 141, 160, 191, 146, 135, 145, 136, 149, 135, 3, 164, 252, 92, 2, 172, 253, 84, 3, 164, 253, 22, 2, 234, 253, 22, 2, 234, 0, 1, 255, 236, 0, 0, 3, 186, 3, 164, 0, 27, 0, 119, 0, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 19, 62, 89, 176, 0, 69, 88, 176, 21, 47, 27, 177, 21, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 15, 62, 89, 177, 2, 3, 244, 178, 4, 0, 14, 17, 18, 57, 176, 5, 208, 176, 6, 208, 176, 9, 208, 176, 10, 208, 176, 14, 16, 177, 12, 4, 244, 176, 16, 208, 176, 17, 208, 178, 18, 0, 14, 17, 18, 57, 176, 19, 208, 176, 20, 208, 176, 23, 208, 176, 24, 208, 176, 10, 16, 176, 26, 208, 176, 27, 208, 48, 49, 33, 33, 53, 51, 3, 3, 51, 21, 33, 53, 51, 1, 3, 35, 53, 33, 21, 35, 23, 55, 35, 53, 33, 21, 35, 3, 1, 51, 3, 186, 254, 127, 82, 184, 182, 75, 254, 132, 145, 1, 0, 246, 135, 1, 127, 86, 170, 172, 94, 1, 131, 131, 246, 1, 0, 143, 121, 1, 14, 254, 242, 121, 121, 1, 96, 1, 80, 123, 123, 254, 254, 123, 123, 254, 176, 254, 160, 0, 1, 255, 225, 254, 117, 3, 193, 3, 164, 0, 18, 0, 35, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 19, 62, 89, 179, 10, 6, 4, 4, 43, 48, 49, 1, 1, 6, 6, 35, 34, 39, 55, 22, 22, 51, 50, 54, 55, 55, 1, 51, 1, 1, 3, 193, 254, 8, 39, 142, 86, 96, 96, 27, 47, 90, 28, 68, 51, 19, 57, 254, 96, 162, 1, 80, 1, 74, 3, 164, 251, 112, 98, 61, 35, 118, 20, 17, 66, 45, 141, 3, 191, 252, 209, 3, 47, 0, 0, 1, 0, 47, 0, 0, 3, 119, 3, 164, 0, 13, 0, 88, 176, 14, 47, 176, 15, 47, 176, 0, 220, 176, 14, 16, 176, 6, 208, 176, 6, 47, 176, 1, 208, 176, 1, 47, 178, 3, 1, 0, 17, 18, 57, 176, 6, 16, 177, 5, 13, 244, 176, 0, 16, 177, 11, 13, 244, 0, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 7, 16, 177, 3, 6, 244, 176, 0, 16, 177, 10, 6, 244, 48, 49, 33, 33, 53, 1, 33, 17, 35, 17, 33, 21, 1, 33, 17, 51, 3, 119, 252, 184, 2, 123, 253, 252, 117, 3, 47, 253, 133, 2, 29, 117, 117, 2, 186, 255, 0, 1, 117, 117, 253, 70, 1, 0, 0, 1, 0, 186, 254, 139, 2, 231, 5, 211, 0, 38, 0, 70, 179, 35, 9, 6, 4, 43, 176, 6, 16, 176, 12, 208, 176, 6, 16, 177, 38, 14, 244, 176, 19, 208, 176, 35, 16, 176, 23, 208, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 17, 62, 89, 179, 19, 1, 20, 4, 43, 179, 10, 1, 9, 4, 43, 178, 29, 9, 10, 17, 18, 57, 176, 0, 16, 177, 37, 1, 244, 48, 49, 1, 35, 34, 46, 2, 53, 17, 52, 35, 53, 50, 53, 17, 52, 62, 2, 51, 51, 21, 35, 34, 21, 17, 20, 14, 2, 7, 30, 3, 21, 17, 20, 51, 51, 2, 231, 92, 61, 103, 73, 41, 187, 187, 41, 73, 103, 61, 92, 92, 170, 26, 45, 64, 37, 37, 62, 47, 26, 170, 92, 254, 139, 43, 74, 104, 62, 1, 168, 168, 112, 168, 1, 174, 62, 102, 74, 41, 111, 168, 254, 82, 34, 74, 64, 47, 6, 6, 45, 64, 73, 35, 254, 88, 170, 0, 1, 1, 141, 255, 70, 2, 23, 5, 211, 0, 3, 0, 15, 179, 0, 8, 1, 4, 43, 0, 176, 2, 47, 176, 0, 47, 48, 49, 5, 35, 17, 51, 2, 23, 138, 138, 186, 6, 141, 0, 1, 0, 186, 254, 139, 2, 231, 5, 211, 0, 38, 0, 70, 179, 3, 14, 10, 4, 43, 176, 3, 16, 177, 13, 9, 244, 176, 24, 208, 176, 10, 16, 176, 28, 208, 176, 3, 16, 176, 35, 208, 0, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 17, 62, 89, 179, 30, 1, 27, 4, 43, 179, 38, 1, 0, 4, 43, 176, 8, 16, 177, 10, 1, 244, 178, 19, 0, 38, 17, 18, 57, 48, 49, 1, 34, 21, 17, 20, 14, 2, 35, 35, 53, 51, 50, 53, 17, 52, 62, 2, 55, 46, 3, 53, 17, 52, 35, 35, 53, 51, 50, 30, 2, 21, 17, 20, 51, 2, 231, 184, 41, 76, 102, 61, 93, 93, 167, 27, 47, 64, 37, 37, 66, 45, 27, 167, 93, 93, 61, 102, 76, 41, 184, 1, 246, 168, 254, 86, 62, 102, 76, 41, 113, 168, 1, 170, 35, 75, 64, 43, 6, 8, 45, 64, 74, 34, 1, 174, 168, 111, 43, 74, 102, 60, 254, 82, 168, 0, 1, 255, 252, 0, 246, 3, 168, 2, 176, 0, 35, 0, 0, 1, 50, 62, 2, 55, 23, 14, 3, 35, 34, 46, 4, 35, 34, 14, 2, 7, 39, 62, 3, 51, 50, 30, 4, 2, 139, 37, 51, 33, 21, 8, 135, 6, 43, 70, 102, 64, 61, 84, 57, 43, 41, 50, 34, 37, 51, 33, 21, 8, 135, 6, 43, 70, 100, 66, 61, 84, 59, 43, 41, 47, 1, 117, 47, 82, 115, 65, 14, 90, 154, 112, 66, 47, 70, 80, 69, 47, 47, 82, 112, 66, 15, 88, 155, 113, 65, 47, 69, 82, 70, 47, 0, 255, 255, 255, 197, 0, 0, 3, 227, 6, 140, 2, 38, 0, 34, 0, 0, 0, 7, 0, 140, 0, 0, 1, 115, 0, 3, 255, 197, 0, 0, 3, 227, 6, 139, 0, 22, 0, 25, 0, 37, 0, 104, 179, 10, 10, 32, 4, 43, 180, 218, 32, 234, 32, 2, 93, 64, 27, 9, 32, 25, 32, 41, 32, 57, 32, 73, 32, 89, 32, 105, 32, 121, 32, 137, 32, 153, 32, 169, 32, 185, 32, 201, 32, 13, 93, 178, 23, 32, 10, 17, 18, 57, 0, 176, 0, 69, 88, 176, 29, 47, 27, 177, 29, 21, 62, 89, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 15, 62, 89, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 15, 62, 89, 179, 5, 2, 35, 4, 43, 179, 23, 3, 16, 4, 43, 48, 49, 19, 52, 62, 2, 51, 50, 30, 2, 21, 20, 6, 7, 1, 35, 3, 33, 3, 35, 1, 38, 38, 1, 3, 3, 19, 20, 22, 51, 50, 54, 53, 52, 38, 35, 34, 6, 242, 34, 62, 82, 47, 47, 82, 61, 35, 63, 51, 1, 161, 147, 123, 253, 252, 121, 147, 1, 159, 51, 63, 1, 188, 219, 219, 84, 80, 55, 55, 80, 80, 55, 55, 80, 5, 170, 47, 82, 61, 35, 35, 61, 82, 47, 66, 102, 29, 251, 27, 1, 117, 254, 139, 4, 227, 29, 104, 252, 134, 2, 161, 253, 95, 3, 188, 55, 80, 80, 55, 55, 80, 80, 0, 1, 255, 236, 254, 141, 3, 172, 5, 47, 0, 46, 0, 234, 179, 39, 12, 17, 4, 43, 179, 4, 13, 11, 4, 43, 179, 27, 13, 26, 4, 43, 176, 26, 16, 176, 29, 208, 64, 27, 6, 39, 22, 39, 38, 39, 54, 39, 70, 39, 86, 39, 102, 39, 118, 39, 134, 39, 150, 39, 166, 39, 182, 39, 198, 39, 13, 93, 180, 213, 39, 229, 39, 2, 93, 176, 27, 16, 176, 48, 220, 0, 176, 0, 69, 88, 176, 26, 47, 27, 177, 26, 21, 62, 89, 176, 0, 69, 88, 176, 22, 47, 27, 177, 22, 21, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 17, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 15, 62, 89, 177, 9, 5, 244, 178, 25, 8, 22, 17, 18, 57, 176, 22, 16, 177, 34, 6, 244, 180, 217, 34, 233, 34, 2, 93, 64, 27, 8, 34, 24, 34, 40, 34, 56, 34, 72, 34, 88, 34, 104, 34, 120, 34, 136, 34, 152, 34, 168, 34, 184, 34, 200, 34, 13, 93, 176, 12, 16, 177, 44, 1, 244, 64, 27, 7, 44, 23, 44, 39, 44, 55, 44, 71, 44, 87, 44, 103, 44, 119, 44, 135, 44, 151, 44, 167, 44, 183, 44, 199, 44, 13, 93, 180, 214, 44, 230, 44, 2, 93, 48, 49, 1, 6, 6, 7, 21, 20, 7, 6, 35, 53, 50, 53, 53, 46, 3, 53, 52, 62, 2, 51, 50, 22, 23, 53, 51, 17, 35, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 19, 3, 172, 45, 193, 143, 82, 88, 147, 202, 127, 178, 110, 49, 53, 121, 190, 137, 121, 172, 41, 117, 117, 53, 90, 123, 68, 106, 139, 84, 35, 35, 84, 139, 106, 244, 96, 1, 86, 149, 189, 20, 25, 147, 88, 95, 117, 213, 21, 8, 116, 185, 235, 127, 131, 244, 188, 113, 86, 88, 152, 254, 84, 69, 123, 90, 51, 100, 162, 198, 99, 98, 199, 159, 101, 1, 39, 0, 255, 255, 0, 49, 0, 0, 3, 115, 6, 199, 2, 38, 0, 38, 0, 0, 0, 7, 0, 139, 0, 0, 1, 115, 255, 255, 0, 49, 0, 0, 3, 115, 6, 115, 2, 38, 0, 47, 0, 0, 0, 7, 0, 215, 0, 0, 1, 115, 255, 255, 255, 223, 255, 233, 3, 199, 6, 140, 2, 38, 0, 48, 0, 0, 0, 7, 0, 140, 0, 0, 1, 115, 255, 255, 0, 49, 255, 233, 3, 115, 6, 140, 2, 38, 0, 54, 0, 0, 0, 7, 0, 140, 0, 0, 1, 115, 255, 255, 0, 0, 255, 233, 3, 117, 5, 83, 2, 38, 0, 66, 2, 0, 0, 6, 0, 139, 0, 255, 255, 255, 0, 0, 255, 233, 3, 117, 5, 84, 2, 38, 0, 66, 2, 0, 0, 6, 0, 65, 0, 0, 255, 255, 0, 0, 255, 233, 3, 117, 5, 87, 2, 38, 0, 66, 2, 0, 0, 6, 0, 214, 0, 255, 255, 255, 0, 0, 255, 233, 3, 117, 5, 25, 2, 38, 0, 66, 2, 0, 0, 6, 0, 140, 0, 0, 255, 255, 0, 0, 255, 233, 3, 117, 4, 255, 2, 38, 0, 66, 2, 0, 0, 6, 0, 215, 0, 255, 255, 255, 0, 0, 255, 233, 3, 117, 5, 202, 2, 38, 0, 66, 2, 0, 0, 6, 0, 219, 0, 255, 0, 1, 0, 0, 254, 141, 3, 129, 3, 186, 0, 49, 0, 234, 179, 41, 12, 17, 4, 43, 179, 4, 13, 11, 4, 43, 179, 29, 11, 28, 4, 43, 176, 28, 16, 176, 31, 208, 64, 27, 6, 41, 22, 41, 38, 41, 54, 41, 70, 41, 86, 41, 102, 41, 118, 41, 134, 41, 150, 41, 166, 41, 182, 41, 198, 41, 13, 93, 180, 213, 41, 229, 41, 2, 93, 176, 29, 16, 176, 51, 220, 0, 176, 0, 69, 88, 176, 28, 47, 27, 177, 28, 19, 62, 89, 176, 0, 69, 88, 176, 22, 47, 27, 177, 22, 19, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 17, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 15, 62, 89, 177, 9, 5, 244, 178, 27, 8, 22, 17, 18, 57, 176, 22, 16, 177, 36, 6, 244, 180, 217, 36, 233, 36, 2, 93, 64, 27, 8, 36, 24, 36, 40, 36, 56, 36, 72, 36, 88, 36, 104, 36, 120, 36, 136, 36, 152, 36, 168, 36, 184, 36, 200, 36, 13, 93, 176, 12, 16, 177, 46, 1, 244, 64, 27, 7, 46, 23, 46, 39, 46, 55, 46, 71, 46, 87, 46, 103, 46, 119, 46, 135, 46, 151, 46, 167, 46, 183, 46, 199, 46, 13, 93, 180, 214, 46, 230, 46, 2, 93, 48, 49, 37, 6, 6, 7, 21, 20, 7, 6, 35, 53, 50, 53, 53, 46, 3, 53, 52, 62, 2, 51, 50, 30, 2, 23, 53, 51, 17, 35, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 54, 55, 3, 129, 53, 170, 115, 82, 88, 147, 202, 100, 164, 117, 63, 66, 122, 177, 108, 43, 90, 80, 64, 16, 123, 123, 45, 78, 108, 62, 84, 125, 84, 43, 49, 93, 131, 82, 104, 162, 43, 178, 82, 102, 12, 23, 147, 88, 95, 117, 213, 21, 8, 75, 127, 172, 103, 106, 181, 129, 73, 20, 41, 57, 39, 135, 254, 139, 62, 102, 74, 41, 58, 100, 135, 80, 80, 135, 98, 58, 82, 68, 0, 255, 255, 255, 252, 255, 233, 3, 174, 5, 83, 2, 38, 0, 70, 0, 0, 0, 6, 0, 139, 0, 255, 255, 255, 255, 252, 255, 233, 3, 174, 5, 84, 2, 38, 0, 70, 0, 0, 0, 6, 0, 65, 0, 0, 255, 255, 255, 252, 255, 233, 3, 174, 5, 87, 2, 38, 0, 70, 0, 0, 0, 6, 0, 214, 0, 255, 255, 255, 255, 252, 255, 233, 3, 174, 5, 25, 2, 38, 0, 70, 0, 0, 0, 6, 0, 140, 0, 0, 255, 255, 0, 186, 0, 0, 2, 233, 5, 83, 2, 38, 0, 213, 0, 0, 0, 6, 0, 139, 0, 255, 255, 255, 0, 186, 0, 0, 2, 233, 5, 84, 2, 38, 0, 213, 0, 0, 0, 6, 0, 65, 0, 0, 255, 255, 0, 170, 0, 0, 2, 252, 5, 87, 2, 38, 0, 213, 0, 0, 0, 6, 0, 214, 0, 255, 255, 255, 0, 186, 0, 0, 2, 233, 5, 25, 2, 38, 0, 213, 0, 0, 0, 6, 0, 140, 0, 0, 255, 255, 0, 49, 0, 0, 3, 115, 4, 255, 2, 38, 0, 79, 0, 0, 0, 6, 0, 215, 0, 255, 255, 255, 255, 236, 255, 233, 3, 188, 5, 83, 2, 38, 0, 80, 0, 0, 0, 6, 0, 139, 0, 255, 255, 255, 255, 236, 255, 233, 3, 188, 5, 84, 2, 38, 0, 80, 0, 0, 0, 6, 0, 65, 0, 0, 255, 255, 255, 236, 255, 233, 3, 188, 5, 87, 2, 38, 0, 80, 0, 0, 0, 6, 0, 214, 0, 255, 255, 255, 255, 236, 255, 233, 3, 188, 5, 25, 2, 38, 0, 80, 0, 0, 0, 6, 0, 140, 0, 0, 255, 255, 255, 236, 255, 233, 3, 188, 4, 255, 2, 38, 0, 80, 0, 0, 0, 6, 0, 215, 0, 255, 255, 255, 0, 49, 255, 233, 3, 115, 5, 84, 2, 38, 0, 86, 0, 0, 0, 6, 0, 139, 0, 0, 255, 255, 0, 49, 255, 233, 3, 115, 5, 86, 2, 38, 0, 86, 0, 0, 0, 6, 0, 65, 0, 2, 255, 255, 0, 49, 255, 233, 3, 115, 5, 88, 2, 38, 0, 86, 0, 0, 0, 6, 0, 214, 0, 0, 255, 255, 0, 49, 255, 233, 3, 115, 5, 25, 2, 38, 0, 86, 0, 0, 0, 6, 0, 140, 0, 0, 0, 1, 0, 186, 1, 117, 2, 233, 5, 25, 0, 11, 0, 19, 0, 176, 2, 47, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 21, 62, 89, 48, 49, 1, 39, 19, 35, 19, 7, 53, 23, 39, 51, 7, 55, 2, 233, 237, 12, 110, 14, 238, 238, 14, 110, 12, 237, 3, 201, 14, 253, 158, 2, 98, 14, 112, 14, 238, 238, 14, 0, 2, 0, 0, 2, 233, 2, 233, 5, 211, 0, 19, 0, 39, 0, 124, 176, 40, 47, 176, 41, 47, 176, 40, 16, 176, 0, 208, 176, 0, 47, 176, 41, 16, 176, 10, 220, 176, 0, 16, 177, 20, 10, 244, 64, 27, 6, 20, 22, 20, 38, 20, 54, 20, 70, 20, 86, 20, 102, 20, 118, 20, 134, 20, 150, 20, 166, 20, 182, 20, 198, 20, 13, 93, 180, 213, 20, 229, 20, 2, 93, 176, 10, 16, 177, 30, 10, 244, 180, 218, 30, 234, 30, 2, 93, 64, 27, 9, 30, 25, 30, 41, 30, 57, 30, 73, 30, 89, 30, 105, 30, 121, 30, 137, 30, 153, 30, 169, 30, 185, 30, 201, 30, 13, 93, 0, 179, 25, 2, 15, 4, 43, 179, 5, 2, 35, 4, 43, 48, 49, 17, 52, 62, 2, 51, 50, 30, 2, 21, 20, 14, 2, 35, 34, 46, 2, 55, 20, 30, 2, 51, 50, 62, 2, 53, 52, 46, 2, 35, 34, 14, 2, 59, 101, 135, 78, 76, 137, 100, 59, 59, 100, 137, 76, 78, 135, 101, 59, 92, 43, 78, 100, 60, 57, 102, 78, 43, 43, 78, 102, 57, 60, 100, 78, 43, 4, 94, 76, 137, 101, 59, 59, 101, 137, 76, 78, 135, 100, 60, 60, 100, 135, 78, 59, 101, 77, 43, 43, 77, 101, 59, 58, 102, 78, 43, 43, 78, 102, 0, 2, 0, 8, 0, 0, 3, 137, 5, 25, 0, 28, 0, 35, 0, 141, 176, 36, 47, 176, 37, 47, 176, 26, 220, 177, 0, 8, 244, 176, 36, 16, 176, 3, 208, 176, 3, 47, 176, 0, 16, 176, 8, 208, 176, 26, 16, 176, 10, 208, 176, 26, 16, 176, 18, 208, 176, 3, 16, 177, 29, 12, 244, 64, 27, 6, 29, 22, 29, 38, 29, 54, 29, 70, 29, 86, 29, 102, 29, 118, 29, 134, 29, 150, 29, 166, 29, 182, 29, 198, 29, 13, 93, 180, 213, 29, 229, 29, 2, 93, 176, 0, 16, 176, 32, 208, 0, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 21, 62, 89, 176, 0, 69, 88, 176, 27, 47, 27, 177, 27, 15, 62, 89, 179, 11, 6, 18, 4, 43, 176, 11, 16, 176, 8, 208, 176, 8, 47, 178, 32, 27, 9, 17, 18, 57, 48, 49, 37, 38, 2, 53, 52, 62, 2, 55, 53, 51, 21, 22, 22, 23, 7, 38, 38, 39, 17, 54, 54, 55, 23, 6, 6, 7, 21, 35, 3, 20, 22, 23, 17, 6, 6, 1, 141, 178, 211, 55, 103, 143, 88, 138, 127, 186, 57, 96, 41, 141, 92, 92, 141, 41, 96, 57, 186, 127, 138, 252, 131, 121, 121, 131, 170, 33, 1, 0, 192, 94, 162, 125, 82, 16, 175, 166, 6, 107, 86, 66, 62, 80, 6, 253, 25, 8, 78, 63, 66, 86, 106, 8, 162, 2, 139, 133, 194, 33, 2, 207, 31, 195, 0, 0, 1, 0, 49, 0, 0, 3, 211, 5, 47, 0, 44, 0, 129, 179, 20, 12, 1, 4, 43, 176, 20, 16, 176, 23, 208, 178, 27, 1, 20, 17, 18, 57, 176, 1, 16, 176, 42, 208, 0, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 21, 62, 89, 176, 0, 69, 88, 176, 34, 47, 27, 177, 34, 15, 62, 89, 179, 21, 6, 22, 4, 43, 176, 21, 16, 176, 0, 208, 176, 7, 16, 177, 16, 6, 244, 180, 217, 16, 233, 16, 2, 93, 64, 27, 8, 16, 24, 16, 40, 16, 56, 16, 72, 16, 88, 16, 104, 16, 120, 16, 136, 16, 152, 16, 168, 16, 184, 16, 200, 16, 13, 93, 176, 34, 16, 177, 27, 6, 244, 176, 36, 208, 176, 37, 208, 176, 22, 16, 176, 43, 208, 48, 49, 19, 51, 17, 52, 62, 2, 51, 50, 30, 2, 23, 7, 38, 38, 35, 34, 6, 21, 17, 51, 21, 35, 17, 20, 6, 7, 51, 32, 55, 23, 6, 4, 35, 33, 53, 51, 50, 62, 2, 53, 17, 35, 49, 187, 45, 84, 120, 78, 51, 95, 75, 56, 12, 125, 22, 82, 60, 98, 92, 186, 186, 51, 41, 206, 1, 15, 112, 109, 66, 254, 252, 166, 254, 74, 62, 34, 48, 30, 13, 187, 2, 199, 1, 8, 76, 131, 92, 53, 35, 63, 94, 60, 28, 90, 73, 123, 112, 254, 248, 117, 254, 242, 80, 105, 22, 223, 59, 142, 139, 117, 33, 49, 57, 23, 1, 59, 0, 0, 2, 0, 20, 255, 70, 3, 154, 6, 139, 0, 63, 0, 79, 0, 160, 176, 80, 47, 176, 81, 47, 176, 80, 16, 176, 0, 208, 176, 0, 47, 177, 64, 12, 244, 64, 27, 6, 64, 22, 64, 38, 64, 54, 64, 70, 64, 86, 64, 102, 64, 118, 64, 134, 64, 150, 64, 166, 64, 182, 64, 198, 64, 13, 93, 180, 213, 64, 229, 64, 2, 93, 176, 3, 208, 176, 3, 47, 176, 0, 16, 176, 6, 208, 176, 81, 16, 176, 32, 220, 176, 16, 208, 176, 16, 47, 176, 32, 16, 177, 72, 8, 244, 180, 218, 72, 234, 72, 2, 93, 64, 27, 9, 72, 25, 72, 41, 72, 57, 72, 73, 72, 89, 72, 105, 72, 121, 72, 137, 72, 153, 72, 169, 72, 185, 72, 201, 72, 13, 93, 176, 17, 208, 176, 64, 16, 176, 25, 208, 176, 32, 16, 176, 38, 208, 176, 72, 16, 176, 57, 208, 0, 179, 52, 6, 43, 4, 43, 179, 11, 6, 20, 4, 43, 48, 49, 19, 52, 54, 55, 38, 38, 53, 52, 62, 2, 51, 50, 30, 2, 23, 7, 38, 38, 35, 34, 14, 2, 21, 20, 30, 4, 21, 20, 6, 7, 22, 22, 21, 20, 14, 2, 35, 34, 46, 2, 39, 55, 22, 22, 51, 50, 62, 2, 53, 52, 46, 4, 55, 20, 30, 2, 23, 54, 54, 53, 52, 46, 2, 39, 6, 6, 68, 63, 72, 60, 75, 63, 109, 145, 82, 80, 149, 123, 82, 12, 129, 22, 160, 135, 45, 94, 76, 47, 106, 160, 184, 160, 107, 56, 59, 51, 64, 66, 113, 149, 82, 86, 158, 131, 96, 21, 127, 29, 186, 150, 55, 101, 73, 43, 106, 160, 184, 160, 106, 137, 94, 143, 172, 80, 41, 49, 84, 129, 159, 76, 70, 61, 3, 61, 76, 131, 54, 40, 121, 92, 80, 123, 84, 45, 43, 88, 133, 92, 21, 132, 129, 23, 51, 82, 60, 73, 90, 70, 66, 96, 145, 115, 72, 133, 53, 43, 123, 88, 80, 135, 94, 53, 43, 88, 137, 96, 33, 139, 142, 31, 59, 86, 58, 88, 108, 74, 62, 88, 135, 112, 73, 92, 66, 57, 39, 33, 88, 51, 78, 102, 72, 57, 33, 35, 94, 0, 0, 1, 0, 186, 0, 186, 3, 164, 3, 164, 0, 19, 0, 19, 0, 176, 15, 47, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 19, 62, 89, 48, 49, 19, 52, 62, 2, 51, 50, 30, 2, 21, 20, 14, 2, 35, 34, 46, 2, 186, 60, 100, 135, 78, 76, 137, 100, 60, 60, 100, 137, 76, 78, 135, 100, 60, 2, 47, 76, 137, 100, 60, 60, 100, 137, 76, 78, 135, 100, 60, 60, 100, 135, 0, 0, 3, 0, 31, 0, 0, 3, 139, 5, 25, 0, 11, 0, 15, 0, 21, 0, 146, 179, 19, 8, 8, 4, 43, 179, 4, 8, 5, 4, 43, 179, 0, 12, 1, 4, 43, 176, 1, 16, 176, 12, 208, 176, 4, 16, 176, 14, 208, 176, 5, 16, 176, 16, 208, 64, 27, 6, 19, 22, 19, 38, 19, 54, 19, 70, 19, 86, 19, 102, 19, 118, 19, 134, 19, 150, 19, 166, 19, 182, 19, 198, 19, 13, 93, 180, 213, 19, 229, 19, 2, 93, 0, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 179, 12, 4, 2, 4, 43, 176, 2, 16, 176, 6, 208, 176, 6, 47, 176, 10, 16, 177, 13, 6, 244, 176, 12, 16, 176, 21, 208, 176, 21, 47, 48, 49, 33, 35, 17, 35, 17, 35, 17, 36, 17, 16, 33, 33, 3, 17, 35, 17, 3, 6, 6, 21, 20, 23, 3, 139, 137, 235, 138, 254, 146, 1, 243, 1, 121, 137, 235, 138, 114, 113, 227, 2, 47, 253, 209, 2, 55, 39, 1, 70, 1, 117, 253, 145, 1, 250, 254, 6, 1, 240, 19, 125, 102, 201, 39, 0, 0, 1, 0, 49, 255, 233, 3, 164, 5, 47, 0, 59, 1, 6, 179, 36, 12, 37, 4, 43, 179, 53, 8, 22, 4, 43, 179, 48, 12, 27, 4, 43, 179, 0, 8, 15, 4, 43, 180, 218, 15, 234, 15, 2, 93, 64, 27, 9, 15, 25, 15, 41, 15, 57, 15, 73, 15, 89, 15, 105, 15, 121, 15, 137, 15, 153, 15, 169, 15, 185, 15, 201, 15, 13, 93, 180, 218, 27, 234, 27, 2, 93, 64, 27, 9, 27, 25, 27, 41, 27, 57, 27, 73, 27, 89, 27, 105, 27, 121, 27, 137, 27, 153, 27, 169, 27, 185, 27, 201, 27, 13, 93, 64, 27, 6, 53, 22, 53, 38, 53, 54, 53, 70, 53, 86, 53, 102, 53, 118, 53, 134, 53, 150, 53, 166, 53, 182, 53, 198, 53, 13, 93, 180, 213, 53, 229, 53, 2, 93, 0, 176, 0, 69, 88, 176, 43, 47, 27, 177, 43, 21, 62, 89, 176, 0, 69, 88, 176, 36, 47, 27, 177, 36, 15, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 177, 12, 6, 244, 64, 27, 7, 12, 23, 12, 39, 12, 55, 12, 71, 12, 87, 12, 103, 12, 119, 12, 135, 12, 151, 12, 167, 12, 183, 12, 199, 12, 13, 93, 180, 214, 12, 230, 12, 2, 93, 176, 43, 16, 177, 30, 6, 244, 180, 217, 30, 233, 30, 2, 93, 64, 27, 8, 30, 24, 30, 40, 30, 56, 30, 72, 30, 88, 30, 104, 30, 120, 30, 136, 30, 152, 30, 168, 30, 184, 30, 200, 30, 13, 93, 48, 49, 1, 20, 14, 2, 35, 34, 38, 39, 55, 22, 22, 51, 50, 54, 53, 52, 46, 4, 53, 52, 62, 2, 53, 52, 38, 35, 34, 14, 2, 21, 17, 35, 17, 52, 62, 2, 51, 50, 30, 2, 21, 20, 14, 2, 21, 20, 30, 4, 3, 164, 53, 95, 129, 75, 99, 143, 66, 78, 53, 109, 68, 92, 121, 60, 86, 104, 86, 60, 66, 80, 65, 82, 100, 74, 94, 53, 19, 137, 25, 80, 149, 123, 76, 119, 81, 43, 65, 80, 65, 59, 88, 102, 88, 60, 1, 12, 61, 107, 77, 46, 56, 53, 104, 49, 47, 86, 90, 56, 75, 56, 49, 57, 78, 57, 68, 76, 63, 74, 61, 70, 100, 59, 102, 131, 72, 252, 178, 3, 76, 76, 170, 143, 94, 45, 76, 104, 62, 82, 98, 65, 52, 34, 27, 43, 47, 57, 80, 111, 0, 4, 0, 0, 1, 117, 4, 94, 5, 211, 0, 19, 0, 39, 0, 55, 0, 64, 0, 189, 179, 30, 10, 10, 4, 43, 179, 44, 8, 45, 4, 43, 179, 52, 8, 56, 4, 43, 179, 0, 10, 20, 4, 43, 180, 218, 20, 234, 20, 2, 93, 64, 27, 9, 20, 25, 20, 41, 20, 57, 20, 73, 20, 89, 20, 105, 20, 121, 20, 137, 20, 153, 20, 169, 20, 185, 20, 201, 20, 13, 93, 64, 27, 6, 30, 22, 30, 38, 30, 54, 30, 70, 30, 86, 30, 102, 30, 118, 30, 134, 30, 150, 30, 166, 30, 182, 30, 198, 30, 13, 93, 180, 213, 30, 229, 30, 2, 93, 178, 40, 10, 0, 17, 18, 57, 178, 55, 10, 0, 17, 18, 57, 180, 218, 56, 234, 56, 2, 93, 64, 27, 9, 56, 25, 56, 41, 56, 57, 56, 73, 56, 89, 56, 105, 56, 121, 56, 137, 56, 153, 56, 169, 56, 185, 56, 201, 56, 13, 93, 176, 44, 16, 176, 60, 208, 0, 176, 0, 69, 88, 176, 61, 47, 27, 177, 61, 19, 62, 89, 179, 35, 2, 5, 4, 43, 179, 15, 2, 25, 4, 43, 179, 47, 1, 59, 4, 43, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 62, 2, 7, 35, 39, 35, 21, 35, 17, 33, 50, 30, 2, 21, 20, 6, 7, 55, 52, 38, 35, 35, 21, 51, 50, 54, 4, 94, 84, 147, 205, 121, 108, 203, 156, 94, 88, 152, 204, 117, 113, 200, 154, 90, 65, 76, 133, 180, 103, 102, 180, 136, 77, 77, 133, 181, 104, 101, 180, 133, 78, 187, 186, 174, 35, 143, 1, 12, 51, 94, 72, 41, 98, 94, 51, 58, 59, 125, 125, 55, 62, 3, 164, 111, 203, 153, 92, 80, 147, 205, 127, 115, 204, 152, 88, 84, 152, 204, 119, 100, 178, 136, 79, 75, 133, 181, 104, 105, 180, 133, 76, 76, 133, 180, 231, 242, 242, 2, 164, 27, 55, 80, 55, 80, 121, 10, 211, 45, 63, 215, 60, 0, 3, 0, 2, 0, 184, 4, 98, 5, 25, 0, 25, 0, 45, 0, 65, 0, 213, 179, 56, 10, 36, 4, 43, 179, 20, 8, 7, 4, 43, 179, 26, 10, 46, 4, 43, 64, 27, 6, 20, 22, 20, 38, 20, 54, 20, 70, 20, 86, 20, 102, 20, 118, 20, 134, 20, 150, 20, 166, 20, 182, 20, 198, 20, 13, 93, 180, 213, 20, 229, 20, 2, 93, 180, 218, 46, 234, 46, 2, 93, 64, 27, 9, 46, 25, 46, 41, 46, 57, 46, 73, 46, 89, 46, 105, 46, 121, 46, 137, 46, 153, 46, 169, 46, 185, 46, 201, 46, 13, 93, 64, 27, 6, 56, 22, 56, 38, 56, 54, 56, 70, 56, 86, 56, 102, 56, 118, 56, 134, 56, 150, 56, 166, 56, 182, 56, 198, 56, 13, 93, 180, 213, 56, 229, 56, 2, 93, 176, 26, 16, 176, 67, 220, 0, 176, 0, 69, 88, 176, 41, 47, 27, 177, 41, 21, 62, 89, 179, 61, 2, 31, 4, 43, 179, 23, 3, 2, 4, 43, 179, 12, 3, 17, 4, 43, 176, 41, 16, 177, 51, 2, 244, 180, 217, 51, 233, 51, 2, 93, 64, 27, 8, 51, 24, 51, 40, 51, 56, 51, 72, 51, 88, 51, 104, 51, 120, 51, 136, 51, 152, 51, 168, 51, 184, 51, 200, 51, 13, 93, 48, 49, 1, 6, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 23, 7, 38, 35, 34, 6, 21, 20, 22, 51, 50, 55, 37, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 62, 2, 3, 98, 96, 205, 80, 133, 96, 53, 51, 94, 133, 84, 205, 96, 106, 55, 140, 102, 117, 113, 106, 140, 55, 1, 106, 84, 149, 205, 121, 108, 203, 156, 94, 88, 152, 204, 117, 113, 203, 153, 90, 65, 78, 133, 180, 103, 102, 180, 136, 77, 77, 134, 180, 104, 101, 180, 135, 78, 2, 18, 147, 53, 96, 134, 79, 76, 131, 99, 57, 147, 72, 100, 139, 105, 100, 143, 100, 141, 110, 203, 154, 92, 80, 148, 204, 127, 115, 205, 154, 88, 86, 150, 207, 119, 101, 180, 135, 80, 78, 133, 180, 105, 104, 180, 133, 76, 76, 133, 180, 0, 2, 0, 0, 2, 233, 4, 94, 5, 25, 0, 12, 0, 20, 0, 110, 179, 15, 9, 16, 4, 43, 179, 6, 9, 7, 4, 43, 179, 0, 9, 1, 4, 43, 178, 10, 16, 0, 17, 18, 57, 0, 176, 0, 47, 176, 6, 47, 176, 15, 47, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 21, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 21, 62, 89, 176, 0, 69, 88, 176, 19, 47, 27, 177, 19, 21, 62, 89, 178, 2, 0, 8, 17, 18, 57, 178, 5, 0, 8, 17, 18, 57, 178, 10, 0, 8, 17, 18, 57, 176, 8, 16, 177, 13, 1, 244, 176, 17, 208, 176, 18, 208, 48, 49, 1, 35, 17, 3, 35, 3, 17, 35, 17, 51, 19, 19, 51, 5, 35, 17, 35, 17, 35, 53, 33, 4, 94, 110, 129, 78, 129, 111, 158, 121, 121, 157, 253, 115, 176, 113, 176, 1, 209, 2, 233, 1, 138, 254, 178, 1, 78, 254, 118, 2, 48, 254, 184, 1, 72, 113, 254, 65, 1, 191, 113, 0, 0, 1, 0, 242, 3, 244, 2, 199, 5, 84, 0, 3, 0, 9, 0, 176, 1, 47, 176, 3, 47, 48, 49, 1, 5, 39, 1, 2, 199, 254, 80, 37, 1, 147, 4, 231, 243, 65, 1, 31, 0, 2, 0, 186, 4, 94, 2, 233, 5, 25, 0, 3, 0, 7, 0, 48, 179, 0, 8, 1, 4, 43, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 2, 16, 177, 0, 5, 244, 176, 4, 208, 176, 5, 208, 48, 49, 1, 35, 53, 51, 5, 35, 53, 51, 2, 233, 186, 186, 254, 140, 187, 187, 4, 94, 187, 187, 187, 0, 0, 1, 0, 0, 0, 0, 3, 164, 3, 164, 0, 19, 0, 65, 0, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 19, 62, 89, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 15, 62, 89, 179, 19, 1, 0, 4, 43, 179, 11, 1, 8, 4, 43, 176, 0, 16, 176, 4, 208, 176, 19, 16, 176, 6, 208, 176, 11, 16, 176, 14, 208, 176, 8, 16, 176, 16, 208, 48, 49, 37, 33, 7, 35, 55, 33, 53, 33, 19, 33, 53, 33, 55, 51, 7, 33, 21, 33, 3, 33, 3, 164, 253, 223, 90, 111, 90, 254, 236, 1, 74, 162, 254, 20, 2, 33, 90, 110, 90, 1, 21, 254, 182, 162, 1, 236, 187, 187, 187, 112, 1, 80, 111, 186, 186, 111, 254, 176, 0, 0, 2, 255, 193, 0, 0, 3, 164, 5, 25, 0, 15, 0, 18, 0, 86, 179, 14, 8, 1, 4, 43, 176, 14, 16, 176, 9, 208, 176, 1, 16, 176, 16, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 179, 16, 3, 2, 4, 43, 179, 11, 3, 12, 4, 43, 176, 6, 16, 177, 8, 3, 244, 176, 0, 16, 177, 14, 4, 244, 48, 49, 33, 33, 17, 35, 3, 35, 1, 33, 21, 33, 17, 33, 21, 33, 17, 33, 1, 17, 3, 3, 164, 254, 6, 233, 111, 145, 1, 139, 2, 88, 254, 145, 1, 21, 254, 235, 1, 111, 254, 6, 197, 1, 117, 254, 139, 5, 25, 121, 254, 55, 121, 254, 29, 1, 115, 2, 147, 253, 109, 0, 0, 3, 255, 211, 255, 233, 3, 211, 5, 47, 0, 27, 0, 38, 0, 50, 1, 27, 176, 51, 47, 176, 52, 47, 176, 51, 16, 176, 4, 208, 176, 4, 47, 176, 0, 208, 176, 0, 47, 176, 52, 16, 176, 18, 220, 176, 13, 208, 176, 13, 47, 176, 18, 16, 177, 28, 8, 244, 180, 218, 28, 234, 28, 2, 93, 64, 27, 9, 28, 25, 28, 41, 28, 57, 28, 73, 28, 89, 28, 105, 28, 121, 28, 137, 28, 153, 28, 169, 28, 185, 28, 201, 28, 13, 93, 178, 30, 0, 13, 17, 18, 57, 176, 4, 16, 177, 39, 12, 244, 180, 182, 39, 198, 39, 2, 93, 64, 23, 6, 39, 22, 39, 38, 39, 54, 39, 70, 39, 86, 39, 102, 39, 118, 39, 134, 39, 150, 39, 166, 39, 11, 93, 180, 213, 39, 229, 39, 2, 93, 178, 42, 0, 13, 17, 18, 57, 0, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 21, 62, 89, 176, 0, 69, 88, 176, 23, 47, 27, 177, 23, 15, 62, 89, 176, 9, 16, 177, 46, 6, 244, 180, 217, 46, 233, 46, 2, 93, 64, 27, 8, 46, 24, 46, 40, 46, 56, 46, 72, 46, 88, 46, 104, 46, 120, 46, 136, 46, 152, 46, 168, 46, 184, 46, 200, 46, 13, 93, 178, 13, 9, 46, 17, 18, 57, 176, 23, 16, 177, 34, 6, 244, 64, 27, 7, 34, 23, 34, 39, 34, 55, 34, 71, 34, 87, 34, 103, 34, 119, 34, 135, 34, 151, 34, 167, 34, 183, 34, 199, 34, 13, 93, 180, 214, 34, 230, 34, 2, 93, 178, 27, 23, 34, 17, 18, 57, 178, 30, 23, 9, 17, 18, 57, 178, 42, 23, 9, 17, 18, 57, 48, 49, 39, 55, 38, 38, 53, 52, 62, 2, 51, 50, 22, 23, 55, 21, 7, 22, 22, 21, 20, 14, 2, 35, 34, 38, 39, 7, 1, 52, 39, 1, 22, 22, 51, 50, 62, 2, 37, 20, 22, 23, 1, 38, 38, 35, 34, 14, 2, 45, 78, 35, 31, 53, 121, 191, 135, 131, 186, 60, 135, 82, 35, 35, 54, 118, 191, 137, 135, 185, 59, 133, 3, 106, 34, 253, 153, 41, 139, 107, 106, 140, 84, 32, 253, 43, 15, 18, 2, 101, 48, 141, 94, 107, 139, 84, 33, 188, 84, 84, 191, 104, 131, 244, 188, 113, 106, 91, 146, 160, 86, 84, 190, 105, 131, 244, 186, 113, 103, 90, 141, 2, 110, 150, 121, 253, 114, 78, 96, 101, 159, 199, 98, 69, 138, 63, 2, 139, 86, 92, 100, 162, 198, 0, 3, 255, 248, 0, 220, 3, 182, 2, 197, 0, 31, 0, 41, 0, 51, 0, 82, 179, 47, 10, 16, 4, 43, 64, 27, 6, 47, 22, 47, 38, 47, 54, 47, 70, 47, 86, 47, 102, 47, 118, 47, 134, 47, 150, 47, 166, 47, 182, 47, 198, 47, 13, 93, 180, 213, 47, 229, 47, 2, 93, 0, 179, 39, 2, 5, 4, 43, 179, 27, 2, 35, 4, 43, 176, 5, 16, 176, 11, 208, 176, 27, 16, 176, 21, 208, 176, 35, 16, 176, 44, 208, 176, 39, 16, 176, 50, 208, 48, 49, 1, 20, 14, 2, 35, 34, 38, 39, 6, 6, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 22, 23, 54, 54, 51, 50, 30, 2, 7, 52, 38, 35, 34, 7, 22, 51, 50, 54, 37, 38, 35, 34, 6, 21, 20, 22, 51, 50, 3, 182, 35, 63, 88, 51, 72, 117, 53, 53, 111, 78, 49, 86, 65, 37, 37, 63, 86, 51, 78, 111, 53, 53, 117, 72, 49, 86, 65, 37, 90, 86, 59, 127, 74, 74, 127, 59, 84, 254, 82, 70, 131, 59, 86, 82, 63, 129, 1, 209, 51, 90, 66, 38, 67, 90, 88, 69, 38, 66, 90, 51, 51, 91, 65, 37, 70, 90, 90, 70, 37, 65, 91, 51, 72, 84, 156, 159, 94, 65, 156, 88, 68, 65, 94, 0, 0, 2, 0, 0, 255, 70, 3, 164, 3, 176, 0, 11, 0, 15, 0, 45, 179, 2, 9, 3, 4, 43, 176, 3, 16, 176, 7, 208, 176, 2, 16, 176, 9, 208, 0, 179, 15, 1, 12, 4, 43, 179, 11, 1, 0, 4, 43, 176, 0, 16, 176, 4, 208, 176, 11, 16, 176, 6, 208, 48, 49, 1, 33, 17, 35, 17, 33, 53, 33, 17, 51, 17, 33, 17, 33, 53, 33, 3, 164, 254, 102, 112, 254, 102, 1, 154, 112, 1, 154, 252, 92, 3, 164, 1, 166, 254, 90, 1, 166, 113, 1, 153, 254, 103, 253, 47, 113, 0, 0, 2, 0, 186, 255, 70, 3, 164, 3, 222, 0, 5, 0, 9, 0, 12, 0, 176, 3, 47, 179, 9, 1, 6, 4, 43, 48, 49, 37, 7, 1, 1, 23, 1, 1, 33, 53, 33, 3, 20, 77, 254, 0, 2, 0, 77, 254, 80, 2, 64, 253, 22, 2, 234, 45, 77, 1, 254, 2, 0, 78, 254, 78, 253, 104, 113, 0, 2, 0, 186, 255, 70, 3, 164, 3, 222, 0, 5, 0, 9, 0, 12, 0, 176, 5, 47, 179, 9, 1, 6, 4, 43, 48, 49, 1, 1, 39, 1, 1, 55, 1, 33, 53, 33, 3, 152, 254, 0, 78, 1, 176, 254, 80, 78, 2, 12, 253, 22, 2, 234, 1, 222, 254, 2, 77, 1, 177, 1, 178, 78, 251, 104, 113, 0, 0, 1, 0, 0, 0, 0, 3, 164, 5, 25, 0, 25, 0, 110, 179, 2, 12, 3, 4, 43, 176, 3, 16, 176, 7, 208, 178, 16, 3, 2, 17, 18, 57, 176, 2, 16, 176, 23, 208, 0, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 21, 62, 89, 176, 0, 69, 88, 176, 17, 47, 27, 177, 17, 21, 62, 89, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 15, 62, 89, 179, 25, 3, 0, 4, 43, 179, 12, 3, 9, 4, 43, 176, 0, 16, 176, 4, 208, 176, 25, 16, 176, 6, 208, 178, 16, 2, 13, 17, 18, 57, 176, 12, 16, 176, 19, 208, 176, 9, 16, 176, 21, 208, 48, 49, 1, 33, 17, 35, 17, 33, 53, 33, 53, 39, 33, 53, 51, 3, 51, 1, 51, 1, 51, 3, 51, 21, 33, 7, 21, 33, 3, 164, 254, 115, 136, 254, 113, 1, 143, 108, 254, 221, 229, 204, 153, 1, 33, 2, 1, 33, 153, 204, 225, 254, 225, 110, 1, 141, 1, 152, 254, 104, 1, 152, 120, 35, 215, 121, 1, 150, 253, 172, 2, 84, 254, 106, 121, 215, 35, 0, 0, 1, 0, 49, 254, 139, 3, 115, 3, 164, 0, 21, 0, 158, 176, 22, 47, 176, 23, 47, 176, 0, 220, 177, 1, 8, 244, 176, 22, 16, 176, 8, 208, 176, 8, 47, 177, 7, 12, 244, 176, 10, 208, 176, 1, 16, 176, 19, 208, 0, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 19, 62, 89, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 19, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 17, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 178, 2, 7, 9, 17, 18, 57, 177, 14, 6, 244, 64, 27, 7, 14, 23, 14, 39, 14, 55, 14, 71, 14, 87, 14, 103, 14, 119, 14, 135, 14, 151, 14, 167, 14, 183, 14, 199, 14, 13, 93, 180, 214, 14, 230, 14, 2, 93, 178, 6, 4, 14, 17, 18, 57, 48, 49, 33, 35, 53, 2, 33, 34, 39, 17, 35, 17, 51, 17, 20, 22, 51, 50, 62, 2, 53, 17, 51, 3, 115, 138, 96, 255, 0, 123, 84, 137, 137, 109, 121, 76, 122, 86, 45, 138, 236, 254, 253, 56, 254, 106, 5, 25, 253, 194, 125, 139, 70, 117, 151, 82, 1, 162, 0, 2, 255, 236, 255, 233, 3, 182, 5, 47, 0, 21, 0, 37, 0, 190, 176, 38, 47, 176, 39, 47, 176, 38, 16, 176, 0, 208, 176, 0, 47, 176, 39, 16, 176, 14, 220, 178, 5, 0, 14, 17, 18, 57, 177, 22, 12, 244, 180, 218, 22, 234, 22, 2, 93, 64, 27, 9, 22, 25, 22, 41, 22, 57, 22, 73, 22, 89, 22, 105, 22, 121, 22, 137, 22, 153, 22, 169, 22, 185, 22, 201, 22, 13, 93, 176, 0, 16, 177, 30, 12, 244, 64, 27, 6, 30, 22, 30, 38, 30, 54, 30, 70, 30, 86, 30, 102, 30, 118, 30, 134, 30, 150, 30, 166, 30, 182, 30, 198, 30, 13, 93, 180, 213, 30, 229, 30, 2, 93, 0, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 21, 62, 89, 176, 0, 69, 88, 176, 19, 47, 27, 177, 19, 15, 62, 89, 178, 5, 19, 9, 17, 18, 57, 177, 33, 6, 244, 64, 27, 7, 33, 23, 33, 39, 33, 55, 33, 71, 33, 87, 33, 103, 33, 119, 33, 135, 33, 151, 33, 167, 33, 183, 33, 199, 33, 13, 93, 180, 214, 33, 230, 33, 2, 93, 48, 49, 3, 52, 54, 54, 36, 55, 38, 36, 39, 55, 30, 3, 21, 20, 14, 2, 35, 34, 38, 1, 52, 38, 39, 14, 3, 21, 20, 22, 51, 50, 62, 2, 20, 116, 203, 1, 16, 156, 78, 254, 248, 166, 45, 135, 250, 189, 112, 71, 136, 192, 121, 205, 245, 3, 65, 16, 17, 145, 244, 176, 98, 168, 145, 92, 142, 98, 51, 1, 98, 105, 162, 122, 84, 25, 125, 174, 59, 117, 53, 137, 189, 248, 163, 129, 207, 146, 78, 193, 1, 111, 55, 100, 47, 16, 70, 98, 125, 76, 116, 144, 64, 116, 164, 0, 0, 1, 0, 43, 0, 0, 3, 115, 5, 25, 0, 15, 0, 67, 179, 7, 11, 8, 4, 43, 176, 7, 16, 176, 0, 208, 176, 8, 16, 176, 13, 208, 176, 7, 16, 176, 17, 220, 0, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 5, 16, 177, 9, 6, 244, 176, 0, 16, 177, 12, 6, 244, 48, 49, 33, 33, 53, 1, 1, 53, 33, 17, 35, 17, 33, 1, 1, 33, 17, 51, 3, 115, 252, 184, 1, 72, 254, 184, 3, 72, 121, 253, 213, 1, 69, 254, 187, 2, 43, 121, 117, 2, 24, 2, 23, 117, 254, 71, 1, 68, 253, 233, 253, 232, 1, 69, 0, 0, 1, 0, 0, 0, 0, 3, 164, 5, 25, 0, 11, 0, 87, 176, 12, 47, 176, 13, 47, 176, 2, 220, 177, 3, 12, 244, 176, 12, 16, 176, 7, 208, 176, 7, 47, 177, 6, 8, 244, 0, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 21, 62, 89, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 15, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 176, 10, 16, 177, 0, 6, 244, 176, 4, 208, 176, 5, 208, 176, 8, 208, 176, 9, 208, 48, 49, 1, 35, 17, 35, 17, 33, 17, 35, 17, 35, 53, 33, 3, 164, 187, 137, 254, 228, 138, 186, 3, 164, 4, 164, 251, 92, 4, 164, 251, 92, 4, 164, 117, 0, 1, 0, 0, 255, 233, 3, 178, 3, 164, 0, 27, 0, 148, 176, 28, 47, 176, 29, 47, 176, 0, 220, 177, 14, 12, 244, 176, 28, 16, 176, 22, 208, 176, 22, 47, 177, 16, 12, 244, 0, 176, 0, 69, 88, 176, 24, 47, 27, 177, 24, 19, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 15, 62, 89, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 15, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 177, 3, 3, 244, 64, 27, 7, 3, 23, 3, 39, 3, 55, 3, 71, 3, 87, 3, 103, 3, 119, 3, 135, 3, 151, 3, 167, 3, 183, 3, 199, 3, 13, 93, 180, 214, 3, 230, 3, 2, 93, 178, 6, 9, 24, 17, 18, 57, 176, 24, 16, 177, 15, 4, 244, 176, 22, 208, 176, 23, 208, 176, 26, 208, 176, 27, 208, 48, 49, 37, 20, 22, 51, 50, 54, 55, 23, 6, 35, 34, 46, 2, 53, 17, 35, 16, 3, 35, 54, 18, 53, 35, 53, 33, 21, 35, 2, 209, 70, 51, 28, 35, 15, 26, 41, 82, 45, 86, 67, 41, 236, 43, 139, 22, 23, 211, 3, 164, 211, 207, 53, 56, 8, 9, 113, 25, 31, 58, 86, 55, 2, 90, 254, 115, 254, 100, 201, 1, 147, 205, 123, 123, 0, 0, 1, 0, 4, 254, 117, 3, 164, 6, 162, 0, 25, 0, 39, 179, 7, 8, 19, 4, 43, 0, 179, 16, 6, 9, 4, 43, 179, 22, 6, 3, 4, 43, 176, 9, 16, 176, 12, 208, 176, 12, 47, 176, 22, 16, 176, 25, 208, 176, 25, 47, 48, 49, 1, 38, 38, 35, 34, 6, 21, 17, 16, 33, 34, 38, 39, 53, 22, 22, 51, 50, 54, 53, 17, 16, 33, 50, 22, 23, 3, 164, 29, 63, 41, 129, 135, 254, 114, 31, 67, 35, 29, 59, 45, 127, 133, 1, 146, 30, 68, 35, 6, 39, 4, 2, 121, 143, 250, 203, 254, 133, 4, 4, 115, 4, 3, 121, 142, 5, 53, 1, 125, 6, 4, 0, 3, 255, 248, 1, 0, 2, 188, 5, 43, 0, 37, 0, 52, 0, 56, 0, 196, 176, 57, 47, 176, 58, 47, 176, 57, 16, 176, 0, 208, 176, 0, 47, 176, 58, 16, 176, 28, 220, 177, 11, 8, 244, 176, 30, 208, 178, 31, 0, 28, 17, 18, 57, 176, 11, 16, 176, 43, 208, 176, 0, 16, 177, 50, 8, 244, 64, 27, 6, 50, 22, 50, 38, 50, 54, 50, 70, 50, 86, 50, 102, 50, 118, 50, 134, 50, 150, 50, 166, 50, 182, 50, 198, 50, 13, 93, 180, 213, 50, 229, 50, 2, 93, 176, 28, 16, 176, 53, 208, 176, 0, 16, 176, 54, 208, 176, 54, 47, 0, 176, 0, 69, 88, 176, 23, 47, 27, 177, 23, 21, 62, 89, 179, 56, 6, 53, 4, 43, 179, 38, 6, 33, 4, 43, 179, 5, 1, 47, 4, 43, 176, 5, 16, 176, 10, 208, 176, 10, 47, 176, 23, 16, 177, 16, 6, 244, 180, 217, 16, 233, 16, 2, 93, 64, 27, 8, 16, 24, 16, 40, 16, 56, 16, 72, 16, 88, 16, 104, 16, 120, 16, 136, 16, 152, 16, 168, 16, 184, 16, 200, 16, 13, 93, 176, 47, 16, 176, 44, 208, 176, 44, 47, 48, 49, 3, 52, 62, 2, 51, 50, 50, 22, 22, 23, 53, 52, 46, 2, 35, 34, 6, 7, 39, 54, 54, 51, 50, 30, 2, 21, 17, 35, 53, 6, 35, 34, 46, 2, 5, 50, 62, 2, 53, 53, 38, 38, 35, 34, 6, 21, 20, 22, 1, 33, 53, 33, 8, 69, 117, 146, 77, 31, 37, 31, 32, 27, 39, 55, 66, 26, 86, 133, 64, 55, 61, 162, 115, 61, 117, 92, 57, 141, 117, 168, 61, 102, 76, 43, 1, 26, 68, 107, 71, 39, 53, 68, 37, 118, 150, 72, 1, 239, 253, 68, 2, 188, 2, 248, 69, 99, 61, 27, 4, 4, 4, 75, 37, 49, 29, 12, 35, 45, 109, 41, 47, 27, 59, 92, 66, 253, 248, 111, 129, 28, 58, 80, 50, 33, 47, 54, 22, 80, 8, 2, 67, 76, 45, 58, 254, 111, 117, 0, 0, 3, 255, 238, 1, 0, 2, 254, 5, 45, 0, 19, 0, 37, 0, 41, 0, 178, 176, 42, 47, 176, 43, 47, 176, 0, 220, 176, 42, 16, 176, 10, 208, 176, 10, 47, 176, 0, 16, 177, 20, 12, 244, 180, 218, 20, 234, 20, 2, 93, 64, 27, 9, 20, 25, 20, 41, 20, 57, 20, 73, 20, 89, 20, 105, 20, 121, 20, 137, 20, 153, 20, 169, 20, 185, 20, 201, 20, 13, 93, 176, 10, 16, 177, 30, 12, 244, 64, 27, 6, 30, 22, 30, 38, 30, 54, 30, 70, 30, 86, 30, 102, 30, 118, 30, 134, 30, 150, 30, 166, 30, 182, 30, 198, 30, 13, 93, 180, 213, 30, 229, 30, 2, 93, 0, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 21, 62, 89, 179, 41, 6, 38, 4, 43, 179, 33, 6, 5, 4, 43, 176, 15, 16, 177, 25, 6, 244, 180, 217, 25, 233, 25, 2, 93, 64, 27, 8, 25, 24, 25, 40, 25, 56, 25, 72, 25, 88, 25, 104, 25, 120, 25, 136, 25, 152, 25, 168, 25, 184, 25, 200, 25, 13, 93, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 14, 2, 21, 20, 22, 51, 50, 62, 2, 19, 33, 53, 33, 2, 254, 61, 105, 145, 82, 84, 142, 106, 59, 59, 106, 142, 84, 82, 145, 105, 61, 137, 41, 70, 92, 53, 54, 92, 69, 39, 143, 111, 55, 92, 70, 39, 116, 253, 23, 2, 233, 3, 164, 86, 146, 102, 57, 55, 102, 144, 90, 88, 145, 105, 55, 55, 105, 145, 88, 61, 103, 73, 39, 39, 73, 103, 61, 125, 150, 39, 72, 102, 253, 154, 117, 0, 0, 1, 255, 236, 0, 0, 3, 188, 5, 47, 0, 45, 0, 199, 179, 23, 12, 36, 4, 43, 179, 0, 12, 13, 4, 43, 180, 218, 13, 234, 13, 2, 93, 64, 27, 9, 13, 25, 13, 41, 13, 57, 13, 73, 13, 89, 13, 105, 13, 121, 13, 137, 13, 153, 13, 169, 13, 185, 13, 201, 13, 13, 93, 64, 15, 102, 23, 118, 23, 134, 23, 150, 23, 166, 23, 182, 23, 198, 23, 7, 93, 64, 13, 6, 23, 22, 23, 38, 23, 54, 23, 70, 23, 86, 23, 6, 93, 180, 213, 23, 229, 23, 2, 93, 176, 36, 16, 177, 28, 14, 244, 0, 176, 0, 69, 88, 176, 41, 47, 27, 177, 41, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 176, 0, 69, 88, 176, 29, 47, 27, 177, 29, 15, 62, 89, 176, 6, 16, 177, 4, 6, 244, 176, 41, 16, 177, 18, 1, 244, 180, 217, 18, 233, 18, 2, 93, 64, 27, 8, 18, 24, 18, 40, 18, 56, 18, 72, 18, 88, 18, 104, 18, 120, 18, 136, 18, 152, 18, 168, 18, 184, 18, 200, 18, 13, 93, 176, 4, 16, 176, 31, 208, 176, 32, 208, 48, 49, 1, 20, 2, 7, 21, 51, 21, 33, 17, 62, 3, 53, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 23, 17, 33, 53, 51, 53, 38, 2, 53, 52, 62, 2, 51, 50, 30, 2, 3, 188, 110, 125, 211, 254, 164, 67, 90, 56, 22, 39, 86, 133, 94, 90, 133, 86, 41, 22, 54, 88, 67, 254, 164, 211, 121, 110, 63, 123, 182, 119, 119, 182, 125, 63, 2, 229, 145, 254, 240, 93, 114, 117, 1, 35, 26, 103, 123, 135, 63, 82, 168, 137, 86, 86, 137, 168, 82, 63, 135, 123, 103, 26, 254, 221, 117, 114, 86, 1, 19, 149, 113, 213, 162, 98, 98, 162, 213, 0, 0, 3, 255, 219, 255, 233, 3, 186, 3, 186, 0, 53, 0, 60, 0, 75, 1, 27, 176, 76, 47, 176, 77, 47, 176, 60, 220, 177, 16, 12, 244, 178, 0, 60, 16, 17, 18, 57, 176, 76, 16, 176, 8, 208, 176, 8, 47, 178, 32, 60, 16, 17, 18, 57, 176, 60, 16, 176, 41, 208, 176, 16, 16, 176, 61, 208, 176, 8, 16, 177, 67, 12, 244, 64, 27, 6, 67, 22, 67, 38, 67, 54, 67, 70, 67, 86, 67, 102, 67, 118, 67, 134, 67, 150, 67, 166, 67, 182, 67, 198, 67, 13, 93, 180, 213, 67, 229, 67, 2, 93, 0, 176, 0, 69, 88, 176, 29, 47, 27, 177, 29, 19, 62, 89, 176, 0, 69, 88, 176, 35, 47, 27, 177, 35, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 0, 69, 88, 176, 51, 47, 27, 177, 51, 15, 62, 89, 179, 13, 5, 41, 4, 43, 178, 0, 5, 29, 17, 18, 57, 176, 13, 16, 176, 16, 208, 176, 16, 47, 176, 29, 16, 177, 20, 1, 244, 180, 217, 20, 233, 20, 2, 93, 64, 27, 8, 20, 24, 20, 40, 20, 56, 20, 72, 20, 88, 20, 104, 20, 120, 20, 136, 20, 152, 20, 168, 20, 184, 20, 200, 20, 13, 93, 178, 32, 5, 29, 17, 18, 57, 176, 51, 16, 177, 44, 4, 244, 64, 27, 7, 44, 23, 44, 39, 44, 55, 44, 71, 44, 87, 44, 103, 44, 119, 44, 135, 44, 151, 44, 167, 44, 183, 44, 199, 44, 13, 93, 180, 214, 44, 230, 44, 2, 93, 176, 20, 16, 176, 57, 208, 176, 13, 16, 177, 64, 6, 244, 176, 44, 16, 176, 70, 208, 48, 49, 37, 14, 3, 35, 34, 38, 53, 52, 62, 2, 51, 50, 22, 23, 53, 52, 38, 35, 34, 6, 7, 39, 62, 3, 51, 50, 22, 23, 54, 54, 51, 50, 30, 2, 21, 33, 20, 22, 51, 50, 54, 55, 23, 6, 6, 35, 34, 38, 1, 52, 38, 35, 34, 6, 21, 7, 38, 38, 35, 34, 6, 21, 20, 22, 51, 50, 62, 2, 53, 1, 193, 13, 43, 61, 78, 49, 117, 125, 57, 93, 120, 64, 22, 48, 22, 70, 71, 41, 94, 35, 86, 26, 70, 70, 65, 25, 78, 112, 23, 28, 132, 69, 92, 107, 51, 14, 254, 84, 78, 78, 47, 72, 18, 117, 35, 125, 102, 76, 127, 1, 80, 64, 71, 66, 80, 137, 12, 45, 23, 86, 123, 60, 59, 33, 61, 47, 29, 170, 35, 67, 56, 35, 158, 119, 80, 117, 73, 35, 2, 4, 96, 76, 115, 72, 59, 84, 43, 61, 39, 18, 69, 78, 78, 69, 112, 164, 186, 74, 166, 148, 58, 65, 37, 108, 105, 101, 1, 205, 163, 138, 133, 168, 101, 2, 2, 96, 102, 54, 86, 31, 53, 72, 41, 0, 3, 255, 213, 255, 233, 3, 209, 3, 186, 0, 25, 0, 36, 0, 47, 0, 252, 176, 48, 47, 176, 49, 47, 176, 48, 16, 176, 3, 208, 176, 3, 47, 176, 49, 16, 176, 16, 220, 177, 26, 12, 244, 180, 218, 26, 234, 26, 2, 93, 64, 27, 9, 26, 25, 26, 41, 26, 57, 26, 73, 26, 89, 26, 105, 26, 121, 26, 137, 26, 153, 26, 169, 26, 185, 26, 201, 26, 13, 93, 176, 11, 208, 176, 11, 47, 176, 3, 16, 177, 37, 12, 244, 64, 23, 6, 37, 22, 37, 38, 37, 54, 37, 70, 37, 86, 37, 102, 37, 118, 37, 134, 37, 150, 37, 166, 37, 11, 93, 180, 182, 37, 198, 37, 2, 93, 180, 213, 37, 229, 37, 2, 93, 176, 24, 208, 176, 24, 47, 0, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 19, 62, 89, 176, 0, 69, 88, 176, 21, 47, 27, 177, 21, 15, 62, 89, 176, 8, 16, 177, 43, 6, 244, 180, 217, 43, 233, 43, 2, 93, 64, 27, 8, 43, 24, 43, 40, 43, 56, 43, 72, 43, 88, 43, 104, 43, 120, 43, 136, 43, 152, 43, 168, 43, 184, 43, 200, 43, 13, 93, 178, 12, 8, 43, 17, 18, 57, 176, 21, 16, 177, 32, 6, 244, 64, 27, 7, 32, 23, 32, 39, 32, 55, 32, 71, 32, 87, 32, 103, 32, 119, 32, 135, 32, 151, 32, 167, 32, 183, 32, 199, 32, 13, 93, 180, 214, 32, 230, 32, 2, 93, 178, 25, 21, 32, 17, 18, 57, 48, 49, 39, 55, 38, 53, 52, 62, 2, 51, 50, 22, 23, 55, 21, 7, 22, 21, 20, 14, 2, 35, 34, 38, 39, 7, 1, 52, 39, 1, 22, 22, 51, 50, 62, 2, 37, 20, 23, 1, 38, 38, 35, 34, 14, 2, 43, 92, 69, 69, 129, 180, 109, 113, 180, 65, 152, 94, 73, 69, 129, 180, 111, 113, 182, 66, 149, 3, 94, 43, 253, 201, 47, 127, 84, 82, 131, 92, 47, 253, 66, 39, 2, 57, 47, 129, 82, 82, 131, 90, 47, 119, 74, 116, 154, 106, 183, 129, 73, 75, 68, 121, 119, 76, 121, 153, 109, 178, 127, 72, 74, 68, 119, 1, 207, 106, 84, 254, 60, 49, 58, 56, 98, 135, 80, 107, 77, 1, 196, 49, 58, 58, 102, 135, 0, 2, 0, 209, 255, 233, 3, 182, 5, 25, 0, 3, 0, 31, 0, 148, 179, 19, 8, 4, 4, 43, 179, 12, 8, 3, 4, 43, 176, 12, 16, 176, 1, 208, 176, 1, 47, 176, 12, 16, 177, 11, 8, 244, 64, 27, 6, 19, 22, 19, 38, 19, 54, 19, 70, 19, 86, 19, 102, 19, 118, 19, 134, 19, 150, 19, 166, 19, 182, 19, 198, 19, 13, 93, 180, 213, 19, 229, 19, 2, 93, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 19, 62, 89, 176, 0, 69, 88, 176, 29, 47, 27, 177, 29, 15, 62, 89, 177, 22, 6, 244, 64, 27, 7, 22, 23, 22, 39, 22, 55, 22, 71, 22, 87, 22, 103, 22, 119, 22, 135, 22, 151, 22, 167, 22, 183, 22, 199, 22, 13, 93, 180, 214, 22, 230, 22, 2, 93, 48, 49, 1, 51, 21, 35, 1, 52, 62, 4, 53, 51, 20, 14, 4, 21, 20, 22, 51, 50, 54, 55, 23, 6, 6, 35, 34, 38, 2, 47, 186, 186, 254, 162, 57, 86, 103, 86, 57, 145, 59, 86, 104, 86, 60, 109, 102, 127, 127, 14, 123, 18, 195, 176, 166, 186, 5, 25, 187, 252, 189, 77, 117, 98, 87, 92, 108, 70, 78, 123, 106, 95, 92, 98, 57, 88, 101, 150, 114, 18, 168, 195, 170, 0, 0, 2, 2, 47, 0, 0, 2, 233, 5, 25, 0, 3, 0, 7, 0, 63, 179, 5, 8, 4, 4, 43, 176, 4, 16, 176, 0, 208, 176, 0, 47, 176, 5, 16, 176, 3, 208, 0, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 21, 62, 89, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 48, 49, 33, 19, 51, 19, 3, 51, 21, 35, 2, 49, 51, 82, 51, 186, 186, 186, 3, 170, 252, 86, 5, 25, 187, 0, 1, 0, 0, 0, 0, 3, 164, 2, 47, 0, 5, 0, 15, 179, 0, 9, 1, 4, 43, 0, 179, 5, 1, 2, 4, 43, 48, 49, 33, 35, 17, 33, 53, 33, 3, 164, 113, 252, 205, 3, 164, 1, 191, 112, 0, 0, 1, 0, 23, 0, 0, 3, 164, 4, 94, 0, 8, 0, 22, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 15, 62, 89, 179, 8, 1, 0, 4, 43, 48, 49, 1, 33, 1, 35, 3, 55, 19, 1, 33, 3, 164, 254, 227, 254, 211, 104, 219, 106, 166, 1, 14, 1, 111, 3, 240, 252, 16, 2, 213, 33, 253, 174, 3, 186, 0, 1, 0, 4, 254, 117, 3, 164, 5, 43, 0, 32, 0, 151, 179, 3, 8, 15, 4, 43, 176, 15, 16, 176, 19, 208, 176, 3, 16, 176, 32, 208, 0, 176, 0, 69, 88, 176, 22, 47, 27, 177, 22, 21, 62, 89, 176, 0, 69, 88, 176, 25, 47, 27, 177, 25, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 19, 62, 89, 179, 12, 6, 5, 4, 43, 176, 0, 16, 177, 1, 6, 244, 176, 2, 208, 176, 5, 16, 176, 8, 208, 176, 8, 47, 176, 2, 16, 176, 16, 208, 176, 17, 208, 176, 22, 16, 177, 29, 6, 244, 180, 217, 29, 233, 29, 2, 93, 64, 27, 8, 29, 24, 29, 40, 29, 56, 29, 72, 29, 88, 29, 104, 29, 120, 29, 136, 29, 152, 29, 168, 29, 184, 29, 200, 29, 13, 93, 48, 49, 1, 21, 33, 17, 16, 33, 34, 38, 39, 53, 22, 22, 51, 50, 54, 53, 17, 35, 53, 51, 52, 54, 51, 50, 22, 23, 21, 38, 38, 35, 34, 6, 21, 3, 164, 254, 115, 254, 114, 31, 67, 35, 29, 59, 45, 127, 133, 211, 211, 199, 201, 47, 65, 23, 29, 63, 43, 131, 131, 3, 164, 117, 252, 193, 254, 133, 4, 4, 115, 4, 3, 121, 142, 3, 63, 117, 192, 199, 6, 4, 117, 4, 6, 129, 145, 0, 2, 255, 236, 0, 144, 3, 184, 3, 15, 0, 19, 0, 39, 0, 0, 1, 6, 35, 34, 46, 2, 35, 34, 7, 39, 54, 51, 50, 30, 2, 51, 50, 55, 19, 6, 35, 34, 46, 2, 35, 34, 7, 39, 54, 51, 50, 30, 2, 51, 50, 55, 3, 184, 114, 197, 74, 88, 69, 68, 51, 129, 82, 100, 114, 197, 74, 90, 69, 68, 49, 129, 82, 100, 114, 197, 74, 88, 69, 68, 51, 129, 82, 100, 114, 197, 74, 90, 69, 68, 49, 129, 82, 2, 207, 200, 45, 55, 45, 137, 59, 197, 47, 56, 45, 144, 254, 77, 200, 45, 55, 45, 137, 59, 197, 47, 55, 46, 144, 0, 0, 2, 255, 197, 0, 0, 3, 227, 5, 25, 0, 3, 0, 6, 0, 33, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 4, 6, 244, 48, 49, 33, 33, 1, 51, 19, 1, 1, 3, 227, 251, 226, 1, 178, 186, 248, 254, 170, 254, 170, 5, 25, 251, 92, 4, 24, 251, 232, 0, 2, 0, 14, 0, 150, 3, 20, 3, 39, 0, 5, 0, 11, 0, 15, 0, 176, 3, 47, 176, 9, 47, 176, 1, 47, 176, 7, 47, 48, 49, 37, 7, 1, 1, 23, 15, 2, 1, 1, 23, 7, 3, 20, 77, 254, 186, 1, 70, 77, 245, 125, 80, 254, 188, 1, 68, 80, 248, 229, 79, 1, 71, 1, 74, 80, 250, 248, 79, 1, 71, 1, 74, 80, 250, 0, 0, 2, 0, 141, 0, 150, 3, 152, 3, 37, 0, 5, 0, 11, 0, 15, 0, 176, 5, 47, 176, 11, 47, 176, 1, 47, 176, 7, 47, 48, 49, 1, 1, 39, 55, 39, 55, 3, 1, 39, 55, 39, 55, 3, 152, 254, 184, 78, 248, 248, 78, 47, 254, 188, 80, 248, 248, 80, 1, 221, 254, 185, 77, 250, 250, 78, 254, 184, 254, 185, 77, 250, 250, 78, 0, 3, 0, 0, 0, 0, 3, 164, 0, 186, 0, 3, 0, 7, 0, 11, 0, 64, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 15, 62, 89, 176, 4, 16, 177, 2, 5, 244, 176, 3, 208, 176, 6, 208, 176, 7, 208, 176, 10, 208, 176, 11, 208, 48, 49, 33, 35, 53, 51, 5, 35, 53, 51, 5, 35, 53, 51, 3, 164, 187, 187, 254, 139, 186, 186, 254, 139, 186, 186, 186, 186, 186, 186, 186, 0, 255, 255, 255, 197, 0, 0, 3, 227, 6, 201, 2, 38, 0, 34, 0, 0, 0, 7, 0, 65, 0, 0, 1, 117, 255, 255, 255, 197, 0, 0, 3, 227, 6, 115, 2, 38, 0, 34, 0, 0, 0, 7, 0, 215, 0, 0, 1, 115, 255, 255, 255, 223, 255, 233, 3, 199, 6, 115, 2, 38, 0, 48, 0, 0, 0, 7, 0, 215, 0, 0, 1, 115, 0, 2, 255, 242, 255, 233, 3, 164, 5, 47, 0, 19, 0, 42, 0, 160, 179, 10, 12, 22, 4, 43, 179, 35, 12, 0, 4, 43, 64, 27, 6, 10, 22, 10, 38, 10, 54, 10, 70, 10, 86, 10, 102, 10, 118, 10, 134, 10, 150, 10, 166, 10, 182, 10, 198, 10, 13, 93, 180, 213, 10, 229, 10, 2, 93, 176, 35, 16, 177, 27, 9, 244, 176, 35, 16, 176, 31, 208, 176, 27, 16, 176, 39, 208, 178, 40, 0, 35, 17, 18, 57, 0, 176, 0, 69, 88, 176, 24, 47, 27, 177, 24, 21, 62, 89, 176, 0, 69, 88, 176, 28, 47, 27, 177, 28, 21, 62, 89, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 15, 62, 89, 176, 0, 69, 88, 176, 38, 47, 27, 177, 38, 15, 62, 89, 179, 33, 6, 34, 4, 43, 176, 28, 16, 177, 30, 6, 244, 176, 20, 16, 177, 36, 6, 244, 176, 37, 208, 178, 40, 20, 24, 17, 18, 57, 48, 49, 1, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 62, 2, 3, 32, 17, 16, 33, 50, 22, 23, 53, 33, 21, 33, 17, 33, 21, 33, 17, 33, 21, 33, 53, 6, 6, 1, 166, 10, 33, 57, 48, 47, 59, 33, 12, 12, 33, 59, 47, 48, 57, 33, 10, 148, 254, 224, 1, 32, 74, 72, 29, 1, 227, 254, 139, 1, 27, 254, 229, 1, 117, 254, 29, 29, 72, 2, 139, 123, 207, 147, 82, 82, 147, 207, 123, 123, 204, 148, 82, 82, 148, 204, 253, 217, 2, 162, 2, 164, 76, 80, 134, 117, 254, 45, 117, 254, 25, 117, 133, 80, 76, 0, 0, 3, 255, 219, 255, 233, 3, 186, 3, 186, 0, 27, 0, 34, 0, 42, 0, 252, 176, 43, 47, 176, 44, 47, 176, 0, 220, 177, 35, 8, 244, 178, 11, 0, 35, 17, 18, 57, 176, 43, 16, 176, 15, 208, 176, 15, 47, 178, 19, 0, 35, 17, 18, 57, 176, 0, 16, 176, 34, 208, 176, 15, 16, 177, 39, 12, 244, 64, 27, 6, 39, 22, 39, 38, 39, 54, 39, 70, 39, 86, 39, 102, 39, 118, 39, 134, 39, 150, 39, 166, 39, 182, 39, 198, 39, 13, 93, 180, 213, 39, 229, 39, 2, 93, 0, 176, 0, 69, 88, 176, 17, 47, 27, 177, 17, 19, 62, 89, 176, 0, 69, 88, 176, 22, 47, 27, 177, 22, 19, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 15, 62, 89, 179, 34, 3, 0, 4, 43, 178, 11, 9, 17, 17, 18, 57, 178, 19, 9, 17, 17, 18, 57, 176, 22, 16, 177, 31, 1, 244, 180, 217, 31, 233, 31, 2, 93, 64, 27, 8, 31, 24, 31, 40, 31, 56, 31, 72, 31, 88, 31, 104, 31, 120, 31, 136, 31, 152, 31, 168, 31, 184, 31, 200, 31, 13, 93, 176, 37, 208, 176, 13, 16, 177, 41, 1, 244, 64, 27, 7, 41, 23, 41, 39, 41, 55, 41, 71, 41, 87, 41, 103, 41, 119, 41, 135, 41, 151, 41, 167, 41, 183, 41, 199, 41, 13, 93, 180, 214, 41, 230, 41, 2, 93, 48, 49, 1, 20, 22, 51, 50, 54, 55, 23, 6, 35, 34, 39, 6, 35, 32, 17, 16, 33, 50, 23, 54, 54, 51, 50, 30, 2, 21, 39, 52, 38, 35, 34, 6, 7, 7, 16, 35, 34, 17, 16, 51, 50, 2, 14, 78, 78, 47, 66, 14, 127, 68, 186, 178, 49, 43, 170, 254, 233, 1, 23, 164, 47, 22, 111, 84, 100, 113, 57, 14, 147, 55, 82, 82, 58, 4, 143, 141, 142, 142, 141, 1, 162, 166, 148, 56, 71, 41, 213, 201, 201, 1, 232, 1, 233, 194, 98, 96, 104, 160, 188, 84, 121, 151, 150, 158, 143, 74, 1, 119, 254, 137, 254, 135, 0, 0, 1, 0, 0, 1, 168, 3, 164, 2, 20, 0, 3, 0, 9, 0, 179, 1, 1, 0, 4, 43, 48, 49, 17, 53, 33, 21, 3, 164, 1, 168, 108, 108, 0, 0, 1, 255, 164, 1, 168, 4, 2, 2, 20, 0, 3, 0, 9, 0, 179, 3, 1, 0, 4, 43, 48, 49, 1, 33, 53, 33, 4, 2, 251, 162, 4, 94, 1, 168, 108, 0, 2, 0, 55, 2, 233, 3, 164, 5, 23, 0, 12, 0, 25, 0, 116, 179, 24, 13, 15, 4, 43, 179, 11, 13, 2, 4, 43, 176, 2, 16, 177, 0, 14, 244, 176, 7, 208, 176, 15, 16, 177, 13, 14, 244, 176, 20, 208, 0, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 19, 62, 89, 176, 0, 69, 88, 176, 24, 47, 27, 177, 24, 19, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 21, 62, 89, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 21, 62, 89, 176, 11, 16, 177, 0, 5, 244, 176, 7, 16, 177, 8, 6, 244, 176, 0, 16, 176, 13, 208, 176, 14, 208, 176, 8, 16, 176, 21, 208, 48, 49, 1, 33, 53, 52, 62, 2, 51, 21, 34, 21, 21, 51, 5, 33, 53, 52, 62, 2, 51, 21, 34, 21, 21, 51, 3, 164, 254, 192, 41, 80, 119, 80, 203, 203, 253, 209, 254, 194, 39, 80, 119, 80, 201, 201, 2, 233, 218, 69, 123, 92, 56, 117, 223, 31, 187, 218, 69, 123, 92, 56, 117, 223, 31, 0, 0, 2, 0, 0, 2, 236, 3, 109, 5, 25, 0, 12, 0, 25, 0, 107, 179, 1, 14, 0, 4, 43, 179, 14, 14, 13, 4, 43, 176, 0, 16, 176, 7, 208, 176, 1, 16, 177, 10, 13, 244, 176, 13, 16, 176, 20, 208, 176, 14, 16, 177, 23, 13, 244, 176, 14, 16, 176, 27, 220, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 21, 62, 89, 179, 8, 6, 7, 4, 43, 176, 0, 16, 177, 11, 5, 244, 176, 7, 16, 176, 20, 208, 176, 8, 16, 176, 21, 208, 176, 11, 16, 176, 24, 208, 176, 25, 208, 48, 49, 17, 33, 21, 20, 14, 2, 35, 53, 50, 53, 53, 35, 37, 33, 21, 20, 14, 2, 35, 53, 50, 53, 53, 35, 1, 63, 40, 80, 119, 80, 203, 203, 2, 47, 1, 62, 39, 80, 119, 80, 201, 201, 5, 25, 218, 69, 123, 92, 55, 116, 223, 31, 187, 218, 69, 123, 92, 55, 116, 223, 31, 0, 1, 1, 170, 2, 233, 2, 233, 5, 23, 0, 12, 0, 59, 179, 11, 13, 2, 4, 43, 176, 2, 16, 177, 0, 14, 244, 176, 7, 208, 0, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 19, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 21, 62, 89, 176, 11, 16, 177, 0, 5, 244, 176, 7, 16, 177, 8, 6, 244, 48, 49, 1, 33, 53, 52, 62, 2, 51, 21, 34, 21, 21, 51, 2, 233, 254, 193, 41, 80, 119, 79, 202, 202, 2, 233, 218, 69, 123, 92, 56, 117, 223, 31, 0, 0, 1, 0, 186, 2, 236, 1, 250, 5, 25, 0, 12, 0, 48, 179, 1, 14, 0, 4, 43, 176, 0, 16, 176, 7, 208, 176, 1, 16, 177, 10, 13, 244, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 179, 8, 6, 7, 4, 43, 176, 0, 16, 177, 11, 5, 244, 48, 49, 19, 33, 21, 20, 14, 2, 35, 53, 50, 53, 53, 35, 186, 1, 64, 41, 80, 119, 80, 203, 203, 5, 25, 218, 69, 123, 92, 55, 116, 223, 31, 0, 0, 3, 0, 0, 0, 13, 3, 164, 3, 176, 0, 3, 0, 7, 0, 11, 0, 53, 179, 0, 8, 1, 4, 43, 176, 0, 16, 176, 4, 208, 176, 1, 16, 176, 5, 208, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 19, 62, 89, 179, 6, 5, 5, 4, 43, 179, 11, 6, 8, 4, 43, 176, 2, 16, 177, 0, 5, 244, 48, 49, 1, 35, 53, 51, 17, 35, 53, 51, 37, 33, 53, 33, 2, 47, 186, 186, 186, 186, 1, 117, 252, 92, 3, 164, 2, 246, 186, 252, 93, 186, 221, 117, 0, 0, 2, 255, 238, 255, 240, 3, 182, 3, 184, 0, 3, 0, 7, 0, 29, 0, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 19, 62, 89, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 15, 62, 89, 48, 49, 9, 7, 3, 182, 254, 27, 254, 29, 1, 227, 1, 98, 254, 158, 254, 158, 1, 98, 1, 211, 254, 29, 1, 227, 1, 229, 254, 27, 1, 98, 254, 158, 254, 158, 0, 255, 255, 255, 225, 254, 117, 3, 193, 5, 25, 2, 34, 0, 90, 0, 0, 0, 2, 0, 140, 0, 0, 255, 255, 255, 236, 0, 0, 3, 184, 6, 140, 2, 34, 0, 58, 0, 0, 0, 3, 0, 140, 0, 0, 1, 115, 0, 1, 0, 2, 255, 229, 3, 164, 5, 55, 0, 3, 0, 19, 0, 176, 3, 47, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 15, 62, 89, 48, 49, 1, 1, 39, 1, 3, 164, 252, 188, 94, 3, 70, 4, 248, 250, 237, 60, 5, 22, 0, 0, 1, 0, 0, 255, 233, 3, 172, 5, 47, 0, 53, 0, 153, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 38, 47, 27, 177, 38, 15, 62, 89, 179, 26, 1, 27, 4, 43, 179, 17, 1, 18, 4, 43, 176, 17, 16, 176, 0, 208, 176, 6, 16, 177, 13, 6, 244, 180, 217, 13, 233, 13, 2, 93, 64, 27, 8, 13, 24, 13, 40, 13, 56, 13, 72, 13, 88, 13, 104, 13, 120, 13, 136, 13, 152, 13, 168, 13, 184, 13, 200, 13, 13, 93, 176, 38, 16, 177, 31, 6, 244, 64, 27, 7, 31, 23, 31, 39, 31, 55, 31, 71, 31, 87, 31, 103, 31, 119, 31, 135, 31, 151, 31, 167, 31, 183, 31, 199, 31, 13, 93, 180, 214, 31, 230, 31, 2, 93, 176, 27, 16, 176, 43, 208, 176, 26, 16, 176, 45, 208, 176, 18, 16, 176, 52, 208, 48, 49, 17, 51, 62, 3, 51, 50, 22, 23, 7, 38, 38, 35, 34, 6, 7, 33, 21, 33, 6, 20, 21, 20, 20, 23, 33, 21, 33, 22, 22, 51, 50, 54, 55, 23, 6, 6, 35, 34, 46, 2, 39, 35, 53, 51, 38, 52, 53, 52, 52, 55, 35, 166, 14, 60, 96, 137, 90, 139, 187, 51, 121, 28, 132, 92, 100, 137, 27, 1, 0, 254, 244, 2, 2, 1, 12, 255, 0, 25, 139, 100, 92, 132, 28, 121, 51, 187, 139, 90, 137, 96, 62, 14, 164, 154, 2, 2, 154, 3, 90, 98, 170, 127, 74, 176, 188, 31, 123, 155, 176, 176, 113, 22, 47, 25, 24, 45, 23, 113, 178, 174, 158, 123, 33, 188, 177, 74, 125, 172, 98, 113, 23, 47, 22, 23, 49, 22, 0, 0, 1, 0, 199, 0, 150, 2, 92, 3, 39, 0, 5, 0, 9, 0, 176, 3, 47, 176, 1, 47, 48, 49, 37, 7, 1, 1, 23, 7, 2, 92, 78, 254, 185, 1, 71, 78, 248, 229, 79, 1, 71, 1, 74, 80, 250, 0, 1, 1, 72, 0, 150, 2, 221, 3, 37, 0, 5, 0, 9, 0, 176, 5, 47, 176, 1, 47, 48, 49, 1, 1, 39, 55, 39, 55, 2, 221, 254, 187, 80, 247, 247, 80, 1, 221, 254, 185, 77, 250, 250, 78, 0, 0, 2, 0, 0, 0, 0, 4, 94, 5, 43, 0, 23, 0, 27, 0, 191, 176, 28, 47, 176, 29, 47, 176, 28, 16, 176, 3, 208, 176, 3, 47, 176, 7, 208, 176, 3, 16, 177, 27, 12, 244, 176, 20, 208, 176, 29, 16, 176, 22, 220, 177, 24, 12, 244, 0, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 21, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 2, 6, 244, 176, 20, 16, 177, 4, 6, 244, 176, 5, 208, 176, 10, 16, 177, 17, 6, 244, 180, 217, 17, 233, 17, 2, 93, 64, 27, 8, 17, 24, 17, 40, 17, 56, 17, 72, 17, 88, 17, 104, 17, 120, 17, 136, 17, 152, 17, 168, 17, 184, 17, 200, 17, 13, 93, 176, 2, 16, 176, 22, 208, 176, 23, 208, 176, 24, 208, 176, 5, 16, 176, 25, 208, 176, 26, 208, 176, 24, 16, 176, 27, 208, 48, 49, 33, 33, 53, 51, 17, 35, 53, 51, 52, 54, 51, 50, 22, 23, 21, 38, 38, 35, 34, 6, 21, 33, 17, 51, 33, 17, 33, 17, 4, 94, 251, 162, 211, 211, 211, 199, 200, 47, 66, 22, 28, 64, 43, 131, 131, 2, 47, 211, 254, 164, 254, 90, 117, 2, 186, 117, 192, 199, 6, 4, 117, 4, 6, 129, 145, 252, 209, 2, 186, 253, 70, 0, 2, 0, 0, 0, 0, 4, 94, 5, 43, 0, 15, 0, 27, 0, 178, 176, 28, 47, 176, 29, 47, 176, 28, 16, 176, 3, 208, 176, 3, 47, 176, 7, 208, 176, 29, 16, 176, 14, 220, 177, 16, 12, 244, 176, 3, 16, 177, 27, 12, 244, 176, 23, 208, 0, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 23, 47, 27, 177, 23, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 2, 6, 244, 176, 23, 16, 177, 4, 6, 244, 176, 5, 208, 176, 2, 16, 176, 14, 208, 176, 15, 208, 176, 16, 208, 176, 10, 16, 177, 20, 6, 244, 180, 217, 20, 233, 20, 2, 93, 64, 27, 8, 20, 24, 20, 40, 20, 56, 20, 72, 20, 88, 20, 104, 20, 120, 20, 136, 20, 152, 20, 168, 20, 184, 20, 200, 20, 13, 93, 176, 5, 16, 176, 25, 208, 176, 26, 208, 176, 16, 16, 176, 27, 208, 48, 49, 33, 33, 53, 51, 17, 35, 53, 51, 52, 54, 51, 50, 22, 23, 17, 51, 33, 17, 38, 38, 35, 34, 6, 21, 51, 21, 35, 17, 4, 94, 251, 162, 211, 211, 211, 199, 200, 103, 135, 59, 211, 254, 164, 22, 76, 62, 131, 131, 211, 211, 117, 2, 186, 117, 192, 199, 18, 17, 251, 109, 4, 51, 4, 10, 129, 145, 117, 253, 70, 0, 0, 1, 0, 186, 0, 186, 2, 233, 5, 25, 0, 19, 0, 75, 179, 1, 14, 5, 4, 43, 176, 1, 16, 177, 4, 10, 244, 177, 0, 14, 244, 176, 4, 16, 176, 7, 208, 176, 5, 16, 176, 9, 208, 176, 4, 16, 176, 11, 208, 176, 1, 16, 176, 13, 208, 176, 13, 47, 176, 0, 16, 176, 15, 208, 176, 1, 16, 176, 17, 208, 0, 176, 2, 47, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 21, 62, 89, 48, 49, 1, 39, 23, 35, 55, 7, 53, 23, 17, 7, 53, 23, 39, 51, 7, 55, 21, 39, 17, 55, 2, 233, 237, 12, 110, 14, 238, 238, 238, 238, 14, 110, 12, 237, 237, 237, 1, 156, 14, 240, 240, 14, 110, 12, 1, 217, 14, 112, 14, 238, 238, 14, 112, 14, 254, 39, 12, 0, 1, 1, 117, 1, 129, 2, 47, 2, 59, 0, 3, 0, 9, 0, 176, 0, 47, 176, 2, 47, 48, 49, 1, 35, 53, 51, 2, 47, 186, 186, 1, 129, 186, 0, 1, 2, 46, 254, 142, 3, 110, 0, 187, 0, 12, 0, 65, 179, 1, 14, 0, 4, 43, 176, 0, 16, 176, 7, 208, 176, 1, 16, 177, 10, 13, 244, 176, 1, 16, 176, 14, 220, 0, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 17, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 15, 62, 89, 177, 0, 5, 244, 176, 7, 16, 177, 8, 6, 244, 48, 49, 37, 33, 21, 20, 14, 2, 35, 53, 50, 53, 53, 35, 2, 46, 1, 64, 41, 80, 119, 80, 203, 203, 187, 218, 69, 123, 92, 55, 116, 223, 31, 0, 2, 0, 0, 254, 142, 3, 109, 0, 187, 0, 12, 0, 25, 0, 121, 179, 1, 14, 0, 4, 43, 179, 14, 14, 13, 4, 43, 176, 0, 16, 176, 7, 208, 176, 1, 16, 177, 10, 13, 244, 176, 13, 16, 176, 20, 208, 176, 14, 16, 176, 27, 220, 0, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 17, 62, 89, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 17, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 15, 62, 89, 176, 0, 69, 88, 176, 24, 47, 27, 177, 24, 15, 62, 89, 176, 11, 16, 177, 0, 5, 244, 176, 7, 16, 177, 8, 6, 244, 176, 0, 16, 176, 13, 208, 176, 14, 208, 176, 8, 16, 176, 21, 208, 48, 49, 53, 33, 21, 20, 14, 2, 35, 53, 50, 53, 53, 35, 37, 33, 21, 20, 14, 2, 35, 53, 50, 53, 53, 35, 1, 63, 40, 80, 119, 80, 203, 203, 2, 47, 1, 62, 39, 80, 119, 80, 201, 201, 187, 218, 69, 123, 92, 55, 116, 223, 31, 187, 218, 69, 123, 92, 55, 116, 223, 31, 0, 0, 7, 255, 236, 255, 219, 4, 92, 5, 47, 0, 3, 0, 15, 0, 27, 0, 39, 0, 51, 0, 63, 0, 75, 1, 133, 179, 10, 10, 16, 4, 43, 179, 34, 10, 40, 4, 43, 179, 46, 9, 28, 4, 43, 179, 58, 10, 64, 4, 43, 179, 70, 9, 52, 4, 43, 64, 27, 6, 10, 22, 10, 38, 10, 54, 10, 70, 10, 86, 10, 102, 10, 118, 10, 134, 10, 150, 10, 166, 10, 182, 10, 198, 10, 13, 93, 180, 213, 10, 229, 10, 2, 93, 180, 182, 34, 198, 34, 2, 93, 64, 23, 6, 34, 22, 34, 38, 34, 54, 34, 70, 34, 86, 34, 102, 34, 118, 34, 134, 34, 150, 34, 166, 34, 11, 93, 180, 213, 34, 229, 34, 2, 93, 176, 34, 16, 176, 22, 208, 176, 22, 47, 180, 218, 28, 234, 28, 2, 93, 64, 27, 9, 28, 25, 28, 41, 28, 57, 28, 73, 28, 89, 28, 105, 28, 121, 28, 137, 28, 153, 28, 169, 28, 185, 28, 201, 28, 13, 93, 180, 218, 52, 234, 52, 2, 93, 64, 27, 9, 52, 25, 52, 41, 52, 57, 52, 73, 52, 89, 52, 105, 52, 121, 52, 137, 52, 153, 52, 169, 52, 185, 52, 201, 52, 13, 93, 180, 218, 64, 234, 64, 2, 93, 64, 27, 9, 64, 25, 64, 41, 64, 57, 64, 73, 64, 89, 64, 105, 64, 121, 64, 137, 64, 153, 64, 169, 64, 185, 64, 201, 64, 13, 93, 176, 70, 16, 176, 77, 220, 0, 176, 1, 47, 176, 49, 47, 176, 73, 47, 176, 0, 69, 88, 176, 19, 47, 27, 177, 19, 21, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 21, 62, 89, 179, 43, 1, 31, 4, 43, 179, 13, 1, 25, 4, 43, 176, 19, 16, 177, 7, 1, 244, 180, 217, 7, 233, 7, 2, 93, 64, 27, 8, 7, 24, 7, 40, 7, 56, 7, 72, 7, 88, 7, 104, 7, 120, 7, 136, 7, 152, 7, 168, 7, 184, 7, 200, 7, 13, 93, 176, 49, 16, 177, 37, 1, 244, 64, 27, 7, 37, 23, 37, 39, 37, 55, 37, 71, 37, 87, 37, 103, 37, 119, 37, 135, 37, 151, 37, 167, 37, 183, 37, 199, 37, 13, 93, 180, 214, 37, 230, 37, 2, 93, 176, 31, 16, 176, 55, 208, 176, 37, 16, 176, 61, 208, 176, 43, 16, 176, 67, 208, 48, 49, 1, 1, 39, 1, 5, 52, 38, 35, 34, 6, 21, 20, 22, 51, 50, 54, 37, 52, 54, 51, 50, 22, 21, 20, 6, 35, 34, 38, 1, 52, 38, 35, 34, 6, 21, 20, 22, 51, 50, 54, 37, 52, 54, 51, 50, 22, 21, 20, 6, 35, 34, 38, 37, 52, 38, 35, 34, 6, 21, 20, 22, 51, 50, 54, 37, 52, 54, 51, 50, 22, 21, 20, 6, 35, 34, 38, 2, 152, 253, 200, 102, 2, 61, 254, 221, 47, 51, 49, 49, 49, 49, 51, 47, 254, 216, 98, 102, 103, 98, 98, 103, 102, 98, 2, 98, 47, 51, 50, 49, 49, 50, 51, 47, 254, 215, 98, 103, 102, 98, 98, 102, 103, 98, 2, 207, 47, 52, 49, 49, 49, 49, 52, 47, 254, 215, 98, 102, 103, 98, 98, 103, 102, 98, 4, 252, 250, 223, 41, 5, 35, 244, 64, 86, 86, 64, 63, 86, 86, 63, 105, 147, 147, 105, 104, 148, 148, 253, 26, 64, 86, 86, 64, 63, 86, 86, 63, 105, 147, 147, 105, 104, 148, 148, 104, 64, 86, 86, 64, 63, 86, 86, 63, 105, 147, 147, 105, 104, 148, 148, 255, 255, 255, 197, 0, 0, 3, 227, 6, 203, 2, 38, 0, 34, 0, 0, 0, 7, 0, 214, 0, 0, 1, 115, 255, 255, 0, 49, 0, 0, 3, 115, 6, 203, 2, 38, 0, 38, 0, 0, 0, 7, 0, 214, 0, 0, 1, 115, 255, 255, 255, 197, 0, 0, 3, 227, 6, 199, 2, 38, 0, 34, 0, 0, 0, 7, 0, 139, 0, 0, 1, 115, 255, 255, 0, 49, 0, 0, 3, 115, 6, 140, 2, 38, 0, 38, 0, 0, 0, 7, 0, 140, 0, 0, 1, 115, 255, 255, 0, 49, 0, 0, 3, 115, 6, 201, 2, 38, 0, 38, 0, 0, 0, 7, 0, 65, 0, 0, 1, 117, 255, 255, 0, 186, 0, 0, 2, 233, 6, 199, 2, 38, 0, 42, 0, 0, 0, 7, 0, 139, 0, 0, 1, 115, 255, 255, 0, 170, 0, 0, 2, 252, 6, 203, 2, 38, 0, 42, 0, 0, 0, 7, 0, 214, 0, 0, 1, 115, 255, 255, 0, 186, 0, 0, 2, 233, 6, 140, 2, 38, 0, 42, 0, 0, 0, 7, 0, 140, 0, 0, 1, 115, 255, 255, 0, 186, 0, 0, 2, 233, 6, 201, 2, 38, 0, 42, 0, 0, 0, 7, 0, 65, 0, 0, 1, 117, 255, 255, 255, 223, 255, 233, 3, 199, 6, 199, 2, 38, 0, 48, 0, 0, 0, 7, 0, 139, 0, 0, 1, 115, 255, 255, 255, 223, 255, 233, 3, 199, 6, 203, 2, 38, 0, 48, 0, 0, 0, 7, 0, 214, 0, 0, 1, 115, 0, 2, 0, 2, 0, 0, 4, 104, 5, 63, 0, 4, 0, 48, 0, 32, 0, 176, 0, 47, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 15, 62, 89, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 15, 62, 89, 48, 49, 1, 20, 6, 7, 18, 1, 14, 3, 35, 34, 46, 2, 35, 34, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 51, 50, 62, 2, 51, 50, 23, 6, 21, 20, 30, 2, 3, 51, 147, 117, 2, 2, 59, 14, 57, 80, 100, 56, 30, 58, 57, 60, 30, 31, 57, 54, 53, 26, 68, 131, 103, 61, 39, 78, 121, 84, 36, 70, 62, 57, 29, 32, 62, 63, 64, 35, 147, 109, 146, 25, 47, 69, 5, 63, 149, 166, 10, 1, 10, 252, 102, 43, 122, 113, 82, 16, 21, 16, 16, 23, 16, 123, 186, 215, 92, 74, 150, 118, 76, 14, 19, 14, 17, 20, 16, 133, 123, 139, 43, 88, 78, 59, 255, 255, 255, 223, 255, 233, 3, 199, 6, 201, 2, 38, 0, 48, 0, 0, 0, 7, 0, 65, 0, 0, 1, 117, 255, 255, 0, 49, 255, 233, 3, 115, 6, 199, 2, 38, 0, 54, 0, 0, 0, 7, 0, 139, 0, 0, 1, 115, 255, 255, 0, 49, 255, 233, 3, 115, 6, 203, 2, 38, 0, 54, 0, 0, 0, 7, 0, 214, 0, 0, 1, 115, 255, 255, 0, 49, 255, 233, 3, 115, 6, 201, 2, 38, 0, 54, 0, 0, 0, 7, 0, 65, 0, 0, 1, 117, 0, 1, 0, 186, 0, 0, 2, 233, 3, 164, 0, 9, 0, 68, 179, 8, 14, 2, 4, 43, 176, 8, 16, 177, 3, 8, 244, 176, 2, 16, 176, 5, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 2, 6, 244, 176, 6, 16, 177, 4, 3, 244, 176, 2, 16, 176, 8, 208, 176, 9, 208, 48, 49, 33, 33, 53, 51, 17, 35, 53, 33, 17, 51, 2, 233, 253, 209, 211, 211, 1, 93, 210, 117, 2, 182, 121, 252, 209, 0, 0, 1, 0, 170, 3, 244, 2, 252, 5, 88, 0, 5, 0, 12, 0, 176, 1, 47, 176, 3, 47, 176, 5, 47, 48, 49, 1, 7, 39, 7, 39, 1, 2, 252, 53, 242, 246, 53, 1, 41, 4, 57, 67, 205, 207, 65, 1, 35, 0, 1, 0, 78, 4, 47, 3, 78, 5, 0, 0, 19, 0, 15, 0, 179, 17, 2, 2, 4, 43, 179, 12, 2, 7, 4, 43, 48, 49, 1, 6, 35, 34, 46, 2, 35, 34, 7, 39, 54, 51, 50, 30, 2, 51, 50, 55, 3, 78, 90, 156, 57, 72, 55, 54, 38, 103, 63, 80, 92, 154, 57, 72, 55, 53, 39, 102, 64, 4, 205, 158, 37, 43, 37, 111, 47, 156, 37, 43, 37, 113, 0, 0, 1, 0, 186, 4, 82, 2, 233, 4, 195, 0, 3, 0, 9, 0, 179, 3, 1, 0, 4, 43, 48, 49, 1, 33, 53, 33, 2, 233, 253, 209, 2, 47, 4, 82, 113, 0, 1, 0, 182, 4, 70, 2, 240, 5, 6, 0, 9, 0, 15, 0, 176, 5, 47, 176, 9, 47, 179, 7, 2, 2, 4, 43, 48, 49, 1, 6, 35, 34, 39, 55, 22, 51, 50, 55, 2, 240, 117, 168, 168, 117, 78, 94, 113, 113, 94, 4, 186, 116, 116, 76, 94, 94, 0, 0, 1, 1, 117, 4, 94, 2, 47, 5, 25, 0, 3, 0, 25, 179, 0, 8, 1, 4, 43, 0, 176, 0, 47, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 48, 49, 1, 35, 53, 51, 2, 47, 186, 186, 4, 94, 187, 0, 2, 0, 242, 4, 8, 2, 180, 5, 203, 0, 19, 0, 31, 0, 58, 179, 10, 10, 26, 4, 43, 180, 218, 26, 234, 26, 2, 93, 64, 27, 9, 26, 25, 26, 41, 26, 57, 26, 73, 26, 89, 26, 105, 26, 121, 26, 137, 26, 153, 26, 169, 26, 185, 26, 201, 26, 13, 93, 0, 179, 23, 2, 15, 4, 43, 179, 5, 2, 29, 4, 43, 48, 49, 19, 52, 62, 2, 51, 50, 30, 2, 21, 20, 14, 2, 35, 34, 46, 2, 55, 20, 22, 51, 50, 54, 53, 52, 38, 35, 34, 6, 242, 34, 62, 82, 47, 47, 82, 61, 35, 35, 61, 82, 47, 47, 82, 62, 34, 90, 80, 55, 55, 80, 80, 55, 55, 80, 4, 233, 48, 81, 62, 35, 35, 62, 81, 48, 47, 82, 61, 35, 35, 61, 82, 47, 55, 80, 80, 55, 56, 80, 80, 0, 0, 1, 0, 242, 254, 141, 2, 47, 0, 0, 0, 9, 0, 35, 179, 0, 13, 7, 4, 43, 0, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 17, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 15, 62, 89, 48, 49, 5, 20, 7, 6, 35, 53, 50, 53, 53, 51, 2, 47, 82, 88, 147, 202, 115, 41, 147, 88, 95, 117, 213, 41, 0, 0, 2, 0, 170, 4, 0, 3, 100, 5, 119, 0, 3, 0, 7, 0, 15, 0, 176, 2, 47, 176, 6, 47, 176, 0, 47, 176, 4, 47, 48, 49, 1, 35, 19, 51, 1, 35, 19, 51, 2, 170, 141, 141, 186, 253, 209, 139, 139, 187, 4, 0, 1, 119, 254, 137, 1, 119, 0, 0, 1, 2, 240, 254, 133, 3, 252, 0, 39, 0, 12, 0, 52, 179, 9, 10, 3, 4, 43, 64, 27, 6, 9, 22, 9, 38, 9, 54, 9, 70, 9, 86, 9, 102, 9, 118, 9, 134, 9, 150, 9, 166, 9, 182, 9, 198, 9, 13, 93, 180, 213, 9, 229, 9, 2, 93, 0, 176, 0, 47, 176, 6, 47, 48, 49, 1, 34, 38, 53, 52, 54, 55, 23, 6, 21, 20, 22, 51, 3, 252, 125, 143, 53, 39, 37, 50, 109, 80, 254, 133, 125, 102, 64, 92, 35, 39, 45, 76, 72, 96, 0, 0, 1, 0, 170, 3, 244, 2, 252, 5, 88, 0, 5, 0, 12, 0, 176, 1, 47, 176, 3, 47, 176, 5, 47, 48, 49, 9, 2, 55, 23, 55, 2, 252, 254, 215, 254, 215, 53, 246, 242, 5, 16, 254, 228, 1, 32, 68, 207, 203, 0, 0, 2, 1, 117, 0, 0, 2, 47, 5, 25, 0, 3, 0, 7, 0, 29, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 48, 49, 1, 3, 35, 3, 19, 35, 53, 51, 2, 45, 51, 82, 51, 186, 186, 186, 5, 25, 252, 86, 3, 170, 250, 231, 186, 0, 2, 0, 186, 3, 72, 2, 233, 5, 25, 0, 3, 0, 7, 0, 35, 0, 176, 1, 47, 176, 5, 47, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 21, 62, 89, 48, 49, 1, 3, 35, 3, 35, 3, 35, 3, 2, 233, 40, 103, 43, 186, 43, 101, 43, 5, 25, 254, 47, 1, 209, 254, 47, 1, 209, 0, 1, 1, 55, 254, 139, 2, 98, 255, 152, 0, 3, 0, 19, 0, 176, 0, 47, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 17, 62, 89, 48, 49, 5, 3, 35, 19, 2, 98, 172, 127, 84, 104, 254, 243, 1, 13, 0, 0, 2, 255, 217, 0, 145, 3, 205, 4, 133, 0, 33, 0, 53, 0, 133, 176, 54, 47, 176, 55, 47, 176, 4, 220, 176, 54, 16, 176, 22, 208, 176, 22, 47, 176, 4, 16, 177, 34, 8, 244, 180, 218, 34, 234, 34, 2, 93, 64, 27, 9, 34, 25, 34, 41, 34, 57, 34, 73, 34, 89, 34, 105, 34, 121, 34, 137, 34, 153, 34, 169, 34, 185, 34, 201, 34, 13, 93, 176, 22, 16, 177, 44, 12, 244, 64, 27, 6, 44, 22, 44, 38, 44, 54, 44, 70, 44, 86, 44, 102, 44, 118, 44, 134, 44, 150, 44, 166, 44, 182, 44, 198, 44, 13, 93, 180, 213, 44, 229, 44, 2, 93, 0, 176, 9, 47, 176, 17, 47, 176, 26, 47, 176, 33, 47, 179, 49, 3, 13, 4, 43, 179, 29, 6, 39, 4, 43, 48, 49, 1, 7, 22, 22, 21, 20, 6, 7, 23, 7, 39, 6, 6, 35, 34, 38, 39, 7, 39, 55, 38, 38, 53, 52, 55, 39, 55, 23, 54, 51, 50, 22, 23, 55, 3, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 62, 2, 3, 205, 117, 49, 53, 53, 47, 115, 80, 115, 61, 158, 92, 94, 158, 61, 115, 78, 115, 47, 49, 98, 117, 78, 117, 127, 184, 92, 158, 59, 117, 74, 47, 92, 131, 82, 82, 131, 90, 47, 47, 90, 131, 82, 82, 131, 92, 47, 4, 55, 116, 62, 160, 92, 92, 158, 61, 115, 78, 113, 47, 49, 53, 47, 117, 78, 117, 61, 156, 92, 185, 127, 118, 78, 119, 103, 54, 47, 117, 254, 4, 80, 135, 103, 57, 57, 103, 135, 80, 80, 135, 98, 55, 55, 98, 135, 0, 0, 2, 1, 141, 255, 70, 2, 23, 5, 211, 0, 3, 0, 7, 0, 27, 179, 0, 8, 1, 4, 43, 176, 0, 16, 176, 4, 208, 176, 1, 16, 176, 5, 208, 0, 176, 6, 47, 176, 0, 47, 48, 49, 5, 35, 17, 51, 53, 35, 17, 51, 2, 23, 138, 138, 138, 138, 186, 2, 233, 186, 2, 234, 0, 0, 1, 0, 0, 1, 164, 3, 164, 2, 25, 0, 3, 0, 9, 0, 179, 3, 6, 0, 4, 43, 48, 49, 1, 33, 53, 33, 3, 164, 252, 92, 3, 164, 1, 164, 117, 0, 1, 0, 27, 2, 233, 1, 193, 5, 37, 0, 27, 0, 96, 179, 10, 9, 4, 4, 43, 176, 10, 16, 176, 0, 208, 176, 0, 47, 176, 4, 16, 176, 8, 208, 176, 8, 47, 176, 4, 16, 176, 16, 208, 0, 176, 0, 69, 88, 176, 24, 47, 27, 177, 24, 21, 62, 89, 179, 8, 2, 11, 4, 43, 176, 24, 16, 177, 19, 2, 244, 180, 217, 19, 233, 19, 2, 93, 64, 27, 8, 19, 24, 19, 40, 19, 56, 19, 72, 19, 88, 19, 104, 19, 120, 19, 136, 19, 152, 19, 168, 19, 184, 19, 200, 19, 13, 93, 48, 49, 1, 20, 7, 6, 7, 6, 6, 7, 51, 53, 51, 21, 33, 53, 55, 54, 53, 52, 38, 35, 34, 21, 35, 52, 51, 50, 23, 22, 1, 193, 33, 17, 59, 25, 69, 45, 147, 98, 254, 107, 252, 47, 55, 41, 115, 102, 217, 84, 55, 66, 4, 127, 55, 45, 29, 53, 23, 63, 47, 73, 164, 78, 240, 47, 41, 35, 37, 138, 232, 41, 49, 0, 0, 1, 255, 254, 2, 221, 1, 178, 5, 35, 0, 33, 0, 147, 179, 30, 9, 18, 4, 43, 176, 30, 16, 176, 0, 208, 176, 0, 47, 180, 218, 18, 234, 18, 2, 93, 64, 27, 9, 18, 25, 18, 41, 18, 57, 18, 73, 18, 89, 18, 105, 18, 121, 18, 137, 18, 153, 18, 169, 18, 185, 18, 201, 18, 13, 93, 176, 18, 16, 176, 11, 208, 176, 11, 47, 178, 32, 18, 30, 17, 18, 57, 0, 176, 0, 69, 88, 176, 27, 47, 27, 177, 27, 21, 62, 89, 178, 16, 3, 3, 43, 176, 3, 16, 177, 8, 2, 244, 176, 27, 16, 177, 20, 2, 244, 180, 217, 20, 233, 20, 2, 93, 64, 27, 8, 20, 24, 20, 40, 20, 56, 20, 72, 20, 88, 20, 104, 20, 120, 20, 136, 20, 152, 20, 168, 20, 184, 20, 200, 20, 13, 93, 178, 32, 3, 16, 17, 18, 57, 48, 49, 1, 20, 6, 35, 34, 39, 55, 22, 51, 50, 54, 53, 52, 39, 38, 35, 53, 50, 53, 52, 35, 34, 21, 35, 52, 55, 54, 51, 50, 22, 21, 20, 7, 22, 1, 178, 115, 92, 204, 25, 106, 15, 108, 41, 58, 33, 17, 67, 106, 88, 112, 105, 64, 63, 90, 92, 105, 66, 76, 3, 141, 69, 107, 203, 14, 123, 50, 32, 56, 10, 10, 100, 66, 74, 123, 106, 56, 51, 92, 72, 76, 35, 53, 0, 1, 0, 0, 2, 233, 1, 133, 5, 25, 0, 16, 0, 40, 179, 15, 9, 3, 4, 43, 176, 3, 16, 176, 13, 208, 0, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 21, 62, 89, 179, 16, 2, 0, 4, 43, 176, 16, 16, 176, 2, 208, 48, 49, 1, 33, 53, 51, 17, 6, 6, 35, 53, 50, 62, 2, 53, 51, 17, 51, 1, 133, 254, 223, 90, 20, 96, 74, 31, 67, 56, 36, 109, 90, 2, 233, 91, 1, 34, 51, 74, 99, 28, 54, 75, 48, 254, 43, 0, 4, 0, 0, 255, 229, 3, 164, 5, 55, 0, 3, 0, 20, 0, 35, 0, 38, 0, 171, 176, 39, 47, 176, 40, 47, 176, 34, 220, 176, 3, 208, 176, 3, 47, 176, 39, 16, 176, 7, 208, 176, 7, 47, 176, 17, 208, 176, 7, 16, 177, 19, 9, 244, 176, 34, 16, 177, 24, 9, 244, 176, 28, 208, 176, 28, 47, 176, 34, 16, 176, 29, 208, 176, 24, 16, 176, 36, 208, 178, 37, 7, 34, 17, 18, 57, 178, 38, 7, 34, 17, 18, 57, 0, 176, 3, 47, 176, 0, 69, 88, 176, 17, 47, 27, 177, 17, 21, 62, 89, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 15, 62, 89, 176, 0, 69, 88, 176, 21, 47, 27, 177, 21, 15, 62, 89, 179, 36, 2, 25, 4, 43, 179, 20, 2, 4, 4, 43, 176, 20, 16, 176, 6, 208, 178, 8, 1, 3, 17, 18, 57, 176, 21, 16, 177, 23, 2, 244, 176, 36, 16, 176, 30, 208, 176, 25, 16, 176, 32, 208, 176, 23, 16, 176, 34, 208, 176, 35, 208, 48, 49, 1, 1, 39, 1, 1, 33, 53, 51, 17, 6, 6, 35, 53, 50, 62, 2, 53, 51, 17, 51, 1, 33, 53, 51, 53, 35, 53, 19, 51, 17, 51, 21, 35, 21, 51, 39, 53, 7, 3, 164, 252, 188, 94, 3, 70, 254, 61, 254, 223, 90, 20, 96, 74, 31, 67, 56, 36, 109, 90, 2, 31, 254, 225, 92, 250, 244, 111, 90, 90, 90, 195, 119, 4, 248, 250, 237, 60, 5, 22, 253, 178, 91, 1, 34, 51, 74, 99, 28, 54, 75, 48, 254, 43, 252, 188, 90, 60, 75, 1, 78, 254, 195, 92, 60, 152, 159, 159, 0, 3, 0, 0, 255, 229, 3, 166, 5, 55, 0, 3, 0, 31, 0, 48, 0, 136, 176, 49, 47, 176, 50, 47, 176, 14, 220, 176, 0, 208, 176, 14, 16, 176, 4, 208, 176, 4, 47, 176, 14, 16, 177, 8, 9, 244, 176, 12, 208, 176, 12, 47, 176, 8, 16, 176, 20, 208, 176, 49, 16, 176, 35, 208, 176, 35, 47, 176, 45, 208, 176, 35, 16, 177, 47, 9, 244, 0, 176, 3, 47, 176, 0, 69, 88, 176, 45, 47, 27, 177, 45, 21, 62, 89, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 15, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 15, 62, 89, 179, 28, 2, 23, 4, 43, 179, 48, 2, 32, 4, 43, 176, 15, 16, 177, 11, 2, 244, 176, 48, 16, 176, 34, 208, 178, 36, 1, 3, 17, 18, 57, 48, 49, 1, 1, 39, 1, 19, 20, 7, 6, 7, 6, 6, 7, 51, 53, 51, 21, 33, 53, 55, 54, 53, 52, 38, 35, 34, 21, 35, 52, 51, 50, 23, 22, 1, 33, 53, 51, 17, 6, 6, 35, 53, 50, 62, 2, 53, 51, 17, 51, 3, 164, 252, 188, 94, 3, 70, 94, 33, 16, 60, 24, 70, 45, 148, 98, 254, 106, 252, 47, 55, 41, 115, 102, 217, 84, 55, 66, 253, 223, 254, 223, 90, 20, 96, 74, 31, 67, 56, 36, 109, 90, 4, 248, 250, 237, 60, 5, 22, 252, 95, 56, 45, 29, 53, 22, 64, 47, 74, 164, 78, 239, 48, 41, 34, 37, 137, 231, 41, 49, 1, 8, 91, 1, 34, 51, 74, 99, 28, 54, 75, 48, 254, 43, 0, 4, 255, 254, 255, 229, 3, 164, 5, 55, 0, 33, 0, 37, 0, 52, 0, 55, 1, 15, 176, 56, 47, 176, 57, 47, 176, 56, 16, 176, 18, 208, 176, 18, 47, 177, 30, 9, 244, 64, 27, 6, 30, 22, 30, 38, 30, 54, 30, 70, 30, 86, 30, 102, 30, 118, 30, 134, 30, 150, 30, 166, 30, 182, 30, 198, 30, 13, 93, 180, 213, 30, 229, 30, 2, 93, 176, 0, 208, 176, 0, 47, 176, 18, 16, 176, 11, 208, 176, 11, 47, 178, 32, 18, 30, 17, 18, 57, 176, 57, 16, 176, 51, 220, 176, 37, 208, 176, 37, 47, 176, 51, 16, 177, 41, 9, 244, 176, 45, 208, 176, 45, 47, 176, 51, 16, 176, 46, 208, 176, 41, 16, 176, 53, 208, 178, 54, 18, 51, 17, 18, 57, 178, 55, 18, 51, 17, 18, 57, 0, 176, 37, 47, 176, 0, 69, 88, 176, 27, 47, 27, 177, 27, 21, 62, 89, 176, 0, 69, 88, 176, 35, 47, 27, 177, 35, 15, 62, 89, 176, 0, 69, 88, 176, 38, 47, 27, 177, 38, 15, 62, 89, 179, 53, 2, 42, 4, 43, 179, 8, 2, 3, 4, 43, 176, 3, 16, 176, 16, 220, 176, 27, 16, 177, 20, 2, 244, 180, 217, 20, 233, 20, 2, 93, 64, 27, 8, 20, 24, 20, 40, 20, 56, 20, 72, 20, 88, 20, 104, 20, 120, 20, 136, 20, 152, 20, 168, 20, 184, 20, 200, 20, 13, 93, 178, 32, 3, 16, 17, 18, 57, 176, 38, 16, 177, 40, 2, 244, 176, 53, 16, 176, 47, 208, 176, 42, 16, 176, 49, 208, 176, 40, 16, 176, 51, 208, 176, 52, 208, 48, 49, 1, 20, 6, 35, 34, 39, 55, 22, 51, 50, 54, 53, 52, 39, 38, 35, 53, 50, 53, 52, 35, 34, 21, 35, 52, 55, 54, 51, 50, 22, 21, 20, 7, 22, 1, 1, 39, 1, 19, 33, 53, 51, 53, 35, 53, 19, 51, 17, 51, 21, 35, 21, 51, 39, 53, 7, 1, 178, 115, 92, 204, 25, 106, 15, 108, 41, 58, 33, 17, 67, 106, 88, 112, 105, 64, 63, 90, 92, 105, 66, 76, 1, 242, 252, 188, 94, 3, 70, 92, 254, 225, 92, 250, 244, 111, 90, 90, 90, 195, 119, 3, 141, 69, 107, 203, 14, 123, 50, 32, 56, 10, 10, 100, 66, 74, 123, 106, 56, 51, 92, 72, 76, 35, 53, 1, 29, 250, 237, 60, 5, 22, 250, 201, 90, 60, 75, 1, 78, 254, 195, 92, 60, 152, 159, 159, 0, 2, 255, 139, 0, 0, 3, 207, 5, 25, 0, 16, 0, 29, 0, 136, 176, 30, 47, 176, 31, 47, 176, 0, 220, 176, 30, 16, 176, 6, 208, 176, 6, 47, 176, 10, 208, 176, 0, 16, 177, 17, 12, 244, 180, 218, 17, 234, 17, 2, 93, 64, 27, 9, 17, 25, 17, 41, 17, 57, 17, 73, 17, 89, 17, 105, 17, 121, 17, 137, 17, 153, 17, 169, 17, 185, 17, 201, 17, 13, 93, 176, 6, 16, 177, 26, 12, 244, 176, 21, 208, 0, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 179, 10, 6, 7, 4, 43, 176, 11, 16, 177, 20, 6, 244, 176, 10, 16, 176, 22, 208, 176, 7, 16, 176, 24, 208, 176, 5, 16, 177, 26, 6, 244, 48, 49, 1, 20, 14, 2, 35, 33, 17, 35, 53, 51, 17, 33, 50, 30, 2, 7, 16, 2, 35, 33, 17, 51, 21, 35, 17, 33, 50, 18, 3, 207, 60, 122, 191, 129, 254, 88, 166, 166, 1, 168, 137, 191, 121, 53, 137, 193, 172, 254, 225, 254, 254, 1, 31, 172, 193, 2, 141, 135, 237, 179, 102, 2, 94, 117, 2, 70, 107, 180, 236, 129, 1, 0, 1, 23, 254, 47, 117, 254, 23, 1, 24, 0, 0, 1, 0, 98, 0, 109, 3, 68, 3, 78, 0, 11, 0, 15, 0, 176, 9, 47, 176, 11, 47, 176, 3, 47, 176, 5, 47, 48, 49, 9, 2, 7, 1, 1, 39, 1, 1, 55, 1, 1, 3, 68, 254, 221, 1, 35, 80, 254, 223, 254, 221, 78, 1, 33, 254, 223, 78, 1, 35, 1, 33, 3, 0, 254, 222, 254, 221, 78, 1, 35, 254, 221, 78, 1, 35, 1, 34, 78, 254, 221, 1, 35, 255, 255, 255, 236, 0, 0, 3, 184, 6, 199, 2, 38, 0, 58, 0, 0, 0, 7, 0, 139, 0, 0, 1, 115, 0, 2, 0, 49, 0, 0, 3, 162, 5, 25, 0, 10, 0, 18, 0, 116, 176, 19, 47, 176, 20, 47, 176, 0, 220, 176, 19, 16, 176, 5, 208, 176, 5, 47, 177, 4, 12, 244, 176, 7, 208, 176, 0, 16, 177, 11, 8, 244, 180, 218, 11, 234, 11, 2, 93, 64, 27, 9, 11, 25, 11, 41, 11, 57, 11, 73, 11, 89, 11, 105, 11, 121, 11, 137, 11, 153, 11, 169, 11, 185, 11, 201, 11, 13, 93, 176, 4, 16, 176, 14, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 179, 16, 6, 2, 4, 43, 179, 9, 6, 13, 4, 43, 48, 49, 1, 16, 33, 35, 17, 35, 17, 51, 17, 51, 32, 3, 52, 33, 35, 17, 51, 50, 54, 3, 162, 254, 12, 244, 137, 137, 244, 1, 244, 139, 254, 151, 244, 244, 180, 181, 2, 152, 254, 139, 254, 221, 5, 25, 254, 243, 254, 140, 254, 254, 0, 131, 0, 2, 255, 236, 255, 233, 3, 182, 5, 92, 0, 32, 0, 48, 0, 194, 176, 49, 47, 176, 50, 47, 176, 49, 16, 176, 23, 208, 176, 23, 47, 176, 50, 16, 176, 15, 220, 178, 1, 23, 15, 17, 18, 57, 178, 28, 23, 15, 17, 18, 57, 177, 33, 12, 244, 180, 218, 33, 234, 33, 2, 93, 64, 27, 9, 33, 25, 33, 41, 33, 57, 33, 73, 33, 89, 33, 105, 33, 121, 33, 137, 33, 153, 33, 169, 33, 185, 33, 201, 33, 13, 93, 176, 23, 16, 177, 41, 12, 244, 64, 27, 6, 41, 22, 41, 38, 41, 54, 41, 70, 41, 86, 41, 102, 41, 118, 41, 134, 41, 150, 41, 166, 41, 182, 41, 198, 41, 13, 93, 180, 213, 41, 229, 41, 2, 93, 0, 176, 8, 47, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 15, 62, 89, 178, 1, 20, 8, 17, 18, 57, 178, 28, 20, 8, 17, 18, 57, 177, 44, 6, 244, 64, 27, 7, 44, 23, 44, 39, 44, 55, 44, 71, 44, 87, 44, 103, 44, 119, 44, 135, 44, 151, 44, 167, 44, 183, 44, 199, 44, 13, 93, 180, 214, 44, 230, 44, 2, 93, 48, 49, 19, 55, 38, 38, 39, 55, 22, 23, 55, 23, 7, 30, 3, 21, 20, 14, 2, 35, 34, 38, 53, 52, 54, 54, 36, 55, 38, 38, 39, 7, 1, 52, 38, 39, 14, 3, 21, 20, 22, 51, 50, 62, 2, 233, 160, 41, 86, 47, 45, 117, 102, 144, 78, 121, 80, 135, 96, 55, 71, 136, 192, 121, 205, 245, 116, 203, 1, 16, 156, 41, 121, 71, 183, 1, 246, 16, 17, 145, 244, 176, 98, 168, 145, 92, 142, 98, 51, 3, 209, 160, 22, 35, 16, 117, 45, 53, 143, 80, 123, 51, 127, 155, 187, 112, 129, 207, 146, 78, 193, 184, 105, 162, 122, 84, 25, 70, 110, 47, 182, 254, 152, 55, 100, 47, 16, 70, 98, 125, 76, 116, 144, 64, 116, 164, 255, 255, 255, 225, 254, 117, 3, 193, 5, 84, 2, 38, 0, 90, 0, 0, 0, 6, 0, 139, 0, 0, 0, 2, 0, 49, 254, 139, 3, 166, 5, 25, 0, 18, 0, 33, 0, 236, 176, 34, 47, 176, 35, 47, 176, 0, 220, 176, 34, 16, 176, 9, 208, 176, 9, 47, 177, 8, 12, 244, 176, 11, 208, 178, 12, 9, 0, 17, 18, 57, 176, 0, 16, 177, 19, 8, 244, 180, 218, 19, 234, 19, 2, 93, 64, 27, 9, 19, 25, 19, 41, 19, 57, 19, 73, 19, 89, 19, 105, 19, 121, 19, 137, 19, 153, 19, 169, 19, 185, 19, 201, 19, 13, 93, 176, 8, 16, 176, 26, 208, 0, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 21, 62, 89, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 19, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 17, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 177, 29, 1, 244, 64, 27, 7, 29, 23, 29, 39, 29, 55, 29, 71, 29, 87, 29, 103, 29, 119, 29, 135, 29, 151, 29, 167, 29, 183, 29, 199, 29, 13, 93, 180, 214, 29, 230, 29, 2, 93, 178, 7, 5, 29, 17, 18, 57, 176, 14, 16, 177, 24, 1, 244, 180, 217, 24, 233, 24, 2, 93, 64, 27, 8, 24, 24, 24, 40, 24, 56, 24, 72, 24, 88, 24, 104, 24, 120, 24, 136, 24, 152, 24, 168, 24, 184, 24, 200, 24, 13, 93, 178, 12, 14, 24, 17, 18, 57, 48, 49, 1, 20, 14, 2, 35, 34, 39, 17, 35, 17, 51, 17, 54, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 7, 17, 22, 51, 50, 62, 2, 3, 166, 66, 120, 177, 110, 150, 125, 137, 137, 125, 150, 106, 176, 123, 68, 139, 43, 82, 127, 82, 156, 119, 119, 156, 82, 127, 82, 43, 1, 209, 109, 178, 131, 72, 99, 254, 65, 6, 142, 254, 63, 98, 69, 127, 180, 113, 82, 137, 100, 58, 127, 254, 12, 129, 57, 103, 139, 255, 255, 255, 197, 0, 0, 3, 227, 6, 54, 2, 38, 0, 34, 0, 0, 0, 7, 0, 216, 0, 0, 1, 115, 255, 255, 0, 0, 255, 233, 3, 117, 4, 194, 2, 38, 0, 66, 2, 0, 0, 6, 0, 216, 0, 255, 255, 255, 255, 197, 0, 0, 3, 227, 6, 121, 2, 38, 0, 34, 0, 0, 0, 7, 0, 217, 0, 0, 1, 115, 255, 255, 0, 0, 255, 233, 3, 117, 5, 5, 2, 38, 0, 66, 2, 0, 0, 6, 0, 217, 0, 255, 0, 2, 255, 197, 254, 133, 4, 111, 5, 25, 0, 19, 0, 22, 0, 127, 179, 16, 10, 3, 4, 43, 180, 218, 3, 234, 3, 2, 93, 64, 27, 9, 3, 25, 3, 41, 3, 57, 3, 73, 3, 89, 3, 105, 3, 121, 3, 137, 3, 153, 3, 169, 3, 185, 3, 201, 3, 13, 93, 178, 6, 3, 16, 17, 18, 57, 176, 16, 16, 176, 24, 220, 0, 176, 0, 47, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 15, 62, 89, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 15, 62, 89, 179, 20, 3, 8, 4, 43, 178, 11, 0, 12, 17, 18, 57, 48, 49, 1, 34, 38, 53, 52, 54, 55, 35, 3, 33, 3, 35, 1, 51, 1, 6, 21, 20, 22, 51, 1, 3, 3, 4, 111, 125, 144, 31, 23, 72, 123, 253, 252, 121, 147, 1, 178, 186, 1, 178, 49, 109, 80, 254, 63, 219, 219, 254, 133, 125, 102, 48, 75, 29, 1, 117, 254, 139, 5, 25, 250, 231, 45, 76, 72, 96, 3, 15, 2, 161, 253, 95, 0, 0, 2, 255, 254, 254, 133, 3, 252, 3, 186, 0, 51, 0, 68, 0, 245, 179, 66, 12, 23, 4, 43, 179, 3, 10, 14, 4, 43, 176, 14, 16, 177, 0, 8, 244, 176, 14, 16, 176, 10, 208, 176, 10, 47, 176, 14, 16, 176, 33, 208, 176, 14, 16, 176, 57, 208, 64, 27, 6, 66, 22, 66, 38, 66, 54, 66, 70, 66, 86, 66, 102, 66, 118, 66, 134, 66, 150, 66, 166, 66, 182, 66, 198, 66, 13, 93, 180, 213, 66, 229, 66, 2, 93, 0, 176, 7, 47, 176, 0, 69, 88, 176, 46, 47, 27, 177, 46, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 15, 62, 89, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 15, 62, 89, 179, 28, 6, 61, 4, 43, 178, 15, 7, 46, 17, 18, 57, 176, 46, 16, 177, 39, 6, 244, 180, 217, 39, 233, 39, 2, 93, 64, 27, 8, 39, 24, 39, 40, 39, 56, 39, 72, 39, 88, 39, 104, 39, 120, 39, 136, 39, 152, 39, 168, 39, 184, 39, 200, 39, 13, 93, 176, 20, 16, 177, 52, 6, 244, 64, 27, 7, 52, 23, 52, 39, 52, 55, 52, 71, 52, 87, 52, 103, 52, 119, 52, 135, 52, 151, 52, 167, 52, 183, 52, 199, 52, 13, 93, 180, 214, 52, 230, 52, 2, 93, 176, 61, 16, 176, 58, 208, 176, 58, 47, 48, 49, 33, 6, 6, 21, 20, 22, 51, 21, 34, 38, 53, 52, 54, 55, 35, 53, 14, 3, 35, 34, 38, 53, 52, 62, 2, 51, 50, 30, 2, 23, 53, 52, 46, 2, 35, 34, 6, 7, 39, 54, 54, 51, 50, 30, 2, 21, 1, 50, 62, 2, 53, 53, 38, 38, 35, 34, 14, 2, 21, 20, 22, 3, 115, 23, 29, 109, 80, 125, 143, 30, 23, 60, 36, 91, 100, 100, 45, 185, 190, 88, 143, 185, 96, 37, 59, 53, 54, 32, 59, 86, 94, 33, 104, 176, 76, 62, 84, 209, 125, 76, 147, 117, 70, 254, 2, 86, 137, 96, 53, 67, 123, 45, 74, 137, 102, 62, 115, 23, 63, 35, 72, 96, 90, 125, 102, 48, 75, 29, 156, 45, 68, 43, 23, 142, 133, 88, 119, 69, 31, 2, 4, 6, 4, 67, 68, 88, 51, 21, 56, 47, 103, 51, 65, 39, 81, 132, 92, 253, 252, 51, 76, 86, 35, 88, 10, 2, 20, 45, 72, 53, 59, 99, 0, 255, 255, 255, 236, 255, 233, 3, 172, 6, 199, 2, 38, 0, 36, 0, 0, 0, 7, 0, 139, 0, 0, 1, 115, 255, 255, 0, 0, 255, 233, 3, 129, 5, 83, 2, 38, 0, 68, 0, 0, 0, 6, 0, 139, 0, 255, 255, 255, 255, 236, 255, 233, 3, 172, 6, 203, 2, 38, 0, 36, 0, 0, 0, 7, 0, 214, 0, 0, 1, 115, 255, 255, 0, 0, 255, 233, 3, 129, 5, 87, 2, 38, 0, 68, 0, 0, 0, 6, 0, 214, 0, 255, 255, 255, 255, 236, 255, 233, 3, 172, 6, 140, 2, 38, 0, 36, 0, 0, 0, 7, 0, 218, 0, 0, 1, 115, 255, 255, 0, 0, 255, 233, 3, 129, 5, 25, 2, 38, 0, 68, 0, 0, 0, 6, 0, 218, 0, 0, 255, 255, 255, 236, 255, 233, 3, 172, 6, 203, 2, 38, 0, 36, 0, 0, 0, 7, 0, 223, 0, 0, 1, 115, 255, 255, 0, 0, 255, 233, 3, 129, 5, 87, 2, 38, 0, 68, 0, 0, 0, 6, 0, 223, 0, 255, 255, 255, 0, 49, 0, 0, 3, 207, 6, 207, 2, 38, 0, 37, 0, 0, 0, 7, 0, 223, 0, 0, 1, 119, 0, 3, 0, 0, 255, 233, 4, 41, 5, 25, 0, 22, 0, 38, 0, 42, 0, 217, 176, 43, 47, 176, 44, 47, 176, 0, 220, 177, 1, 12, 244, 176, 43, 16, 176, 10, 208, 176, 10, 47, 176, 1, 16, 176, 18, 208, 176, 1, 16, 176, 23, 208, 176, 10, 16, 177, 31, 12, 244, 64, 27, 6, 31, 22, 31, 38, 31, 54, 31, 70, 31, 86, 31, 102, 31, 118, 31, 134, 31, 150, 31, 166, 31, 182, 31, 198, 31, 13, 93, 180, 213, 31, 229, 31, 2, 93, 0, 176, 18, 47, 176, 26, 47, 176, 40, 47, 176, 0, 69, 88, 176, 21, 47, 27, 177, 21, 21, 62, 89, 176, 0, 69, 88, 176, 39, 47, 27, 177, 39, 21, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 177, 36, 6, 244, 64, 27, 7, 36, 23, 36, 39, 36, 55, 36, 71, 36, 87, 36, 103, 36, 119, 36, 135, 36, 151, 36, 167, 36, 183, 36, 199, 36, 13, 93, 180, 214, 36, 230, 36, 2, 93, 178, 2, 5, 36, 17, 18, 57, 176, 21, 16, 177, 19, 6, 244, 176, 15, 16, 177, 41, 6, 244, 48, 49, 33, 35, 53, 6, 6, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 22, 23, 17, 35, 53, 33, 3, 38, 38, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 55, 1, 3, 35, 17, 2, 233, 137, 47, 117, 59, 90, 143, 99, 53, 53, 99, 143, 90, 59, 117, 47, 186, 1, 67, 137, 47, 108, 60, 61, 96, 66, 35, 35, 66, 96, 61, 123, 92, 1, 201, 84, 101, 86, 53, 56, 72, 129, 180, 107, 106, 181, 129, 73, 53, 53, 1, 84, 117, 253, 178, 65, 58, 58, 100, 135, 80, 80, 135, 100, 58, 125, 4, 63, 254, 47, 1, 209, 0, 255, 255, 255, 139, 0, 0, 3, 207, 5, 25, 2, 6, 0, 236, 0, 0, 0, 2, 255, 254, 255, 233, 4, 45, 5, 25, 0, 28, 0, 44, 1, 9, 176, 45, 47, 176, 46, 47, 176, 2, 220, 177, 3, 8, 244, 176, 45, 16, 176, 12, 208, 176, 12, 47, 176, 3, 16, 176, 20, 208, 176, 3, 16, 176, 24, 208, 176, 2, 16, 176, 26, 208, 176, 3, 16, 176, 29, 208, 176, 12, 16, 177, 37, 12, 244, 64, 27, 6, 37, 22, 37, 38, 37, 54, 37, 70, 37, 86, 37, 102, 37, 118, 37, 134, 37, 150, 37, 166, 37, 182, 37, 198, 37, 13, 93, 180, 213, 37, 229, 37, 2, 93, 0, 176, 0, 69, 88, 176, 25, 47, 27, 177, 25, 21, 62, 89, 176, 0, 69, 88, 176, 17, 47, 27, 177, 17, 19, 62, 89, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 15, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 15, 62, 89, 179, 28, 6, 0, 4, 43, 176, 7, 16, 177, 42, 6, 244, 64, 27, 7, 42, 23, 42, 39, 42, 55, 42, 71, 42, 87, 42, 103, 42, 119, 42, 135, 42, 151, 42, 167, 42, 183, 42, 199, 42, 13, 93, 180, 214, 42, 230, 42, 2, 93, 178, 4, 7, 42, 17, 18, 57, 176, 17, 16, 177, 32, 6, 244, 180, 217, 32, 233, 32, 2, 93, 64, 27, 8, 32, 24, 32, 40, 32, 56, 32, 72, 32, 88, 32, 104, 32, 120, 32, 136, 32, 152, 32, 168, 32, 184, 32, 200, 32, 13, 93, 178, 20, 17, 32, 17, 18, 57, 176, 0, 16, 176, 21, 208, 176, 28, 16, 176, 23, 208, 48, 49, 1, 35, 17, 35, 53, 6, 6, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 22, 23, 53, 35, 53, 51, 53, 51, 21, 51, 1, 38, 38, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 55, 4, 45, 186, 138, 59, 141, 74, 111, 176, 121, 65, 65, 121, 176, 111, 74, 141, 59, 186, 186, 138, 186, 254, 188, 59, 139, 78, 82, 125, 84, 43, 43, 84, 125, 82, 158, 118, 3, 233, 252, 23, 86, 53, 56, 72, 129, 180, 107, 106, 181, 129, 73, 53, 53, 153, 117, 187, 187, 254, 109, 65, 58, 58, 100, 135, 80, 80, 135, 100, 58, 125, 0, 255, 255, 0, 49, 0, 0, 3, 115, 6, 54, 2, 38, 0, 38, 0, 0, 0, 7, 0, 216, 0, 0, 1, 115, 255, 255, 255, 252, 255, 233, 3, 174, 4, 194, 2, 38, 0, 70, 0, 0, 0, 6, 0, 216, 0, 255, 255, 255, 0, 49, 0, 0, 3, 115, 6, 121, 2, 38, 0, 38, 0, 0, 0, 7, 0, 217, 0, 0, 1, 115, 255, 255, 255, 252, 255, 233, 3, 174, 5, 5, 2, 38, 0, 70, 0, 0, 0, 6, 0, 217, 0, 255, 255, 255, 0, 49, 0, 0, 3, 115, 6, 140, 2, 38, 0, 38, 0, 0, 0, 7, 0, 218, 0, 0, 1, 115, 255, 255, 255, 252, 255, 233, 3, 174, 5, 25, 2, 38, 0, 70, 0, 0, 0, 6, 0, 218, 0, 0, 0, 1, 0, 49, 254, 133, 4, 0, 5, 25, 0, 24, 0, 123, 179, 16, 12, 7, 4, 43, 179, 21, 10, 3, 4, 43, 180, 218, 3, 234, 3, 2, 93, 64, 27, 9, 3, 25, 3, 41, 3, 57, 3, 73, 3, 89, 3, 105, 3, 121, 3, 137, 3, 153, 3, 169, 3, 185, 3, 201, 3, 13, 93, 176, 16, 16, 176, 11, 208, 0, 176, 0, 47, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 15, 62, 89, 179, 13, 6, 14, 4, 43, 176, 8, 16, 177, 10, 6, 244, 176, 6, 16, 177, 16, 6, 244, 176, 17, 208, 48, 49, 1, 34, 38, 53, 52, 54, 55, 33, 17, 33, 21, 33, 17, 33, 21, 33, 17, 33, 21, 23, 6, 21, 20, 22, 51, 4, 0, 125, 143, 30, 23, 253, 8, 3, 66, 253, 71, 2, 2, 253, 254, 2, 185, 2, 49, 108, 80, 254, 133, 125, 102, 48, 75, 29, 5, 25, 117, 254, 45, 117, 254, 25, 115, 2, 45, 76, 72, 96, 0, 0, 2, 255, 252, 254, 133, 3, 174, 3, 186, 0, 39, 0, 48, 0, 189, 179, 3, 10, 10, 4, 43, 180, 218, 10, 234, 10, 2, 93, 64, 27, 9, 10, 25, 10, 41, 10, 57, 10, 73, 10, 89, 10, 105, 10, 121, 10, 137, 10, 153, 10, 169, 10, 185, 10, 201, 10, 13, 93, 178, 13, 10, 3, 17, 18, 57, 0, 176, 7, 47, 176, 0, 69, 88, 176, 25, 47, 27, 177, 25, 19, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 15, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 15, 62, 89, 179, 40, 6, 30, 4, 43, 176, 15, 16, 177, 34, 6, 244, 64, 27, 7, 34, 23, 34, 39, 34, 55, 34, 71, 34, 87, 34, 103, 34, 119, 34, 135, 34, 151, 34, 167, 34, 183, 34, 199, 34, 13, 93, 180, 214, 34, 230, 34, 2, 93, 176, 25, 16, 177, 43, 6, 244, 180, 217, 43, 233, 43, 2, 93, 64, 27, 8, 43, 24, 43, 40, 43, 56, 43, 72, 43, 88, 43, 104, 43, 120, 43, 136, 43, 152, 43, 168, 43, 184, 43, 200, 43, 13, 93, 48, 49, 37, 6, 6, 21, 20, 22, 51, 21, 34, 38, 53, 52, 54, 55, 6, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 21, 33, 22, 22, 51, 50, 54, 55, 23, 6, 3, 38, 38, 35, 34, 14, 2, 7, 2, 147, 22, 25, 109, 80, 125, 144, 23, 18, 43, 43, 108, 180, 131, 72, 65, 123, 176, 109, 119, 178, 119, 57, 252, 219, 15, 186, 149, 105, 164, 41, 96, 94, 2, 23, 176, 129, 66, 112, 86, 58, 8, 2, 22, 66, 35, 72, 96, 90, 125, 102, 41, 66, 29, 7, 72, 129, 178, 109, 106, 179, 131, 73, 80, 141, 196, 119, 148, 176, 86, 64, 66, 131, 1, 232, 153, 150, 43, 80, 113, 67, 255, 255, 0, 49, 0, 0, 3, 115, 6, 203, 2, 38, 0, 38, 0, 0, 0, 7, 0, 223, 0, 0, 1, 115, 255, 255, 255, 252, 255, 233, 3, 174, 5, 87, 2, 38, 0, 70, 0, 0, 0, 6, 0, 223, 0, 255, 255, 255, 255, 236, 255, 233, 3, 215, 6, 203, 2, 38, 0, 40, 0, 0, 0, 7, 0, 214, 0, 0, 1, 115, 255, 255, 255, 254, 254, 117, 3, 115, 5, 87, 2, 38, 0, 72, 0, 0, 0, 6, 0, 214, 0, 255, 255, 255, 255, 236, 255, 233, 3, 215, 6, 121, 2, 38, 0, 40, 0, 0, 0, 7, 0, 217, 0, 0, 1, 115, 255, 255, 255, 254, 254, 117, 3, 115, 5, 5, 2, 38, 0, 72, 0, 0, 0, 6, 0, 217, 0, 255, 255, 255, 255, 236, 255, 233, 3, 215, 6, 140, 2, 38, 0, 40, 0, 0, 0, 7, 0, 218, 0, 0, 1, 115, 255, 255, 255, 254, 254, 117, 3, 115, 5, 25, 2, 38, 0, 72, 0, 0, 0, 6, 0, 218, 0, 0, 255, 255, 255, 236, 254, 139, 3, 215, 5, 47, 2, 38, 0, 40, 0, 0, 0, 6, 0, 226, 0, 0, 0, 3, 255, 254, 254, 117, 3, 115, 5, 211, 0, 3, 0, 35, 0, 50, 1, 27, 176, 51, 47, 176, 52, 47, 176, 51, 16, 176, 25, 208, 176, 25, 47, 176, 52, 16, 176, 4, 220, 178, 0, 25, 4, 17, 18, 57, 178, 2, 25, 4, 17, 18, 57, 176, 25, 16, 177, 44, 12, 244, 64, 27, 6, 44, 22, 44, 38, 44, 54, 44, 70, 44, 86, 44, 102, 44, 118, 44, 134, 44, 150, 44, 166, 44, 182, 44, 198, 44, 13, 93, 180, 213, 44, 229, 44, 2, 93, 176, 13, 208, 176, 13, 47, 176, 4, 16, 177, 19, 8, 244, 176, 33, 208, 176, 19, 16, 176, 36, 208, 0, 176, 1, 47, 176, 0, 47, 176, 0, 69, 88, 176, 34, 47, 27, 177, 34, 19, 62, 89, 176, 0, 69, 88, 176, 30, 47, 27, 177, 30, 19, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 176, 0, 69, 88, 176, 19, 47, 27, 177, 19, 15, 62, 89, 176, 0, 69, 88, 176, 22, 47, 27, 177, 22, 15, 62, 89, 179, 16, 4, 9, 4, 43, 176, 22, 16, 177, 47, 6, 244, 64, 27, 7, 47, 23, 47, 39, 47, 55, 47, 71, 47, 87, 47, 103, 47, 119, 47, 135, 47, 151, 47, 167, 47, 183, 47, 199, 47, 13, 93, 180, 214, 47, 230, 47, 2, 93, 178, 20, 22, 47, 17, 18, 57, 176, 30, 16, 177, 39, 6, 244, 180, 217, 39, 233, 39, 2, 93, 64, 27, 8, 39, 24, 39, 40, 39, 56, 39, 72, 39, 88, 39, 104, 39, 120, 39, 136, 39, 152, 39, 168, 39, 184, 39, 200, 39, 13, 93, 178, 33, 30, 39, 17, 18, 57, 48, 49, 1, 1, 51, 3, 1, 20, 14, 2, 35, 34, 38, 39, 55, 22, 22, 51, 50, 54, 53, 53, 6, 35, 34, 38, 53, 52, 62, 2, 51, 50, 22, 23, 53, 51, 7, 38, 38, 35, 34, 14, 2, 21, 20, 22, 51, 50, 54, 55, 1, 27, 1, 18, 96, 186, 1, 160, 66, 119, 161, 99, 139, 195, 71, 96, 43, 162, 104, 142, 165, 122, 156, 219, 250, 65, 121, 174, 109, 76, 143, 59, 138, 138, 59, 141, 78, 82, 125, 82, 43, 166, 166, 78, 141, 59, 4, 94, 1, 117, 254, 139, 251, 172, 96, 150, 104, 55, 104, 98, 74, 65, 88, 143, 135, 100, 108, 250, 217, 106, 179, 131, 73, 53, 53, 84, 217, 65, 58, 58, 100, 137, 78, 160, 190, 59, 66, 255, 255, 0, 49, 0, 0, 3, 115, 6, 203, 2, 38, 0, 41, 0, 0, 0, 7, 0, 214, 0, 0, 1, 115, 255, 255, 0, 49, 0, 0, 3, 115, 6, 205, 2, 38, 0, 73, 0, 0, 0, 7, 0, 214, 0, 0, 1, 117, 0, 2, 255, 119, 0, 0, 4, 47, 5, 25, 0, 19, 0, 23, 0, 153, 176, 24, 47, 176, 25, 47, 176, 4, 220, 176, 0, 208, 176, 4, 16, 177, 5, 8, 244, 176, 24, 16, 176, 9, 208, 176, 9, 47, 177, 8, 12, 244, 176, 9, 16, 176, 13, 208, 176, 8, 16, 176, 15, 208, 176, 5, 16, 176, 17, 208, 176, 5, 16, 176, 20, 208, 176, 8, 16, 176, 22, 208, 0, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 21, 62, 89, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 21, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 15, 62, 89, 179, 1, 1, 2, 4, 43, 179, 20, 6, 6, 4, 43, 176, 2, 16, 176, 10, 208, 176, 1, 16, 176, 12, 208, 176, 1, 16, 176, 16, 208, 176, 2, 16, 176, 21, 208, 48, 49, 1, 51, 21, 35, 17, 35, 17, 33, 17, 35, 17, 35, 53, 51, 53, 51, 21, 33, 53, 51, 3, 17, 33, 17, 3, 115, 188, 188, 138, 253, 209, 137, 186, 186, 137, 2, 47, 138, 138, 253, 209, 4, 72, 113, 252, 41, 2, 92, 253, 164, 3, 215, 113, 209, 209, 209, 253, 184, 1, 6, 254, 250, 0, 0, 1, 255, 119, 0, 0, 3, 115, 5, 25, 0, 27, 0, 175, 176, 28, 47, 176, 29, 47, 176, 0, 220, 177, 1, 8, 244, 176, 28, 16, 176, 12, 208, 176, 12, 47, 177, 11, 12, 244, 176, 12, 16, 176, 16, 208, 176, 11, 16, 176, 18, 208, 176, 11, 16, 176, 22, 208, 178, 23, 12, 0, 17, 18, 57, 0, 176, 0, 69, 88, 176, 17, 47, 27, 177, 17, 21, 62, 89, 176, 0, 69, 88, 176, 25, 47, 27, 177, 25, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 15, 62, 89, 179, 16, 1, 13, 4, 43, 176, 25, 16, 177, 5, 6, 244, 180, 217, 5, 233, 5, 2, 93, 64, 27, 8, 5, 24, 5, 40, 5, 56, 5, 72, 5, 88, 5, 104, 5, 120, 5, 136, 5, 152, 5, 168, 5, 184, 5, 200, 5, 13, 93, 176, 16, 16, 176, 19, 208, 176, 13, 16, 176, 21, 208, 178, 23, 0, 17, 17, 18, 57, 48, 49, 33, 35, 17, 52, 38, 35, 34, 14, 2, 21, 17, 35, 17, 35, 53, 51, 53, 51, 21, 51, 21, 35, 17, 18, 51, 32, 17, 3, 115, 138, 108, 121, 76, 123, 86, 45, 137, 186, 186, 137, 187, 187, 99, 254, 1, 88, 2, 63, 125, 138, 70, 117, 151, 82, 254, 94, 3, 238, 112, 187, 187, 112, 254, 204, 1, 0, 254, 133, 0, 255, 255, 0, 78, 0, 0, 3, 78, 6, 115, 2, 38, 0, 42, 0, 0, 0, 7, 0, 215, 0, 0, 1, 115, 255, 255, 0, 78, 0, 0, 3, 78, 4, 255, 2, 38, 0, 213, 0, 0, 0, 6, 0, 215, 0, 255, 255, 255, 0, 186, 0, 0, 2, 233, 6, 54, 2, 38, 0, 42, 0, 0, 0, 7, 0, 216, 0, 0, 1, 115, 255, 255, 0, 186, 0, 0, 2, 233, 4, 194, 2, 38, 0, 213, 0, 0, 0, 6, 0, 216, 0, 255, 255, 255, 0, 182, 0, 0, 2, 240, 6, 121, 2, 38, 0, 42, 0, 0, 0, 7, 0, 217, 0, 0, 1, 115, 255, 255, 0, 182, 0, 0, 2, 240, 5, 5, 2, 38, 0, 213, 0, 0, 0, 6, 0, 217, 0, 255, 0, 1, 0, 186, 254, 133, 3, 117, 5, 25, 0, 23, 0, 130, 179, 16, 8, 9, 4, 43, 179, 20, 10, 3, 4, 43, 180, 218, 3, 234, 3, 2, 93, 64, 27, 9, 3, 25, 3, 41, 3, 57, 3, 73, 3, 89, 3, 105, 3, 121, 3, 137, 3, 153, 3, 169, 3, 185, 3, 201, 3, 13, 93, 178, 6, 3, 20, 17, 18, 57, 0, 176, 0, 47, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 15, 62, 89, 176, 6, 16, 177, 8, 6, 244, 176, 12, 16, 177, 10, 6, 244, 176, 14, 208, 176, 15, 208, 176, 8, 16, 176, 16, 208, 176, 17, 208, 48, 49, 1, 34, 38, 53, 52, 54, 55, 33, 53, 51, 17, 35, 53, 33, 21, 35, 17, 51, 21, 6, 21, 20, 22, 51, 3, 117, 125, 144, 31, 23, 254, 28, 211, 211, 2, 47, 210, 210, 49, 109, 80, 254, 133, 125, 102, 48, 75, 29, 117, 4, 47, 117, 117, 251, 209, 117, 45, 76, 72, 96, 0, 2, 0, 186, 254, 133, 3, 117, 5, 25, 0, 21, 0, 25, 0, 164, 179, 14, 14, 8, 4, 43, 179, 18, 10, 3, 4, 43, 180, 218, 3, 234, 3, 2, 93, 64, 27, 9, 3, 25, 3, 41, 3, 57, 3, 73, 3, 89, 3, 105, 3, 121, 3, 137, 3, 153, 3, 169, 3, 185, 3, 201, 3, 13, 93, 178, 6, 3, 18, 17, 18, 57, 176, 14, 16, 177, 9, 8, 244, 176, 8, 16, 176, 11, 208, 178, 23, 8, 14, 17, 18, 57, 176, 23, 47, 177, 22, 8, 244, 0, 176, 0, 47, 176, 0, 69, 88, 176, 24, 47, 27, 177, 24, 21, 62, 89, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 19, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 15, 62, 89, 176, 6, 16, 177, 8, 6, 244, 176, 12, 16, 177, 10, 6, 244, 176, 8, 16, 176, 14, 208, 176, 15, 208, 48, 49, 1, 34, 38, 53, 52, 54, 55, 33, 53, 51, 17, 35, 53, 33, 17, 51, 21, 6, 21, 20, 22, 51, 1, 35, 53, 51, 3, 117, 125, 144, 31, 23, 254, 28, 211, 211, 1, 93, 210, 49, 109, 80, 254, 186, 186, 186, 254, 133, 125, 102, 48, 75, 29, 117, 2, 186, 117, 252, 209, 117, 45, 76, 72, 96, 5, 127, 187, 0, 255, 255, 0, 186, 0, 0, 2, 233, 6, 140, 2, 38, 0, 42, 0, 0, 0, 7, 0, 218, 0, 0, 1, 115, 0, 2, 0, 0, 254, 117, 3, 164, 5, 25, 0, 16, 0, 28, 0, 103, 176, 29, 47, 176, 30, 47, 176, 11, 220, 177, 8, 12, 244, 176, 29, 16, 176, 20, 208, 176, 20, 47, 177, 27, 8, 244, 0, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 21, 62, 89, 176, 0, 69, 88, 176, 23, 47, 27, 177, 23, 21, 62, 89, 176, 0, 69, 88, 176, 17, 47, 27, 177, 17, 15, 62, 89, 179, 3, 6, 14, 4, 43, 176, 17, 16, 177, 19, 6, 244, 176, 23, 16, 177, 21, 6, 244, 176, 25, 208, 176, 26, 208, 176, 19, 16, 176, 27, 208, 176, 28, 208, 48, 49, 5, 22, 22, 51, 50, 62, 2, 53, 17, 51, 17, 20, 2, 35, 34, 39, 1, 33, 53, 51, 17, 35, 53, 33, 21, 35, 17, 51, 1, 0, 49, 127, 72, 92, 115, 61, 23, 137, 211, 217, 211, 123, 1, 133, 253, 209, 211, 211, 2, 47, 210, 210, 170, 57, 52, 74, 115, 143, 72, 4, 156, 251, 100, 248, 254, 240, 129, 1, 10, 117, 4, 47, 117, 117, 251, 209, 0, 0, 4, 0, 0, 254, 117, 3, 164, 5, 25, 0, 3, 0, 13, 0, 17, 0, 36, 0, 179, 179, 12, 14, 6, 4, 43, 179, 34, 12, 29, 4, 43, 176, 12, 16, 177, 7, 12, 244, 176, 6, 16, 176, 9, 208, 176, 34, 16, 176, 38, 220, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 21, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 19, 62, 89, 176, 0, 69, 88, 176, 32, 47, 27, 177, 32, 19, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 176, 0, 69, 88, 176, 29, 47, 27, 177, 29, 15, 62, 89, 176, 0, 69, 88, 176, 34, 47, 27, 177, 34, 15, 62, 89, 179, 24, 6, 18, 4, 43, 176, 2, 16, 177, 0, 5, 244, 176, 4, 16, 177, 6, 6, 244, 176, 10, 16, 177, 8, 6, 244, 176, 6, 16, 176, 12, 208, 176, 13, 208, 176, 0, 16, 176, 14, 208, 176, 15, 208, 176, 8, 16, 176, 30, 208, 176, 31, 208, 48, 49, 1, 35, 53, 51, 19, 33, 53, 51, 17, 35, 53, 33, 17, 51, 1, 35, 53, 51, 1, 34, 39, 55, 22, 22, 51, 50, 62, 2, 53, 17, 35, 53, 33, 17, 20, 6, 1, 117, 187, 187, 186, 253, 209, 211, 211, 1, 92, 211, 1, 117, 187, 187, 254, 115, 246, 99, 105, 37, 117, 86, 67, 92, 54, 22, 211, 1, 92, 188, 4, 94, 187, 250, 231, 117, 2, 186, 117, 252, 209, 3, 233, 187, 249, 92, 202, 72, 76, 82, 39, 72, 102, 66, 3, 47, 117, 252, 92, 180, 215, 255, 255, 255, 254, 255, 233, 3, 115, 6, 203, 2, 38, 0, 43, 0, 0, 0, 7, 0, 214, 0, 0, 1, 115, 0, 2, 0, 4, 254, 117, 3, 88, 5, 88, 0, 18, 0, 24, 0, 44, 179, 16, 12, 11, 4, 43, 0, 176, 24, 47, 176, 20, 47, 176, 22, 47, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 19, 62, 89, 179, 6, 6, 0, 4, 43, 176, 14, 16, 177, 12, 6, 244, 48, 49, 1, 34, 39, 55, 22, 22, 51, 50, 62, 2, 53, 17, 35, 53, 33, 17, 20, 6, 1, 7, 39, 7, 39, 1, 1, 92, 246, 98, 105, 36, 117, 86, 68, 92, 53, 23, 211, 1, 92, 189, 1, 68, 53, 242, 246, 53, 1, 41, 254, 117, 202, 72, 76, 82, 39, 72, 102, 66, 3, 47, 117, 252, 92, 180, 215, 5, 196, 67, 205, 207, 65, 1, 35, 0, 255, 255, 0, 49, 254, 139, 3, 158, 5, 25, 2, 38, 0, 44, 0, 0, 0, 6, 0, 226, 0, 0, 255, 255, 0, 49, 254, 139, 3, 162, 5, 25, 2, 38, 0, 76, 0, 0, 0, 6, 0, 226, 0, 0, 0, 1, 0, 49, 0, 0, 3, 162, 3, 164, 0, 11, 0, 74, 179, 4, 12, 5, 4, 43, 176, 4, 16, 176, 7, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 178, 8, 0, 6, 17, 18, 57, 48, 49, 33, 35, 1, 7, 17, 35, 17, 51, 17, 1, 51, 1, 3, 162, 195, 254, 131, 168, 137, 137, 2, 19, 196, 254, 45, 1, 162, 154, 254, 248, 3, 164, 254, 10, 1, 246, 254, 84, 255, 255, 0, 49, 0, 0, 3, 115, 6, 199, 2, 38, 0, 45, 0, 0, 0, 7, 0, 139, 0, 0, 1, 115, 255, 255, 0, 186, 0, 0, 2, 233, 6, 201, 2, 38, 0, 77, 0, 0, 0, 7, 0, 139, 0, 0, 1, 117, 255, 255, 0, 49, 254, 139, 3, 115, 5, 25, 2, 38, 0, 45, 0, 0, 0, 6, 0, 226, 0, 0, 255, 255, 0, 186, 254, 139, 2, 233, 5, 25, 2, 38, 0, 77, 0, 0, 0, 6, 0, 226, 0, 0, 255, 255, 0, 49, 0, 0, 3, 115, 5, 25, 2, 38, 0, 45, 0, 0, 0, 7, 1, 119, 0, 213, 254, 234, 255, 255, 0, 186, 0, 0, 3, 162, 5, 25, 2, 38, 0, 77, 0, 0, 0, 7, 1, 119, 1, 92, 254, 234, 255, 255, 0, 49, 0, 0, 3, 115, 5, 25, 2, 38, 0, 45, 0, 0, 0, 7, 0, 193, 0, 186, 0, 186, 255, 255, 0, 186, 0, 0, 4, 94, 5, 25, 2, 38, 0, 77, 0, 0, 0, 7, 0, 193, 2, 47, 0, 0, 0, 1, 255, 94, 0, 0, 3, 115, 5, 25, 0, 13, 0, 79, 179, 12, 12, 1, 4, 43, 176, 1, 16, 176, 5, 208, 176, 12, 16, 176, 7, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 178, 2, 0, 6, 17, 18, 57, 178, 3, 0, 6, 17, 18, 57, 178, 8, 0, 6, 17, 18, 57, 178, 9, 0, 6, 17, 18, 57, 177, 12, 3, 244, 48, 49, 33, 33, 17, 7, 53, 55, 17, 51, 17, 55, 21, 7, 17, 33, 3, 115, 252, 190, 211, 211, 137, 211, 211, 2, 185, 2, 51, 69, 127, 69, 2, 103, 253, 200, 70, 127, 70, 254, 21, 0, 1, 0, 186, 0, 0, 2, 233, 5, 25, 0, 17, 0, 137, 179, 4, 14, 3, 4, 43, 176, 4, 16, 177, 0, 8, 244, 177, 7, 14, 244, 176, 4, 16, 176, 8, 208, 176, 5, 16, 176, 9, 208, 176, 7, 16, 176, 10, 208, 176, 3, 16, 176, 12, 208, 176, 0, 16, 176, 14, 208, 178, 15, 3, 4, 17, 18, 57, 176, 3, 16, 176, 16, 208, 0, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 21, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 15, 62, 89, 176, 3, 16, 177, 1, 3, 244, 178, 5, 11, 3, 17, 18, 57, 178, 6, 11, 3, 17, 18, 57, 176, 11, 16, 177, 9, 3, 244, 176, 13, 208, 176, 14, 208, 178, 15, 11, 3, 17, 18, 57, 178, 16, 11, 3, 17, 18, 57, 48, 49, 1, 17, 35, 53, 33, 17, 55, 21, 7, 17, 51, 21, 33, 53, 51, 17, 7, 53, 1, 141, 211, 1, 93, 210, 210, 210, 253, 209, 211, 211, 2, 178, 1, 240, 119, 253, 200, 70, 127, 70, 254, 21, 119, 119, 1, 188, 69, 127, 0, 255, 255, 0, 49, 0, 0, 3, 115, 6, 199, 2, 38, 0, 47, 0, 0, 0, 7, 0, 139, 0, 0, 1, 115, 255, 255, 0, 49, 0, 0, 3, 115, 5, 83, 2, 38, 0, 79, 0, 0, 0, 6, 0, 139, 0, 255, 255, 255, 0, 49, 254, 139, 3, 115, 5, 25, 2, 38, 0, 47, 0, 0, 0, 6, 0, 226, 0, 0, 255, 255, 0, 49, 254, 139, 3, 115, 3, 186, 2, 38, 0, 79, 0, 0, 0, 6, 0, 226, 0, 0, 255, 255, 0, 49, 0, 0, 3, 115, 6, 203, 2, 38, 0, 47, 0, 0, 0, 7, 0, 223, 0, 0, 1, 115, 255, 255, 0, 49, 0, 0, 3, 115, 5, 87, 2, 38, 0, 79, 0, 0, 0, 6, 0, 223, 0, 255, 255, 255, 0, 1, 0, 0, 3, 115, 6, 47, 2, 38, 0, 79, 0, 0, 0, 7, 1, 119, 254, 116, 0, 0, 0, 1, 0, 49, 254, 117, 3, 115, 5, 25, 0, 22, 0, 94, 176, 23, 47, 176, 24, 47, 176, 0, 220, 177, 20, 8, 244, 176, 14, 208, 176, 14, 47, 176, 23, 16, 176, 17, 208, 176, 17, 47, 177, 16, 12, 244, 0, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 21, 62, 89, 176, 0, 69, 88, 176, 21, 47, 27, 177, 21, 21, 62, 89, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 15, 62, 89, 179, 9, 6, 3, 4, 43, 178, 15, 16, 18, 17, 18, 57, 178, 20, 16, 18, 17, 18, 57, 48, 49, 37, 20, 2, 35, 34, 39, 55, 22, 22, 51, 50, 62, 2, 55, 1, 17, 35, 17, 51, 1, 17, 51, 3, 115, 211, 217, 211, 123, 86, 49, 127, 72, 65, 94, 66, 41, 10, 253, 223, 137, 193, 1, 247, 138, 125, 248, 254, 240, 129, 96, 57, 52, 39, 66, 88, 49, 4, 117, 251, 176, 5, 25, 251, 227, 4, 29, 0, 1, 0, 49, 254, 117, 3, 115, 3, 186, 0, 32, 0, 161, 176, 33, 47, 176, 34, 47, 176, 27, 220, 177, 8, 8, 244, 176, 33, 16, 176, 19, 208, 176, 19, 47, 177, 18, 12, 244, 176, 21, 208, 178, 22, 19, 27, 17, 18, 57, 0, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 19, 62, 89, 176, 0, 69, 88, 176, 24, 47, 27, 177, 24, 19, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 15, 62, 89, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 15, 62, 89, 176, 0, 69, 88, 176, 27, 47, 27, 177, 27, 15, 62, 89, 179, 3, 6, 30, 4, 43, 176, 24, 16, 177, 12, 6, 244, 180, 217, 12, 233, 12, 2, 93, 64, 27, 8, 12, 24, 12, 40, 12, 56, 12, 72, 12, 88, 12, 104, 12, 120, 12, 136, 12, 152, 12, 168, 12, 184, 12, 200, 12, 13, 93, 178, 22, 8, 24, 17, 18, 57, 48, 49, 5, 22, 22, 51, 50, 62, 2, 53, 17, 52, 38, 35, 34, 14, 2, 21, 17, 35, 17, 51, 21, 18, 51, 32, 17, 17, 20, 6, 35, 34, 39, 1, 131, 25, 67, 31, 68, 92, 53, 22, 108, 121, 76, 123, 86, 45, 137, 137, 99, 254, 1, 88, 189, 184, 90, 68, 250, 14, 15, 39, 72, 102, 66, 2, 63, 125, 138, 70, 117, 151, 82, 254, 94, 3, 164, 234, 1, 0, 254, 133, 253, 193, 180, 215, 26, 255, 255, 255, 223, 255, 233, 3, 199, 6, 54, 2, 38, 0, 48, 0, 0, 0, 7, 0, 216, 0, 0, 1, 115, 255, 255, 255, 236, 255, 233, 3, 188, 4, 194, 2, 38, 0, 80, 0, 0, 0, 6, 0, 216, 0, 255, 255, 255, 255, 223, 255, 233, 3, 199, 6, 121, 2, 38, 0, 48, 0, 0, 0, 7, 0, 217, 0, 0, 1, 115, 255, 255, 255, 236, 255, 233, 3, 188, 5, 5, 2, 38, 0, 80, 0, 0, 0, 6, 0, 217, 0, 255, 255, 255, 255, 223, 255, 233, 3, 199, 6, 234, 2, 38, 0, 48, 0, 0, 0, 7, 0, 221, 0, 0, 1, 115, 255, 255, 255, 236, 255, 233, 3, 188, 5, 118, 2, 38, 0, 80, 0, 0, 0, 6, 0, 221, 0, 255, 255, 255, 0, 49, 0, 0, 3, 176, 6, 199, 2, 38, 0, 51, 0, 0, 0, 7, 0, 139, 0, 0, 1, 115, 255, 255, 0, 0, 0, 0, 3, 158, 5, 84, 2, 38, 0, 83, 0, 0, 0, 6, 0, 139, 0, 0, 255, 255, 0, 49, 254, 139, 3, 176, 5, 25, 2, 38, 0, 51, 0, 0, 0, 6, 0, 226, 0, 0, 255, 255, 0, 0, 254, 139, 3, 158, 3, 186, 2, 38, 0, 83, 0, 0, 0, 6, 0, 226, 0, 0, 255, 255, 0, 49, 0, 0, 3, 176, 6, 203, 2, 38, 0, 51, 0, 0, 0, 7, 0, 223, 0, 0, 1, 115, 255, 255, 0, 0, 0, 0, 3, 158, 5, 88, 2, 38, 0, 83, 0, 0, 0, 6, 0, 223, 0, 0, 255, 255, 0, 25, 255, 233, 3, 131, 6, 199, 2, 38, 0, 52, 0, 0, 0, 7, 0, 139, 0, 0, 1, 115, 255, 255, 255, 246, 255, 233, 3, 139, 5, 84, 2, 38, 0, 84, 0, 0, 0, 6, 0, 139, 0, 0, 255, 255, 0, 25, 255, 233, 3, 131, 6, 203, 2, 38, 0, 52, 0, 0, 0, 7, 0, 214, 0, 0, 1, 115, 255, 255, 255, 246, 255, 233, 3, 139, 5, 88, 2, 38, 0, 84, 0, 0, 0, 6, 0, 214, 0, 0, 0, 1, 0, 25, 254, 141, 3, 131, 5, 47, 0, 72, 0, 176, 179, 21, 10, 41, 4, 43, 179, 6, 13, 13, 4, 43, 179, 51, 11, 50, 4, 43, 176, 50, 16, 177, 0, 8, 244, 176, 21, 16, 176, 17, 208, 176, 50, 16, 176, 53, 208, 176, 41, 16, 177, 63, 12, 244, 176, 51, 16, 176, 74, 220, 0, 176, 0, 69, 88, 176, 50, 47, 27, 177, 50, 21, 62, 89, 176, 0, 69, 88, 176, 52, 47, 27, 177, 52, 19, 62, 89, 176, 0, 69, 88, 176, 46, 47, 27, 177, 46, 21, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 17, 62, 89, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 15, 62, 89, 178, 17, 10, 46, 17, 18, 57, 178, 49, 10, 46, 17, 18, 57, 176, 46, 16, 177, 58, 6, 244, 180, 217, 58, 233, 58, 2, 93, 64, 27, 8, 58, 24, 58, 40, 58, 56, 58, 72, 58, 88, 58, 104, 58, 120, 58, 136, 58, 152, 58, 168, 58, 184, 58, 200, 58, 13, 93, 48, 49, 1, 20, 14, 2, 7, 21, 20, 7, 6, 35, 53, 50, 53, 53, 38, 38, 39, 21, 35, 17, 51, 20, 30, 2, 51, 50, 62, 2, 53, 52, 46, 2, 39, 46, 3, 53, 52, 62, 2, 51, 50, 22, 23, 53, 51, 17, 35, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 23, 30, 3, 3, 131, 55, 92, 123, 70, 82, 88, 147, 202, 96, 160, 47, 116, 116, 62, 96, 125, 65, 58, 98, 74, 43, 55, 93, 116, 60, 71, 142, 112, 70, 68, 110, 146, 77, 95, 161, 45, 121, 121, 49, 84, 108, 60, 53, 96, 72, 43, 51, 86, 113, 59, 74, 146, 116, 74, 1, 84, 74, 121, 92, 59, 10, 25, 147, 88, 95, 117, 213, 21, 8, 80, 71, 139, 1, 141, 67, 111, 80, 45, 33, 61, 88, 56, 63, 90, 64, 45, 22, 25, 55, 84, 121, 90, 80, 125, 86, 45, 78, 80, 136, 254, 139, 59, 103, 73, 43, 24, 53, 84, 58, 51, 72, 55, 45, 23, 26, 64, 90, 131, 0, 0, 1, 255, 246, 254, 141, 3, 139, 3, 186, 0, 59, 0, 165, 179, 50, 12, 33, 4, 43, 179, 6, 13, 13, 4, 43, 179, 0, 12, 23, 4, 43, 180, 218, 23, 234, 23, 2, 93, 64, 27, 9, 23, 25, 23, 41, 23, 57, 23, 73, 23, 89, 23, 105, 23, 121, 23, 137, 23, 153, 23, 169, 23, 185, 23, 201, 23, 13, 93, 64, 27, 6, 50, 22, 50, 38, 50, 54, 50, 70, 50, 86, 50, 102, 50, 118, 50, 134, 50, 150, 50, 166, 50, 182, 50, 198, 50, 13, 93, 180, 213, 50, 229, 50, 2, 93, 0, 176, 0, 69, 88, 176, 38, 47, 27, 177, 38, 19, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 17, 62, 89, 176, 38, 16, 177, 45, 6, 244, 180, 217, 45, 233, 45, 2, 93, 64, 27, 8, 45, 24, 45, 40, 45, 56, 45, 72, 45, 88, 45, 104, 45, 120, 45, 136, 45, 152, 45, 168, 45, 184, 45, 200, 45, 13, 93, 48, 49, 1, 20, 14, 2, 7, 21, 20, 7, 6, 35, 53, 50, 53, 53, 38, 38, 39, 55, 22, 22, 51, 32, 53, 52, 46, 2, 39, 46, 3, 53, 52, 62, 2, 51, 50, 22, 23, 7, 38, 38, 35, 34, 14, 2, 21, 20, 30, 2, 23, 30, 3, 3, 139, 59, 98, 125, 66, 82, 88, 147, 202, 122, 242, 90, 61, 103, 200, 107, 1, 53, 51, 86, 111, 61, 78, 154, 127, 77, 71, 119, 160, 86, 123, 194, 78, 55, 80, 164, 96, 43, 105, 90, 61, 51, 86, 111, 61, 76, 155, 127, 78, 1, 2, 68, 98, 65, 37, 6, 25, 147, 88, 95, 117, 213, 18, 5, 69, 60, 118, 65, 70, 160, 39, 49, 31, 18, 8, 11, 30, 60, 100, 82, 70, 102, 68, 32, 57, 53, 107, 56, 45, 15, 37, 59, 45, 39, 47, 31, 18, 8, 11, 30, 58, 100, 0, 255, 255, 0, 25, 255, 233, 3, 131, 6, 203, 2, 38, 0, 52, 0, 0, 0, 7, 0, 223, 0, 0, 1, 115, 255, 255, 255, 246, 255, 233, 3, 139, 5, 88, 2, 38, 0, 84, 0, 0, 0, 6, 0, 223, 0, 0, 255, 255, 0, 0, 254, 139, 3, 164, 5, 25, 2, 38, 0, 53, 0, 0, 0, 6, 0, 226, 0, 0, 255, 255, 0, 0, 254, 139, 3, 174, 5, 25, 2, 38, 0, 85, 0, 0, 0, 6, 0, 226, 0, 0, 255, 255, 0, 0, 0, 0, 3, 164, 6, 203, 2, 38, 0, 53, 0, 0, 0, 7, 0, 223, 0, 0, 1, 115, 255, 255, 0, 0, 255, 233, 3, 174, 5, 212, 2, 38, 0, 85, 0, 0, 0, 7, 1, 119, 1, 92, 255, 165, 0, 1, 0, 0, 0, 0, 3, 164, 5, 25, 0, 23, 0, 134, 176, 24, 47, 176, 15, 208, 176, 15, 47, 176, 7, 220, 178, 64, 7, 1, 93, 177, 2, 8, 244, 176, 7, 16, 176, 11, 208, 176, 15, 16, 177, 14, 13, 244, 176, 7, 16, 176, 19, 220, 178, 64, 19, 1, 93, 177, 18, 13, 244, 176, 2, 16, 176, 21, 208, 176, 18, 16, 176, 25, 220, 0, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 21, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 179, 23, 1, 0, 4, 43, 176, 4, 16, 177, 2, 6, 244, 176, 6, 208, 176, 7, 208, 176, 0, 16, 176, 8, 208, 176, 23, 16, 176, 10, 208, 176, 16, 16, 177, 12, 6, 244, 176, 20, 208, 176, 21, 208, 48, 49, 1, 35, 17, 51, 21, 33, 53, 51, 17, 35, 53, 51, 17, 33, 17, 35, 17, 33, 17, 35, 17, 33, 17, 51, 2, 233, 210, 210, 253, 209, 211, 211, 211, 254, 232, 117, 3, 164, 117, 254, 232, 210, 2, 96, 254, 21, 117, 117, 1, 235, 113, 1, 211, 254, 188, 1, 185, 254, 71, 1, 68, 254, 45, 0, 0, 1, 0, 0, 255, 233, 3, 174, 5, 25, 0, 35, 0, 163, 179, 2, 12, 19, 4, 43, 176, 19, 16, 176, 23, 208, 176, 19, 16, 176, 27, 208, 176, 2, 16, 176, 29, 208, 176, 2, 16, 176, 33, 208, 0, 176, 0, 69, 88, 176, 28, 47, 27, 177, 28, 21, 62, 89, 176, 0, 69, 88, 176, 26, 47, 27, 177, 26, 19, 62, 89, 176, 0, 69, 88, 176, 30, 47, 27, 177, 30, 19, 62, 89, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 15, 62, 89, 179, 35, 1, 0, 4, 43, 176, 14, 16, 177, 7, 6, 244, 64, 27, 7, 7, 23, 7, 39, 7, 55, 7, 71, 7, 87, 7, 103, 7, 119, 7, 135, 7, 151, 7, 167, 7, 183, 7, 199, 7, 13, 93, 180, 214, 7, 230, 7, 2, 93, 176, 0, 16, 176, 20, 208, 176, 35, 16, 176, 22, 208, 176, 30, 16, 177, 24, 6, 244, 176, 25, 208, 176, 32, 208, 176, 33, 208, 48, 49, 1, 35, 21, 20, 30, 2, 51, 50, 54, 55, 23, 6, 6, 35, 34, 46, 2, 53, 53, 35, 53, 51, 17, 35, 53, 51, 17, 51, 17, 33, 21, 33, 17, 51, 2, 47, 211, 33, 59, 84, 54, 102, 137, 10, 115, 16, 199, 149, 82, 136, 96, 53, 211, 211, 211, 211, 137, 1, 141, 254, 115, 211, 1, 190, 104, 51, 90, 68, 39, 127, 101, 25, 147, 173, 54, 96, 135, 80, 104, 113, 1, 0, 117, 1, 117, 254, 139, 117, 255, 0, 0, 255, 255, 0, 49, 255, 233, 3, 115, 6, 115, 2, 38, 0, 54, 0, 0, 0, 7, 0, 215, 0, 0, 1, 115, 255, 255, 0, 49, 255, 233, 3, 115, 5, 0, 2, 38, 0, 86, 0, 0, 0, 6, 0, 215, 0, 0, 255, 255, 0, 49, 255, 233, 3, 115, 6, 54, 2, 38, 0, 54, 0, 0, 0, 7, 0, 216, 0, 0, 1, 115, 255, 255, 0, 49, 255, 233, 3, 115, 4, 195, 2, 38, 0, 86, 0, 0, 0, 6, 0, 216, 0, 0, 255, 255, 0, 49, 255, 233, 3, 115, 6, 121, 2, 38, 0, 54, 0, 0, 0, 7, 0, 217, 0, 0, 1, 115, 255, 255, 0, 49, 255, 233, 3, 115, 5, 6, 2, 38, 0, 86, 0, 0, 0, 6, 0, 217, 0, 0, 255, 255, 0, 49, 255, 233, 3, 115, 7, 62, 2, 38, 0, 54, 0, 0, 0, 7, 0, 219, 0, 0, 1, 115, 255, 255, 0, 49, 255, 233, 3, 115, 5, 203, 2, 38, 0, 86, 0, 0, 0, 6, 0, 219, 0, 0, 255, 255, 0, 49, 255, 233, 3, 115, 6, 234, 2, 38, 0, 54, 0, 0, 0, 7, 0, 221, 0, 0, 1, 115, 255, 255, 0, 49, 255, 233, 3, 115, 5, 119, 2, 38, 0, 86, 0, 0, 0, 6, 0, 221, 0, 0, 0, 1, 0, 49, 254, 133, 3, 115, 5, 25, 0, 38, 0, 167, 179, 17, 12, 14, 4, 43, 179, 35, 10, 3, 4, 43, 179, 30, 8, 27, 4, 43, 180, 218, 3, 234, 3, 2, 93, 64, 27, 9, 3, 25, 3, 41, 3, 57, 3, 73, 3, 89, 3, 105, 3, 121, 3, 137, 3, 153, 3, 169, 3, 185, 3, 201, 3, 13, 93, 178, 6, 3, 35, 17, 18, 57, 176, 30, 16, 176, 40, 220, 0, 176, 0, 47, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 21, 62, 89, 176, 0, 69, 88, 176, 28, 47, 27, 177, 28, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 177, 22, 6, 244, 64, 27, 7, 22, 23, 22, 39, 22, 55, 22, 71, 22, 87, 22, 103, 22, 119, 22, 135, 22, 151, 22, 167, 22, 183, 22, 199, 22, 13, 93, 180, 214, 22, 230, 22, 2, 93, 48, 49, 1, 34, 38, 53, 52, 54, 55, 6, 6, 35, 34, 46, 2, 53, 17, 51, 17, 20, 30, 2, 51, 50, 62, 2, 53, 17, 51, 17, 20, 6, 7, 6, 21, 20, 22, 51, 2, 248, 125, 143, 20, 18, 16, 33, 16, 109, 157, 101, 49, 137, 21, 61, 109, 88, 88, 111, 61, 20, 138, 127, 135, 50, 109, 80, 254, 133, 125, 102, 41, 64, 29, 2, 3, 70, 127, 182, 111, 3, 70, 252, 184, 59, 132, 108, 72, 72, 108, 132, 59, 3, 72, 252, 184, 180, 242, 43, 45, 76, 72, 96, 0, 0, 1, 0, 49, 254, 133, 3, 254, 3, 164, 0, 31, 0, 153, 179, 15, 12, 12, 4, 43, 179, 28, 10, 7, 4, 43, 176, 7, 16, 176, 3, 208, 176, 3, 47, 176, 7, 16, 176, 23, 208, 176, 7, 16, 177, 26, 8, 244, 0, 176, 0, 47, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 19, 62, 89, 176, 0, 69, 88, 176, 24, 47, 27, 177, 24, 19, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 176, 0, 69, 88, 176, 26, 47, 27, 177, 26, 15, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 15, 62, 89, 178, 8, 0, 13, 17, 18, 57, 177, 18, 6, 244, 64, 27, 7, 18, 23, 18, 39, 18, 55, 18, 71, 18, 87, 18, 103, 18, 119, 18, 135, 18, 151, 18, 167, 18, 183, 18, 199, 18, 13, 93, 180, 214, 18, 230, 18, 2, 93, 48, 49, 1, 34, 38, 53, 52, 54, 55, 35, 53, 2, 35, 32, 17, 17, 51, 17, 20, 22, 51, 50, 62, 2, 53, 17, 51, 17, 6, 21, 20, 22, 51, 3, 254, 125, 143, 30, 23, 62, 98, 254, 254, 168, 137, 109, 121, 76, 122, 86, 45, 138, 49, 108, 80, 254, 133, 125, 102, 48, 75, 29, 233, 255, 0, 1, 123, 2, 64, 253, 192, 125, 137, 70, 117, 151, 82, 1, 162, 252, 92, 45, 76, 72, 96, 255, 255, 255, 193, 0, 0, 3, 227, 6, 203, 2, 38, 0, 56, 0, 0, 0, 7, 0, 214, 0, 0, 1, 115, 255, 255, 255, 229, 0, 0, 3, 195, 5, 88, 2, 38, 0, 88, 0, 0, 0, 6, 0, 214, 0, 0, 255, 255, 255, 236, 0, 0, 3, 184, 6, 203, 2, 38, 0, 58, 0, 0, 0, 7, 0, 214, 0, 0, 1, 115, 255, 255, 255, 225, 254, 117, 3, 193, 5, 88, 2, 38, 0, 90, 0, 0, 0, 6, 0, 214, 0, 0, 255, 255, 0, 49, 0, 0, 3, 119, 6, 201, 2, 38, 0, 59, 0, 0, 0, 7, 0, 139, 0, 0, 1, 117, 255, 255, 0, 47, 0, 0, 3, 119, 5, 83, 2, 38, 0, 91, 0, 0, 0, 6, 0, 139, 0, 255, 255, 255, 0, 49, 0, 0, 3, 119, 6, 142, 2, 38, 0, 59, 0, 0, 0, 7, 0, 218, 0, 0, 1, 117, 255, 255, 0, 47, 0, 0, 3, 119, 5, 25, 2, 38, 0, 91, 0, 0, 0, 6, 0, 218, 0, 0, 255, 255, 0, 49, 0, 0, 3, 119, 6, 205, 2, 38, 0, 59, 0, 0, 0, 7, 0, 223, 0, 0, 1, 117, 255, 255, 0, 47, 0, 0, 3, 119, 5, 87, 2, 38, 0, 91, 0, 0, 0, 6, 0, 223, 0, 255, 0, 1, 0, 186, 0, 0, 3, 164, 5, 47, 0, 22, 0, 157, 179, 0, 14, 4, 4, 43, 176, 0, 16, 177, 5, 8, 244, 176, 4, 16, 176, 7, 208, 176, 5, 16, 176, 9, 208, 0, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 21, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 21, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 19, 62, 89, 176, 0, 69, 88, 176, 22, 47, 27, 177, 22, 19, 62, 89, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 15, 62, 89, 177, 0, 6, 244, 176, 4, 208, 176, 5, 208, 176, 22, 16, 177, 6, 6, 244, 176, 7, 208, 176, 12, 16, 177, 19, 6, 244, 180, 217, 19, 233, 19, 2, 93, 64, 27, 8, 19, 24, 19, 40, 19, 56, 19, 72, 19, 88, 19, 104, 19, 120, 19, 136, 19, 152, 19, 168, 19, 184, 19, 200, 19, 13, 93, 48, 49, 37, 51, 21, 33, 53, 51, 17, 35, 53, 51, 52, 54, 51, 50, 22, 23, 21, 38, 38, 35, 34, 6, 21, 2, 23, 210, 253, 209, 211, 211, 211, 199, 201, 47, 65, 23, 29, 63, 43, 131, 131, 117, 117, 117, 2, 186, 117, 192, 203, 6, 4, 117, 4, 6, 133, 145, 0, 255, 255, 255, 193, 0, 0, 3, 164, 6, 203, 2, 38, 0, 142, 0, 0, 0, 7, 0, 139, 0, 0, 1, 119, 255, 255, 255, 219, 255, 233, 3, 186, 5, 86, 2, 38, 0, 158, 0, 0, 0, 6, 0, 139, 0, 2, 255, 255, 255, 211, 255, 233, 3, 211, 6, 203, 2, 38, 0, 143, 0, 0, 0, 7, 0, 139, 0, 0, 1, 119, 255, 255, 255, 213, 255, 233, 3, 209, 5, 86, 2, 38, 0, 159, 0, 0, 0, 6, 0, 139, 0, 2, 255, 255, 0, 25, 254, 139, 3, 131, 5, 47, 2, 38, 0, 52, 0, 0, 0, 6, 0, 226, 0, 0, 255, 255, 255, 246, 254, 139, 3, 139, 3, 186, 2, 38, 0, 84, 0, 0, 0, 6, 0, 226, 0, 0, 255, 255, 0, 0, 254, 139, 3, 164, 5, 25, 2, 38, 0, 53, 0, 0, 0, 6, 0, 226, 0, 0, 255, 255, 0, 0, 254, 139, 3, 174, 5, 25, 2, 38, 0, 85, 0, 0, 0, 6, 0, 226, 0, 0, 0, 1, 1, 141, 4, 94, 2, 70, 6, 47, 0, 3, 0, 9, 0, 176, 0, 47, 176, 1, 47, 48, 49, 1, 3, 35, 17, 2, 70, 84, 101, 6, 47, 254, 47, 1, 209, 0, 0, 3, 0, 0, 4, 94, 3, 164, 6, 47, 0, 3, 0, 7, 0, 11, 0, 57, 179, 8, 8, 9, 4, 43, 0, 176, 0, 47, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 21, 62, 89, 176, 6, 16, 177, 1, 5, 244, 176, 4, 208, 176, 5, 208, 176, 8, 208, 176, 9, 208, 48, 49, 1, 3, 35, 17, 1, 35, 53, 51, 5, 35, 53, 51, 2, 70, 84, 101, 2, 23, 187, 187, 253, 22, 186, 186, 6, 47, 254, 47, 1, 209, 254, 47, 187, 187, 187, 255, 255, 255, 197, 0, 0, 3, 227, 6, 47, 2, 34, 1, 129, 0, 0, 0, 3, 1, 119, 254, 140, 0, 0, 255, 255, 255, 95, 0, 0, 3, 115, 6, 47, 2, 34, 1, 133, 0, 0, 0, 3, 1, 119, 253, 210, 0, 0, 255, 255, 255, 95, 0, 0, 3, 115, 6, 47, 2, 35, 1, 119, 253, 210, 0, 0, 0, 2, 1, 135, 0, 0, 255, 255, 0, 23, 0, 0, 2, 233, 6, 47, 2, 35, 1, 119, 254, 138, 0, 0, 0, 2, 1, 137, 0, 0, 255, 255, 255, 91, 255, 233, 3, 199, 6, 47, 2, 34, 1, 143, 0, 0, 0, 3, 1, 119, 253, 206, 0, 0, 255, 255, 255, 91, 0, 0, 3, 184, 6, 47, 2, 34, 1, 148, 0, 0, 0, 3, 1, 119, 253, 206, 0, 0, 255, 255, 255, 91, 0, 0, 3, 188, 6, 47, 2, 34, 0, 157, 0, 0, 0, 3, 1, 119, 253, 206, 0, 0, 255, 255, 0, 0, 255, 233, 3, 164, 6, 47, 2, 38, 1, 167, 0, 0, 0, 6, 1, 120, 0, 0, 0, 2, 255, 197, 0, 0, 3, 227, 5, 25, 0, 7, 0, 10, 0, 48, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 179, 8, 3, 2, 4, 43, 48, 49, 33, 35, 3, 33, 3, 35, 1, 51, 19, 3, 3, 3, 227, 147, 123, 253, 252, 121, 147, 1, 178, 186, 125, 219, 219, 1, 117, 254, 139, 5, 25, 252, 213, 2, 161, 253, 95, 0, 0, 3, 0, 49, 0, 0, 3, 162, 5, 25, 0, 14, 0, 27, 0, 36, 0, 135, 179, 33, 12, 4, 4, 43, 179, 11, 12, 15, 4, 43, 176, 11, 16, 177, 28, 10, 244, 177, 0, 12, 244, 178, 13, 4, 0, 17, 18, 57, 180, 218, 15, 234, 15, 2, 93, 64, 27, 9, 15, 25, 15, 41, 15, 57, 15, 73, 15, 89, 15, 105, 15, 121, 15, 137, 15, 153, 15, 169, 15, 185, 15, 201, 15, 13, 93, 176, 33, 16, 176, 21, 208, 176, 11, 16, 176, 38, 220, 0, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 21, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 179, 23, 1, 31, 4, 43, 178, 13, 31, 23, 17, 18, 57, 176, 5, 16, 177, 20, 6, 244, 176, 3, 16, 177, 33, 6, 244, 48, 49, 1, 20, 6, 35, 33, 17, 33, 50, 30, 2, 21, 20, 7, 22, 3, 52, 46, 2, 35, 33, 17, 33, 50, 62, 2, 19, 52, 38, 35, 33, 17, 33, 50, 54, 3, 162, 242, 223, 254, 96, 1, 137, 82, 158, 125, 78, 203, 248, 182, 58, 90, 108, 50, 255, 0, 1, 0, 56, 108, 86, 56, 45, 175, 153, 254, 233, 1, 23, 153, 175, 1, 117, 187, 186, 5, 25, 27, 74, 131, 106, 203, 74, 76, 1, 97, 69, 88, 47, 17, 254, 69, 17, 49, 86, 253, 244, 135, 123, 253, 254, 129, 0, 1, 0, 49, 0, 0, 3, 164, 5, 25, 0, 5, 0, 42, 179, 3, 12, 0, 4, 43, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 176, 0, 16, 177, 2, 6, 244, 48, 49, 19, 33, 21, 33, 17, 35, 49, 3, 115, 253, 22, 137, 5, 25, 117, 251, 92, 0, 0, 2, 255, 197, 0, 0, 3, 227, 5, 25, 0, 3, 0, 6, 0, 33, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 4, 6, 244, 48, 49, 33, 33, 1, 51, 19, 1, 1, 3, 227, 251, 226, 1, 178, 186, 248, 254, 170, 254, 170, 5, 25, 251, 92, 4, 24, 251, 232, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 11, 0, 61, 179, 10, 12, 1, 4, 43, 176, 10, 16, 176, 5, 208, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 179, 7, 6, 8, 4, 43, 176, 2, 16, 177, 4, 6, 244, 176, 0, 16, 177, 10, 6, 244, 48, 49, 33, 33, 17, 33, 21, 33, 17, 33, 21, 33, 17, 33, 3, 115, 252, 190, 3, 66, 253, 71, 2, 2, 253, 254, 2, 185, 5, 25, 117, 254, 45, 117, 254, 25, 0, 0, 1, 0, 49, 0, 0, 3, 119, 5, 25, 0, 13, 0, 85, 176, 14, 47, 176, 15, 47, 176, 0, 220, 176, 14, 16, 176, 6, 208, 176, 6, 47, 176, 1, 208, 178, 3, 6, 0, 17, 18, 57, 176, 6, 16, 177, 5, 13, 244, 176, 0, 16, 177, 11, 13, 244, 0, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 7, 16, 177, 3, 6, 244, 176, 0, 16, 177, 10, 6, 244, 48, 49, 33, 33, 53, 1, 33, 17, 35, 17, 33, 21, 1, 33, 17, 51, 3, 119, 252, 186, 2, 144, 253, 229, 117, 3, 49, 253, 119, 2, 41, 117, 117, 4, 47, 254, 192, 1, 181, 117, 251, 209, 1, 69, 0, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 11, 0, 96, 176, 12, 47, 176, 13, 47, 176, 0, 220, 177, 1, 8, 244, 176, 12, 16, 176, 5, 208, 176, 5, 47, 177, 4, 12, 244, 176, 7, 208, 176, 1, 16, 176, 9, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 179, 9, 6, 2, 4, 43, 48, 49, 33, 35, 17, 33, 17, 35, 17, 51, 17, 33, 17, 51, 3, 115, 138, 253, 209, 137, 137, 2, 47, 138, 2, 92, 253, 164, 5, 25, 253, 184, 2, 72, 0, 3, 255, 223, 255, 233, 3, 199, 5, 47, 0, 3, 0, 23, 0, 43, 0, 233, 176, 44, 47, 176, 45, 47, 176, 4, 220, 176, 44, 16, 176, 14, 208, 176, 14, 47, 176, 4, 16, 177, 24, 8, 244, 180, 218, 24, 234, 24, 2, 93, 64, 27, 9, 24, 25, 24, 41, 24, 57, 24, 73, 24, 89, 24, 105, 24, 121, 24, 137, 24, 153, 24, 169, 24, 185, 24, 201, 24, 13, 93, 176, 14, 16, 177, 34, 12, 244, 64, 19, 6, 34, 22, 34, 38, 34, 54, 34, 70, 34, 86, 34, 102, 34, 118, 34, 134, 34, 9, 93, 64, 9, 150, 34, 166, 34, 182, 34, 198, 34, 4, 93, 180, 213, 34, 229, 34, 2, 93, 0, 176, 0, 69, 88, 176, 19, 47, 27, 177, 19, 21, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 179, 1, 6, 2, 4, 43, 176, 19, 16, 177, 29, 6, 244, 180, 217, 29, 233, 29, 2, 93, 64, 27, 8, 29, 24, 29, 40, 29, 56, 29, 72, 29, 88, 29, 104, 29, 120, 29, 136, 29, 152, 29, 168, 29, 184, 29, 200, 29, 13, 93, 176, 9, 16, 177, 39, 6, 244, 64, 27, 7, 39, 23, 39, 39, 39, 55, 39, 71, 39, 87, 39, 103, 39, 119, 39, 135, 39, 151, 39, 167, 39, 183, 39, 199, 39, 13, 93, 180, 214, 39, 230, 39, 2, 93, 48, 49, 19, 33, 21, 33, 37, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 62, 2, 229, 1, 215, 254, 41, 2, 226, 54, 118, 191, 137, 137, 191, 119, 53, 53, 121, 191, 135, 135, 191, 118, 56, 138, 49, 92, 135, 86, 107, 139, 84, 33, 33, 84, 139, 107, 106, 140, 84, 32, 2, 199, 117, 57, 131, 244, 186, 113, 113, 186, 244, 131, 131, 244, 188, 113, 113, 188, 244, 131, 129, 207, 146, 77, 100, 162, 198, 99, 98, 199, 159, 101, 101, 159, 199, 0, 1, 0, 186, 0, 0, 2, 233, 5, 25, 0, 11, 0, 61, 179, 10, 8, 3, 4, 43, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 2, 6, 244, 176, 6, 16, 177, 4, 6, 244, 176, 8, 208, 176, 9, 208, 176, 2, 16, 176, 10, 208, 176, 11, 208, 48, 49, 33, 33, 53, 51, 17, 35, 53, 33, 21, 35, 17, 51, 2, 233, 253, 209, 211, 211, 2, 47, 210, 210, 117, 4, 47, 117, 117, 251, 209, 0, 1, 0, 49, 0, 0, 3, 158, 5, 25, 0, 11, 0, 74, 179, 4, 12, 5, 4, 43, 176, 4, 16, 176, 7, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 178, 8, 0, 6, 17, 18, 57, 48, 49, 33, 35, 1, 7, 17, 35, 17, 51, 17, 1, 51, 1, 3, 158, 168, 254, 78, 138, 137, 137, 2, 47, 181, 254, 0, 2, 127, 154, 254, 27, 5, 25, 253, 133, 2, 123, 253, 198, 0, 1, 255, 197, 0, 0, 3, 227, 5, 25, 0, 6, 0, 49, 0, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 15, 62, 89, 178, 1, 0, 4, 17, 18, 57, 48, 49, 33, 1, 1, 35, 1, 51, 1, 3, 80, 254, 131, 254, 133, 147, 1, 178, 186, 1, 178, 4, 141, 251, 115, 5, 25, 250, 231, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 12, 0, 109, 176, 13, 47, 176, 14, 47, 176, 0, 220, 177, 1, 8, 244, 176, 13, 16, 176, 7, 208, 176, 7, 47, 177, 6, 12, 244, 178, 10, 7, 0, 17, 18, 57, 0, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 21, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 178, 2, 0, 8, 17, 18, 57, 178, 5, 0, 8, 17, 18, 57, 178, 10, 0, 8, 17, 18, 57, 48, 49, 33, 35, 17, 3, 35, 3, 17, 35, 17, 51, 19, 19, 51, 3, 115, 138, 231, 98, 230, 137, 178, 238, 240, 178, 4, 63, 253, 95, 2, 161, 251, 193, 5, 25, 253, 86, 2, 170, 0, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 9, 0, 98, 176, 10, 47, 176, 11, 47, 176, 0, 220, 176, 10, 16, 176, 4, 208, 176, 4, 47, 177, 3, 12, 244, 176, 0, 16, 177, 7, 8, 244, 0, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 21, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 178, 2, 0, 5, 17, 18, 57, 178, 7, 0, 5, 17, 18, 57, 48, 49, 33, 35, 1, 17, 35, 17, 51, 1, 17, 51, 3, 115, 170, 253, 241, 137, 193, 1, 247, 138, 4, 80, 251, 176, 5, 25, 251, 227, 4, 29, 0, 3, 0, 0, 0, 0, 3, 164, 5, 25, 0, 7, 0, 15, 0, 19, 0, 126, 176, 20, 47, 176, 21, 47, 176, 20, 16, 176, 0, 208, 176, 0, 47, 177, 1, 11, 244, 176, 21, 16, 176, 6, 220, 177, 3, 11, 244, 176, 8, 208, 176, 1, 16, 176, 9, 208, 176, 0, 16, 176, 11, 208, 176, 6, 16, 176, 13, 208, 0, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 179, 17, 6, 18, 4, 43, 176, 6, 16, 176, 0, 220, 176, 6, 16, 177, 2, 6, 244, 176, 0, 16, 176, 4, 208, 176, 5, 208, 176, 12, 16, 177, 8, 6, 244, 176, 12, 16, 176, 10, 220, 176, 14, 208, 176, 15, 208, 48, 49, 17, 51, 21, 33, 53, 51, 17, 33, 1, 33, 21, 35, 17, 33, 17, 35, 1, 33, 21, 33, 121, 2, 178, 121, 252, 92, 3, 43, 253, 78, 121, 3, 164, 121, 253, 186, 1, 215, 254, 41, 1, 45, 184, 184, 254, 211, 4, 164, 187, 1, 48, 254, 208, 254, 222, 117, 0, 2, 255, 223, 255, 233, 3, 199, 5, 47, 0, 19, 0, 39, 0, 226, 176, 40, 47, 176, 41, 47, 176, 0, 220, 176, 40, 16, 176, 10, 208, 176, 10, 47, 176, 0, 16, 177, 20, 8, 244, 180, 218, 20, 234, 20, 2, 93, 64, 27, 9, 20, 25, 20, 41, 20, 57, 20, 73, 20, 89, 20, 105, 20, 121, 20, 137, 20, 153, 20, 169, 20, 185, 20, 201, 20, 13, 93, 176, 10, 16, 177, 30, 12, 244, 64, 23, 6, 30, 22, 30, 38, 30, 54, 30, 70, 30, 86, 30, 102, 30, 118, 30, 134, 30, 150, 30, 166, 30, 11, 93, 180, 182, 30, 198, 30, 2, 93, 180, 213, 30, 229, 30, 2, 93, 0, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 15, 16, 177, 25, 6, 244, 180, 217, 25, 233, 25, 2, 93, 64, 27, 8, 25, 24, 25, 40, 25, 56, 25, 72, 25, 88, 25, 104, 25, 120, 25, 136, 25, 152, 25, 168, 25, 184, 25, 200, 25, 13, 93, 176, 5, 16, 177, 35, 6, 244, 64, 27, 7, 35, 23, 35, 39, 35, 55, 35, 71, 35, 87, 35, 103, 35, 119, 35, 135, 35, 151, 35, 167, 35, 183, 35, 199, 35, 13, 93, 180, 214, 35, 230, 35, 2, 93, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 62, 2, 3, 199, 54, 118, 191, 137, 137, 191, 119, 53, 53, 121, 191, 135, 135, 191, 118, 56, 138, 49, 92, 135, 86, 107, 139, 84, 33, 33, 84, 139, 107, 106, 140, 84, 32, 2, 139, 131, 244, 186, 113, 113, 186, 244, 131, 131, 244, 188, 113, 113, 188, 244, 131, 129, 207, 146, 77, 100, 162, 198, 99, 98, 199, 159, 101, 101, 159, 199, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 7, 0, 75, 176, 8, 47, 176, 9, 47, 176, 0, 220, 177, 1, 8, 244, 176, 8, 16, 176, 5, 208, 176, 5, 47, 177, 4, 12, 244, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 176, 6, 16, 177, 2, 6, 244, 48, 49, 33, 35, 17, 33, 17, 35, 17, 33, 3, 115, 138, 253, 209, 137, 3, 66, 4, 164, 251, 92, 5, 25, 0, 0, 2, 0, 49, 0, 0, 3, 162, 5, 25, 0, 10, 0, 19, 0, 114, 176, 20, 47, 176, 21, 47, 176, 0, 220, 176, 20, 16, 176, 6, 208, 176, 6, 47, 177, 5, 12, 244, 176, 0, 16, 177, 11, 12, 244, 180, 218, 11, 234, 11, 2, 93, 64, 27, 9, 11, 25, 11, 41, 11, 57, 11, 73, 11, 89, 11, 105, 11, 121, 11, 137, 11, 153, 11, 169, 11, 185, 11, 201, 11, 13, 93, 176, 5, 16, 176, 15, 208, 0, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 179, 17, 6, 3, 4, 43, 176, 7, 16, 177, 14, 6, 244, 48, 49, 1, 20, 6, 35, 33, 17, 35, 17, 33, 50, 22, 7, 52, 38, 35, 33, 17, 33, 50, 54, 3, 162, 236, 213, 254, 217, 137, 1, 174, 215, 236, 137, 170, 142, 254, 217, 1, 39, 142, 170, 3, 164, 189, 184, 253, 209, 5, 25, 187, 186, 135, 121, 254, 0, 121, 0, 0, 1, 0, 43, 0, 0, 3, 115, 5, 25, 0, 15, 0, 67, 179, 7, 11, 8, 4, 43, 176, 7, 16, 176, 0, 208, 176, 8, 16, 176, 13, 208, 176, 7, 16, 176, 17, 220, 0, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 5, 16, 177, 9, 6, 244, 176, 0, 16, 177, 12, 6, 244, 48, 49, 33, 33, 53, 1, 1, 53, 33, 17, 35, 17, 33, 1, 1, 33, 17, 51, 3, 115, 252, 184, 1, 72, 254, 184, 3, 72, 121, 253, 213, 1, 69, 254, 187, 2, 43, 121, 117, 2, 24, 2, 23, 117, 254, 71, 1, 68, 253, 233, 253, 232, 1, 69, 0, 0, 1, 0, 0, 0, 0, 3, 164, 5, 25, 0, 15, 0, 107, 176, 16, 47, 176, 13, 208, 176, 13, 47, 176, 9, 220, 178, 64, 9, 1, 93, 176, 1, 220, 178, 64, 1, 1, 93, 177, 0, 13, 244, 176, 9, 16, 177, 4, 8, 244, 176, 13, 16, 177, 12, 13, 244, 176, 0, 16, 176, 17, 220, 0, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 176, 14, 16, 177, 2, 6, 244, 176, 6, 16, 177, 4, 6, 244, 176, 8, 208, 176, 9, 208, 176, 2, 16, 176, 10, 208, 176, 11, 208, 48, 49, 1, 35, 17, 33, 17, 51, 21, 33, 53, 51, 17, 33, 17, 35, 17, 33, 3, 164, 117, 254, 232, 210, 253, 209, 211, 254, 232, 117, 3, 164, 3, 96, 1, 68, 251, 209, 117, 117, 4, 47, 254, 188, 1, 185, 0, 0, 1, 255, 236, 0, 0, 3, 184, 5, 25, 0, 20, 0, 103, 179, 3, 8, 8, 4, 43, 178, 16, 8, 3, 17, 18, 57, 0, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 21, 62, 89, 176, 0, 69, 88, 176, 19, 47, 27, 177, 19, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 19, 16, 177, 0, 6, 244, 176, 5, 16, 177, 3, 6, 244, 176, 7, 208, 176, 8, 208, 176, 0, 16, 176, 10, 208, 176, 11, 208, 176, 14, 208, 176, 15, 208, 178, 16, 5, 12, 17, 18, 57, 176, 17, 208, 176, 18, 208, 48, 49, 1, 35, 1, 17, 51, 21, 33, 53, 51, 17, 1, 35, 53, 33, 21, 35, 19, 19, 35, 53, 33, 3, 184, 106, 254, 201, 210, 253, 209, 211, 254, 201, 106, 1, 112, 108, 227, 225, 108, 1, 112, 4, 164, 253, 143, 254, 66, 117, 117, 1, 190, 2, 113, 117, 117, 254, 20, 1, 236, 117, 0, 0, 3, 255, 236, 0, 0, 3, 188, 5, 25, 0, 25, 0, 34, 0, 43, 0, 145, 179, 35, 12, 13, 4, 43, 179, 6, 8, 7, 4, 43, 179, 0, 12, 26, 4, 43, 176, 7, 16, 176, 18, 208, 176, 6, 16, 176, 20, 208, 180, 218, 26, 234, 26, 2, 93, 64, 27, 9, 26, 25, 26, 41, 26, 57, 26, 73, 26, 89, 26, 105, 26, 121, 26, 137, 26, 153, 26, 169, 26, 185, 26, 201, 26, 13, 93, 176, 6, 16, 176, 31, 208, 64, 27, 6, 35, 22, 35, 38, 35, 54, 35, 70, 35, 86, 35, 102, 35, 118, 35, 134, 35, 150, 35, 166, 35, 182, 35, 198, 35, 13, 93, 180, 213, 35, 229, 35, 2, 93, 176, 7, 16, 176, 38, 208, 0, 176, 0, 69, 88, 176, 19, 47, 27, 177, 19, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 48, 49, 1, 20, 14, 2, 7, 21, 35, 53, 46, 3, 53, 52, 62, 2, 55, 53, 51, 21, 30, 3, 7, 52, 46, 2, 39, 17, 54, 54, 37, 20, 22, 23, 17, 14, 3, 3, 188, 61, 111, 155, 94, 138, 94, 153, 111, 59, 59, 111, 153, 94, 138, 94, 155, 111, 61, 137, 39, 71, 107, 67, 135, 149, 253, 66, 145, 135, 67, 105, 71, 37, 2, 143, 98, 168, 127, 80, 10, 172, 174, 10, 80, 125, 168, 98, 99, 168, 129, 79, 13, 162, 162, 10, 82, 127, 170, 99, 70, 125, 98, 64, 12, 253, 37, 22, 199, 141, 141, 199, 22, 2, 219, 12, 66, 96, 125, 0, 1, 255, 233, 0, 0, 3, 186, 5, 25, 0, 27, 0, 122, 0, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 21, 62, 89, 176, 0, 69, 88, 176, 21, 47, 27, 177, 21, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 15, 62, 89, 177, 2, 6, 244, 176, 3, 208, 178, 4, 0, 14, 17, 18, 57, 176, 5, 208, 176, 6, 208, 176, 9, 208, 176, 10, 208, 176, 14, 16, 177, 12, 6, 244, 176, 16, 208, 176, 17, 208, 178, 18, 0, 14, 17, 18, 57, 176, 19, 208, 176, 20, 208, 176, 23, 208, 176, 24, 208, 176, 10, 16, 176, 26, 208, 176, 27, 208, 48, 49, 33, 33, 53, 51, 3, 3, 51, 21, 33, 53, 51, 1, 1, 35, 53, 33, 21, 35, 19, 19, 35, 53, 33, 21, 35, 1, 1, 51, 3, 186, 254, 142, 88, 205, 207, 88, 254, 141, 127, 1, 27, 254, 234, 109, 1, 117, 109, 203, 197, 105, 1, 117, 113, 254, 240, 1, 24, 127, 117, 1, 172, 254, 84, 117, 117, 2, 28, 2, 19, 117, 117, 254, 94, 1, 162, 117, 117, 253, 237, 253, 228, 0, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 27, 0, 85, 179, 12, 12, 9, 4, 43, 179, 4, 8, 5, 4, 43, 179, 0, 8, 25, 4, 43, 176, 5, 16, 176, 17, 208, 176, 4, 16, 176, 19, 208, 0, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 21, 62, 89, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 21, 62, 89, 176, 0, 69, 88, 176, 26, 47, 27, 177, 26, 21, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 48, 49, 1, 20, 2, 7, 17, 35, 17, 38, 2, 53, 17, 51, 17, 20, 30, 2, 23, 17, 51, 17, 62, 3, 53, 17, 51, 3, 115, 168, 180, 138, 182, 166, 137, 17, 45, 82, 67, 138, 65, 82, 47, 16, 138, 3, 39, 205, 255, 0, 22, 254, 188, 1, 68, 22, 1, 2, 205, 1, 240, 254, 14, 53, 117, 102, 78, 15, 3, 95, 252, 161, 15, 78, 102, 117, 53, 1, 242, 255, 255, 0, 186, 0, 0, 2, 233, 6, 142, 2, 34, 1, 137, 0, 0, 0, 3, 0, 140, 0, 0, 1, 117, 255, 255, 255, 236, 0, 0, 3, 184, 6, 142, 2, 35, 0, 140, 0, 0, 1, 117, 0, 2, 1, 148, 0, 0, 255, 255, 0, 2, 255, 233, 3, 170, 6, 47, 2, 34, 1, 159, 0, 0, 0, 2, 1, 119, 0, 0, 255, 255, 0, 0, 255, 233, 3, 129, 6, 47, 2, 38, 1, 163, 0, 0, 0, 6, 1, 119, 0, 0, 255, 255, 0, 12, 254, 139, 3, 115, 6, 47, 2, 38, 1, 165, 0, 0, 0, 6, 1, 119, 0, 0, 255, 255, 0, 186, 255, 233, 2, 233, 6, 47, 2, 38, 1, 167, 0, 0, 0, 6, 1, 119, 0, 0, 255, 255, 0, 0, 255, 233, 3, 164, 6, 47, 2, 38, 1, 178, 0, 0, 0, 6, 1, 120, 0, 0, 0, 2, 0, 2, 255, 233, 3, 170, 3, 186, 0, 19, 0, 41, 0, 204, 179, 0, 12, 20, 4, 43, 64, 27, 6, 0, 22, 0, 38, 0, 54, 0, 70, 0, 86, 0, 102, 0, 118, 0, 134, 0, 150, 0, 166, 0, 182, 0, 198, 0, 13, 93, 180, 213, 0, 229, 0, 2, 93, 0, 176, 0, 69, 88, 176, 29, 47, 27, 177, 29, 19, 62, 89, 176, 0, 69, 88, 176, 25, 47, 27, 177, 25, 19, 62, 89, 176, 0, 69, 88, 176, 32, 47, 27, 177, 32, 15, 62, 89, 176, 0, 69, 88, 176, 37, 47, 27, 177, 37, 15, 62, 89, 177, 5, 6, 244, 64, 27, 7, 5, 23, 5, 39, 5, 55, 5, 71, 5, 87, 5, 103, 5, 119, 5, 135, 5, 151, 5, 167, 5, 183, 5, 199, 5, 13, 93, 180, 214, 5, 230, 5, 2, 93, 176, 25, 16, 177, 15, 6, 244, 180, 217, 15, 233, 15, 2, 93, 64, 27, 8, 15, 24, 15, 40, 15, 56, 15, 72, 15, 88, 15, 104, 15, 120, 15, 136, 15, 152, 15, 168, 15, 184, 15, 200, 15, 13, 93, 178, 28, 37, 25, 17, 18, 57, 178, 30, 25, 15, 17, 18, 57, 178, 34, 37, 25, 17, 18, 57, 48, 49, 19, 20, 30, 2, 51, 50, 62, 2, 55, 46, 3, 35, 34, 14, 2, 7, 52, 62, 2, 51, 50, 22, 23, 19, 51, 3, 19, 35, 3, 6, 6, 35, 34, 46, 2, 139, 27, 59, 97, 67, 60, 92, 71, 52, 20, 20, 52, 71, 92, 60, 67, 97, 59, 27, 137, 45, 96, 146, 100, 123, 182, 41, 56, 147, 131, 131, 147, 56, 41, 182, 123, 100, 146, 96, 45, 1, 211, 64, 131, 108, 70, 70, 106, 133, 64, 63, 132, 106, 70, 70, 106, 132, 63, 94, 176, 135, 82, 155, 137, 1, 14, 254, 47, 254, 45, 1, 14, 137, 156, 82, 138, 176, 0, 2, 0, 49, 254, 139, 3, 168, 5, 47, 0, 26, 0, 52, 1, 13, 179, 4, 12, 5, 4, 43, 179, 16, 8, 39, 4, 43, 180, 218, 39, 234, 39, 2, 93, 64, 27, 9, 39, 25, 39, 41, 39, 57, 39, 73, 39, 89, 39, 105, 39, 121, 39, 137, 39, 153, 39, 169, 39, 185, 39, 201, 39, 13, 93, 178, 30, 39, 16, 17, 18, 57, 176, 30, 47, 180, 218, 30, 234, 30, 2, 93, 64, 27, 9, 30, 25, 30, 41, 30, 57, 30, 73, 30, 89, 30, 105, 30, 121, 30, 137, 30, 153, 30, 169, 30, 185, 30, 201, 30, 13, 93, 177, 22, 12, 244, 178, 19, 5, 22, 17, 18, 57, 176, 4, 16, 176, 49, 208, 176, 22, 16, 176, 54, 220, 0, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 21, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 17, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 179, 36, 6, 33, 4, 43, 176, 0, 16, 177, 27, 6, 244, 64, 27, 7, 27, 23, 27, 39, 27, 55, 27, 71, 27, 87, 27, 103, 27, 119, 27, 135, 27, 151, 27, 167, 27, 183, 27, 199, 27, 13, 93, 180, 214, 27, 230, 27, 2, 93, 178, 3, 0, 27, 17, 18, 57, 178, 19, 33, 36, 17, 18, 57, 176, 11, 16, 177, 44, 6, 244, 180, 217, 44, 233, 44, 2, 93, 64, 27, 8, 44, 24, 44, 40, 44, 56, 44, 72, 44, 88, 44, 104, 44, 120, 44, 136, 44, 152, 44, 168, 44, 184, 44, 200, 44, 13, 93, 48, 49, 5, 34, 38, 39, 17, 35, 17, 52, 62, 2, 51, 50, 30, 2, 21, 20, 6, 7, 22, 22, 21, 20, 14, 2, 39, 50, 54, 53, 52, 38, 35, 35, 53, 51, 50, 54, 53, 52, 46, 2, 35, 34, 14, 2, 21, 17, 22, 22, 1, 238, 99, 145, 64, 137, 66, 112, 156, 90, 96, 152, 104, 56, 117, 109, 133, 148, 66, 116, 162, 98, 143, 162, 170, 166, 90, 90, 145, 135, 30, 64, 102, 74, 53, 103, 81, 50, 60, 147, 23, 48, 49, 254, 65, 5, 31, 84, 143, 105, 57, 59, 94, 125, 64, 104, 160, 37, 41, 166, 123, 82, 137, 100, 58, 117, 144, 116, 117, 147, 117, 142, 108, 37, 80, 65, 43, 32, 68, 102, 70, 253, 45, 65, 56, 0, 1, 0, 0, 254, 139, 3, 123, 3, 164, 0, 14, 0, 62, 179, 6, 8, 7, 4, 43, 178, 11, 7, 6, 17, 18, 57, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 19, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 17, 62, 89, 178, 11, 6, 0, 17, 18, 57, 48, 49, 1, 14, 3, 7, 17, 35, 17, 1, 51, 1, 54, 18, 55, 3, 123, 17, 57, 86, 119, 77, 138, 254, 115, 158, 1, 61, 119, 139, 19, 3, 164, 119, 254, 252, 241, 107, 254, 180, 1, 74, 3, 207, 252, 180, 199, 1, 172, 217, 0, 2, 0, 39, 255, 233, 3, 121, 5, 47, 0, 39, 0, 55, 1, 17, 179, 46, 12, 17, 4, 43, 179, 0, 12, 25, 4, 43, 179, 7, 12, 40, 4, 43, 64, 27, 6, 0, 22, 0, 38, 0, 54, 0, 70, 0, 86, 0, 102, 0, 118, 0, 134, 0, 150, 0, 166, 0, 182, 0, 198, 0, 13, 93, 180, 213, 0, 229, 0, 2, 93, 178, 20, 17, 7, 17, 18, 57, 180, 218, 40, 234, 40, 2, 93, 64, 27, 9, 40, 25, 40, 41, 40, 57, 40, 73, 40, 89, 40, 105, 40, 121, 40, 137, 40, 153, 40, 169, 40, 185, 40, 201, 40, 13, 93, 64, 27, 6, 46, 22, 46, 38, 46, 54, 46, 70, 46, 86, 46, 102, 46, 118, 46, 134, 46, 150, 46, 166, 46, 182, 46, 198, 46, 13, 93, 180, 213, 46, 229, 46, 2, 93, 176, 7, 16, 176, 57, 220, 0, 176, 0, 69, 88, 176, 30, 47, 27, 177, 30, 21, 62, 89, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 15, 62, 89, 178, 20, 12, 30, 17, 18, 57, 176, 30, 16, 177, 37, 6, 244, 180, 217, 37, 233, 37, 2, 93, 64, 19, 8, 37, 24, 37, 40, 37, 56, 37, 72, 37, 88, 37, 104, 37, 120, 37, 136, 37, 9, 93, 64, 9, 152, 37, 168, 37, 184, 37, 200, 37, 4, 93, 176, 12, 16, 177, 51, 6, 244, 180, 7, 51, 23, 51, 2, 93, 64, 23, 39, 51, 55, 51, 71, 51, 87, 51, 103, 51, 119, 51, 135, 51, 151, 51, 167, 51, 183, 51, 199, 51, 11, 93, 180, 214, 51, 230, 51, 2, 93, 48, 49, 1, 20, 30, 4, 21, 20, 14, 2, 35, 34, 46, 2, 53, 52, 54, 55, 46, 3, 53, 52, 62, 2, 51, 50, 22, 23, 7, 38, 38, 35, 34, 6, 1, 52, 38, 39, 6, 6, 21, 20, 30, 2, 51, 50, 62, 2, 1, 78, 82, 123, 145, 123, 82, 60, 110, 158, 98, 96, 158, 111, 59, 166, 168, 37, 64, 47, 28, 39, 75, 109, 69, 84, 132, 61, 61, 48, 106, 62, 67, 88, 1, 162, 148, 133, 133, 162, 31, 67, 111, 78, 78, 110, 70, 31, 4, 68, 41, 76, 82, 98, 127, 160, 102, 97, 155, 115, 62, 62, 115, 155, 97, 118, 238, 92, 25, 51, 55, 66, 41, 43, 84, 67, 41, 33, 41, 98, 33, 22, 59, 253, 23, 114, 189, 71, 71, 189, 117, 57, 110, 89, 53, 56, 88, 110, 0, 0, 1, 0, 0, 255, 233, 3, 129, 3, 186, 0, 48, 0, 191, 179, 28, 12, 43, 4, 43, 176, 43, 16, 176, 0, 208, 176, 0, 47, 64, 27, 6, 28, 22, 28, 38, 28, 54, 28, 70, 28, 86, 28, 102, 28, 118, 28, 134, 28, 150, 28, 166, 28, 182, 28, 198, 28, 13, 93, 180, 213, 28, 229, 28, 2, 93, 176, 28, 16, 176, 15, 208, 176, 15, 47, 0, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 19, 62, 89, 176, 0, 69, 88, 176, 38, 47, 27, 177, 38, 15, 62, 89, 179, 21, 6, 22, 4, 43, 176, 5, 16, 177, 12, 6, 244, 180, 217, 12, 233, 12, 2, 93, 64, 27, 8, 12, 24, 12, 40, 12, 56, 12, 72, 12, 88, 12, 104, 12, 120, 12, 136, 12, 152, 12, 168, 12, 184, 12, 200, 12, 13, 93, 176, 38, 16, 177, 31, 6, 244, 64, 27, 7, 31, 23, 31, 39, 31, 55, 31, 71, 31, 87, 31, 103, 31, 119, 31, 135, 31, 151, 31, 167, 31, 183, 31, 199, 31, 13, 93, 180, 214, 31, 230, 31, 2, 93, 178, 46, 22, 21, 17, 18, 57, 48, 49, 19, 52, 62, 2, 51, 50, 22, 23, 7, 38, 38, 35, 34, 6, 21, 20, 30, 2, 51, 51, 21, 35, 34, 14, 2, 21, 20, 22, 51, 50, 54, 55, 23, 6, 6, 35, 34, 46, 2, 53, 52, 54, 55, 38, 38, 12, 66, 119, 161, 97, 153, 201, 61, 102, 41, 154, 118, 142, 163, 30, 64, 98, 66, 206, 206, 68, 100, 68, 35, 182, 148, 123, 164, 47, 96, 63, 207, 160, 100, 170, 125, 72, 113, 92, 99, 94, 2, 164, 63, 105, 71, 39, 100, 100, 70, 70, 84, 88, 74, 25, 51, 41, 27, 116, 27, 43, 55, 27, 80, 90, 76, 72, 66, 100, 99, 39, 74, 107, 67, 72, 119, 18, 16, 119, 0, 0, 1, 0, 2, 254, 117, 3, 164, 5, 25, 0, 40, 0, 130, 176, 41, 47, 176, 42, 47, 176, 34, 220, 177, 0, 12, 244, 180, 218, 0, 234, 0, 2, 93, 64, 27, 9, 0, 25, 0, 41, 0, 57, 0, 73, 0, 89, 0, 105, 0, 121, 0, 137, 0, 153, 0, 169, 0, 185, 0, 201, 0, 13, 93, 176, 41, 16, 176, 10, 208, 176, 10, 47, 178, 15, 10, 34, 17, 18, 57, 177, 24, 12, 244, 64, 27, 6, 24, 22, 24, 38, 24, 54, 24, 70, 24, 86, 24, 102, 24, 118, 24, 134, 24, 150, 24, 166, 24, 182, 24, 198, 24, 13, 93, 180, 213, 24, 229, 24, 2, 93, 0, 176, 37, 47, 176, 0, 69, 88, 176, 17, 47, 27, 177, 17, 21, 62, 89, 177, 15, 6, 244, 48, 49, 5, 52, 46, 2, 39, 46, 3, 53, 52, 62, 2, 55, 33, 53, 33, 21, 6, 4, 6, 6, 21, 20, 30, 2, 23, 30, 3, 21, 20, 6, 7, 39, 54, 54, 3, 2, 33, 59, 88, 55, 84, 189, 158, 102, 100, 174, 232, 131, 254, 59, 2, 234, 184, 254, 217, 205, 109, 72, 115, 147, 74, 71, 132, 98, 59, 116, 117, 60, 88, 68, 115, 37, 43, 25, 12, 4, 6, 35, 100, 189, 160, 104, 203, 180, 152, 53, 117, 117, 49, 160, 188, 203, 92, 113, 141, 80, 31, 6, 6, 21, 51, 88, 74, 86, 153, 41, 104, 33, 96, 0, 0, 1, 0, 12, 254, 139, 3, 115, 3, 186, 0, 29, 0, 145, 176, 30, 47, 176, 31, 47, 176, 30, 16, 176, 17, 208, 176, 17, 47, 177, 16, 8, 244, 178, 0, 17, 16, 17, 18, 57, 176, 31, 16, 176, 7, 220, 177, 8, 8, 244, 0, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 19, 62, 89, 176, 0, 69, 88, 176, 27, 47, 27, 177, 27, 19, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 17, 62, 89, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 15, 62, 89, 178, 0, 7, 3, 17, 18, 57, 176, 3, 16, 177, 12, 6, 244, 180, 217, 12, 233, 12, 2, 93, 64, 27, 8, 12, 24, 12, 40, 12, 56, 12, 72, 12, 88, 12, 104, 12, 120, 12, 136, 12, 152, 12, 168, 12, 184, 12, 200, 12, 13, 93, 176, 21, 208, 48, 49, 1, 54, 54, 51, 50, 22, 21, 17, 35, 17, 52, 38, 35, 34, 6, 21, 17, 35, 17, 52, 38, 35, 34, 7, 39, 54, 54, 51, 50, 22, 1, 47, 31, 131, 104, 154, 160, 138, 86, 90, 104, 141, 138, 45, 35, 34, 33, 27, 21, 57, 29, 71, 109, 3, 6, 78, 102, 184, 192, 252, 73, 3, 183, 116, 144, 160, 146, 253, 236, 2, 236, 43, 47, 15, 107, 10, 14, 88, 0, 0, 3, 0, 41, 255, 233, 3, 127, 5, 47, 0, 19, 0, 30, 0, 41, 0, 164, 176, 42, 47, 176, 43, 47, 176, 0, 220, 176, 42, 16, 176, 10, 208, 176, 10, 47, 176, 0, 16, 177, 25, 8, 244, 176, 10, 16, 177, 26, 8, 244, 176, 36, 208, 176, 25, 16, 176, 37, 208, 0, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 179, 37, 6, 25, 4, 43, 176, 5, 16, 177, 20, 6, 244, 64, 27, 7, 20, 23, 20, 39, 20, 55, 20, 71, 20, 87, 20, 103, 20, 119, 20, 135, 20, 151, 20, 167, 20, 183, 20, 199, 20, 13, 93, 180, 214, 20, 230, 20, 2, 93, 176, 15, 16, 177, 31, 6, 244, 180, 217, 31, 233, 31, 2, 93, 64, 27, 8, 31, 24, 31, 40, 31, 56, 31, 72, 31, 88, 31, 104, 31, 120, 31, 136, 31, 152, 31, 168, 31, 184, 31, 200, 31, 13, 93, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 1, 50, 62, 2, 55, 33, 30, 3, 19, 34, 14, 2, 7, 33, 46, 3, 3, 127, 49, 103, 163, 113, 115, 159, 105, 47, 47, 105, 159, 115, 115, 161, 105, 47, 254, 84, 78, 108, 68, 31, 4, 253, 192, 2, 33, 68, 106, 78, 78, 106, 68, 33, 2, 2, 64, 4, 33, 68, 106, 2, 139, 149, 248, 178, 99, 99, 178, 248, 149, 148, 248, 180, 100, 100, 178, 250, 253, 63, 78, 137, 189, 108, 108, 189, 137, 78, 4, 92, 73, 131, 179, 104, 104, 179, 131, 73, 0, 1, 0, 186, 255, 233, 2, 233, 3, 164, 0, 17, 0, 93, 179, 13, 8, 8, 4, 43, 0, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 19, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 176, 11, 16, 177, 9, 3, 244, 176, 3, 16, 177, 15, 6, 244, 64, 27, 7, 15, 23, 15, 39, 15, 55, 15, 71, 15, 87, 15, 103, 15, 119, 15, 135, 15, 151, 15, 167, 15, 183, 15, 199, 15, 13, 93, 180, 214, 15, 230, 15, 2, 93, 178, 17, 3, 11, 17, 18, 57, 48, 49, 37, 6, 6, 35, 34, 46, 2, 53, 17, 35, 53, 33, 17, 20, 51, 50, 55, 2, 233, 22, 57, 43, 45, 82, 62, 37, 211, 1, 93, 106, 49, 27, 2, 12, 13, 31, 58, 86, 55, 2, 92, 121, 253, 43, 113, 17, 0, 0, 1, 0, 49, 0, 0, 3, 162, 3, 164, 0, 11, 0, 74, 179, 4, 12, 5, 4, 43, 176, 4, 16, 176, 7, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 178, 8, 0, 6, 17, 18, 57, 48, 49, 33, 35, 1, 7, 17, 35, 17, 51, 17, 1, 51, 1, 3, 162, 195, 254, 131, 168, 137, 137, 2, 19, 196, 254, 45, 1, 162, 154, 254, 248, 3, 164, 254, 10, 1, 246, 254, 84, 0, 1, 255, 225, 0, 0, 3, 193, 5, 47, 0, 18, 0, 93, 0, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 15, 62, 89, 178, 1, 0, 14, 17, 18, 57, 176, 14, 16, 177, 8, 6, 244, 180, 217, 8, 233, 8, 2, 93, 64, 27, 8, 8, 24, 8, 40, 8, 56, 8, 72, 8, 88, 8, 104, 8, 120, 8, 136, 8, 152, 8, 168, 8, 184, 8, 200, 8, 13, 93, 48, 49, 33, 1, 1, 35, 1, 39, 38, 38, 35, 34, 6, 7, 39, 54, 51, 50, 22, 23, 1, 3, 29, 254, 182, 254, 176, 162, 1, 160, 57, 19, 51, 68, 28, 90, 47, 27, 96, 96, 86, 142, 39, 1, 248, 3, 47, 252, 209, 3, 190, 142, 45, 65, 16, 20, 118, 35, 61, 99, 251, 113, 0, 0, 1, 0, 49, 254, 139, 3, 152, 3, 164, 0, 33, 0, 172, 176, 34, 47, 176, 35, 47, 176, 22, 220, 177, 19, 8, 244, 178, 0, 22, 19, 17, 18, 57, 176, 34, 16, 176, 8, 208, 176, 8, 47, 177, 7, 12, 244, 176, 10, 208, 0, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 19, 62, 89, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 19, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 17, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 176, 0, 69, 88, 176, 31, 47, 27, 177, 31, 15, 62, 89, 178, 0, 7, 9, 17, 18, 57, 178, 6, 7, 9, 17, 18, 57, 176, 3, 16, 177, 14, 6, 244, 64, 27, 7, 14, 23, 14, 39, 14, 55, 14, 71, 14, 87, 14, 103, 14, 119, 14, 135, 14, 151, 14, 167, 14, 183, 14, 199, 14, 13, 93, 180, 214, 14, 230, 14, 2, 93, 176, 25, 208, 178, 27, 7, 9, 17, 18, 57, 48, 49, 37, 6, 6, 35, 34, 38, 39, 17, 35, 17, 51, 17, 20, 22, 51, 50, 62, 2, 53, 17, 51, 17, 20, 22, 51, 50, 55, 23, 6, 6, 35, 34, 38, 2, 117, 21, 137, 98, 60, 104, 23, 137, 137, 109, 78, 47, 84, 65, 37, 139, 41, 29, 49, 29, 27, 21, 49, 37, 72, 108, 158, 76, 105, 62, 57, 254, 43, 5, 25, 253, 155, 106, 119, 41, 78, 115, 71, 2, 21, 253, 22, 45, 47, 17, 109, 12, 13, 89, 0, 1, 0, 0, 0, 0, 3, 123, 3, 164, 0, 10, 0, 49, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 19, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 178, 7, 3, 0, 17, 18, 57, 48, 49, 1, 6, 2, 7, 35, 1, 51, 1, 54, 18, 55, 3, 123, 35, 178, 158, 139, 254, 131, 164, 1, 47, 119, 127, 18, 3, 164, 240, 254, 33, 213, 3, 164, 252, 225, 197, 1, 129, 217, 0, 1, 0, 2, 254, 117, 3, 139, 5, 47, 0, 58, 0, 195, 179, 29, 12, 56, 4, 43, 179, 39, 12, 46, 4, 43, 178, 0, 56, 39, 17, 18, 57, 64, 27, 6, 29, 22, 29, 38, 29, 54, 29, 70, 29, 86, 29, 102, 29, 118, 29, 134, 29, 150, 29, 166, 29, 182, 29, 198, 29, 13, 93, 180, 213, 29, 229, 29, 2, 93, 178, 3, 56, 29, 17, 18, 57, 176, 3, 47, 177, 18, 8, 244, 180, 218, 46, 234, 46, 2, 93, 64, 27, 9, 46, 25, 46, 41, 46, 57, 46, 73, 46, 89, 46, 105, 46, 121, 46, 137, 46, 153, 46, 169, 46, 185, 46, 201, 46, 13, 93, 176, 39, 16, 176, 60, 220, 0, 176, 42, 47, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 21, 62, 89, 179, 34, 3, 51, 4, 43, 179, 22, 6, 23, 4, 43, 178, 0, 23, 22, 17, 18, 57, 176, 8, 16, 177, 15, 6, 244, 180, 217, 15, 233, 15, 2, 93, 64, 27, 8, 15, 24, 15, 40, 15, 56, 15, 72, 15, 88, 15, 104, 15, 120, 15, 136, 15, 152, 15, 168, 15, 184, 15, 200, 15, 13, 93, 48, 49, 1, 38, 38, 53, 52, 62, 2, 51, 50, 22, 23, 7, 38, 38, 35, 34, 6, 21, 20, 22, 51, 51, 21, 35, 34, 14, 2, 21, 20, 30, 2, 23, 30, 3, 21, 20, 6, 7, 39, 54, 54, 53, 52, 46, 2, 39, 46, 3, 53, 52, 54, 1, 27, 111, 115, 68, 113, 147, 80, 78, 164, 63, 43, 70, 122, 70, 117, 153, 139, 141, 246, 246, 76, 125, 88, 47, 70, 115, 147, 76, 71, 132, 98, 59, 116, 117, 60, 88, 68, 33, 59, 88, 55, 117, 195, 141, 80, 148, 2, 176, 35, 166, 96, 78, 127, 88, 49, 35, 35, 106, 35, 24, 125, 100, 113, 127, 116, 39, 72, 94, 55, 78, 92, 49, 19, 6, 6, 21, 51, 88, 74, 86, 153, 41, 104, 33, 96, 47, 37, 43, 25, 12, 4, 10, 35, 80, 133, 109, 108, 166, 0, 0, 2, 255, 236, 255, 233, 3, 188, 3, 186, 0, 19, 0, 39, 0, 226, 176, 40, 47, 176, 41, 47, 176, 0, 220, 176, 40, 16, 176, 10, 208, 176, 10, 47, 176, 0, 16, 177, 20, 12, 244, 180, 218, 20, 234, 20, 2, 93, 64, 27, 9, 20, 25, 20, 41, 20, 57, 20, 73, 20, 89, 20, 105, 20, 121, 20, 137, 20, 153, 20, 169, 20, 185, 20, 201, 20, 13, 93, 176, 10, 16, 177, 30, 12, 244, 64, 23, 6, 30, 22, 30, 38, 30, 54, 30, 70, 30, 86, 30, 102, 30, 118, 30, 134, 30, 150, 30, 166, 30, 11, 93, 180, 182, 30, 198, 30, 2, 93, 180, 213, 30, 229, 30, 2, 93, 0, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 15, 16, 177, 25, 6, 244, 180, 217, 25, 233, 25, 2, 93, 64, 27, 8, 25, 24, 25, 40, 25, 56, 25, 72, 25, 88, 25, 104, 25, 120, 25, 136, 25, 152, 25, 168, 25, 184, 25, 200, 25, 13, 93, 176, 5, 16, 177, 35, 6, 244, 64, 27, 7, 35, 23, 35, 39, 35, 55, 35, 71, 35, 87, 35, 103, 35, 119, 35, 135, 35, 151, 35, 167, 35, 183, 35, 199, 35, 13, 93, 180, 214, 35, 230, 35, 2, 93, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 62, 2, 3, 188, 69, 129, 180, 111, 109, 180, 129, 69, 69, 129, 180, 109, 111, 180, 129, 69, 137, 47, 92, 131, 82, 82, 131, 90, 47, 47, 90, 131, 82, 82, 131, 92, 47, 1, 207, 109, 178, 127, 72, 72, 127, 178, 109, 106, 183, 129, 73, 73, 129, 183, 106, 80, 135, 102, 58, 58, 102, 135, 80, 80, 135, 98, 56, 56, 98, 135, 0, 2, 0, 49, 254, 139, 3, 164, 3, 186, 0, 19, 0, 38, 0, 206, 176, 39, 47, 176, 40, 47, 176, 0, 220, 176, 39, 16, 176, 9, 208, 176, 9, 47, 177, 8, 12, 244, 176, 0, 16, 177, 20, 12, 244, 180, 218, 20, 234, 20, 2, 93, 64, 27, 9, 20, 25, 20, 41, 20, 57, 20, 73, 20, 89, 20, 105, 20, 121, 20, 137, 20, 153, 20, 169, 20, 185, 20, 201, 20, 13, 93, 176, 8, 16, 176, 30, 208, 0, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 19, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 17, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 177, 34, 6, 244, 64, 27, 7, 34, 23, 34, 39, 34, 55, 34, 71, 34, 87, 34, 103, 34, 119, 34, 135, 34, 151, 34, 167, 34, 183, 34, 199, 34, 13, 93, 180, 214, 34, 230, 34, 2, 93, 178, 7, 5, 34, 17, 18, 57, 176, 15, 16, 177, 25, 6, 244, 180, 217, 25, 233, 25, 2, 93, 64, 27, 8, 25, 24, 25, 40, 25, 56, 25, 72, 25, 88, 25, 104, 25, 120, 25, 136, 25, 152, 25, 168, 25, 184, 25, 200, 25, 13, 93, 48, 49, 1, 20, 14, 2, 35, 34, 39, 17, 35, 17, 52, 62, 2, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 14, 2, 21, 21, 22, 22, 51, 50, 62, 2, 3, 164, 66, 121, 176, 110, 150, 123, 137, 49, 105, 159, 111, 105, 170, 120, 64, 137, 41, 82, 121, 78, 61, 107, 76, 43, 60, 135, 78, 84, 125, 84, 43, 1, 209, 109, 178, 129, 72, 97, 254, 65, 3, 70, 92, 176, 137, 84, 71, 131, 181, 106, 80, 135, 100, 58, 41, 90, 142, 100, 250, 65, 56, 58, 98, 135, 0, 0, 1, 0, 2, 254, 117, 3, 139, 3, 186, 0, 43, 0, 175, 176, 44, 47, 176, 45, 47, 176, 44, 16, 176, 0, 208, 176, 0, 47, 176, 45, 16, 176, 27, 220, 176, 8, 208, 176, 8, 47, 176, 0, 16, 177, 17, 12, 244, 64, 27, 6, 17, 22, 17, 38, 17, 54, 17, 70, 17, 86, 17, 102, 17, 118, 17, 134, 17, 150, 17, 166, 17, 182, 17, 198, 17, 13, 93, 180, 213, 17, 229, 17, 2, 93, 176, 27, 16, 177, 34, 12, 244, 180, 218, 34, 234, 34, 2, 93, 64, 27, 9, 34, 25, 34, 41, 34, 57, 34, 73, 34, 89, 34, 105, 34, 121, 34, 137, 34, 153, 34, 169, 34, 185, 34, 201, 34, 13, 93, 0, 176, 30, 47, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 19, 62, 89, 177, 12, 6, 244, 180, 217, 12, 233, 12, 2, 93, 64, 27, 8, 12, 24, 12, 40, 12, 56, 12, 72, 12, 88, 12, 104, 12, 120, 12, 136, 12, 152, 12, 168, 12, 184, 12, 200, 12, 13, 93, 48, 49, 19, 52, 62, 2, 51, 50, 22, 23, 7, 38, 38, 35, 34, 14, 2, 21, 20, 30, 2, 23, 30, 3, 21, 20, 6, 7, 39, 54, 54, 53, 52, 46, 2, 39, 46, 3, 2, 72, 129, 180, 109, 141, 205, 59, 96, 43, 162, 104, 82, 131, 91, 49, 72, 115, 147, 74, 71, 132, 98, 59, 116, 117, 60, 88, 68, 33, 59, 88, 55, 111, 193, 145, 84, 1, 209, 108, 181, 129, 71, 108, 92, 66, 68, 82, 58, 100, 135, 80, 94, 125, 78, 37, 6, 6, 21, 51, 88, 74, 86, 153, 41, 104, 33, 96, 47, 37, 43, 25, 12, 4, 8, 56, 106, 166, 0, 0, 2, 255, 236, 255, 233, 3, 250, 3, 164, 0, 22, 0, 41, 0, 205, 176, 42, 47, 176, 43, 47, 176, 42, 16, 176, 15, 208, 176, 15, 47, 176, 43, 16, 176, 5, 220, 178, 0, 15, 5, 17, 18, 57, 176, 15, 16, 177, 26, 12, 244, 64, 27, 6, 26, 22, 26, 38, 26, 54, 26, 70, 26, 86, 26, 102, 26, 118, 26, 134, 26, 150, 26, 166, 26, 182, 26, 198, 26, 13, 93, 180, 213, 26, 229, 26, 2, 93, 176, 5, 16, 177, 36, 12, 244, 180, 218, 36, 234, 36, 2, 93, 64, 27, 9, 36, 25, 36, 41, 36, 57, 36, 73, 36, 89, 36, 105, 36, 121, 36, 137, 36, 153, 36, 169, 36, 185, 36, 201, 36, 13, 93, 0, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 19, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 15, 62, 89, 176, 20, 16, 177, 0, 6, 244, 176, 23, 208, 176, 10, 16, 177, 31, 6, 244, 64, 27, 7, 31, 23, 31, 39, 31, 55, 31, 71, 31, 87, 31, 103, 31, 119, 31, 135, 31, 151, 31, 167, 31, 183, 31, 199, 31, 13, 93, 180, 214, 31, 230, 31, 2, 93, 176, 23, 16, 176, 41, 208, 48, 49, 1, 30, 3, 21, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 33, 21, 33, 34, 6, 21, 20, 30, 2, 51, 50, 62, 2, 53, 52, 46, 2, 39, 2, 137, 43, 84, 68, 41, 66, 121, 166, 100, 102, 166, 119, 65, 73, 131, 181, 106, 2, 35, 253, 219, 170, 182, 43, 82, 114, 74, 74, 117, 84, 43, 35, 66, 90, 57, 3, 47, 18, 78, 105, 120, 62, 102, 166, 121, 66, 72, 127, 178, 109, 106, 174, 123, 66, 117, 192, 160, 78, 135, 98, 58, 51, 88, 125, 74, 60, 118, 105, 80, 20, 0, 1, 0, 0, 255, 233, 3, 164, 3, 164, 0, 19, 0, 92, 179, 5, 8, 0, 4, 43, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 19, 62, 89, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 15, 62, 89, 176, 2, 16, 177, 0, 6, 244, 176, 4, 208, 176, 5, 208, 176, 14, 16, 177, 8, 6, 244, 64, 27, 7, 8, 23, 8, 39, 8, 55, 8, 71, 8, 87, 8, 103, 8, 119, 8, 135, 8, 151, 8, 167, 8, 183, 8, 199, 8, 13, 93, 180, 214, 8, 230, 8, 2, 93, 48, 49, 1, 33, 53, 33, 21, 33, 17, 20, 51, 50, 54, 55, 23, 6, 35, 34, 46, 2, 53, 1, 141, 254, 115, 3, 164, 254, 115, 106, 29, 35, 14, 26, 40, 82, 45, 82, 62, 37, 3, 47, 117, 117, 253, 160, 113, 8, 7, 107, 25, 31, 58, 86, 55, 0, 0, 1, 0, 49, 255, 233, 3, 164, 3, 182, 0, 29, 0, 149, 176, 30, 47, 176, 31, 47, 176, 30, 16, 176, 5, 208, 176, 5, 47, 177, 8, 12, 244, 176, 31, 16, 176, 25, 220, 177, 18, 12, 244, 180, 218, 18, 234, 18, 2, 93, 64, 27, 9, 18, 25, 18, 41, 18, 57, 18, 73, 18, 89, 18, 105, 18, 121, 18, 137, 18, 153, 18, 169, 18, 185, 18, 201, 18, 13, 93, 0, 176, 0, 69, 88, 176, 22, 47, 27, 177, 22, 19, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 13, 3, 244, 64, 27, 7, 13, 23, 13, 39, 13, 55, 13, 71, 13, 87, 13, 103, 13, 119, 13, 135, 13, 151, 13, 167, 13, 183, 13, 199, 13, 13, 93, 180, 214, 13, 230, 13, 2, 93, 48, 49, 5, 34, 46, 2, 53, 17, 51, 17, 20, 30, 2, 51, 50, 62, 2, 53, 52, 38, 39, 55, 22, 22, 21, 20, 14, 2, 1, 211, 94, 154, 110, 60, 137, 45, 76, 103, 57, 92, 125, 76, 35, 37, 43, 133, 41, 43, 53, 113, 176, 23, 48, 96, 141, 96, 2, 62, 253, 194, 61, 98, 68, 35, 78, 123, 147, 68, 104, 189, 92, 53, 96, 219, 123, 94, 191, 153, 97, 0, 2, 255, 236, 254, 139, 3, 190, 3, 186, 0, 33, 0, 45, 0, 183, 179, 25, 12, 18, 4, 43, 179, 11, 8, 12, 4, 43, 179, 5, 12, 37, 4, 43, 64, 27, 6, 25, 22, 25, 38, 25, 54, 25, 70, 25, 86, 25, 102, 25, 118, 25, 134, 25, 150, 25, 166, 25, 182, 25, 198, 25, 13, 93, 180, 213, 25, 229, 25, 2, 93, 176, 12, 16, 176, 28, 208, 176, 11, 16, 176, 34, 208, 180, 218, 37, 234, 37, 2, 93, 64, 27, 9, 37, 25, 37, 41, 37, 57, 37, 73, 37, 89, 37, 105, 37, 121, 37, 137, 37, 153, 37, 169, 37, 185, 37, 201, 37, 13, 93, 176, 5, 16, 176, 47, 220, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 17, 62, 89, 176, 0, 16, 177, 42, 6, 244, 180, 217, 42, 233, 42, 2, 93, 64, 27, 8, 42, 24, 42, 40, 42, 56, 42, 72, 42, 88, 42, 104, 42, 120, 42, 136, 42, 152, 42, 168, 42, 184, 42, 200, 42, 13, 93, 48, 49, 1, 50, 30, 2, 21, 20, 14, 2, 7, 17, 35, 17, 46, 3, 53, 52, 54, 55, 23, 6, 6, 21, 20, 22, 23, 17, 52, 62, 2, 3, 54, 54, 53, 52, 46, 2, 35, 34, 6, 21, 2, 84, 82, 133, 94, 53, 61, 111, 155, 96, 138, 94, 153, 111, 59, 100, 92, 82, 66, 71, 145, 135, 19, 45, 76, 2, 135, 151, 41, 63, 82, 39, 35, 26, 3, 186, 71, 129, 181, 108, 98, 170, 125, 80, 10, 254, 157, 1, 99, 10, 80, 127, 168, 98, 131, 229, 70, 94, 53, 175, 108, 141, 201, 23, 2, 131, 43, 78, 58, 32, 252, 170, 23, 201, 141, 80, 135, 100, 58, 45, 50, 0, 1, 255, 248, 254, 117, 3, 164, 3, 188, 0, 11, 0, 60, 0, 176, 0, 47, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 19, 62, 89, 178, 1, 0, 6, 17, 18, 57, 178, 3, 0, 6, 17, 18, 57, 178, 7, 0, 6, 17, 18, 57, 178, 9, 0, 6, 17, 18, 57, 48, 49, 9, 2, 35, 1, 1, 55, 1, 1, 51, 1, 1, 3, 12, 254, 201, 254, 199, 164, 1, 141, 254, 141, 121, 1, 74, 1, 45, 162, 254, 129, 1, 94, 254, 117, 2, 43, 253, 235, 2, 131, 2, 105, 69, 253, 193, 2, 39, 253, 106, 253, 174, 0, 0, 1, 0, 49, 254, 139, 3, 115, 4, 94, 0, 27, 0, 75, 179, 12, 12, 9, 4, 43, 179, 4, 8, 5, 4, 43, 179, 0, 8, 25, 4, 43, 176, 5, 16, 176, 17, 208, 176, 4, 16, 176, 19, 208, 0, 176, 18, 47, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 19, 62, 89, 176, 0, 69, 88, 176, 26, 47, 27, 177, 26, 19, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 17, 62, 89, 48, 49, 1, 20, 2, 7, 17, 35, 17, 38, 2, 53, 17, 51, 17, 20, 30, 2, 23, 17, 51, 17, 62, 3, 53, 17, 51, 3, 115, 168, 180, 138, 182, 166, 137, 17, 45, 82, 67, 138, 65, 82, 47, 16, 138, 1, 209, 205, 255, 0, 22, 254, 157, 1, 99, 22, 1, 2, 205, 1, 209, 254, 45, 53, 117, 102, 78, 15, 3, 250, 252, 6, 15, 78, 102, 117, 53, 1, 211, 0, 1, 255, 242, 255, 233, 3, 182, 3, 182, 0, 52, 0, 214, 179, 19, 12, 8, 4, 43, 179, 28, 8, 25, 4, 43, 179, 45, 12, 34, 4, 43, 178, 0, 25, 28, 17, 18, 57, 64, 27, 6, 19, 22, 19, 38, 19, 54, 19, 70, 19, 86, 19, 102, 19, 118, 19, 134, 19, 150, 19, 166, 19, 182, 19, 198, 19, 13, 93, 180, 213, 19, 229, 19, 2, 93, 180, 218, 34, 234, 34, 2, 93, 64, 27, 9, 34, 25, 34, 41, 34, 57, 34, 73, 34, 89, 34, 105, 34, 121, 34, 137, 34, 153, 34, 169, 34, 185, 34, 201, 34, 13, 93, 176, 45, 16, 176, 54, 220, 0, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 19, 62, 89, 176, 0, 69, 88, 176, 40, 47, 27, 177, 40, 19, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 176, 0, 69, 88, 176, 50, 47, 27, 177, 50, 15, 62, 89, 178, 0, 3, 13, 17, 18, 57, 176, 3, 16, 177, 22, 6, 244, 64, 27, 7, 22, 23, 22, 39, 22, 55, 22, 71, 22, 87, 22, 103, 22, 119, 22, 135, 22, 151, 22, 167, 22, 183, 22, 199, 22, 13, 93, 180, 214, 22, 230, 22, 2, 93, 176, 31, 208, 48, 49, 37, 6, 6, 35, 34, 46, 2, 53, 52, 62, 2, 55, 23, 14, 3, 21, 20, 22, 51, 50, 54, 53, 17, 51, 17, 20, 22, 51, 50, 54, 53, 52, 46, 2, 39, 55, 30, 3, 21, 20, 14, 2, 35, 34, 38, 1, 211, 23, 114, 80, 72, 100, 64, 28, 10, 22, 31, 21, 135, 23, 30, 21, 8, 57, 70, 61, 86, 138, 88, 61, 70, 59, 10, 21, 30, 23, 135, 21, 33, 20, 12, 28, 64, 100, 74, 80, 115, 162, 82, 103, 68, 119, 168, 100, 62, 141, 139, 129, 47, 53, 45, 117, 127, 125, 51, 172, 166, 164, 148, 1, 81, 254, 175, 148, 164, 166, 172, 51, 125, 127, 117, 45, 53, 47, 129, 139, 141, 62, 100, 168, 119, 68, 103, 0, 255, 255, 0, 186, 255, 233, 2, 233, 5, 25, 2, 38, 1, 167, 0, 0, 0, 6, 0, 140, 0, 0, 255, 255, 0, 49, 255, 233, 3, 164, 5, 25, 2, 38, 1, 178, 0, 0, 0, 6, 0, 140, 0, 0, 255, 255, 255, 236, 255, 233, 3, 188, 6, 47, 2, 34, 1, 173, 0, 0, 0, 2, 1, 119, 0, 0, 255, 255, 0, 49, 255, 233, 3, 164, 6, 47, 2, 38, 1, 178, 0, 0, 0, 6, 1, 119, 0, 0, 255, 255, 255, 242, 255, 233, 3, 182, 6, 47, 2, 38, 1, 182, 0, 0, 0, 6, 1, 119, 0, 0, 255, 255, 0, 49, 0, 0, 3, 115, 6, 142, 2, 38, 1, 207, 0, 0, 0, 7, 0, 140, 0, 0, 1, 117, 0, 1, 255, 119, 255, 233, 3, 115, 5, 25, 0, 35, 0, 232, 176, 36, 47, 176, 37, 47, 176, 36, 16, 176, 33, 208, 176, 33, 47, 177, 32, 12, 244, 176, 3, 208, 176, 37, 16, 176, 9, 220, 178, 4, 33, 9, 17, 18, 57, 178, 17, 33, 9, 17, 18, 57, 177, 22, 8, 244, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 15, 62, 89, 176, 0, 69, 88, 176, 32, 47, 27, 177, 32, 15, 62, 89, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 15, 62, 89, 176, 0, 16, 177, 2, 6, 244, 178, 4, 14, 0, 17, 18, 57, 178, 17, 14, 0, 17, 18, 57, 176, 14, 16, 177, 20, 6, 244, 64, 27, 7, 20, 23, 20, 39, 20, 55, 20, 71, 20, 87, 20, 103, 20, 119, 20, 135, 20, 151, 20, 167, 20, 183, 20, 199, 20, 13, 93, 180, 214, 20, 230, 20, 2, 93, 176, 6, 16, 177, 26, 6, 244, 180, 217, 26, 233, 26, 2, 93, 64, 27, 8, 26, 24, 26, 40, 26, 56, 26, 72, 26, 88, 26, 104, 26, 120, 26, 136, 26, 152, 26, 168, 26, 184, 26, 200, 26, 13, 93, 176, 2, 16, 176, 34, 208, 176, 35, 208, 48, 49, 3, 33, 21, 35, 17, 18, 51, 32, 17, 17, 20, 14, 2, 35, 34, 39, 55, 22, 22, 51, 50, 53, 17, 52, 38, 35, 34, 14, 2, 21, 17, 35, 17, 35, 137, 1, 254, 187, 99, 254, 1, 88, 37, 62, 82, 45, 84, 38, 26, 14, 35, 29, 106, 108, 121, 76, 123, 86, 45, 137, 186, 5, 25, 117, 254, 22, 1, 0, 254, 133, 254, 144, 55, 86, 58, 31, 25, 109, 9, 8, 113, 1, 112, 125, 138, 70, 117, 151, 82, 254, 94, 4, 164, 0, 255, 255, 0, 49, 0, 0, 3, 164, 6, 201, 2, 38, 1, 205, 0, 0, 0, 7, 0, 139, 0, 0, 1, 117, 0, 1, 255, 236, 255, 233, 3, 172, 5, 47, 0, 46, 0, 183, 176, 47, 47, 176, 48, 47, 176, 21, 220, 176, 0, 208, 176, 0, 47, 176, 47, 16, 176, 11, 208, 176, 11, 47, 176, 21, 16, 177, 20, 13, 244, 176, 23, 208, 176, 11, 16, 177, 36, 8, 244, 176, 33, 208, 176, 20, 16, 176, 46, 208, 176, 46, 47, 0, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 21, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 179, 34, 6, 35, 4, 43, 178, 19, 4, 16, 17, 18, 57, 176, 16, 16, 177, 28, 6, 244, 180, 217, 28, 233, 28, 2, 93, 64, 27, 8, 28, 24, 28, 40, 28, 56, 28, 72, 28, 88, 28, 104, 28, 120, 28, 136, 28, 152, 28, 168, 28, 184, 28, 200, 28, 13, 93, 176, 4, 16, 177, 44, 6, 244, 64, 27, 7, 44, 23, 44, 39, 44, 55, 44, 71, 44, 87, 44, 103, 44, 119, 44, 135, 44, 151, 44, 167, 44, 183, 44, 199, 44, 13, 93, 180, 214, 44, 230, 44, 2, 93, 48, 49, 1, 6, 7, 6, 35, 34, 46, 4, 53, 52, 62, 2, 51, 50, 22, 23, 53, 51, 17, 35, 52, 46, 2, 35, 34, 14, 2, 7, 33, 21, 33, 22, 22, 23, 30, 3, 51, 50, 19, 3, 172, 51, 116, 116, 176, 91, 145, 112, 79, 51, 23, 54, 119, 191, 137, 121, 171, 42, 117, 117, 53, 90, 122, 69, 96, 134, 85, 43, 5, 2, 70, 253, 186, 3, 35, 38, 21, 55, 71, 87, 53, 244, 96, 1, 86, 167, 100, 98, 52, 91, 126, 150, 167, 88, 131, 244, 188, 113, 86, 88, 152, 254, 84, 70, 122, 90, 51, 84, 138, 176, 91, 117, 88, 171, 71, 39, 66, 48, 27, 1, 39, 0, 1, 0, 25, 255, 233, 3, 131, 5, 47, 0, 63, 0, 211, 179, 12, 10, 32, 4, 43, 179, 42, 11, 41, 4, 43, 176, 41, 16, 177, 0, 8, 244, 176, 12, 16, 176, 8, 208, 176, 41, 16, 176, 44, 208, 176, 32, 16, 177, 54, 12, 244, 176, 42, 16, 176, 65, 220, 0, 176, 0, 69, 88, 176, 41, 47, 27, 177, 41, 21, 62, 89, 176, 0, 69, 88, 176, 43, 47, 27, 177, 43, 19, 62, 89, 176, 0, 69, 88, 176, 37, 47, 27, 177, 37, 21, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 178, 8, 5, 37, 17, 18, 57, 177, 17, 6, 244, 64, 27, 7, 17, 23, 17, 39, 17, 55, 17, 71, 17, 87, 17, 103, 17, 119, 17, 135, 17, 151, 17, 167, 17, 183, 17, 199, 17, 13, 93, 180, 214, 17, 230, 17, 2, 93, 178, 40, 5, 37, 17, 18, 57, 176, 37, 16, 177, 49, 6, 244, 180, 217, 49, 233, 49, 2, 93, 64, 27, 8, 49, 24, 49, 40, 49, 56, 49, 72, 49, 88, 49, 104, 49, 120, 49, 136, 49, 152, 49, 168, 49, 184, 49, 200, 49, 13, 93, 48, 49, 1, 20, 14, 2, 35, 34, 38, 39, 21, 35, 17, 51, 20, 30, 2, 51, 50, 62, 2, 53, 52, 46, 2, 39, 46, 3, 53, 52, 62, 2, 51, 50, 22, 23, 53, 51, 17, 35, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 23, 30, 3, 3, 131, 68, 114, 148, 80, 110, 184, 54, 116, 116, 62, 96, 125, 65, 58, 98, 74, 43, 55, 93, 116, 60, 71, 142, 112, 70, 68, 110, 146, 77, 95, 161, 45, 121, 121, 49, 84, 108, 60, 53, 96, 72, 43, 51, 86, 113, 59, 74, 146, 116, 74, 1, 84, 82, 133, 96, 52, 82, 80, 139, 1, 141, 67, 111, 80, 45, 33, 61, 88, 56, 63, 90, 64, 45, 22, 25, 55, 84, 121, 90, 80, 125, 86, 45, 78, 80, 136, 254, 139, 59, 103, 73, 43, 24, 53, 84, 58, 51, 72, 55, 45, 23, 26, 64, 90, 131, 0, 1, 0, 186, 0, 0, 2, 233, 5, 25, 0, 11, 0, 61, 179, 10, 8, 3, 4, 43, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 2, 6, 244, 176, 6, 16, 177, 4, 6, 244, 176, 8, 208, 176, 9, 208, 176, 2, 16, 176, 10, 208, 176, 11, 208, 48, 49, 33, 33, 53, 51, 17, 35, 53, 33, 21, 35, 17, 51, 2, 233, 253, 209, 211, 211, 2, 47, 210, 210, 117, 4, 47, 117, 117, 251, 209, 255, 255, 0, 186, 0, 0, 2, 233, 6, 140, 2, 38, 0, 42, 0, 0, 0, 7, 0, 140, 0, 0, 1, 115, 0, 1, 255, 254, 255, 233, 3, 115, 5, 25, 0, 17, 0, 76, 179, 0, 8, 15, 4, 43, 0, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 21, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 177, 10, 6, 244, 64, 27, 7, 10, 23, 10, 39, 10, 55, 10, 71, 10, 87, 10, 103, 10, 119, 10, 135, 10, 151, 10, 167, 10, 183, 10, 199, 10, 13, 93, 180, 214, 10, 230, 10, 2, 93, 48, 49, 1, 20, 2, 35, 34, 38, 39, 55, 22, 22, 51, 50, 62, 2, 53, 17, 51, 3, 115, 211, 217, 174, 236, 47, 119, 43, 170, 125, 92, 115, 61, 22, 138, 1, 242, 248, 254, 239, 183, 182, 45, 162, 131, 74, 115, 143, 72, 3, 39, 0, 0, 2, 255, 117, 255, 233, 3, 156, 5, 25, 0, 8, 0, 36, 0, 186, 179, 21, 12, 35, 4, 43, 179, 5, 12, 18, 4, 43, 179, 14, 8, 0, 4, 43, 180, 218, 0, 234, 0, 2, 93, 64, 27, 9, 0, 25, 0, 41, 0, 57, 0, 73, 0, 89, 0, 105, 0, 121, 0, 137, 0, 153, 0, 169, 0, 185, 0, 201, 0, 13, 93, 176, 5, 16, 176, 9, 208, 176, 14, 16, 176, 38, 220, 0, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 21, 62, 89, 176, 0, 69, 88, 176, 17, 47, 27, 177, 17, 15, 62, 89, 176, 0, 69, 88, 176, 29, 47, 27, 177, 29, 15, 62, 89, 176, 0, 69, 88, 176, 26, 47, 27, 177, 26, 15, 62, 89, 179, 11, 6, 3, 4, 43, 176, 9, 16, 177, 19, 6, 244, 178, 30, 26, 9, 17, 18, 57, 176, 26, 16, 177, 33, 6, 244, 64, 27, 7, 33, 23, 33, 39, 33, 55, 33, 71, 33, 87, 33, 103, 33, 119, 33, 135, 33, 151, 33, 167, 33, 183, 33, 199, 33, 13, 93, 180, 214, 33, 230, 33, 2, 93, 48, 49, 1, 52, 38, 35, 35, 17, 51, 50, 54, 1, 17, 51, 50, 22, 21, 20, 6, 35, 35, 17, 35, 17, 20, 14, 2, 35, 34, 38, 39, 55, 22, 22, 51, 50, 53, 17, 3, 18, 108, 92, 76, 76, 92, 108, 254, 236, 74, 161, 179, 179, 163, 209, 187, 32, 58, 76, 43, 40, 54, 22, 24, 13, 32, 25, 94, 1, 113, 127, 133, 254, 0, 127, 4, 37, 253, 208, 188, 188, 187, 182, 4, 164, 252, 43, 55, 86, 58, 31, 9, 10, 115, 9, 8, 113, 4, 74, 0, 2, 0, 49, 0, 0, 3, 156, 5, 25, 0, 8, 0, 27, 0, 159, 179, 27, 12, 9, 4, 43, 179, 16, 12, 13, 4, 43, 179, 20, 8, 0, 4, 43, 180, 218, 0, 234, 0, 2, 93, 64, 27, 9, 0, 25, 0, 41, 0, 57, 0, 73, 0, 89, 0, 105, 0, 121, 0, 137, 0, 153, 0, 169, 0, 185, 0, 201, 0, 13, 93, 176, 16, 16, 176, 4, 208, 176, 27, 16, 176, 11, 208, 176, 13, 16, 176, 24, 208, 176, 20, 16, 176, 29, 220, 0, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 21, 62, 89, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 21, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 176, 0, 69, 88, 176, 23, 47, 27, 177, 23, 15, 62, 89, 179, 17, 6, 3, 4, 43, 176, 23, 16, 177, 5, 6, 244, 176, 17, 16, 176, 12, 208, 176, 3, 16, 176, 25, 208, 48, 49, 1, 52, 38, 35, 35, 17, 51, 50, 54, 5, 17, 51, 17, 51, 17, 51, 17, 51, 50, 22, 21, 20, 6, 35, 35, 17, 35, 17, 3, 18, 108, 92, 76, 76, 92, 108, 253, 31, 137, 187, 137, 74, 161, 179, 179, 163, 209, 187, 1, 113, 127, 133, 254, 0, 127, 244, 5, 25, 253, 208, 2, 48, 253, 208, 188, 188, 187, 182, 2, 117, 253, 139, 0, 0, 1, 255, 119, 0, 0, 3, 115, 5, 25, 0, 23, 0, 161, 176, 24, 47, 176, 25, 47, 176, 24, 16, 176, 21, 208, 176, 21, 47, 177, 20, 12, 244, 176, 3, 208, 176, 25, 16, 176, 9, 220, 178, 4, 21, 9, 17, 18, 57, 177, 10, 8, 244, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 15, 62, 89, 176, 0, 16, 177, 2, 6, 244, 178, 4, 9, 0, 17, 18, 57, 176, 6, 16, 177, 14, 6, 244, 180, 217, 14, 233, 14, 2, 93, 64, 27, 8, 14, 24, 14, 40, 14, 56, 14, 72, 14, 88, 14, 104, 14, 120, 14, 136, 14, 152, 14, 168, 14, 184, 14, 200, 14, 13, 93, 176, 2, 16, 176, 22, 208, 176, 23, 208, 48, 49, 3, 33, 21, 35, 17, 18, 51, 32, 17, 17, 35, 17, 52, 38, 35, 34, 14, 2, 21, 17, 35, 17, 35, 137, 1, 254, 187, 99, 254, 1, 88, 138, 108, 121, 76, 123, 86, 45, 137, 186, 5, 25, 117, 254, 22, 1, 0, 254, 133, 253, 193, 2, 63, 125, 138, 70, 117, 151, 82, 254, 94, 4, 164, 255, 255, 0, 49, 0, 0, 3, 158, 6, 201, 2, 38, 1, 212, 0, 0, 0, 7, 0, 139, 0, 0, 1, 117, 255, 255, 255, 225, 255, 233, 3, 193, 6, 123, 2, 38, 1, 221, 0, 0, 0, 7, 0, 217, 0, 0, 1, 117, 0, 1, 0, 49, 254, 193, 3, 115, 5, 25, 0, 11, 0, 83, 179, 8, 12, 5, 4, 43, 179, 2, 8, 3, 4, 43, 179, 0, 8, 9, 4, 43, 0, 176, 2, 47, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 177, 8, 6, 244, 176, 9, 208, 48, 49, 33, 33, 17, 35, 17, 33, 17, 51, 17, 33, 17, 51, 3, 115, 254, 164, 138, 254, 164, 137, 2, 47, 138, 254, 193, 1, 63, 5, 25, 251, 92, 4, 164, 0, 2, 255, 197, 0, 0, 3, 227, 5, 25, 0, 7, 0, 10, 0, 48, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 179, 8, 3, 2, 4, 43, 48, 49, 33, 35, 3, 33, 3, 35, 1, 51, 19, 3, 3, 3, 227, 147, 123, 253, 252, 121, 147, 1, 178, 186, 125, 219, 219, 1, 117, 254, 139, 5, 25, 252, 213, 2, 161, 253, 95, 0, 0, 2, 0, 49, 0, 0, 3, 162, 5, 25, 0, 8, 0, 21, 0, 115, 176, 22, 47, 176, 23, 47, 176, 13, 220, 177, 0, 12, 244, 180, 218, 0, 234, 0, 2, 93, 64, 27, 9, 0, 25, 0, 41, 0, 57, 0, 73, 0, 89, 0, 105, 0, 121, 0, 137, 0, 153, 0, 169, 0, 185, 0, 201, 0, 13, 93, 176, 22, 16, 176, 17, 208, 176, 17, 47, 177, 5, 12, 244, 176, 9, 208, 0, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 21, 62, 89, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 15, 62, 89, 179, 10, 6, 3, 4, 43, 176, 16, 16, 177, 5, 6, 244, 176, 18, 16, 177, 20, 6, 244, 48, 49, 1, 52, 38, 35, 33, 17, 33, 50, 54, 1, 33, 50, 22, 21, 20, 6, 35, 33, 17, 33, 21, 33, 3, 25, 170, 142, 254, 217, 1, 39, 142, 170, 253, 161, 1, 39, 213, 236, 236, 215, 254, 82, 3, 66, 253, 71, 1, 113, 127, 133, 254, 0, 127, 1, 245, 188, 188, 187, 182, 5, 25, 117, 0, 0, 3, 0, 49, 0, 0, 3, 162, 5, 25, 0, 14, 0, 27, 0, 36, 0, 135, 179, 33, 12, 4, 4, 43, 179, 11, 12, 15, 4, 43, 176, 11, 16, 177, 28, 10, 244, 177, 0, 12, 244, 178, 13, 4, 0, 17, 18, 57, 180, 218, 15, 234, 15, 2, 93, 64, 27, 9, 15, 25, 15, 41, 15, 57, 15, 73, 15, 89, 15, 105, 15, 121, 15, 137, 15, 153, 15, 169, 15, 185, 15, 201, 15, 13, 93, 176, 33, 16, 176, 21, 208, 176, 11, 16, 176, 38, 220, 0, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 21, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 179, 23, 1, 31, 4, 43, 178, 13, 31, 23, 17, 18, 57, 176, 5, 16, 177, 20, 6, 244, 176, 3, 16, 177, 33, 6, 244, 48, 49, 1, 20, 6, 35, 33, 17, 33, 50, 30, 2, 21, 20, 7, 22, 3, 52, 46, 2, 35, 33, 17, 33, 50, 62, 2, 19, 52, 38, 35, 33, 17, 33, 50, 54, 3, 162, 242, 223, 254, 96, 1, 137, 82, 158, 125, 78, 203, 248, 182, 58, 90, 108, 50, 255, 0, 1, 0, 56, 108, 86, 56, 45, 175, 153, 254, 233, 1, 23, 153, 175, 1, 117, 187, 186, 5, 25, 27, 74, 131, 106, 203, 74, 76, 1, 97, 69, 88, 47, 17, 254, 69, 17, 49, 86, 253, 244, 135, 123, 253, 254, 129, 0, 1, 0, 49, 0, 0, 3, 164, 5, 25, 0, 5, 0, 42, 179, 3, 12, 0, 4, 43, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 176, 0, 16, 177, 2, 6, 244, 48, 49, 19, 33, 21, 33, 17, 35, 49, 3, 115, 253, 22, 137, 5, 25, 117, 251, 92, 0, 0, 2, 0, 0, 254, 193, 3, 164, 5, 25, 0, 15, 0, 24, 0, 82, 179, 13, 11, 0, 4, 43, 179, 16, 12, 5, 4, 43, 179, 8, 12, 22, 4, 43, 179, 10, 11, 11, 4, 43, 176, 10, 16, 176, 26, 220, 0, 176, 10, 47, 176, 14, 47, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 15, 62, 89, 177, 8, 6, 244, 176, 21, 208, 176, 22, 208, 176, 6, 16, 177, 23, 6, 244, 48, 49, 53, 62, 2, 18, 53, 17, 33, 17, 51, 17, 35, 17, 33, 17, 35, 1, 20, 2, 6, 6, 7, 33, 17, 35, 57, 88, 60, 31, 1, 253, 187, 123, 253, 82, 123, 1, 117, 23, 49, 80, 57, 1, 188, 235, 117, 49, 113, 188, 1, 35, 225, 1, 66, 251, 92, 254, 76, 1, 63, 254, 193, 5, 22, 176, 254, 242, 209, 154, 57, 4, 47, 0, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 11, 0, 61, 179, 10, 12, 1, 4, 43, 176, 10, 16, 176, 5, 208, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 179, 7, 6, 8, 4, 43, 176, 2, 16, 177, 4, 6, 244, 176, 0, 16, 177, 10, 6, 244, 48, 49, 33, 33, 17, 33, 21, 33, 17, 33, 21, 33, 17, 33, 3, 115, 252, 190, 3, 66, 253, 71, 2, 2, 253, 254, 2, 185, 5, 25, 117, 254, 45, 117, 254, 25, 0, 0, 1, 255, 193, 0, 0, 3, 227, 5, 25, 0, 19, 0, 127, 179, 19, 8, 0, 4, 43, 176, 0, 16, 176, 8, 208, 176, 19, 16, 176, 10, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 21, 62, 89, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 15, 62, 89, 178, 2, 0, 6, 17, 18, 57, 178, 8, 0, 6, 17, 18, 57, 178, 11, 0, 6, 17, 18, 57, 178, 17, 0, 6, 17, 18, 57, 48, 49, 33, 17, 39, 1, 35, 1, 1, 51, 1, 17, 51, 17, 1, 51, 1, 1, 35, 1, 7, 17, 1, 141, 55, 254, 250, 143, 1, 63, 254, 193, 149, 1, 55, 138, 1, 55, 149, 254, 193, 1, 63, 143, 254, 250, 55, 2, 6, 100, 253, 150, 2, 225, 2, 56, 253, 188, 2, 68, 253, 188, 2, 68, 253, 200, 253, 31, 2, 106, 100, 253, 250, 0, 1, 0, 27, 255, 233, 3, 152, 5, 47, 0, 62, 0, 228, 179, 45, 13, 43, 4, 43, 179, 55, 12, 31, 4, 43, 176, 55, 16, 177, 20, 9, 244, 177, 0, 8, 244, 176, 45, 16, 176, 11, 208, 176, 11, 47, 180, 218, 31, 234, 31, 2, 93, 64, 27, 9, 31, 25, 31, 41, 31, 57, 31, 73, 31, 89, 31, 105, 31, 121, 31, 137, 31, 153, 31, 169, 31, 185, 31, 201, 31, 13, 93, 176, 45, 16, 176, 41, 208, 176, 41, 47, 178, 58, 43, 0, 17, 18, 57, 176, 55, 16, 176, 64, 220, 0, 176, 0, 69, 88, 176, 50, 47, 27, 177, 50, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 179, 26, 6, 25, 4, 43, 176, 5, 16, 177, 15, 6, 244, 64, 27, 7, 15, 23, 15, 39, 15, 55, 15, 71, 15, 87, 15, 103, 15, 119, 15, 135, 15, 151, 15, 167, 15, 183, 15, 199, 15, 13, 93, 180, 214, 15, 230, 15, 2, 93, 176, 50, 16, 177, 35, 6, 244, 180, 217, 35, 233, 35, 2, 93, 64, 27, 8, 35, 24, 35, 40, 35, 56, 35, 72, 35, 88, 35, 104, 35, 120, 35, 136, 35, 152, 35, 168, 35, 184, 35, 200, 35, 13, 93, 178, 45, 5, 50, 17, 18, 57, 178, 58, 25, 26, 17, 18, 57, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 39, 55, 22, 23, 22, 51, 50, 62, 2, 53, 52, 46, 2, 35, 53, 50, 62, 2, 53, 52, 39, 38, 35, 34, 6, 7, 6, 6, 21, 35, 17, 51, 21, 62, 3, 51, 50, 30, 2, 21, 20, 6, 7, 30, 3, 3, 152, 70, 117, 153, 84, 94, 164, 125, 78, 8, 133, 12, 93, 92, 139, 59, 104, 78, 45, 50, 97, 142, 92, 67, 128, 100, 62, 73, 73, 116, 65, 121, 42, 40, 54, 125, 117, 24, 74, 88, 96, 48, 84, 146, 107, 62, 132, 124, 69, 105, 71, 36, 1, 104, 86, 141, 100, 56, 51, 102, 150, 99, 18, 150, 77, 76, 40, 70, 98, 58, 80, 101, 57, 20, 117, 22, 54, 89, 67, 110, 66, 67, 50, 41, 38, 112, 76, 1, 156, 152, 49, 66, 41, 18, 49, 92, 134, 85, 112, 146, 19, 10, 60, 89, 111, 0, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 9, 0, 98, 176, 10, 47, 176, 11, 47, 176, 10, 16, 176, 0, 208, 176, 0, 47, 177, 1, 12, 244, 176, 11, 16, 176, 5, 220, 177, 6, 8, 244, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 15, 62, 89, 178, 2, 5, 0, 17, 18, 57, 178, 7, 5, 0, 17, 18, 57, 48, 49, 19, 51, 17, 1, 51, 17, 35, 17, 1, 35, 49, 137, 1, 248, 193, 138, 253, 242, 170, 5, 25, 251, 227, 4, 29, 250, 231, 4, 80, 251, 176, 0, 255, 255, 0, 49, 0, 0, 3, 115, 6, 121, 2, 38, 1, 210, 0, 0, 0, 7, 0, 217, 0, 0, 1, 115, 0, 1, 0, 49, 0, 0, 3, 158, 5, 25, 0, 11, 0, 74, 179, 4, 12, 5, 4, 43, 176, 4, 16, 176, 7, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 178, 8, 0, 6, 17, 18, 57, 48, 49, 33, 35, 1, 7, 17, 35, 17, 51, 17, 1, 51, 1, 3, 158, 168, 254, 78, 138, 137, 137, 2, 47, 181, 254, 0, 2, 127, 154, 254, 27, 5, 25, 253, 133, 2, 123, 253, 198, 0, 1, 255, 231, 255, 233, 3, 115, 5, 25, 0, 19, 0, 139, 176, 20, 47, 176, 21, 47, 176, 1, 220, 177, 2, 8, 244, 176, 20, 16, 176, 18, 208, 176, 18, 47, 177, 5, 8, 244, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 15, 62, 89, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 15, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 15, 62, 89, 176, 0, 16, 177, 3, 6, 244, 178, 13, 10, 0, 17, 18, 57, 176, 10, 16, 177, 16, 6, 244, 64, 27, 7, 16, 23, 16, 39, 16, 55, 16, 71, 16, 87, 16, 103, 16, 119, 16, 135, 16, 151, 16, 167, 16, 183, 16, 199, 16, 13, 93, 180, 214, 16, 230, 16, 2, 93, 48, 49, 1, 17, 35, 17, 33, 17, 20, 14, 2, 35, 34, 39, 55, 22, 22, 51, 50, 53, 17, 3, 115, 138, 254, 91, 37, 62, 82, 45, 84, 39, 27, 14, 35, 29, 106, 5, 25, 250, 231, 4, 164, 252, 43, 55, 86, 58, 31, 25, 109, 9, 8, 113, 4, 74, 0, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 12, 0, 109, 176, 13, 47, 176, 14, 47, 176, 0, 220, 177, 1, 8, 244, 176, 13, 16, 176, 7, 208, 176, 7, 47, 177, 6, 12, 244, 178, 10, 7, 0, 17, 18, 57, 0, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 21, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 178, 2, 0, 8, 17, 18, 57, 178, 5, 0, 8, 17, 18, 57, 178, 10, 0, 8, 17, 18, 57, 48, 49, 33, 35, 17, 3, 35, 3, 17, 35, 17, 51, 19, 19, 51, 3, 115, 138, 231, 98, 230, 137, 178, 238, 240, 178, 4, 63, 253, 95, 2, 161, 251, 193, 5, 25, 253, 86, 2, 170, 0, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 11, 0, 96, 176, 12, 47, 176, 13, 47, 176, 0, 220, 177, 1, 8, 244, 176, 12, 16, 176, 5, 208, 176, 5, 47, 177, 4, 12, 244, 176, 7, 208, 176, 1, 16, 176, 9, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 179, 9, 6, 2, 4, 43, 48, 49, 33, 35, 17, 33, 17, 35, 17, 51, 17, 33, 17, 51, 3, 115, 138, 253, 209, 137, 137, 2, 47, 138, 2, 92, 253, 164, 5, 25, 253, 184, 2, 72, 0, 2, 255, 223, 255, 233, 3, 199, 5, 47, 0, 19, 0, 39, 0, 226, 176, 40, 47, 176, 41, 47, 176, 0, 220, 176, 40, 16, 176, 10, 208, 176, 10, 47, 176, 0, 16, 177, 20, 8, 244, 180, 218, 20, 234, 20, 2, 93, 64, 27, 9, 20, 25, 20, 41, 20, 57, 20, 73, 20, 89, 20, 105, 20, 121, 20, 137, 20, 153, 20, 169, 20, 185, 20, 201, 20, 13, 93, 176, 10, 16, 177, 30, 12, 244, 64, 23, 6, 30, 22, 30, 38, 30, 54, 30, 70, 30, 86, 30, 102, 30, 118, 30, 134, 30, 150, 30, 166, 30, 11, 93, 180, 182, 30, 198, 30, 2, 93, 180, 213, 30, 229, 30, 2, 93, 0, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 15, 16, 177, 25, 6, 244, 180, 217, 25, 233, 25, 2, 93, 64, 27, 8, 25, 24, 25, 40, 25, 56, 25, 72, 25, 88, 25, 104, 25, 120, 25, 136, 25, 152, 25, 168, 25, 184, 25, 200, 25, 13, 93, 176, 5, 16, 177, 35, 6, 244, 64, 27, 7, 35, 23, 35, 39, 35, 55, 35, 71, 35, 87, 35, 103, 35, 119, 35, 135, 35, 151, 35, 167, 35, 183, 35, 199, 35, 13, 93, 180, 214, 35, 230, 35, 2, 93, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 62, 2, 3, 199, 54, 118, 191, 137, 137, 191, 119, 53, 53, 121, 191, 135, 135, 191, 118, 56, 138, 49, 92, 135, 86, 107, 139, 84, 33, 33, 84, 139, 107, 106, 140, 84, 32, 2, 139, 131, 244, 186, 113, 113, 186, 244, 131, 131, 244, 188, 113, 113, 188, 244, 131, 129, 207, 146, 77, 100, 162, 198, 99, 98, 199, 159, 101, 101, 159, 199, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 7, 0, 75, 176, 8, 47, 176, 9, 47, 176, 0, 220, 177, 1, 8, 244, 176, 8, 16, 176, 5, 208, 176, 5, 47, 177, 4, 12, 244, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 176, 6, 16, 177, 2, 6, 244, 48, 49, 33, 35, 17, 33, 17, 35, 17, 33, 3, 115, 138, 253, 209, 137, 3, 66, 4, 164, 251, 92, 5, 25, 0, 0, 2, 0, 49, 0, 0, 3, 162, 5, 25, 0, 10, 0, 19, 0, 114, 176, 20, 47, 176, 21, 47, 176, 0, 220, 176, 20, 16, 176, 6, 208, 176, 6, 47, 177, 5, 12, 244, 176, 0, 16, 177, 11, 12, 244, 180, 218, 11, 234, 11, 2, 93, 64, 27, 9, 11, 25, 11, 41, 11, 57, 11, 73, 11, 89, 11, 105, 11, 121, 11, 137, 11, 153, 11, 169, 11, 185, 11, 201, 11, 13, 93, 176, 5, 16, 176, 15, 208, 0, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 179, 17, 6, 3, 4, 43, 176, 7, 16, 177, 14, 6, 244, 48, 49, 1, 20, 6, 35, 33, 17, 35, 17, 33, 50, 22, 7, 52, 38, 35, 33, 17, 33, 50, 54, 3, 162, 236, 213, 254, 217, 137, 1, 174, 215, 236, 137, 170, 142, 254, 217, 1, 39, 142, 170, 3, 164, 189, 184, 253, 209, 5, 25, 187, 186, 135, 121, 254, 0, 121, 0, 0, 1, 255, 236, 255, 236, 3, 172, 5, 47, 0, 37, 0, 227, 176, 38, 47, 176, 39, 47, 176, 18, 220, 176, 0, 208, 176, 0, 47, 176, 38, 16, 176, 8, 208, 176, 8, 47, 176, 18, 16, 177, 17, 13, 244, 176, 20, 208, 176, 8, 16, 177, 30, 12, 244, 64, 27, 6, 30, 22, 30, 38, 30, 54, 30, 70, 30, 86, 30, 102, 30, 118, 30, 134, 30, 150, 30, 166, 30, 182, 30, 198, 30, 13, 93, 180, 213, 30, 229, 30, 2, 93, 176, 17, 16, 176, 37, 208, 176, 37, 47, 0, 176, 0, 69, 88, 176, 17, 47, 27, 177, 17, 21, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 21, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 178, 16, 3, 13, 17, 18, 57, 176, 13, 16, 177, 25, 6, 244, 180, 217, 25, 233, 25, 2, 93, 182, 8, 25, 24, 25, 40, 25, 3, 93, 64, 21, 56, 25, 72, 25, 88, 25, 104, 25, 120, 25, 136, 25, 152, 25, 168, 25, 184, 25, 200, 25, 10, 93, 176, 3, 16, 177, 35, 6, 244, 64, 27, 7, 35, 23, 35, 39, 35, 55, 35, 71, 35, 87, 35, 103, 35, 119, 35, 135, 35, 151, 35, 167, 35, 183, 35, 199, 35, 13, 93, 180, 214, 35, 230, 35, 2, 93, 48, 49, 1, 6, 6, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 22, 23, 53, 51, 17, 35, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 19, 3, 172, 51, 232, 176, 137, 190, 121, 53, 53, 121, 190, 137, 121, 172, 41, 117, 117, 53, 90, 123, 68, 106, 139, 84, 35, 35, 84, 139, 106, 244, 96, 1, 86, 168, 194, 110, 186, 244, 131, 131, 244, 188, 113, 86, 88, 152, 254, 84, 69, 123, 90, 51, 100, 162, 198, 99, 98, 199, 157, 101, 1, 37, 0, 0, 1, 0, 0, 0, 0, 3, 164, 5, 25, 0, 15, 0, 107, 176, 16, 47, 176, 13, 208, 176, 13, 47, 176, 9, 220, 178, 64, 9, 1, 93, 176, 1, 220, 178, 64, 1, 1, 93, 177, 0, 13, 244, 176, 9, 16, 177, 4, 8, 244, 176, 13, 16, 177, 12, 13, 244, 176, 0, 16, 176, 17, 220, 0, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 176, 14, 16, 177, 2, 6, 244, 176, 6, 16, 177, 4, 6, 244, 176, 8, 208, 176, 9, 208, 176, 2, 16, 176, 10, 208, 176, 11, 208, 48, 49, 1, 35, 17, 33, 17, 51, 21, 33, 53, 51, 17, 33, 17, 35, 17, 33, 3, 164, 117, 254, 232, 210, 253, 209, 211, 254, 232, 117, 3, 164, 3, 96, 1, 68, 251, 209, 117, 117, 4, 47, 254, 188, 1, 185, 0, 0, 1, 255, 225, 255, 233, 3, 193, 5, 25, 0, 18, 0, 90, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 21, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 177, 10, 6, 244, 64, 27, 7, 10, 23, 10, 39, 10, 55, 10, 71, 10, 87, 10, 103, 10, 119, 10, 135, 10, 151, 10, 167, 10, 183, 10, 199, 10, 13, 93, 180, 214, 10, 230, 10, 2, 93, 178, 17, 4, 0, 17, 18, 57, 48, 49, 1, 1, 6, 6, 35, 34, 39, 55, 22, 22, 51, 50, 54, 55, 55, 1, 51, 1, 1, 3, 193, 254, 8, 39, 142, 86, 96, 96, 27, 47, 90, 28, 68, 51, 19, 57, 254, 96, 162, 1, 80, 1, 74, 5, 25, 251, 112, 98, 62, 35, 119, 20, 17, 66, 45, 141, 3, 191, 252, 208, 3, 48, 0, 3, 255, 236, 0, 0, 3, 188, 5, 25, 0, 25, 0, 34, 0, 43, 0, 145, 179, 35, 12, 13, 4, 43, 179, 6, 8, 7, 4, 43, 179, 0, 12, 26, 4, 43, 176, 7, 16, 176, 18, 208, 176, 6, 16, 176, 20, 208, 180, 218, 26, 234, 26, 2, 93, 64, 27, 9, 26, 25, 26, 41, 26, 57, 26, 73, 26, 89, 26, 105, 26, 121, 26, 137, 26, 153, 26, 169, 26, 185, 26, 201, 26, 13, 93, 176, 6, 16, 176, 31, 208, 64, 27, 6, 35, 22, 35, 38, 35, 54, 35, 70, 35, 86, 35, 102, 35, 118, 35, 134, 35, 150, 35, 166, 35, 182, 35, 198, 35, 13, 93, 180, 213, 35, 229, 35, 2, 93, 176, 7, 16, 176, 38, 208, 0, 176, 0, 69, 88, 176, 19, 47, 27, 177, 19, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 48, 49, 1, 20, 14, 2, 7, 21, 35, 53, 46, 3, 53, 52, 62, 2, 55, 53, 51, 21, 30, 3, 7, 52, 46, 2, 39, 17, 54, 54, 37, 20, 22, 23, 17, 14, 3, 3, 188, 61, 111, 155, 94, 138, 94, 153, 111, 59, 59, 111, 153, 94, 138, 94, 155, 111, 61, 137, 39, 71, 107, 67, 135, 149, 253, 66, 145, 135, 67, 105, 71, 37, 2, 143, 98, 168, 127, 80, 10, 172, 174, 10, 80, 125, 168, 98, 99, 168, 129, 79, 13, 162, 162, 10, 82, 127, 170, 99, 70, 125, 98, 64, 12, 253, 37, 22, 199, 141, 141, 199, 22, 2, 219, 12, 66, 96, 125, 0, 1, 255, 233, 0, 0, 3, 186, 5, 25, 0, 27, 0, 122, 0, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 21, 62, 89, 176, 0, 69, 88, 176, 21, 47, 27, 177, 21, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 15, 62, 89, 177, 2, 6, 244, 176, 3, 208, 178, 4, 0, 14, 17, 18, 57, 176, 5, 208, 176, 6, 208, 176, 9, 208, 176, 10, 208, 176, 14, 16, 177, 12, 6, 244, 176, 16, 208, 176, 17, 208, 178, 18, 0, 14, 17, 18, 57, 176, 19, 208, 176, 20, 208, 176, 23, 208, 176, 24, 208, 176, 10, 16, 176, 26, 208, 176, 27, 208, 48, 49, 33, 33, 53, 51, 3, 3, 51, 21, 33, 53, 51, 1, 1, 35, 53, 33, 21, 35, 19, 19, 35, 53, 33, 21, 35, 1, 1, 51, 3, 186, 254, 142, 88, 205, 207, 88, 254, 141, 127, 1, 27, 254, 234, 109, 1, 117, 109, 203, 197, 105, 1, 117, 113, 254, 240, 1, 24, 127, 117, 1, 172, 254, 84, 117, 117, 2, 28, 2, 19, 117, 117, 254, 94, 1, 162, 117, 117, 253, 237, 253, 228, 0, 0, 1, 0, 49, 254, 193, 4, 31, 5, 25, 0, 11, 0, 79, 179, 7, 12, 4, 4, 43, 179, 11, 8, 8, 4, 43, 179, 1, 11, 2, 4, 43, 176, 1, 16, 176, 13, 220, 0, 176, 1, 47, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 21, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 21, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 177, 0, 6, 244, 176, 7, 208, 176, 8, 208, 48, 49, 37, 17, 35, 17, 33, 17, 51, 17, 33, 17, 51, 17, 4, 31, 123, 252, 141, 137, 2, 47, 138, 117, 254, 76, 1, 63, 5, 25, 251, 92, 4, 164, 251, 92, 0, 0, 1, 0, 49, 0, 0, 3, 115, 5, 25, 0, 19, 0, 94, 176, 20, 47, 176, 21, 47, 176, 20, 16, 176, 0, 208, 176, 0, 47, 177, 1, 12, 244, 176, 21, 16, 176, 12, 220, 177, 11, 8, 244, 176, 14, 208, 178, 15, 0, 12, 17, 18, 57, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 21, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 15, 62, 89, 179, 5, 6, 17, 4, 43, 178, 15, 13, 0, 17, 18, 57, 48, 49, 19, 51, 17, 20, 22, 51, 50, 62, 2, 53, 17, 51, 17, 35, 17, 2, 35, 32, 17, 49, 137, 109, 121, 76, 122, 86, 45, 138, 138, 98, 254, 254, 168, 5, 25, 253, 192, 125, 137, 70, 116, 152, 82, 1, 162, 250, 231, 2, 94, 255, 0, 1, 123, 0, 0, 1, 0, 0, 0, 0, 3, 164, 5, 25, 0, 11, 0, 124, 176, 12, 47, 176, 7, 208, 176, 7, 47, 176, 0, 220, 178, 239, 0, 1, 93, 178, 64, 0, 1, 93, 177, 1, 8, 244, 176, 0, 16, 176, 3, 220, 178, 239, 3, 1, 93, 178, 64, 3, 1, 93, 177, 6, 12, 244, 176, 7, 16, 177, 10, 12, 244, 176, 6, 16, 176, 13, 220, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 21, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 177, 2, 6, 244, 176, 10, 208, 176, 11, 208, 48, 49, 1, 51, 17, 33, 17, 51, 17, 33, 17, 51, 17, 33, 1, 141, 138, 1, 4, 137, 252, 92, 137, 1, 4, 5, 25, 251, 92, 4, 164, 250, 231, 5, 25, 251, 92, 0, 0, 1, 0, 0, 254, 193, 4, 31, 5, 25, 0, 15, 0, 111, 179, 3, 12, 0, 4, 43, 179, 7, 8, 4, 4, 43, 179, 11, 12, 8, 4, 43, 176, 11, 16, 177, 12, 11, 244, 176, 11, 16, 176, 14, 208, 176, 11, 16, 176, 17, 220, 0, 176, 13, 47, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 21, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 3, 6, 244, 176, 7, 208, 176, 8, 208, 176, 11, 208, 176, 12, 208, 48, 49, 49, 17, 51, 17, 33, 17, 51, 17, 33, 17, 51, 17, 51, 17, 35, 17, 137, 1, 4, 138, 1, 4, 137, 123, 123, 5, 25, 251, 92, 4, 164, 251, 92, 4, 164, 251, 92, 254, 76, 1, 63, 0, 2, 0, 0, 0, 0, 3, 162, 5, 25, 0, 12, 0, 21, 0, 118, 176, 22, 47, 176, 23, 47, 176, 22, 16, 176, 10, 208, 176, 10, 47, 177, 18, 12, 244, 176, 1, 208, 176, 23, 16, 176, 6, 220, 177, 13, 12, 244, 180, 218, 13, 234, 13, 2, 93, 64, 27, 9, 13, 25, 13, 41, 13, 57, 13, 73, 13, 89, 13, 105, 13, 121, 13, 137, 13, 153, 13, 169, 13, 185, 13, 201, 13, 13, 93, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 179, 3, 6, 16, 4, 43, 176, 0, 16, 177, 11, 6, 244, 176, 9, 16, 177, 18, 6, 244, 48, 49, 17, 33, 17, 51, 50, 22, 21, 20, 6, 35, 33, 17, 35, 1, 52, 38, 35, 35, 17, 51, 50, 54, 1, 117, 178, 180, 199, 199, 182, 254, 199, 236, 3, 25, 129, 111, 180, 180, 111, 129, 5, 25, 253, 208, 188, 188, 187, 182, 4, 164, 252, 205, 127, 133, 254, 0, 127, 0, 0, 3, 0, 0, 0, 0, 3, 164, 5, 25, 0, 10, 0, 19, 0, 23, 0, 135, 179, 1, 12, 0, 4, 43, 179, 6, 12, 11, 4, 43, 179, 21, 12, 20, 4, 43, 180, 218, 11, 234, 11, 2, 93, 64, 27, 9, 11, 25, 11, 41, 11, 57, 11, 73, 11, 89, 11, 105, 11, 121, 11, 137, 11, 153, 11, 169, 11, 185, 11, 201, 11, 13, 93, 176, 1, 16, 176, 15, 208, 176, 21, 16, 176, 25, 220, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 21, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 176, 0, 69, 88, 176, 22, 47, 27, 177, 22, 15, 62, 89, 179, 3, 6, 14, 4, 43, 176, 9, 16, 177, 16, 6, 244, 48, 49, 17, 51, 17, 51, 50, 22, 21, 20, 6, 35, 33, 1, 52, 38, 35, 35, 17, 51, 50, 54, 1, 51, 17, 35, 137, 135, 162, 178, 178, 164, 254, 242, 1, 219, 108, 93, 137, 137, 93, 108, 1, 64, 137, 137, 5, 25, 253, 208, 188, 188, 187, 182, 1, 113, 127, 133, 254, 0, 127, 4, 37, 250, 231, 0, 2, 0, 49, 0, 0, 3, 162, 5, 25, 0, 8, 0, 19, 0, 108, 176, 20, 47, 176, 21, 47, 176, 13, 220, 177, 0, 12, 244, 180, 218, 0, 234, 0, 2, 93, 64, 27, 9, 0, 25, 0, 41, 0, 57, 0, 73, 0, 89, 0, 105, 0, 121, 0, 137, 0, 153, 0, 169, 0, 185, 0, 201, 0, 13, 93, 176, 20, 16, 176, 17, 208, 176, 17, 47, 177, 5, 12, 244, 176, 9, 208, 0, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 21, 62, 89, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 15, 62, 89, 179, 10, 6, 3, 4, 43, 176, 16, 16, 177, 5, 6, 244, 48, 49, 1, 52, 38, 35, 33, 17, 33, 50, 54, 1, 33, 50, 22, 21, 20, 6, 35, 33, 17, 51, 3, 25, 170, 142, 254, 217, 1, 39, 142, 170, 253, 161, 1, 39, 213, 236, 236, 215, 254, 82, 137, 1, 113, 127, 133, 254, 0, 127, 1, 245, 188, 188, 187, 182, 5, 25, 0, 1, 255, 248, 255, 233, 3, 184, 5, 47, 0, 46, 0, 190, 176, 47, 47, 176, 48, 47, 176, 47, 16, 176, 24, 208, 176, 24, 47, 177, 23, 13, 244, 176, 0, 208, 176, 0, 47, 176, 48, 16, 176, 35, 220, 177, 10, 8, 244, 176, 13, 208, 176, 23, 16, 176, 26, 208, 176, 24, 16, 176, 46, 208, 176, 46, 47, 178, 27, 46, 35, 17, 18, 57, 0, 176, 0, 69, 88, 176, 30, 47, 27, 177, 30, 21, 62, 89, 176, 0, 69, 88, 176, 42, 47, 27, 177, 42, 15, 62, 89, 179, 13, 6, 10, 4, 43, 176, 42, 16, 177, 2, 6, 244, 64, 27, 7, 2, 23, 2, 39, 2, 55, 2, 71, 2, 87, 2, 103, 2, 119, 2, 135, 2, 151, 2, 167, 2, 183, 2, 199, 2, 13, 93, 180, 214, 2, 230, 2, 2, 93, 176, 30, 16, 177, 18, 6, 244, 180, 217, 18, 233, 18, 2, 93, 64, 27, 8, 18, 24, 18, 40, 18, 56, 18, 72, 18, 88, 18, 104, 18, 120, 18, 136, 18, 152, 18, 168, 18, 184, 18, 200, 18, 13, 93, 178, 27, 42, 30, 17, 18, 57, 48, 49, 19, 18, 51, 50, 62, 2, 55, 54, 54, 55, 33, 53, 33, 46, 3, 35, 34, 14, 2, 21, 35, 17, 51, 21, 54, 54, 51, 50, 30, 2, 21, 20, 14, 4, 35, 34, 39, 38, 39, 111, 96, 244, 53, 87, 71, 55, 21, 38, 35, 3, 253, 186, 2, 70, 5, 43, 85, 134, 96, 69, 122, 90, 53, 117, 117, 42, 171, 121, 137, 191, 119, 54, 23, 51, 79, 112, 145, 91, 176, 116, 116, 51, 1, 133, 254, 217, 27, 48, 66, 39, 71, 171, 88, 117, 91, 176, 138, 84, 51, 90, 122, 70, 1, 172, 152, 88, 86, 113, 188, 244, 131, 88, 167, 150, 126, 91, 52, 98, 100, 167, 0, 2, 0, 49, 255, 233, 3, 168, 5, 47, 0, 14, 0, 34, 0, 222, 179, 1, 12, 0, 4, 43, 179, 30, 8, 11, 4, 43, 179, 7, 12, 20, 4, 43, 176, 11, 16, 176, 3, 208, 176, 1, 16, 176, 12, 208, 180, 218, 20, 234, 20, 2, 93, 64, 27, 9, 20, 25, 20, 41, 20, 57, 20, 73, 20, 89, 20, 105, 20, 121, 20, 137, 20, 153, 20, 169, 20, 185, 20, 201, 20, 13, 93, 176, 7, 16, 176, 36, 220, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 21, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 21, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 15, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 179, 3, 6, 11, 4, 43, 176, 9, 16, 177, 15, 6, 244, 64, 27, 7, 15, 23, 15, 39, 15, 55, 15, 71, 15, 87, 15, 103, 15, 119, 15, 135, 15, 151, 15, 167, 15, 183, 15, 199, 15, 13, 93, 180, 214, 15, 230, 15, 2, 93, 176, 5, 16, 177, 25, 6, 244, 180, 217, 25, 233, 25, 2, 93, 64, 27, 8, 25, 24, 25, 40, 25, 56, 25, 72, 25, 88, 25, 104, 25, 120, 25, 136, 25, 152, 25, 168, 25, 184, 25, 200, 25, 13, 93, 48, 49, 19, 51, 17, 51, 18, 33, 32, 17, 16, 33, 32, 3, 35, 17, 35, 37, 50, 62, 2, 53, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 49, 137, 172, 13, 1, 20, 1, 33, 254, 223, 254, 236, 13, 172, 137, 2, 86, 47, 60, 32, 13, 13, 32, 60, 47, 47, 59, 33, 12, 12, 33, 59, 5, 25, 253, 174, 2, 104, 253, 92, 253, 94, 2, 105, 253, 174, 94, 82, 148, 204, 123, 123, 207, 147, 82, 82, 147, 207, 123, 123, 204, 148, 82, 0, 2, 255, 244, 0, 0, 3, 115, 5, 25, 0, 15, 0, 24, 0, 148, 176, 25, 47, 176, 26, 47, 176, 25, 16, 176, 5, 208, 176, 5, 47, 176, 26, 16, 176, 10, 220, 177, 11, 8, 244, 176, 5, 16, 176, 15, 208, 176, 15, 47, 176, 5, 16, 177, 16, 8, 244, 64, 27, 6, 16, 22, 16, 38, 16, 54, 16, 70, 16, 86, 16, 102, 16, 118, 16, 134, 16, 150, 16, 166, 16, 182, 16, 198, 16, 13, 93, 180, 213, 16, 229, 16, 2, 93, 176, 11, 16, 176, 20, 208, 0, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 21, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 15, 62, 89, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 15, 62, 89, 179, 19, 1, 0, 4, 43, 176, 0, 16, 176, 12, 208, 176, 12, 47, 176, 8, 16, 177, 21, 6, 244, 48, 49, 1, 46, 3, 53, 52, 54, 51, 33, 17, 35, 17, 35, 1, 35, 19, 20, 22, 51, 33, 17, 33, 34, 6, 1, 125, 82, 139, 101, 57, 236, 215, 1, 174, 138, 202, 254, 131, 174, 155, 166, 144, 1, 36, 254, 220, 144, 166, 2, 53, 6, 56, 92, 131, 82, 186, 187, 250, 231, 2, 47, 253, 209, 3, 164, 135, 121, 2, 0, 123, 0, 0, 2, 255, 254, 255, 233, 3, 115, 3, 186, 0, 38, 0, 55, 0, 237, 176, 56, 47, 176, 57, 47, 176, 56, 16, 176, 0, 208, 176, 0, 47, 176, 57, 16, 176, 28, 220, 177, 11, 8, 244, 176, 30, 208, 178, 31, 0, 28, 17, 18, 57, 176, 11, 16, 176, 44, 208, 176, 0, 16, 177, 53, 12, 244, 64, 27, 6, 53, 22, 53, 38, 53, 54, 53, 70, 53, 86, 53, 102, 53, 118, 53, 134, 53, 150, 53, 166, 53, 182, 53, 198, 53, 13, 93, 180, 213, 53, 229, 53, 2, 93, 0, 176, 0, 69, 88, 176, 23, 47, 27, 177, 23, 19, 62, 89, 176, 0, 69, 88, 176, 29, 47, 27, 177, 29, 15, 62, 89, 176, 0, 69, 88, 176, 36, 47, 27, 177, 36, 15, 62, 89, 179, 5, 6, 48, 4, 43, 176, 23, 16, 177, 16, 6, 244, 180, 217, 16, 233, 16, 2, 93, 64, 27, 8, 16, 24, 16, 40, 16, 56, 16, 72, 16, 88, 16, 104, 16, 120, 16, 136, 16, 152, 16, 168, 16, 184, 16, 200, 16, 13, 93, 178, 31, 36, 23, 17, 18, 57, 176, 36, 16, 177, 39, 6, 244, 64, 27, 7, 39, 23, 39, 39, 39, 55, 39, 71, 39, 87, 39, 103, 39, 119, 39, 135, 39, 151, 39, 167, 39, 183, 39, 199, 39, 13, 93, 180, 214, 39, 230, 39, 2, 93, 176, 48, 16, 176, 45, 208, 176, 45, 47, 48, 49, 39, 52, 62, 2, 51, 50, 30, 2, 23, 53, 52, 46, 2, 35, 34, 6, 7, 39, 54, 54, 51, 50, 30, 2, 21, 17, 35, 53, 14, 3, 35, 34, 38, 5, 50, 62, 2, 53, 53, 38, 38, 35, 34, 14, 2, 21, 20, 22, 2, 88, 143, 185, 96, 37, 59, 53, 54, 32, 59, 86, 94, 33, 104, 176, 76, 62, 84, 209, 125, 76, 147, 117, 70, 138, 36, 91, 100, 100, 45, 185, 190, 1, 119, 86, 137, 96, 53, 67, 123, 45, 74, 137, 102, 62, 115, 252, 88, 119, 69, 31, 2, 4, 6, 4, 67, 68, 88, 51, 21, 56, 47, 103, 51, 65, 39, 81, 132, 92, 253, 158, 156, 45, 68, 43, 23, 142, 25, 51, 76, 86, 35, 88, 10, 2, 20, 45, 72, 53, 59, 99, 0, 0, 2, 0, 0, 255, 233, 3, 164, 5, 47, 0, 13, 0, 58, 1, 10, 176, 59, 47, 176, 60, 47, 176, 59, 16, 176, 14, 208, 176, 14, 47, 177, 41, 8, 244, 64, 27, 6, 41, 22, 41, 38, 41, 54, 41, 70, 41, 86, 41, 102, 41, 118, 41, 134, 41, 150, 41, 166, 41, 182, 41, 198, 41, 13, 93, 180, 213, 41, 229, 41, 2, 93, 176, 0, 208, 176, 0, 47, 176, 60, 16, 176, 51, 220, 177, 8, 12, 244, 180, 218, 8, 234, 8, 2, 93, 64, 27, 9, 8, 25, 8, 41, 8, 57, 8, 73, 8, 89, 8, 105, 8, 121, 8, 137, 8, 153, 8, 169, 8, 185, 8, 201, 8, 13, 93, 176, 27, 208, 176, 27, 47, 0, 176, 0, 69, 88, 176, 19, 47, 27, 177, 19, 21, 62, 89, 176, 0, 69, 88, 176, 27, 47, 27, 177, 27, 21, 62, 89, 176, 0, 69, 88, 176, 56, 47, 27, 177, 56, 15, 62, 89, 179, 46, 6, 11, 4, 43, 176, 56, 16, 177, 3, 6, 244, 64, 27, 7, 3, 23, 3, 39, 3, 55, 3, 71, 3, 87, 3, 103, 3, 119, 3, 135, 3, 151, 3, 167, 3, 183, 3, 199, 3, 13, 93, 180, 214, 3, 230, 3, 2, 93, 176, 19, 16, 177, 36, 6, 244, 180, 217, 36, 233, 36, 2, 93, 64, 27, 8, 36, 24, 36, 40, 36, 56, 36, 72, 36, 88, 36, 104, 36, 120, 36, 136, 36, 152, 36, 168, 36, 184, 36, 200, 36, 13, 93, 177, 24, 2, 244, 177, 31, 6, 244, 178, 41, 56, 19, 17, 18, 57, 48, 49, 19, 20, 22, 51, 50, 62, 2, 53, 52, 38, 35, 34, 6, 39, 52, 62, 2, 51, 50, 30, 2, 51, 50, 54, 55, 23, 6, 6, 35, 34, 46, 2, 35, 34, 14, 2, 21, 62, 3, 51, 50, 30, 2, 21, 20, 14, 2, 35, 34, 2, 150, 172, 151, 70, 119, 86, 47, 168, 154, 166, 157, 150, 63, 115, 158, 96, 45, 62, 49, 45, 31, 41, 57, 41, 71, 43, 116, 51, 39, 58, 49, 51, 35, 61, 107, 80, 45, 25, 72, 88, 100, 49, 98, 168, 123, 70, 70, 123, 168, 98, 235, 238, 1, 188, 159, 191, 49, 93, 129, 79, 160, 191, 191, 47, 150, 248, 178, 100, 18, 25, 18, 28, 33, 82, 41, 55, 18, 25, 18, 67, 127, 180, 113, 45, 70, 49, 24, 59, 117, 174, 117, 98, 172, 125, 72, 1, 72, 0, 0, 3, 0, 49, 0, 0, 3, 162, 3, 164, 0, 16, 0, 29, 0, 38, 0, 169, 179, 35, 12, 4, 4, 43, 179, 11, 12, 17, 4, 43, 180, 218, 17, 234, 17, 2, 93, 64, 27, 9, 17, 25, 17, 41, 17, 57, 17, 73, 17, 89, 17, 105, 17, 121, 17, 137, 17, 153, 17, 169, 17, 185, 17, 201, 17, 13, 93, 178, 30, 17, 11, 17, 18, 57, 176, 30, 47, 180, 218, 30, 234, 30, 2, 93, 64, 27, 9, 30, 25, 30, 41, 30, 57, 30, 73, 30, 89, 30, 105, 30, 121, 30, 137, 30, 153, 30, 169, 30, 185, 30, 201, 30, 13, 93, 177, 0, 12, 244, 178, 14, 4, 0, 17, 18, 57, 176, 35, 16, 176, 23, 208, 0, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 19, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 179, 25, 6, 33, 4, 43, 178, 14, 33, 25, 17, 18, 57, 176, 5, 16, 177, 22, 6, 244, 176, 3, 16, 177, 35, 6, 244, 48, 49, 1, 20, 6, 35, 33, 17, 33, 50, 30, 2, 21, 20, 6, 7, 22, 22, 3, 52, 46, 2, 35, 33, 17, 33, 50, 62, 2, 19, 52, 38, 35, 33, 17, 33, 50, 54, 3, 162, 199, 186, 254, 16, 1, 209, 68, 133, 104, 66, 70, 102, 125, 92, 182, 46, 67, 82, 39, 254, 184, 1, 72, 41, 84, 68, 41, 45, 134, 116, 254, 155, 1, 101, 116, 134, 1, 10, 135, 131, 3, 164, 21, 53, 94, 76, 72, 98, 26, 29, 113, 1, 74, 43, 53, 29, 10, 254, 244, 10, 31, 51, 254, 145, 82, 76, 254, 199, 78, 0, 1, 0, 49, 0, 0, 3, 164, 3, 164, 0, 5, 0, 42, 179, 3, 12, 0, 4, 43, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 176, 0, 16, 177, 2, 6, 244, 48, 49, 19, 33, 21, 33, 17, 35, 49, 3, 115, 253, 22, 137, 3, 164, 117, 252, 209, 0, 0, 2, 0, 0, 254, 193, 3, 164, 3, 164, 0, 15, 0, 24, 0, 82, 179, 13, 11, 0, 4, 43, 179, 16, 12, 5, 4, 43, 179, 8, 12, 22, 4, 43, 179, 10, 11, 11, 4, 43, 176, 10, 16, 176, 26, 220, 0, 176, 10, 47, 176, 14, 47, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 15, 62, 89, 177, 8, 6, 244, 176, 21, 208, 176, 22, 208, 176, 6, 16, 177, 23, 6, 244, 48, 49, 53, 62, 3, 53, 53, 33, 17, 51, 17, 35, 17, 33, 17, 35, 1, 20, 14, 2, 7, 33, 17, 35, 47, 86, 64, 39, 1, 253, 187, 123, 253, 82, 123, 1, 117, 33, 53, 68, 33, 1, 166, 235, 117, 10, 88, 156, 223, 145, 193, 252, 209, 254, 76, 1, 63, 254, 193, 4, 34, 116, 203, 160, 115, 28, 2, 186, 0, 2, 255, 252, 255, 233, 3, 174, 3, 186, 0, 25, 0, 34, 0, 123, 0, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 19, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 15, 62, 89, 179, 34, 6, 0, 4, 43, 176, 10, 16, 177, 3, 6, 244, 64, 27, 7, 3, 23, 3, 39, 3, 55, 3, 71, 3, 87, 3, 103, 3, 119, 3, 135, 3, 151, 3, 167, 3, 183, 3, 199, 3, 13, 93, 180, 214, 3, 230, 3, 2, 93, 176, 20, 16, 177, 29, 6, 244, 180, 217, 29, 233, 29, 2, 93, 64, 27, 8, 29, 24, 29, 40, 29, 56, 29, 72, 29, 88, 29, 104, 29, 120, 29, 136, 29, 152, 29, 168, 29, 184, 29, 200, 29, 13, 93, 48, 49, 19, 22, 22, 51, 50, 54, 55, 23, 6, 6, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 21, 39, 38, 38, 35, 34, 14, 2, 7, 137, 15, 186, 149, 105, 164, 41, 96, 70, 194, 142, 108, 180, 131, 72, 65, 123, 176, 109, 119, 178, 119, 57, 145, 23, 176, 129, 66, 112, 86, 58, 8, 1, 162, 148, 176, 86, 64, 66, 98, 103, 72, 129, 178, 109, 106, 179, 131, 73, 80, 141, 196, 119, 117, 153, 150, 43, 80, 113, 67, 0, 1, 255, 240, 0, 0, 3, 180, 3, 164, 0, 19, 0, 127, 179, 6, 8, 3, 4, 43, 176, 6, 16, 176, 13, 208, 176, 3, 16, 176, 15, 208, 0, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 19, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 19, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 19, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 15, 62, 89, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 15, 62, 89, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 15, 62, 89, 178, 3, 10, 1, 17, 18, 57, 178, 6, 10, 1, 17, 18, 57, 178, 12, 10, 1, 17, 18, 57, 178, 17, 10, 1, 17, 18, 57, 48, 49, 1, 1, 51, 1, 17, 51, 17, 1, 51, 1, 1, 35, 3, 7, 17, 35, 17, 39, 3, 35, 1, 14, 254, 226, 153, 1, 4, 138, 1, 4, 153, 254, 226, 1, 30, 147, 217, 49, 138, 49, 217, 147, 2, 12, 1, 152, 254, 119, 1, 137, 254, 119, 1, 137, 254, 104, 253, 244, 1, 162, 72, 254, 166, 1, 90, 72, 254, 94, 0, 0, 1, 255, 254, 255, 233, 3, 127, 3, 186, 0, 46, 0, 197, 179, 6, 8, 32, 4, 43, 176, 6, 16, 176, 0, 208, 176, 0, 47, 180, 218, 32, 234, 32, 2, 93, 64, 27, 9, 32, 25, 32, 41, 32, 57, 32, 73, 32, 89, 32, 105, 32, 121, 32, 137, 32, 153, 32, 169, 32, 185, 32, 201, 32, 13, 93, 176, 32, 16, 176, 21, 208, 176, 21, 47, 176, 6, 16, 176, 48, 220, 0, 176, 0, 69, 88, 176, 42, 47, 27, 177, 42, 19, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 15, 62, 89, 179, 29, 6, 26, 4, 43, 178, 3, 26, 29, 17, 18, 57, 176, 11, 16, 177, 18, 6, 244, 64, 27, 7, 18, 23, 18, 39, 18, 55, 18, 71, 18, 87, 18, 103, 18, 119, 18, 135, 18, 151, 18, 167, 18, 183, 18, 199, 18, 13, 93, 180, 214, 18, 230, 18, 2, 93, 176, 42, 16, 177, 35, 6, 244, 180, 217, 35, 233, 35, 2, 93, 64, 27, 8, 35, 24, 35, 40, 35, 56, 35, 72, 35, 88, 35, 104, 35, 120, 35, 136, 35, 152, 35, 168, 35, 184, 35, 200, 35, 13, 93, 48, 49, 1, 20, 6, 7, 22, 22, 21, 20, 14, 2, 35, 34, 38, 39, 55, 22, 22, 51, 50, 54, 53, 52, 46, 2, 35, 35, 53, 51, 50, 54, 53, 52, 38, 35, 34, 6, 7, 39, 54, 54, 51, 50, 30, 2, 3, 115, 95, 98, 92, 113, 72, 125, 170, 100, 160, 207, 63, 96, 47, 164, 123, 147, 183, 35, 68, 100, 68, 156, 156, 131, 127, 163, 142, 118, 154, 41, 102, 61, 201, 153, 97, 161, 119, 66, 2, 164, 68, 119, 16, 18, 119, 72, 67, 107, 74, 39, 99, 100, 66, 72, 76, 90, 80, 27, 55, 43, 27, 116, 93, 51, 74, 88, 84, 70, 70, 100, 100, 39, 71, 105, 0, 0, 1, 0, 49, 0, 0, 3, 115, 3, 164, 0, 9, 0, 98, 176, 10, 47, 176, 11, 47, 176, 10, 16, 176, 0, 208, 176, 0, 47, 177, 1, 12, 244, 176, 11, 16, 176, 5, 220, 177, 6, 8, 244, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 15, 62, 89, 178, 2, 5, 0, 17, 18, 57, 178, 7, 5, 0, 17, 18, 57, 48, 49, 19, 51, 17, 1, 51, 17, 35, 17, 1, 35, 49, 137, 1, 248, 193, 138, 253, 242, 170, 3, 164, 253, 16, 2, 240, 252, 92, 3, 18, 252, 238, 0, 255, 255, 0, 49, 0, 0, 3, 115, 5, 6, 2, 38, 1, 242, 0, 0, 0, 6, 0, 217, 0, 0, 0, 1, 0, 49, 0, 0, 3, 162, 3, 164, 0, 11, 0, 74, 179, 4, 12, 5, 4, 43, 176, 4, 16, 176, 7, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 178, 8, 0, 6, 17, 18, 57, 48, 49, 33, 35, 1, 7, 17, 35, 17, 51, 17, 1, 51, 1, 3, 162, 195, 254, 131, 168, 137, 137, 2, 19, 196, 254, 45, 1, 162, 154, 254, 248, 3, 164, 254, 10, 1, 246, 254, 84, 0, 1, 255, 231, 255, 233, 3, 115, 3, 164, 0, 19, 0, 139, 176, 20, 47, 176, 21, 47, 176, 1, 220, 177, 2, 8, 244, 176, 20, 16, 176, 18, 208, 176, 18, 47, 177, 5, 8, 244, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 15, 62, 89, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 15, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 15, 62, 89, 176, 0, 16, 177, 3, 6, 244, 178, 13, 10, 0, 17, 18, 57, 176, 10, 16, 177, 16, 6, 244, 64, 27, 7, 16, 23, 16, 39, 16, 55, 16, 71, 16, 87, 16, 103, 16, 119, 16, 135, 16, 151, 16, 167, 16, 183, 16, 199, 16, 13, 93, 180, 214, 16, 230, 16, 2, 93, 48, 49, 1, 17, 35, 17, 33, 17, 20, 14, 2, 35, 34, 39, 55, 22, 22, 51, 50, 53, 17, 3, 115, 138, 254, 91, 37, 62, 82, 45, 84, 39, 27, 14, 35, 29, 106, 3, 164, 252, 92, 3, 47, 253, 160, 55, 86, 58, 31, 25, 109, 9, 8, 113, 2, 213, 0, 0, 1, 0, 49, 0, 0, 3, 115, 3, 164, 0, 12, 0, 109, 176, 13, 47, 176, 14, 47, 176, 0, 220, 177, 1, 8, 244, 176, 13, 16, 176, 7, 208, 176, 7, 47, 177, 6, 12, 244, 178, 10, 7, 0, 17, 18, 57, 0, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 19, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 178, 2, 0, 8, 17, 18, 57, 178, 5, 0, 8, 17, 18, 57, 178, 10, 0, 8, 17, 18, 57, 48, 49, 33, 35, 17, 3, 35, 3, 17, 35, 17, 51, 19, 19, 51, 3, 115, 138, 229, 98, 232, 137, 178, 240, 238, 178, 2, 227, 254, 29, 1, 227, 253, 29, 3, 164, 254, 26, 1, 230, 0, 0, 1, 0, 49, 0, 0, 3, 115, 3, 164, 0, 11, 0, 96, 176, 12, 47, 176, 13, 47, 176, 0, 220, 177, 1, 8, 244, 176, 12, 16, 176, 5, 208, 176, 5, 47, 177, 4, 12, 244, 176, 7, 208, 176, 1, 16, 176, 9, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 179, 9, 6, 2, 4, 43, 48, 49, 33, 35, 17, 33, 17, 35, 17, 51, 17, 33, 17, 51, 3, 115, 138, 253, 209, 137, 137, 2, 47, 138, 1, 162, 254, 94, 3, 164, 254, 115, 1, 141, 0, 2, 255, 236, 255, 233, 3, 188, 3, 186, 0, 19, 0, 39, 0, 226, 176, 40, 47, 176, 41, 47, 176, 0, 220, 176, 40, 16, 176, 10, 208, 176, 10, 47, 176, 0, 16, 177, 20, 12, 244, 180, 218, 20, 234, 20, 2, 93, 64, 27, 9, 20, 25, 20, 41, 20, 57, 20, 73, 20, 89, 20, 105, 20, 121, 20, 137, 20, 153, 20, 169, 20, 185, 20, 201, 20, 13, 93, 176, 10, 16, 177, 30, 12, 244, 64, 23, 6, 30, 22, 30, 38, 30, 54, 30, 70, 30, 86, 30, 102, 30, 118, 30, 134, 30, 150, 30, 166, 30, 11, 93, 180, 182, 30, 198, 30, 2, 93, 180, 213, 30, 229, 30, 2, 93, 0, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 176, 15, 16, 177, 25, 6, 244, 180, 217, 25, 233, 25, 2, 93, 64, 27, 8, 25, 24, 25, 40, 25, 56, 25, 72, 25, 88, 25, 104, 25, 120, 25, 136, 25, 152, 25, 168, 25, 184, 25, 200, 25, 13, 93, 176, 5, 16, 177, 35, 6, 244, 64, 27, 7, 35, 23, 35, 39, 35, 55, 35, 71, 35, 87, 35, 103, 35, 119, 35, 135, 35, 151, 35, 167, 35, 183, 35, 199, 35, 13, 93, 180, 214, 35, 230, 35, 2, 93, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 62, 2, 3, 188, 69, 129, 180, 111, 109, 180, 129, 69, 69, 129, 180, 109, 111, 180, 129, 69, 137, 47, 92, 131, 82, 82, 131, 90, 47, 47, 90, 131, 82, 82, 131, 92, 47, 1, 207, 109, 178, 127, 72, 72, 127, 178, 109, 106, 183, 129, 73, 73, 129, 183, 106, 80, 135, 102, 58, 58, 102, 135, 80, 80, 135, 98, 56, 56, 98, 135, 0, 1, 0, 49, 0, 0, 3, 115, 3, 164, 0, 7, 0, 75, 176, 8, 47, 176, 9, 47, 176, 0, 220, 177, 1, 8, 244, 176, 8, 16, 176, 5, 208, 176, 5, 47, 177, 4, 12, 244, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 176, 6, 16, 177, 2, 6, 244, 48, 49, 33, 35, 17, 33, 17, 35, 17, 33, 3, 115, 138, 253, 209, 137, 3, 66, 3, 47, 252, 209, 3, 164, 0, 0, 2, 0, 49, 254, 139, 3, 164, 3, 186, 0, 19, 0, 36, 0, 236, 176, 37, 47, 176, 38, 47, 176, 0, 220, 176, 37, 16, 176, 10, 208, 176, 10, 47, 177, 9, 12, 244, 176, 12, 208, 178, 13, 10, 0, 17, 18, 57, 176, 0, 16, 177, 20, 12, 244, 180, 218, 20, 234, 20, 2, 93, 64, 27, 9, 20, 25, 20, 41, 20, 57, 20, 73, 20, 89, 20, 105, 20, 121, 20, 137, 20, 153, 20, 169, 20, 185, 20, 201, 20, 13, 93, 176, 9, 16, 176, 28, 208, 0, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 19, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 19, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 17, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 177, 32, 6, 244, 64, 27, 7, 32, 23, 32, 39, 32, 55, 32, 71, 32, 87, 32, 103, 32, 119, 32, 135, 32, 151, 32, 167, 32, 183, 32, 199, 32, 13, 93, 180, 214, 32, 230, 32, 2, 93, 178, 8, 5, 32, 17, 18, 57, 176, 15, 16, 177, 25, 6, 244, 180, 217, 25, 233, 25, 2, 93, 64, 27, 8, 25, 24, 25, 40, 25, 56, 25, 72, 25, 88, 25, 104, 25, 120, 25, 136, 25, 152, 25, 168, 25, 184, 25, 200, 25, 13, 93, 178, 13, 15, 25, 17, 18, 57, 48, 49, 1, 20, 14, 2, 35, 34, 38, 39, 17, 35, 17, 51, 21, 54, 51, 50, 30, 2, 7, 52, 46, 2, 35, 34, 6, 7, 17, 22, 22, 51, 50, 62, 2, 3, 164, 68, 123, 174, 108, 74, 139, 60, 137, 137, 127, 146, 108, 174, 123, 68, 137, 43, 86, 125, 82, 78, 135, 60, 60, 135, 78, 82, 125, 86, 43, 1, 209, 109, 178, 129, 72, 54, 53, 254, 55, 5, 25, 86, 108, 71, 131, 181, 106, 78, 137, 100, 58, 58, 65, 254, 12, 65, 56, 58, 100, 135, 0, 1, 0, 0, 255, 233, 3, 129, 3, 186, 0, 40, 0, 215, 176, 41, 47, 176, 42, 47, 176, 20, 220, 176, 0, 208, 176, 0, 47, 176, 41, 16, 176, 8, 208, 176, 8, 47, 176, 20, 16, 177, 19, 11, 244, 176, 22, 208, 176, 8, 16, 177, 32, 12, 244, 64, 27, 6, 32, 22, 32, 38, 32, 54, 32, 70, 32, 86, 32, 102, 32, 118, 32, 134, 32, 150, 32, 166, 32, 182, 32, 198, 32, 13, 93, 180, 213, 32, 229, 32, 2, 93, 0, 176, 0, 69, 88, 176, 19, 47, 27, 177, 19, 19, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 19, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 178, 18, 3, 13, 17, 18, 57, 176, 13, 16, 177, 27, 6, 244, 180, 217, 27, 233, 27, 2, 93, 64, 27, 8, 27, 24, 27, 40, 27, 56, 27, 72, 27, 88, 27, 104, 27, 120, 27, 136, 27, 152, 27, 168, 27, 184, 27, 200, 27, 13, 93, 176, 3, 16, 177, 37, 6, 244, 64, 27, 7, 37, 23, 37, 39, 37, 55, 37, 71, 37, 87, 37, 103, 37, 119, 37, 135, 37, 151, 37, 167, 37, 183, 37, 199, 37, 13, 93, 180, 214, 37, 230, 37, 2, 93, 48, 49, 37, 6, 6, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 30, 2, 23, 53, 51, 17, 35, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 51, 50, 54, 55, 3, 129, 59, 205, 141, 109, 182, 129, 72, 66, 122, 177, 108, 43, 90, 80, 64, 16, 123, 123, 45, 78, 108, 62, 84, 125, 84, 43, 49, 93, 131, 82, 104, 162, 43, 176, 92, 107, 72, 129, 178, 109, 106, 181, 129, 73, 20, 41, 57, 39, 135, 254, 139, 62, 102, 74, 41, 58, 100, 135, 80, 80, 135, 98, 58, 80, 68, 0, 0, 1, 0, 0, 0, 0, 3, 164, 3, 164, 0, 15, 0, 107, 176, 16, 47, 176, 13, 208, 176, 13, 47, 176, 9, 220, 178, 64, 9, 1, 93, 176, 1, 220, 178, 64, 1, 1, 93, 177, 0, 13, 244, 176, 9, 16, 177, 4, 8, 244, 176, 13, 16, 177, 12, 13, 244, 176, 0, 16, 176, 17, 220, 0, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 19, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 176, 14, 16, 177, 2, 6, 244, 176, 6, 16, 177, 4, 6, 244, 176, 8, 208, 176, 9, 208, 176, 2, 16, 176, 10, 208, 176, 11, 208, 48, 49, 1, 35, 17, 33, 17, 51, 21, 33, 53, 51, 17, 33, 17, 35, 17, 33, 3, 164, 117, 254, 232, 210, 253, 209, 211, 254, 232, 117, 3, 164, 1, 236, 1, 67, 253, 70, 117, 117, 2, 186, 254, 189, 1, 184, 0, 0, 1, 255, 225, 254, 117, 3, 193, 3, 164, 0, 18, 0, 35, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 15, 47, 27, 177, 15, 19, 62, 89, 179, 10, 6, 4, 4, 43, 48, 49, 1, 1, 6, 6, 35, 34, 39, 55, 22, 22, 51, 50, 54, 55, 55, 1, 51, 1, 1, 3, 193, 254, 8, 39, 142, 86, 96, 96, 27, 47, 90, 28, 68, 51, 19, 57, 254, 96, 162, 1, 80, 1, 74, 3, 164, 251, 112, 98, 61, 35, 118, 20, 17, 66, 45, 141, 3, 191, 252, 209, 3, 47, 0, 0, 3, 255, 227, 254, 139, 3, 193, 5, 25, 0, 10, 0, 36, 0, 47, 1, 50, 176, 48, 47, 176, 16, 208, 176, 16, 47, 176, 0, 220, 178, 128, 0, 1, 93, 178, 208, 0, 1, 93, 178, 48, 0, 1, 93, 176, 16, 16, 177, 5, 8, 244, 176, 0, 16, 176, 11, 208, 176, 0, 16, 176, 21, 208, 176, 0, 16, 177, 47, 8, 244, 176, 23, 208, 176, 0, 16, 176, 42, 220, 178, 128, 42, 1, 93, 178, 208, 42, 1, 93, 178, 48, 42, 1, 93, 178, 24, 0, 42, 17, 18, 57, 177, 29, 8, 244, 176, 47, 16, 176, 34, 208, 176, 29, 16, 176, 49, 220, 0, 176, 0, 69, 88, 176, 22, 47, 27, 177, 22, 21, 62, 89, 176, 0, 69, 88, 176, 19, 47, 27, 177, 19, 19, 62, 89, 176, 0, 69, 88, 176, 26, 47, 27, 177, 26, 19, 62, 89, 176, 0, 69, 88, 176, 35, 47, 27, 177, 35, 17, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 15, 62, 89, 176, 0, 69, 88, 176, 32, 47, 27, 177, 32, 15, 62, 89, 176, 19, 16, 177, 2, 6, 244, 180, 217, 2, 233, 2, 2, 93, 64, 27, 8, 2, 24, 2, 40, 2, 56, 2, 72, 2, 88, 2, 104, 2, 120, 2, 136, 2, 152, 2, 168, 2, 184, 2, 200, 2, 13, 93, 176, 13, 16, 177, 8, 6, 244, 64, 27, 7, 8, 23, 8, 39, 8, 55, 8, 71, 8, 87, 8, 103, 8, 119, 8, 135, 8, 151, 8, 167, 8, 183, 8, 199, 8, 13, 93, 180, 214, 8, 230, 8, 2, 93, 178, 11, 13, 8, 17, 18, 57, 178, 21, 19, 2, 17, 18, 57, 178, 24, 19, 2, 17, 18, 57, 178, 34, 13, 8, 17, 18, 57, 176, 39, 208, 176, 2, 16, 176, 45, 208, 48, 49, 1, 38, 35, 34, 6, 21, 20, 22, 51, 50, 55, 21, 6, 35, 34, 38, 53, 52, 54, 51, 50, 23, 17, 51, 17, 54, 51, 50, 22, 21, 20, 6, 35, 34, 39, 17, 35, 19, 22, 51, 50, 54, 53, 52, 38, 35, 34, 7, 1, 141, 57, 84, 74, 73, 73, 74, 84, 57, 53, 88, 143, 142, 142, 143, 88, 53, 138, 53, 88, 143, 142, 142, 143, 88, 53, 138, 138, 57, 84, 74, 73, 73, 74, 84, 57, 2, 231, 95, 172, 201, 201, 170, 94, 125, 86, 252, 236, 235, 254, 86, 1, 181, 254, 75, 86, 254, 235, 236, 252, 86, 254, 76, 2, 49, 94, 170, 201, 201, 172, 95, 0, 1, 255, 236, 0, 0, 3, 186, 3, 164, 0, 27, 0, 119, 0, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 19, 62, 89, 176, 0, 69, 88, 176, 21, 47, 27, 177, 21, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 15, 62, 89, 177, 2, 3, 244, 178, 4, 0, 14, 17, 18, 57, 176, 5, 208, 176, 6, 208, 176, 9, 208, 176, 10, 208, 176, 14, 16, 177, 12, 4, 244, 176, 16, 208, 176, 17, 208, 178, 18, 0, 14, 17, 18, 57, 176, 19, 208, 176, 20, 208, 176, 23, 208, 176, 24, 208, 176, 10, 16, 176, 26, 208, 176, 27, 208, 48, 49, 33, 33, 53, 51, 3, 3, 51, 21, 33, 53, 51, 1, 3, 35, 53, 33, 21, 35, 23, 55, 35, 53, 33, 21, 35, 3, 1, 51, 3, 186, 254, 127, 82, 184, 182, 75, 254, 132, 145, 1, 0, 246, 135, 1, 127, 86, 170, 172, 94, 1, 131, 131, 246, 1, 0, 143, 121, 1, 14, 254, 242, 121, 121, 1, 96, 1, 80, 123, 123, 254, 254, 123, 123, 254, 176, 254, 160, 0, 1, 0, 49, 254, 193, 4, 31, 3, 164, 0, 11, 0, 79, 179, 7, 12, 4, 4, 43, 179, 11, 8, 8, 4, 43, 179, 1, 11, 2, 4, 43, 176, 1, 16, 176, 13, 220, 0, 176, 1, 47, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 19, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 19, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 177, 0, 6, 244, 176, 7, 208, 176, 8, 208, 48, 49, 37, 17, 35, 17, 33, 17, 51, 17, 33, 17, 51, 17, 4, 31, 123, 252, 141, 137, 2, 47, 138, 121, 254, 72, 1, 63, 3, 164, 252, 209, 3, 47, 252, 213, 0, 0, 1, 0, 49, 0, 0, 3, 115, 3, 164, 0, 19, 0, 94, 176, 20, 47, 176, 21, 47, 176, 20, 16, 176, 0, 208, 176, 0, 47, 177, 1, 12, 244, 176, 21, 16, 176, 12, 220, 177, 11, 8, 244, 176, 14, 208, 178, 15, 0, 12, 17, 18, 57, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 19, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 15, 62, 89, 179, 5, 6, 17, 4, 43, 178, 15, 13, 0, 17, 18, 57, 48, 49, 19, 51, 17, 20, 22, 51, 50, 62, 2, 53, 53, 51, 17, 35, 17, 2, 35, 32, 17, 49, 137, 109, 121, 76, 122, 86, 45, 138, 138, 98, 254, 254, 168, 3, 164, 254, 215, 125, 137, 69, 117, 152, 82, 139, 252, 92, 2, 0, 255, 0, 1, 123, 0, 1, 0, 0, 0, 0, 3, 164, 3, 164, 0, 11, 0, 124, 176, 12, 47, 176, 7, 208, 176, 7, 47, 176, 0, 220, 178, 239, 0, 1, 93, 178, 64, 0, 1, 93, 177, 1, 8, 244, 176, 0, 16, 176, 3, 220, 178, 239, 3, 1, 93, 178, 64, 3, 1, 93, 177, 6, 12, 244, 176, 7, 16, 177, 10, 12, 244, 176, 6, 16, 176, 13, 220, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 19, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 19, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 177, 2, 6, 244, 176, 10, 208, 176, 11, 208, 48, 49, 1, 51, 17, 33, 17, 51, 17, 33, 17, 51, 17, 33, 1, 141, 138, 1, 4, 137, 252, 92, 137, 1, 4, 3, 164, 252, 209, 3, 47, 252, 92, 3, 164, 252, 209, 0, 0, 1, 0, 0, 254, 193, 4, 31, 3, 164, 0, 15, 0, 117, 179, 3, 12, 0, 4, 43, 179, 7, 8, 4, 4, 43, 179, 11, 12, 8, 4, 43, 176, 11, 16, 177, 12, 11, 244, 176, 11, 16, 176, 14, 208, 176, 11, 16, 176, 17, 220, 0, 176, 13, 47, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 19, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 177, 3, 6, 244, 176, 7, 208, 176, 8, 208, 176, 11, 208, 176, 11, 47, 176, 12, 208, 176, 12, 47, 48, 49, 49, 17, 51, 17, 33, 17, 51, 17, 33, 17, 51, 17, 51, 17, 35, 17, 137, 1, 4, 138, 1, 4, 137, 123, 123, 3, 164, 252, 209, 3, 47, 252, 209, 3, 47, 252, 213, 254, 72, 1, 63, 0, 2, 0, 0, 0, 0, 3, 162, 3, 164, 0, 12, 0, 21, 0, 118, 176, 22, 47, 176, 23, 47, 176, 22, 16, 176, 10, 208, 176, 10, 47, 177, 18, 12, 244, 176, 1, 208, 176, 23, 16, 176, 6, 220, 177, 13, 12, 244, 180, 218, 13, 234, 13, 2, 93, 64, 27, 9, 13, 25, 13, 41, 13, 57, 13, 73, 13, 89, 13, 105, 13, 121, 13, 137, 13, 153, 13, 169, 13, 185, 13, 201, 13, 13, 93, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 179, 3, 6, 16, 4, 43, 176, 0, 16, 177, 11, 6, 244, 176, 9, 16, 177, 18, 6, 244, 48, 49, 17, 33, 17, 51, 50, 22, 21, 20, 6, 35, 33, 17, 35, 1, 52, 38, 35, 35, 17, 51, 50, 54, 1, 117, 221, 162, 174, 174, 160, 254, 152, 236, 3, 25, 105, 92, 223, 223, 92, 105, 3, 164, 254, 139, 133, 145, 146, 135, 3, 47, 253, 234, 77, 84, 254, 187, 86, 0, 0, 3, 0, 0, 0, 0, 3, 164, 3, 164, 0, 3, 0, 14, 0, 23, 0, 135, 179, 20, 12, 12, 4, 43, 179, 8, 12, 15, 4, 43, 179, 1, 12, 0, 4, 43, 176, 20, 16, 176, 4, 208, 180, 218, 15, 234, 15, 2, 93, 64, 27, 9, 15, 25, 15, 41, 15, 57, 15, 73, 15, 89, 15, 105, 15, 121, 15, 137, 15, 153, 15, 169, 15, 185, 15, 201, 15, 13, 93, 176, 1, 16, 176, 25, 220, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 19, 62, 89, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 15, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 15, 62, 89, 179, 5, 6, 18, 4, 43, 176, 11, 16, 177, 20, 6, 244, 48, 49, 1, 51, 17, 35, 1, 51, 50, 22, 21, 20, 6, 35, 33, 17, 51, 1, 52, 38, 35, 35, 17, 51, 50, 54, 3, 27, 137, 137, 253, 110, 160, 154, 161, 161, 152, 254, 213, 137, 1, 82, 92, 84, 162, 162, 84, 92, 3, 164, 252, 92, 2, 47, 133, 145, 146, 135, 3, 164, 253, 117, 77, 84, 254, 187, 86, 0, 2, 0, 49, 0, 0, 3, 162, 3, 164, 0, 10, 0, 19, 0, 111, 176, 20, 47, 176, 21, 47, 176, 20, 16, 176, 8, 208, 176, 8, 47, 177, 16, 12, 244, 176, 0, 208, 176, 21, 16, 176, 4, 220, 177, 11, 12, 244, 180, 218, 11, 234, 11, 2, 93, 64, 27, 9, 11, 25, 11, 41, 11, 57, 11, 73, 11, 89, 11, 105, 11, 121, 11, 137, 11, 153, 11, 169, 11, 185, 11, 201, 11, 13, 93, 0, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 19, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 15, 62, 89, 179, 1, 6, 14, 4, 43, 176, 7, 16, 177, 16, 6, 244, 48, 49, 19, 33, 50, 22, 21, 20, 6, 35, 33, 17, 51, 1, 52, 38, 35, 33, 17, 33, 50, 54, 186, 1, 101, 186, 201, 199, 186, 254, 16, 137, 2, 95, 134, 116, 254, 155, 1, 101, 116, 134, 2, 47, 133, 145, 146, 135, 3, 164, 253, 117, 77, 84, 254, 187, 86, 0, 1, 0, 35, 255, 233, 3, 164, 3, 186, 0, 32, 0, 123, 0, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 19, 62, 89, 176, 0, 69, 88, 176, 21, 47, 27, 177, 21, 15, 62, 89, 179, 1, 6, 31, 4, 43, 176, 11, 16, 177, 4, 6, 244, 180, 217, 4, 233, 4, 2, 93, 64, 27, 8, 4, 24, 4, 40, 4, 56, 4, 72, 4, 88, 4, 104, 4, 120, 4, 136, 4, 152, 4, 168, 4, 184, 4, 200, 4, 13, 93, 176, 21, 16, 177, 28, 6, 244, 64, 27, 7, 28, 23, 28, 39, 28, 55, 28, 71, 28, 87, 28, 103, 28, 119, 28, 135, 28, 151, 28, 167, 28, 183, 28, 199, 28, 13, 93, 180, 214, 28, 230, 28, 2, 93, 48, 49, 1, 33, 38, 38, 35, 34, 6, 7, 39, 54, 54, 51, 50, 30, 2, 21, 20, 14, 2, 35, 34, 38, 39, 55, 22, 22, 51, 50, 54, 55, 33, 1, 23, 1, 253, 20, 180, 148, 104, 162, 43, 96, 59, 205, 141, 109, 182, 129, 72, 72, 129, 182, 109, 141, 205, 59, 96, 43, 162, 104, 154, 184, 15, 253, 254, 2, 23, 133, 170, 82, 68, 66, 92, 108, 71, 129, 181, 108, 109, 178, 129, 72, 107, 92, 66, 68, 80, 182, 142, 0, 2, 0, 49, 255, 233, 3, 164, 3, 186, 0, 14, 0, 22, 0, 222, 179, 1, 12, 0, 4, 43, 179, 21, 12, 11, 4, 43, 179, 7, 12, 17, 4, 43, 176, 11, 16, 176, 3, 208, 176, 1, 16, 176, 12, 208, 180, 218, 17, 234, 17, 2, 93, 64, 27, 9, 17, 25, 17, 41, 17, 57, 17, 73, 17, 89, 17, 105, 17, 121, 17, 137, 17, 153, 17, 169, 17, 185, 17, 201, 17, 13, 93, 176, 7, 16, 176, 24, 220, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 19, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 15, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 179, 3, 6, 11, 4, 43, 176, 9, 16, 177, 15, 1, 244, 64, 27, 7, 15, 23, 15, 39, 15, 55, 15, 71, 15, 87, 15, 103, 15, 119, 15, 135, 15, 151, 15, 167, 15, 183, 15, 199, 15, 13, 93, 180, 214, 15, 230, 15, 2, 93, 176, 5, 16, 177, 19, 1, 244, 180, 217, 19, 233, 19, 2, 93, 64, 27, 8, 19, 24, 19, 40, 19, 56, 19, 72, 19, 88, 19, 104, 19, 120, 19, 136, 19, 152, 19, 168, 19, 184, 19, 200, 19, 13, 93, 48, 49, 19, 51, 17, 51, 18, 33, 32, 17, 16, 33, 32, 3, 35, 17, 35, 37, 50, 17, 16, 35, 34, 17, 16, 49, 137, 189, 18, 1, 4, 1, 23, 254, 233, 254, 248, 14, 189, 137, 2, 92, 142, 142, 141, 3, 164, 254, 104, 1, 174, 254, 23, 254, 24, 1, 175, 254, 104, 88, 1, 121, 1, 119, 254, 137, 254, 135, 0, 2, 255, 244, 0, 0, 3, 115, 3, 164, 0, 13, 0, 22, 0, 145, 176, 23, 47, 176, 24, 47, 176, 23, 16, 176, 3, 208, 176, 3, 47, 176, 24, 16, 176, 8, 220, 177, 9, 8, 244, 176, 3, 16, 176, 13, 208, 176, 13, 47, 176, 3, 16, 177, 14, 12, 244, 64, 27, 6, 14, 22, 14, 38, 14, 54, 14, 70, 14, 86, 14, 102, 14, 118, 14, 134, 14, 150, 14, 166, 14, 182, 14, 198, 14, 13, 93, 180, 213, 14, 229, 14, 2, 93, 176, 9, 16, 176, 18, 208, 0, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 15, 62, 89, 176, 0, 69, 88, 176, 12, 47, 27, 177, 12, 15, 62, 89, 179, 17, 6, 0, 4, 43, 176, 0, 16, 176, 10, 208, 176, 6, 16, 177, 19, 6, 244, 48, 49, 1, 38, 38, 53, 52, 54, 51, 33, 17, 35, 17, 35, 1, 35, 19, 20, 22, 51, 33, 17, 33, 34, 6, 1, 90, 166, 178, 199, 186, 1, 240, 138, 223, 254, 172, 194, 151, 133, 117, 1, 100, 254, 156, 117, 133, 1, 117, 8, 133, 137, 146, 135, 252, 92, 1, 117, 254, 139, 2, 139, 78, 84, 1, 70, 86, 255, 255, 255, 252, 255, 233, 3, 174, 5, 25, 2, 38, 1, 239, 0, 0, 0, 6, 0, 140, 0, 0, 0, 1, 255, 143, 254, 117, 3, 115, 5, 25, 0, 39, 0, 175, 176, 40, 47, 176, 41, 47, 176, 40, 16, 176, 1, 208, 176, 1, 47, 177, 4, 12, 244, 176, 7, 208, 176, 41, 16, 176, 13, 220, 178, 8, 1, 13, 17, 18, 57, 178, 21, 1, 13, 17, 18, 57, 177, 26, 8, 244, 176, 4, 16, 176, 35, 208, 176, 1, 16, 176, 37, 208, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 19, 62, 89, 176, 0, 69, 88, 176, 36, 47, 27, 177, 36, 15, 62, 89, 179, 24, 6, 18, 4, 43, 179, 5, 6, 6, 4, 43, 176, 5, 16, 176, 0, 208, 178, 8, 36, 2, 17, 18, 57, 176, 10, 16, 177, 30, 6, 244, 180, 217, 30, 233, 30, 2, 93, 64, 27, 8, 30, 24, 30, 40, 30, 56, 30, 72, 30, 88, 30, 104, 30, 120, 30, 136, 30, 152, 30, 168, 30, 184, 30, 200, 30, 13, 93, 176, 6, 16, 176, 38, 208, 48, 49, 3, 51, 53, 51, 21, 51, 21, 35, 17, 18, 51, 32, 17, 17, 20, 14, 2, 35, 34, 39, 55, 22, 22, 51, 50, 53, 17, 52, 38, 35, 34, 14, 2, 21, 17, 35, 17, 35, 113, 162, 137, 187, 187, 99, 254, 1, 88, 37, 62, 82, 45, 84, 38, 26, 14, 35, 29, 106, 108, 121, 76, 123, 86, 45, 137, 162, 4, 94, 187, 187, 117, 254, 209, 1, 0, 254, 133, 253, 27, 55, 86, 58, 30, 24, 109, 8, 9, 113, 2, 229, 125, 138, 70, 117, 151, 82, 254, 94, 3, 233, 0, 255, 255, 0, 49, 0, 0, 3, 164, 5, 84, 2, 38, 1, 237, 0, 0, 0, 6, 0, 139, 0, 0, 0, 1, 0, 0, 255, 233, 3, 129, 3, 186, 0, 32, 0, 123, 0, 176, 0, 69, 88, 176, 20, 47, 27, 177, 20, 19, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 15, 62, 89, 179, 30, 6, 0, 4, 43, 176, 10, 16, 177, 3, 6, 244, 64, 27, 7, 3, 23, 3, 39, 3, 55, 3, 71, 3, 87, 3, 103, 3, 119, 3, 135, 3, 151, 3, 167, 3, 183, 3, 199, 3, 13, 93, 180, 214, 3, 230, 3, 2, 93, 176, 20, 16, 177, 27, 6, 244, 180, 217, 27, 233, 27, 2, 93, 64, 27, 8, 27, 24, 27, 40, 27, 56, 27, 72, 27, 88, 27, 104, 27, 120, 27, 136, 27, 152, 27, 168, 27, 184, 27, 200, 27, 13, 93, 48, 49, 19, 22, 22, 51, 50, 54, 55, 23, 6, 6, 35, 34, 46, 2, 53, 52, 62, 2, 51, 50, 22, 23, 7, 38, 38, 35, 34, 6, 7, 33, 21, 139, 15, 184, 154, 104, 162, 43, 96, 59, 205, 141, 109, 182, 129, 72, 72, 129, 182, 109, 141, 205, 59, 96, 43, 162, 104, 148, 182, 21, 2, 6, 1, 162, 142, 182, 80, 68, 66, 92, 107, 72, 129, 178, 109, 108, 181, 129, 71, 108, 92, 66, 68, 82, 170, 133, 117, 0, 1, 255, 246, 255, 233, 3, 139, 3, 186, 0, 50, 0, 217, 176, 51, 47, 176, 52, 47, 176, 0, 220, 177, 14, 12, 244, 180, 218, 14, 234, 14, 2, 93, 64, 27, 9, 14, 25, 14, 41, 14, 57, 14, 73, 14, 89, 14, 105, 14, 121, 14, 137, 14, 153, 14, 169, 14, 185, 14, 201, 14, 13, 93, 176, 51, 16, 176, 24, 208, 176, 24, 47, 177, 41, 12, 244, 64, 23, 6, 41, 22, 41, 38, 41, 54, 41, 70, 41, 86, 41, 102, 41, 118, 41, 134, 41, 150, 41, 166, 41, 11, 93, 180, 182, 41, 198, 41, 2, 93, 180, 213, 41, 229, 41, 2, 93, 0, 176, 0, 69, 88, 176, 29, 47, 27, 177, 29, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 177, 12, 6, 244, 64, 27, 7, 12, 23, 12, 39, 12, 55, 12, 71, 12, 87, 12, 103, 12, 119, 12, 135, 12, 151, 12, 167, 12, 183, 12, 199, 12, 13, 93, 180, 214, 12, 230, 12, 2, 93, 176, 29, 16, 177, 36, 6, 244, 180, 217, 36, 233, 36, 2, 93, 64, 27, 8, 36, 24, 36, 40, 36, 56, 36, 72, 36, 88, 36, 104, 36, 120, 36, 136, 36, 152, 36, 168, 36, 184, 36, 200, 36, 13, 93, 48, 49, 1, 20, 14, 2, 35, 34, 38, 39, 55, 22, 22, 51, 32, 53, 52, 46, 2, 39, 46, 3, 53, 52, 62, 2, 51, 50, 22, 23, 7, 38, 38, 35, 34, 14, 2, 21, 20, 30, 2, 23, 30, 3, 3, 139, 82, 129, 159, 76, 127, 252, 92, 61, 103, 200, 107, 1, 53, 51, 86, 111, 61, 78, 154, 127, 77, 71, 119, 160, 86, 123, 194, 78, 55, 80, 164, 96, 43, 105, 90, 61, 51, 86, 111, 61, 76, 155, 127, 78, 1, 2, 82, 108, 64, 27, 74, 60, 118, 65, 70, 160, 39, 49, 31, 18, 8, 11, 30, 60, 100, 82, 70, 102, 68, 32, 57, 53, 107, 56, 45, 15, 37, 59, 45, 39, 47, 31, 18, 8, 11, 30, 58, 100, 0, 0, 2, 0, 186, 0, 0, 2, 233, 5, 25, 0, 3, 0, 13, 0, 95, 179, 12, 14, 6, 4, 43, 178, 1, 6, 12, 17, 18, 57, 176, 1, 47, 177, 0, 8, 244, 176, 12, 16, 177, 7, 8, 244, 176, 6, 16, 176, 9, 208, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 19, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 177, 6, 6, 244, 176, 10, 16, 177, 8, 6, 244, 176, 6, 16, 176, 12, 208, 176, 13, 208, 48, 49, 1, 35, 53, 51, 19, 33, 53, 51, 17, 35, 53, 33, 17, 51, 2, 47, 186, 186, 186, 253, 209, 211, 211, 1, 93, 210, 4, 94, 187, 250, 231, 117, 2, 186, 117, 252, 209, 255, 255, 0, 186, 0, 0, 2, 233, 5, 25, 2, 38, 0, 213, 0, 0, 0, 6, 0, 140, 0, 0, 0, 2, 0, 4, 254, 117, 2, 233, 5, 25, 0, 3, 0, 22, 0, 62, 179, 0, 8, 1, 4, 43, 178, 15, 1, 0, 17, 18, 57, 176, 15, 47, 177, 20, 12, 244, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 18, 47, 27, 177, 18, 19, 62, 89, 179, 10, 6, 4, 4, 43, 176, 18, 16, 177, 16, 6, 244, 48, 49, 1, 35, 53, 51, 1, 34, 39, 55, 22, 22, 51, 50, 62, 2, 53, 17, 35, 53, 33, 17, 20, 6, 2, 233, 186, 186, 254, 115, 246, 98, 105, 36, 117, 86, 68, 92, 53, 23, 211, 1, 92, 189, 4, 94, 187, 249, 92, 202, 72, 76, 82, 39, 72, 102, 66, 3, 47, 117, 252, 92, 180, 215, 0, 2, 255, 117, 255, 233, 3, 176, 3, 164, 0, 27, 0, 36, 0, 149, 179, 1, 12, 15, 4, 43, 179, 33, 12, 26, 4, 43, 179, 22, 12, 28, 4, 43, 176, 33, 16, 176, 17, 208, 180, 218, 28, 234, 28, 2, 93, 64, 27, 9, 28, 25, 28, 41, 28, 57, 28, 73, 28, 89, 28, 105, 28, 121, 28, 137, 28, 153, 28, 169, 28, 185, 28, 201, 28, 13, 93, 176, 22, 16, 176, 38, 220, 0, 176, 0, 69, 88, 176, 16, 47, 27, 177, 16, 19, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 176, 0, 69, 88, 176, 25, 47, 27, 177, 25, 15, 62, 89, 179, 19, 6, 31, 4, 43, 176, 16, 16, 177, 0, 6, 244, 176, 25, 16, 177, 33, 6, 244, 178, 10, 25, 33, 17, 18, 57, 48, 49, 19, 17, 20, 14, 2, 35, 34, 38, 39, 55, 22, 22, 51, 50, 53, 17, 33, 17, 51, 50, 22, 21, 20, 6, 35, 33, 17, 1, 52, 38, 35, 35, 17, 51, 50, 54, 186, 32, 58, 76, 43, 40, 54, 22, 24, 13, 32, 25, 94, 1, 205, 119, 153, 162, 162, 151, 254, 254, 1, 178, 92, 84, 121, 121, 84, 92, 3, 47, 253, 160, 55, 86, 58, 31, 9, 10, 115, 9, 8, 113, 2, 213, 254, 139, 133, 145, 146, 135, 3, 47, 253, 234, 77, 84, 254, 187, 86, 0, 2, 0, 49, 0, 0, 3, 176, 3, 164, 0, 18, 0, 27, 0, 159, 179, 18, 12, 0, 4, 43, 179, 7, 12, 4, 4, 43, 179, 11, 12, 19, 4, 43, 176, 18, 16, 176, 2, 208, 176, 4, 16, 176, 15, 208, 180, 218, 19, 234, 19, 2, 93, 64, 27, 9, 19, 25, 19, 41, 19, 57, 19, 73, 19, 89, 19, 105, 19, 121, 19, 137, 19, 153, 19, 169, 19, 185, 19, 201, 19, 13, 93, 176, 7, 16, 176, 23, 208, 176, 11, 16, 176, 29, 220, 0, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 15, 62, 89, 179, 4, 6, 16, 4, 43, 176, 4, 16, 176, 7, 208, 176, 16, 16, 176, 22, 208, 176, 14, 16, 177, 24, 6, 244, 48, 49, 51, 17, 51, 17, 51, 17, 51, 17, 51, 50, 22, 21, 20, 6, 35, 33, 17, 35, 17, 1, 52, 38, 35, 35, 17, 51, 50, 54, 49, 137, 187, 137, 119, 153, 162, 162, 151, 254, 254, 187, 2, 109, 92, 84, 121, 121, 84, 92, 3, 164, 254, 139, 1, 117, 254, 139, 133, 145, 146, 135, 1, 186, 254, 70, 1, 25, 77, 84, 254, 187, 86, 0, 1, 255, 143, 0, 0, 3, 115, 5, 25, 0, 27, 0, 175, 176, 28, 47, 176, 29, 47, 176, 28, 16, 176, 1, 208, 176, 1, 47, 177, 4, 12, 244, 176, 7, 208, 176, 29, 16, 176, 13, 220, 178, 8, 1, 13, 17, 18, 57, 177, 14, 8, 244, 176, 4, 16, 176, 23, 208, 176, 1, 16, 176, 25, 208, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 19, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 15, 62, 89, 176, 0, 69, 88, 176, 24, 47, 27, 177, 24, 15, 62, 89, 179, 5, 6, 6, 4, 43, 176, 5, 16, 176, 0, 208, 178, 8, 13, 2, 17, 18, 57, 176, 10, 16, 177, 18, 6, 244, 180, 217, 18, 233, 18, 2, 93, 64, 27, 8, 18, 24, 18, 40, 18, 56, 18, 72, 18, 88, 18, 104, 18, 120, 18, 136, 18, 152, 18, 168, 18, 184, 18, 200, 18, 13, 93, 176, 6, 16, 176, 26, 208, 48, 49, 3, 51, 53, 51, 21, 51, 21, 35, 17, 18, 51, 32, 17, 17, 35, 17, 52, 38, 35, 34, 14, 2, 21, 17, 35, 17, 35, 113, 162, 137, 187, 187, 99, 254, 1, 88, 138, 108, 121, 76, 123, 86, 45, 137, 162, 4, 94, 187, 187, 117, 254, 209, 1, 0, 254, 133, 253, 193, 2, 63, 125, 138, 70, 117, 151, 82, 254, 94, 3, 233, 0, 255, 255, 0, 49, 0, 0, 3, 162, 5, 84, 2, 38, 1, 244, 0, 0, 0, 6, 0, 139, 0, 0, 255, 255, 255, 225, 254, 117, 3, 193, 5, 6, 2, 38, 1, 253, 0, 0, 0, 6, 0, 217, 0, 0, 0, 1, 0, 49, 254, 193, 3, 115, 3, 164, 0, 11, 0, 83, 179, 8, 12, 5, 4, 43, 179, 2, 8, 3, 4, 43, 179, 0, 8, 9, 4, 43, 0, 176, 2, 47, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 177, 8, 6, 244, 176, 9, 208, 48, 49, 33, 33, 17, 35, 17, 33, 17, 51, 17, 33, 17, 51, 3, 115, 254, 164, 138, 254, 164, 137, 2, 47, 138, 254, 193, 1, 63, 3, 164, 252, 209, 3, 47, 0, 1, 0, 49, 0, 0, 3, 164, 5, 211, 0, 7, 0, 65, 176, 8, 47, 176, 9, 47, 176, 1, 220, 177, 0, 13, 244, 176, 8, 16, 176, 5, 208, 176, 5, 47, 177, 4, 12, 244, 0, 176, 0, 47, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 21, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 176, 6, 16, 177, 2, 6, 244, 48, 49, 1, 51, 17, 33, 17, 35, 17, 33, 3, 47, 117, 253, 22, 137, 2, 254, 5, 211, 254, 209, 251, 92, 5, 25, 0, 0, 1, 0, 49, 0, 0, 3, 164, 4, 94, 0, 7, 0, 65, 176, 8, 47, 176, 9, 47, 176, 1, 220, 177, 0, 13, 244, 176, 8, 16, 176, 5, 208, 176, 5, 47, 177, 4, 12, 244, 0, 176, 0, 47, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 19, 62, 89, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 15, 62, 89, 176, 6, 16, 177, 2, 6, 244, 48, 49, 1, 51, 17, 33, 17, 35, 17, 33, 3, 47, 117, 253, 22, 137, 2, 254, 4, 94, 254, 209, 252, 209, 3, 164, 0, 255, 255, 0, 49, 0, 0, 3, 162, 6, 142, 2, 38, 0, 35, 0, 0, 0, 7, 0, 218, 0, 0, 1, 117, 255, 255, 0, 49, 255, 233, 3, 164, 6, 142, 2, 38, 0, 67, 0, 0, 0, 7, 0, 218, 0, 0, 1, 117, 255, 255, 0, 49, 0, 0, 3, 207, 6, 142, 2, 38, 0, 37, 0, 0, 0, 7, 0, 218, 0, 0, 1, 117, 255, 255, 255, 254, 255, 233, 3, 115, 6, 142, 2, 38, 0, 69, 0, 0, 0, 7, 0, 218, 0, 0, 1, 117, 255, 255, 0, 49, 0, 0, 3, 115, 6, 142, 2, 38, 0, 39, 0, 0, 0, 7, 0, 218, 0, 0, 1, 117, 255, 255, 0, 186, 0, 0, 3, 164, 6, 142, 2, 38, 0, 71, 0, 0, 0, 7, 0, 218, 0, 0, 1, 117, 255, 255, 0, 49, 0, 0, 3, 115, 6, 142, 2, 38, 0, 46, 0, 0, 0, 7, 0, 218, 0, 0, 1, 117, 255, 255, 0, 0, 0, 0, 3, 164, 5, 25, 2, 38, 0, 78, 0, 0, 0, 6, 0, 218, 0, 0, 255, 255, 0, 49, 0, 0, 3, 162, 6, 142, 2, 38, 0, 49, 0, 0, 0, 7, 0, 218, 0, 0, 1, 117, 255, 255, 0, 49, 254, 139, 3, 164, 5, 25, 2, 38, 0, 81, 0, 0, 0, 6, 0, 218, 0, 0, 255, 255, 0, 25, 255, 233, 3, 131, 6, 142, 2, 38, 0, 52, 0, 0, 0, 7, 0, 218, 0, 0, 1, 117, 255, 255, 255, 246, 255, 233, 3, 139, 5, 25, 2, 38, 0, 84, 0, 0, 0, 6, 0, 218, 0, 0, 255, 255, 0, 0, 0, 0, 3, 164, 6, 142, 2, 38, 0, 53, 0, 0, 0, 7, 0, 218, 0, 0, 1, 117, 255, 255, 0, 0, 255, 233, 3, 174, 6, 142, 2, 38, 0, 85, 0, 0, 0, 7, 0, 218, 0, 0, 1, 117, 255, 255, 255, 193, 0, 0, 3, 227, 6, 205, 2, 38, 0, 56, 0, 0, 0, 7, 0, 65, 0, 0, 1, 121, 255, 255, 255, 229, 0, 0, 3, 195, 5, 88, 2, 38, 0, 88, 0, 0, 0, 6, 0, 65, 0, 4, 255, 255, 255, 193, 0, 0, 3, 227, 6, 201, 2, 38, 0, 56, 0, 0, 0, 7, 0, 139, 0, 0, 1, 117, 255, 255, 255, 229, 0, 0, 3, 195, 5, 84, 2, 38, 0, 88, 0, 0, 0, 6, 0, 139, 0, 0, 255, 255, 255, 193, 0, 0, 3, 227, 6, 142, 2, 38, 0, 56, 0, 0, 0, 7, 0, 140, 0, 0, 1, 117, 255, 255, 255, 229, 0, 0, 3, 195, 5, 25, 2, 38, 0, 88, 0, 0, 0, 6, 0, 140, 0, 0, 255, 255, 255, 236, 0, 0, 3, 184, 6, 205, 2, 38, 0, 58, 0, 0, 0, 7, 0, 65, 0, 0, 1, 121, 255, 255, 255, 225, 254, 117, 3, 193, 5, 88, 2, 38, 0, 90, 0, 0, 0, 6, 0, 65, 0, 4, 0, 1, 0, 0, 1, 164, 3, 164, 2, 25, 0, 3, 0, 9, 0, 179, 3, 6, 0, 4, 43, 48, 49, 1, 33, 53, 33, 3, 164, 252, 92, 3, 164, 1, 164, 117, 0, 4, 0, 0, 0, 0, 4, 70, 5, 25, 0, 9, 0, 17, 0, 25, 0, 29, 1, 18, 179, 3, 12, 4, 4, 43, 179, 0, 12, 7, 4, 43, 179, 16, 12, 20, 4, 43, 179, 24, 8, 12, 4, 43, 180, 218, 12, 234, 12, 2, 93, 64, 27, 9, 12, 25, 12, 41, 12, 57, 12, 73, 12, 89, 12, 105, 12, 121, 12, 137, 12, 153, 12, 169, 12, 185, 12, 201, 12, 13, 93, 180, 218, 20, 234, 20, 2, 93, 64, 27, 9, 20, 25, 20, 41, 20, 57, 20, 73, 20, 89, 20, 105, 20, 121, 20, 137, 20, 153, 20, 169, 20, 185, 20, 201, 20, 13, 93, 176, 20, 16, 176, 26, 208, 176, 26, 47, 176, 24, 16, 176, 27, 208, 176, 24, 16, 176, 31, 220, 0, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 21, 62, 89, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 21, 62, 89, 176, 0, 69, 88, 176, 22, 47, 27, 177, 22, 19, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 176, 0, 69, 88, 176, 28, 47, 27, 177, 28, 15, 62, 89, 179, 10, 1, 18, 4, 43, 178, 2, 0, 5, 17, 18, 57, 178, 7, 18, 10, 17, 18, 57, 176, 22, 16, 177, 14, 1, 244, 180, 217, 14, 233, 14, 2, 93, 64, 27, 8, 14, 24, 14, 40, 14, 56, 14, 72, 14, 88, 14, 104, 14, 120, 14, 136, 14, 152, 14, 168, 14, 184, 14, 200, 14, 13, 93, 176, 0, 16, 177, 26, 6, 244, 176, 27, 208, 48, 49, 33, 35, 3, 17, 35, 17, 51, 19, 17, 51, 1, 50, 53, 52, 35, 34, 21, 20, 23, 32, 17, 16, 33, 32, 17, 16, 5, 33, 21, 33, 1, 254, 170, 203, 137, 193, 180, 137, 1, 74, 116, 116, 121, 119, 255, 0, 1, 0, 1, 0, 254, 2, 1, 254, 254, 2, 3, 254, 252, 2, 5, 25, 252, 84, 3, 172, 252, 178, 192, 191, 191, 192, 111, 1, 47, 1, 47, 254, 209, 254, 209, 231, 117, 0, 0, 1, 0, 0, 1, 164, 3, 164, 2, 25, 0, 3, 0, 9, 0, 179, 3, 6, 0, 4, 43, 48, 49, 1, 33, 53, 33, 3, 164, 252, 92, 3, 164, 1, 164, 117, 0, 1, 255, 211, 0, 2, 3, 209, 2, 80, 0, 5, 0, 32, 0, 176, 5, 47, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 15, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 48, 49, 37, 7, 1, 1, 39, 1, 3, 209, 80, 254, 82, 254, 78, 78, 2, 0, 80, 78, 1, 176, 254, 80, 78, 2, 0, 0, 0, 6, 0, 68, 0, 70, 4, 25, 4, 25, 0, 47, 0, 58, 0, 69, 0, 73, 0, 84, 0, 95, 1, 34, 179, 89, 10, 24, 4, 43, 179, 63, 10, 70, 4, 43, 179, 73, 10, 19, 4, 43, 179, 39, 10, 48, 4, 43, 176, 39, 16, 176, 0, 208, 176, 70, 16, 176, 6, 208, 176, 6, 47, 176, 73, 16, 176, 8, 208, 176, 24, 16, 176, 15, 208, 176, 15, 47, 176, 73, 16, 176, 30, 208, 176, 70, 16, 176, 32, 208, 176, 63, 16, 176, 43, 208, 176, 43, 47, 180, 218, 48, 234, 48, 2, 93, 64, 27, 9, 48, 25, 48, 41, 48, 57, 48, 73, 48, 89, 48, 105, 48, 121, 48, 137, 48, 153, 48, 169, 48, 185, 48, 201, 48, 13, 93, 176, 63, 16, 176, 54, 208, 176, 54, 47, 176, 48, 16, 176, 59, 208, 176, 19, 16, 176, 74, 208, 64, 27, 6, 89, 22, 89, 38, 89, 54, 89, 70, 89, 86, 89, 102, 89, 118, 89, 134, 89, 150, 89, 166, 89, 182, 89, 198, 89, 13, 93, 180, 213, 89, 229, 89, 2, 93, 176, 89, 16, 176, 80, 208, 176, 80, 47, 176, 19, 16, 176, 85, 208, 176, 39, 16, 176, 97, 220, 0, 179, 67, 2, 3, 4, 43, 179, 36, 2, 51, 4, 43, 179, 70, 2, 7, 4, 43, 179, 84, 2, 20, 4, 43, 176, 3, 16, 176, 12, 208, 176, 70, 16, 176, 18, 208, 176, 36, 16, 176, 27, 208, 176, 84, 16, 176, 31, 208, 176, 20, 16, 176, 42, 208, 176, 70, 16, 176, 44, 208, 176, 84, 16, 176, 55, 208, 176, 7, 16, 176, 62, 208, 176, 20, 16, 176, 71, 208, 176, 51, 16, 176, 77, 208, 176, 7, 16, 176, 85, 208, 176, 67, 16, 176, 92, 208, 48, 49, 1, 20, 6, 35, 34, 38, 53, 53, 35, 21, 20, 6, 35, 34, 38, 53, 52, 54, 51, 51, 53, 35, 34, 38, 53, 52, 54, 51, 50, 22, 21, 21, 51, 53, 52, 54, 51, 50, 22, 21, 20, 6, 35, 35, 21, 51, 50, 22, 3, 52, 38, 35, 34, 6, 21, 21, 51, 50, 54, 17, 52, 38, 35, 35, 21, 20, 22, 51, 50, 54, 37, 53, 35, 21, 3, 52, 38, 35, 34, 6, 21, 20, 22, 51, 51, 17, 35, 34, 6, 21, 20, 22, 51, 50, 54, 53, 4, 25, 111, 78, 78, 106, 232, 110, 78, 78, 110, 110, 78, 98, 96, 78, 110, 110, 78, 78, 108, 230, 108, 78, 78, 111, 111, 78, 96, 96, 78, 111, 91, 57, 41, 41, 55, 96, 41, 57, 57, 41, 94, 53, 41, 41, 57, 254, 228, 230, 90, 55, 41, 41, 57, 57, 41, 96, 98, 41, 57, 57, 41, 41, 57, 1, 2, 78, 110, 110, 78, 96, 96, 78, 110, 110, 78, 78, 108, 230, 108, 78, 78, 111, 111, 78, 96, 96, 78, 111, 111, 78, 78, 108, 230, 108, 2, 12, 41, 57, 57, 41, 96, 55, 253, 207, 41, 55, 96, 41, 57, 57, 227, 230, 230, 1, 160, 41, 57, 57, 41, 41, 55, 254, 102, 55, 41, 41, 57, 57, 41, 0, 0, 3, 255, 211, 0, 2, 3, 209, 2, 199, 0, 3, 0, 7, 0, 13, 0, 47, 0, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 15, 62, 89, 179, 3, 1, 0, 4, 43, 176, 0, 16, 176, 4, 208, 176, 3, 16, 176, 6, 208, 48, 49, 1, 33, 53, 33, 5, 33, 53, 33, 1, 7, 1, 1, 39, 1, 3, 162, 254, 213, 1, 43, 253, 139, 254, 213, 1, 43, 2, 164, 80, 254, 82, 254, 78, 78, 2, 0, 2, 86, 113, 113, 113, 253, 137, 78, 1, 176, 254, 80, 78, 2, 0, 0, 2, 0, 0, 0, 37, 4, 92, 2, 199, 0, 17, 0, 21, 0, 27, 0, 179, 17, 1, 0, 4, 43, 179, 9, 1, 6, 4, 43, 176, 6, 16, 176, 18, 208, 176, 9, 16, 176, 20, 208, 48, 49, 37, 35, 34, 39, 3, 38, 35, 35, 53, 51, 50, 23, 22, 22, 23, 22, 51, 51, 17, 33, 53, 33, 4, 92, 162, 215, 123, 170, 102, 180, 164, 164, 217, 123, 41, 86, 43, 100, 180, 162, 254, 144, 1, 112, 37, 145, 1, 15, 145, 113, 148, 67, 136, 67, 148, 1, 197, 113, 0, 0, 3, 0, 74, 0, 0, 4, 86, 5, 25, 0, 4, 0, 9, 0, 21, 0, 49, 179, 8, 9, 2, 4, 43, 0, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 21, 62, 89, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 15, 62, 89, 176, 3, 16, 177, 6, 1, 244, 176, 1, 16, 177, 8, 1, 244, 48, 49, 1, 1, 33, 17, 33, 1, 1, 35, 17, 51, 1, 7, 39, 7, 39, 55, 39, 55, 23, 55, 23, 7, 4, 86, 253, 115, 254, 129, 1, 127, 1, 239, 253, 228, 228, 228, 1, 2, 80, 125, 125, 78, 125, 125, 78, 125, 125, 80, 125, 2, 139, 253, 117, 5, 25, 253, 114, 2, 31, 251, 197, 1, 159, 77, 126, 126, 77, 125, 125, 80, 125, 125, 80, 125, 0, 0, 1, 0, 0, 0, 0, 4, 92, 1, 47, 0, 11, 0, 70, 176, 12, 47, 176, 13, 47, 176, 1, 220, 176, 12, 16, 176, 4, 208, 176, 4, 47, 177, 8, 9, 244, 176, 1, 16, 177, 9, 9, 244, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 15, 62, 89, 179, 11, 1, 0, 4, 43, 176, 0, 16, 176, 4, 208, 176, 11, 16, 176, 6, 208, 176, 2, 16, 177, 8, 1, 244, 48, 49, 37, 33, 21, 33, 53, 35, 53, 33, 21, 33, 53, 33, 4, 92, 255, 0, 253, 162, 254, 1, 109, 1, 129, 1, 110, 193, 193, 193, 110, 192, 192, 0, 0, 2, 0, 188, 255, 254, 4, 98, 3, 162, 0, 31, 0, 40, 0, 154, 176, 41, 47, 176, 42, 47, 176, 0, 220, 177, 21, 10, 244, 180, 218, 21, 234, 21, 2, 93, 64, 27, 9, 21, 25, 21, 41, 21, 57, 21, 73, 21, 89, 21, 105, 21, 121, 21, 137, 21, 153, 21, 169, 21, 185, 21, 201, 21, 13, 93, 176, 41, 16, 176, 36, 208, 176, 36, 47, 177, 35, 9, 244, 178, 40, 36, 0, 17, 18, 57, 0, 176, 0, 69, 88, 176, 37, 47, 27, 177, 37, 19, 62, 89, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 15, 62, 89, 177, 16, 2, 244, 64, 27, 7, 16, 23, 16, 39, 16, 55, 16, 71, 16, 87, 16, 103, 16, 119, 16, 135, 16, 151, 16, 167, 16, 183, 16, 199, 16, 13, 93, 180, 214, 16, 230, 16, 2, 93, 178, 34, 5, 37, 17, 18, 57, 176, 37, 16, 177, 39, 1, 244, 48, 49, 1, 20, 14, 2, 35, 34, 46, 2, 39, 55, 30, 3, 51, 50, 62, 2, 53, 52, 46, 2, 39, 55, 30, 3, 5, 7, 1, 21, 35, 17, 33, 21, 35, 4, 98, 73, 127, 172, 99, 80, 143, 117, 86, 22, 73, 19, 67, 99, 121, 69, 82, 144, 106, 61, 40, 76, 105, 63, 22, 74, 123, 92, 51, 254, 138, 80, 254, 143, 111, 1, 156, 221, 1, 211, 98, 172, 125, 74, 49, 88, 125, 76, 20, 59, 104, 76, 43, 61, 105, 143, 84, 63, 121, 101, 71, 19, 73, 20, 86, 117, 145, 96, 78, 1, 112, 227, 1, 160, 111, 0, 0, 1, 255, 227, 255, 217, 4, 84, 3, 125, 0, 21, 0, 30, 179, 0, 9, 18, 4, 43, 0, 176, 8, 47, 179, 21, 1, 0, 4, 43, 179, 13, 1, 5, 4, 43, 176, 0, 16, 176, 18, 208, 48, 49, 1, 20, 14, 2, 35, 33, 23, 7, 1, 1, 23, 7, 33, 50, 62, 2, 53, 33, 53, 33, 4, 84, 84, 150, 202, 117, 254, 139, 191, 78, 254, 188, 1, 68, 78, 191, 1, 117, 92, 160, 121, 69, 254, 74, 2, 37, 3, 14, 112, 201, 152, 88, 192, 76, 1, 66, 1, 69, 78, 190, 70, 120, 160, 92, 111, 0, 0, 1, 0, 72, 0, 0, 3, 92, 1, 47, 0, 7, 0, 64, 176, 8, 47, 176, 9, 47, 176, 0, 220, 176, 8, 16, 176, 1, 208, 176, 1, 47, 177, 4, 9, 244, 176, 0, 16, 177, 5, 9, 244, 0, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 176, 2, 220, 176, 0, 16, 177, 4, 1, 244, 176, 2, 16, 176, 6, 208, 176, 7, 208, 48, 49, 33, 33, 17, 51, 21, 33, 53, 51, 3, 92, 252, 236, 110, 2, 54, 112, 1, 47, 192, 192, 0, 1, 0, 0, 2, 72, 4, 94, 2, 209, 0, 3, 0, 9, 0, 179, 1, 7, 0, 4, 43, 48, 49, 17, 53, 33, 21, 4, 94, 2, 72, 137, 137, 0, 0, 1, 1, 141, 254, 139, 2, 23, 6, 139, 0, 3, 0, 25, 179, 1, 8, 0, 4, 43, 0, 176, 0, 47, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 17, 62, 89, 48, 49, 1, 51, 17, 35, 1, 141, 138, 138, 6, 139, 248, 0, 0, 0, 1, 1, 141, 254, 139, 4, 94, 2, 209, 0, 5, 0, 28, 179, 3, 8, 0, 4, 43, 0, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 17, 62, 89, 179, 1, 7, 2, 4, 43, 48, 49, 1, 33, 21, 33, 17, 35, 1, 141, 2, 209, 253, 185, 138, 2, 209, 137, 252, 67, 0, 1, 0, 0, 254, 139, 2, 23, 2, 209, 0, 5, 0, 28, 179, 3, 8, 4, 4, 43, 0, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 17, 62, 89, 179, 1, 7, 0, 4, 43, 48, 49, 17, 53, 33, 17, 35, 17, 2, 23, 138, 2, 72, 137, 251, 186, 3, 189, 0, 1, 1, 141, 2, 72, 4, 94, 6, 139, 0, 5, 0, 18, 179, 1, 8, 0, 4, 43, 0, 176, 0, 47, 179, 3, 7, 4, 4, 43, 48, 49, 1, 51, 17, 33, 21, 33, 1, 141, 138, 2, 71, 253, 47, 6, 139, 252, 70, 137, 0, 1, 0, 0, 2, 72, 2, 23, 6, 139, 0, 5, 0, 18, 179, 5, 8, 2, 4, 43, 0, 176, 3, 47, 179, 1, 7, 0, 4, 43, 48, 49, 17, 53, 33, 17, 51, 17, 1, 141, 138, 2, 72, 137, 3, 186, 251, 189, 0, 1, 1, 141, 254, 139, 4, 94, 6, 139, 0, 7, 0, 37, 179, 1, 8, 0, 4, 43, 176, 1, 16, 176, 5, 208, 0, 176, 0, 47, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 17, 62, 89, 179, 3, 7, 4, 4, 43, 48, 49, 1, 51, 17, 33, 21, 33, 17, 35, 1, 141, 138, 2, 71, 253, 185, 138, 6, 139, 252, 70, 137, 252, 67, 0, 1, 0, 0, 254, 139, 2, 23, 6, 139, 0, 7, 0, 37, 179, 0, 8, 1, 4, 43, 176, 1, 16, 176, 5, 208, 0, 176, 6, 47, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 17, 62, 89, 179, 5, 7, 2, 4, 43, 48, 49, 1, 35, 17, 33, 53, 33, 17, 51, 2, 23, 138, 254, 115, 1, 141, 138, 254, 139, 3, 189, 137, 3, 186, 0, 1, 0, 0, 254, 139, 4, 94, 2, 209, 0, 7, 0, 34, 179, 5, 8, 6, 4, 43, 0, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 17, 62, 89, 179, 1, 7, 0, 4, 43, 176, 0, 16, 176, 3, 208, 48, 49, 17, 53, 33, 21, 33, 17, 35, 17, 4, 94, 253, 185, 138, 2, 72, 137, 137, 252, 67, 3, 189, 0, 0, 1, 0, 0, 2, 72, 4, 94, 6, 139, 0, 7, 0, 24, 179, 5, 8, 2, 4, 43, 0, 176, 3, 47, 179, 1, 7, 0, 4, 43, 176, 1, 16, 176, 5, 208, 48, 49, 17, 53, 33, 17, 51, 17, 33, 21, 1, 141, 138, 2, 71, 2, 72, 137, 3, 186, 252, 70, 137, 0, 0, 1, 0, 0, 254, 139, 4, 94, 6, 139, 0, 11, 0, 55, 179, 5, 8, 2, 4, 43, 176, 5, 16, 176, 8, 208, 176, 2, 16, 176, 10, 208, 0, 176, 3, 47, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 17, 62, 89, 179, 1, 7, 0, 4, 43, 176, 1, 16, 176, 5, 208, 176, 0, 16, 176, 7, 208, 48, 49, 17, 53, 33, 17, 51, 17, 33, 21, 33, 17, 35, 17, 1, 141, 138, 2, 71, 253, 185, 138, 2, 72, 137, 3, 186, 252, 70, 137, 252, 67, 3, 189, 0, 0, 2, 0, 0, 1, 141, 4, 94, 3, 139, 0, 3, 0, 7, 0, 15, 0, 179, 4, 5, 5, 4, 43, 179, 0, 7, 1, 4, 43, 48, 49, 1, 21, 33, 53, 1, 21, 33, 53, 4, 94, 251, 162, 4, 94, 251, 162, 3, 139, 137, 137, 254, 140, 138, 138, 0, 0, 2, 0, 211, 254, 139, 2, 209, 6, 139, 0, 3, 0, 7, 0, 64, 176, 8, 47, 176, 9, 47, 176, 8, 16, 176, 1, 208, 176, 1, 47, 177, 0, 12, 244, 176, 9, 16, 176, 5, 220, 177, 4, 12, 244, 0, 176, 2, 47, 176, 4, 47, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 17, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 17, 62, 89, 48, 49, 1, 35, 17, 59, 2, 17, 35, 1, 92, 137, 137, 236, 137, 137, 254, 139, 8, 0, 248, 0, 0, 1, 1, 141, 254, 139, 4, 94, 3, 139, 0, 11, 0, 62, 179, 3, 8, 4, 4, 43, 179, 11, 12, 6, 4, 43, 176, 6, 16, 177, 0, 14, 244, 176, 8, 208, 176, 11, 16, 176, 13, 220, 0, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 17, 62, 89, 179, 8, 7, 9, 4, 43, 179, 0, 5, 1, 4, 43, 176, 0, 16, 176, 5, 208, 48, 49, 1, 21, 33, 17, 35, 17, 33, 17, 33, 21, 35, 21, 4, 94, 253, 185, 138, 1, 117, 1, 92, 211, 2, 23, 138, 252, 254, 3, 140, 1, 116, 137, 235, 0, 0, 1, 0, 211, 254, 139, 4, 94, 2, 209, 0, 11, 0, 73, 176, 12, 47, 176, 13, 47, 176, 3, 220, 177, 4, 12, 244, 176, 12, 16, 176, 8, 208, 176, 8, 47, 177, 7, 12, 244, 176, 4, 16, 176, 10, 208, 0, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 17, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 17, 62, 89, 179, 0, 7, 1, 4, 43, 179, 10, 7, 5, 4, 43, 48, 49, 1, 21, 33, 17, 35, 17, 35, 17, 35, 17, 33, 17, 4, 94, 254, 115, 137, 236, 137, 1, 117, 2, 209, 137, 252, 67, 2, 72, 253, 184, 2, 209, 1, 117, 0, 0, 2, 0, 211, 254, 139, 4, 94, 3, 139, 0, 5, 0, 11, 0, 70, 176, 12, 47, 176, 13, 47, 176, 12, 16, 176, 2, 208, 176, 2, 47, 177, 1, 12, 244, 176, 13, 16, 176, 9, 220, 177, 10, 12, 244, 0, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 17, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 17, 62, 89, 179, 3, 7, 0, 4, 43, 179, 6, 5, 7, 4, 43, 48, 49, 1, 17, 35, 17, 33, 29, 2, 33, 17, 35, 17, 1, 92, 137, 3, 139, 254, 115, 137, 3, 2, 251, 137, 5, 0, 137, 235, 138, 252, 254, 3, 140, 0, 1, 0, 0, 254, 139, 2, 23, 3, 139, 0, 11, 0, 59, 179, 7, 14, 1, 4, 43, 179, 9, 8, 10, 4, 43, 176, 7, 16, 177, 2, 12, 244, 176, 1, 16, 176, 4, 208, 0, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 17, 62, 89, 179, 6, 7, 3, 4, 43, 179, 1, 5, 0, 4, 43, 176, 1, 16, 176, 7, 208, 48, 49, 17, 53, 51, 53, 35, 53, 33, 17, 51, 17, 35, 17, 211, 211, 1, 92, 187, 138, 1, 141, 138, 235, 137, 254, 140, 252, 116, 3, 2, 0, 1, 0, 0, 254, 139, 2, 209, 2, 209, 0, 11, 0, 73, 176, 12, 47, 176, 13, 47, 176, 12, 16, 176, 8, 208, 176, 8, 47, 177, 7, 12, 244, 176, 0, 208, 176, 13, 16, 176, 3, 220, 177, 4, 12, 244, 0, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 17, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 17, 62, 89, 179, 0, 7, 9, 4, 43, 179, 2, 7, 5, 4, 43, 48, 49, 1, 17, 33, 17, 35, 17, 35, 17, 35, 17, 35, 53, 1, 92, 1, 117, 137, 236, 137, 211, 2, 209, 254, 139, 253, 47, 2, 72, 253, 184, 3, 189, 137, 0, 2, 0, 0, 254, 139, 2, 209, 3, 139, 0, 5, 0, 11, 0, 66, 179, 6, 14, 11, 4, 43, 179, 3, 12, 0, 4, 43, 176, 11, 16, 176, 1, 208, 176, 6, 16, 177, 8, 12, 244, 0, 176, 0, 69, 88, 176, 4, 47, 27, 177, 4, 17, 62, 89, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 17, 62, 89, 179, 3, 7, 0, 4, 43, 179, 6, 5, 9, 4, 43, 48, 49, 1, 33, 53, 33, 17, 35, 3, 17, 35, 17, 35, 53, 2, 72, 253, 184, 2, 209, 137, 236, 137, 211, 3, 2, 137, 251, 0, 3, 140, 252, 116, 3, 2, 138, 0, 1, 1, 141, 1, 141, 4, 94, 6, 139, 0, 11, 0, 52, 179, 5, 8, 2, 4, 43, 179, 9, 12, 0, 4, 43, 176, 0, 16, 177, 11, 14, 244, 176, 6, 208, 176, 9, 16, 176, 13, 220, 0, 176, 3, 47, 179, 9, 5, 0, 4, 43, 179, 5, 7, 2, 4, 43, 176, 2, 16, 176, 7, 208, 48, 49, 1, 17, 33, 17, 51, 17, 33, 21, 35, 21, 51, 21, 3, 2, 254, 139, 138, 2, 71, 211, 211, 1, 141, 1, 117, 3, 137, 253, 0, 137, 233, 140, 0, 1, 0, 211, 2, 72, 4, 94, 6, 139, 0, 11, 0, 53, 176, 12, 47, 176, 13, 47, 176, 9, 220, 177, 0, 12, 244, 176, 12, 16, 176, 2, 208, 176, 2, 47, 177, 5, 12, 244, 176, 0, 16, 176, 6, 208, 0, 176, 3, 47, 176, 7, 47, 179, 9, 5, 0, 4, 43, 179, 6, 5, 1, 4, 43, 48, 49, 1, 17, 33, 17, 51, 17, 51, 17, 51, 17, 33, 21, 2, 72, 254, 139, 137, 236, 137, 1, 141, 2, 72, 1, 116, 2, 207, 253, 187, 2, 69, 252, 72, 139, 0, 0, 2, 0, 211, 1, 141, 4, 94, 6, 139, 0, 5, 0, 11, 0, 50, 176, 12, 47, 176, 13, 47, 176, 12, 16, 176, 0, 208, 176, 0, 47, 177, 3, 12, 244, 176, 13, 16, 176, 9, 220, 177, 6, 12, 244, 0, 176, 1, 47, 176, 7, 47, 179, 3, 5, 0, 4, 43, 179, 9, 7, 6, 4, 43, 48, 49, 19, 17, 51, 17, 33, 21, 1, 17, 51, 17, 33, 21, 211, 137, 3, 2, 253, 234, 137, 1, 141, 1, 141, 4, 254, 251, 140, 138, 1, 117, 3, 137, 253, 0, 137, 0, 0, 1, 0, 0, 1, 141, 2, 23, 6, 139, 0, 11, 0, 46, 179, 8, 8, 2, 4, 43, 179, 7, 8, 4, 4, 43, 176, 8, 16, 177, 0, 12, 244, 176, 2, 16, 176, 10, 208, 0, 176, 9, 47, 176, 5, 47, 179, 3, 7, 2, 4, 43, 176, 2, 16, 176, 7, 208, 48, 49, 19, 53, 35, 53, 33, 17, 51, 17, 33, 17, 35, 53, 25, 25, 1, 141, 138, 254, 139, 162, 2, 25, 233, 137, 3, 0, 252, 119, 254, 139, 140, 0, 0, 1, 0, 0, 2, 72, 2, 209, 6, 139, 0, 11, 0, 53, 176, 12, 47, 176, 13, 47, 176, 12, 16, 176, 2, 208, 176, 2, 47, 177, 11, 12, 244, 176, 4, 208, 176, 13, 16, 176, 9, 220, 177, 6, 12, 244, 0, 176, 3, 47, 176, 7, 47, 179, 1, 7, 0, 4, 43, 179, 6, 5, 9, 4, 43, 48, 49, 17, 53, 51, 17, 51, 17, 51, 17, 51, 17, 33, 17, 211, 137, 236, 137, 254, 139, 2, 72, 137, 3, 186, 253, 187, 2, 69, 253, 49, 254, 140, 0, 2, 0, 0, 1, 141, 2, 209, 6, 139, 0, 5, 0, 11, 0, 46, 179, 5, 14, 0, 4, 43, 179, 9, 12, 6, 4, 43, 176, 5, 16, 177, 2, 12, 244, 176, 0, 16, 176, 10, 208, 0, 176, 3, 47, 176, 7, 47, 179, 6, 5, 9, 4, 43, 179, 1, 7, 0, 4, 43, 48, 49, 17, 53, 51, 17, 51, 17, 23, 17, 51, 17, 33, 53, 211, 137, 236, 137, 253, 47, 3, 2, 137, 3, 0, 252, 119, 235, 4, 116, 251, 2, 138, 0, 0, 2, 1, 141, 254, 139, 4, 94, 6, 139, 0, 5, 0, 11, 0, 49, 179, 3, 8, 0, 4, 43, 176, 3, 16, 176, 8, 208, 176, 0, 16, 176, 10, 208, 0, 176, 1, 47, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 17, 62, 89, 179, 6, 5, 7, 4, 43, 179, 3, 7, 0, 4, 43, 48, 49, 1, 17, 51, 17, 33, 29, 2, 33, 17, 35, 17, 1, 141, 138, 2, 71, 253, 185, 138, 3, 2, 3, 137, 253, 0, 137, 235, 138, 252, 254, 3, 140, 0, 0, 2, 0, 211, 254, 139, 4, 94, 6, 139, 0, 3, 0, 11, 0, 76, 176, 12, 47, 176, 13, 47, 176, 12, 16, 176, 1, 208, 176, 1, 47, 177, 0, 12, 244, 176, 13, 16, 176, 5, 220, 177, 4, 12, 244, 176, 5, 16, 176, 9, 208, 0, 176, 2, 47, 176, 4, 47, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 17, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 17, 62, 89, 179, 7, 7, 8, 4, 43, 48, 49, 1, 35, 17, 59, 2, 17, 33, 21, 33, 17, 35, 1, 92, 137, 137, 236, 137, 1, 141, 254, 115, 137, 254, 139, 8, 0, 252, 70, 137, 252, 67, 0, 0, 3, 0, 211, 254, 139, 4, 94, 6, 139, 0, 3, 0, 9, 0, 15, 0, 88, 176, 16, 47, 176, 17, 47, 176, 16, 16, 176, 1, 208, 176, 1, 47, 177, 0, 12, 244, 176, 17, 16, 176, 7, 220, 177, 4, 12, 244, 176, 7, 16, 176, 12, 208, 176, 4, 16, 176, 14, 208, 0, 176, 2, 47, 176, 5, 47, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 17, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 17, 62, 89, 179, 10, 5, 11, 4, 43, 179, 7, 7, 4, 4, 43, 48, 49, 1, 35, 17, 51, 19, 17, 51, 17, 33, 29, 2, 33, 17, 35, 17, 1, 92, 137, 137, 236, 137, 1, 141, 254, 115, 137, 254, 139, 8, 0, 252, 119, 3, 137, 253, 0, 137, 235, 138, 252, 254, 3, 140, 0, 0, 2, 0, 0, 254, 139, 2, 23, 6, 139, 0, 5, 0, 11, 0, 49, 179, 5, 8, 2, 4, 43, 176, 5, 16, 176, 6, 208, 176, 2, 16, 176, 8, 208, 0, 176, 3, 47, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 17, 62, 89, 179, 6, 5, 9, 4, 43, 179, 1, 7, 0, 4, 43, 48, 49, 17, 53, 33, 17, 51, 17, 21, 17, 35, 17, 33, 53, 1, 141, 138, 138, 254, 115, 3, 2, 137, 3, 0, 252, 119, 235, 252, 116, 3, 2, 138, 0, 2, 0, 0, 254, 139, 2, 209, 6, 139, 0, 7, 0, 11, 0, 76, 176, 12, 47, 176, 13, 47, 176, 12, 16, 176, 1, 208, 176, 1, 47, 177, 0, 12, 244, 176, 1, 16, 176, 5, 208, 176, 13, 16, 176, 9, 220, 177, 8, 12, 244, 0, 176, 6, 47, 176, 8, 47, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 17, 62, 89, 176, 0, 69, 88, 176, 10, 47, 27, 177, 10, 17, 62, 89, 179, 5, 7, 2, 4, 43, 48, 49, 1, 35, 17, 35, 53, 51, 17, 59, 2, 17, 35, 1, 92, 137, 211, 211, 137, 236, 137, 137, 254, 139, 3, 189, 137, 3, 186, 248, 0, 0, 0, 3, 0, 0, 254, 139, 2, 209, 6, 139, 0, 5, 0, 11, 0, 15, 0, 84, 179, 5, 14, 0, 4, 43, 179, 13, 12, 12, 4, 43, 176, 5, 16, 177, 2, 12, 244, 176, 5, 16, 176, 6, 208, 176, 2, 16, 176, 8, 208, 176, 0, 16, 176, 10, 208, 0, 176, 3, 47, 176, 12, 47, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 17, 62, 89, 176, 0, 69, 88, 176, 14, 47, 27, 177, 14, 17, 62, 89, 179, 6, 5, 9, 4, 43, 179, 1, 7, 0, 4, 43, 48, 49, 17, 53, 51, 17, 51, 17, 21, 17, 35, 17, 35, 53, 1, 51, 17, 35, 211, 137, 137, 211, 2, 72, 137, 137, 3, 2, 137, 3, 0, 252, 119, 235, 252, 116, 3, 2, 138, 4, 116, 248, 0, 0, 0, 2, 0, 0, 254, 139, 4, 94, 3, 139, 0, 7, 0, 11, 0, 40, 179, 5, 8, 6, 4, 43, 0, 176, 0, 69, 88, 176, 5, 47, 27, 177, 5, 17, 62, 89, 179, 8, 7, 9, 4, 43, 179, 1, 5, 0, 4, 43, 176, 0, 16, 176, 3, 208, 48, 49, 17, 53, 33, 21, 33, 17, 35, 17, 1, 21, 33, 53, 4, 94, 253, 185, 138, 2, 209, 251, 162, 1, 141, 138, 138, 252, 254, 3, 2, 1, 254, 137, 137, 0, 0, 2, 0, 0, 254, 139, 4, 94, 2, 209, 0, 5, 0, 11, 0, 76, 176, 12, 47, 176, 13, 47, 176, 12, 16, 176, 2, 208, 176, 2, 47, 177, 1, 12, 244, 176, 13, 16, 176, 9, 220, 177, 10, 12, 244, 0, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 17, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 17, 62, 89, 179, 0, 7, 3, 4, 43, 176, 0, 16, 176, 6, 208, 176, 3, 16, 176, 7, 208, 48, 49, 1, 17, 35, 17, 35, 53, 33, 21, 33, 17, 35, 17, 1, 92, 137, 211, 4, 94, 254, 115, 137, 2, 209, 251, 186, 3, 189, 137, 137, 252, 67, 4, 70, 0, 0, 3, 0, 0, 254, 139, 4, 94, 3, 139, 0, 5, 0, 9, 0, 15, 0, 78, 179, 0, 14, 5, 4, 43, 179, 13, 12, 14, 4, 43, 176, 0, 16, 177, 2, 12, 244, 176, 5, 16, 176, 8, 208, 0, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 17, 62, 89, 176, 0, 69, 88, 176, 13, 47, 27, 177, 13, 17, 62, 89, 179, 6, 7, 7, 4, 43, 179, 0, 5, 3, 4, 43, 176, 0, 16, 176, 10, 208, 176, 3, 16, 176, 11, 208, 48, 49, 1, 17, 35, 17, 35, 53, 1, 21, 33, 53, 1, 21, 33, 17, 35, 17, 1, 92, 137, 211, 4, 94, 251, 162, 4, 94, 254, 115, 137, 2, 23, 252, 116, 3, 2, 138, 1, 116, 137, 137, 254, 140, 138, 252, 254, 3, 140, 0, 0, 2, 0, 0, 1, 141, 4, 94, 6, 139, 0, 7, 0, 11, 0, 30, 179, 5, 8, 2, 4, 43, 0, 176, 3, 47, 179, 8, 5, 9, 4, 43, 179, 1, 7, 0, 4, 43, 176, 1, 16, 176, 5, 208, 48, 49, 17, 53, 33, 17, 51, 17, 33, 29, 2, 33, 53, 1, 141, 138, 2, 71, 251, 162, 3, 2, 137, 3, 0, 253, 0, 137, 235, 138, 138, 0, 0, 2, 0, 0, 2, 72, 4, 94, 6, 139, 0, 5, 0, 11, 0, 56, 176, 12, 47, 176, 13, 47, 176, 12, 16, 176, 2, 208, 176, 2, 47, 177, 5, 12, 244, 176, 13, 16, 176, 9, 220, 177, 6, 12, 244, 0, 176, 3, 47, 176, 7, 47, 179, 1, 7, 0, 4, 43, 176, 0, 16, 176, 6, 208, 176, 1, 16, 176, 9, 208, 48, 49, 17, 53, 51, 17, 51, 17, 51, 17, 51, 17, 33, 21, 211, 137, 236, 137, 1, 141, 2, 72, 137, 3, 186, 251, 189, 4, 67, 252, 70, 137, 0, 3, 0, 0, 1, 141, 4, 94, 6, 139, 0, 5, 0, 11, 0, 15, 0, 58, 179, 5, 14, 0, 4, 43, 179, 9, 12, 6, 4, 43, 176, 5, 16, 177, 2, 12, 244, 176, 0, 16, 176, 14, 208, 0, 176, 3, 47, 176, 7, 47, 179, 12, 5, 13, 4, 43, 179, 1, 7, 0, 4, 43, 176, 0, 16, 176, 6, 208, 176, 1, 16, 176, 9, 208, 48, 49, 17, 53, 51, 17, 51, 17, 51, 17, 51, 17, 33, 29, 2, 33, 53, 211, 137, 236, 137, 1, 141, 251, 162, 3, 2, 137, 3, 0, 252, 119, 3, 137, 253, 0, 137, 235, 138, 138, 0, 2, 0, 0, 254, 139, 4, 94, 6, 139, 0, 7, 0, 15, 0, 61, 179, 5, 8, 2, 4, 43, 176, 5, 16, 176, 10, 208, 176, 2, 16, 176, 12, 208, 0, 176, 3, 47, 176, 0, 69, 88, 176, 11, 47, 27, 177, 11, 17, 62, 89, 179, 8, 5, 9, 4, 43, 179, 1, 7, 0, 4, 43, 176, 1, 16, 176, 5, 208, 176, 9, 16, 176, 13, 208, 48, 49, 17, 53, 33, 17, 51, 17, 33, 29, 2, 33, 17, 35, 17, 33, 53, 1, 141, 138, 2, 71, 253, 185, 138, 254, 115, 3, 2, 137, 3, 0, 253, 0, 137, 235, 138, 252, 254, 3, 2, 138, 0, 0, 2, 0, 0, 254, 139, 4, 94, 6, 139, 0, 7, 0, 15, 0, 91, 176, 16, 47, 176, 17, 47, 176, 3, 220, 177, 4, 12, 244, 176, 3, 16, 176, 6, 208, 176, 16, 16, 176, 10, 208, 176, 10, 47, 177, 9, 12, 244, 176, 10, 16, 176, 14, 208, 0, 176, 5, 47, 176, 8, 47, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 17, 62, 89, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 17, 62, 89, 179, 0, 7, 1, 4, 43, 176, 1, 16, 176, 11, 208, 176, 0, 16, 176, 13, 208, 48, 49, 1, 21, 33, 17, 35, 17, 51, 17, 1, 17, 35, 17, 35, 53, 51, 17, 4, 94, 254, 115, 137, 137, 254, 139, 137, 211, 211, 2, 209, 137, 252, 67, 8, 0, 252, 70, 3, 186, 248, 0, 3, 189, 137, 3, 186, 0, 4, 0, 0, 254, 139, 4, 94, 6, 139, 0, 5, 0, 11, 0, 17, 0, 23, 0, 120, 179, 5, 14, 0, 4, 43, 179, 15, 12, 12, 4, 43, 176, 5, 16, 177, 2, 12, 244, 176, 5, 16, 176, 6, 208, 176, 2, 16, 176, 8, 208, 176, 0, 16, 176, 10, 208, 176, 15, 16, 176, 20, 208, 176, 12, 16, 176, 22, 208, 0, 176, 3, 47, 176, 13, 47, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 17, 62, 89, 176, 0, 69, 88, 176, 21, 47, 27, 177, 21, 17, 62, 89, 179, 6, 5, 9, 4, 43, 179, 1, 7, 0, 4, 43, 176, 0, 16, 176, 12, 208, 176, 1, 16, 176, 15, 208, 176, 6, 16, 176, 18, 208, 176, 9, 16, 176, 19, 208, 48, 49, 17, 53, 51, 17, 51, 17, 21, 17, 35, 17, 35, 53, 37, 17, 51, 17, 33, 29, 2, 33, 17, 35, 17, 211, 137, 137, 211, 2, 70, 137, 1, 143, 254, 113, 137, 3, 2, 137, 3, 0, 252, 119, 235, 252, 116, 3, 2, 138, 235, 3, 137, 253, 0, 137, 235, 138, 252, 254, 3, 140, 0, 1, 255, 238, 255, 238, 3, 182, 3, 184, 0, 3, 0, 29, 0, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 19, 62, 89, 176, 0, 69, 88, 176, 1, 47, 27, 177, 1, 15, 62, 89, 48, 49, 9, 3, 3, 182, 254, 29, 254, 27, 1, 229, 1, 211, 254, 27, 1, 229, 1, 229, 0, 0, 1, 0, 8, 255, 207, 4, 86, 2, 236, 0, 5, 0, 9, 0, 176, 5, 47, 176, 1, 47, 48, 49, 9, 2, 55, 1, 1, 4, 86, 252, 252, 254, 182, 94, 1, 2, 2, 164, 2, 154, 253, 53, 1, 254, 59, 254, 113, 2, 115, 0, 2, 255, 242, 0, 0, 3, 180, 3, 170, 0, 8, 0, 15, 0, 83, 176, 16, 47, 176, 17, 47, 176, 3, 220, 176, 16, 16, 176, 4, 208, 176, 4, 47, 177, 13, 9, 244, 176, 3, 16, 177, 14, 9, 244, 0, 176, 0, 69, 88, 176, 8, 47, 27, 177, 8, 19, 62, 89, 176, 0, 69, 88, 176, 3, 47, 27, 177, 3, 15, 62, 89, 179, 9, 2, 2, 4, 43, 176, 2, 16, 176, 5, 208, 176, 9, 16, 176, 11, 208, 176, 3, 16, 177, 13, 1, 244, 48, 49, 1, 21, 35, 17, 33, 17, 35, 53, 9, 3, 51, 17, 33, 17, 3, 180, 235, 254, 16, 231, 1, 225, 1, 96, 254, 160, 254, 158, 217, 1, 16, 1, 199, 107, 254, 164, 1, 92, 107, 1, 227, 254, 0, 1, 98, 254, 158, 254, 197, 1, 59, 0, 2, 255, 242, 0, 0, 3, 180, 3, 170, 0, 8, 0, 12, 0, 29, 0, 176, 0, 69, 88, 176, 7, 47, 27, 177, 7, 19, 62, 89, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 15, 62, 89, 48, 49, 1, 35, 17, 33, 17, 35, 53, 1, 1, 5, 17, 33, 17, 3, 180, 235, 254, 16, 231, 1, 225, 1, 225, 254, 164, 254, 244, 1, 92, 254, 164, 1, 92, 107, 1, 227, 254, 29, 31, 1, 12, 254, 244, 0, 3, 0, 0, 255, 217, 4, 20, 3, 129, 0, 12, 0, 16, 0, 20, 0, 48, 179, 0, 9, 8, 4, 43, 0, 176, 3, 47, 179, 12, 1, 9, 4, 43, 179, 8, 1, 0, 4, 43, 176, 9, 16, 176, 13, 208, 176, 12, 16, 176, 15, 208, 176, 0, 16, 176, 17, 208, 176, 8, 16, 176, 19, 208, 48, 49, 37, 33, 23, 7, 1, 1, 23, 7, 33, 17, 35, 53, 33, 5, 33, 53, 33, 3, 35, 53, 51, 4, 20, 254, 23, 190, 79, 254, 188, 1, 68, 79, 190, 1, 121, 187, 1, 43, 253, 95, 254, 141, 1, 115, 185, 186, 186, 229, 192, 76, 1, 66, 1, 69, 78, 190, 1, 192, 109, 109, 109, 253, 100, 111, 0, 4, 0, 72, 0, 0, 4, 20, 5, 20, 0, 4, 0, 7, 0, 13, 0, 25, 0, 103, 179, 13, 9, 1, 4, 43, 179, 16, 9, 17, 4, 43, 179, 7, 10, 10, 4, 43, 179, 0, 9, 8, 4, 43, 176, 17, 16, 176, 21, 208, 176, 16, 16, 176, 23, 208, 0, 176, 0, 69, 88, 176, 2, 47, 27, 177, 2, 21, 62, 89, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 179, 25, 1, 14, 4, 43, 179, 5, 2, 9, 4, 43, 176, 0, 16, 177, 8, 1, 244, 176, 2, 16, 177, 11, 1, 244, 176, 14, 16, 176, 18, 208, 176, 25, 16, 176, 20, 208, 48, 49, 33, 33, 17, 33, 1, 35, 39, 21, 1, 17, 33, 17, 33, 17, 1, 35, 21, 35, 53, 35, 53, 51, 53, 51, 21, 51, 4, 20, 252, 52, 2, 55, 1, 149, 157, 248, 1, 37, 254, 129, 254, 145, 2, 0, 178, 108, 179, 179, 108, 178, 5, 20, 254, 109, 250, 250, 252, 238, 2, 184, 1, 127, 251, 201, 1, 43, 177, 177, 110, 178, 178, 0, 2, 0, 74, 255, 211, 4, 94, 3, 209, 0, 8, 0, 12, 0, 34, 179, 9, 9, 10, 4, 43, 0, 176, 3, 47, 176, 5, 47, 176, 0, 69, 88, 176, 9, 47, 27, 177, 9, 15, 62, 89, 179, 8, 1, 0, 4, 43, 48, 49, 1, 33, 1, 7, 1, 1, 23, 1, 33, 1, 35, 17, 51, 4, 94, 253, 209, 1, 121, 78, 254, 0, 2, 0, 78, 254, 135, 2, 47, 252, 90, 110, 110, 1, 154, 254, 135, 78, 2, 0, 1, 254, 78, 254, 133, 253, 248, 3, 162, 0, 0, 1, 0, 10, 255, 217, 4, 123, 3, 125, 0, 21, 0, 24, 179, 3, 9, 21, 4, 43, 0, 176, 13, 47, 179, 1, 1, 2, 4, 43, 179, 9, 1, 15, 4, 43, 48, 49, 19, 33, 21, 33, 20, 30, 2, 51, 33, 39, 55, 1, 1, 39, 55, 33, 34, 46, 2, 53, 10, 2, 37, 254, 74, 69, 121, 160, 92, 1, 117, 191, 78, 1, 68, 254, 188, 78, 191, 254, 139, 117, 202, 150, 84, 3, 125, 111, 92, 160, 120, 70, 190, 78, 254, 187, 254, 190, 76, 192, 88, 152, 201, 112, 0, 3, 0, 74, 255, 217, 4, 92, 3, 129, 0, 3, 0, 7, 0, 20, 0, 48, 179, 17, 9, 12, 4, 43, 0, 176, 9, 47, 179, 3, 1, 0, 4, 43, 179, 7, 1, 4, 4, 43, 176, 4, 16, 176, 11, 208, 176, 3, 16, 176, 13, 208, 176, 0, 16, 176, 15, 208, 176, 7, 16, 176, 17, 208, 48, 49, 1, 33, 53, 33, 17, 35, 53, 51, 5, 1, 39, 55, 33, 17, 33, 21, 35, 17, 33, 39, 55, 4, 92, 254, 144, 1, 112, 184, 184, 254, 172, 254, 187, 78, 190, 254, 23, 1, 43, 189, 1, 123, 190, 78, 3, 20, 109, 253, 100, 111, 57, 254, 190, 76, 192, 2, 156, 109, 254, 64, 190, 78, 0, 2, 0, 0, 255, 211, 4, 20, 3, 209, 0, 3, 0, 12, 0, 34, 179, 0, 9, 1, 4, 43, 0, 176, 12, 47, 176, 5, 47, 176, 0, 69, 88, 176, 0, 47, 27, 177, 0, 15, 62, 89, 179, 10, 1, 7, 4, 43, 48, 49, 33, 35, 17, 51, 1, 1, 39, 1, 33, 53, 33, 1, 55, 4, 20, 110, 110, 254, 240, 254, 2, 80, 1, 123, 253, 207, 2, 49, 254, 133, 80, 3, 162, 254, 49, 254, 0, 78, 1, 121, 110, 1, 123, 78, 0, 3, 0, 2, 0, 4, 4, 104, 5, 68, 0, 36, 0, 72, 0, 84, 0, 193, 176, 85, 47, 176, 86, 47, 176, 85, 16, 176, 16, 208, 176, 16, 47, 176, 86, 16, 176, 33, 220, 177, 39, 10, 244, 180, 218, 39, 234, 39, 2, 93, 64, 27, 9, 39, 25, 39, 41, 39, 57, 39, 73, 39, 89, 39, 105, 39, 121, 39, 137, 39, 153, 39, 169, 39, 185, 39, 201, 39, 13, 93, 176, 33, 16, 176, 45, 208, 176, 45, 47, 176, 16, 16, 177, 57, 10, 244, 64, 27, 6, 57, 22, 57, 38, 57, 54, 57, 70, 57, 86, 57, 102, 57, 118, 57, 134, 57, 150, 57, 166, 57, 182, 57, 198, 57, 13, 93, 180, 213, 57, 229, 57, 2, 93, 176, 33, 16, 176, 71, 208, 176, 71, 47, 0, 176, 82, 47, 176, 0, 69, 88, 176, 47, 47, 27, 177, 47, 19, 62, 89, 176, 0, 69, 88, 176, 53, 47, 27, 177, 53, 19, 62, 89, 179, 69, 2, 12, 4, 43, 176, 12, 16, 176, 4, 208, 176, 4, 47, 176, 53, 16, 177, 29, 2, 244, 176, 20, 208, 176, 20, 47, 176, 69, 16, 176, 61, 208, 176, 61, 47, 48, 49, 1, 6, 7, 6, 35, 34, 39, 38, 35, 34, 7, 6, 35, 34, 39, 38, 53, 52, 55, 54, 51, 50, 23, 22, 22, 51, 50, 55, 54, 51, 50, 23, 6, 21, 20, 23, 22, 7, 38, 53, 52, 55, 54, 54, 55, 55, 38, 35, 34, 7, 7, 39, 38, 35, 34, 7, 6, 21, 20, 23, 22, 51, 50, 55, 54, 51, 50, 23, 22, 51, 50, 55, 54, 3, 20, 7, 6, 7, 6, 6, 7, 18, 37, 22, 22, 4, 104, 36, 78, 99, 94, 45, 71, 74, 45, 41, 72, 74, 34, 123, 119, 121, 78, 90, 154, 57, 86, 43, 55, 13, 34, 86, 86, 50, 147, 109, 146, 49, 51, 38, 154, 49, 4, 10, 7, 36, 32, 92, 17, 94, 145, 136, 104, 14, 115, 62, 51, 107, 92, 70, 20, 49, 92, 60, 63, 90, 56, 26, 51, 78, 15, 142, 55, 53, 76, 12, 43, 29, 2, 1, 6, 2, 2, 1, 111, 117, 109, 135, 27, 26, 26, 29, 209, 211, 197, 165, 115, 137, 24, 13, 10, 25, 28, 133, 123, 139, 90, 80, 86, 65, 118, 203, 103, 90, 4, 14, 10, 39, 41, 20, 33, 29, 18, 108, 91, 124, 179, 182, 162, 19, 35, 31, 21, 117, 25, 4, 49, 86, 82, 88, 25, 4, 4, 4, 1, 10, 60, 9, 14, 0, 1, 255, 236, 0, 0, 3, 188, 5, 47, 0, 45, 0, 199, 179, 23, 12, 36, 4, 43, 179, 0, 12, 13, 4, 43, 180, 218, 13, 234, 13, 2, 93, 64, 27, 9, 13, 25, 13, 41, 13, 57, 13, 73, 13, 89, 13, 105, 13, 121, 13, 137, 13, 153, 13, 169, 13, 185, 13, 201, 13, 13, 93, 64, 15, 102, 23, 118, 23, 134, 23, 150, 23, 166, 23, 182, 23, 198, 23, 7, 93, 64, 13, 6, 23, 22, 23, 38, 23, 54, 23, 70, 23, 86, 23, 6, 93, 180, 213, 23, 229, 23, 2, 93, 176, 36, 16, 177, 28, 14, 244, 0, 176, 0, 69, 88, 176, 41, 47, 27, 177, 41, 21, 62, 89, 176, 0, 69, 88, 176, 6, 47, 27, 177, 6, 15, 62, 89, 176, 0, 69, 88, 176, 29, 47, 27, 177, 29, 15, 62, 89, 176, 6, 16, 177, 4, 6, 244, 176, 41, 16, 177, 18, 1, 244, 180, 217, 18, 233, 18, 2, 93, 64, 27, 8, 18, 24, 18, 40, 18, 56, 18, 72, 18, 88, 18, 104, 18, 120, 18, 136, 18, 152, 18, 168, 18, 184, 18, 200, 18, 13, 93, 176, 4, 16, 176, 31, 208, 176, 32, 208, 48, 49, 1, 20, 2, 7, 21, 51, 21, 33, 17, 62, 3, 53, 52, 46, 2, 35, 34, 14, 2, 21, 20, 30, 2, 23, 17, 33, 53, 51, 53, 38, 2, 53, 52, 62, 2, 51, 50, 30, 2, 3, 188, 110, 125, 211, 254, 164, 67, 90, 56, 22, 39, 86, 133, 94, 90, 133, 86, 41, 22, 54, 88, 67, 254, 164, 211, 121, 110, 63, 123, 182, 119, 119, 182, 125, 63, 2, 229, 145, 254, 240, 93, 114, 117, 1, 35, 26, 103, 123, 135, 63, 82, 168, 137, 86, 86, 137, 168, 82, 63, 135, 123, 103, 26, 254, 221, 117, 114, 86, 1, 19, 149, 113, 213, 162, 98, 98, 162, 213, 0, 0, 1, 0, 0, 2, 112, 0, 97, 0, 7, 0, 88, 0, 4, 0, 1, 0, 0, 0, 0, 0, 10, 0, 0, 2, 0, 2, 166, 0, 2, 0, 1, 0, 0, 0, 56, 0, 56, 0, 56, 0, 56, 0, 196, 1, 119, 2, 127, 3, 86, 3, 110, 3, 179, 3, 249, 4, 69, 4, 121, 4, 145, 4, 163, 4, 184, 4, 205, 5, 135, 5, 194, 6, 47, 6, 229, 7, 48, 7, 194, 8, 126, 8, 198, 9, 194, 10, 130, 10, 172, 10, 214, 10, 238, 11, 10, 11, 35, 11, 157, 12, 188, 12, 239, 13, 110, 14, 23, 14, 119, 14, 174, 14, 223, 15, 135, 15, 206, 16, 2, 16, 72, 16, 135, 16, 170, 16, 251, 17, 66, 17, 237, 18, 74, 19, 32, 19, 145, 20, 86, 20, 169, 21, 9, 21, 55, 21, 129, 21, 238, 22, 71, 22, 142, 22, 184, 22, 203, 22, 246, 23, 25, 23, 43, 23, 62, 24, 3, 24, 177, 25, 87, 26, 4, 26, 119, 26, 239, 27, 179, 28, 27, 28, 101, 28, 171, 28, 238, 29, 36, 29, 194, 30, 42, 30, 213, 31, 131, 32, 51, 32, 155, 33, 84, 33, 194, 34, 42, 34, 88, 34, 162, 35, 11, 35, 67, 35, 139, 35, 228, 35, 248, 36, 81, 36, 134, 36, 146, 37, 6, 37, 189, 37, 201, 37, 213, 37, 225, 37, 237, 37, 248, 38, 3, 38, 14, 38, 25, 38, 36, 38, 47, 38, 233, 38, 244, 38, 255, 39, 10, 39, 21, 39, 32, 39, 43, 39, 54, 39, 65, 39, 76, 39, 87, 39, 98, 39, 109, 39, 120, 39, 131, 39, 142, 39, 153, 39, 164, 39, 175, 39, 210, 40, 73, 40, 203, 41, 77, 42, 12, 42, 54, 42, 168, 43, 124, 44, 53, 44, 251, 45, 89, 45, 109, 45, 152, 45, 221, 46, 46, 47, 11, 47, 128, 47, 182, 47, 215, 47, 249, 48, 93, 48, 207, 49, 106, 49, 173, 49, 240, 50, 102, 50, 164, 51, 89, 51, 241, 52, 151, 53, 142, 54, 87, 54, 210, 55, 5, 55, 28, 55, 63, 55, 188, 55, 248, 56, 30, 56, 68, 56, 105, 56, 161, 56, 161, 56, 173, 56, 185, 56, 197, 57, 87, 58, 23, 58, 40, 58, 58, 58, 156, 58, 248, 59, 45, 59, 92, 59, 144, 59, 184, 59, 195, 59, 207, 59, 233, 60, 129, 60, 152, 60, 175, 61, 58, 61, 190, 62, 7, 62, 24, 62, 79, 62, 178, 63, 229, 63, 241, 63, 253, 64, 9, 64, 21, 64, 33, 64, 45, 64, 57, 64, 69, 64, 81, 64, 93, 64, 105, 64, 192, 64, 204, 64, 216, 64, 228, 64, 240, 65, 38, 65, 62, 65, 103, 65, 121, 65, 150, 65, 175, 65, 252, 66, 33, 66, 62, 66, 113, 66, 138, 66, 173, 66, 212, 66, 236, 67, 128, 67, 160, 67, 178, 68, 13, 68, 135, 68, 184, 69, 77, 69, 220, 70, 182, 71, 43, 71, 84, 71, 96, 71, 188, 72, 104, 72, 115, 73, 29, 73, 41, 73, 52, 73, 64, 73, 75, 73, 183, 74, 144, 74, 156, 74, 167, 74, 179, 74, 190, 74, 202, 74, 213, 74, 225, 74, 236, 74, 248, 75, 166, 75, 174, 76, 115, 76, 127, 76, 138, 76, 150, 76, 161, 76, 173, 76, 184, 77, 31, 77, 197, 77, 209, 77, 220, 77, 232, 77, 243, 77, 255, 78, 10, 78, 22, 78, 33, 78, 44, 79, 6, 79, 18, 79, 30, 79, 146, 80, 19, 80, 31, 80, 42, 80, 54, 80, 65, 80, 77, 80, 88, 80, 190, 81, 58, 81, 70, 81, 168, 82, 61, 82, 73, 82, 140, 82, 151, 82, 162, 82, 225, 82, 237, 82, 249, 83, 4, 83, 15, 83, 27, 83, 39, 83, 51, 83, 63, 83, 129, 83, 229, 83, 241, 83, 252, 84, 7, 84, 18, 84, 30, 84, 41, 84, 53, 84, 140, 85, 14, 85, 26, 85, 37, 85, 49, 85, 60, 85, 72, 85, 83, 85, 95, 85, 106, 85, 117, 85, 128, 85, 140, 85, 151, 85, 163, 85, 174, 85, 186, 85, 197, 86, 127, 87, 38, 87, 50, 87, 61, 87, 72, 87, 83, 87, 95, 87, 107, 87, 213, 88, 91, 88, 103, 88, 114, 88, 126, 88, 137, 88, 149, 88, 160, 88, 172, 88, 183, 88, 195, 88, 206, 89, 91, 89, 216, 89, 228, 89, 239, 89, 251, 90, 6, 90, 18, 90, 29, 90, 41, 90, 52, 90, 64, 90, 75, 90, 189, 90, 201, 90, 212, 90, 224, 90, 235, 90, 246, 91, 1, 91, 12, 91, 23, 91, 42, 91, 97, 91, 109, 91, 121, 91, 133, 91, 145, 91, 157, 91, 169, 91, 181, 91, 192, 91, 243, 92, 114, 92, 151, 92, 189, 92, 244, 93, 59, 93, 130, 94, 55, 94, 107, 94, 170, 94, 215, 95, 40, 95, 111, 95, 211, 96, 126, 96, 182, 97, 19, 97, 86, 97, 169, 98, 2, 98, 141, 98, 250, 99, 82, 99, 94, 99, 106, 99, 117, 99, 128, 99, 139, 99, 150, 99, 161, 100, 71, 101, 24, 101, 86, 102, 47, 102, 212, 103, 83, 103, 202, 104, 93, 104, 170, 104, 233, 105, 61, 105, 198, 105, 249, 106, 173, 107, 88, 107, 249, 108, 145, 109, 52, 109, 132, 109, 252, 110, 156, 110, 219, 111, 46, 111, 227, 111, 238, 111, 249, 112, 4, 112, 15, 112, 26, 112, 38, 112, 208, 112, 220, 113, 123, 114, 59, 114, 111, 114, 123, 114, 193, 115, 86, 115, 210, 116, 73, 116, 85, 116, 97, 116, 162, 116, 213, 117, 54, 117, 181, 117, 218, 118, 47, 118, 102, 118, 208, 119, 153, 119, 225, 119, 237, 120, 44, 120, 148, 120, 229, 121, 44, 121, 215, 122, 15, 122, 108, 123, 21, 123, 104, 123, 187, 124, 70, 124, 179, 124, 243, 125, 68, 125, 155, 125, 238, 126, 78, 126, 186, 127, 20, 127, 182, 128, 92, 128, 209, 129, 150, 130, 109, 131, 0, 131, 37, 131, 119, 131, 234, 132, 83, 132, 249, 133, 65, 133, 76, 133, 139, 133, 243, 134, 68, 134, 139, 135, 54, 135, 110, 136, 28, 136, 194, 137, 21, 137, 77, 138, 43, 138, 148, 138, 212, 139, 36, 139, 123, 139, 209, 140, 49, 140, 158, 140, 249, 141, 106, 142, 2, 142, 115, 142, 126, 143, 15, 143, 26, 143, 138, 144, 64, 144, 138, 144, 149, 144, 219, 145, 94, 145, 217, 146, 91, 146, 102, 146, 113, 146, 178, 146, 230, 147, 26, 147, 38, 147, 50, 147, 62, 147, 74, 147, 86, 147, 98, 147, 110, 147, 121, 147, 133, 147, 144, 147, 156, 147, 167, 147, 179, 147, 191, 147, 203, 147, 214, 147, 226, 147, 237, 147, 249, 148, 4, 148, 16, 148, 27, 148, 45, 148, 234, 148, 252, 149, 32, 150, 47, 150, 105, 150, 156, 150, 227, 151, 29, 151, 169, 151, 224, 152, 17, 152, 34, 152, 60, 152, 90, 152, 119, 152, 144, 152, 168, 152, 205, 152, 242, 153, 21, 153, 51, 153, 102, 153, 130, 153, 180, 153, 235, 154, 40, 154, 99, 154, 150, 154, 210, 155, 12, 155, 61, 155, 112, 155, 163, 155, 209, 156, 2, 156, 49, 156, 98, 156, 160, 156, 235, 157, 27, 157, 88, 157, 160, 157, 205, 158, 12, 158, 84, 158, 122, 158, 173, 158, 230, 159, 33, 159, 109, 159, 209, 159, 240, 160, 9, 160, 84, 160, 128, 160, 193, 161, 34, 161, 84, 161, 135, 161, 199, 161, 246, 162, 210, 163, 120, 0, 0, 0, 1, 0, 0, 0, 1, 0, 197, 254, 73, 160, 132, 95, 15, 60, 245, 0, 27, 8, 0, 0, 0, 0, 0, 198, 245, 69, 208, 0, 0, 0, 0, 213, 49, 9, 126, 255, 91, 254, 117, 4, 123, 7, 62, 0, 0, 0, 9, 0, 2, 0, 0, 0, 0, 0, 0, 4, 94, 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 236, 255, 231, 1, 117, 0, 188, 0, 229, 0, 35, 0, 0, 0, 240, 0, 0, 1, 117, 0, 41, 255, 223, 0, 0, 0, 10, 0, 27, 0, 0, 0, 4, 255, 248, 0, 49, 255, 248, 255, 233, 1, 117, 0, 240, 0, 199, 0, 0, 0, 143, 0, 168, 255, 223, 255, 197, 0, 49, 255, 236, 0, 49, 0, 49, 0, 49, 255, 236, 0, 49, 0, 186, 255, 254, 0, 49, 0, 49, 0, 49, 0, 49, 255, 223, 0, 49, 255, 223, 0, 49, 0, 25, 0, 0, 0, 49, 255, 197, 255, 193, 255, 233, 255, 236, 0, 49, 1, 117, 0, 133, 0, 186, 0, 2, 0, 0, 0, 229, 255, 254, 0, 49, 0, 0, 255, 254, 255, 252, 0, 186, 255, 254, 0, 49, 0, 186, 0, 4, 0, 49, 0, 186, 0, 0, 0, 49, 255, 236, 0, 49, 0, 0, 0, 0, 255, 246, 0, 0, 0, 49, 255, 225, 255, 229, 255, 236, 255, 225, 0, 47, 0, 186, 1, 141, 0, 186, 255, 252, 255, 197, 255, 197, 255, 236, 0, 49, 0, 49, 255, 223, 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 252, 255, 252, 255, 252, 255, 252, 0, 186, 0, 186, 0, 170, 0, 186, 0, 49, 255, 236, 255, 236, 255, 236, 255, 236, 255, 236, 0, 49, 0, 49, 0, 49, 0, 49, 0, 186, 0, 0, 0, 8, 0, 49, 0, 20, 0, 186, 0, 31, 0, 49, 0, 0, 0, 2, 0, 0, 0, 242, 0, 186, 0, 0, 255, 193, 255, 211, 255, 248, 0, 0, 0, 186, 0, 186, 0, 0, 0, 49, 255, 236, 0, 43, 0, 0, 0, 0, 0, 4, 255, 248, 255, 238, 255, 236, 255, 219, 255, 213, 0, 209, 2, 47, 0, 0, 0, 23, 0, 4, 255, 236, 255, 197, 0, 14, 0, 141, 0, 0, 0, 0, 255, 197, 255, 197, 255, 223, 255, 242, 255, 219, 0, 0, 255, 164, 0, 55, 0, 0, 1, 170, 0, 186, 0, 0, 255, 238, 255, 225, 255, 236, 0, 2, 0, 0, 0, 199, 1, 72, 0, 0, 0, 0, 0, 186, 1, 117, 2, 46, 0, 0, 255, 236, 255, 197, 0, 49, 255, 197, 0, 49, 0, 49, 0, 186, 0, 170, 0, 186, 0, 186, 255, 223, 255, 223, 0, 2, 255, 223, 0, 49, 0, 49, 0, 49, 0, 186, 0, 170, 0, 78, 0, 186, 0, 182, 1, 117, 0, 242, 0, 242, 0, 170, 2, 240, 0, 170, 1, 117, 0, 186, 1, 55, 255, 217, 1, 141, 0, 0, 0, 27, 255, 254, 0, 0, 0, 0, 0, 0, 255, 254, 255, 139, 0, 98, 255, 236, 0, 49, 255, 236, 255, 225, 0, 49, 255, 197, 0, 0, 255, 197, 0, 0, 255, 197, 255, 254, 255, 236, 0, 0, 255, 236, 0, 0, 255, 236, 0, 0, 255, 236, 0, 0, 0, 49, 0, 0, 255, 139, 255, 254, 0, 49, 255, 252, 0, 49, 255, 252, 0, 49, 255, 252, 0, 49, 255, 252, 0, 49, 255, 252, 255, 236, 255, 254, 255, 236, 255, 254, 255, 236, 255, 254, 255, 236, 255, 254, 0, 49, 0, 49, 255, 119, 255, 119, 0, 78, 0, 78, 0, 186, 0, 186, 0, 182, 0, 182, 0, 186, 0, 186, 0, 186, 0, 0, 0, 0, 255, 254, 0, 4, 0, 49, 0, 49, 0, 49, 0, 49, 0, 186, 0, 49, 0, 186, 0, 49, 0, 186, 0, 49, 0, 186, 255, 94, 0, 186, 0, 49, 0, 49, 0, 49, 0, 49, 0, 49, 0, 49, 0, 1, 0, 49, 0, 49, 255, 223, 255, 236, 255, 223, 255, 236, 255, 223, 255, 236, 0, 49, 0, 0, 0, 49, 0, 0, 0, 49, 0, 0, 0, 25, 255, 246, 0, 25, 255, 246, 0, 25, 255, 246, 0, 25, 255, 246, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 49, 0, 49, 0, 49, 0, 49, 0, 49, 0, 49, 0, 49, 0, 49, 0, 49, 0, 49, 0, 49, 255, 193, 255, 229, 255, 236, 255, 225, 0, 49, 0, 47, 0, 49, 0, 47, 0, 49, 0, 47, 0, 186, 255, 193, 255, 219, 255, 211, 255, 213, 0, 25, 255, 246, 0, 0, 0, 0, 1, 141, 0, 0, 255, 197, 255, 95, 255, 95, 0, 23, 255, 91, 255, 91, 255, 91, 0, 0, 255, 197, 0, 49, 0, 49, 255, 197, 0, 49, 0, 49, 0, 49, 255, 223, 0, 186, 0, 49, 255, 197, 0, 49, 0, 49, 0, 0, 255, 223, 0, 49, 0, 49, 0, 43, 0, 0, 255, 236, 255, 236, 255, 233, 0, 49, 0, 186, 255, 236, 0, 2, 0, 0, 0, 12, 0, 186, 0, 0, 0, 2, 0, 49, 0, 0, 0, 39, 0, 0, 0, 2, 0, 12, 0, 41, 0, 186, 0, 49, 255, 225, 0, 49, 0, 0, 0, 2, 255, 236, 0, 49, 0, 2, 255, 236, 0, 0, 0, 49, 255, 236, 255, 248, 0, 49, 255, 242, 0, 186, 0, 49, 255, 236, 0, 49, 255, 242, 0, 49, 255, 119, 0, 49, 255, 236, 0, 25, 0, 186, 0, 186, 255, 254, 255, 117, 0, 49, 255, 119, 0, 49, 255, 225, 0, 49, 255, 197, 0, 49, 0, 49, 0, 49, 0, 0, 0, 49, 255, 193, 0, 27, 0, 49, 0, 49, 0, 49, 255, 231, 0, 49, 0, 49, 255, 223, 0, 49, 0, 49, 255, 236, 0, 0, 255, 225, 255, 236, 255, 233, 0, 49, 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 255, 248, 0, 49, 255, 244, 255, 254, 0, 0, 0, 49, 0, 49, 0, 0, 255, 252, 255, 240, 255, 254, 0, 49, 0, 49, 0, 49, 255, 231, 0, 49, 0, 49, 255, 236, 0, 49, 0, 49, 0, 0, 0, 0, 255, 225, 255, 227, 255, 236, 0, 49, 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 35, 0, 49, 255, 244, 255, 252, 255, 143, 0, 49, 0, 0, 255, 246, 0, 186, 0, 186, 0, 4, 255, 117, 0, 49, 255, 143, 0, 49, 255, 225, 0, 49, 0, 49, 0, 49, 0, 49, 0, 49, 0, 49, 255, 254, 0, 49, 0, 186, 0, 49, 0, 0, 0, 49, 0, 49, 0, 25, 255, 246, 0, 0, 0, 0, 255, 193, 255, 229, 255, 193, 255, 229, 255, 193, 255, 229, 255, 236, 255, 225, 0, 0, 0, 0, 0, 0, 255, 211, 0, 68, 255, 211, 0, 0, 0, 74, 0, 0, 0, 188, 255, 227, 0, 72, 0, 0, 1, 141, 1, 141, 0, 0, 1, 141, 0, 0, 1, 141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 211, 1, 141, 0, 211, 0, 211, 0, 0, 0, 0, 0, 0, 1, 141, 0, 211, 0, 211, 0, 0, 0, 0, 0, 0, 1, 141, 0, 211, 0, 211, 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, 238, 0, 8, 255, 242, 255, 242, 0, 0, 0, 72, 0, 74, 0, 10, 0, 74, 0, 0, 0, 2, 255, 236, 0, 0, 0, 1, 0, 0, 6, 139, 254, 139, 0, 0, 4, 94, 255, 94, 255, 227, 4, 123, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 3, 4, 94, 1, 144, 0, 5, 0, 0, 5, 154, 5, 51, 0, 0, 1, 37, 5, 154, 5, 51, 0, 0, 3, 160, 0, 123, 1, 209, 5, 1, 2, 6, 6, 9, 3, 2, 2, 0, 5, 4, 160, 0, 2, 175, 112, 0, 169, 202, 0, 0, 0, 0, 0, 0, 0, 0, 109, 108, 115, 115, 0, 64, 0, 0, 251, 2, 6, 139, 254, 139, 0, 0, 6, 139, 1, 117, 32, 0, 0, 159, 0, 0, 0, 0, 3, 164, 5, 25, 0, 0, 0, 32, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 12, 0, 248, 8, 255, 0, 8, 0, 7, 255, 254, 0, 9, 0, 8, 255, 254, 0, 10, 0, 9, 255, 254, 0, 11, 0, 9, 255, 253, 0, 12, 0, 10, 255, 253, 0, 13, 0, 11, 255, 253, 0, 14, 0, 12, 255, 253, 0, 15, 0, 13, 255, 253, 0, 16, 0, 14, 255, 253, 0, 17, 0, 14, 255, 252, 0, 18, 0, 15, 255, 252, 0, 19, 0, 16, 255, 252, 0, 20, 0, 17, 255, 252, 0, 21, 0, 18, 255, 252, 0, 22, 0, 18, 255, 251, 0, 23, 0, 19, 255, 251, 0, 24, 0, 20, 255, 251, 0, 25, 0, 21, 255, 251, 0, 26, 0, 22, 255, 251, 0, 27, 0, 23, 255, 251, 0, 28, 0, 23, 255, 250, 0, 29, 0, 24, 255, 250, 0, 30, 0, 25, 255, 250, 0, 31, 0, 26, 255, 250, 0, 32, 0, 27, 255, 250, 0, 33, 0, 27, 255, 249, 0, 34, 0, 28, 255, 249, 0, 35, 0, 29, 255, 249, 0, 36, 0, 30, 255, 249, 0, 37, 0, 31, 255, 249, 0, 38, 0, 32, 255, 249, 0, 39, 0, 32, 255, 248, 0, 40, 0, 33, 255, 248, 0, 41, 0, 34, 255, 248, 0, 42, 0, 35, 255, 248, 0, 43, 0, 36, 255, 248, 0, 44, 0, 36, 255, 247, 0, 45, 0, 37, 255, 247, 0, 46, 0, 38, 255, 247, 0, 47, 0, 39, 255, 247, 0, 48, 0, 40, 255, 247, 0, 49, 0, 41, 255, 247, 0, 50, 0, 41, 255, 246, 0, 51, 0, 42, 255, 246, 0, 52, 0, 43, 255, 246, 0, 53, 0, 44, 255, 246, 0, 54, 0, 45, 255, 246, 0, 55, 0, 45, 255, 245, 0, 56, 0, 46, 255, 245, 0, 57, 0, 47, 255, 245, 0, 58, 0, 48, 255, 245, 0, 59, 0, 49, 255, 245, 0, 60, 0, 50, 255, 245, 0, 61, 0, 50, 255, 244, 0, 62, 0, 51, 255, 244, 0, 63, 0, 52, 255, 244, 0, 64, 0, 53, 255, 244, 0, 65, 0, 54, 255, 244, 0, 66, 0, 54, 255, 243, 0, 67, 0, 55, 255, 243, 0, 68, 0, 56, 255, 243, 0, 69, 0, 57, 255, 243, 0, 70, 0, 58, 255, 243, 0, 71, 0, 59, 255, 243, 0, 72, 0, 59, 255, 242, 0, 73, 0, 60, 255, 242, 0, 74, 0, 61, 255, 242, 0, 75, 0, 62, 255, 242, 0, 76, 0, 63, 255, 242, 0, 77, 0, 63, 255, 241, 0, 78, 0, 64, 255, 241, 0, 79, 0, 65, 255, 241, 0, 80, 0, 66, 255, 241, 0, 81, 0, 67, 255, 241, 0, 82, 0, 68, 255, 241, 0, 83, 0, 68, 255, 240, 0, 84, 0, 69, 255, 240, 0, 85, 0, 70, 255, 240, 0, 86, 0, 71, 255, 240, 0, 87, 0, 72, 255, 240, 0, 88, 0, 72, 255, 239, 0, 89, 0, 73, 255, 239, 0, 90, 0, 74, 255, 239, 0, 91, 0, 75, 255, 239, 0, 92, 0, 76, 255, 239, 0, 93, 0, 77, 255, 239, 0, 94, 0, 77, 255, 238, 0, 95, 0, 78, 255, 238, 0, 96, 0, 79, 255, 238, 0, 97, 0, 80, 255, 238, 0, 98, 0, 81, 255, 238, 0, 99, 0, 81, 255, 237, 0, 100, 0, 82, 255, 237, 0, 101, 0, 83, 255, 237, 0, 102, 0, 84, 255, 237, 0, 103, 0, 85, 255, 237, 0, 104, 0, 86, 255, 237, 0, 105, 0, 86, 255, 236, 0, 106, 0, 87, 255, 236, 0, 107, 0, 88, 255, 236, 0, 108, 0, 89, 255, 236, 0, 109, 0, 90, 255, 236, 0, 110, 0, 90, 255, 235, 0, 111, 0, 91, 255, 235, 0, 112, 0, 92, 255, 235, 0, 113, 0, 93, 255, 235, 0, 114, 0, 94, 255, 235, 0, 115, 0, 95, 255, 235, 0, 116, 0, 95, 255, 234, 0, 117, 0, 96, 255, 234, 0, 118, 0, 97, 255, 234, 0, 119, 0, 98, 255, 234, 0, 120, 0, 99, 255, 234, 0, 121, 0, 99, 255, 233, 0, 122, 0, 100, 255, 233, 0, 123, 0, 101, 255, 233, 0, 124, 0, 102, 255, 233, 0, 125, 0, 103, 255, 233, 0, 126, 0, 104, 255, 233, 0, 127, 0, 104, 255, 232, 0, 128, 0, 105, 255, 232, 0, 129, 0, 106, 255, 232, 0, 130, 0, 107, 255, 232, 0, 131, 0, 108, 255, 232, 0, 132, 0, 108, 255, 231, 0, 133, 0, 109, 255, 231, 0, 134, 0, 110, 255, 231, 0, 135, 0, 111, 255, 231, 0, 136, 0, 112, 255, 231, 0, 137, 0, 113, 255, 231, 0, 138, 0, 113, 255, 230, 0, 139, 0, 114, 255, 230, 0, 140, 0, 115, 255, 230, 0, 141, 0, 116, 255, 230, 0, 142, 0, 117, 255, 230, 0, 143, 0, 117, 255, 229, 0, 144, 0, 118, 255, 229, 0, 145, 0, 119, 255, 229, 0, 146, 0, 120, 255, 229, 0, 147, 0, 121, 255, 229, 0, 148, 0, 122, 255, 229, 0, 149, 0, 122, 255, 228, 0, 150, 0, 123, 255, 228, 0, 151, 0, 124, 255, 228, 0, 152, 0, 125, 255, 228, 0, 153, 0, 126, 255, 228, 0, 154, 0, 126, 255, 227, 0, 155, 0, 127, 255, 227, 0, 156, 0, 128, 255, 227, 0, 157, 0, 129, 255, 227, 0, 158, 0, 130, 255, 227, 0, 159, 0, 131, 255, 227, 0, 160, 0, 131, 255, 226, 0, 161, 0, 132, 255, 226, 0, 162, 0, 133, 255, 226, 0, 163, 0, 134, 255, 226, 0, 164, 0, 135, 255, 226, 0, 165, 0, 135, 255, 225, 0, 166, 0, 136, 255, 225, 0, 167, 0, 137, 255, 225, 0, 168, 0, 138, 255, 225, 0, 169, 0, 139, 255, 225, 0, 170, 0, 140, 255, 225, 0, 171, 0, 140, 255, 224, 0, 172, 0, 141, 255, 224, 0, 173, 0, 142, 255, 224, 0, 174, 0, 143, 255, 224, 0, 175, 0, 144, 255, 224, 0, 176, 0, 144, 255, 223, 0, 177, 0, 145, 255, 223, 0, 178, 0, 146, 255, 223, 0, 179, 0, 147, 255, 223, 0, 180, 0, 148, 255, 223, 0, 181, 0, 149, 255, 223, 0, 182, 0, 149, 255, 222, 0, 183, 0, 150, 255, 222, 0, 184, 0, 151, 255, 222, 0, 185, 0, 152, 255, 222, 0, 186, 0, 153, 255, 222, 0, 187, 0, 153, 255, 221, 0, 188, 0, 154, 255, 221, 0, 189, 0, 155, 255, 221, 0, 190, 0, 156, 255, 221, 0, 191, 0, 157, 255, 221, 0, 192, 0, 158, 255, 221, 0, 193, 0, 158, 255, 220, 0, 194, 0, 159, 255, 220, 0, 195, 0, 160, 255, 220, 0, 196, 0, 161, 255, 220, 0, 197, 0, 162, 255, 220, 0, 198, 0, 162, 255, 219, 0, 199, 0, 163, 255, 219, 0, 200, 0, 164, 255, 219, 0, 201, 0, 165, 255, 219, 0, 202, 0, 166, 255, 219, 0, 203, 0, 167, 255, 219, 0, 204, 0, 167, 255, 218, 0, 205, 0, 168, 255, 218, 0, 206, 0, 169, 255, 218, 0, 207, 0, 170, 255, 218, 0, 208, 0, 171, 255, 218, 0, 209, 0, 171, 255, 217, 0, 210, 0, 172, 255, 217, 0, 211, 0, 173, 255, 217, 0, 212, 0, 174, 255, 217, 0, 213, 0, 175, 255, 217, 0, 214, 0, 176, 255, 217, 0, 215, 0, 176, 255, 216, 0, 216, 0, 177, 255, 216, 0, 217, 0, 178, 255, 216, 0, 218, 0, 179, 255, 216, 0, 219, 0, 180, 255, 216, 0, 220, 0, 180, 255, 215, 0, 221, 0, 181, 255, 215, 0, 222, 0, 182, 255, 215, 0, 223, 0, 183, 255, 215, 0, 224, 0, 184, 255, 215, 0, 225, 0, 185, 255, 215, 0, 226, 0, 185, 255, 214, 0, 227, 0, 186, 255, 214, 0, 228, 0, 187, 255, 214, 0, 229, 0, 188, 255, 214, 0, 230, 0, 189, 255, 214, 0, 231, 0, 189, 255, 213, 0, 232, 0, 190, 255, 213, 0, 233, 0, 191, 255, 213, 0, 234, 0, 192, 255, 213, 0, 235, 0, 193, 255, 213, 0, 236, 0, 194, 255, 213, 0, 237, 0, 194, 255, 212, 0, 238, 0, 195, 255, 212, 0, 239, 0, 196, 255, 212, 0, 240, 0, 197, 255, 212, 0, 241, 0, 198, 255, 212, 0, 242, 0, 198, 255, 211, 0, 243, 0, 199, 255, 211, 0, 244, 0, 200, 255, 211, 0, 245, 0, 201, 255, 211, 0, 246, 0, 202, 255, 211, 0, 247, 0, 203, 255, 211, 0, 248, 0, 203, 255, 210, 0, 249, 0, 204, 255, 210, 0, 250, 0, 205, 255, 210, 0, 251, 0, 206, 255, 210, 0, 252, 0, 207, 255, 210, 0, 253, 0, 207, 255, 209, 0, 254, 0, 208, 255, 209, 0, 255, 0, 209, 255, 209, 0, 0, 0, 4, 0, 0, 2, 116, 10, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 0, 0, 11, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 0, 0, 12, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 0, 0, 13, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 0, 0, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 20, 0, 3, 0, 1, 0, 0, 0, 20, 0, 4, 3, 206, 0, 0, 0, 178, 0, 128, 0, 6, 0, 50, 0, 0, 0, 13, 0, 34, 0, 126, 0, 255, 1, 48, 1, 49, 1, 81, 1, 83, 1, 119, 1, 120, 1, 127, 1, 146, 1, 255, 2, 27, 2, 199, 2, 221, 3, 134, 3, 138, 3, 140, 3, 161, 3, 168, 3, 169, 3, 191, 3, 192, 3, 206, 4, 12, 4, 79, 4, 92, 4, 95, 4, 145, 30, 3, 30, 11, 30, 31, 30, 65, 30, 87, 30, 97, 30, 107, 30, 133, 30, 243, 32, 21, 32, 26, 32, 30, 32, 34, 32, 38, 32, 48, 32, 58, 32, 68, 32, 172, 33, 22, 33, 34, 33, 38, 34, 2, 34, 6, 34, 15, 34, 18, 34, 26, 34, 30, 34, 43, 34, 72, 34, 96, 34, 101, 35, 3, 35, 24, 35, 38, 35, 125, 35, 136, 35, 206, 36, 35, 37, 0, 37, 2, 37, 12, 37, 16, 37, 20, 37, 24, 37, 28, 37, 36, 37, 44, 37, 52, 37, 60, 37, 108, 37, 198, 37, 202, 39, 19, 224, 7, 246, 195, 249, 0, 251, 2, 255, 255, 0, 0, 0, 0, 0, 13, 0, 32, 0, 35, 0, 160, 1, 0, 1, 49, 1, 50, 1, 82, 1, 84, 1, 120, 1, 121, 1, 146, 1, 252, 2, 24, 2, 198, 2, 216, 3, 132, 3, 136, 3, 140, 3, 142, 3, 163, 3, 169, 3, 170, 3, 192, 3, 193, 4, 1, 4, 14, 4, 81, 4, 94, 4, 144, 30, 2, 30, 10, 30, 30, 30, 64, 30, 86, 30, 96, 30, 106, 30, 128, 30, 242, 32, 19, 32, 24, 32, 28, 32, 32, 32, 38, 32, 48, 32, 57, 32, 68, 32, 172, 33, 22, 33, 34, 33, 38, 34, 2, 34, 6, 34, 15, 34, 17, 34, 26, 34, 30, 34, 43, 34, 72, 34, 96, 34, 100, 35, 3, 35, 24, 35, 36, 35, 125, 35, 136, 35, 206, 36, 35, 37, 0, 37, 2, 37, 12, 37, 16, 37, 20, 37, 24, 37, 28, 37, 36, 37, 44, 37, 52, 37, 60, 37, 80, 37, 198, 37, 202, 39, 19, 224, 0, 246, 195, 248, 255, 251, 1, 255, 255, 0, 1, 255, 245, 0, 0, 255, 225, 0, 0, 255, 243, 255, 164, 255, 242, 255, 92, 255, 240, 255, 65, 255, 239, 255, 18, 255, 115, 255, 91, 0, 0, 0, 0, 253, 243, 253, 242, 253, 241, 253, 240, 253, 239, 254, 198, 253, 238, 252, 217, 253, 237, 253, 187, 253, 186, 253, 185, 253, 184, 253, 136, 228, 24, 228, 18, 228, 0, 227, 224, 227, 204, 227, 196, 227, 188, 227, 168, 227, 60, 0, 0, 0, 0, 0, 0, 0, 0, 224, 131, 224, 148, 224, 131, 224, 118, 224, 15, 225, 27, 223, 104, 223, 119, 222, 148, 222, 160, 222, 137, 0, 0, 222, 137, 222, 114, 222, 111, 222, 93, 222, 45, 222, 46, 223, 48, 223, 28, 223, 17, 222, 187, 222, 177, 222, 108, 222, 24, 221, 60, 221, 59, 221, 50, 221, 47, 221, 44, 221, 41, 221, 38, 221, 31, 221, 24, 221, 17, 221, 10, 220, 247, 220, 158, 218, 237, 219, 82, 34, 102, 10, 31, 0, 0, 5, 189, 0, 1, 0, 0, 0, 0, 0, 174, 0, 0, 0, 176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 90, 1, 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 56, 1, 60, 1, 64, 1, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 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, 248, 0, 0, 0, 0, 0, 3, 0, 224, 0, 225, 0, 170, 0, 161, 0, 130, 0, 131, 0, 227, 0, 148, 0, 228, 0, 132, 0, 140, 0, 137, 0, 155, 0, 167, 0, 162, 0, 229, 0, 136, 0, 216, 0, 129, 0, 145, 0, 230, 0, 231, 0, 139, 0, 149, 0, 134, 0, 193, 0, 220, 0, 232, 0, 156, 0, 168, 0, 233, 0, 234, 0, 235, 0, 160, 0, 171, 0, 199, 0, 197, 0, 172, 0, 96, 0, 97, 0, 142, 0, 98, 0, 201, 0, 99, 0, 198, 0, 200, 0, 205, 0, 202, 0, 203, 0, 204, 0, 236, 0, 100, 0, 209, 0, 206, 0, 207, 0, 173, 0, 101, 0, 237, 0, 143, 0, 212, 0, 210, 0, 211, 0, 102, 0, 238, 0, 239, 0, 135, 0, 104, 0, 103, 0, 105, 0, 107, 0, 106, 0, 108, 0, 158, 0, 109, 0, 111, 0, 110, 0, 112, 0, 113, 0, 115, 0, 114, 0, 116, 0, 117, 0, 240, 0, 118, 0, 120, 0, 119, 0, 121, 0, 123, 0, 122, 0, 182, 0, 159, 0, 125, 0, 124, 0, 126, 0, 127, 0, 241, 0, 242, 0, 184, 0, 214, 0, 223, 0, 217, 0, 218, 0, 219, 0, 222, 0, 215, 0, 221, 0, 176, 0, 177, 2, 48, 0, 180, 0, 181, 0, 194, 0, 178, 0, 179, 0, 195, 0, 128, 0, 192, 0, 133, 0, 151, 2, 50, 0, 208, 2, 110, 0, 0, 176, 0, 44, 75, 176, 9, 80, 88, 177, 1, 1, 142, 89, 184, 1, 255, 133, 176, 68, 29, 177, 9, 3, 95, 94, 45, 176, 1, 44, 32, 32, 69, 105, 68, 176, 1, 96, 45, 176, 2, 44, 176, 1, 42, 33, 45, 176, 3, 44, 32, 70, 176, 3, 37, 70, 82, 88, 35, 89, 32, 138, 32, 138, 73, 100, 138, 32, 70, 32, 104, 97, 100, 176, 4, 37, 70, 32, 104, 97, 100, 82, 88, 35, 101, 138, 89, 47, 32, 176, 0, 83, 88, 105, 32, 176, 0, 84, 88, 33, 176, 64, 89, 27, 105, 32, 176, 0, 84, 88, 33, 176, 64, 101, 89, 89, 58, 45, 176, 4, 44, 32, 70, 176, 4, 37, 70, 82, 88, 35, 138, 89, 32, 70, 32, 106, 97, 100, 176, 4, 37, 70, 32, 106, 97, 100, 82, 88, 35, 138, 89, 47, 253, 45, 176, 5, 44, 75, 32, 176, 3, 38, 80, 88, 81, 88, 176, 128, 68, 27, 176, 64, 68, 89, 27, 33, 33, 32, 69, 176, 192, 80, 88, 176, 192, 68, 27, 33, 89, 89, 45, 176, 6, 44, 32, 32, 69, 105, 68, 176, 1, 96, 32, 32, 69, 125, 105, 24, 68, 176, 1, 96, 45, 176, 7, 44, 176, 6, 42, 45, 176, 8, 44, 75, 32, 176, 3, 38, 83, 88, 176, 64, 27, 176, 0, 89, 138, 138, 32, 176, 3, 38, 83, 88, 35, 33, 176, 128, 138, 138, 27, 138, 35, 89, 32, 176, 3, 38, 83, 88, 35, 33, 176, 192, 138, 138, 27, 138, 35, 89, 32, 176, 3, 38, 83, 88, 35, 33, 184, 1, 0, 138, 138, 27, 138, 35, 89, 32, 176, 3, 38, 83, 88, 35, 33, 184, 1, 64, 138, 138, 27, 138, 35, 89, 32, 176, 3, 38, 83, 88, 176, 3, 37, 69, 184, 1, 128, 80, 88, 35, 33, 184, 1, 128, 35, 33, 27, 176, 3, 37, 69, 35, 33, 35, 33, 89, 27, 33, 89, 68, 45, 176, 9, 44, 75, 83, 88, 69, 68, 27, 33, 33, 89, 45, 0, 0, 0, 176, 0, 43, 0, 178, 1, 7, 2, 43, 1, 178, 8, 7, 2, 43, 1, 183, 8, 66, 63, 48, 37, 24, 0, 8, 43, 183, 9, 83, 63, 61, 37, 24, 0, 8, 43, 183, 10, 103, 82, 61, 47, 24, 0, 8, 43, 183, 11, 76, 63, 48, 37, 24, 0, 8, 43, 183, 12, 83, 63, 48, 37, 24, 0, 8, 43, 183, 13, 97, 82, 61, 37, 24, 0, 8, 43, 183, 14, 33, 27, 21, 15, 9, 0, 8, 43, 0, 183, 1, 83, 63, 61, 37, 24, 0, 8, 43, 183, 2, 103, 82, 61, 47, 24, 0, 8, 43, 183, 3, 77, 63, 48, 37, 24, 0, 8, 43, 183, 4, 76, 63, 48, 37, 24, 0, 8, 43, 183, 5, 66, 63, 48, 37, 24, 0, 8, 43, 183, 6, 97, 82, 61, 37, 24, 0, 8, 43, 183, 7, 83, 63, 48, 37, 24, 0, 8, 43, 0, 178, 15, 4, 7, 43, 176, 0, 32, 69, 125, 105, 24, 68, 0, 0, 42, 0, 111, 0, 90, 0, 121, 0, 123, 0, 139, 0, 117, 0, 137, 0, 139, 0, 111, 0, 90, 0, 123, 0, 137, 0, 117, 1, 92, 0, 0, 0, 25, 254, 141, 0, 0, 3, 162, 0, 25, 5, 20, 0, 25, 0, 0, 0, 0, 0, 12, 0, 150, 0, 3, 0, 1, 4, 9, 0, 0, 0, 118, 0, 0, 0, 3, 0, 1, 4, 9, 0, 1, 0, 26, 0, 118, 0, 3, 0, 1, 4, 9, 0, 2, 0, 14, 0, 144, 0, 3, 0, 1, 4, 9, 0, 3, 0, 62, 0, 158, 0, 3, 0, 1, 4, 9, 0, 4, 0, 42, 0, 220, 0, 3, 0, 1, 4, 9, 0, 5, 0, 26, 1, 6, 0, 3, 0, 1, 4, 9, 0, 6, 0, 40, 1, 32, 0, 3, 0, 1, 4, 9, 0, 7, 0, 92, 1, 72, 0, 3, 0, 1, 4, 9, 0, 9, 0, 26, 1, 164, 0, 3, 0, 1, 4, 9, 0, 11, 0, 48, 1, 190, 0, 3, 0, 1, 4, 9, 0, 12, 0, 48, 1, 190, 0, 3, 0, 1, 4, 9, 0, 13, 56, 230, 1, 238, 0, 67, 0, 111, 0, 112, 0, 121, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 32, 0, 40, 0, 99, 0, 41, 0, 32, 0, 77, 0, 97, 0, 114, 0, 107, 0, 32, 0, 83, 0, 105, 0, 109, 0, 111, 0, 110, 0, 115, 0, 111, 0, 110, 0, 32, 0, 50, 0, 48, 0, 48, 0, 57, 0, 45, 0, 50, 0, 48, 0, 49, 0, 48, 0, 46, 0, 32, 0, 65, 0, 108, 0, 108, 0, 32, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 115, 0, 32, 0, 114, 0, 101, 0, 115, 0, 101, 0, 114, 0, 118, 0, 101, 0, 100, 0, 46, 0, 65, 0, 110, 0, 111, 0, 110, 0, 121, 0, 109, 0, 111, 0, 117, 0, 115, 0, 32, 0, 80, 0, 114, 0, 111, 0, 82, 0, 101, 0, 103, 0, 117, 0, 108, 0, 97, 0, 114, 0, 49, 0, 46, 0, 48, 0, 48, 0, 51, 0, 59, 0, 85, 0, 75, 0, 87, 0, 78, 0, 59, 0, 65, 0, 110, 0, 111, 0, 110, 0, 121, 0, 109, 0, 111, 0, 117, 0, 115, 0, 80, 0, 114, 0, 111, 0, 45, 0, 82, 0, 101, 0, 103, 0, 117, 0, 108, 0, 97, 0, 114, 0, 65, 0, 110, 0, 111, 0, 110, 0, 121, 0, 109, 0, 111, 0, 117, 0, 115, 0, 32, 0, 80, 0, 114, 0, 111, 0, 32, 0, 82, 0, 101, 0, 103, 0, 117, 0, 108, 0, 97, 0, 114, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 32, 0, 49, 0, 46, 0, 48, 0, 48, 0, 51, 0, 65, 0, 110, 0, 111, 0, 110, 0, 121, 0, 109, 0, 111, 0, 117, 0, 115, 0, 80, 0, 114, 0, 111, 0, 45, 0, 82, 0, 101, 0, 103, 0, 117, 0, 108, 0, 97, 0, 114, 0, 65, 0, 110, 0, 111, 0, 110, 0, 121, 0, 109, 0, 111, 0, 117, 0, 115, 0, 32, 0, 80, 0, 114, 0, 111, 0, 32, 0, 105, 0, 115, 0, 32, 0, 97, 0, 32, 0, 116, 0, 114, 0, 97, 0, 100, 0, 101, 0, 109, 0, 97, 0, 114, 0, 107, 0, 32, 0, 111, 0, 102, 0, 32, 0, 77, 0, 97, 0, 114, 0, 107, 0, 32, 0, 83, 0, 105, 0, 109, 0, 111, 0, 110, 0, 115, 0, 111, 0, 110, 0, 46, 0, 77, 0, 97, 0, 114, 0, 107, 0, 32, 0, 83, 0, 105, 0, 109, 0, 111, 0, 110, 0, 115, 0, 111, 0, 110, 0, 104, 0, 116, 0, 116, 0, 112, 0, 58, 0, 47, 0, 47, 0, 119, 0, 119, 0, 119, 0, 46, 0, 109, 0, 115, 0, 45, 0, 115, 0, 116, 0, 117, 0, 100, 0, 105, 0, 111, 0, 46, 0, 99, 0, 111, 0, 109, 0, 67, 0, 111, 0, 112, 0, 121, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 32, 0, 40, 0, 99, 0, 41, 0, 32, 0, 50, 0, 48, 0, 48, 0, 57, 0, 44, 0, 32, 0, 77, 0, 97, 0, 114, 0, 107, 0, 32, 0, 83, 0, 105, 0, 109, 0, 111, 0, 110, 0, 115, 0, 111, 0, 110, 0, 32, 0, 40, 0, 104, 0, 116, 0, 116, 0, 112, 0, 58, 0, 47, 0, 47, 0, 119, 0, 119, 0, 119, 0, 46, 0, 109, 0, 115, 0, 45, 0, 115, 0, 116, 0, 117, 0, 100, 0, 105, 0, 111, 0, 46, 0, 99, 0, 111, 0, 109, 0, 44, 0, 32, 0, 109, 0, 97, 0, 114, 0, 107, 0, 64, 0, 109, 0, 97, 0, 114, 0, 107, 0, 115, 0, 105, 0, 109, 0, 111, 0, 110, 0, 115, 0, 111, 0, 110, 0, 46, 0, 99, 0, 111, 0, 109, 0, 41, 0, 44, 0, 32, 0, 119, 0, 105, 0, 116, 0, 104, 0, 32, 0, 82, 0, 101, 0, 115, 0, 101, 0, 114, 0, 118, 0, 101, 0, 100, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 78, 0, 97, 0, 109, 0, 101, 0, 32, 0, 65, 0, 110, 0, 111, 0, 110, 0, 121, 0, 109, 0, 111, 0, 117, 0, 115, 0, 32, 0, 80, 0, 114, 0, 111, 0, 46, 0, 13, 0, 13, 0, 84, 0, 104, 0, 105, 0, 115, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 32, 0, 105, 0, 115, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 100, 0, 32, 0, 117, 0, 110, 0, 100, 0, 101, 0, 114, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 83, 0, 73, 0, 76, 0, 32, 0, 79, 0, 112, 0, 101, 0, 110, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 76, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 44, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 32, 0, 49, 0, 46, 0, 49, 0, 46, 0, 13, 0, 67, 0, 111, 0, 112, 0, 121, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 32, 0, 40, 0, 99, 0, 41, 0, 32, 0, 50, 0, 48, 0, 48, 0, 57, 0, 44, 0, 32, 0, 77, 0, 97, 0, 114, 0, 107, 0, 32, 0, 83, 0, 105, 0, 109, 0, 111, 0, 110, 0, 115, 0, 111, 0, 110, 0, 32, 0, 40, 0, 104, 0, 116, 0, 116, 0, 112, 0, 58, 0, 47, 0, 47, 0, 119, 0, 119, 0, 119, 0, 46, 0, 109, 0, 115, 0, 45, 0, 115, 0, 116, 0, 117, 0, 100, 0, 105, 0, 111, 0, 46, 0, 99, 0, 111, 0, 109, 0, 44, 0, 32, 0, 109, 0, 97, 0, 114, 0, 107, 0, 64, 0, 109, 0, 97, 0, 114, 0, 107, 0, 115, 0, 105, 0, 109, 0, 111, 0, 110, 0, 115, 0, 111, 0, 110, 0, 46, 0, 99, 0, 111, 0, 109, 0, 41, 0, 44, 0, 32, 0, 119, 0, 105, 0, 116, 0, 104, 0, 32, 0, 82, 0, 101, 0, 115, 0, 101, 0, 114, 0, 118, 0, 101, 0, 100, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 78, 0, 97, 0, 109, 0, 101, 0, 32, 0, 65, 0, 110, 0, 111, 0, 110, 0, 121, 0, 109, 0, 111, 0, 117, 0, 115, 0, 32, 0, 80, 0, 114, 0, 111, 0, 46, 0, 13, 0, 13, 0, 84, 0, 104, 0, 105, 0, 115, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 32, 0, 105, 0, 115, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 100, 0, 32, 0, 117, 0, 110, 0, 100, 0, 101, 0, 114, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 83, 0, 73, 0, 76, 0, 32, 0, 79, 0, 112, 0, 101, 0, 110, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 76, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 44, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 32, 0, 49, 0, 46, 0, 49, 0, 46, 0, 32, 0, 84, 0, 104, 0, 105, 0, 115, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 32, 0, 105, 0, 115, 0, 32, 0, 99, 0, 111, 0, 112, 0, 105, 0, 101, 0, 100, 0, 32, 0, 98, 0, 101, 0, 108, 0, 111, 0, 119, 0, 44, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 105, 0, 115, 0, 32, 0, 97, 0, 108, 0, 115, 0, 111, 0, 32, 0, 97, 0, 118, 0, 97, 0, 105, 0, 108, 0, 97, 0, 98, 0, 108, 0, 101, 0, 32, 0, 119, 0, 105, 0, 116, 0, 104, 0, 32, 0, 97, 0, 32, 0, 70, 0, 65, 0, 81, 0, 32, 0, 97, 0, 116, 0, 58, 0, 32, 0, 104, 0, 116, 0, 116, 0, 112, 0, 58, 0, 47, 0, 47, 0, 115, 0, 99, 0, 114, 0, 105, 0, 112, 0, 116, 0, 115, 0, 46, 0, 115, 0, 105, 0, 108, 0, 46, 0, 111, 0, 114, 0, 103, 0, 47, 0, 79, 0, 70, 0, 76, 0, 13, 0, 13, 0, 13, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 32, 0, 83, 0, 73, 0, 76, 0, 32, 0, 79, 0, 80, 0, 69, 0, 78, 0, 32, 0, 70, 0, 79, 0, 78, 0, 84, 0, 32, 0, 76, 0, 73, 0, 67, 0, 69, 0, 78, 0, 83, 0, 69, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 32, 0, 49, 0, 46, 0, 49, 0, 32, 0, 45, 0, 32, 0, 50, 0, 54, 0, 32, 0, 70, 0, 101, 0, 98, 0, 114, 0, 117, 0, 97, 0, 114, 0, 121, 0, 32, 0, 50, 0, 48, 0, 48, 0, 55, 0, 32, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 45, 0, 13, 0, 13, 0, 80, 0, 82, 0, 69, 0, 65, 0, 77, 0, 66, 0, 76, 0, 69, 0, 32, 0, 84, 0, 104, 0, 101, 0, 32, 0, 103, 0, 111, 0, 97, 0, 108, 0, 115, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 79, 0, 112, 0, 101, 0, 110, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 76, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 32, 0, 40, 0, 79, 0, 70, 0, 76, 0, 41, 0, 32, 0, 97, 0, 114, 0, 101, 0, 32, 0, 116, 0, 111, 0, 32, 0, 115, 0, 116, 0, 105, 0, 109, 0, 117, 0, 108, 0, 97, 0, 116, 0, 101, 0, 32, 0, 119, 0, 111, 0, 114, 0, 108, 0, 100, 0, 119, 0, 105, 0, 100, 0, 101, 0, 32, 0, 100, 0, 101, 0, 118, 0, 101, 0, 108, 0, 111, 0, 112, 0, 109, 0, 101, 0, 110, 0, 116, 0, 32, 0, 111, 0, 102, 0, 32, 0, 99, 0, 111, 0, 108, 0, 108, 0, 97, 0, 98, 0, 111, 0, 114, 0, 97, 0, 116, 0, 105, 0, 118, 0, 101, 0, 32, 0, 102, 0, 111, 0, 110, 0, 116, 0, 32, 0, 112, 0, 114, 0, 111, 0, 106, 0, 101, 0, 99, 0, 116, 0, 115, 0, 44, 0, 32, 0, 116, 0, 111, 0, 32, 0, 115, 0, 117, 0, 112, 0, 112, 0, 111, 0, 114, 0, 116, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 102, 0, 111, 0, 110, 0, 116, 0, 32, 0, 99, 0, 114, 0, 101, 0, 97, 0, 116, 0, 105, 0, 111, 0, 110, 0, 32, 0, 101, 0, 102, 0, 102, 0, 111, 0, 114, 0, 116, 0, 115, 0, 32, 0, 111, 0, 102, 0, 32, 0, 97, 0, 99, 0, 97, 0, 100, 0, 101, 0, 109, 0, 105, 0, 99, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 108, 0, 105, 0, 110, 0, 103, 0, 117, 0, 105, 0, 115, 0, 116, 0, 105, 0, 99, 0, 32, 0, 99, 0, 111, 0, 109, 0, 109, 0, 117, 0, 110, 0, 105, 0, 116, 0, 105, 0, 101, 0, 115, 0, 44, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 116, 0, 111, 0, 32, 0, 112, 0, 114, 0, 111, 0, 118, 0, 105, 0, 100, 0, 101, 0, 32, 0, 97, 0, 32, 0, 102, 0, 114, 0, 101, 0, 101, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 111, 0, 112, 0, 101, 0, 110, 0, 32, 0, 102, 0, 114, 0, 97, 0, 109, 0, 101, 0, 119, 0, 111, 0, 114, 0, 107, 0, 32, 0, 105, 0, 110, 0, 32, 0, 119, 0, 104, 0, 105, 0, 99, 0, 104, 0, 32, 0, 102, 0, 111, 0, 110, 0, 116, 0, 115, 0, 32, 0, 109, 0, 97, 0, 121, 0, 32, 0, 98, 0, 101, 0, 32, 0, 115, 0, 104, 0, 97, 0, 114, 0, 101, 0, 100, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 105, 0, 109, 0, 112, 0, 114, 0, 111, 0, 118, 0, 101, 0, 100, 0, 32, 0, 105, 0, 110, 0, 32, 0, 112, 0, 97, 0, 114, 0, 116, 0, 110, 0, 101, 0, 114, 0, 115, 0, 104, 0, 105, 0, 112, 0, 32, 0, 119, 0, 105, 0, 116, 0, 104, 0, 32, 0, 111, 0, 116, 0, 104, 0, 101, 0, 114, 0, 115, 0, 46, 0, 13, 0, 13, 0, 84, 0, 104, 0, 101, 0, 32, 0, 79, 0, 70, 0, 76, 0, 32, 0, 97, 0, 108, 0, 108, 0, 111, 0, 119, 0, 115, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 100, 0, 32, 0, 102, 0, 111, 0, 110, 0, 116, 0, 115, 0, 32, 0, 116, 0, 111, 0, 32, 0, 98, 0, 101, 0, 32, 0, 117, 0, 115, 0, 101, 0, 100, 0, 44, 0, 32, 0, 115, 0, 116, 0, 117, 0, 100, 0, 105, 0, 101, 0, 100, 0, 44, 0, 32, 0, 109, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 114, 0, 101, 0, 100, 0, 105, 0, 115, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 101, 0, 100, 0, 32, 0, 102, 0, 114, 0, 101, 0, 101, 0, 108, 0, 121, 0, 32, 0, 97, 0, 115, 0, 32, 0, 108, 0, 111, 0, 110, 0, 103, 0, 32, 0, 97, 0, 115, 0, 32, 0, 116, 0, 104, 0, 101, 0, 121, 0, 32, 0, 97, 0, 114, 0, 101, 0, 32, 0, 110, 0, 111, 0, 116, 0, 32, 0, 115, 0, 111, 0, 108, 0, 100, 0, 32, 0, 98, 0, 121, 0, 32, 0, 116, 0, 104, 0, 101, 0, 109, 0, 115, 0, 101, 0, 108, 0, 118, 0, 101, 0, 115, 0, 46, 0, 32, 0, 84, 0, 104, 0, 101, 0, 32, 0, 102, 0, 111, 0, 110, 0, 116, 0, 115, 0, 44, 0, 32, 0, 105, 0, 110, 0, 99, 0, 108, 0, 117, 0, 100, 0, 105, 0, 110, 0, 103, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 100, 0, 101, 0, 114, 0, 105, 0, 118, 0, 97, 0, 116, 0, 105, 0, 118, 0, 101, 0, 32, 0, 119, 0, 111, 0, 114, 0, 107, 0, 115, 0, 44, 0, 32, 0, 99, 0, 97, 0, 110, 0, 32, 0, 98, 0, 101, 0, 32, 0, 98, 0, 117, 0, 110, 0, 100, 0, 108, 0, 101, 0, 100, 0, 44, 0, 32, 0, 101, 0, 109, 0, 98, 0, 101, 0, 100, 0, 100, 0, 101, 0, 100, 0, 44, 0, 32, 0, 114, 0, 101, 0, 100, 0, 105, 0, 115, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 101, 0, 100, 0, 32, 0, 97, 0, 110, 0, 100, 0, 47, 0, 111, 0, 114, 0, 32, 0, 115, 0, 111, 0, 108, 0, 100, 0, 32, 0, 119, 0, 105, 0, 116, 0, 104, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 115, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 32, 0, 112, 0, 114, 0, 111, 0, 118, 0, 105, 0, 100, 0, 101, 0, 100, 0, 32, 0, 116, 0, 104, 0, 97, 0, 116, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 114, 0, 101, 0, 115, 0, 101, 0, 114, 0, 118, 0, 101, 0, 100, 0, 32, 0, 110, 0, 97, 0, 109, 0, 101, 0, 115, 0, 32, 0, 97, 0, 114, 0, 101, 0, 32, 0, 110, 0, 111, 0, 116, 0, 32, 0, 117, 0, 115, 0, 101, 0, 100, 0, 32, 0, 98, 0, 121, 0, 32, 0, 100, 0, 101, 0, 114, 0, 105, 0, 118, 0, 97, 0, 116, 0, 105, 0, 118, 0, 101, 0, 32, 0, 119, 0, 111, 0, 114, 0, 107, 0, 115, 0, 46, 0, 32, 0, 84, 0, 104, 0, 101, 0, 32, 0, 102, 0, 111, 0, 110, 0, 116, 0, 115, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 100, 0, 101, 0, 114, 0, 105, 0, 118, 0, 97, 0, 116, 0, 105, 0, 118, 0, 101, 0, 115, 0, 44, 0, 32, 0, 104, 0, 111, 0, 119, 0, 101, 0, 118, 0, 101, 0, 114, 0, 44, 0, 32, 0, 99, 0, 97, 0, 110, 0, 110, 0, 111, 0, 116, 0, 32, 0, 98, 0, 101, 0, 32, 0, 114, 0, 101, 0, 108, 0, 101, 0, 97, 0, 115, 0, 101, 0, 100, 0, 32, 0, 117, 0, 110, 0, 100, 0, 101, 0, 114, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 111, 0, 116, 0, 104, 0, 101, 0, 114, 0, 32, 0, 116, 0, 121, 0, 112, 0, 101, 0, 32, 0, 111, 0, 102, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 46, 0, 32, 0, 84, 0, 104, 0, 101, 0, 32, 0, 114, 0, 101, 0, 113, 0, 117, 0, 105, 0, 114, 0, 101, 0, 109, 0, 101, 0, 110, 0, 116, 0, 32, 0, 102, 0, 111, 0, 114, 0, 32, 0, 102, 0, 111, 0, 110, 0, 116, 0, 115, 0, 32, 0, 116, 0, 111, 0, 32, 0, 114, 0, 101, 0, 109, 0, 97, 0, 105, 0, 110, 0, 32, 0, 117, 0, 110, 0, 100, 0, 101, 0, 114, 0, 32, 0, 116, 0, 104, 0, 105, 0, 115, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 32, 0, 100, 0, 111, 0, 101, 0, 115, 0, 32, 0, 110, 0, 111, 0, 116, 0, 32, 0, 97, 0, 112, 0, 112, 0, 108, 0, 121, 0, 32, 0, 116, 0, 111, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 100, 0, 111, 0, 99, 0, 117, 0, 109, 0, 101, 0, 110, 0, 116, 0, 32, 0, 99, 0, 114, 0, 101, 0, 97, 0, 116, 0, 101, 0, 100, 0, 32, 0, 117, 0, 115, 0, 105, 0, 110, 0, 103, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 102, 0, 111, 0, 110, 0, 116, 0, 115, 0, 32, 0, 111, 0, 114, 0, 32, 0, 116, 0, 104, 0, 101, 0, 105, 0, 114, 0, 32, 0, 100, 0, 101, 0, 114, 0, 105, 0, 118, 0, 97, 0, 116, 0, 105, 0, 118, 0, 101, 0, 115, 0, 46, 0, 13, 0, 13, 0, 68, 0, 69, 0, 70, 0, 73, 0, 78, 0, 73, 0, 84, 0, 73, 0, 79, 0, 78, 0, 83, 0, 32, 0, 34, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 34, 0, 32, 0, 114, 0, 101, 0, 102, 0, 101, 0, 114, 0, 115, 0, 32, 0, 116, 0, 111, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 115, 0, 101, 0, 116, 0, 32, 0, 111, 0, 102, 0, 32, 0, 102, 0, 105, 0, 108, 0, 101, 0, 115, 0, 32, 0, 114, 0, 101, 0, 108, 0, 101, 0, 97, 0, 115, 0, 101, 0, 100, 0, 32, 0, 98, 0, 121, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 67, 0, 111, 0, 112, 0, 121, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 32, 0, 72, 0, 111, 0, 108, 0, 100, 0, 101, 0, 114, 0, 40, 0, 115, 0, 41, 0, 32, 0, 117, 0, 110, 0, 100, 0, 101, 0, 114, 0, 32, 0, 116, 0, 104, 0, 105, 0, 115, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 99, 0, 108, 0, 101, 0, 97, 0, 114, 0, 108, 0, 121, 0, 32, 0, 109, 0, 97, 0, 114, 0, 107, 0, 101, 0, 100, 0, 32, 0, 97, 0, 115, 0, 32, 0, 115, 0, 117, 0, 99, 0, 104, 0, 46, 0, 32, 0, 84, 0, 104, 0, 105, 0, 115, 0, 32, 0, 109, 0, 97, 0, 121, 0, 32, 0, 105, 0, 110, 0, 99, 0, 108, 0, 117, 0, 100, 0, 101, 0, 32, 0, 115, 0, 111, 0, 117, 0, 114, 0, 99, 0, 101, 0, 32, 0, 102, 0, 105, 0, 108, 0, 101, 0, 115, 0, 44, 0, 32, 0, 98, 0, 117, 0, 105, 0, 108, 0, 100, 0, 32, 0, 115, 0, 99, 0, 114, 0, 105, 0, 112, 0, 116, 0, 115, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 100, 0, 111, 0, 99, 0, 117, 0, 109, 0, 101, 0, 110, 0, 116, 0, 97, 0, 116, 0, 105, 0, 111, 0, 110, 0, 46, 0, 13, 0, 13, 0, 34, 0, 82, 0, 101, 0, 115, 0, 101, 0, 114, 0, 118, 0, 101, 0, 100, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 78, 0, 97, 0, 109, 0, 101, 0, 34, 0, 32, 0, 114, 0, 101, 0, 102, 0, 101, 0, 114, 0, 115, 0, 32, 0, 116, 0, 111, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 110, 0, 97, 0, 109, 0, 101, 0, 115, 0, 32, 0, 115, 0, 112, 0, 101, 0, 99, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 97, 0, 115, 0, 32, 0, 115, 0, 117, 0, 99, 0, 104, 0, 32, 0, 97, 0, 102, 0, 116, 0, 101, 0, 114, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 99, 0, 111, 0, 112, 0, 121, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 32, 0, 115, 0, 116, 0, 97, 0, 116, 0, 101, 0, 109, 0, 101, 0, 110, 0, 116, 0, 40, 0, 115, 0, 41, 0, 46, 0, 13, 0, 13, 0, 34, 0, 79, 0, 114, 0, 105, 0, 103, 0, 105, 0, 110, 0, 97, 0, 108, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 34, 0, 32, 0, 114, 0, 101, 0, 102, 0, 101, 0, 114, 0, 115, 0, 32, 0, 116, 0, 111, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 99, 0, 111, 0, 108, 0, 108, 0, 101, 0, 99, 0, 116, 0, 105, 0, 111, 0, 110, 0, 32, 0, 111, 0, 102, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 32, 0, 99, 0, 111, 0, 109, 0, 112, 0, 111, 0, 110, 0, 101, 0, 110, 0, 116, 0, 115, 0, 32, 0, 97, 0, 115, 0, 32, 0, 100, 0, 105, 0, 115, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 101, 0, 100, 0, 32, 0, 98, 0, 121, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 67, 0, 111, 0, 112, 0, 121, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 32, 0, 72, 0, 111, 0, 108, 0, 100, 0, 101, 0, 114, 0, 40, 0, 115, 0, 41, 0, 46, 0, 13, 0, 13, 0, 34, 0, 77, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 34, 0, 32, 0, 114, 0, 101, 0, 102, 0, 101, 0, 114, 0, 115, 0, 32, 0, 116, 0, 111, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 100, 0, 101, 0, 114, 0, 105, 0, 118, 0, 97, 0, 116, 0, 105, 0, 118, 0, 101, 0, 32, 0, 109, 0, 97, 0, 100, 0, 101, 0, 32, 0, 98, 0, 121, 0, 32, 0, 97, 0, 100, 0, 100, 0, 105, 0, 110, 0, 103, 0, 32, 0, 116, 0, 111, 0, 44, 0, 32, 0, 100, 0, 101, 0, 108, 0, 101, 0, 116, 0, 105, 0, 110, 0, 103, 0, 44, 0, 32, 0, 111, 0, 114, 0, 32, 0, 115, 0, 117, 0, 98, 0, 115, 0, 116, 0, 105, 0, 116, 0, 117, 0, 116, 0, 105, 0, 110, 0, 103, 0, 32, 0, 45, 0, 45, 0, 32, 0, 105, 0, 110, 0, 32, 0, 112, 0, 97, 0, 114, 0, 116, 0, 32, 0, 111, 0, 114, 0, 32, 0, 105, 0, 110, 0, 32, 0, 119, 0, 104, 0, 111, 0, 108, 0, 101, 0, 32, 0, 45, 0, 45, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 99, 0, 111, 0, 109, 0, 112, 0, 111, 0, 110, 0, 101, 0, 110, 0, 116, 0, 115, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 79, 0, 114, 0, 105, 0, 103, 0, 105, 0, 110, 0, 97, 0, 108, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 44, 0, 32, 0, 98, 0, 121, 0, 32, 0, 99, 0, 104, 0, 97, 0, 110, 0, 103, 0, 105, 0, 110, 0, 103, 0, 32, 0, 102, 0, 111, 0, 114, 0, 109, 0, 97, 0, 116, 0, 115, 0, 32, 0, 111, 0, 114, 0, 32, 0, 98, 0, 121, 0, 32, 0, 112, 0, 111, 0, 114, 0, 116, 0, 105, 0, 110, 0, 103, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 32, 0, 116, 0, 111, 0, 32, 0, 97, 0, 32, 0, 110, 0, 101, 0, 119, 0, 32, 0, 101, 0, 110, 0, 118, 0, 105, 0, 114, 0, 111, 0, 110, 0, 109, 0, 101, 0, 110, 0, 116, 0, 46, 0, 13, 0, 13, 0, 34, 0, 65, 0, 117, 0, 116, 0, 104, 0, 111, 0, 114, 0, 34, 0, 32, 0, 114, 0, 101, 0, 102, 0, 101, 0, 114, 0, 115, 0, 32, 0, 116, 0, 111, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 100, 0, 101, 0, 115, 0, 105, 0, 103, 0, 110, 0, 101, 0, 114, 0, 44, 0, 32, 0, 101, 0, 110, 0, 103, 0, 105, 0, 110, 0, 101, 0, 101, 0, 114, 0, 44, 0, 32, 0, 112, 0, 114, 0, 111, 0, 103, 0, 114, 0, 97, 0, 109, 0, 109, 0, 101, 0, 114, 0, 44, 0, 32, 0, 116, 0, 101, 0, 99, 0, 104, 0, 110, 0, 105, 0, 99, 0, 97, 0, 108, 0, 32, 0, 119, 0, 114, 0, 105, 0, 116, 0, 101, 0, 114, 0, 32, 0, 111, 0, 114, 0, 32, 0, 111, 0, 116, 0, 104, 0, 101, 0, 114, 0, 32, 0, 112, 0, 101, 0, 114, 0, 115, 0, 111, 0, 110, 0, 32, 0, 119, 0, 104, 0, 111, 0, 32, 0, 99, 0, 111, 0, 110, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 101, 0, 100, 0, 32, 0, 116, 0, 111, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 46, 0, 13, 0, 13, 0, 80, 0, 69, 0, 82, 0, 77, 0, 73, 0, 83, 0, 83, 0, 73, 0, 79, 0, 78, 0, 32, 0, 38, 0, 32, 0, 67, 0, 79, 0, 78, 0, 68, 0, 73, 0, 84, 0, 73, 0, 79, 0, 78, 0, 83, 0, 32, 0, 80, 0, 101, 0, 114, 0, 109, 0, 105, 0, 115, 0, 115, 0, 105, 0, 111, 0, 110, 0, 32, 0, 105, 0, 115, 0, 32, 0, 104, 0, 101, 0, 114, 0, 101, 0, 98, 0, 121, 0, 32, 0, 103, 0, 114, 0, 97, 0, 110, 0, 116, 0, 101, 0, 100, 0, 44, 0, 32, 0, 102, 0, 114, 0, 101, 0, 101, 0, 32, 0, 111, 0, 102, 0, 32, 0, 99, 0, 104, 0, 97, 0, 114, 0, 103, 0, 101, 0, 44, 0, 32, 0, 116, 0, 111, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 112, 0, 101, 0, 114, 0, 115, 0, 111, 0, 110, 0, 32, 0, 111, 0, 98, 0, 116, 0, 97, 0, 105, 0, 110, 0, 105, 0, 110, 0, 103, 0, 32, 0, 97, 0, 32, 0, 99, 0, 111, 0, 112, 0, 121, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 44, 0, 32, 0, 116, 0, 111, 0, 32, 0, 117, 0, 115, 0, 101, 0, 44, 0, 32, 0, 115, 0, 116, 0, 117, 0, 100, 0, 121, 0, 44, 0, 32, 0, 99, 0, 111, 0, 112, 0, 121, 0, 44, 0, 32, 0, 109, 0, 101, 0, 114, 0, 103, 0, 101, 0, 44, 0, 32, 0, 101, 0, 109, 0, 98, 0, 101, 0, 100, 0, 44, 0, 32, 0, 109, 0, 111, 0, 100, 0, 105, 0, 102, 0, 121, 0, 44, 0, 32, 0, 114, 0, 101, 0, 100, 0, 105, 0, 115, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 101, 0, 44, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 115, 0, 101, 0, 108, 0, 108, 0, 32, 0, 109, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 117, 0, 110, 0, 109, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 99, 0, 111, 0, 112, 0, 105, 0, 101, 0, 115, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 44, 0, 32, 0, 115, 0, 117, 0, 98, 0, 106, 0, 101, 0, 99, 0, 116, 0, 32, 0, 116, 0, 111, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 102, 0, 111, 0, 108, 0, 108, 0, 111, 0, 119, 0, 105, 0, 110, 0, 103, 0, 32, 0, 99, 0, 111, 0, 110, 0, 100, 0, 105, 0, 116, 0, 105, 0, 111, 0, 110, 0, 115, 0, 58, 0, 13, 0, 13, 0, 49, 0, 41, 0, 32, 0, 78, 0, 101, 0, 105, 0, 116, 0, 104, 0, 101, 0, 114, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 32, 0, 110, 0, 111, 0, 114, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 111, 0, 102, 0, 32, 0, 105, 0, 116, 0, 115, 0, 32, 0, 105, 0, 110, 0, 100, 0, 105, 0, 118, 0, 105, 0, 100, 0, 117, 0, 97, 0, 108, 0, 32, 0, 99, 0, 111, 0, 109, 0, 112, 0, 111, 0, 110, 0, 101, 0, 110, 0, 116, 0, 115, 0, 44, 0, 32, 0, 105, 0, 110, 0, 32, 0, 79, 0, 114, 0, 105, 0, 103, 0, 105, 0, 110, 0, 97, 0, 108, 0, 32, 0, 111, 0, 114, 0, 32, 0, 77, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 115, 0, 44, 0, 32, 0, 109, 0, 97, 0, 121, 0, 32, 0, 98, 0, 101, 0, 32, 0, 115, 0, 111, 0, 108, 0, 100, 0, 32, 0, 98, 0, 121, 0, 32, 0, 105, 0, 116, 0, 115, 0, 101, 0, 108, 0, 102, 0, 46, 0, 13, 0, 13, 0, 50, 0, 41, 0, 32, 0, 79, 0, 114, 0, 105, 0, 103, 0, 105, 0, 110, 0, 97, 0, 108, 0, 32, 0, 111, 0, 114, 0, 32, 0, 77, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 115, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 32, 0, 109, 0, 97, 0, 121, 0, 32, 0, 98, 0, 101, 0, 32, 0, 98, 0, 117, 0, 110, 0, 100, 0, 108, 0, 101, 0, 100, 0, 44, 0, 32, 0, 114, 0, 101, 0, 100, 0, 105, 0, 115, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 101, 0, 100, 0, 32, 0, 97, 0, 110, 0, 100, 0, 47, 0, 111, 0, 114, 0, 32, 0, 115, 0, 111, 0, 108, 0, 100, 0, 32, 0, 119, 0, 105, 0, 116, 0, 104, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 115, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 44, 0, 32, 0, 112, 0, 114, 0, 111, 0, 118, 0, 105, 0, 100, 0, 101, 0, 100, 0, 32, 0, 116, 0, 104, 0, 97, 0, 116, 0, 32, 0, 101, 0, 97, 0, 99, 0, 104, 0, 32, 0, 99, 0, 111, 0, 112, 0, 121, 0, 32, 0, 99, 0, 111, 0, 110, 0, 116, 0, 97, 0, 105, 0, 110, 0, 115, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 97, 0, 98, 0, 111, 0, 118, 0, 101, 0, 32, 0, 99, 0, 111, 0, 112, 0, 121, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 32, 0, 110, 0, 111, 0, 116, 0, 105, 0, 99, 0, 101, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 116, 0, 104, 0, 105, 0, 115, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 46, 0, 32, 0, 84, 0, 104, 0, 101, 0, 115, 0, 101, 0, 32, 0, 99, 0, 97, 0, 110, 0, 32, 0, 98, 0, 101, 0, 32, 0, 105, 0, 110, 0, 99, 0, 108, 0, 117, 0, 100, 0, 101, 0, 100, 0, 32, 0, 101, 0, 105, 0, 116, 0, 104, 0, 101, 0, 114, 0, 32, 0, 97, 0, 115, 0, 32, 0, 115, 0, 116, 0, 97, 0, 110, 0, 100, 0, 45, 0, 97, 0, 108, 0, 111, 0, 110, 0, 101, 0, 32, 0, 116, 0, 101, 0, 120, 0, 116, 0, 32, 0, 102, 0, 105, 0, 108, 0, 101, 0, 115, 0, 44, 0, 32, 0, 104, 0, 117, 0, 109, 0, 97, 0, 110, 0, 45, 0, 114, 0, 101, 0, 97, 0, 100, 0, 97, 0, 98, 0, 108, 0, 101, 0, 32, 0, 104, 0, 101, 0, 97, 0, 100, 0, 101, 0, 114, 0, 115, 0, 32, 0, 111, 0, 114, 0, 32, 0, 105, 0, 110, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 97, 0, 112, 0, 112, 0, 114, 0, 111, 0, 112, 0, 114, 0, 105, 0, 97, 0, 116, 0, 101, 0, 32, 0, 109, 0, 97, 0, 99, 0, 104, 0, 105, 0, 110, 0, 101, 0, 45, 0, 114, 0, 101, 0, 97, 0, 100, 0, 97, 0, 98, 0, 108, 0, 101, 0, 32, 0, 109, 0, 101, 0, 116, 0, 97, 0, 100, 0, 97, 0, 116, 0, 97, 0, 32, 0, 102, 0, 105, 0, 101, 0, 108, 0, 100, 0, 115, 0, 32, 0, 119, 0, 105, 0, 116, 0, 104, 0, 105, 0, 110, 0, 32, 0, 116, 0, 101, 0, 120, 0, 116, 0, 32, 0, 111, 0, 114, 0, 32, 0, 98, 0, 105, 0, 110, 0, 97, 0, 114, 0, 121, 0, 32, 0, 102, 0, 105, 0, 108, 0, 101, 0, 115, 0, 32, 0, 97, 0, 115, 0, 32, 0, 108, 0, 111, 0, 110, 0, 103, 0, 32, 0, 97, 0, 115, 0, 32, 0, 116, 0, 104, 0, 111, 0, 115, 0, 101, 0, 32, 0, 102, 0, 105, 0, 101, 0, 108, 0, 100, 0, 115, 0, 32, 0, 99, 0, 97, 0, 110, 0, 32, 0, 98, 0, 101, 0, 32, 0, 101, 0, 97, 0, 115, 0, 105, 0, 108, 0, 121, 0, 32, 0, 118, 0, 105, 0, 101, 0, 119, 0, 101, 0, 100, 0, 32, 0, 98, 0, 121, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 117, 0, 115, 0, 101, 0, 114, 0, 46, 0, 13, 0, 13, 0, 51, 0, 41, 0, 32, 0, 78, 0, 111, 0, 32, 0, 77, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 32, 0, 109, 0, 97, 0, 121, 0, 32, 0, 117, 0, 115, 0, 101, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 82, 0, 101, 0, 115, 0, 101, 0, 114, 0, 118, 0, 101, 0, 100, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 78, 0, 97, 0, 109, 0, 101, 0, 40, 0, 115, 0, 41, 0, 32, 0, 117, 0, 110, 0, 108, 0, 101, 0, 115, 0, 115, 0, 32, 0, 101, 0, 120, 0, 112, 0, 108, 0, 105, 0, 99, 0, 105, 0, 116, 0, 32, 0, 119, 0, 114, 0, 105, 0, 116, 0, 116, 0, 101, 0, 110, 0, 32, 0, 112, 0, 101, 0, 114, 0, 109, 0, 105, 0, 115, 0, 115, 0, 105, 0, 111, 0, 110, 0, 32, 0, 105, 0, 115, 0, 32, 0, 103, 0, 114, 0, 97, 0, 110, 0, 116, 0, 101, 0, 100, 0, 32, 0, 98, 0, 121, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 99, 0, 111, 0, 114, 0, 114, 0, 101, 0, 115, 0, 112, 0, 111, 0, 110, 0, 100, 0, 105, 0, 110, 0, 103, 0, 32, 0, 67, 0, 111, 0, 112, 0, 121, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 32, 0, 72, 0, 111, 0, 108, 0, 100, 0, 101, 0, 114, 0, 46, 0, 32, 0, 84, 0, 104, 0, 105, 0, 115, 0, 32, 0, 114, 0, 101, 0, 115, 0, 116, 0, 114, 0, 105, 0, 99, 0, 116, 0, 105, 0, 111, 0, 110, 0, 32, 0, 111, 0, 110, 0, 108, 0, 121, 0, 32, 0, 97, 0, 112, 0, 112, 0, 108, 0, 105, 0, 101, 0, 115, 0, 32, 0, 116, 0, 111, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 112, 0, 114, 0, 105, 0, 109, 0, 97, 0, 114, 0, 121, 0, 32, 0, 102, 0, 111, 0, 110, 0, 116, 0, 32, 0, 110, 0, 97, 0, 109, 0, 101, 0, 32, 0, 97, 0, 115, 0, 32, 0, 112, 0, 114, 0, 101, 0, 115, 0, 101, 0, 110, 0, 116, 0, 101, 0, 100, 0, 32, 0, 116, 0, 111, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 117, 0, 115, 0, 101, 0, 114, 0, 115, 0, 46, 0, 13, 0, 13, 0, 52, 0, 41, 0, 32, 0, 84, 0, 104, 0, 101, 0, 32, 0, 110, 0, 97, 0, 109, 0, 101, 0, 40, 0, 115, 0, 41, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 67, 0, 111, 0, 112, 0, 121, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 32, 0, 72, 0, 111, 0, 108, 0, 100, 0, 101, 0, 114, 0, 40, 0, 115, 0, 41, 0, 32, 0, 111, 0, 114, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 65, 0, 117, 0, 116, 0, 104, 0, 111, 0, 114, 0, 40, 0, 115, 0, 41, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 32, 0, 115, 0, 104, 0, 97, 0, 108, 0, 108, 0, 32, 0, 110, 0, 111, 0, 116, 0, 32, 0, 98, 0, 101, 0, 32, 0, 117, 0, 115, 0, 101, 0, 100, 0, 32, 0, 116, 0, 111, 0, 32, 0, 112, 0, 114, 0, 111, 0, 109, 0, 111, 0, 116, 0, 101, 0, 44, 0, 32, 0, 101, 0, 110, 0, 100, 0, 111, 0, 114, 0, 115, 0, 101, 0, 32, 0, 111, 0, 114, 0, 32, 0, 97, 0, 100, 0, 118, 0, 101, 0, 114, 0, 116, 0, 105, 0, 115, 0, 101, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 77, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 44, 0, 32, 0, 101, 0, 120, 0, 99, 0, 101, 0, 112, 0, 116, 0, 32, 0, 116, 0, 111, 0, 32, 0, 97, 0, 99, 0, 107, 0, 110, 0, 111, 0, 119, 0, 108, 0, 101, 0, 100, 0, 103, 0, 101, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 99, 0, 111, 0, 110, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 105, 0, 111, 0, 110, 0, 40, 0, 115, 0, 41, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 67, 0, 111, 0, 112, 0, 121, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 32, 0, 72, 0, 111, 0, 108, 0, 100, 0, 101, 0, 114, 0, 40, 0, 115, 0, 41, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 65, 0, 117, 0, 116, 0, 104, 0, 111, 0, 114, 0, 40, 0, 115, 0, 41, 0, 32, 0, 111, 0, 114, 0, 32, 0, 119, 0, 105, 0, 116, 0, 104, 0, 32, 0, 116, 0, 104, 0, 101, 0, 105, 0, 114, 0, 32, 0, 101, 0, 120, 0, 112, 0, 108, 0, 105, 0, 99, 0, 105, 0, 116, 0, 32, 0, 119, 0, 114, 0, 105, 0, 116, 0, 116, 0, 101, 0, 110, 0, 32, 0, 112, 0, 101, 0, 114, 0, 109, 0, 105, 0, 115, 0, 115, 0, 105, 0, 111, 0, 110, 0, 46, 0, 13, 0, 13, 0, 53, 0, 41, 0, 32, 0, 84, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 44, 0, 32, 0, 109, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 111, 0, 114, 0, 32, 0, 117, 0, 110, 0, 109, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 44, 0, 32, 0, 105, 0, 110, 0, 32, 0, 112, 0, 97, 0, 114, 0, 116, 0, 32, 0, 111, 0, 114, 0, 32, 0, 105, 0, 110, 0, 32, 0, 119, 0, 104, 0, 111, 0, 108, 0, 101, 0, 44, 0, 32, 0, 109, 0, 117, 0, 115, 0, 116, 0, 32, 0, 98, 0, 101, 0, 32, 0, 100, 0, 105, 0, 115, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 101, 0, 100, 0, 32, 0, 101, 0, 110, 0, 116, 0, 105, 0, 114, 0, 101, 0, 108, 0, 121, 0, 32, 0, 117, 0, 110, 0, 100, 0, 101, 0, 114, 0, 32, 0, 116, 0, 104, 0, 105, 0, 115, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 44, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 109, 0, 117, 0, 115, 0, 116, 0, 32, 0, 110, 0, 111, 0, 116, 0, 32, 0, 98, 0, 101, 0, 32, 0, 100, 0, 105, 0, 115, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 101, 0, 100, 0, 32, 0, 117, 0, 110, 0, 100, 0, 101, 0, 114, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 111, 0, 116, 0, 104, 0, 101, 0, 114, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 46, 0, 32, 0, 84, 0, 104, 0, 101, 0, 32, 0, 114, 0, 101, 0, 113, 0, 117, 0, 105, 0, 114, 0, 101, 0, 109, 0, 101, 0, 110, 0, 116, 0, 32, 0, 102, 0, 111, 0, 114, 0, 32, 0, 102, 0, 111, 0, 110, 0, 116, 0, 115, 0, 32, 0, 116, 0, 111, 0, 32, 0, 114, 0, 101, 0, 109, 0, 97, 0, 105, 0, 110, 0, 32, 0, 117, 0, 110, 0, 100, 0, 101, 0, 114, 0, 32, 0, 116, 0, 104, 0, 105, 0, 115, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 32, 0, 100, 0, 111, 0, 101, 0, 115, 0, 32, 0, 110, 0, 111, 0, 116, 0, 32, 0, 97, 0, 112, 0, 112, 0, 108, 0, 121, 0, 32, 0, 116, 0, 111, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 100, 0, 111, 0, 99, 0, 117, 0, 109, 0, 101, 0, 110, 0, 116, 0, 32, 0, 99, 0, 114, 0, 101, 0, 97, 0, 116, 0, 101, 0, 100, 0, 32, 0, 117, 0, 115, 0, 105, 0, 110, 0, 103, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 46, 0, 13, 0, 13, 0, 84, 0, 69, 0, 82, 0, 77, 0, 73, 0, 78, 0, 65, 0, 84, 0, 73, 0, 79, 0, 78, 0, 32, 0, 84, 0, 104, 0, 105, 0, 115, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 32, 0, 98, 0, 101, 0, 99, 0, 111, 0, 109, 0, 101, 0, 115, 0, 32, 0, 110, 0, 117, 0, 108, 0, 108, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 118, 0, 111, 0, 105, 0, 100, 0, 32, 0, 105, 0, 102, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 97, 0, 98, 0, 111, 0, 118, 0, 101, 0, 32, 0, 99, 0, 111, 0, 110, 0, 100, 0, 105, 0, 116, 0, 105, 0, 111, 0, 110, 0, 115, 0, 32, 0, 97, 0, 114, 0, 101, 0, 32, 0, 110, 0, 111, 0, 116, 0, 32, 0, 109, 0, 101, 0, 116, 0, 46, 0, 13, 0, 13, 0, 68, 0, 73, 0, 83, 0, 67, 0, 76, 0, 65, 0, 73, 0, 77, 0, 69, 0, 82, 0, 32, 0, 84, 0, 72, 0, 69, 0, 32, 0, 70, 0, 79, 0, 78, 0, 84, 0, 32, 0, 83, 0, 79, 0, 70, 0, 84, 0, 87, 0, 65, 0, 82, 0, 69, 0, 32, 0, 73, 0, 83, 0, 32, 0, 80, 0, 82, 0, 79, 0, 86, 0, 73, 0, 68, 0, 69, 0, 68, 0, 32, 0, 34, 0, 65, 0, 83, 0, 32, 0, 73, 0, 83, 0, 34, 0, 44, 0, 32, 0, 87, 0, 73, 0, 84, 0, 72, 0, 79, 0, 85, 0, 84, 0, 32, 0, 87, 0, 65, 0, 82, 0, 82, 0, 65, 0, 78, 0, 84, 0, 89, 0, 32, 0, 79, 0, 70, 0, 32, 0, 65, 0, 78, 0, 89, 0, 32, 0, 75, 0, 73, 0, 78, 0, 68, 0, 44, 0, 32, 0, 69, 0, 88, 0, 80, 0, 82, 0, 69, 0, 83, 0, 83, 0, 32, 0, 79, 0, 82, 0, 32, 0, 73, 0, 77, 0, 80, 0, 76, 0, 73, 0, 69, 0, 68, 0, 44, 0, 32, 0, 73, 0, 78, 0, 67, 0, 76, 0, 85, 0, 68, 0, 73, 0, 78, 0, 71, 0, 32, 0, 66, 0, 85, 0, 84, 0, 32, 0, 78, 0, 79, 0, 84, 0, 32, 0, 76, 0, 73, 0, 77, 0, 73, 0, 84, 0, 69, 0, 68, 0, 32, 0, 84, 0, 79, 0, 32, 0, 65, 0, 78, 0, 89, 0, 32, 0, 87, 0, 65, 0, 82, 0, 82, 0, 65, 0, 78, 0, 84, 0, 73, 0, 69, 0, 83, 0, 32, 0, 79, 0, 70, 0, 32, 0, 77, 0, 69, 0, 82, 0, 67, 0, 72, 0, 65, 0, 78, 0, 84, 0, 65, 0, 66, 0, 73, 0, 76, 0, 73, 0, 84, 0, 89, 0, 44, 0, 32, 0, 70, 0, 73, 0, 84, 0, 78, 0, 69, 0, 83, 0, 83, 0, 32, 0, 70, 0, 79, 0, 82, 0, 32, 0, 65, 0, 32, 0, 80, 0, 65, 0, 82, 0, 84, 0, 73, 0, 67, 0, 85, 0, 76, 0, 65, 0, 82, 0, 32, 0, 80, 0, 85, 0, 82, 0, 80, 0, 79, 0, 83, 0, 69, 0, 32, 0, 65, 0, 78, 0, 68, 0, 32, 0, 78, 0, 79, 0, 78, 0, 73, 0, 78, 0, 70, 0, 82, 0, 73, 0, 78, 0, 71, 0, 69, 0, 77, 0, 69, 0, 78, 0, 84, 0, 32, 0, 79, 0, 70, 0, 32, 0, 67, 0, 79, 0, 80, 0, 89, 0, 82, 0, 73, 0, 71, 0, 72, 0, 84, 0, 44, 0, 32, 0, 80, 0, 65, 0, 84, 0, 69, 0, 78, 0, 84, 0, 44, 0, 32, 0, 84, 0, 82, 0, 65, 0, 68, 0, 69, 0, 77, 0, 65, 0, 82, 0, 75, 0, 44, 0, 32, 0, 79, 0, 82, 0, 32, 0, 79, 0, 84, 0, 72, 0, 69, 0, 82, 0, 32, 0, 82, 0, 73, 0, 71, 0, 72, 0, 84, 0, 46, 0, 32, 0, 73, 0, 78, 0, 32, 0, 78, 0, 79, 0, 32, 0, 69, 0, 86, 0, 69, 0, 78, 0, 84, 0, 32, 0, 83, 0, 72, 0, 65, 0, 76, 0, 76, 0, 32, 0, 84, 0, 72, 0, 69, 0, 32, 0, 67, 0, 79, 0, 80, 0, 89, 0, 82, 0, 73, 0, 71, 0, 72, 0, 84, 0, 32, 0, 72, 0, 79, 0, 76, 0, 68, 0, 69, 0, 82, 0, 32, 0, 66, 0, 69, 0, 32, 0, 76, 0, 73, 0, 65, 0, 66, 0, 76, 0, 69, 0, 32, 0, 70, 0, 79, 0, 82, 0, 32, 0, 65, 0, 78, 0, 89, 0, 32, 0, 67, 0, 76, 0, 65, 0, 73, 0, 77, 0, 44, 0, 32, 0, 68, 0, 65, 0, 77, 0, 65, 0, 71, 0, 69, 0, 83, 0, 32, 0, 79, 0, 82, 0, 32, 0, 79, 0, 84, 0, 72, 0, 69, 0, 82, 0, 32, 0, 76, 0, 73, 0, 65, 0, 66, 0, 73, 0, 76, 0, 73, 0, 84, 0, 89, 0, 44, 0, 32, 0, 73, 0, 78, 0, 67, 0, 76, 0, 85, 0, 68, 0, 73, 0, 78, 0, 71, 0, 32, 0, 65, 0, 78, 0, 89, 0, 32, 0, 71, 0, 69, 0, 78, 0, 69, 0, 82, 0, 65, 0, 76, 0, 44, 0, 32, 0, 83, 0, 80, 0, 69, 0, 67, 0, 73, 0, 65, 0, 76, 0, 44, 0, 32, 0, 73, 0, 78, 0, 68, 0, 73, 0, 82, 0, 69, 0, 67, 0, 84, 0, 44, 0, 32, 0, 73, 0, 78, 0, 67, 0, 73, 0, 68, 0, 69, 0, 78, 0, 84, 0, 65, 0, 76, 0, 44, 0, 32, 0, 79, 0, 82, 0, 32, 0, 67, 0, 79, 0, 78, 0, 83, 0, 69, 0, 81, 0, 85, 0, 69, 0, 78, 0, 84, 0, 73, 0, 65, 0, 76, 0, 32, 0, 68, 0, 65, 0, 77, 0, 65, 0, 71, 0, 69, 0, 83, 0, 44, 0, 32, 0, 87, 0, 72, 0, 69, 0, 84, 0, 72, 0, 69, 0, 82, 0, 32, 0, 73, 0, 78, 0, 32, 0, 65, 0, 78, 0, 32, 0, 65, 0, 67, 0, 84, 0, 73, 0, 79, 0, 78, 0, 32, 0, 79, 0, 70, 0, 32, 0, 67, 0, 79, 0, 78, 0, 84, 0, 82, 0, 65, 0, 67, 0, 84, 0, 44, 0, 32, 0, 84, 0, 79, 0, 82, 0, 84, 0, 32, 0, 79, 0, 82, 0, 32, 0, 79, 0, 84, 0, 72, 0, 69, 0, 82, 0, 87, 0, 73, 0, 83, 0, 69, 0, 44, 0, 32, 0, 65, 0, 82, 0, 73, 0, 83, 0, 73, 0, 78, 0, 71, 0, 32, 0, 70, 0, 82, 0, 79, 0, 77, 0, 44, 0, 32, 0, 79, 0, 85, 0, 84, 0, 32, 0, 79, 0, 70, 0, 32, 0, 84, 0, 72, 0, 69, 0, 32, 0, 85, 0, 83, 0, 69, 0, 32, 0, 79, 0, 82, 0, 32, 0, 73, 0, 78, 0, 65, 0, 66, 0, 73, 0, 76, 0, 73, 0, 84, 0, 89, 0, 32, 0, 84, 0, 79, 0, 32, 0, 85, 0, 83, 0, 69, 0, 32, 0, 84, 0, 72, 0, 69, 0, 32, 0, 70, 0, 79, 0, 78, 0, 84, 0, 32, 0, 83, 0, 79, 0, 70, 0, 84, 0, 87, 0, 65, 0, 82, 0, 69, 0, 32, 0, 79, 0, 82, 0, 32, 0, 70, 0, 82, 0, 79, 0, 77, 0, 32, 0, 79, 0, 84, 0, 72, 0, 69, 0, 82, 0, 32, 0, 68, 0, 69, 0, 65, 0, 76, 0, 73, 0, 78, 0, 71, 0, 83, 0, 32, 0, 73, 0, 78, 0, 32, 0, 84, 0, 72, 0, 69, 0, 32, 0, 70, 0, 79, 0, 78, 0, 84, 0, 32, 0, 83, 0, 79, 0, 70, 0, 84, 0, 87, 0, 65, 0, 82, 0, 69, 0, 46, 0, 13, 0, 32, 0, 112, 0, 97, 0, 114, 0, 116, 0, 32, 0, 111, 0, 114, 0, 32, 0, 105, 0, 110, 0, 32, 0, 119, 0, 104, 0, 111, 0, 108, 0, 101, 0, 32, 0, 45, 0, 45, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 99, 0, 111, 0, 109, 0, 112, 0, 111, 0, 110, 0, 101, 0, 110, 0, 116, 0, 115, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 13, 0, 13, 0, 79, 0, 114, 0, 105, 0, 103, 0, 105, 0, 110, 0, 97, 0, 108, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 44, 0, 32, 0, 98, 0, 121, 0, 32, 0, 99, 0, 104, 0, 97, 0, 110, 0, 103, 0, 105, 0, 110, 0, 103, 0, 32, 0, 102, 0, 111, 0, 114, 0, 109, 0, 97, 0, 116, 0, 115, 0, 32, 0, 111, 0, 114, 0, 32, 0, 98, 0, 121, 0, 32, 0, 112, 0, 111, 0, 114, 0, 116, 0, 105, 0, 110, 0, 103, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 32, 0, 116, 0, 111, 0, 32, 0, 97, 0, 13, 0, 13, 0, 110, 0, 101, 0, 119, 0, 32, 0, 101, 0, 110, 0, 118, 0, 105, 0, 114, 0, 111, 0, 110, 0, 109, 0, 101, 0, 110, 0, 116, 0, 46, 0, 13, 0, 13, 0, 13, 0, 13, 0, 34, 0, 65, 0, 117, 0, 116, 0, 104, 0, 111, 0, 114, 0, 34, 0, 32, 0, 114, 0, 101, 0, 102, 0, 101, 0, 114, 0, 115, 0, 32, 0, 116, 0, 111, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 100, 0, 101, 0, 115, 0, 105, 0, 103, 0, 110, 0, 101, 0, 114, 0, 44, 0, 32, 0, 101, 0, 110, 0, 103, 0, 105, 0, 110, 0, 101, 0, 101, 0, 114, 0, 44, 0, 32, 0, 112, 0, 114, 0, 111, 0, 103, 0, 114, 0, 97, 0, 109, 0, 109, 0, 101, 0, 114, 0, 44, 0, 32, 0, 116, 0, 101, 0, 99, 0, 104, 0, 110, 0, 105, 0, 99, 0, 97, 0, 108, 0, 13, 0, 13, 0, 119, 0, 114, 0, 105, 0, 116, 0, 101, 0, 114, 0, 32, 0, 111, 0, 114, 0, 32, 0, 111, 0, 116, 0, 104, 0, 101, 0, 114, 0, 32, 0, 112, 0, 101, 0, 114, 0, 115, 0, 111, 0, 110, 0, 32, 0, 119, 0, 104, 0, 111, 0, 32, 0, 99, 0, 111, 0, 110, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 101, 0, 100, 0, 32, 0, 116, 0, 111, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 46, 0, 13, 0, 13, 0, 13, 0, 13, 0, 80, 0, 69, 0, 82, 0, 77, 0, 73, 0, 83, 0, 83, 0, 73, 0, 79, 0, 78, 0, 32, 0, 38, 0, 32, 0, 67, 0, 79, 0, 78, 0, 68, 0, 73, 0, 84, 0, 73, 0, 79, 0, 78, 0, 83, 0, 13, 0, 13, 0, 80, 0, 101, 0, 114, 0, 109, 0, 105, 0, 115, 0, 115, 0, 105, 0, 111, 0, 110, 0, 32, 0, 105, 0, 115, 0, 32, 0, 104, 0, 101, 0, 114, 0, 101, 0, 98, 0, 121, 0, 32, 0, 103, 0, 114, 0, 97, 0, 110, 0, 116, 0, 101, 0, 100, 0, 44, 0, 32, 0, 102, 0, 114, 0, 101, 0, 101, 0, 32, 0, 111, 0, 102, 0, 32, 0, 99, 0, 104, 0, 97, 0, 114, 0, 103, 0, 101, 0, 44, 0, 32, 0, 116, 0, 111, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 112, 0, 101, 0, 114, 0, 115, 0, 111, 0, 110, 0, 32, 0, 111, 0, 98, 0, 116, 0, 97, 0, 105, 0, 110, 0, 105, 0, 110, 0, 103, 0, 13, 0, 13, 0, 97, 0, 32, 0, 99, 0, 111, 0, 112, 0, 121, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 44, 0, 32, 0, 116, 0, 111, 0, 32, 0, 117, 0, 115, 0, 101, 0, 44, 0, 32, 0, 115, 0, 116, 0, 117, 0, 100, 0, 121, 0, 44, 0, 32, 0, 99, 0, 111, 0, 112, 0, 121, 0, 44, 0, 32, 0, 109, 0, 101, 0, 114, 0, 103, 0, 101, 0, 44, 0, 32, 0, 101, 0, 109, 0, 98, 0, 101, 0, 100, 0, 44, 0, 32, 0, 109, 0, 111, 0, 100, 0, 105, 0, 102, 0, 121, 0, 44, 0, 13, 0, 13, 0, 114, 0, 101, 0, 100, 0, 105, 0, 115, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 101, 0, 44, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 115, 0, 101, 0, 108, 0, 108, 0, 32, 0, 109, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 117, 0, 110, 0, 109, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 99, 0, 111, 0, 112, 0, 105, 0, 101, 0, 115, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 13, 0, 13, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 44, 0, 32, 0, 115, 0, 117, 0, 98, 0, 106, 0, 101, 0, 99, 0, 116, 0, 32, 0, 116, 0, 111, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 102, 0, 111, 0, 108, 0, 108, 0, 111, 0, 119, 0, 105, 0, 110, 0, 103, 0, 32, 0, 99, 0, 111, 0, 110, 0, 100, 0, 105, 0, 116, 0, 105, 0, 111, 0, 110, 0, 115, 0, 58, 0, 13, 0, 13, 0, 13, 0, 13, 0, 49, 0, 41, 0, 32, 0, 78, 0, 101, 0, 105, 0, 116, 0, 104, 0, 101, 0, 114, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 32, 0, 110, 0, 111, 0, 114, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 111, 0, 102, 0, 32, 0, 105, 0, 116, 0, 115, 0, 32, 0, 105, 0, 110, 0, 100, 0, 105, 0, 118, 0, 105, 0, 100, 0, 117, 0, 97, 0, 108, 0, 32, 0, 99, 0, 111, 0, 109, 0, 112, 0, 111, 0, 110, 0, 101, 0, 110, 0, 116, 0, 115, 0, 44, 0, 13, 0, 13, 0, 105, 0, 110, 0, 32, 0, 79, 0, 114, 0, 105, 0, 103, 0, 105, 0, 110, 0, 97, 0, 108, 0, 32, 0, 111, 0, 114, 0, 32, 0, 77, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 115, 0, 44, 0, 32, 0, 109, 0, 97, 0, 121, 0, 32, 0, 98, 0, 101, 0, 32, 0, 115, 0, 111, 0, 108, 0, 100, 0, 32, 0, 98, 0, 121, 0, 32, 0, 105, 0, 116, 0, 115, 0, 101, 0, 108, 0, 102, 0, 46, 0, 13, 0, 13, 0, 13, 0, 13, 0, 50, 0, 41, 0, 32, 0, 79, 0, 114, 0, 105, 0, 103, 0, 105, 0, 110, 0, 97, 0, 108, 0, 32, 0, 111, 0, 114, 0, 32, 0, 77, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 115, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 32, 0, 109, 0, 97, 0, 121, 0, 32, 0, 98, 0, 101, 0, 32, 0, 98, 0, 117, 0, 110, 0, 100, 0, 108, 0, 101, 0, 100, 0, 44, 0, 13, 0, 13, 0, 114, 0, 101, 0, 100, 0, 105, 0, 115, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 101, 0, 100, 0, 32, 0, 97, 0, 110, 0, 100, 0, 47, 0, 111, 0, 114, 0, 32, 0, 115, 0, 111, 0, 108, 0, 100, 0, 32, 0, 119, 0, 105, 0, 116, 0, 104, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 115, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 44, 0, 32, 0, 112, 0, 114, 0, 111, 0, 118, 0, 105, 0, 100, 0, 101, 0, 100, 0, 32, 0, 116, 0, 104, 0, 97, 0, 116, 0, 32, 0, 101, 0, 97, 0, 99, 0, 104, 0, 32, 0, 99, 0, 111, 0, 112, 0, 121, 0, 13, 0, 13, 0, 99, 0, 111, 0, 110, 0, 116, 0, 97, 0, 105, 0, 110, 0, 115, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 97, 0, 98, 0, 111, 0, 118, 0, 101, 0, 32, 0, 99, 0, 111, 0, 112, 0, 121, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 32, 0, 110, 0, 111, 0, 116, 0, 105, 0, 99, 0, 101, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 116, 0, 104, 0, 105, 0, 115, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 46, 0, 32, 0, 84, 0, 104, 0, 101, 0, 115, 0, 101, 0, 32, 0, 99, 0, 97, 0, 110, 0, 32, 0, 98, 0, 101, 0, 13, 0, 13, 0, 105, 0, 110, 0, 99, 0, 108, 0, 117, 0, 100, 0, 101, 0, 100, 0, 32, 0, 101, 0, 105, 0, 116, 0, 104, 0, 101, 0, 114, 0, 32, 0, 97, 0, 115, 0, 32, 0, 115, 0, 116, 0, 97, 0, 110, 0, 100, 0, 45, 0, 97, 0, 108, 0, 111, 0, 110, 0, 101, 0, 32, 0, 116, 0, 101, 0, 120, 0, 116, 0, 32, 0, 102, 0, 105, 0, 108, 0, 101, 0, 115, 0, 44, 0, 32, 0, 104, 0, 117, 0, 109, 0, 97, 0, 110, 0, 45, 0, 114, 0, 101, 0, 97, 0, 100, 0, 97, 0, 98, 0, 108, 0, 101, 0, 32, 0, 104, 0, 101, 0, 97, 0, 100, 0, 101, 0, 114, 0, 115, 0, 32, 0, 111, 0, 114, 0, 13, 0, 13, 0, 105, 0, 110, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 97, 0, 112, 0, 112, 0, 114, 0, 111, 0, 112, 0, 114, 0, 105, 0, 97, 0, 116, 0, 101, 0, 32, 0, 109, 0, 97, 0, 99, 0, 104, 0, 105, 0, 110, 0, 101, 0, 45, 0, 114, 0, 101, 0, 97, 0, 100, 0, 97, 0, 98, 0, 108, 0, 101, 0, 32, 0, 109, 0, 101, 0, 116, 0, 97, 0, 100, 0, 97, 0, 116, 0, 97, 0, 32, 0, 102, 0, 105, 0, 101, 0, 108, 0, 100, 0, 115, 0, 32, 0, 119, 0, 105, 0, 116, 0, 104, 0, 105, 0, 110, 0, 32, 0, 116, 0, 101, 0, 120, 0, 116, 0, 32, 0, 111, 0, 114, 0, 13, 0, 13, 0, 98, 0, 105, 0, 110, 0, 97, 0, 114, 0, 121, 0, 32, 0, 102, 0, 105, 0, 108, 0, 101, 0, 115, 0, 32, 0, 97, 0, 115, 0, 32, 0, 108, 0, 111, 0, 110, 0, 103, 0, 32, 0, 97, 0, 115, 0, 32, 0, 116, 0, 104, 0, 111, 0, 115, 0, 101, 0, 32, 0, 102, 0, 105, 0, 101, 0, 108, 0, 100, 0, 115, 0, 32, 0, 99, 0, 97, 0, 110, 0, 32, 0, 98, 0, 101, 0, 32, 0, 101, 0, 97, 0, 115, 0, 105, 0, 108, 0, 121, 0, 32, 0, 118, 0, 105, 0, 101, 0, 119, 0, 101, 0, 100, 0, 32, 0, 98, 0, 121, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 117, 0, 115, 0, 101, 0, 114, 0, 46, 0, 13, 0, 13, 0, 13, 0, 13, 0, 51, 0, 41, 0, 32, 0, 78, 0, 111, 0, 32, 0, 77, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 32, 0, 109, 0, 97, 0, 121, 0, 32, 0, 117, 0, 115, 0, 101, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 82, 0, 101, 0, 115, 0, 101, 0, 114, 0, 118, 0, 101, 0, 100, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 13, 0, 13, 0, 78, 0, 97, 0, 109, 0, 101, 0, 40, 0, 115, 0, 41, 0, 32, 0, 117, 0, 110, 0, 108, 0, 101, 0, 115, 0, 115, 0, 32, 0, 101, 0, 120, 0, 112, 0, 108, 0, 105, 0, 99, 0, 105, 0, 116, 0, 32, 0, 119, 0, 114, 0, 105, 0, 116, 0, 116, 0, 101, 0, 110, 0, 32, 0, 112, 0, 101, 0, 114, 0, 109, 0, 105, 0, 115, 0, 115, 0, 105, 0, 111, 0, 110, 0, 32, 0, 105, 0, 115, 0, 32, 0, 103, 0, 114, 0, 97, 0, 110, 0, 116, 0, 101, 0, 100, 0, 32, 0, 98, 0, 121, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 99, 0, 111, 0, 114, 0, 114, 0, 101, 0, 115, 0, 112, 0, 111, 0, 110, 0, 100, 0, 105, 0, 110, 0, 103, 0, 13, 0, 13, 0, 67, 0, 111, 0, 112, 0, 121, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 32, 0, 72, 0, 111, 0, 108, 0, 100, 0, 101, 0, 114, 0, 46, 0, 32, 0, 84, 0, 104, 0, 105, 0, 115, 0, 32, 0, 114, 0, 101, 0, 115, 0, 116, 0, 114, 0, 105, 0, 99, 0, 116, 0, 105, 0, 111, 0, 110, 0, 32, 0, 111, 0, 110, 0, 108, 0, 121, 0, 32, 0, 97, 0, 112, 0, 112, 0, 108, 0, 105, 0, 101, 0, 115, 0, 32, 0, 116, 0, 111, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 112, 0, 114, 0, 105, 0, 109, 0, 97, 0, 114, 0, 121, 0, 32, 0, 102, 0, 111, 0, 110, 0, 116, 0, 32, 0, 110, 0, 97, 0, 109, 0, 101, 0, 32, 0, 97, 0, 115, 0, 13, 0, 13, 0, 112, 0, 114, 0, 101, 0, 115, 0, 101, 0, 110, 0, 116, 0, 101, 0, 100, 0, 32, 0, 116, 0, 111, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 117, 0, 115, 0, 101, 0, 114, 0, 115, 0, 46, 0, 13, 0, 13, 0, 13, 0, 13, 0, 52, 0, 41, 0, 32, 0, 84, 0, 104, 0, 101, 0, 32, 0, 110, 0, 97, 0, 109, 0, 101, 0, 40, 0, 115, 0, 41, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 67, 0, 111, 0, 112, 0, 121, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 32, 0, 72, 0, 111, 0, 108, 0, 100, 0, 101, 0, 114, 0, 40, 0, 115, 0, 41, 0, 32, 0, 111, 0, 114, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 65, 0, 117, 0, 116, 0, 104, 0, 111, 0, 114, 0, 40, 0, 115, 0, 41, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 13, 0, 13, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 32, 0, 115, 0, 104, 0, 97, 0, 108, 0, 108, 0, 32, 0, 110, 0, 111, 0, 116, 0, 32, 0, 98, 0, 101, 0, 32, 0, 117, 0, 115, 0, 101, 0, 100, 0, 32, 0, 116, 0, 111, 0, 32, 0, 112, 0, 114, 0, 111, 0, 109, 0, 111, 0, 116, 0, 101, 0, 44, 0, 32, 0, 101, 0, 110, 0, 100, 0, 111, 0, 114, 0, 115, 0, 101, 0, 32, 0, 111, 0, 114, 0, 32, 0, 97, 0, 100, 0, 118, 0, 101, 0, 114, 0, 116, 0, 105, 0, 115, 0, 101, 0, 32, 0, 97, 0, 110, 0, 121, 0, 13, 0, 13, 0, 77, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 86, 0, 101, 0, 114, 0, 115, 0, 105, 0, 111, 0, 110, 0, 44, 0, 32, 0, 101, 0, 120, 0, 99, 0, 101, 0, 112, 0, 116, 0, 32, 0, 116, 0, 111, 0, 32, 0, 97, 0, 99, 0, 107, 0, 110, 0, 111, 0, 119, 0, 108, 0, 101, 0, 100, 0, 103, 0, 101, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 99, 0, 111, 0, 110, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 105, 0, 111, 0, 110, 0, 40, 0, 115, 0, 41, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 13, 0, 13, 0, 67, 0, 111, 0, 112, 0, 121, 0, 114, 0, 105, 0, 103, 0, 104, 0, 116, 0, 32, 0, 72, 0, 111, 0, 108, 0, 100, 0, 101, 0, 114, 0, 40, 0, 115, 0, 41, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 65, 0, 117, 0, 116, 0, 104, 0, 111, 0, 114, 0, 40, 0, 115, 0, 41, 0, 32, 0, 111, 0, 114, 0, 32, 0, 119, 0, 105, 0, 116, 0, 104, 0, 32, 0, 116, 0, 104, 0, 101, 0, 105, 0, 114, 0, 32, 0, 101, 0, 120, 0, 112, 0, 108, 0, 105, 0, 99, 0, 105, 0, 116, 0, 32, 0, 119, 0, 114, 0, 105, 0, 116, 0, 116, 0, 101, 0, 110, 0, 13, 0, 13, 0, 112, 0, 101, 0, 114, 0, 109, 0, 105, 0, 115, 0, 115, 0, 105, 0, 111, 0, 110, 0, 46, 0, 13, 0, 13, 0, 13, 0, 13, 0, 53, 0, 41, 0, 32, 0, 84, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 44, 0, 32, 0, 109, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 32, 0, 111, 0, 114, 0, 32, 0, 117, 0, 110, 0, 109, 0, 111, 0, 100, 0, 105, 0, 102, 0, 105, 0, 101, 0, 100, 0, 44, 0, 32, 0, 105, 0, 110, 0, 32, 0, 112, 0, 97, 0, 114, 0, 116, 0, 32, 0, 111, 0, 114, 0, 32, 0, 105, 0, 110, 0, 32, 0, 119, 0, 104, 0, 111, 0, 108, 0, 101, 0, 44, 0, 13, 0, 13, 0, 109, 0, 117, 0, 115, 0, 116, 0, 32, 0, 98, 0, 101, 0, 32, 0, 100, 0, 105, 0, 115, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 101, 0, 100, 0, 32, 0, 101, 0, 110, 0, 116, 0, 105, 0, 114, 0, 101, 0, 108, 0, 121, 0, 32, 0, 117, 0, 110, 0, 100, 0, 101, 0, 114, 0, 32, 0, 116, 0, 104, 0, 105, 0, 115, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 44, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 109, 0, 117, 0, 115, 0, 116, 0, 32, 0, 110, 0, 111, 0, 116, 0, 32, 0, 98, 0, 101, 0, 13, 0, 13, 0, 100, 0, 105, 0, 115, 0, 116, 0, 114, 0, 105, 0, 98, 0, 117, 0, 116, 0, 101, 0, 100, 0, 32, 0, 117, 0, 110, 0, 100, 0, 101, 0, 114, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 111, 0, 116, 0, 104, 0, 101, 0, 114, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 46, 0, 32, 0, 84, 0, 104, 0, 101, 0, 32, 0, 114, 0, 101, 0, 113, 0, 117, 0, 105, 0, 114, 0, 101, 0, 109, 0, 101, 0, 110, 0, 116, 0, 32, 0, 102, 0, 111, 0, 114, 0, 32, 0, 102, 0, 111, 0, 110, 0, 116, 0, 115, 0, 32, 0, 116, 0, 111, 0, 13, 0, 13, 0, 114, 0, 101, 0, 109, 0, 97, 0, 105, 0, 110, 0, 32, 0, 117, 0, 110, 0, 100, 0, 101, 0, 114, 0, 32, 0, 116, 0, 104, 0, 105, 0, 115, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 32, 0, 100, 0, 111, 0, 101, 0, 115, 0, 32, 0, 110, 0, 111, 0, 116, 0, 32, 0, 97, 0, 112, 0, 112, 0, 108, 0, 121, 0, 32, 0, 116, 0, 111, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 100, 0, 111, 0, 99, 0, 117, 0, 109, 0, 101, 0, 110, 0, 116, 0, 32, 0, 99, 0, 114, 0, 101, 0, 97, 0, 116, 0, 101, 0, 100, 0, 13, 0, 13, 0, 117, 0, 115, 0, 105, 0, 110, 0, 103, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 70, 0, 111, 0, 110, 0, 116, 0, 32, 0, 83, 0, 111, 0, 102, 0, 116, 0, 119, 0, 97, 0, 114, 0, 101, 0, 46, 0, 13, 0, 13, 0, 13, 0, 13, 0, 84, 0, 69, 0, 82, 0, 77, 0, 73, 0, 78, 0, 65, 0, 84, 0, 73, 0, 79, 0, 78, 0, 13, 0, 13, 0, 84, 0, 104, 0, 105, 0, 115, 0, 32, 0, 108, 0, 105, 0, 99, 0, 101, 0, 110, 0, 115, 0, 101, 0, 32, 0, 98, 0, 101, 0, 99, 0, 111, 0, 109, 0, 101, 0, 115, 0, 32, 0, 110, 0, 117, 0, 108, 0, 108, 0, 32, 0, 97, 0, 110, 0, 100, 0, 32, 0, 118, 0, 111, 0, 105, 0, 100, 0, 32, 0, 105, 0, 102, 0, 32, 0, 97, 0, 110, 0, 121, 0, 32, 0, 111, 0, 102, 0, 32, 0, 116, 0, 104, 0, 101, 0, 32, 0, 97, 0, 98, 0, 111, 0, 118, 0, 101, 0, 32, 0, 99, 0, 111, 0, 110, 0, 100, 0, 105, 0, 116, 0, 105, 0, 111, 0, 110, 0, 115, 0, 32, 0, 97, 0, 114, 0, 101, 0, 13, 0, 13, 0, 110, 0, 111, 0, 116, 0, 32, 0, 109, 0, 101, 0, 116, 0, 46, 0, 13, 0, 13, 0, 13, 0, 13, 0, 68, 0, 73, 0, 83, 0, 67, 0, 76, 0, 65, 0, 73, 0, 77, 0, 69, 0, 82, 0, 13, 0, 13, 0, 84, 0, 72, 0, 69, 0, 32, 0, 70, 0, 79, 0, 78, 0, 84, 0, 32, 0, 83, 0, 79, 0, 70, 0, 84, 0, 87, 0, 65, 0, 82, 0, 69, 0, 32, 0, 73, 0, 83, 0, 32, 0, 80, 0, 82, 0, 79, 0, 86, 0, 73, 0, 68, 0, 69, 0, 68, 0, 32, 0, 34, 0, 65, 0, 83, 0, 32, 0, 73, 0, 83, 0, 34, 0, 44, 0, 32, 0, 87, 0, 73, 0, 84, 0, 72, 0, 79, 0, 85, 0, 84, 0, 32, 0, 87, 0, 65, 0, 82, 0, 82, 0, 65, 0, 78, 0, 84, 0, 89, 0, 32, 0, 79, 0, 70, 0, 32, 0, 65, 0, 78, 0, 89, 0, 32, 0, 75, 0, 73, 0, 78, 0, 68, 0, 44, 0, 13, 0, 13, 0, 69, 0, 88, 0, 80, 0, 82, 0, 69, 0, 83, 0, 83, 0, 32, 0, 79, 0, 82, 0, 32, 0, 73, 0, 77, 0, 80, 0, 76, 0, 73, 0, 69, 0, 68, 0, 44, 0, 32, 0, 73, 0, 78, 0, 67, 0, 76, 0, 85, 0, 68, 0, 73, 0, 78, 0, 71, 0, 32, 0, 66, 0, 85, 0, 84, 0, 32, 0, 78, 0, 79, 0, 84, 0, 32, 0, 76, 0, 73, 0, 77, 0, 73, 0, 84, 0, 69, 0, 68, 0, 32, 0, 84, 0, 79, 0, 32, 0, 65, 0, 78, 0, 89, 0, 32, 0, 87, 0, 65, 0, 82, 0, 82, 0, 65, 0, 78, 0, 84, 0, 73, 0, 69, 0, 83, 0, 32, 0, 79, 0, 70, 0, 13, 0, 13, 0, 77, 0, 69, 0, 82, 0, 67, 0, 72, 0, 65, 0, 78, 0, 84, 0, 65, 0, 66, 0, 73, 0, 76, 0, 73, 0, 84, 0, 89, 0, 44, 0, 32, 0, 70, 0, 73, 0, 84, 0, 78, 0, 69, 0, 83, 0, 83, 0, 32, 0, 70, 0, 79, 0, 82, 0, 32, 0, 65, 0, 32, 0, 80, 0, 65, 0, 82, 0, 84, 0, 73, 0, 67, 0, 85, 0, 76, 0, 65, 0, 82, 0, 32, 0, 80, 0, 85, 0, 82, 0, 80, 0, 79, 0, 83, 0, 69, 0, 32, 0, 65, 0, 78, 0, 68, 0, 32, 0, 78, 0, 79, 0, 78, 0, 73, 0, 78, 0, 70, 0, 82, 0, 73, 0, 78, 0, 71, 0, 69, 0, 77, 0, 69, 0, 78, 0, 84, 0, 13, 0, 13, 0, 79, 0, 70, 0, 32, 0, 67, 0, 79, 0, 80, 0, 89, 0, 82, 0, 73, 0, 71, 0, 72, 0, 84, 0, 44, 0, 32, 0, 80, 0, 65, 0, 84, 0, 69, 0, 78, 0, 84, 0, 44, 0, 32, 0, 84, 0, 82, 0, 65, 0, 68, 0, 69, 0, 77, 0, 65, 0, 82, 0, 75, 0, 44, 0, 32, 0, 79, 0, 82, 0, 32, 0, 79, 0, 84, 0, 72, 0, 69, 0, 82, 0, 32, 0, 82, 0, 73, 0, 71, 0, 72, 0, 84, 0, 46, 0, 32, 0, 73, 0, 78, 0, 32, 0, 78, 0, 79, 0, 32, 0, 69, 0, 86, 0, 69, 0, 78, 0, 84, 0, 32, 0, 83, 0, 72, 0, 65, 0, 76, 0, 76, 0, 32, 0, 84, 0, 72, 0, 69, 0, 13, 0, 13, 0, 67, 0, 79, 0, 80, 0, 89, 0, 82, 0, 73, 0, 71, 0, 72, 0, 84, 0, 32, 0, 72, 0, 79, 0, 76, 0, 68, 0, 69, 0, 82, 0, 32, 0, 66, 0, 69, 0, 32, 0, 76, 0, 73, 0, 65, 0, 66, 0, 76, 0, 69, 0, 32, 0, 70, 0, 79, 0, 82, 0, 32, 0, 65, 0, 78, 0, 89, 0, 32, 0, 67, 0, 76, 0, 65, 0, 73, 0, 77, 0, 44, 0, 32, 0, 68, 0, 65, 0, 77, 0, 65, 0, 71, 0, 69, 0, 83, 0, 32, 0, 79, 0, 82, 0, 32, 0, 79, 0, 84, 0, 72, 0, 69, 0, 82, 0, 32, 0, 76, 0, 73, 0, 65, 0, 66, 0, 73, 0, 76, 0, 73, 0, 84, 0, 89, 0, 44, 0, 13, 0, 13, 0, 73, 0, 78, 0, 67, 0, 76, 0, 85, 0, 68, 0, 73, 0, 78, 0, 71, 0, 32, 0, 65, 0, 78, 0, 89, 0, 32, 0, 71, 0, 69, 0, 78, 0, 69, 0, 82, 0, 65, 0, 76, 0, 44, 0, 32, 0, 83, 0, 80, 0, 69, 0, 67, 0, 73, 0, 65, 0, 76, 0, 44, 0, 32, 0, 73, 0, 78, 0, 68, 0, 73, 0, 82, 0, 69, 0, 67, 0, 84, 0, 44, 0, 32, 0, 73, 0, 78, 0, 67, 0, 73, 0, 68, 0, 69, 0, 78, 0, 84, 0, 65, 0, 76, 0, 44, 0, 32, 0, 79, 0, 82, 0, 32, 0, 67, 0, 79, 0, 78, 0, 83, 0, 69, 0, 81, 0, 85, 0, 69, 0, 78, 0, 84, 0, 73, 0, 65, 0, 76, 0, 13, 0, 13, 0, 68, 0, 65, 0, 77, 0, 65, 0, 71, 0, 69, 0, 83, 0, 44, 0, 32, 0, 87, 0, 72, 0, 69, 0, 84, 0, 72, 0, 69, 0, 82, 0, 32, 0, 73, 0, 78, 0, 32, 0, 65, 0, 78, 0, 32, 0, 65, 0, 67, 0, 84, 0, 73, 0, 79, 0, 78, 0, 32, 0, 79, 0, 70, 0, 32, 0, 67, 0, 79, 0, 78, 0, 84, 0, 82, 0, 65, 0, 67, 0, 84, 0, 44, 0, 32, 0, 84, 0, 79, 0, 82, 0, 84, 0, 32, 0, 79, 0, 82, 0, 32, 0, 79, 0, 84, 0, 72, 0, 69, 0, 82, 0, 87, 0, 73, 0, 83, 0, 69, 0, 44, 0, 32, 0, 65, 0, 82, 0, 73, 0, 83, 0, 73, 0, 78, 0, 71, 0, 13, 0, 13, 0, 70, 0, 82, 0, 79, 0, 77, 0, 44, 0, 32, 0, 79, 0, 85, 0, 84, 0, 32, 0, 79, 0, 70, 0, 32, 0, 84, 0, 72, 0, 69, 0, 32, 0, 85, 0, 83, 0, 69, 0, 32, 0, 79, 0, 82, 0, 32, 0, 73, 0, 78, 0, 65, 0, 66, 0, 73, 0, 76, 0, 73, 0, 84, 0, 89, 0, 32, 0, 84, 0, 79, 0, 32, 0, 85, 0, 83, 0, 69, 0, 32, 0, 84, 0, 72, 0, 69, 0, 32, 0, 70, 0, 79, 0, 78, 0, 84, 0, 32, 0, 83, 0, 79, 0, 70, 0, 84, 0, 87, 0, 65, 0, 82, 0, 69, 0, 32, 0, 79, 0, 82, 0, 32, 0, 70, 0, 82, 0, 79, 0, 77, 0, 13, 0, 13, 0, 79, 0, 84, 0, 72, 0, 69, 0, 82, 0, 32, 0, 68, 0, 69, 0, 65, 0, 76, 0, 73, 0, 78, 0, 71, 0, 83, 0, 32, 0, 73, 0, 78, 0, 32, 0, 84, 0, 72, 0, 69, 0, 32, 0, 70, 0, 79, 0, 78, 0, 84, 0, 32, 0, 83, 0, 79, 0, 70, 0, 84, 0, 87, 0, 65, 0, 82, 0, 69, 0, 46, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 255, 69, 0, 123, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 112, 0, 0, 0, 1, 0, 2, 0, 3, 0, 6, 0, 7, 0, 8, 0, 9, 0, 10, 0, 11, 0, 12, 0, 13, 0, 14, 0, 15, 0, 16, 0, 17, 0, 18, 0, 19, 0, 20, 0, 21, 0, 22, 0, 23, 0, 24, 0, 25, 0, 26, 0, 27, 0, 28, 0, 29, 0, 30, 0, 31, 0, 32, 0, 33, 0, 34, 0, 35, 0, 36, 0, 37, 0, 38, 0, 39, 0, 40, 0, 41, 0, 42, 0, 43, 0, 44, 0, 45, 0, 46, 0, 47, 0, 48, 0, 49, 0, 50, 0, 51, 0, 52, 0, 53, 0, 54, 0, 55, 0, 56, 0, 57, 0, 58, 0, 59, 0, 60, 0, 61, 0, 62, 0, 63, 0, 64, 0, 65, 0, 66, 0, 67, 0, 68, 0, 69, 0, 70, 0, 71, 0, 72, 0, 73, 0, 74, 0, 75, 0, 76, 0, 77, 0, 78, 0, 79, 0, 80, 0, 81, 0, 82, 0, 83, 0, 84, 0, 85, 0, 86, 0, 87, 0, 88, 0, 89, 0, 90, 0, 91, 0, 92, 0, 93, 0, 94, 0, 95, 0, 96, 0, 97, 0, 98, 0, 99, 0, 100, 0, 101, 0, 102, 0, 103, 0, 104, 0, 105, 0, 106, 0, 107, 0, 108, 0, 109, 0, 110, 0, 111, 0, 112, 0, 113, 0, 114, 0, 115, 0, 116, 0, 117, 0, 118, 0, 119, 0, 120, 0, 121, 0, 122, 0, 123, 0, 124, 0, 125, 0, 126, 0, 127, 0, 128, 0, 129, 0, 130, 0, 131, 0, 132, 0, 133, 0, 134, 0, 135, 0, 136, 0, 137, 0, 138, 0, 139, 0, 140, 0, 141, 0, 142, 0, 143, 0, 144, 0, 145, 0, 146, 0, 147, 0, 148, 0, 149, 0, 150, 0, 151, 0, 152, 0, 153, 0, 154, 0, 155, 0, 156, 0, 157, 0, 158, 0, 159, 0, 160, 0, 161, 0, 162, 0, 163, 0, 164, 0, 165, 0, 166, 0, 167, 0, 168, 0, 169, 0, 170, 0, 171, 1, 2, 0, 173, 0, 174, 0, 175, 0, 176, 0, 177, 0, 178, 0, 179, 0, 180, 0, 181, 0, 182, 0, 183, 0, 184, 0, 185, 0, 186, 0, 187, 0, 188, 1, 3, 0, 190, 0, 191, 0, 192, 0, 193, 0, 194, 0, 195, 0, 196, 0, 197, 0, 198, 0, 199, 0, 200, 0, 201, 0, 202, 0, 203, 0, 204, 0, 205, 0, 206, 0, 207, 0, 208, 0, 209, 0, 210, 0, 211, 0, 212, 0, 213, 0, 214, 0, 215, 0, 216, 0, 217, 0, 218, 0, 219, 0, 220, 0, 221, 0, 222, 0, 223, 0, 224, 0, 225, 0, 4, 0, 5, 1, 4, 0, 189, 0, 232, 1, 5, 0, 242, 0, 243, 0, 241, 0, 245, 0, 244, 0, 246, 0, 233, 0, 240, 0, 235, 0, 237, 0, 234, 0, 236, 0, 238, 1, 6, 1, 7, 1, 8, 1, 9, 1, 10, 1, 11, 0, 253, 0, 254, 1, 12, 1, 13, 1, 14, 1, 15, 0, 255, 1, 0, 1, 16, 1, 17, 1, 18, 1, 1, 1, 19, 1, 20, 1, 21, 1, 22, 1, 23, 1, 24, 1, 25, 1, 26, 1, 27, 1, 28, 1, 29, 1, 30, 0, 248, 0, 249, 1, 31, 1, 32, 1, 33, 1, 34, 1, 35, 1, 36, 1, 37, 1, 38, 1, 39, 1, 40, 1, 41, 1, 42, 1, 43, 1, 44, 1, 45, 1, 46, 0, 250, 1, 47, 1, 48, 1, 49, 1, 50, 1, 51, 1, 52, 1, 53, 1, 54, 1, 55, 1, 56, 1, 57, 1, 58, 1, 59, 1, 60, 1, 61, 0, 226, 0, 227, 1, 62, 1, 63, 1, 64, 1, 65, 1, 66, 1, 67, 1, 68, 1, 69, 1, 70, 1, 71, 1, 72, 1, 73, 1, 74, 1, 75, 1, 76, 1, 77, 1, 78, 1, 79, 1, 80, 1, 81, 1, 82, 1, 83, 1, 84, 1, 85, 1, 86, 0, 251, 0, 252, 0, 228, 0, 229, 1, 87, 1, 88, 1, 89, 1, 90, 1, 91, 1, 92, 1, 93, 1, 94, 1, 95, 1, 96, 1, 97, 1, 98, 1, 99, 1, 100, 1, 101, 1, 102, 1, 103, 1, 104, 1, 105, 1, 106, 1, 107, 1, 108, 1, 109, 1, 110, 1, 111, 1, 112, 0, 230, 0, 231, 1, 113, 1, 114, 1, 115, 1, 116, 1, 117, 1, 118, 1, 119, 1, 120, 1, 121, 1, 122, 1, 123, 1, 124, 1, 125, 1, 126, 1, 127, 1, 128, 1, 129, 1, 130, 1, 131, 1, 132, 1, 133, 1, 134, 1, 135, 1, 136, 1, 137, 1, 138, 1, 139, 1, 140, 1, 141, 1, 142, 1, 143, 1, 144, 1, 145, 1, 146, 1, 147, 1, 148, 1, 149, 1, 150, 1, 151, 1, 152, 1, 153, 1, 154, 1, 155, 1, 156, 1, 157, 1, 158, 1, 159, 1, 160, 1, 161, 1, 162, 1, 163, 1, 164, 1, 165, 1, 166, 1, 167, 1, 168, 1, 169, 1, 170, 1, 171, 1, 172, 1, 173, 1, 174, 1, 175, 1, 176, 1, 177, 1, 178, 1, 179, 1, 180, 1, 181, 1, 182, 1, 183, 1, 184, 1, 185, 1, 186, 1, 187, 1, 188, 1, 189, 1, 190, 1, 191, 1, 192, 1, 193, 1, 194, 1, 195, 1, 196, 1, 197, 1, 198, 1, 199, 1, 200, 1, 201, 1, 202, 1, 203, 1, 204, 1, 205, 1, 206, 1, 207, 1, 208, 1, 209, 1, 210, 1, 211, 1, 212, 1, 213, 1, 214, 1, 215, 1, 216, 1, 217, 1, 218, 1, 219, 1, 220, 1, 221, 1, 222, 1, 223, 1, 224, 1, 225, 1, 226, 1, 227, 1, 228, 1, 229, 1, 230, 1, 231, 1, 232, 1, 233, 1, 234, 1, 235, 1, 236, 1, 237, 1, 238, 1, 239, 1, 240, 1, 241, 1, 242, 1, 243, 1, 244, 1, 245, 1, 246, 1, 247, 1, 248, 1, 249, 1, 250, 1, 251, 1, 252, 1, 253, 1, 254, 1, 255, 2, 0, 2, 1, 2, 2, 2, 3, 2, 4, 2, 5, 2, 6, 2, 7, 2, 8, 2, 9, 2, 10, 2, 11, 2, 12, 2, 13, 2, 14, 2, 15, 2, 16, 2, 17, 2, 18, 2, 19, 2, 20, 2, 21, 2, 22, 2, 23, 2, 24, 2, 25, 2, 26, 2, 27, 2, 28, 2, 29, 2, 30, 2, 31, 2, 32, 2, 33, 2, 34, 2, 35, 2, 36, 2, 37, 2, 38, 2, 39, 2, 40, 2, 41, 2, 42, 2, 43, 2, 44, 2, 45, 2, 46, 2, 47, 2, 48, 2, 49, 2, 50, 2, 51, 2, 52, 0, 239, 2, 53, 2, 54, 2, 55, 2, 56, 2, 57, 2, 58, 2, 59, 2, 60, 2, 61, 2, 62, 2, 63, 2, 64, 2, 65, 2, 66, 2, 67, 2, 68, 2, 69, 2, 70, 2, 71, 2, 72, 2, 73, 2, 74, 2, 75, 2, 76, 2, 77, 2, 78, 2, 79, 2, 80, 2, 81, 2, 82, 2, 83, 2, 84, 2, 85, 2, 86, 2, 87, 2, 88, 2, 89, 2, 90, 2, 91, 2, 92, 2, 93, 2, 94, 2, 95, 2, 96, 2, 97, 2, 98, 2, 99, 2, 100, 2, 101, 2, 102, 2, 103, 2, 104, 2, 105, 2, 106, 2, 107, 2, 108, 2, 109, 2, 110, 2, 111, 2, 112, 2, 113, 7, 117, 110, 105, 48, 48, 65, 48, 4, 69, 117, 114, 111, 11, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 7, 117, 110, 105, 48, 48, 65, 68, 7, 65, 109, 97, 99, 114, 111, 110, 7, 97, 109, 97, 99, 114, 111, 110, 6, 65, 98, 114, 101, 118, 101, 6, 97, 98, 114, 101, 118, 101, 7, 65, 111, 103, 111, 110, 101, 107, 7, 97, 111, 103, 111, 110, 101, 107, 11, 67, 99, 105, 114, 99, 117, 109, 102, 108, 101, 120, 11, 99, 99, 105, 114, 99, 117, 109, 102, 108, 101, 120, 10, 67, 100, 111, 116, 97, 99, 99, 101, 110, 116, 10, 99, 100, 111, 116, 97, 99, 99, 101, 110, 116, 6, 68, 99, 97, 114, 111, 110, 6, 100, 99, 97, 114, 111, 110, 6, 68, 99, 114, 111, 97, 116, 7, 69, 109, 97, 99, 114, 111, 110, 7, 101, 109, 97, 99, 114, 111, 110, 6, 69, 98, 114, 101, 118, 101, 6, 101, 98, 114, 101, 118, 101, 10, 69, 100, 111, 116, 97, 99, 99, 101, 110, 116, 10, 101, 100, 111, 116, 97, 99, 99, 101, 110, 116, 7, 69, 111, 103, 111, 110, 101, 107, 7, 101, 111, 103, 111, 110, 101, 107, 6, 69, 99, 97, 114, 111, 110, 6, 101, 99, 97, 114, 111, 110, 11, 71, 99, 105, 114, 99, 117, 109, 102, 108, 101, 120, 11, 103, 99, 105, 114, 99, 117, 109, 102, 108, 101, 120, 10, 71, 100, 111, 116, 97, 99, 99, 101, 110, 116, 10, 103, 100, 111, 116, 97, 99, 99, 101, 110, 116, 12, 71, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 12, 103, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 11, 72, 99, 105, 114, 99, 117, 109, 102, 108, 101, 120, 11, 104, 99, 105, 114, 99, 117, 109, 102, 108, 101, 120, 4, 72, 98, 97, 114, 4, 104, 98, 97, 114, 6, 73, 116, 105, 108, 100, 101, 6, 105, 116, 105, 108, 100, 101, 7, 73, 109, 97, 99, 114, 111, 110, 7, 105, 109, 97, 99, 114, 111, 110, 6, 73, 98, 114, 101, 118, 101, 6, 105, 98, 114, 101, 118, 101, 7, 73, 111, 103, 111, 110, 101, 107, 7, 105, 111, 103, 111, 110, 101, 107, 2, 73, 74, 2, 105, 106, 11, 74, 99, 105, 114, 99, 117, 109, 102, 108, 101, 120, 11, 106, 99, 105, 114, 99, 117, 109, 102, 108, 101, 120, 12, 75, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 12, 107, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 12, 107, 103, 114, 101, 101, 110, 108, 97, 110, 100, 105, 99, 6, 76, 97, 99, 117, 116, 101, 6, 108, 97, 99, 117, 116, 101, 12, 76, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 12, 108, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 6, 76, 99, 97, 114, 111, 110, 6, 108, 99, 97, 114, 111, 110, 4, 76, 100, 111, 116, 4, 108, 100, 111, 116, 6, 78, 97, 99, 117, 116, 101, 6, 110, 97, 99, 117, 116, 101, 12, 78, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 12, 110, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 6, 78, 99, 97, 114, 111, 110, 6, 110, 99, 97, 114, 111, 110, 11, 110, 97, 112, 111, 115, 116, 114, 111, 112, 104, 101, 3, 69, 110, 103, 3, 101, 110, 103, 7, 79, 109, 97, 99, 114, 111, 110, 7, 111, 109, 97, 99, 114, 111, 110, 6, 79, 98, 114, 101, 118, 101, 6, 111, 98, 114, 101, 118, 101, 13, 79, 104, 117, 110, 103, 97, 114, 117, 109, 108, 97, 117, 116, 13, 111, 104, 117, 110, 103, 97, 114, 117, 109, 108, 97, 117, 116, 6, 82, 97, 99, 117, 116, 101, 6, 114, 97, 99, 117, 116, 101, 12, 82, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 12, 114, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 6, 82, 99, 97, 114, 111, 110, 6, 114, 99, 97, 114, 111, 110, 6, 83, 97, 99, 117, 116, 101, 6, 115, 97, 99, 117, 116, 101, 11, 83, 99, 105, 114, 99, 117, 109, 102, 108, 101, 120, 11, 115, 99, 105, 114, 99, 117, 109, 102, 108, 101, 120, 12, 84, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 12, 116, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 6, 84, 99, 97, 114, 111, 110, 6, 116, 99, 97, 114, 111, 110, 4, 84, 98, 97, 114, 4, 116, 98, 97, 114, 6, 85, 116, 105, 108, 100, 101, 6, 117, 116, 105, 108, 100, 101, 7, 85, 109, 97, 99, 114, 111, 110, 7, 117, 109, 97, 99, 114, 111, 110, 6, 85, 98, 114, 101, 118, 101, 6, 117, 98, 114, 101, 118, 101, 5, 85, 114, 105, 110, 103, 5, 117, 114, 105, 110, 103, 13, 85, 104, 117, 110, 103, 97, 114, 117, 109, 108, 97, 117, 116, 13, 117, 104, 117, 110, 103, 97, 114, 117, 109, 108, 97, 117, 116, 7, 85, 111, 103, 111, 110, 101, 107, 7, 117, 111, 103, 111, 110, 101, 107, 11, 87, 99, 105, 114, 99, 117, 109, 102, 108, 101, 120, 11, 119, 99, 105, 114, 99, 117, 109, 102, 108, 101, 120, 11, 89, 99, 105, 114, 99, 117, 109, 102, 108, 101, 120, 11, 121, 99, 105, 114, 99, 117, 109, 102, 108, 101, 120, 6, 90, 97, 99, 117, 116, 101, 6, 122, 97, 99, 117, 116, 101, 10, 90, 100, 111, 116, 97, 99, 99, 101, 110, 116, 10, 122, 100, 111, 116, 97, 99, 99, 101, 110, 116, 5, 108, 111, 110, 103, 115, 7, 65, 69, 97, 99, 117, 116, 101, 7, 97, 101, 97, 99, 117, 116, 101, 11, 79, 115, 108, 97, 115, 104, 97, 99, 117, 116, 101, 11, 111, 115, 108, 97, 115, 104, 97, 99, 117, 116, 101, 12, 83, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 12, 115, 99, 111, 109, 109, 97, 97, 99, 99, 101, 110, 116, 7, 117, 110, 105, 48, 50, 49, 65, 7, 117, 110, 105, 48, 50, 49, 66, 5, 116, 111, 110, 111, 115, 13, 100, 105, 101, 114, 101, 115, 105, 115, 116, 111, 110, 111, 115, 10, 65, 108, 112, 104, 97, 116, 111, 110, 111, 115, 12, 69, 112, 115, 105, 108, 111, 110, 116, 111, 110, 111, 115, 8, 69, 116, 97, 116, 111, 110, 111, 115, 9, 73, 111, 116, 97, 116, 111, 110, 111, 115, 12, 79, 109, 105, 99, 114, 111, 110, 116, 111, 110, 111, 115, 12, 85, 112, 115, 105, 108, 111, 110, 116, 111, 110, 111, 115, 10, 79, 109, 101, 103, 97, 116, 111, 110, 111, 115, 17, 105, 111, 116, 97, 100, 105, 101, 114, 101, 115, 105, 115, 116, 111, 110, 111, 115, 5, 65, 108, 112, 104, 97, 4, 66, 101, 116, 97, 5, 71, 97, 109, 109, 97, 7, 117, 110, 105, 48, 51, 57, 52, 7, 69, 112, 115, 105, 108, 111, 110, 4, 90, 101, 116, 97, 3, 69, 116, 97, 5, 84, 104, 101, 116, 97, 4, 73, 111, 116, 97, 5, 75, 97, 112, 112, 97, 6, 76, 97, 109, 98, 100, 97, 2, 77, 117, 2, 78, 117, 2, 88, 105, 7, 79, 109, 105, 99, 114, 111, 110, 2, 80, 105, 3, 82, 104, 111, 5, 83, 105, 103, 109, 97, 3, 84, 97, 117, 7, 85, 112, 115, 105, 108, 111, 110, 3, 80, 104, 105, 3, 67, 104, 105, 3, 80, 115, 105, 12, 73, 111, 116, 97, 100, 105, 101, 114, 101, 115, 105, 115, 15, 85, 112, 115, 105, 108, 111, 110, 100, 105, 101, 114, 101, 115, 105, 115, 10, 97, 108, 112, 104, 97, 116, 111, 110, 111, 115, 12, 101, 112, 115, 105, 108, 111, 110, 116, 111, 110, 111, 115, 8, 101, 116, 97, 116, 111, 110, 111, 115, 9, 105, 111, 116, 97, 116, 111, 110, 111, 115, 20, 117, 112, 115, 105, 108, 111, 110, 100, 105, 101, 114, 101, 115, 105, 115, 116, 111, 110, 111, 115, 5, 97, 108, 112, 104, 97, 4, 98, 101, 116, 97, 5, 103, 97, 109, 109, 97, 5, 100, 101, 108, 116, 97, 7, 101, 112, 115, 105, 108, 111, 110, 4, 122, 101, 116, 97, 3, 101, 116, 97, 5, 116, 104, 101, 116, 97, 4, 105, 111, 116, 97, 5, 107, 97, 112, 112, 97, 6, 108, 97, 109, 98, 100, 97, 7, 117, 110, 105, 48, 51, 66, 67, 2, 110, 117, 2, 120, 105, 7, 111, 109, 105, 99, 114, 111, 110, 3, 114, 104, 111, 6, 115, 105, 103, 109, 97, 49, 5, 115, 105, 103, 109, 97, 3, 116, 97, 117, 7, 117, 112, 115, 105, 108, 111, 110, 3, 112, 104, 105, 3, 99, 104, 105, 3, 112, 115, 105, 5, 111, 109, 101, 103, 97, 12, 105, 111, 116, 97, 100, 105, 101, 114, 101, 115, 105, 115, 15, 117, 112, 115, 105, 108, 111, 110, 100, 105, 101, 114, 101, 115, 105, 115, 12, 111, 109, 105, 99, 114, 111, 110, 116, 111, 110, 111, 115, 12, 117, 112, 115, 105, 108, 111, 110, 116, 111, 110, 111, 115, 10, 111, 109, 101, 103, 97, 116, 111, 110, 111, 115, 9, 97, 102, 105, 105, 49, 48, 48, 50, 51, 9, 97, 102, 105, 105, 49, 48, 48, 53, 49, 9, 97, 102, 105, 105, 49, 48, 48, 53, 50, 9, 97, 102, 105, 105, 49, 48, 48, 53, 51, 9, 97, 102, 105, 105, 49, 48, 48, 53, 52, 9, 97, 102, 105, 105, 49, 48, 48, 53, 53, 9, 97, 102, 105, 105, 49, 48, 48, 53, 54, 9, 97, 102, 105, 105, 49, 48, 48, 53, 55, 9, 97, 102, 105, 105, 49, 48, 48, 53, 56, 9, 97, 102, 105, 105, 49, 48, 48, 53, 57, 9, 97, 102, 105, 105, 49, 48, 48, 54, 48, 9, 97, 102, 105, 105, 49, 48, 48, 54, 49, 9, 97, 102, 105, 105, 49, 48, 48, 54, 50, 9, 97, 102, 105, 105, 49, 48, 49, 52, 53, 9, 97, 102, 105, 105, 49, 48, 48, 49, 55, 9, 97, 102, 105, 105, 49, 48, 48, 49, 56, 9, 97, 102, 105, 105, 49, 48, 48, 49, 57, 9, 97, 102, 105, 105, 49, 48, 48, 50, 48, 9, 97, 102, 105, 105, 49, 48, 48, 50, 49, 9, 97, 102, 105, 105, 49, 48, 48, 50, 50, 9, 97, 102, 105, 105, 49, 48, 48, 50, 52, 9, 97, 102, 105, 105, 49, 48, 48, 50, 53, 9, 97, 102, 105, 105, 49, 48, 48, 50, 54, 9, 97, 102, 105, 105, 49, 48, 48, 50, 55, 9, 97, 102, 105, 105, 49, 48, 48, 50, 56, 9, 97, 102, 105, 105, 49, 48, 48, 50, 57, 9, 97, 102, 105, 105, 49, 48, 48, 51, 48, 9, 97, 102, 105, 105, 49, 48, 48, 51, 49, 9, 97, 102, 105, 105, 49, 48, 48, 51, 50, 9, 97, 102, 105, 105, 49, 48, 48, 51, 51, 9, 97, 102, 105, 105, 49, 48, 48, 51, 52, 9, 97, 102, 105, 105, 49, 48, 48, 51, 53, 9, 97, 102, 105, 105, 49, 48, 48, 51, 54, 9, 97, 102, 105, 105, 49, 48, 48, 51, 55, 9, 97, 102, 105, 105, 49, 48, 48, 51, 56, 9, 97, 102, 105, 105, 49, 48, 48, 51, 57, 9, 97, 102, 105, 105, 49, 48, 48, 52, 48, 9, 97, 102, 105, 105, 49, 48, 48, 52, 49, 9, 97, 102, 105, 105, 49, 48, 48, 52, 50, 9, 97, 102, 105, 105, 49, 48, 48, 52, 51, 9, 97, 102, 105, 105, 49, 48, 48, 52, 52, 9, 97, 102, 105, 105, 49, 48, 48, 52, 53, 9, 97, 102, 105, 105, 49, 48, 48, 52, 54, 9, 97, 102, 105, 105, 49, 48, 48, 52, 55, 9, 97, 102, 105, 105, 49, 48, 48, 52, 56, 9, 97, 102, 105, 105, 49, 48, 48, 52, 57, 9, 97, 102, 105, 105, 49, 48, 48, 54, 53, 9, 97, 102, 105, 105, 49, 48, 48, 54, 54, 9, 97, 102, 105, 105, 49, 48, 48, 54, 55, 9, 97, 102, 105, 105, 49, 48, 48, 54, 56, 9, 97, 102, 105, 105, 49, 48, 48, 54, 57, 9, 97, 102, 105, 105, 49, 48, 48, 55, 48, 9, 97, 102, 105, 105, 49, 48, 48, 55, 50, 9, 97, 102, 105, 105, 49, 48, 48, 55, 51, 9, 97, 102, 105, 105, 49, 48, 48, 55, 52, 9, 97, 102, 105, 105, 49, 48, 48, 55, 53, 9, 97, 102, 105, 105, 49, 48, 48, 55, 54, 9, 97, 102, 105, 105, 49, 48, 48, 55, 55, 9, 97, 102, 105, 105, 49, 48, 48, 55, 56, 9, 97, 102, 105, 105, 49, 48, 48, 55, 57, 9, 97, 102, 105, 105, 49, 48, 48, 56, 48, 9, 97, 102, 105, 105, 49, 48, 48, 56, 49, 9, 97, 102, 105, 105, 49, 48, 48, 56, 50, 9, 97, 102, 105, 105, 49, 48, 48, 56, 51, 9, 97, 102, 105, 105, 49, 48, 48, 56, 52, 9, 97, 102, 105, 105, 49, 48, 48, 56, 53, 9, 97, 102, 105, 105, 49, 48, 48, 56, 54, 9, 97, 102, 105, 105, 49, 48, 48, 56, 55, 9, 97, 102, 105, 105, 49, 48, 48, 56, 56, 9, 97, 102, 105, 105, 49, 48, 48, 56, 57, 9, 97, 102, 105, 105, 49, 48, 48, 57, 48, 9, 97, 102, 105, 105, 49, 48, 48, 57, 49, 9, 97, 102, 105, 105, 49, 48, 48, 57, 50, 9, 97, 102, 105, 105, 49, 48, 48, 57, 51, 9, 97, 102, 105, 105, 49, 48, 48, 57, 52, 9, 97, 102, 105, 105, 49, 48, 48, 57, 53, 9, 97, 102, 105, 105, 49, 48, 48, 57, 54, 9, 97, 102, 105, 105, 49, 48, 48, 57, 55, 9, 97, 102, 105, 105, 49, 48, 48, 55, 49, 9, 97, 102, 105, 105, 49, 48, 48, 57, 57, 9, 97, 102, 105, 105, 49, 48, 49, 48, 48, 9, 97, 102, 105, 105, 49, 48, 49, 48, 49, 9, 97, 102, 105, 105, 49, 48, 49, 48, 50, 9, 97, 102, 105, 105, 49, 48, 49, 48, 51, 9, 97, 102, 105, 105, 49, 48, 49, 48, 52, 9, 97, 102, 105, 105, 49, 48, 49, 48, 53, 9, 97, 102, 105, 105, 49, 48, 49, 48, 54, 9, 97, 102, 105, 105, 49, 48, 49, 48, 55, 9, 97, 102, 105, 105, 49, 48, 49, 48, 56, 9, 97, 102, 105, 105, 49, 48, 49, 48, 57, 9, 97, 102, 105, 105, 49, 48, 49, 49, 48, 9, 97, 102, 105, 105, 49, 48, 49, 57, 51, 9, 97, 102, 105, 105, 49, 48, 48, 53, 48, 9, 97, 102, 105, 105, 49, 48, 48, 57, 56, 7, 117, 110, 105, 49, 69, 48, 50, 7, 117, 110, 105, 49, 69, 48, 51, 7, 117, 110, 105, 49, 69, 48, 65, 7, 117, 110, 105, 49, 69, 48, 66, 7, 117, 110, 105, 49, 69, 49, 69, 7, 117, 110, 105, 49, 69, 49, 70, 7, 117, 110, 105, 49, 69, 52, 48, 7, 117, 110, 105, 49, 69, 52, 49, 7, 117, 110, 105, 49, 69, 53, 54, 7, 117, 110, 105, 49, 69, 53, 55, 7, 117, 110, 105, 49, 69, 54, 48, 7, 117, 110, 105, 49, 69, 54, 49, 7, 117, 110, 105, 49, 69, 54, 65, 7, 117, 110, 105, 49, 69, 54, 66, 6, 87, 103, 114, 97, 118, 101, 6, 119, 103, 114, 97, 118, 101, 6, 87, 97, 99, 117, 116, 101, 6, 119, 97, 99, 117, 116, 101, 9, 87, 100, 105, 101, 114, 101, 115, 105, 115, 9, 119, 100, 105, 101, 114, 101, 115, 105, 115, 6, 89, 103, 114, 97, 118, 101, 6, 121, 103, 114, 97, 118, 101, 9, 97, 102, 105, 105, 48, 48, 50, 48, 56, 9, 97, 102, 105, 105, 54, 49, 51, 53, 50, 7, 117, 110, 105, 50, 51, 48, 51, 7, 117, 110, 105, 50, 51, 49, 56, 7, 117, 110, 105, 50, 51, 50, 52, 9, 111, 112, 116, 105, 111, 110, 107, 101, 121, 15, 101, 114, 97, 115, 101, 116, 111, 116, 104, 101, 114, 105, 103, 104, 116, 7, 117, 110, 105, 50, 51, 55, 100, 7, 117, 110, 105, 50, 51, 56, 56, 7, 117, 110, 105, 50, 51, 99, 101, 7, 117, 110, 105, 50, 52, 50, 51, 8, 83, 70, 49, 48, 48, 48, 48, 48, 8, 83, 70, 49, 49, 48, 48, 48, 48, 8, 83, 70, 48, 49, 48, 48, 48, 48, 8, 83, 70, 48, 51, 48, 48, 48, 48, 8, 83, 70, 48, 50, 48, 48, 48, 48, 8, 83, 70, 48, 52, 48, 48, 48, 48, 8, 83, 70, 48, 56, 48, 48, 48, 48, 8, 83, 70, 48, 57, 48, 48, 48, 48, 8, 83, 70, 48, 54, 48, 48, 48, 48, 8, 83, 70, 48, 55, 48, 48, 48, 48, 8, 83, 70, 48, 53, 48, 48, 48, 48, 8, 83, 70, 52, 51, 48, 48, 48, 48, 8, 83, 70, 50, 52, 48, 48, 48, 48, 8, 83, 70, 53, 49, 48, 48, 48, 48, 8, 83, 70, 53, 50, 48, 48, 48, 48, 8, 83, 70, 51, 57, 48, 48, 48, 48, 8, 83, 70, 50, 50, 48, 48, 48, 48, 8, 83, 70, 50, 49, 48, 48, 48, 48, 8, 83, 70, 50, 53, 48, 48, 48, 48, 8, 83, 70, 53, 48, 48, 48, 48, 48, 8, 83, 70, 52, 57, 48, 48, 48, 48, 8, 83, 70, 51, 56, 48, 48, 48, 48, 8, 83, 70, 50, 56, 48, 48, 48, 48, 8, 83, 70, 50, 55, 48, 48, 48, 48, 8, 83, 70, 50, 54, 48, 48, 48, 48, 8, 83, 70, 51, 54, 48, 48, 48, 48, 8, 83, 70, 51, 55, 48, 48, 48, 48, 8, 83, 70, 52, 50, 48, 48, 48, 48, 8, 83, 70, 49, 57, 48, 48, 48, 48, 8, 83, 70, 50, 48, 48, 48, 48, 48, 8, 83, 70, 50, 51, 48, 48, 48, 48, 8, 83, 70, 52, 55, 48, 48, 48, 48, 8, 83, 70, 52, 56, 48, 48, 48, 48, 8, 83, 70, 52, 49, 48, 48, 48, 48, 8, 83, 70, 52, 53, 48, 48, 48, 48, 8, 83, 70, 52, 54, 48, 48, 48, 48, 8, 83, 70, 52, 48, 48, 48, 48, 48, 8, 83, 70, 53, 52, 48, 48, 48, 48, 8, 83, 70, 53, 51, 48, 48, 48, 48, 8, 83, 70, 52, 52, 48, 48, 48, 48, 12, 98, 108, 97, 99, 107, 100, 105, 97, 109, 111, 110, 100, 9, 99, 104, 101, 99, 107, 109, 97, 114, 107, 5, 115, 104, 105, 102, 116, 9, 115, 104, 105, 102, 116, 108, 111, 99, 107, 11, 118, 101, 114, 116, 105, 99, 97, 108, 116, 97, 98, 4, 99, 111, 112, 121, 4, 98, 97, 99, 107, 6, 101, 110, 100, 116, 97, 98, 6, 105, 110, 115, 101, 114, 116, 3, 116, 97, 98, 9, 97, 112, 112, 108, 101, 111, 112, 101, 110, 7, 117, 110, 105, 48, 51, 65, 57, 0, 0, 0, 0, 0, 3, 0, 9, 0, 2, 0, 13, 0, 1, 255, 255, 0, 2)
+font_name = "Anonymous Pro"
+style_name = "Regular"
+font_style = 4
+subpixel_positioning = 0
+msdf_pixel_range = 14
+msdf_size = 128
+face_index = null
+embolden = null
+transform = null
+cache/0/16/0/ascent = 14.0
+cache/0/16/0/descent = 3.0
+cache/0/16/0/underline_position = 1.9375
+cache/0/16/0/underline_thickness = 0.96875
+cache/0/16/0/scale = 1.0
+cache/0/16/0/textures/0/offsets = PackedInt32Array(54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 59, 32, 20, 32, 32, 32, 32, 32, 32, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 42, 42, 42, 42, 42, 42, 42, 42, 42, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 35, 35, 35, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 38, 38, 38, 38, 38, 38, 38, 38, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 51, 36, 36, 36, 36, 36, 36, 36, 36, 36, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 0, 0)
+cache/0/16/0/textures/0/image = SubResource("Image_1b8gs")
+cache/0/16/0/glyphs/86/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/86/offset = Vector2(-1, -9)
+cache/0/16/0/glyphs/86/size = Vector2(9, 10)
+cache/0/16/0/glyphs/86/uv_rect = Rect2(1, 1, 9, 10)
+cache/0/16/0/glyphs/86/texture_idx = 0
+cache/0/16/0/glyphs/84/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/84/offset = Vector2(-2, -9)
+cache/0/16/0/glyphs/84/size = Vector2(11, 10)
+cache/0/16/0/glyphs/84/uv_rect = Rect2(12, 1, 11, 10)
+cache/0/16/0/glyphs/84/texture_idx = 0
+cache/0/16/0/glyphs/70/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/70/offset = Vector2(-2, -9)
+cache/0/16/0/glyphs/70/size = Vector2(11, 10)
+cache/0/16/0/glyphs/70/uv_rect = Rect2(25, 1, 11, 10)
+cache/0/16/0/glyphs/70/texture_idx = 0
+cache/0/16/0/glyphs/83/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/83/offset = Vector2(-1, -9)
+cache/0/16/0/glyphs/83/size = Vector2(10, 10)
+cache/0/16/0/glyphs/83/uv_rect = Rect2(38, 1, 10, 10)
+cache/0/16/0/glyphs/83/texture_idx = 0
+cache/0/16/0/glyphs/27/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/27/offset = Vector2(1, -9)
+cache/0/16/0/glyphs/27/size = Vector2(5, 10)
+cache/0/16/0/glyphs/27/uv_rect = Rect2(50, 1, 5, 10)
+cache/0/16/0/glyphs/27/texture_idx = 0
+cache/0/16/0/glyphs/16/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/16/offset = Vector2(-1, -13)
+cache/0/16/0/glyphs/16/size = Vector2(10, 17)
+cache/0/16/0/glyphs/16/uv_rect = Rect2(57, 1, 10, 17)
+cache/0/16/0/glyphs/16/texture_idx = 0
+cache/0/16/0/glyphs/48/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/48/offset = Vector2(-2, -12)
+cache/0/16/0/glyphs/48/size = Vector2(11, 13)
+cache/0/16/0/glyphs/48/uv_rect = Rect2(69, 1, 11, 13)
+cache/0/16/0/glyphs/48/texture_idx = 0
+cache/0/16/0/glyphs/81/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/81/offset = Vector2(-1, -9)
+cache/0/16/0/glyphs/81/size = Vector2(10, 13)
+cache/0/16/0/glyphs/81/uv_rect = Rect2(82, 1, 10, 13)
+cache/0/16/0/glyphs/81/texture_idx = 0
+cache/0/16/0/glyphs/79/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/79/offset = Vector2(-1, -9)
+cache/0/16/0/glyphs/79/size = Vector2(9, 10)
+cache/0/16/0/glyphs/79/uv_rect = Rect2(94, 1, 9, 10)
+cache/0/16/0/glyphs/79/texture_idx = 0
+cache/0/16/0/glyphs/3/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/3/offset = Vector2(-1, -1)
+cache/0/16/0/glyphs/3/size = Vector2(2, 2)
+cache/0/16/0/glyphs/3/uv_rect = Rect2(105, 1, 2, 2)
+cache/0/16/0/glyphs/3/texture_idx = 0
+cache/0/16/0/glyphs/39/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/39/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/39/size = Vector2(9, 13)
+cache/0/16/0/glyphs/39/uv_rect = Rect2(109, 1, 9, 13)
+cache/0/16/0/glyphs/39/texture_idx = 0
+cache/0/16/0/glyphs/74/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/74/offset = Vector2(0, -12)
+cache/0/16/0/glyphs/74/size = Vector2(7, 13)
+cache/0/16/0/glyphs/74/uv_rect = Rect2(120, 1, 7, 13)
+cache/0/16/0/glyphs/74/texture_idx = 0
+cache/0/16/0/glyphs/77/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/77/offset = Vector2(0, -12)
+cache/0/16/0/glyphs/77/size = Vector2(7, 13)
+cache/0/16/0/glyphs/77/uv_rect = Rect2(129, 1, 7, 13)
+cache/0/16/0/glyphs/77/texture_idx = 0
+cache/0/16/0/glyphs/41/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/41/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/41/size = Vector2(9, 13)
+cache/0/16/0/glyphs/41/uv_rect = Rect2(138, 1, 9, 13)
+cache/0/16/0/glyphs/41/texture_idx = 0
+cache/0/16/0/glyphs/80/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/80/offset = Vector2(-2, -9)
+cache/0/16/0/glyphs/80/size = Vector2(11, 10)
+cache/0/16/0/glyphs/80/uv_rect = Rect2(149, 1, 11, 10)
+cache/0/16/0/glyphs/80/texture_idx = 0
+cache/0/16/0/glyphs/78/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/78/offset = Vector2(-1, -9)
+cache/0/16/0/glyphs/78/size = Vector2(10, 10)
+cache/0/16/0/glyphs/78/uv_rect = Rect2(162, 1, 10, 10)
+cache/0/16/0/glyphs/78/texture_idx = 0
+cache/0/16/0/glyphs/36/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/36/offset = Vector2(-2, -12)
+cache/0/16/0/glyphs/36/size = Vector2(11, 13)
+cache/0/16/0/glyphs/36/uv_rect = Rect2(174, 1, 11, 13)
+cache/0/16/0/glyphs/36/texture_idx = 0
+cache/0/16/0/glyphs/90/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/90/offset = Vector2(-2, -9)
+cache/0/16/0/glyphs/90/size = Vector2(11, 13)
+cache/0/16/0/glyphs/90/uv_rect = Rect2(187, 1, 11, 13)
+cache/0/16/0/glyphs/90/texture_idx = 0
+cache/0/16/0/glyphs/38/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/38/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/38/size = Vector2(9, 13)
+cache/0/16/0/glyphs/38/uv_rect = Rect2(200, 1, 9, 13)
+cache/0/16/0/glyphs/38/texture_idx = 0
+cache/0/16/0/glyphs/69/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/69/offset = Vector2(-2, -12)
+cache/0/16/0/glyphs/69/size = Vector2(10, 13)
+cache/0/16/0/glyphs/69/uv_rect = Rect2(211, 1, 10, 13)
+cache/0/16/0/glyphs/69/texture_idx = 0
+cache/0/16/0/glyphs/34/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/34/offset = Vector2(-2, -12)
+cache/0/16/0/glyphs/34/size = Vector2(11, 13)
+cache/0/16/0/glyphs/34/uv_rect = Rect2(223, 1, 11, 13)
+cache/0/16/0/glyphs/34/texture_idx = 0
+cache/0/16/0/glyphs/85/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/85/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/85/size = Vector2(10, 13)
+cache/0/16/0/glyphs/85/uv_rect = Rect2(236, 1, 10, 13)
+cache/0/16/0/glyphs/85/texture_idx = 0
+cache/0/16/0/glyphs/68/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/68/offset = Vector2(-1, -9)
+cache/0/16/0/glyphs/68/size = Vector2(10, 10)
+cache/0/16/0/glyphs/68/uv_rect = Rect2(1, 13, 10, 10)
+cache/0/16/0/glyphs/68/texture_idx = 0
+cache/0/16/0/glyphs/40/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/40/offset = Vector2(-2, -12)
+cache/0/16/0/glyphs/40/size = Vector2(11, 13)
+cache/0/16/0/glyphs/40/uv_rect = Rect2(13, 13, 11, 13)
+cache/0/16/0/glyphs/40/texture_idx = 0
+cache/0/16/0/glyphs/26/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/26/offset = Vector2(-2, -12)
+cache/0/16/0/glyphs/26/size = Vector2(11, 13)
+cache/0/16/0/glyphs/26/uv_rect = Rect2(26, 13, 11, 13)
+cache/0/16/0/glyphs/26/texture_idx = 0
+cache/0/16/0/glyphs/15/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/15/offset = Vector2(1, -3)
+cache/0/16/0/glyphs/15/size = Vector2(5, 4)
+cache/0/16/0/glyphs/15/uv_rect = Rect2(248, 1, 5, 4)
+cache/0/16/0/glyphs/15/texture_idx = 0
+cache/0/16/0/glyphs/47/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/47/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/47/size = Vector2(9, 13)
+cache/0/16/0/glyphs/47/uv_rect = Rect2(39, 13, 9, 13)
+cache/0/16/0/glyphs/47/texture_idx = 0
+cache/0/16/0/glyphs/57/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/57/offset = Vector2(-2, -12)
+cache/0/16/0/glyphs/57/size = Vector2(11, 13)
+cache/0/16/0/glyphs/57/uv_rect = Rect2(94, 13, 11, 13)
+cache/0/16/0/glyphs/57/texture_idx = 0
+cache/0/16/0/glyphs/18/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/18/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/18/size = Vector2(8, 13)
+cache/0/16/0/glyphs/18/uv_rect = Rect2(149, 13, 8, 13)
+cache/0/16/0/glyphs/18/texture_idx = 0
+cache/0/16/0/glyphs/17/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/17/offset = Vector2(-2, -12)
+cache/0/16/0/glyphs/17/size = Vector2(11, 13)
+cache/0/16/0/glyphs/17/uv_rect = Rect2(159, 13, 11, 13)
+cache/0/16/0/glyphs/17/texture_idx = 0
+cache/0/16/0/glyphs/6/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/6/offset = Vector2(-2, -13)
+cache/0/16/0/glyphs/6/size = Vector2(11, 15)
+cache/0/16/0/glyphs/6/uv_rect = Rect2(69, 16, 11, 15)
+cache/0/16/0/glyphs/6/texture_idx = 0
+cache/0/16/0/glyphs/53/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/53/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/53/size = Vector2(10, 13)
+cache/0/16/0/glyphs/53/uv_rect = Rect2(82, 16, 10, 13)
+cache/0/16/0/glyphs/53/texture_idx = 0
+cache/0/16/0/glyphs/52/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/52/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/52/size = Vector2(10, 13)
+cache/0/16/0/glyphs/52/uv_rect = Rect2(107, 16, 10, 13)
+cache/0/16/0/glyphs/52/texture_idx = 0
+cache/0/16/0/glyphs/64/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/64/offset = Vector2(-1, 0)
+cache/0/16/0/glyphs/64/size = Vector2(10, 3)
+cache/0/16/0/glyphs/64/uv_rect = Rect2(119, 16, 10, 3)
+cache/0/16/0/glyphs/64/texture_idx = 0
+cache/0/16/0/glyphs/72/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/72/offset = Vector2(-2, -9)
+cache/0/16/0/glyphs/72/size = Vector2(10, 13)
+cache/0/16/0/glyphs/72/uv_rect = Rect2(131, 16, 10, 13)
+cache/0/16/0/glyphs/72/texture_idx = 0
+cache/0/16/0/glyphs/93/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/93/offset = Vector2(2, -13)
+cache/0/16/0/glyphs/93/size = Vector2(4, 16)
+cache/0/16/0/glyphs/93/uv_rect = Rect2(248, 7, 4, 16)
+cache/0/16/0/glyphs/93/texture_idx = 0
+cache/0/16/0/glyphs/29/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/29/offset = Vector2(0, -10)
+cache/0/16/0/glyphs/29/size = Vector2(8, 12)
+cache/0/16/0/glyphs/29/uv_rect = Rect2(172, 16, 8, 12)
+cache/0/16/0/glyphs/29/texture_idx = 0
+cache/0/16/0/glyphs/31/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/31/offset = Vector2(0, -10)
+cache/0/16/0/glyphs/31/size = Vector2(7, 12)
+cache/0/16/0/glyphs/31/uv_rect = Rect2(182, 16, 7, 12)
+cache/0/16/0/glyphs/31/texture_idx = 0
+cache/0/16/0/glyphs/9/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/9/offset = Vector2(0, -14)
+cache/0/16/0/glyphs/9/size = Vector2(7, 19)
+cache/0/16/0/glyphs/9/uv_rect = Rect2(191, 16, 7, 19)
+cache/0/16/0/glyphs/9/texture_idx = 0
+cache/0/16/0/glyphs/10/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/10/offset = Vector2(0, -14)
+cache/0/16/0/glyphs/10/size = Vector2(7, 19)
+cache/0/16/0/glyphs/10/uv_rect = Rect2(200, 16, 7, 19)
+cache/0/16/0/glyphs/10/texture_idx = 0
+cache/0/16/0/glyphs/45/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/45/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/45/size = Vector2(9, 13)
+cache/0/16/0/glyphs/45/uv_rect = Rect2(209, 16, 9, 13)
+cache/0/16/0/glyphs/45/texture_idx = 0
+cache/0/16/0/glyphs/87/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/87/offset = Vector2(-2, -9)
+cache/0/16/0/glyphs/87/size = Vector2(11, 10)
+cache/0/16/0/glyphs/87/uv_rect = Rect2(220, 16, 11, 10)
+cache/0/16/0/glyphs/87/texture_idx = 0
+cache/0/16/0/glyphs/73/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/73/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/73/size = Vector2(9, 13)
+cache/0/16/0/glyphs/73/uv_rect = Rect2(233, 16, 9, 13)
+cache/0/16/0/glyphs/73/texture_idx = 0
+cache/0/16/0/glyphs/44/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/44/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/44/size = Vector2(10, 13)
+cache/0/16/0/glyphs/44/uv_rect = Rect2(50, 20, 10, 13)
+cache/0/16/0/glyphs/44/texture_idx = 0
+cache/0/16/0/glyphs/66/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/66/offset = Vector2(-2, -9)
+cache/0/16/0/glyphs/66/size = Vector2(10, 10)
+cache/0/16/0/glyphs/66/uv_rect = Rect2(119, 21, 10, 10)
+cache/0/16/0/glyphs/66/texture_idx = 0
+cache/0/16/0/glyphs/49/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/49/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/49/size = Vector2(10, 13)
+cache/0/16/0/glyphs/49/uv_rect = Rect2(1, 25, 10, 13)
+cache/0/16/0/glyphs/49/texture_idx = 0
+cache/0/16/0/glyphs/46/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/46/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/46/size = Vector2(9, 13)
+cache/0/16/0/glyphs/46/uv_rect = Rect2(244, 25, 9, 13)
+cache/0/16/0/glyphs/46/texture_idx = 0
+cache/0/16/0/glyphs/11/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/11/offset = Vector2(-1, -9)
+cache/0/16/0/glyphs/11/size = Vector2(10, 10)
+cache/0/16/0/glyphs/11/uv_rect = Rect2(13, 28, 10, 10)
+cache/0/16/0/glyphs/11/texture_idx = 0
+cache/0/16/0/glyphs/71/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/71/offset = Vector2(0, -12)
+cache/0/16/0/glyphs/71/size = Vector2(9, 13)
+cache/0/16/0/glyphs/71/uv_rect = Rect2(25, 28, 9, 13)
+cache/0/16/0/glyphs/71/texture_idx = 0
+cache/0/16/0/glyphs/89/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/89/offset = Vector2(-2, -9)
+cache/0/16/0/glyphs/89/size = Vector2(11, 10)
+cache/0/16/0/glyphs/89/uv_rect = Rect2(36, 28, 11, 10)
+cache/0/16/0/glyphs/89/texture_idx = 0
+cache/0/16/0/glyphs/42/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/42/offset = Vector2(0, -12)
+cache/0/16/0/glyphs/42/size = Vector2(7, 13)
+cache/0/16/0/glyphs/42/uv_rect = Rect2(94, 28, 7, 13)
+cache/0/16/0/glyphs/42/texture_idx = 0
+cache/0/16/0/glyphs/67/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/67/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/67/size = Vector2(10, 13)
+cache/0/16/0/glyphs/67/uv_rect = Rect2(143, 28, 10, 13)
+cache/0/16/0/glyphs/67/texture_idx = 0
+cache/0/16/0/glyphs/55/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/55/offset = Vector2(-2, -12)
+cache/0/16/0/glyphs/55/size = Vector2(11, 13)
+cache/0/16/0/glyphs/55/uv_rect = Rect2(155, 28, 11, 13)
+cache/0/16/0/glyphs/55/texture_idx = 0
+cache/0/16/0/glyphs/88/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/88/offset = Vector2(-2, -9)
+cache/0/16/0/glyphs/88/size = Vector2(11, 10)
+cache/0/16/0/glyphs/88/uv_rect = Rect2(220, 28, 11, 10)
+cache/0/16/0/glyphs/88/texture_idx = 0
+cache/0/16/0/glyphs/54/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/54/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/54/size = Vector2(9, 13)
+cache/0/16/0/glyphs/54/uv_rect = Rect2(168, 30, 9, 13)
+cache/0/16/0/glyphs/54/texture_idx = 0
+cache/0/16/0/glyphs/13/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/13/offset = Vector2(0, -3)
+cache/0/16/0/glyphs/13/size = Vector2(6, 7)
+cache/0/16/0/glyphs/13/uv_rect = Rect2(179, 30, 6, 7)
+cache/0/16/0/glyphs/13/texture_idx = 0
+cache/0/16/0/glyphs/76/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/76/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/76/size = Vector2(10, 13)
+cache/0/16/0/glyphs/76/uv_rect = Rect2(82, 31, 10, 13)
+cache/0/16/0/glyphs/76/texture_idx = 0
+cache/0/16/0/glyphs/37/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/37/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/37/size = Vector2(10, 13)
+cache/0/16/0/glyphs/37/uv_rect = Rect2(103, 31, 10, 13)
+cache/0/16/0/glyphs/37/texture_idx = 0
+cache/0/16/0/glyphs/14/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/14/offset = Vector2(-1, -6)
+cache/0/16/0/glyphs/14/size = Vector2(10, 3)
+cache/0/16/0/glyphs/14/uv_rect = Rect2(131, 31, 10, 3)
+cache/0/16/0/glyphs/14/texture_idx = 0
+cache/0/16/0/glyphs/35/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/35/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/35/size = Vector2(10, 13)
+cache/0/16/0/glyphs/35/uv_rect = Rect2(62, 33, 10, 13)
+cache/0/16/0/glyphs/35/texture_idx = 0
+cache/0/16/0/glyphs/51/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/51/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/51/size = Vector2(10, 13)
+cache/0/16/0/glyphs/51/uv_rect = Rect2(115, 33, 10, 13)
+cache/0/16/0/glyphs/51/texture_idx = 0
+cache/0/16/0/glyphs/23/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/23/offset = Vector2(-2, -12)
+cache/0/16/0/glyphs/23/size = Vector2(11, 13)
+cache/0/16/0/glyphs/23/uv_rect = Rect2(49, 35, 11, 13)
+cache/0/16/0/glyphs/23/texture_idx = 0
+cache/0/16/0/glyphs/91/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/91/offset = Vector2(-1, -9)
+cache/0/16/0/glyphs/91/size = Vector2(9, 10)
+cache/0/16/0/glyphs/91/uv_rect = Rect2(209, 31, 9, 10)
+cache/0/16/0/glyphs/91/texture_idx = 0
+cache/0/16/0/glyphs/25/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/25/offset = Vector2(-2, -12)
+cache/0/16/0/glyphs/25/size = Vector2(11, 13)
+cache/0/16/0/glyphs/25/uv_rect = Rect2(127, 36, 11, 13)
+cache/0/16/0/glyphs/25/texture_idx = 0
+cache/0/16/0/glyphs/56/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/56/offset = Vector2(-2, -12)
+cache/0/16/0/glyphs/56/size = Vector2(11, 13)
+cache/0/16/0/glyphs/56/uv_rect = Rect2(187, 37, 11, 13)
+cache/0/16/0/glyphs/56/texture_idx = 0
+cache/0/16/0/glyphs/0/advance = Vector2(0, 0)
+cache/0/16/0/glyphs/0/offset = Vector2(0, 0)
+cache/0/16/0/glyphs/0/size = Vector2(0, 0)
+cache/0/16/0/glyphs/0/uv_rect = Rect2(0, 0, 0, 0)
+cache/0/16/0/glyphs/0/texture_idx = -1
+cache/0/16/0/glyphs/19/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/19/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/19/size = Vector2(9, 13)
+cache/0/16/0/glyphs/19/uv_rect = Rect2(233, 31, 9, 13)
+cache/0/16/0/glyphs/19/texture_idx = 0
+cache/0/16/0/glyphs/22/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/22/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/22/size = Vector2(10, 13)
+cache/0/16/0/glyphs/22/uv_rect = Rect2(1, 40, 10, 13)
+cache/0/16/0/glyphs/22/texture_idx = 0
+cache/0/16/0/glyphs/24/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/24/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/24/size = Vector2(10, 13)
+cache/0/16/0/glyphs/24/uv_rect = Rect2(13, 40, 10, 13)
+cache/0/16/0/glyphs/24/texture_idx = 0
+cache/0/16/0/glyphs/20/advance = Vector2(9, 16)
+cache/0/16/0/glyphs/20/offset = Vector2(-1, -12)
+cache/0/16/0/glyphs/20/size = Vector2(10, 13)
+cache/0/16/0/glyphs/20/uv_rect = Rect2(48, 33, 10, 13)
+cache/0/16/0/glyphs/20/texture_idx = 0
+cache/0/16/0/kerning_overrides/16/0 = Vector2(0, 0)
+cache/0/16/0/kerning_overrides/20/0 = Vector2(0, 0)
+cache/0/20/0/ascent = 17.0
+cache/0/20/0/descent = 4.0
+cache/0/20/0/underline_position = 2.42188
+cache/0/20/0/underline_thickness = 1.20313
+cache/0/20/0/scale = 1.0
+cache/0/20/0/textures/0/offsets = PackedInt32Array(16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 4, 4, 4, 4, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 13, 13, 13, 13, 13, 13, 13, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 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)
+cache/0/20/0/textures/0/image = SubResource("Image_f4u7m")
+cache/0/20/0/glyphs/37/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/37/offset = Vector2(-1, -13)
+cache/0/20/0/glyphs/37/size = Vector2(12, 14)
+cache/0/20/0/glyphs/37/uv_rect = Rect2(1, 1, 12, 14)
+cache/0/20/0/glyphs/37/texture_idx = 0
+cache/0/20/0/glyphs/74/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/74/offset = Vector2(0, -13)
+cache/0/20/0/glyphs/74/size = Vector2(9, 14)
+cache/0/20/0/glyphs/74/uv_rect = Rect2(15, 1, 9, 14)
+cache/0/20/0/glyphs/74/texture_idx = 0
+cache/0/20/0/glyphs/83/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/83/offset = Vector2(-1, -10)
+cache/0/20/0/glyphs/83/size = Vector2(12, 11)
+cache/0/20/0/glyphs/83/uv_rect = Rect2(26, 1, 12, 11)
+cache/0/20/0/glyphs/83/texture_idx = 0
+cache/0/20/0/glyphs/70/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/70/offset = Vector2(-2, -10)
+cache/0/20/0/glyphs/70/size = Vector2(13, 11)
+cache/0/20/0/glyphs/70/uv_rect = Rect2(40, 1, 13, 11)
+cache/0/20/0/glyphs/70/texture_idx = 0
+cache/0/20/0/glyphs/68/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/68/offset = Vector2(-1, -10)
+cache/0/20/0/glyphs/68/size = Vector2(11, 11)
+cache/0/20/0/glyphs/68/uv_rect = Rect2(55, 1, 11, 11)
+cache/0/20/0/glyphs/68/texture_idx = 0
+cache/0/20/0/glyphs/85/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/85/offset = Vector2(-1, -13)
+cache/0/20/0/glyphs/85/size = Vector2(12, 14)
+cache/0/20/0/glyphs/85/uv_rect = Rect2(68, 1, 12, 14)
+cache/0/20/0/glyphs/85/texture_idx = 0
+cache/0/20/0/glyphs/80/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/80/offset = Vector2(-2, -10)
+cache/0/20/0/glyphs/80/size = Vector2(13, 11)
+cache/0/20/0/glyphs/80/uv_rect = Rect2(82, 1, 13, 11)
+cache/0/20/0/glyphs/80/texture_idx = 0
+cache/0/20/0/glyphs/84/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/84/offset = Vector2(-2, -10)
+cache/0/20/0/glyphs/84/size = Vector2(12, 11)
+cache/0/20/0/glyphs/84/uv_rect = Rect2(97, 1, 12, 11)
+cache/0/20/0/glyphs/84/texture_idx = 0
+cache/0/20/0/glyphs/3/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/3/offset = Vector2(-1, -1)
+cache/0/20/0/glyphs/3/size = Vector2(2, 2)
+cache/0/20/0/glyphs/3/uv_rect = Rect2(111, 1, 2, 2)
+cache/0/20/0/glyphs/3/texture_idx = 0
+cache/0/20/0/glyphs/7/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/7/offset = Vector2(-2, -13)
+cache/0/20/0/glyphs/7/size = Vector2(13, 15)
+cache/0/20/0/glyphs/7/uv_rect = Rect2(115, 1, 13, 15)
+cache/0/20/0/glyphs/7/texture_idx = 0
+cache/0/20/0/glyphs/39/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/39/offset = Vector2(-1, -13)
+cache/0/20/0/glyphs/39/size = Vector2(11, 14)
+cache/0/20/0/glyphs/39/uv_rect = Rect2(130, 1, 11, 14)
+cache/0/20/0/glyphs/39/texture_idx = 0
+cache/0/20/0/glyphs/77/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/77/offset = Vector2(0, -13)
+cache/0/20/0/glyphs/77/size = Vector2(9, 14)
+cache/0/20/0/glyphs/77/uv_rect = Rect2(143, 1, 9, 14)
+cache/0/20/0/glyphs/77/texture_idx = 0
+cache/0/20/0/glyphs/27/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/27/offset = Vector2(2, -10)
+cache/0/20/0/glyphs/27/size = Vector2(5, 11)
+cache/0/20/0/glyphs/27/uv_rect = Rect2(154, 1, 5, 11)
+cache/0/20/0/glyphs/27/texture_idx = 0
+cache/0/20/0/glyphs/47/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/47/offset = Vector2(-1, -13)
+cache/0/20/0/glyphs/47/size = Vector2(11, 14)
+cache/0/20/0/glyphs/47/uv_rect = Rect2(161, 1, 11, 14)
+cache/0/20/0/glyphs/47/texture_idx = 0
+cache/0/20/0/glyphs/66/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/66/offset = Vector2(-2, -10)
+cache/0/20/0/glyphs/66/size = Vector2(12, 11)
+cache/0/20/0/glyphs/66/uv_rect = Rect2(174, 1, 12, 11)
+cache/0/20/0/glyphs/66/texture_idx = 0
+cache/0/20/0/glyphs/78/advance = Vector2(11, 20)
+cache/0/20/0/glyphs/78/offset = Vector2(-1, -10)
+cache/0/20/0/glyphs/78/size = Vector2(12, 11)
+cache/0/20/0/glyphs/78/uv_rect = Rect2(188, 1, 12, 11)
+cache/0/20/0/glyphs/78/texture_idx = 0
+cache/0/20/0/kerning_overrides/16/0 = Vector2(0, 0)
+cache/0/20/0/kerning_overrides/20/0 = Vector2(0, 0)
+
+[sub_resource type="FontFile" id="FontFile_wf72q"]
+fallbacks = Array[Font]([SubResource("FontFile_f0lek")])
+face_index = null
+embolden = null
+transform = null
+cache/0/16/0/ascent = 0.0
+cache/0/16/0/descent = 0.0
+cache/0/16/0/underline_position = 0.0
+cache/0/16/0/underline_thickness = 0.0
+cache/0/16/0/scale = 1.0
+cache/0/16/0/kerning_overrides/16/0 = Vector2(0, 0)
+cache/0/16/0/kerning_overrides/20/0 = Vector2(0, 0)
+cache/0/20/0/ascent = 0.0
+cache/0/20/0/descent = 0.0
+cache/0/20/0/underline_position = 0.0
+cache/0/20/0/underline_thickness = 0.0
+cache/0/20/0/scale = 1.0
+cache/0/20/0/kerning_overrides/16/0 = Vector2(0, 0)
+cache/0/20/0/kerning_overrides/20/0 = Vector2(0, 0)
+
+[resource]
+default_font = SubResource("FontFile_wf72q")
+Label/fonts/font = ExtResource("1_df57p")
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/MinGui.tscn b/samples/client/petstore/gdscript/addons/gut/gui/MinGui.tscn
new file mode 100644
index 000000000000..9db071ec9f3d
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/MinGui.tscn
@@ -0,0 +1,161 @@
+[gd_scene load_steps=5 format=3 uid="uid://cnqqdfsn80ise"]
+
+[ext_resource type="Theme" uid="uid://cstkhwkpajvqu" path="res://addons/gut/gui/GutSceneTheme.tres" id="1_farmq"]
+[ext_resource type="FontFile" uid="uid://bnh0lslf4yh87" path="res://addons/gut/fonts/CourierPrime-Regular.ttf" id="2_a2e2l"]
+[ext_resource type="Script" path="res://addons/gut/gui/gut_gui.gd" id="2_eokrf"]
+[ext_resource type="PackedScene" uid="uid://bvrqqgjpyouse" path="res://addons/gut/gui/ResizeHandle.tscn" id="4_xrhva"]
+
+[node name="Min" type="Panel"]
+clip_contents = true
+custom_minimum_size = Vector2(280, 145)
+offset_right = 280.0
+offset_bottom = 145.0
+theme = ExtResource("1_farmq")
+script = ExtResource("2_eokrf")
+
+[node name="MainBox" type="VBoxContainer" parent="."]
+layout_mode = 1
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
+grow_horizontal = 2
+grow_vertical = 2
+metadata/_edit_layout_mode = 1
+
+[node name="TitleBar" type="Panel" parent="MainBox"]
+custom_minimum_size = Vector2(0, 25)
+layout_mode = 2
+
+[node name="TitleBox" type="HBoxContainer" parent="MainBox/TitleBar"]
+layout_mode = 0
+anchor_right = 1.0
+anchor_bottom = 1.0
+offset_top = 2.0
+offset_bottom = 3.0
+grow_horizontal = 2
+grow_vertical = 2
+metadata/_edit_layout_mode = 1
+
+[node name="Spacer1" type="CenterContainer" parent="MainBox/TitleBar/TitleBox"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="Title" type="Label" parent="MainBox/TitleBar/TitleBox"]
+layout_mode = 2
+text = "Title"
+
+[node name="Spacer2" type="CenterContainer" parent="MainBox/TitleBar/TitleBox"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="TimeLabel" type="Label" parent="MainBox/TitleBar/TitleBox"]
+layout_mode = 2
+text = "0.000s"
+
+[node name="Body" type="HBoxContainer" parent="MainBox"]
+layout_mode = 2
+size_flags_vertical = 3
+
+[node name="LeftMargin" type="CenterContainer" parent="MainBox/Body"]
+custom_minimum_size = Vector2(5, 0)
+layout_mode = 2
+
+[node name="BodyRows" type="VBoxContainer" parent="MainBox/Body"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="ProgressBars" type="HBoxContainer" parent="MainBox/Body/BodyRows"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="HBoxContainer" type="HBoxContainer" parent="MainBox/Body/BodyRows/ProgressBars"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="Label" type="Label" parent="MainBox/Body/BodyRows/ProgressBars/HBoxContainer"]
+layout_mode = 2
+text = "T:"
+
+[node name="ProgressTest" type="ProgressBar" parent="MainBox/Body/BodyRows/ProgressBars/HBoxContainer"]
+custom_minimum_size = Vector2(100, 0)
+layout_mode = 2
+size_flags_horizontal = 3
+value = 25.0
+
+[node name="HBoxContainer2" type="HBoxContainer" parent="MainBox/Body/BodyRows/ProgressBars"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="Label" type="Label" parent="MainBox/Body/BodyRows/ProgressBars/HBoxContainer2"]
+layout_mode = 2
+text = "S:"
+
+[node name="ProgressScript" type="ProgressBar" parent="MainBox/Body/BodyRows/ProgressBars/HBoxContainer2"]
+custom_minimum_size = Vector2(100, 0)
+layout_mode = 2
+size_flags_horizontal = 3
+value = 75.0
+
+[node name="PathDisplay" type="VBoxContainer" parent="MainBox/Body/BodyRows"]
+clip_contents = true
+layout_mode = 2
+size_flags_vertical = 3
+
+[node name="Path" type="Label" parent="MainBox/Body/BodyRows/PathDisplay"]
+layout_mode = 2
+theme_override_fonts/font = ExtResource("2_a2e2l")
+theme_override_font_sizes/font_size = 14
+text = "res://test/integration/whatever"
+clip_text = true
+text_overrun_behavior = 3
+
+[node name="HBoxContainer" type="HBoxContainer" parent="MainBox/Body/BodyRows/PathDisplay"]
+clip_contents = true
+layout_mode = 2
+
+[node name="S3" type="CenterContainer" parent="MainBox/Body/BodyRows/PathDisplay/HBoxContainer"]
+custom_minimum_size = Vector2(5, 0)
+layout_mode = 2
+
+[node name="File" type="Label" parent="MainBox/Body/BodyRows/PathDisplay/HBoxContainer"]
+layout_mode = 2
+size_flags_horizontal = 3
+theme_override_fonts/font = ExtResource("2_a2e2l")
+theme_override_font_sizes/font_size = 14
+text = "test_this_thing.gd"
+text_overrun_behavior = 3
+
+[node name="Footer" type="HBoxContainer" parent="MainBox/Body/BodyRows"]
+layout_mode = 2
+
+[node name="HandleLeft" parent="MainBox/Body/BodyRows/Footer" node_paths=PackedStringArray("resize_control") instance=ExtResource("4_xrhva")]
+layout_mode = 2
+orientation = 0
+resize_control = NodePath("../../../../..")
+vertical_resize = false
+
+[node name="SwitchModes" type="Button" parent="MainBox/Body/BodyRows/Footer"]
+layout_mode = 2
+text = "Expand"
+
+[node name="CenterContainer" type="CenterContainer" parent="MainBox/Body/BodyRows/Footer"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="Continue" type="Button" parent="MainBox/Body/BodyRows/Footer"]
+layout_mode = 2
+text = "Continue
+"
+
+[node name="HandleRight" parent="MainBox/Body/BodyRows/Footer" node_paths=PackedStringArray("resize_control") instance=ExtResource("4_xrhva")]
+layout_mode = 2
+resize_control = NodePath("../../../../..")
+vertical_resize = false
+
+[node name="RightMargin" type="CenterContainer" parent="MainBox/Body"]
+custom_minimum_size = Vector2(5, 0)
+layout_mode = 2
+
+[node name="CenterContainer" type="CenterContainer" parent="MainBox"]
+custom_minimum_size = Vector2(2.08165e-12, 2)
+layout_mode = 2
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/NormalGui.tscn b/samples/client/petstore/gdscript/addons/gut/gui/NormalGui.tscn
new file mode 100644
index 000000000000..f9b85efa5d11
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/NormalGui.tscn
@@ -0,0 +1,216 @@
+[gd_scene load_steps=5 format=3 uid="uid://duxblir3vu8x7"]
+
+[ext_resource type="Theme" uid="uid://cstkhwkpajvqu" path="res://addons/gut/gui/GutSceneTheme.tres" id="1_5hlsm"]
+[ext_resource type="Script" path="res://addons/gut/gui/gut_gui.gd" id="2_fue6q"]
+[ext_resource type="FontFile" uid="uid://bnh0lslf4yh87" path="res://addons/gut/fonts/CourierPrime-Regular.ttf" id="2_u5uc1"]
+[ext_resource type="PackedScene" uid="uid://bvrqqgjpyouse" path="res://addons/gut/gui/ResizeHandle.tscn" id="4_2r8a8"]
+
+[node name="Large" type="Panel"]
+custom_minimum_size = Vector2(500, 150)
+offset_right = 632.0
+offset_bottom = 260.0
+theme = ExtResource("1_5hlsm")
+script = ExtResource("2_fue6q")
+
+[node name="MainBox" type="VBoxContainer" parent="."]
+layout_mode = 0
+anchor_right = 1.0
+anchor_bottom = 1.0
+grow_horizontal = 2
+grow_vertical = 2
+metadata/_edit_layout_mode = 1
+
+[node name="TitleBar" type="Panel" parent="MainBox"]
+custom_minimum_size = Vector2(0, 25)
+layout_mode = 2
+
+[node name="TitleBox" type="HBoxContainer" parent="MainBox/TitleBar"]
+layout_mode = 0
+anchor_right = 1.0
+anchor_bottom = 1.0
+offset_top = 2.0
+offset_bottom = 3.0
+grow_horizontal = 2
+grow_vertical = 2
+metadata/_edit_layout_mode = 1
+
+[node name="Spacer1" type="CenterContainer" parent="MainBox/TitleBar/TitleBox"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="Title" type="Label" parent="MainBox/TitleBar/TitleBox"]
+layout_mode = 2
+text = "Title"
+
+[node name="Spacer2" type="CenterContainer" parent="MainBox/TitleBar/TitleBox"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="TimeLabel" type="Label" parent="MainBox/TitleBar/TitleBox"]
+custom_minimum_size = Vector2(90, 0)
+layout_mode = 2
+text = "999.999s"
+
+[node name="HBoxContainer" type="HBoxContainer" parent="MainBox"]
+layout_mode = 2
+size_flags_vertical = 3
+
+[node name="VBoxContainer" type="VBoxContainer" parent="MainBox/HBoxContainer"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="OutputBG" type="ColorRect" parent="MainBox/HBoxContainer/VBoxContainer"]
+layout_mode = 2
+size_flags_vertical = 3
+color = Color(0.0745098, 0.0705882, 0.0784314, 1)
+metadata/_edit_layout_mode = 1
+
+[node name="HBoxContainer" type="HBoxContainer" parent="MainBox/HBoxContainer/VBoxContainer/OutputBG"]
+layout_mode = 0
+anchor_right = 1.0
+anchor_bottom = 1.0
+grow_horizontal = 2
+grow_vertical = 2
+
+[node name="S2" type="CenterContainer" parent="MainBox/HBoxContainer/VBoxContainer/OutputBG/HBoxContainer"]
+custom_minimum_size = Vector2(5, 0)
+layout_mode = 2
+
+[node name="TestOutput" type="RichTextLabel" parent="MainBox/HBoxContainer/VBoxContainer/OutputBG/HBoxContainer"]
+layout_mode = 2
+size_flags_horizontal = 3
+size_flags_vertical = 3
+focus_mode = 2
+bbcode_enabled = true
+scroll_following = true
+autowrap_mode = 0
+selection_enabled = true
+
+[node name="S1" type="CenterContainer" parent="MainBox/HBoxContainer/VBoxContainer/OutputBG/HBoxContainer"]
+custom_minimum_size = Vector2(5, 0)
+layout_mode = 2
+
+[node name="ControlBox" type="HBoxContainer" parent="MainBox/HBoxContainer/VBoxContainer"]
+layout_mode = 2
+
+[node name="S1" type="CenterContainer" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox"]
+custom_minimum_size = Vector2(5, 0)
+layout_mode = 2
+
+[node name="ProgressBars" type="VBoxContainer" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox"]
+custom_minimum_size = Vector2(2.08165e-12, 2.08165e-12)
+layout_mode = 2
+
+[node name="TestBox" type="HBoxContainer" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox/ProgressBars"]
+layout_mode = 2
+
+[node name="Label" type="Label" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox/ProgressBars/TestBox"]
+custom_minimum_size = Vector2(60, 0)
+layout_mode = 2
+size_flags_horizontal = 3
+text = "Tests"
+
+[node name="ProgressTest" type="ProgressBar" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox/ProgressBars/TestBox"]
+custom_minimum_size = Vector2(100, 0)
+layout_mode = 2
+value = 25.0
+
+[node name="ScriptBox" type="HBoxContainer" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox/ProgressBars"]
+layout_mode = 2
+
+[node name="Label" type="Label" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox/ProgressBars/ScriptBox"]
+custom_minimum_size = Vector2(60, 0)
+layout_mode = 2
+size_flags_horizontal = 3
+text = "Scripts"
+
+[node name="ProgressScript" type="ProgressBar" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox/ProgressBars/ScriptBox"]
+custom_minimum_size = Vector2(100, 0)
+layout_mode = 2
+value = 75.0
+
+[node name="PathDisplay" type="VBoxContainer" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox"]
+layout_mode = 2
+size_flags_horizontal = 3
+size_flags_vertical = 3
+
+[node name="Path" type="Label" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox/PathDisplay"]
+layout_mode = 2
+size_flags_vertical = 6
+theme_override_fonts/font = ExtResource("2_u5uc1")
+theme_override_font_sizes/font_size = 14
+text = "res://test/integration/whatever"
+text_overrun_behavior = 3
+
+[node name="HBoxContainer" type="HBoxContainer" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox/PathDisplay"]
+layout_mode = 2
+size_flags_vertical = 3
+
+[node name="S3" type="CenterContainer" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox/PathDisplay/HBoxContainer"]
+custom_minimum_size = Vector2(5, 0)
+layout_mode = 2
+
+[node name="File" type="Label" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox/PathDisplay/HBoxContainer"]
+layout_mode = 2
+size_flags_horizontal = 3
+theme_override_fonts/font = ExtResource("2_u5uc1")
+theme_override_font_sizes/font_size = 14
+text = "test_this_thing.gd"
+text_overrun_behavior = 3
+
+[node name="Spacer1" type="CenterContainer" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox"]
+visible = false
+layout_mode = 2
+size_flags_horizontal = 10
+
+[node name="Continue" type="Button" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox"]
+layout_mode = 2
+size_flags_vertical = 4
+text = "Continue
+"
+
+[node name="S3" type="CenterContainer" parent="MainBox/HBoxContainer/VBoxContainer/ControlBox"]
+custom_minimum_size = Vector2(5, 0)
+layout_mode = 2
+
+[node name="BottomPad" type="CenterContainer" parent="MainBox"]
+custom_minimum_size = Vector2(0, 5)
+layout_mode = 2
+
+[node name="Footer" type="HBoxContainer" parent="MainBox"]
+layout_mode = 2
+
+[node name="SidePad1" type="CenterContainer" parent="MainBox/Footer"]
+custom_minimum_size = Vector2(2, 2.08165e-12)
+layout_mode = 2
+
+[node name="ResizeHandle3" parent="MainBox/Footer" node_paths=PackedStringArray("resize_control") instance=ExtResource("4_2r8a8")]
+custom_minimum_size = Vector2(25, 25)
+layout_mode = 2
+orientation = 0
+resize_control = NodePath("../../..")
+vertical_resize = null
+
+[node name="SwitchModes" type="Button" parent="MainBox/Footer"]
+layout_mode = 2
+text = "Compact
+"
+
+[node name="CenterContainer" type="CenterContainer" parent="MainBox/Footer"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="ResizeHandle2" parent="MainBox/Footer" node_paths=PackedStringArray("resize_control") instance=ExtResource("4_2r8a8")]
+custom_minimum_size = Vector2(25, 25)
+layout_mode = 2
+orientation = 1
+resize_control = NodePath("../../..")
+vertical_resize = null
+
+[node name="SidePad2" type="CenterContainer" parent="MainBox/Footer"]
+custom_minimum_size = Vector2(2, 2.08165e-12)
+layout_mode = 2
+
+[node name="BottomPad2" type="CenterContainer" parent="MainBox"]
+custom_minimum_size = Vector2(2.08165e-12, 2)
+layout_mode = 2
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/OutputText.gd b/samples/client/petstore/gdscript/addons/gut/gui/OutputText.gd
new file mode 100644
index 000000000000..22eaa34c46b4
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/OutputText.gd
@@ -0,0 +1,341 @@
+@tool
+extends VBoxContainer
+
+# ##############################################################################
+# Keeps search results from the TextEdit
+# ##############################################################################
+class TextEditSearcher:
+ var te : TextEdit
+ var _last_term = ''
+ var _last_pos = Vector2(-1, -1)
+ var _ignore_caret_change = false
+
+ func set_text_edit(which):
+ te = which
+ te.caret_changed.connect(_on_caret_changed)
+
+
+ func _on_caret_changed():
+ if(_ignore_caret_change):
+ _ignore_caret_change = false
+ else:
+ _last_pos = _get_caret();
+
+
+ func _get_caret():
+ return Vector2(te.get_caret_column(), te.get_caret_line())
+
+
+ func _set_caret_and_sel(pos, len):
+ te.set_caret_line(pos.y)
+ te.set_caret_column(pos.x)
+ if(len > 0):
+ te.select(pos.y, pos.x, pos.y, pos.x + len)
+
+
+ func _find(term, search_flags):
+ var pos = _get_caret()
+ if(term == _last_term):
+ if(search_flags == 0):
+ pos = _last_pos
+ pos.x += 1
+ else:
+ pos = _last_pos
+ pos.x -= 1
+
+ var result = te.search(term, search_flags, pos.y, pos.x)
+# print('searching from ', pos, ' for "', term, '" = ', result)
+ if(result.y != -1):
+ _ignore_caret_change = true
+ _set_caret_and_sel(result, term.length())
+ _last_pos = result
+
+ _last_term = term
+
+ func find_next(term):
+ _find(term, 0)
+
+ func find_prev(term):
+ _find(term, te.SEARCH_BACKWARDS)
+
+
+
+# ##############################################################################
+# Start OutputText control code
+# ##############################################################################
+@onready var _ctrls = {
+ output = $Output,
+
+ copy_button = $Toolbar/CopyButton,
+ use_colors = $Toolbar/UseColors,
+ clear_button = $Toolbar/ClearButton,
+ word_wrap = $Toolbar/WordWrap,
+ show_search = $Toolbar/ShowSearch,
+ caret_position = $Toolbar/LblPosition,
+
+ search_bar = {
+ bar = $Search,
+ search_term = $Search/SearchTerm,
+ }
+}
+
+var _sr = TextEditSearcher.new()
+var _highlighter : CodeHighlighter
+
+# Automatically used when running the OutputText scene from the editor. Changes
+# to this method only affect test-running the control through the editor.
+func _test_running_setup():
+ _ctrls.use_colors.text = 'use colors'
+ _ctrls.show_search.text = 'search'
+ _ctrls.word_wrap.text = 'ww'
+
+ set_all_fonts("CourierPrime")
+ set_font_size(5)
+# print(_ctrls.output.get_theme_font_size("normal_font"))
+ _ctrls.output.queue_redraw()
+
+ load_file('user://.gut_editor.bbcode')
+ await get_tree().process_frame
+
+ show_search(true)
+ _ctrls.output.set_caret_line(0)
+ _ctrls.output.scroll_vertical = 0
+
+ _ctrls.output.caret_changed.connect(_on_caret_changed)
+
+
+func _on_caret_changed():
+ var txt = str("line:",_ctrls.output.get_caret_line(), ' col:', _ctrls.output.get_caret_column())
+ _ctrls.caret_position.text = str(txt)
+
+
+func _ready():
+ _sr.set_text_edit(_ctrls.output)
+ _ctrls.use_colors.icon = get_theme_icon('RichTextEffect', 'EditorIcons')
+ _ctrls.show_search.icon = get_theme_icon('Search', 'EditorIcons')
+ _ctrls.word_wrap.icon = get_theme_icon('Loop', 'EditorIcons')
+
+ _setup_colors()
+ _ctrls.use_colors.button_pressed = true
+ _use_highlighting(true)
+
+ if(get_parent() == get_tree().root):
+ _test_running_setup()
+
+# ------------------
+# Private
+# ------------------
+
+# Call this after changes in colors and the like to get them to apply. reloads
+# the text of the output control.
+func _refresh_output():
+ var orig_pos = _ctrls.output.scroll_vertical
+ var text = _ctrls.output.text
+
+ _ctrls.output.text = text
+ _ctrls.output.scroll_vertical = orig_pos
+
+
+func _create_highlighter(default_color=Color(1, 1, 1, 1)):
+ var to_return = CodeHighlighter.new()
+
+ to_return.function_color = default_color
+ to_return.number_color = default_color
+ to_return.symbol_color = default_color
+ to_return.member_variable_color = default_color
+
+ var keywords = [
+ ['Failed', Color.RED],
+ ['Passed', Color.GREEN],
+ ['Pending', Color.YELLOW],
+ ['Orphans', Color.YELLOW],
+ ['WARNING', Color.YELLOW],
+ ['ERROR', Color.RED]
+ ]
+
+ for keyword in keywords:
+ to_return.add_keyword_color(keyword[0], keyword[1])
+
+ return to_return
+
+
+func _setup_colors():
+ _ctrls.output.clear()
+
+ var f_color = null
+ if (_ctrls.output.theme == null) :
+ f_color = get_theme_color("font_color")
+ else :
+ f_color = _ctrls.output.theme.font_color
+
+ _highlighter = _create_highlighter()
+ _ctrls.output.queue_redraw()
+
+
+func _set_font(font_name, custom_name):
+ var rtl = _ctrls.output
+ if(font_name == null):
+ rtl.add_theme_font_override(custom_name, null)
+ else:
+ var dyn_font = FontFile.new()
+ dyn_font.load_dynamic_font('res://addons/gut/fonts/' + font_name + '.ttf')
+ rtl.add_theme_font_override(custom_name, dyn_font)
+
+
+func _use_highlighting(should):
+ if(should):
+ _ctrls.output.syntax_highlighter = _highlighter
+ else:
+ _ctrls.output.syntax_highlighter = null
+ _refresh_output()
+
+# ------------------
+# Events
+# ------------------
+func _on_CopyButton_pressed():
+ copy_to_clipboard()
+
+
+func _on_UseColors_pressed():
+ _use_highlighting(_ctrls.use_colors.button_pressed)
+
+
+func _on_ClearButton_pressed():
+ clear()
+
+
+func _on_ShowSearch_pressed():
+ show_search(_ctrls.show_search.button_pressed)
+
+
+func _on_SearchTerm_focus_entered():
+ _ctrls.search_bar.search_term.call_deferred('select_all')
+
+func _on_SearchNext_pressed():
+ _sr.find_next(_ctrls.search_bar.search_term.text)
+
+
+func _on_SearchPrev_pressed():
+ _sr.find_prev(_ctrls.search_bar.search_term.text)
+
+
+func _on_SearchTerm_text_changed(new_text):
+ if(new_text == ''):
+ _ctrls.output.deselect()
+ else:
+ _sr.find_next(new_text)
+
+
+func _on_SearchTerm_text_entered(new_text):
+ if(Input.is_physical_key_pressed(KEY_SHIFT)):
+ _sr.find_prev(new_text)
+ else:
+ _sr.find_next(new_text)
+
+
+func _on_SearchTerm_gui_input(event):
+ if(event is InputEventKey and !event.pressed and event.keycode == KEY_ESCAPE):
+ show_search(false)
+
+
+func _on_WordWrap_pressed():
+ if(_ctrls.word_wrap.button_pressed):
+ _ctrls.output.wrap_mode = TextEdit.LINE_WRAPPING_BOUNDARY
+ else:
+ _ctrls.output.wrap_mode = TextEdit.LINE_WRAPPING_NONE
+
+ _ctrls.output.queue_redraw()
+
+# ------------------
+# Public
+# ------------------
+func show_search(should):
+ _ctrls.search_bar.bar.visible = should
+ if(should):
+ _ctrls.search_bar.search_term.grab_focus()
+ _ctrls.search_bar.search_term.select_all()
+ _ctrls.show_search.button_pressed = should
+
+
+func search(text, start_pos, highlight=true):
+ return _sr.find_next(text)
+
+
+func copy_to_clipboard():
+ var selected = _ctrls.output.get_selected_text()
+ if(selected != ''):
+ DisplayServer.clipboard_set(selected)
+ else:
+ DisplayServer.clipboard_set(_ctrls.output.text)
+
+
+func clear():
+ _ctrls.output.text = ''
+
+
+func set_all_fonts(base_name):
+ if(base_name == 'Default'):
+ _set_font(null, 'font')
+ _set_font(null, 'normal_font')
+ _set_font(null, 'bold_font')
+ _set_font(null, 'italics_font')
+ _set_font(null, 'bold_italics_font')
+ else:
+ _set_font(base_name + '-Regular', 'font')
+ _set_font(base_name + '-Regular', 'normal_font')
+ _set_font(base_name + '-Bold', 'bold_font')
+ _set_font(base_name + '-Italic', 'italics_font')
+ _set_font(base_name + '-BoldItalic', 'bold_italics_font')
+
+
+func set_font_size(new_size):
+ return # this isn't working.
+ var rtl = _ctrls.output
+# rtl.add_theme_font_size_override("font", new_size)
+# rtl.add_theme_font_size_override("normal_font", new_size)
+# rtl.add_theme_font_size_override("bold_font", new_size)
+# rtl.add_theme_font_size_override("italics_font", new_size)
+# rtl.add_theme_font_size_override("bold_italics_font", new_size)
+ rtl.set("theme_override_font_sizes/size", new_size)
+# print(rtl.get("theme_override_font_sizes/size"))
+
+# if(rtl.get('custom_fonts/font') != null):
+# rtl.get('custom_fonts/font').size = new_size
+# rtl.get('custom_fonts/bold_italics_font').size = new_size
+# rtl.get('custom_fonts/bold_font').size = new_size
+# rtl.get('custom_fonts/italics_font').size = new_size
+# rtl.get('custom_fonts/normal_font').size = new_size
+
+
+func set_use_colors(value):
+ pass
+
+
+func get_use_colors():
+ return false;
+
+
+func get_rich_text_edit():
+ return _ctrls.output
+
+
+func load_file(path):
+ var f = FileAccess.open(path, FileAccess.READ)
+ if(f == null):
+ return
+
+ var t = f.get_as_text()
+ f = null # closes file
+ _ctrls.output.text = t
+ _ctrls.output.scroll_vertical = _ctrls.output.get_line_count()
+ _ctrls.output.set_deferred('scroll_vertical', _ctrls.output.get_line_count())
+
+
+func add_text(text):
+ if(is_inside_tree()):
+ _ctrls.output.text += text
+
+
+func scroll_to_line(line):
+ _ctrls.output.scroll_vertical = line
+ _ctrls.output.set_caret_line(line)
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/OutputText.tscn b/samples/client/petstore/gdscript/addons/gut/gui/OutputText.tscn
new file mode 100644
index 000000000000..32fe9f6cce68
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/OutputText.tscn
@@ -0,0 +1,114 @@
+[gd_scene load_steps=5 format=3 uid="uid://bqmo4dj64c7yl"]
+
+[ext_resource type="Script" path="res://addons/gut/gui/OutputText.gd" id="1"]
+
+[sub_resource type="Image" id="Image_o4jv5"]
+data = {
+"data": PackedByteArray(255, 255, 255, 0, 255, 255, 255, 0, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 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, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 93, 93, 131, 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, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 131, 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, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 131, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 94, 94, 127, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 128, 128, 4, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 231, 255, 93, 93, 55, 255, 97, 97, 58, 255, 93, 93, 233, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 231, 255, 94, 94, 54, 255, 94, 94, 57, 255, 93, 93, 233, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 97, 97, 42, 255, 255, 255, 0, 255, 255, 255, 0, 255, 97, 97, 42, 255, 93, 93, 233, 255, 93, 93, 232, 255, 93, 93, 41, 255, 255, 255, 0, 255, 255, 255, 0, 255, 97, 97, 42, 255, 93, 93, 233, 255, 93, 93, 232, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 96, 96, 45, 255, 97, 97, 42, 255, 255, 255, 0, 255, 97, 97, 42, 255, 97, 97, 42, 255, 255, 255, 0, 255, 98, 98, 47, 255, 97, 97, 42, 255, 255, 255, 0, 255, 97, 97, 42, 255, 97, 97, 42, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 96, 96, 45, 255, 93, 93, 235, 255, 93, 93, 233, 255, 97, 97, 42, 255, 255, 255, 0, 255, 255, 255, 0, 255, 94, 94, 46, 255, 93, 93, 236, 255, 93, 93, 233, 255, 97, 97, 42, 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, 93, 93, 235, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 233, 255, 95, 95, 59, 255, 96, 96, 61, 255, 93, 93, 235, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 233, 255, 95, 95, 59, 255, 96, 96, 61, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 93, 93, 255, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 255, 93, 93, 252, 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, 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, 0, 255, 255, 255, 0, 255, 255, 255, 0),
+"format": "RGBA8",
+"height": 16,
+"mipmaps": false,
+"width": 16
+}
+
+[sub_resource type="ImageTexture" id="ImageTexture_uk57o"]
+image = SubResource("Image_o4jv5")
+
+[sub_resource type="CodeHighlighter" id="CodeHighlighter_sv352"]
+number_color = Color(1, 1, 1, 1)
+symbol_color = Color(1, 1, 1, 1)
+function_color = Color(1, 1, 1, 1)
+member_variable_color = Color(1, 1, 1, 1)
+keyword_colors = {
+"ERROR": Color(1, 0, 0, 1),
+"Failed": Color(1, 0, 0, 1),
+"Orphans": Color(1, 1, 0, 1),
+"Passed": Color(0, 1, 0, 1),
+"Pending": Color(1, 1, 0, 1),
+"WARNING": Color(1, 1, 0, 1)
+}
+
+[node name="OutputText" type="VBoxContainer"]
+offset_right = 862.0
+offset_bottom = 523.0
+size_flags_horizontal = 3
+size_flags_vertical = 3
+script = ExtResource("1")
+
+[node name="Toolbar" type="HBoxContainer" parent="."]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="ShowSearch" type="Button" parent="Toolbar"]
+layout_mode = 2
+tooltip_text = "Search"
+toggle_mode = true
+icon = SubResource("ImageTexture_uk57o")
+
+[node name="UseColors" type="Button" parent="Toolbar"]
+layout_mode = 2
+tooltip_text = "Colorized Text"
+toggle_mode = true
+button_pressed = true
+icon = SubResource("ImageTexture_uk57o")
+
+[node name="WordWrap" type="Button" parent="Toolbar"]
+layout_mode = 2
+tooltip_text = "Word Wrap"
+toggle_mode = true
+icon = SubResource("ImageTexture_uk57o")
+
+[node name="CenterContainer" type="CenterContainer" parent="Toolbar"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="LblPosition" type="Label" parent="Toolbar"]
+layout_mode = 2
+
+[node name="CopyButton" type="Button" parent="Toolbar"]
+layout_mode = 2
+text = " Copy "
+
+[node name="ClearButton" type="Button" parent="Toolbar"]
+layout_mode = 2
+text = " Clear "
+
+[node name="Output" type="TextEdit" parent="."]
+layout_mode = 2
+size_flags_horizontal = 3
+size_flags_vertical = 3
+deselect_on_focus_loss_enabled = false
+virtual_keyboard_enabled = false
+middle_mouse_paste_enabled = false
+highlight_all_occurrences = true
+highlight_current_line = true
+syntax_highlighter = SubResource("CodeHighlighter_sv352")
+scroll_smooth = true
+
+[node name="Search" type="HBoxContainer" parent="."]
+visible = false
+layout_mode = 2
+
+[node name="SearchTerm" type="LineEdit" parent="Search"]
+layout_mode = 2
+size_flags_horizontal = 3
+
+[node name="SearchNext" type="Button" parent="Search"]
+layout_mode = 2
+text = "Next"
+
+[node name="SearchPrev" type="Button" parent="Search"]
+layout_mode = 2
+text = "Prev"
+
+[connection signal="pressed" from="Toolbar/ShowSearch" to="." method="_on_ShowSearch_pressed"]
+[connection signal="pressed" from="Toolbar/UseColors" to="." method="_on_UseColors_pressed"]
+[connection signal="pressed" from="Toolbar/WordWrap" to="." method="_on_WordWrap_pressed"]
+[connection signal="pressed" from="Toolbar/CopyButton" to="." method="_on_CopyButton_pressed"]
+[connection signal="pressed" from="Toolbar/ClearButton" to="." method="_on_ClearButton_pressed"]
+[connection signal="focus_entered" from="Search/SearchTerm" to="." method="_on_SearchTerm_focus_entered"]
+[connection signal="gui_input" from="Search/SearchTerm" to="." method="_on_SearchTerm_gui_input"]
+[connection signal="text_changed" from="Search/SearchTerm" to="." method="_on_SearchTerm_text_changed"]
+[connection signal="text_submitted" from="Search/SearchTerm" to="." method="_on_SearchTerm_text_entered"]
+[connection signal="pressed" from="Search/SearchNext" to="." method="_on_SearchNext_pressed"]
+[connection signal="pressed" from="Search/SearchPrev" to="." method="_on_SearchPrev_pressed"]
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/ResizeHandle.gd b/samples/client/petstore/gdscript/addons/gut/gui/ResizeHandle.gd
new file mode 100644
index 000000000000..3d46fde3442f
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/ResizeHandle.gd
@@ -0,0 +1,108 @@
+@tool
+extends ColorRect
+# #############################################################################
+# Resize Handle control. Place onto a control. Set the orientation, then
+# set the control that this should resize. Then you can resize the control
+# by dragging this thing around. It's pretty neat.
+# #############################################################################
+enum ORIENTATION {
+ LEFT,
+ RIGHT
+}
+
+@export var orientation := ORIENTATION.RIGHT :
+ get: return orientation
+ set(val):
+ orientation = val
+ queue_redraw()
+@export var resize_control : Control = null
+@export var vertical_resize := true
+
+var _line_width = .5
+var _line_color = Color(.4, .4, .4)
+var _active_line_color = Color(.3, .3, .3)
+var _invalid_line_color = Color(1, 0, 0)
+
+var _grab_margin = 2
+var _line_space = 3
+var _num_lines = 8
+
+var _mouse_down = false
+# Called when the node enters the scene tree for the first time.
+
+
+func _draw():
+ var c = _line_color
+ if(resize_control == null):
+ c = _invalid_line_color
+ elif(_mouse_down):
+ c = _active_line_color
+
+ if(orientation == ORIENTATION.LEFT):
+ _draw_resize_handle_left(c)
+ else:
+ _draw_resize_handle_right(c)
+
+
+func _gui_input(event):
+ if(resize_control == null):
+ return
+
+ if(orientation == ORIENTATION.LEFT):
+ _handle_left_input(event)
+ else:
+ _handle_right_input(event)
+
+
+# Draw the lines in the corner to show where you can
+# drag to resize the dialog
+func _draw_resize_handle_right(color):
+ var br = size
+
+ for i in range(_num_lines):
+ var start = br - Vector2(i * _line_space, 0)
+ var end = br - Vector2(0, i * _line_space)
+ draw_line(start, end, color, _line_width, true)
+
+
+func _draw_resize_handle_left(color):
+ var bl = Vector2(0, size.y)
+
+ for i in range(_num_lines):
+ var start = bl + Vector2(i * _line_space, 0)
+ var end = bl - Vector2(0, i * _line_space)
+ draw_line(start, end, color, _line_width, true)
+
+
+func _handle_right_input(event : InputEvent):
+ if(event is InputEventMouseMotion):
+ if(_mouse_down and
+ event.global_position.x > 0 and
+ event.global_position.y < DisplayServer.window_get_size().y):
+
+ if(vertical_resize):
+ resize_control.size.y += event.relative.y
+ resize_control.size.x += event.relative.x
+ elif(event is InputEventMouseButton):
+ if(event.button_index == MOUSE_BUTTON_LEFT):
+ _mouse_down = event.pressed
+ queue_redraw()
+
+
+func _handle_left_input(event : InputEvent):
+ if(event is InputEventMouseMotion):
+ if(_mouse_down and
+ event.global_position.x > 0 and
+ event.global_position.y < DisplayServer.window_get_size().y):
+
+ var start_size = resize_control.size
+ resize_control.size.x -= event.relative.x
+ if(resize_control.size.x != start_size.x):
+ resize_control.global_position.x += event.relative.x
+
+ if(vertical_resize):
+ resize_control.size.y += event.relative.y
+ elif(event is InputEventMouseButton):
+ if(event.button_index == MOUSE_BUTTON_LEFT):
+ _mouse_down = event.pressed
+ queue_redraw()
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/ResizeHandle.tscn b/samples/client/petstore/gdscript/addons/gut/gui/ResizeHandle.tscn
new file mode 100644
index 000000000000..2862ec92c270
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/ResizeHandle.tscn
@@ -0,0 +1,8 @@
+[gd_scene load_steps=2 format=3 uid="uid://bvrqqgjpyouse"]
+
+[ext_resource type="Script" path="res://addons/gut/gui/ResizeHandle.gd" id="1_oi5ed"]
+
+[node name="ResizeHandle" type="ColorRect"]
+custom_minimum_size = Vector2(20, 20)
+color = Color(1, 1, 1, 0)
+script = ExtResource("1_oi5ed")
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/ResultsTree.gd b/samples/client/petstore/gdscript/addons/gut/gui/ResultsTree.gd
new file mode 100644
index 000000000000..4438ddaf786b
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/ResultsTree.gd
@@ -0,0 +1,348 @@
+@tool
+extends Control
+
+var _show_orphans = true
+var show_orphans = true :
+ get: return _show_orphans
+ set(val): _show_orphans = val
+
+
+var _hide_passing = true
+var hide_passing = true :
+ get: return _hide_passing
+ set(val): _hide_passing = val
+
+
+var _icons = {
+ red = load('res://addons/gut/images/red.png'),
+ green = load('res://addons/gut/images/green.png'),
+ yellow = load('res://addons/gut/images/yellow.png'),
+}
+const _col_1_bg_color = Color(0, 0, 0, .1)
+var _max_icon_width = 10
+var _root : TreeItem
+
+@onready var _ctrls = {
+ tree = $Tree,
+ lbl_overlay = $Tree/TextOverlay
+}
+
+
+signal item_selected(script_path, inner_class, test_name, line_number)
+# -------------------
+# Private
+# -------------------
+func _ready():
+ _root = _ctrls.tree.create_item()
+ _root = _ctrls.tree.create_item()
+ _ctrls.tree.set_hide_root(true)
+ _ctrls.tree.columns = 2
+ _ctrls.tree.set_column_expand(0, true)
+ _ctrls.tree.set_column_expand(1, false)
+ _ctrls.tree.set_column_clip_content(0, true)
+
+ $Tree.item_selected.connect(_on_tree_item_selected)
+
+ if(get_parent() == get_tree().root):
+ _test_running_setup()
+
+func _test_running_setup():
+ load_json_file('user://.gut_editor.json')
+
+
+func _on_tree_item_selected():
+ var item = _ctrls.tree.get_selected()
+ var item_meta = item.get_metadata(0)
+ var item_type = null
+
+ # Only select the left side of the tree item, cause I like that better.
+ # you can still click the right, but only the left gets highlighted.
+ if(item.is_selected(1)):
+ item.deselect(1)
+ item.select(0)
+
+ if(item_meta == null):
+ return
+ else:
+ item_type = item_meta.type
+
+ var script_path = '';
+ var line = -1;
+ var test_name = ''
+ var inner_class = ''
+
+ if(item_type == 'test'):
+ var s_item = item.get_parent()
+ script_path = s_item.get_metadata(0)['path']
+ inner_class = s_item.get_metadata(0)['inner_class']
+ line = -1
+ test_name = item.get_text(0)
+ elif(item_type == 'assert'):
+ var s_item = item.get_parent().get_parent()
+ script_path = s_item.get_metadata(0)['path']
+ inner_class = s_item.get_metadata(0)['inner_class']
+ line = _get_line_number_from_assert_msg(item.get_text(0))
+ test_name = item.get_parent().get_text(0)
+ elif(item_type == 'script'):
+ script_path = item.get_metadata(0)['path']
+ if(item.get_parent() != _root):
+ inner_class = item.get_text(0)
+ line = -1
+ test_name = ''
+ else:
+ return
+
+ item_selected.emit(script_path, inner_class, test_name, line)
+
+
+func _get_line_number_from_assert_msg(msg):
+ var line = -1
+ if(msg.find('at line') > 0):
+ line = msg.split("at line")[-1].split(" ")[-1].to_int()
+ return line
+
+
+func _get_path_and_inner_class_name_from_test_path(path):
+ var to_return = {
+ path = '',
+ inner_class = ''
+ }
+
+ to_return.path = path
+ if !path.ends_with('.gd'):
+ var loc = path.find('.gd')
+ to_return.inner_class = path.split('.')[-1]
+ to_return.path = path.substr(0, loc + 3)
+ return to_return
+
+
+func _find_script_item_with_path(path):
+ var items = _root.get_children()
+ var to_return = null
+
+ var idx = 0
+ while(idx < items.size() and to_return == null):
+ var item = items[idx]
+ if(item.get_metadata(0).path == path):
+ to_return = item
+ else:
+ idx += 1
+
+ return to_return
+
+
+func _add_script_tree_item(script_path, script_json):
+ var path_info = _get_path_and_inner_class_name_from_test_path(script_path)
+ var item_text = script_path
+ var parent = _root
+
+ if(path_info.inner_class != ''):
+ parent = _find_script_item_with_path(path_info.path)
+ item_text = path_info.inner_class
+ if(parent == null):
+ parent = _add_script_tree_item(path_info.path, {})
+
+ parent.get_metadata(0).inner_tests += script_json['props']['tests']
+ parent.get_metadata(0).inner_passing += script_json['props']['tests']
+ parent.get_metadata(0).inner_passing -= script_json['props']['failures']
+ parent.get_metadata(0).inner_passing -= script_json['props']['pending']
+
+ var total_text = str("All ", parent.get_metadata(0).inner_tests, " passed")
+ if(parent.get_metadata(0).inner_passing != parent.get_metadata(0).inner_tests):
+ total_text = str(parent.get_metadata(0).inner_passing, '/', parent.get_metadata(0).inner_tests, ' passed.')
+ parent.set_text(1, total_text)
+
+ var item = _ctrls.tree.create_item(parent)
+ item.set_text(0, item_text)
+ var meta = {
+ "type":"script",
+ "path":path_info.path,
+ "inner_class":path_info.inner_class,
+ "json":script_json,
+ "inner_passing":0,
+ "inner_tests":0
+ }
+ item.set_metadata(0, meta)
+ item.set_custom_bg_color(1, _col_1_bg_color)
+
+ return item
+
+
+func _add_assert_item(text, icon, parent_item):
+ # print(' * adding assert')
+ var assert_item = _ctrls.tree.create_item(parent_item)
+ assert_item.set_icon_max_width(0, _max_icon_width)
+ assert_item.set_text(0, text)
+ assert_item.set_metadata(0, {"type":"assert"})
+ assert_item.set_icon(0, icon)
+ assert_item.set_custom_bg_color(1, _col_1_bg_color)
+
+ return assert_item
+
+
+func _add_test_tree_item(test_name, test_json, script_item):
+ # print(' * adding test ', test_name)
+ var no_orphans_to_show = !_show_orphans or (_show_orphans and test_json.orphans == 0)
+ if(_hide_passing and test_json['status'] == 'pass' and no_orphans_to_show):
+ return
+
+ var item = _ctrls.tree.create_item(script_item)
+ var status = test_json['status']
+ var meta = {"type":"test", "json":test_json}
+
+ item.set_text(0, test_name)
+ item.set_text(1, status)
+ item.set_text_alignment(1, HORIZONTAL_ALIGNMENT_RIGHT)
+ item.set_custom_bg_color(1, _col_1_bg_color)
+
+ item.set_metadata(0, meta)
+ item.set_icon_max_width(0, _max_icon_width)
+
+ var orphan_text = 'orphans'
+ if(test_json.orphans == 1):
+ orphan_text = 'orphan'
+ orphan_text = str(test_json.orphans, ' ', orphan_text)
+
+ if(status == 'pass' and no_orphans_to_show):
+ item.set_icon(0, _icons.green)
+ elif(status == 'pass' and !no_orphans_to_show):
+ item.set_icon(0, _icons.yellow)
+ item.set_text(1, orphan_text)
+ elif(status == 'fail'):
+ item.set_icon(0, _icons.red)
+ else:
+ item.set_icon(0, _icons.yellow)
+
+ if(!_hide_passing):
+ for passing in test_json.passing:
+ _add_assert_item('pass: ' + passing, _icons.green, item)
+
+ for failure in test_json.failing:
+ _add_assert_item("fail: " + failure.replace("\n", ''), _icons.red, item)
+
+ for pending in test_json.pending:
+ _add_assert_item("pending: " + pending.replace("\n", ''), _icons.yellow, item)
+
+ if(status != 'pass' and !no_orphans_to_show):
+ _add_assert_item(orphan_text, _icons.yellow, item)
+
+ return item
+
+
+func _add_script_to_tree(key, script_json):
+ var tests = script_json['tests']
+ var test_keys = tests.keys()
+ var s_item = _add_script_tree_item(key, script_json)
+ var bad_count = 0
+
+ for test_key in test_keys:
+ var t_item = _add_test_tree_item(test_key, tests[test_key], s_item)
+ if(tests[test_key].status != 'pass'):
+ bad_count += 1
+ elif(t_item != null):
+ t_item.collapsed = true
+
+ if(s_item.get_children().size() == 0):
+ s_item.free()
+ else:
+ var total_text = str('All ', test_keys.size(), ' passed')
+ if(bad_count == 0):
+ s_item.collapsed = true
+ else:
+ total_text = str(test_keys.size() - bad_count, '/', test_keys.size(), ' passed')
+ s_item.set_text(1, total_text)
+
+
+func _free_childless_scripts():
+ var items = _root.get_children()
+ for item in items:
+ var next_item = item.get_next()
+ if(item.get_children().size() == 0):
+ item.free()
+ item = next_item
+
+
+func _show_all_passed():
+ if(_root.get_children() == null):
+ add_centered_text('Everything passed!')
+
+
+func _load_result_tree(j):
+ var scripts = j['test_scripts']['scripts']
+ var script_keys = scripts.keys()
+ # if we made it here, the json is valid and we did something, otherwise the
+ # 'nothing to see here' should be visible.
+ clear_centered_text()
+
+ for key in script_keys:
+ if(scripts[key]['props']['tests'] > 0):
+ _add_script_to_tree(key, scripts[key])
+
+ _free_childless_scripts()
+ _show_all_passed()
+
+
+# -------------------
+# Public
+# -------------------
+func load_json_file(path):
+ var file = FileAccess.open(path, FileAccess.READ)
+ var text = ''
+ if(file != null):
+ text = file.get_as_text()
+
+ if(text != ''):
+ var test_json_conv = JSON.new()
+ var result = test_json_conv.parse(text)
+ if(result != OK):
+ add_centered_text(str(path, " has invalid json in it \n",
+ 'Error ', result, "@", test_json_conv.get_error_line(), "\n",
+ test_json_conv.get_error_message()))
+ return
+
+ var data = test_json_conv.get_data()
+ load_json_results(data)
+ else:
+ add_centered_text(str(path, ' was empty or does not exist.'))
+
+
+func load_json_results(j):
+ clear()
+ _load_result_tree(j)
+
+
+func clear():
+ _ctrls.tree.clear()
+ _root = _ctrls.tree.create_item()
+
+
+func set_summary_min_width(width):
+ _ctrls.tree.set_column_custom_minimum_width(1, width)
+
+
+func add_centered_text(t):
+ _ctrls.lbl_overlay.visible = true
+ _ctrls.lbl_overlay.text = t
+
+
+func clear_centered_text():
+ _ctrls.lbl_overlay.visible = false
+ _ctrls.lbl_overlay.text = ''
+
+
+func collapse_all():
+ set_collapsed_on_all(_root, true)
+
+
+func expand_all():
+ set_collapsed_on_all(_root, false)
+
+
+func set_collapsed_on_all(item, value):
+ item.set_collapsed_recursive(value)
+ if(item == _root and value):
+ item.set_collapsed(false)
+
+
+func get_selected():
+ return _ctrls.tree.get_selected()
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/ResultsTree.tscn b/samples/client/petstore/gdscript/addons/gut/gui/ResultsTree.tscn
new file mode 100644
index 000000000000..ab6a1a5a9d90
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/ResultsTree.tscn
@@ -0,0 +1,32 @@
+[gd_scene load_steps=2 format=3 uid="uid://dls5r5f6157nq"]
+
+[ext_resource type="Script" path="res://addons/gut/gui/ResultsTree.gd" id="1_b4uub"]
+
+[node name="ResultsTree" type="VBoxContainer"]
+custom_minimum_size = Vector2(10, 10)
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
+offset_right = -70.0
+offset_bottom = -104.0
+grow_horizontal = 2
+grow_vertical = 2
+size_flags_horizontal = 3
+size_flags_vertical = 3
+script = ExtResource("1_b4uub")
+
+[node name="Tree" type="Tree" parent="."]
+layout_mode = 2
+size_flags_horizontal = 3
+size_flags_vertical = 3
+columns = 2
+hide_root = true
+
+[node name="TextOverlay" type="Label" parent="Tree"]
+visible = false
+layout_mode = 1
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
+grow_horizontal = 2
+grow_vertical = 2
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/RunAtCursor.gd b/samples/client/petstore/gdscript/addons/gut/gui/RunAtCursor.gd
new file mode 100644
index 000000000000..d0482548359a
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/RunAtCursor.gd
@@ -0,0 +1,158 @@
+@tool
+extends Control
+
+
+var ScriptTextEditors = load('res://addons/gut/gui/script_text_editor_controls.gd')
+
+@onready var _ctrls = {
+ btn_script = $HBox/BtnRunScript,
+ btn_inner = $HBox/BtnRunInnerClass,
+ btn_method = $HBox/BtnRunMethod,
+ lbl_none = $HBox/LblNoneSelected,
+ arrow_1 = $HBox/Arrow1,
+ arrow_2 = $HBox/Arrow2
+}
+
+var _editors = null
+var _cur_editor = null
+var _last_line = -1
+var _cur_script_path = null
+var _last_info = {
+ script = null,
+ inner_class = null,
+ test_method = null
+}
+
+
+signal run_tests(what)
+
+
+func _ready():
+ _ctrls.lbl_none.visible = true
+ _ctrls.btn_script.visible = false
+ _ctrls.btn_inner.visible = false
+ _ctrls.btn_method.visible = false
+ _ctrls.arrow_1.visible = false
+ _ctrls.arrow_2.visible = false
+
+# ----------------
+# Private
+# ----------------
+func _set_editor(which):
+ _last_line = -1
+ if(_cur_editor != null and _cur_editor.get_ref()):
+ # _cur_editor.get_ref().disconnect('cursor_changed',Callable(self,'_on_cursor_changed'))
+ _cur_editor.get_ref().caret_changed.disconnect(_on_cursor_changed)
+
+ if(which != null):
+ _cur_editor = weakref(which)
+ which.caret_changed.connect(_on_cursor_changed.bind(which))
+ # which.connect('cursor_changed',Callable(self,'_on_cursor_changed'),[which])
+
+ _last_line = which.get_caret_line()
+ _last_info = _editors.get_line_info()
+ _update_buttons(_last_info)
+
+
+func _update_buttons(info):
+ _ctrls.lbl_none.visible = _cur_script_path == null
+ _ctrls.btn_script.visible = _cur_script_path != null
+
+ _ctrls.btn_inner.visible = info.inner_class != null
+ _ctrls.arrow_1.visible = info.inner_class != null
+ _ctrls.btn_inner.text = str(info.inner_class)
+ _ctrls.btn_inner.tooltip_text = str("Run all tests in Inner-Test-Class ", info.inner_class)
+
+ _ctrls.btn_method.visible = info.test_method != null
+ _ctrls.arrow_2.visible = info.test_method != null
+ _ctrls.btn_method.text = str(info.test_method)
+ _ctrls.btn_method.tooltip_text = str("Run test ", info.test_method)
+
+ # The button's new size won't take effect until the next frame.
+ # This appears to be what was causing the button to not be clickable the
+ # first time.
+ call_deferred("_update_size")
+
+func _update_size():
+ custom_minimum_size.x = _ctrls.btn_method.size.x + _ctrls.btn_method.position.x
+
+# ----------------
+# Events
+# ----------------
+func _on_cursor_changed(which):
+ if(which.get_caret_line() != _last_line):
+ _last_line = which.get_caret_line()
+ _last_info = _editors.get_line_info()
+ _update_buttons(_last_info)
+
+
+func _on_BtnRunScript_pressed():
+ var info = _last_info.duplicate()
+ info.script = _cur_script_path.get_file()
+ info.inner_class = null
+ info.test_method = null
+ emit_signal("run_tests", info)
+
+
+func _on_BtnRunInnerClass_pressed():
+ var info = _last_info.duplicate()
+ info.script = _cur_script_path.get_file()
+ info.test_method = null
+ emit_signal("run_tests", info)
+
+
+func _on_BtnRunMethod_pressed():
+ var info = _last_info.duplicate()
+ info.script = _cur_script_path.get_file()
+ emit_signal("run_tests", info)
+
+
+# ----------------
+# Public
+# ----------------
+func set_script_text_editors(value):
+ _editors = value
+
+
+func activate_for_script(path):
+ _ctrls.btn_script.visible = true
+ _ctrls.btn_script.text = path.get_file()
+ _ctrls.btn_script.tooltip_text = str("Run all tests in script ", path)
+ _cur_script_path = path
+ _editors.refresh()
+ # We have to wait a beat for the visibility to change on
+ # the editors, otherwise we always get the first one.
+ await get_tree().process_frame
+ _set_editor(_editors.get_current_text_edit())
+
+
+func get_script_button():
+ return _ctrls.btn_script
+
+
+func get_inner_button():
+ return _ctrls.btn_inner
+
+
+func get_test_button():
+ return _ctrls.btn_method
+
+
+# not used, thought was configurable but it's just the script prefix
+func set_method_prefix(value):
+ _editors.set_method_prefix(value)
+
+
+# not used, thought was configurable but it's just the script prefix
+func set_inner_class_prefix(value):
+ _editors.set_inner_class_prefix(value)
+
+
+# Mashed this function in here b/c it has _editors. Probably should be
+# somewhere else (possibly in script_text_editor_controls).
+func search_current_editor_for_text(txt):
+ var te = _editors.get_current_text_edit()
+ var result = te.search(txt, 0, 0, 0)
+ var to_return = -1
+
+ return to_return
diff --git a/samples/client/petstore/gdscript/addons/gut/gui/RunAtCursor.tscn b/samples/client/petstore/gdscript/addons/gut/gui/RunAtCursor.tscn
new file mode 100644
index 000000000000..bba1dacb1eca
--- /dev/null
+++ b/samples/client/petstore/gdscript/addons/gut/gui/RunAtCursor.tscn
@@ -0,0 +1,65 @@
+[gd_scene load_steps=4 format=3 uid="uid://0yunjxtaa8iw"]
+
+[ext_resource type="Script" path="res://addons/gut/gui/RunAtCursor.gd" id="1"]
+[ext_resource type="Texture2D" uid="uid://cr6tvdv0ve6cv" path="res://addons/gut/gui/play.png" id="2"]
+[ext_resource type="Texture2D" uid="uid://6wra5rxmfsrl" path="res://addons/gut/gui/arrow.png" id="3"]
+
+[node name="RunAtCursor" type="Control"]
+layout_mode = 3
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
+offset_right = 1.0
+offset_bottom = -527.0
+grow_horizontal = 2
+grow_vertical = 2
+size_flags_horizontal = 3
+size_flags_vertical = 3
+script = ExtResource("1")
+
+[node name="HBox" type="HBoxContainer" parent="."]
+layout_mode = 0
+anchor_right = 1.0
+anchor_bottom = 1.0
+size_flags_horizontal = 3
+size_flags_vertical = 3
+
+[node name="LblNoneSelected" type="Label" parent="HBox"]
+layout_mode = 2
+text = ""
+
+[node name="BtnRunScript" type="Button" parent="HBox"]
+visible = false
+layout_mode = 2
+text = "