Skip to content

Instantly share code, notes, and snippets.

@JeckLabs
Last active March 16, 2023 00:03
Show Gist options
  • Save JeckLabs/cdf6a6d41a64d0f4a1400b4f1b136e25 to your computer and use it in GitHub Desktop.
Save JeckLabs/cdf6a6d41a64d0f4a1400b4f1b136e25 to your computer and use it in GitHub Desktop.
char roman_numbers[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
76, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 76, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 88, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0,
67, 67, 76, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 88, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0,
67, 67, 67, 76, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 67, 67, 88, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0,
67, 68, 76, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 68, 88, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 76, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 88, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0,
68, 67, 76, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 88, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0,
68, 67, 67, 76, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 88, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0,
68, 67, 67, 67, 76, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0,
68, 67, 67, 67, 88, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 88, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 88, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 88, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 88, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 88, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 88, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 88, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 88, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0,
67, 77, 76, 88, 88, 88, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 67, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 67, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 67, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 67, 73, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 67, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 67, 86, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 67, 86, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 67, 86, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 0,
67, 77, 88, 67, 73, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
char result[16];
char * intToRoman(int num){
*((int *) result) = 0x4d4d4d4d;
memcpy(result + num / 1000, roman_numbers + num % 1000 * 16, 13);
return result;
}
class Solution:
def intToRoman(self, num: int) -> str:
if num < 1:
raise ValueError("Number must be >= 1")
roman_letters = (
(1000, "M"),
(900, "CM"),
(500, "D"),
(400, "CD"),
(100, "C"),
(90, "XC"),
(50, "L"),
(40, "XL"),
(10, "X"),
(9, "IX"),
(8, "VIII"),
(7, "VII"),
(6, "VI"),
(5, "V"),
(4, "IV"),
(3, "III"),
(2, "II"),
(1, "I"),
)
max_value, max_letter = roman_letters[0]
result = max_letter * (num // max_value)
num %= max_value
while num > 0:
for (v, l) in roman_letters:
if num < v:
continue
result += l
num -= v
break
return result
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment