1 using System;
2
3
4
5 private byte[] classMapData = [0u, 120u, 156u, 236u, 221u, 137u, 146u, 155u, 54u, 0u, 128u, 97u, 220u, 195u, 189u, 239u, 251u, 204u, 251u, 63u, 101u, 235u, 204u, 172u, 167u, 84u, 35u, 144u, 132u, 36u, 16u, 248u, 251u, 103u, 190u, 241u, 38u, 107u, 3u, 22u, 32u, 240u, 38u, 105u, 167u, 239u, 166u, 233u, 159u, 71u, 211u, 52u, 221u, 19u, 62u, 122u, 248u, 96u, 246u, 235u, 15u, 51u, 94u, 147u, 235u, 227u, 183u, 199u, 79u, 50u, 158u, 251u, 211u, 195u, 31u, 15u, 63u, 62u, 60u, 182u, 126u, 250u, 236u, 225u, 231u, 76u, 127u, 174u, 44u, 247u, 235u, 192u, 15u, 111u, 143u, 173u, 251u, 229u, 225u, 211u, 135u, 95u, 223u, 214u, 59u, 189u, 61u, 254u, 245u, 240u, 205u, 108u, 253u, 223u, 63u, 124u, 187u, 176u, 140u, 191u, 223u, 30u, 63u, 15u, 126u, 255u, 139u, 135u, 119u, 15u, 95u, 62u, 124u, 181u, 240u, 218u, 223u, 222u, 214u, 247u, 251u, 212u, 110u, 255u, 237u, 101u, 218u, 240u, 220u, 91u, 198u, 235u, 123u, 214u, 123u, 249u, 163u, 175u, 95u, 146u, 164u, 209u, 171u, 189u, 47u, 168u, 185u, 175u, 41u, 89u, 214u, 20u, 60u, 214u, 186u, 113u, 106u, 177u, 238u, 193u, 215u, 177u, 227u, 44u, 117u, 12u, 77u, 145u, 229u, 135u, 199u, 95u, 203u, 220u, 171u, 182u, 205u, 120u, 170u, 164u, 165u, 107u, 193u, 30u, 159u, 147u, 165u, 173u, 141u, 124u, 108u, 230u, 252u, 236u, 234u, 12u, 93u, 241u, 30u, 242u, 30u, 60u, 46u, 125u, 189u, 229u, 254u, 189u, 87u, 169u, 117u, 183u, 248u, 60u, 208u, 243u, 243u, 195u, 209u, 227u, 87u, 219u, 209u, 199u, 107u, 108u, 220u, 150u, 62u, 3u, 232u, 152u, 230u, 159u, 157u, 82u, 251u, 50u, 245u, 153u, 46u, 54u, 47u, 45u, 61u, 39u, 37u, 220u, 198u, 86u, 63u, 67u, 120u, 110u, 195u, 81u, 29u, 113u, 14u, 170u, 127u, 37u, 251u, 229u, 125u, 189u, 175u, 95u, 35u, 84u, 178u, 157u, 177u, 243u, 116u, 254u, 158u, 123u, 31u, 203u, 177u, 237u, 202u, 221u, 254u, 156u, 215u, 181u, 186u, 127u, 217u, 163u, 156u, 235u, 120u, 78u, 71u, 220u, 223u, 245u, 214u, 163u, 156u, 229u, 246u, 120u, 47u, 181u, 215u, 150u, 61u, 175u, 101u, 35u, 207u, 115u, 61u, 218u, 50u, 23u, 109u, 153u, 175u, 182u, 142u, 103u, 56u, 63u, 148u, 28u, 55u, 181u, 149u, 46u, 47u, 60u, 119u, 123u, 207u, 165u, 169u, 101u, 135u, 215u, 183u, 216u, 243u, 231u, 227u, 58u, 77u, 233u, 49u, 189u, 175u, 252u, 250u, 22u, 44u, 115u, 109u, 62u, 88u, 154u, 239u, 194u, 109u, 220u, 186u, 255u, 195u, 247u, 151u, 51u, 223u, 134u, 219u, 150u, 187u, 255u, 215u, 222u, 203u, 8u, 251u, 63u, 245u, 245u, 252u, 125u, 175u, 237u, 247u, 156u, 253u, 159u, 218u, 207u, 169u, 99u, 113u, 74u, 188u, 166u, 102u, 222u, 78u, 109u, 207u, 218u, 186u, 114u, 247u, 99u, 248u, 188u, 17u, 247u, 127u, 248u, 156u, 220u, 243u, 63u, 118u, 140u, 44u, 237u, 255u, 249u, 178u, 183u, 120u, 86u, 51u, 255u, 231u, 172u, 163u, 228u, 125u, 166u, 58u, 203u, 249u, 31u, 62u, 39u, 119u, 255u, 151u, 158u, 255u, 107u, 231u, 212u, 218u, 156u, 57u, 175u, 246u, 250u, 95u, 115u, 12u, 206u, 199u, 101u, 109u, 172u, 151u, 230u, 180u, 165u, 57u, 110u, 233u, 61u, 199u, 142u, 157u, 212u, 239u, 173u, 253u, 126u, 78u, 57u, 243u, 235u, 218u, 156u, 184u, 244u, 220u, 216u, 178u, 231u, 203u, 168u, 217u, 31u, 173u, 206u, 255u, 210u, 245u, 228u, 140u, 229u, 218u, 175u, 91u, 215u, 98u, 249u, 185u, 243u, 97u, 206u, 220u, 159u, 26u, 247u, 165u, 185u, 52u, 246u, 220u, 103u, 61u, 231u, 255u, 53u, 225u, 88u, 228u, 140u, 245u, 200u, 251u, 127u, 233u, 185u, 225u, 60u, 183u, 215u, 254u, 95u, 27u, 247u, 86u, 251u, 63u, 124u, 143u, 53u, 231u, 255u, 136u, 251u, 191u, 85u, 243u, 249u, 173u, 118u, 255u, 79u, 211u, 250u, 249u, 60u, 77u, 255u, 223u, 159u, 57u, 207u, 237u, 121u, 254u, 47u, 149u, 154u, 179u, 106u, 202u, 89u, 127u, 203u, 117u, 149u, 60u, 47u, 103u, 187u, 194u, 243u, 36u, 231u, 218u, 121u, 11u, 158u, 191u, 117u, 255u, 149u, 238u, 255u, 154u, 235u, 193u, 217u, 187u, 5u, 95u, 151u, 140u, 117u, 106u, 185u, 37u, 243u, 68u, 207u, 235u, 116u, 79u, 207u, 238u, 193u, 99u, 216u, 158u, 231u, 113u, 201u, 186u, 114u, 247u, 127u, 108u, 238u, 78u, 109u, 67u, 238u, 121u, 151u, 187u, 255u, 99u, 235u, 58u, 122u, 223u, 247u, 92u, 126u, 235u, 121u, 46u, 119u, 157u, 177u, 199u, 216u, 122u, 83u, 237u, 113u, 204u, 151u, 182u, 117u, 12u, 75u, 198u, 122u, 109u, 124u, 182u, 46u, 107u, 20u, 37u, 199u, 208u, 213u, 157u, 169u, 214u, 199u, 65u, 201u, 50u, 75u, 199u, 47u, 182u, 174u, 165u, 239u, 199u, 126u, 157u, 218u, 182u, 146u, 117u, 229u, 212u, 115u, 236u, 214u, 198u, 115u, 212u, 214u, 174u, 141u, 211u, 52u, 254u, 246u, 199u, 58u, 219u, 246u, 74u, 210u, 209u, 197u, 230u, 205u, 156u, 249u, 255u, 30u, 60u, 150u, 190u, 126u, 148u, 70u, 223u, 254u, 81u, 247u, 207u, 40u, 227u, 211u, 187u, 209u, 143u, 143u, 81u, 138u, 125u, 94u, 207u, 253u, 44u, 218u, 226u, 51u, 109u, 143u, 207u, 127u, 175u, 244u, 249u, 243u, 76u, 165u, 198u, 215u, 62u, 144u, 36u, 73u, 58u, 79u, 45u, 239u, 219u, 246u, 188u, 255u, 115u, 255u, 95u, 215u, 214u, 113u, 107u, 253u, 249u, 43u, 246u, 186u, 173u, 159u, 69u, 91u, 53u, 202u, 250u, 247u, 248u, 252u, 27u, 190u, 110u, 254u, 51u, 130u, 87u, 255u, 252u, 189u, 231u, 223u, 35u, 72u, 253u, 28u, 102u, 154u, 226u, 227u, 61u, 127u, 94u, 237u, 159u, 63u, 239u, 41u, 182u, 61u, 189u, 254u, 252u, 92u, 237u, 58u, 251u, 249u, 255u, 252u, 251u, 6u, 103u, 221u, 254u, 35u, 58u, 195u, 252u, 95u, 50u, 127u, 44u, 205u, 35u, 181u, 175u, 207u, 153u, 235u, 82u, 127u, 15u, 230u, 136u, 214u, 246u, 223u, 149u, 175u, 255u, 71u, 109u, 127u, 237u, 113u, 50u, 202u, 53u, 124u, 207u, 241u, 203u, 25u, 131u, 43u, 86u, 114u, 60u, 28u, 121u, 143u, 218u, 226u, 216u, 237u, 121u, 236u, 79u, 25u, 207u, 169u, 29u, 131u, 87u, 55u, 210u, 53u, 173u, 69u, 45u, 206u, 143u, 181u, 246u, 60u, 254u, 183u, 172u, 171u, 102u, 153u, 71u, 85u, 179u, 143u, 90u, 236u, 211u, 17u, 219u, 107u, 94u, 27u, 173u, 22u, 231u, 111u, 201u, 120u, 108u, 89u, 206u, 150u, 237u, 29u, 173u, 146u, 253u, 127u, 166u, 227u, 103u, 173u, 216u, 54u, 183u, 156u, 147u, 75u, 142u, 167u, 154u, 235u, 209u, 218u, 241u, 180u, 52u, 55u, 46u, 189u, 87u, 233u, 149u, 235u, 113u, 190u, 142u, 232u, 138u, 247u, 250u, 146u, 198u, 44u, 117u, 127u, 49u, 250u, 253u, 71u, 171u, 237u, 191u, 39u, 30u, 143u, 106u, 244u, 241u, 175u, 41u, 245u, 190u, 230u, 251u, 96u, 233u, 51u, 65u, 234u, 245u, 75u, 227u, 151u, 123u, 220u, 212u, 140u, 127u, 234u, 62u, 190u, 100u, 251u, 95u, 89u, 238u, 207u, 8u, 74u, 151u, 185u, 247u, 251u, 216u, 186u, 79u, 183u, 190u, 46u, 92u, 70u, 105u, 71u, 239u, 247u, 30u, 199u, 80u, 205u, 207u, 164u, 194u, 223u, 171u, 93u, 94u, 171u, 99u, 97u, 10u, 190u, 206u, 41u, 247u, 117u, 169u, 237u, 136u, 61u, 214u, 180u, 180u, 61u, 185u, 199u, 116u, 143u, 115u, 167u, 197u, 251u, 218u, 163u, 163u, 207u, 49u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 254u, 115u, 230u, 108u, 191u, 174u, 88u, 238u, 185u, 26u, 251u, 119u, 188u, 87u, 57u, 255u, 239u, 179u, 199u, 216u, 54u, 143u, 190u, 253u, 173u, 74u, 237u, 187u, 154u, 185u, 191u, 247u, 191u, 255u, 174u, 61u, 254u, 94u, 225u, 251u, 35u, 252u, 119u, 1u, 0u, 0u, 230u, 237u, 189u, 190u, 165u, 214u, 238u, 95u, 98u, 173u, 45u, 123u, 203u, 250u, 85u, 222u, 115u, 124u, 215u, 254u, 91u, 83u, 198u, 127u, 191u, 98u, 99u, 189u, 245u, 124u, 28u, 165u, 179u, 109u, 239u, 149u, 218u, 107u, 238u, 31u, 105u, 123u, 71u, 99u, 76u, 0u, 128u, 82u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 205u, 59u, 250u, 255u, 171u, 115u, 22u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 164u, 109u, 221u, 43u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 97u, 181u, 63u, 115u, 186u, 146u, 179u, 118u, 246u, 237u, 151u, 116u, 76u, 45u, 231u, 191u, 91u, 166u, 216u, 186u, 95u, 121u, 254u, 126u, 223u, 251u, 113u, 9u, 223u, 79u, 238u, 120u, 30u, 253u, 222u, 195u, 253u, 170u, 109u, 205u, 247u, 231u, 104u, 114u, 186u, 194u, 121u, 120u, 245u, 174u, 188u, 143u, 214u, 222u, 219u, 209u, 231u, 207u, 158u, 215u, 182u, 112u, 46u, 142u, 205u, 205u, 189u, 231u, 235u, 165u, 235u, 212u, 40u, 99u, 116u, 134u, 74u, 223u, 255u, 213u, 174u, 195u, 185u, 247u, 63u, 57u, 247u, 71u, 37u, 227u, 183u, 117u, 121u, 173u, 182u, 119u, 169u, 240u, 88u, 159u, 31u, 243u, 45u, 150u, 223u, 171u, 220u, 241u, 60u, 114u, 27u, 90u, 204u, 87u, 71u, 180u, 118u, 252u, 157u, 185u, 222u, 231u, 122u, 108u, 223u, 213u, 174u, 99u, 233u, 125u, 180u, 126u, 207u, 177u, 206u, 114u, 253u, 235u, 185u, 95u, 195u, 245u, 228u, 110u, 75u, 171u, 249u, 191u, 103u, 107u, 199u, 234u, 85u, 186u, 205u, 30u, 195u, 247u, 182u, 246u, 94u, 231u, 223u, 123u, 62u, 238u, 121u, 175u, 185u, 101u, 255u, 231u, 94u, 7u, 75u, 231u, 181u, 165u, 90u, 125u, 127u, 235u, 245u, 175u, 246u, 251u, 163u, 181u, 101u, 123u, 71u, 188u, 127u, 80u, 159u, 114u, 174u, 33u, 103u, 186u, 254u, 72u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 146u, 36u, 73u, 210u, 149u, 187u, 23u, 218u, 115u, 91u, 174u, 80u, 233u, 248u, 2u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 192u, 149u, 73u, 146u, 206u, 149u, 249u, 251u, 92u, 29u, 125u, 157u, 223u, 114u, 253u, 111u, 177u, 172u, 165u, 231u, 221u, 18u, 235u, 14u, 151u, 177u, 165u, 181u, 109u, 10u, 191u, 191u, 244u, 181u, 206u, 209u, 209u, 231u, 145u, 99u, 70u, 146u, 206u, 145u, 57u, 191u, 77u, 87u, 31u, 135u, 163u, 239u, 41u, 90u, 31u, 127u, 225u, 235u, 111u, 149u, 106u, 183u, 191u, 229u, 250u, 91u, 109u, 83u, 201u, 54u, 143u, 184u, 255u, 175u, 124u, 62u, 170u, 190u, 94u, 231u, 194u, 214u, 121u, 98u, 175u, 98u, 219u, 126u, 228u, 250u, 71u, 24u, 147u, 87u, 46u, 103u, 188u, 123u, 124u, 255u, 232u, 107u, 6u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 240u, 111u, 251u, 112u, 76u, 2u, 0u, 0u, 0u, 48u, 168u, 127u, 235u, 61u, 139u, 161u, 160u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 170u, 62u, 177u, 132u, 112u, 202u];
6
7 private int* classMap = null;
8
9 private bool classMapDataCompressed = true;
10
11 public static class JsonClassMap
12 {
13 public static void Init()
14 {
15 if (classMap == null)
16 {
17 classMap = System.Lex.CreateClassMap(classMapData.Begin(), classMapData.Length(), classMapDataCompressed);
18 }
19 }
20 public static int GetClass(uchar c)
21 {
22 int i = cast<int>(c);
23 if (i < 1114112)
24 {
25 return classMap[i];
26 }
27 else
28 {
29 return -1;
30 }
31 }
32 }