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