1*16d86563SAlexander Pyhalov/* 2*16d86563SAlexander Pyhalov * CDDL HEADER START 3*16d86563SAlexander Pyhalov * 4*16d86563SAlexander Pyhalov * The contents of this file are subject to the terms of the 5*16d86563SAlexander Pyhalov * Common Development and Distribution License (the "License"). 6*16d86563SAlexander Pyhalov * You may not use this file except in compliance with the License. 7*16d86563SAlexander Pyhalov * 8*16d86563SAlexander Pyhalov * You can obtain a copy of the license at src/OPENSOLARIS.LICENSE 9*16d86563SAlexander Pyhalov * or http://www.opensolaris.org/os/licensing. 10*16d86563SAlexander Pyhalov * See the License for the specific language governing permissions 11*16d86563SAlexander Pyhalov * and limitations under the License. 12*16d86563SAlexander Pyhalov * 13*16d86563SAlexander Pyhalov * When distributing Covered Code, include this CDDL HEADER in each 14*16d86563SAlexander Pyhalov * file and include the License file at src/OPENSOLARIS.LICENSE. 15*16d86563SAlexander Pyhalov * If applicable, add the following below this CDDL HEADER, with the 16*16d86563SAlexander Pyhalov * fields enclosed by brackets "[]" replaced with your own identifying 17*16d86563SAlexander Pyhalov * information: Portions Copyright [yyyy] [name of copyright owner] 18*16d86563SAlexander Pyhalov * 19*16d86563SAlexander Pyhalov * CDDL HEADER END 20*16d86563SAlexander Pyhalov */ 21*16d86563SAlexander Pyhalov/* 22*16d86563SAlexander Pyhalov * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 23*16d86563SAlexander Pyhalov * Use is subject to license terms. 24*16d86563SAlexander Pyhalov */ 25*16d86563SAlexander Pyhalov/* 26*16d86563SAlexander Pyhalov * COPYRIGHT AND PERMISSION NOTICE 27*16d86563SAlexander Pyhalov * 28*16d86563SAlexander Pyhalov * Copyright (c) 1991-2005 Unicode, Inc. All rights reserved. Distributed 29*16d86563SAlexander Pyhalov * under the Terms of Use in http://www.unicode.org/copyright.html. 30*16d86563SAlexander Pyhalov * 31*16d86563SAlexander Pyhalov * This file has been modified by Sun Microsystems, Inc. 32*16d86563SAlexander Pyhalov * 33*16d86563SAlexander Pyhalov */ 34*16d86563SAlexander Pyhalov 35*16d86563SAlexander Pyhalov#include <sys/errno.h> 36*16d86563SAlexander Pyhalovutf8%system { 37*16d86563SAlexander Pyhalov direction { 38*16d86563SAlexander Pyhalov @condition { 39*16d86563SAlexander Pyhalov inputsize >= 1; 40*16d86563SAlexander Pyhalov @between 0X0...0X7F; 41*16d86563SAlexander Pyhalov } @map { 42*16d86563SAlexander Pyhalov 0x00 0x00 // U+0000 43*16d86563SAlexander Pyhalov 0x01 0x01 // U+0001 44*16d86563SAlexander Pyhalov 0x02 0x02 // U+0002 45*16d86563SAlexander Pyhalov 0x03 0x03 // U+0003 46*16d86563SAlexander Pyhalov 0x04 0x04 // U+0004 47*16d86563SAlexander Pyhalov 0x05 0x05 // U+0005 48*16d86563SAlexander Pyhalov 0x06 0x06 // U+0006 49*16d86563SAlexander Pyhalov 0x07 0x07 // U+0007 50*16d86563SAlexander Pyhalov 0x08 0x08 // U+0008 51*16d86563SAlexander Pyhalov 0x09 0x09 // U+0009 52*16d86563SAlexander Pyhalov 0x0A 0x0A // U+000a 53*16d86563SAlexander Pyhalov 0x0B 0x0B // U+000b 54*16d86563SAlexander Pyhalov 0x0C 0x0C // U+000c 55*16d86563SAlexander Pyhalov 0x0D 0x0D // U+000d 56*16d86563SAlexander Pyhalov 0x0E 0x0E // U+000e 57*16d86563SAlexander Pyhalov 0x0F 0x0F // U+000f 58*16d86563SAlexander Pyhalov 0x10 0x10 // U+0010 59*16d86563SAlexander Pyhalov 0x11 0x11 // U+0011 60*16d86563SAlexander Pyhalov 0x12 0x12 // U+0012 61*16d86563SAlexander Pyhalov 0x13 0x13 // U+0013 62*16d86563SAlexander Pyhalov 0x14 0x14 // U+0014 63*16d86563SAlexander Pyhalov 0x15 0x15 // U+0015 64*16d86563SAlexander Pyhalov 0x16 0x16 // U+0016 65*16d86563SAlexander Pyhalov 0x17 0x17 // U+0017 66*16d86563SAlexander Pyhalov 0x18 0x18 // U+0018 67*16d86563SAlexander Pyhalov 0x19 0x19 // U+0019 68*16d86563SAlexander Pyhalov 0x1A 0x7F // U+001a 69*16d86563SAlexander Pyhalov 0x1B 0x1B // U+001b 70*16d86563SAlexander Pyhalov 0x1C 0x1A // U+001c 71*16d86563SAlexander Pyhalov 0x1D 0x1D // U+001d 72*16d86563SAlexander Pyhalov 0x1E 0x1E // U+001e 73*16d86563SAlexander Pyhalov 0x1F 0x1F // U+001f 74*16d86563SAlexander Pyhalov 0x20 0x20 // U+0020 75*16d86563SAlexander Pyhalov 0x21 0x21 // U+0021 76*16d86563SAlexander Pyhalov 0x22 0x22 // U+0022 77*16d86563SAlexander Pyhalov 0x23 0x23 // U+0023 78*16d86563SAlexander Pyhalov 0x24 0x24 // U+0024 79*16d86563SAlexander Pyhalov 0x25 0x25 // U+0025 80*16d86563SAlexander Pyhalov 0x26 0x26 // U+0026 81*16d86563SAlexander Pyhalov 0x27 0x27 // U+0027 82*16d86563SAlexander Pyhalov 0x28 0x28 // U+0028 83*16d86563SAlexander Pyhalov 0x29 0x29 // U+0029 84*16d86563SAlexander Pyhalov 0x2A 0x2A // U+002a 85*16d86563SAlexander Pyhalov 0x2B 0x2B // U+002b 86*16d86563SAlexander Pyhalov 0x2C 0x2C // U+002c 87*16d86563SAlexander Pyhalov 0x2D 0x2D // U+002d 88*16d86563SAlexander Pyhalov 0x2E 0x2E // U+002e 89*16d86563SAlexander Pyhalov 0x2F 0x2F // U+002f 90*16d86563SAlexander Pyhalov 0x30 0x30 // U+0030 91*16d86563SAlexander Pyhalov 0x31 0x31 // U+0031 92*16d86563SAlexander Pyhalov 0x32 0x32 // U+0032 93*16d86563SAlexander Pyhalov 0x33 0x33 // U+0033 94*16d86563SAlexander Pyhalov 0x34 0x34 // U+0034 95*16d86563SAlexander Pyhalov 0x35 0x35 // U+0035 96*16d86563SAlexander Pyhalov 0x36 0x36 // U+0036 97*16d86563SAlexander Pyhalov 0x37 0x37 // U+0037 98*16d86563SAlexander Pyhalov 0x38 0x38 // U+0038 99*16d86563SAlexander Pyhalov 0x39 0x39 // U+0039 100*16d86563SAlexander Pyhalov 0x3A 0x3A // U+003a 101*16d86563SAlexander Pyhalov 0x3B 0x3B // U+003b 102*16d86563SAlexander Pyhalov 0x3C 0x3C // U+003c 103*16d86563SAlexander Pyhalov 0x3D 0x3D // U+003d 104*16d86563SAlexander Pyhalov 0x3E 0x3E // U+003e 105*16d86563SAlexander Pyhalov 0x3F 0x3F // U+003f 106*16d86563SAlexander Pyhalov 0x40 0x40 // U+0040 107*16d86563SAlexander Pyhalov 0x41 0x41 // U+0041 108*16d86563SAlexander Pyhalov 0x42 0x42 // U+0042 109*16d86563SAlexander Pyhalov 0x43 0x43 // U+0043 110*16d86563SAlexander Pyhalov 0x44 0x44 // U+0044 111*16d86563SAlexander Pyhalov 0x45 0x45 // U+0045 112*16d86563SAlexander Pyhalov 0x46 0x46 // U+0046 113*16d86563SAlexander Pyhalov 0x47 0x47 // U+0047 114*16d86563SAlexander Pyhalov 0x48 0x48 // U+0048 115*16d86563SAlexander Pyhalov 0x49 0x49 // U+0049 116*16d86563SAlexander Pyhalov 0x4A 0x4A // U+004a 117*16d86563SAlexander Pyhalov 0x4B 0x4B // U+004b 118*16d86563SAlexander Pyhalov 0x4C 0x4C // U+004c 119*16d86563SAlexander Pyhalov 0x4D 0x4D // U+004d 120*16d86563SAlexander Pyhalov 0x4E 0x4E // U+004e 121*16d86563SAlexander Pyhalov 0x4F 0x4F // U+004f 122*16d86563SAlexander Pyhalov 0x50 0x50 // U+0050 123*16d86563SAlexander Pyhalov 0x51 0x51 // U+0051 124*16d86563SAlexander Pyhalov 0x52 0x52 // U+0052 125*16d86563SAlexander Pyhalov 0x53 0x53 // U+0053 126*16d86563SAlexander Pyhalov 0x54 0x54 // U+0054 127*16d86563SAlexander Pyhalov 0x55 0x55 // U+0055 128*16d86563SAlexander Pyhalov 0x56 0x56 // U+0056 129*16d86563SAlexander Pyhalov 0x57 0x57 // U+0057 130*16d86563SAlexander Pyhalov 0x58 0x58 // U+0058 131*16d86563SAlexander Pyhalov 0x59 0x59 // U+0059 132*16d86563SAlexander Pyhalov 0x5A 0x5A // U+005a 133*16d86563SAlexander Pyhalov 0x5B 0x5B // U+005b 134*16d86563SAlexander Pyhalov 0x5C 0x5C // U+005c 135*16d86563SAlexander Pyhalov 0x5D 0x5D // U+005d 136*16d86563SAlexander Pyhalov 0x5E 0x5E // U+005e 137*16d86563SAlexander Pyhalov 0x5F 0x5F // U+005f 138*16d86563SAlexander Pyhalov 0x60 0x60 // U+0060 139*16d86563SAlexander Pyhalov 0x61 0x61 // U+0061 140*16d86563SAlexander Pyhalov 0x62 0x62 // U+0062 141*16d86563SAlexander Pyhalov 0x63 0x63 // U+0063 142*16d86563SAlexander Pyhalov 0x64 0x64 // U+0064 143*16d86563SAlexander Pyhalov 0x65 0x65 // U+0065 144*16d86563SAlexander Pyhalov 0x66 0x66 // U+0066 145*16d86563SAlexander Pyhalov 0x67 0x67 // U+0067 146*16d86563SAlexander Pyhalov 0x68 0x68 // U+0068 147*16d86563SAlexander Pyhalov 0x69 0x69 // U+0069 148*16d86563SAlexander Pyhalov 0x6A 0x6A // U+006a 149*16d86563SAlexander Pyhalov 0x6B 0x6B // U+006b 150*16d86563SAlexander Pyhalov 0x6C 0x6C // U+006c 151*16d86563SAlexander Pyhalov 0x6D 0x6D // U+006d 152*16d86563SAlexander Pyhalov 0x6E 0x6E // U+006e 153*16d86563SAlexander Pyhalov 0x6F 0x6F // U+006f 154*16d86563SAlexander Pyhalov 0x70 0x70 // U+0070 155*16d86563SAlexander Pyhalov 0x71 0x71 // U+0071 156*16d86563SAlexander Pyhalov 0x72 0x72 // U+0072 157*16d86563SAlexander Pyhalov 0x73 0x73 // U+0073 158*16d86563SAlexander Pyhalov 0x74 0x74 // U+0074 159*16d86563SAlexander Pyhalov 0x75 0x75 // U+0075 160*16d86563SAlexander Pyhalov 0x76 0x76 // U+0076 161*16d86563SAlexander Pyhalov 0x77 0x77 // U+0077 162*16d86563SAlexander Pyhalov 0x78 0x78 // U+0078 163*16d86563SAlexander Pyhalov 0x79 0x79 // U+0079 164*16d86563SAlexander Pyhalov 0x7A 0x7A // U+007a 165*16d86563SAlexander Pyhalov 0x7B 0x7B // U+007b 166*16d86563SAlexander Pyhalov 0x7C 0x7C // U+007c 167*16d86563SAlexander Pyhalov 0x7D 0x7D // U+007d 168*16d86563SAlexander Pyhalov 0x7E 0x7E // U+007e 169*16d86563SAlexander Pyhalov 0x7F 0x1C // U+007f 170*16d86563SAlexander Pyhalov default 0x3f 171*16d86563SAlexander Pyhalov }; 172*16d86563SAlexander Pyhalov @condition { 173*16d86563SAlexander Pyhalov inputsize <= 1; 174*16d86563SAlexander Pyhalov @between 0XC0...0XFD; 175*16d86563SAlexander Pyhalov } @operation { 176*16d86563SAlexander Pyhalov error EINVAL; 177*16d86563SAlexander Pyhalov }; 178*16d86563SAlexander Pyhalov @condition { 179*16d86563SAlexander Pyhalov inputsize >= 2; 180*16d86563SAlexander Pyhalov @between 0XC080...0XDFBF; 181*16d86563SAlexander Pyhalov } @map { 182*16d86563SAlexander Pyhalov 0xC2A0 0xFF // U+00a0 183*16d86563SAlexander Pyhalov 0xC2A4 0xFD // U+00a4 184*16d86563SAlexander Pyhalov 0xC2B0 0xF8 // U+00b0 185*16d86563SAlexander Pyhalov 0xC2B7 0xFA // U+00b7 186*16d86563SAlexander Pyhalov 0xD081 0xF0 // U+0401 187*16d86563SAlexander Pyhalov 0xD084 0xF2 // U+0404 188*16d86563SAlexander Pyhalov 0xD087 0xF4 // U+0407 189*16d86563SAlexander Pyhalov 0xD08E 0xF6 // U+040e 190*16d86563SAlexander Pyhalov 0xD090 0x80 // U+0410 191*16d86563SAlexander Pyhalov 0xD091 0x81 // U+0411 192*16d86563SAlexander Pyhalov 0xD092 0x82 // U+0412 193*16d86563SAlexander Pyhalov 0xD093 0x83 // U+0413 194*16d86563SAlexander Pyhalov 0xD094 0x84 // U+0414 195*16d86563SAlexander Pyhalov 0xD095 0x85 // U+0415 196*16d86563SAlexander Pyhalov 0xD096 0x86 // U+0416 197*16d86563SAlexander Pyhalov 0xD097 0x87 // U+0417 198*16d86563SAlexander Pyhalov 0xD098 0x88 // U+0418 199*16d86563SAlexander Pyhalov 0xD099 0x89 // U+0419 200*16d86563SAlexander Pyhalov 0xD09A 0x8A // U+041a 201*16d86563SAlexander Pyhalov 0xD09B 0x8B // U+041b 202*16d86563SAlexander Pyhalov 0xD09C 0x8C // U+041c 203*16d86563SAlexander Pyhalov 0xD09D 0x8D // U+041d 204*16d86563SAlexander Pyhalov 0xD09E 0x8E // U+041e 205*16d86563SAlexander Pyhalov 0xD09F 0x8F // U+041f 206*16d86563SAlexander Pyhalov 0xD0A0 0x90 // U+0420 207*16d86563SAlexander Pyhalov 0xD0A1 0x91 // U+0421 208*16d86563SAlexander Pyhalov 0xD0A2 0x92 // U+0422 209*16d86563SAlexander Pyhalov 0xD0A3 0x93 // U+0423 210*16d86563SAlexander Pyhalov 0xD0A4 0x94 // U+0424 211*16d86563SAlexander Pyhalov 0xD0A5 0x95 // U+0425 212*16d86563SAlexander Pyhalov 0xD0A6 0x96 // U+0426 213*16d86563SAlexander Pyhalov 0xD0A7 0x97 // U+0427 214*16d86563SAlexander Pyhalov 0xD0A8 0x98 // U+0428 215*16d86563SAlexander Pyhalov 0xD0A9 0x99 // U+0429 216*16d86563SAlexander Pyhalov 0xD0AA 0x9A // U+042a 217*16d86563SAlexander Pyhalov 0xD0AB 0x9B // U+042b 218*16d86563SAlexander Pyhalov 0xD0AC 0x9C // U+042c 219*16d86563SAlexander Pyhalov 0xD0AD 0x9D // U+042d 220*16d86563SAlexander Pyhalov 0xD0AE 0x9E // U+042e 221*16d86563SAlexander Pyhalov 0xD0AF 0x9F // U+042f 222*16d86563SAlexander Pyhalov 0xD0B0 0xA0 // U+0430 223*16d86563SAlexander Pyhalov 0xD0B1 0xA1 // U+0431 224*16d86563SAlexander Pyhalov 0xD0B2 0xA2 // U+0432 225*16d86563SAlexander Pyhalov 0xD0B3 0xA3 // U+0433 226*16d86563SAlexander Pyhalov 0xD0B4 0xA4 // U+0434 227*16d86563SAlexander Pyhalov 0xD0B5 0xA5 // U+0435 228*16d86563SAlexander Pyhalov 0xD0B6 0xA6 // U+0436 229*16d86563SAlexander Pyhalov 0xD0B7 0xA7 // U+0437 230*16d86563SAlexander Pyhalov 0xD0B8 0xA8 // U+0438 231*16d86563SAlexander Pyhalov 0xD0B9 0xA9 // U+0439 232*16d86563SAlexander Pyhalov 0xD0BA 0xAA // U+043a 233*16d86563SAlexander Pyhalov 0xD0BB 0xAB // U+043b 234*16d86563SAlexander Pyhalov 0xD0BC 0xAC // U+043c 235*16d86563SAlexander Pyhalov 0xD0BD 0xAD // U+043d 236*16d86563SAlexander Pyhalov 0xD0BE 0xAE // U+043e 237*16d86563SAlexander Pyhalov 0xD0BF 0xAF // U+043f 238*16d86563SAlexander Pyhalov 0xD180 0xE0 // U+0440 239*16d86563SAlexander Pyhalov 0xD181 0xE1 // U+0441 240*16d86563SAlexander Pyhalov 0xD182 0xE2 // U+0442 241*16d86563SAlexander Pyhalov 0xD183 0xE3 // U+0443 242*16d86563SAlexander Pyhalov 0xD184 0xE4 // U+0444 243*16d86563SAlexander Pyhalov 0xD185 0xE5 // U+0445 244*16d86563SAlexander Pyhalov 0xD186 0xE6 // U+0446 245*16d86563SAlexander Pyhalov 0xD187 0xE7 // U+0447 246*16d86563SAlexander Pyhalov 0xD188 0xE8 // U+0448 247*16d86563SAlexander Pyhalov 0xD189 0xE9 // U+0449 248*16d86563SAlexander Pyhalov 0xD18A 0xEA // U+044a 249*16d86563SAlexander Pyhalov 0xD18B 0xEB // U+044b 250*16d86563SAlexander Pyhalov 0xD18C 0xEC // U+044c 251*16d86563SAlexander Pyhalov 0xD18D 0xED // U+044d 252*16d86563SAlexander Pyhalov 0xD18E 0xEE // U+044e 253*16d86563SAlexander Pyhalov 0xD18F 0xEF // U+044f 254*16d86563SAlexander Pyhalov 0xD191 0xF1 // U+0451 255*16d86563SAlexander Pyhalov 0xD194 0xF3 // U+0454 256*16d86563SAlexander Pyhalov 0xD197 0xF5 // U+0457 257*16d86563SAlexander Pyhalov 0xD19E 0xF7 // U+045e 258*16d86563SAlexander Pyhalov default 0x3f 259*16d86563SAlexander Pyhalov }; 260*16d86563SAlexander Pyhalov @condition { 261*16d86563SAlexander Pyhalov inputsize <= 2; 262*16d86563SAlexander Pyhalov @between 0XE0...0XFD; 263*16d86563SAlexander Pyhalov } @operation { 264*16d86563SAlexander Pyhalov error EINVAL; 265*16d86563SAlexander Pyhalov }; 266*16d86563SAlexander Pyhalov @condition { 267*16d86563SAlexander Pyhalov inputsize >= 3; 268*16d86563SAlexander Pyhalov @between 0XE08080...0XECBFBF, 0XED8080...0XED9FBF, 0XEE8080...0XEFBFBF; 269*16d86563SAlexander Pyhalov } @map { 270*16d86563SAlexander Pyhalov 0xE28496 0xFC // U+2116 271*16d86563SAlexander Pyhalov 0xE28899 0xF9 // U+2219 272*16d86563SAlexander Pyhalov 0xE2889A 0xFB // U+221a 273*16d86563SAlexander Pyhalov 0xE29480 0xC4 // U+2500 274*16d86563SAlexander Pyhalov 0xE29482 0xB3 // U+2502 275*16d86563SAlexander Pyhalov 0xE2948C 0xDA // U+250c 276*16d86563SAlexander Pyhalov 0xE29490 0xBF // U+2510 277*16d86563SAlexander Pyhalov 0xE29494 0xC0 // U+2514 278*16d86563SAlexander Pyhalov 0xE29498 0xD9 // U+2518 279*16d86563SAlexander Pyhalov 0xE2949C 0xC3 // U+251c 280*16d86563SAlexander Pyhalov 0xE294A4 0xB4 // U+2524 281*16d86563SAlexander Pyhalov 0xE294AC 0xC2 // U+252c 282*16d86563SAlexander Pyhalov 0xE294B4 0xC1 // U+2534 283*16d86563SAlexander Pyhalov 0xE294BC 0xC5 // U+253c 284*16d86563SAlexander Pyhalov 0xE29590 0xCD // U+2550 285*16d86563SAlexander Pyhalov 0xE29591 0xBA // U+2551 286*16d86563SAlexander Pyhalov 0xE29592 0xD5 // U+2552 287*16d86563SAlexander Pyhalov 0xE29593 0xD6 // U+2553 288*16d86563SAlexander Pyhalov 0xE29594 0xC9 // U+2554 289*16d86563SAlexander Pyhalov 0xE29595 0xB8 // U+2555 290*16d86563SAlexander Pyhalov 0xE29596 0xB7 // U+2556 291*16d86563SAlexander Pyhalov 0xE29597 0xBB // U+2557 292*16d86563SAlexander Pyhalov 0xE29598 0xD4 // U+2558 293*16d86563SAlexander Pyhalov 0xE29599 0xD3 // U+2559 294*16d86563SAlexander Pyhalov 0xE2959A 0xC8 // U+255a 295*16d86563SAlexander Pyhalov 0xE2959B 0xBE // U+255b 296*16d86563SAlexander Pyhalov 0xE2959C 0xBD // U+255c 297*16d86563SAlexander Pyhalov 0xE2959D 0xBC // U+255d 298*16d86563SAlexander Pyhalov 0xE2959E 0xC6 // U+255e 299*16d86563SAlexander Pyhalov 0xE2959F 0xC7 // U+255f 300*16d86563SAlexander Pyhalov 0xE295A0 0xCC // U+2560 301*16d86563SAlexander Pyhalov 0xE295A1 0xB5 // U+2561 302*16d86563SAlexander Pyhalov 0xE295A2 0xB6 // U+2562 303*16d86563SAlexander Pyhalov 0xE295A3 0xB9 // U+2563 304*16d86563SAlexander Pyhalov 0xE295A4 0xD1 // U+2564 305*16d86563SAlexander Pyhalov 0xE295A5 0xD2 // U+2565 306*16d86563SAlexander Pyhalov 0xE295A6 0xCB // U+2566 307*16d86563SAlexander Pyhalov 0xE295A7 0xCF // U+2567 308*16d86563SAlexander Pyhalov 0xE295A8 0xD0 // U+2568 309*16d86563SAlexander Pyhalov 0xE295A9 0xCA // U+2569 310*16d86563SAlexander Pyhalov 0xE295AA 0xD8 // U+256a 311*16d86563SAlexander Pyhalov 0xE295AB 0xD7 // U+256b 312*16d86563SAlexander Pyhalov 0xE295AC 0xCE // U+256c 313*16d86563SAlexander Pyhalov 0xE29680 0xDF // U+2580 314*16d86563SAlexander Pyhalov 0xE29684 0xDC // U+2584 315*16d86563SAlexander Pyhalov 0xE29688 0xDB // U+2588 316*16d86563SAlexander Pyhalov 0xE2968C 0xDD // U+258c 317*16d86563SAlexander Pyhalov 0xE29690 0xDE // U+2590 318*16d86563SAlexander Pyhalov 0xE29691 0xB0 // U+2591 319*16d86563SAlexander Pyhalov 0xE29692 0xB1 // U+2592 320*16d86563SAlexander Pyhalov 0xE29693 0xB2 // U+2593 321*16d86563SAlexander Pyhalov 0xE296A0 0xFE // U+25a0 322*16d86563SAlexander Pyhalov 0xefbfbe error 323*16d86563SAlexander Pyhalov 0xefbfbf error 324*16d86563SAlexander Pyhalov default 0x3f 325*16d86563SAlexander Pyhalov }; // for last @map syntax 326*16d86563SAlexander Pyhalov @condition { 327*16d86563SAlexander Pyhalov inputsize <= 3; 328*16d86563SAlexander Pyhalov @between 0XF0...0XFD; 329*16d86563SAlexander Pyhalov } @operation { 330*16d86563SAlexander Pyhalov error EINVAL; 331*16d86563SAlexander Pyhalov }; 332*16d86563SAlexander Pyhalov @condition { 333*16d86563SAlexander Pyhalov inputsize >= 4; 334*16d86563SAlexander Pyhalov @between 0XF0808080...0XF7BFBFBF; 335*16d86563SAlexander Pyhalov } @operation { 336*16d86563SAlexander Pyhalov output = 0x3f; 337*16d86563SAlexander Pyhalov discard 4; 338*16d86563SAlexander Pyhalov }; 339*16d86563SAlexander Pyhalov @condition { 340*16d86563SAlexander Pyhalov inputsize <= 4; 341*16d86563SAlexander Pyhalov @between 0XF8...0XFD; 342*16d86563SAlexander Pyhalov } @operation { 343*16d86563SAlexander Pyhalov error EINVAL; 344*16d86563SAlexander Pyhalov }; 345*16d86563SAlexander Pyhalov @condition { 346*16d86563SAlexander Pyhalov inputsize >= 5; 347*16d86563SAlexander Pyhalov @between 0XF880808080...0XFBBFBFBFBF; 348*16d86563SAlexander Pyhalov } @operation { 349*16d86563SAlexander Pyhalov output = 0x3f; 350*16d86563SAlexander Pyhalov discard 5; 351*16d86563SAlexander Pyhalov }; 352*16d86563SAlexander Pyhalov @condition { 353*16d86563SAlexander Pyhalov inputsize <= 5; 354*16d86563SAlexander Pyhalov @between 0XFC...0XFD; 355*16d86563SAlexander Pyhalov } @operation { 356*16d86563SAlexander Pyhalov error EINVAL; 357*16d86563SAlexander Pyhalov }; 358*16d86563SAlexander Pyhalov @condition { 359*16d86563SAlexander Pyhalov inputsize >= 6; 360*16d86563SAlexander Pyhalov @between 0XFC8080808080...0XFDBFBFBFBFBF; 361*16d86563SAlexander Pyhalov } @operation { 362*16d86563SAlexander Pyhalov output = 0x3f; 363*16d86563SAlexander Pyhalov discard 6; 364*16d86563SAlexander Pyhalov }; 365*16d86563SAlexander Pyhalov }; // for direction 366*16d86563SAlexander Pyhalov} // for conversion name 367