OSDN Git Service

change typo in closing tag
authorandy <andy@1ca29b6e-896d-4ea0-84a5-967f57386b96>
Sat, 3 Feb 2007 19:30:17 +0000 (19:30 +0000)
committerandy <andy@1ca29b6e-896d-4ea0-84a5-967f57386b96>
Sat, 3 Feb 2007 19:30:17 +0000 (19:30 +0000)
git-svn-id: https://svn.sourceforge.jp/svnroot/nucleus-jp/nucleus-jp/trunk@184 1ca29b6e-896d-4ea0-84a5-967f57386b96

16 files changed:
euc/nucleus/libs/mb_emulator/convert.table
euc/nucleus/libs/mb_emulator/history.html
euc/nucleus/libs/mb_emulator/lower.table [new file with mode: 0644]
euc/nucleus/libs/mb_emulator/mb-emulator.ini
euc/nucleus/libs/mb_emulator/mb-emulator.php
euc/nucleus/libs/mb_emulator/sjistouni.table
euc/nucleus/libs/mb_emulator/unitosjis.table
euc/nucleus/libs/mb_emulator/upper.table [new file with mode: 0644]
utf8/nucleus/libs/mb_emulator/convert.table
utf8/nucleus/libs/mb_emulator/history.html
utf8/nucleus/libs/mb_emulator/lower.table [new file with mode: 0644]
utf8/nucleus/libs/mb_emulator/mb-emulator.ini
utf8/nucleus/libs/mb_emulator/mb-emulator.php
utf8/nucleus/libs/mb_emulator/sjistouni.table
utf8/nucleus/libs/mb_emulator/unitosjis.table
utf8/nucleus/libs/mb_emulator/upper.table [new file with mode: 0644]

index 4472525..b1e0e17 100755 (executable)
-<?php\r
-$_sjistoeuc_byte1 = array(\r
-129 => 161 ,130 => 163 ,131 => 165 ,132 => 167 ,133 => 169 ,134 => 171 ,\r
-135 => 173 ,136 => 175 ,137 => 177 ,138 => 179 ,139 => 181 ,140 => 183 ,\r
-141 => 185 ,142 => 187 ,143 => 189 ,144 => 191 ,145 => 193 ,146 => 195 ,\r
-147 => 197 ,148 => 199 ,149 => 201 ,150 => 203 ,151 => 205 ,152 => 207 ,\r
-153 => 209 ,154 => 211 ,155 => 213 ,156 => 215 ,157 => 217 ,158 => 219 ,\r
-159 => 221 ,224 => 223 ,225 => 225 ,226 => 227 ,227 => 229 ,228 => 231 ,\r
-229 => 233 ,230 => 235 ,231 => 237 ,232 => 239 ,233 => 241 ,234 => 243 ,\r
-235 => 245 ,236 => 247 ,237 => 249 ,238 => 251 ,239 => 253 ,240 => 255 );\r
-\r
-$_sjistoeuc_byte2 = array(\r
-0 => array(\r
-64 => 161 ,65 => 162 ,66 => 163 ,67 => 164 ,68 => 165 ,69 => 166 ,\r
-70 => 167 ,71 => 168 ,72 => 169 ,73 => 170 ,74 => 171 ,75 => 172 ,\r
-76 => 173 ,77 => 174 ,78 => 175 ,79 => 176 ,80 => 177 ,81 => 178 ,\r
-82 => 179 ,83 => 180 ,84 => 181 ,85 => 182 ,86 => 183 ,87 => 184 ,\r
-88 => 185 ,89 => 186 ,90 => 187 ,91 => 188 ,92 => 189 ,93 => 190 ,\r
-94 => 191 ,95 => 192 ,96 => 193 ,97 => 194 ,98 => 195 ,99 => 196 ,\r
-100 => 197 ,101 => 198 ,102 => 199 ,103 => 200 ,104 => 201 ,105 => 202 ,\r
-106 => 203 ,107 => 204 ,108 => 205 ,109 => 206 ,110 => 207 ,111 => 208 ,\r
-112 => 209 ,113 => 210 ,114 => 211 ,115 => 212 ,116 => 213 ,117 => 214 ,\r
-118 => 215 ,119 => 216 ,120 => 217 ,121 => 218 ,122 => 219 ,123 => 220 ,\r
-124 => 221 ,125 => 222 ,126 => 223 ,128 => 224 ,129 => 225 ,130 => 226 ,\r
-131 => 227 ,132 => 228 ,133 => 229 ,134 => 230 ,135 => 231 ,136 => 232 ,\r
-137 => 233 ,138 => 234 ,139 => 235 ,140 => 236 ,141 => 237 ,142 => 238 ,\r
-143 => 239 ,144 => 240 ,145 => 241 ,146 => 242 ,147 => 243 ,148 => 244 ,\r
-149 => 245 ,150 => 246 ,151 => 247 ,152 => 248 ,153 => 249 ,154 => 250 ,\r
-155 => 251 ,156 => 252 ,157 => 253 ,158 => 254 ),\r
-1 => array(\r
-159 => 161 ,160 => 162 ,\r
-161 => 163 ,162 => 164 ,163 => 165 ,164 => 166 ,165 => 167 ,166 => 168 ,\r
-167 => 169 ,168 => 170 ,169 => 171 ,170 => 172 ,171 => 173 ,172 => 174 ,\r
-173 => 175 ,174 => 176 ,175 => 177 ,176 => 178 ,177 => 179 ,178 => 180 ,\r
-179 => 181 ,180 => 182 ,181 => 183 ,182 => 184 ,183 => 185 ,184 => 186 ,\r
-185 => 187 ,186 => 188 ,187 => 189 ,188 => 190 ,189 => 191 ,190 => 192 ,\r
-191 => 193 ,192 => 194 ,193 => 195 ,194 => 196 ,195 => 197 ,196 => 198 ,\r
-197 => 199 ,198 => 200 ,199 => 201 ,200 => 202 ,201 => 203 ,202 => 204 ,\r
-203 => 205 ,204 => 206 ,205 => 207 ,206 => 208 ,207 => 209 ,208 => 210 ,\r
-209 => 211 ,210 => 212 ,211 => 213 ,212 => 214 ,213 => 215 ,214 => 216 ,\r
-215 => 217 ,216 => 218 ,217 => 219 ,218 => 220 ,219 => 221 ,220 => 222 ,\r
-221 => 223 ,222 => 224 ,223 => 225 ,224 => 226 ,225 => 227 ,226 => 228 ,\r
-227 => 229 ,228 => 230 ,229 => 231 ,230 => 232 ,231 => 233 ,232 => 234 ,\r
-233 => 235 ,234 => 236 ,235 => 237 ,236 => 238 ,237 => 239 ,238 => 240 ,\r
-239 => 241 ,240 => 242 ,241 => 243 ,242 => 244 ,243 => 245 ,244 => 246 ,\r
-245 => 247 ,246 => 248 ,247 => 249 ,248 => 250 ,249 => 251 ,250 => 252 ,\r
-251 => 253 ,252 => 254 ));\r
-\r
-$_sjistoeuc_byte1_shift = array (\r
-64 => 0 ,65 => 0 ,66 => 0 ,67 => 0 ,68 => 0 ,69 => 0 ,\r
-70 => 0 ,71 => 0 ,72 => 0 ,73 => 0 ,74 => 0 ,75 => 0 ,\r
-76 => 0 ,77 => 0 ,78 => 0 ,79 => 0 ,80 => 0 ,81 => 0 ,\r
-82 => 0 ,83 => 0 ,84 => 0 ,85 => 0 ,86 => 0 ,87 => 0 ,\r
-88 => 0 ,89 => 0 ,90 => 0 ,91 => 0 ,92 => 0 ,93 => 0 ,\r
-94 => 0 ,95 => 0 ,96 => 0 ,97 => 0 ,98 => 0 ,99 => 0 ,\r
-100 => 0 ,101 => 0 ,102 => 0 ,103 => 0 ,104 => 0 ,105 => 0 ,\r
-106 => 0 ,107 => 0 ,108 => 0 ,109 => 0 ,110 => 0 ,111 => 0 ,\r
-112 => 0 ,113 => 0 ,114 => 0 ,115 => 0 ,116 => 0 ,117 => 0 ,\r
-118 => 0 ,119 => 0 ,120 => 0 ,121 => 0 ,122 => 0 ,123 => 0 ,\r
-124 => 0 ,125 => 0 ,126 => 0 ,128 => 0 ,129 => 0 ,130 => 0 ,\r
-131 => 0 ,132 => 0 ,133 => 0 ,134 => 0 ,135 => 0 ,136 => 0 ,\r
-137 => 0 ,138 => 0 ,139 => 0 ,140 => 0 ,141 => 0 ,142 => 0 ,\r
-143 => 0 ,144 => 0 ,145 => 0 ,146 => 0 ,147 => 0 ,148 => 0 ,\r
-149 => 0 ,150 => 0 ,151 => 0 ,152 => 0 ,153 => 0 ,154 => 0 ,\r
-155 => 0 ,156 => 0 ,157 => 0 ,158 => 0 ,159 => 1 ,160 => 1 ,\r
-161 => 1 ,162 => 1 ,163 => 1 ,164 => 1 ,165 => 1 ,166 => 1 ,\r
-167 => 1 ,168 => 1 ,169 => 1 ,170 => 1 ,171 => 1 ,172 => 1 ,\r
-173 => 1 ,174 => 1 ,175 => 1 ,176 => 1 ,177 => 1 ,178 => 1 ,\r
-179 => 1 ,180 => 1 ,181 => 1 ,182 => 1 ,183 => 1 ,184 => 1 ,\r
-185 => 1 ,186 => 1 ,187 => 1 ,188 => 1 ,189 => 1 ,190 => 1 ,\r
-191 => 1 ,192 => 1 ,193 => 1 ,194 => 1 ,195 => 1 ,196 => 1 ,\r
-197 => 1 ,198 => 1 ,199 => 1 ,200 => 1 ,201 => 1 ,202 => 1 ,\r
-203 => 1 ,204 => 1 ,205 => 1 ,206 => 1 ,207 => 1 ,208 => 1 ,\r
-209 => 1 ,210 => 1 ,211 => 1 ,212 => 1 ,213 => 1 ,214 => 1 ,\r
-215 => 1 ,216 => 1 ,217 => 1 ,218 => 1 ,219 => 1 ,220 => 1 ,\r
-221 => 1 ,222 => 1 ,223 => 1 ,224 => 1 ,225 => 1 ,226 => 1 ,\r
-227 => 1 ,228 => 1 ,229 => 1 ,230 => 1 ,231 => 1 ,232 => 1 ,\r
-233 => 1 ,234 => 1 ,235 => 1 ,236 => 1 ,237 => 1 ,238 => 1 ,\r
-239 => 1 ,240 => 1 ,241 => 1 ,242 => 1 ,243 => 1 ,244 => 1 ,\r
-245 => 1 ,246 => 1 ,247 => 1 ,248 => 1 ,249 => 1 ,250 => 1 ,\r
-251 => 1 ,252 => 1 );\r
-\r
-$_euctosjis_byte1 = array(\r
-161 => 129, 162 => 129, 163 => 130, 164 => 130, 165 => 131, \r
-166 => 131, 167 => 132, 168 => 132, 169 => 133, 170 => 133, \r
-171 => 134, 172 => 134, 173 => 135, 174 => 135, 175 => 136, \r
-176 => 136, 177 => 137, 178 => 137, 179 => 138, 180 => 138, \r
-181 => 139, 182 => 139, 183 => 140, 184 => 140, 185 => 141, \r
-186 => 141, 187 => 142, 188 => 142, 189 => 143, 190 => 143, \r
-191 => 144, 192 => 144, 193 => 145, 194 => 145, 195 => 146, \r
-196 => 146, 197 => 147, 198 => 147, 199 => 148, 200 => 148, \r
-201 => 149, 202 => 149, 203 => 150, 204 => 150, 205 => 151, \r
-206 => 151, 207 => 152, 208 => 152, 209 => 153, 210 => 153, \r
-211 => 154, 212 => 154, 213 => 155, 214 => 155, 215 => 156, \r
-216 => 156, 217 => 157, 218 => 157, 219 => 158, 220 => 158, \r
-221 => 159, 222 => 159, 223 => 224, 224 => 224, 225 => 225, \r
-226 => 225, 227 => 226, 228 => 226, 229 => 227, 230 => 227, \r
-231 => 228, 232 => 228, 233 => 229, 234 => 229, 235 => 230, \r
-236 => 230, 237 => 231, 238 => 231, 239 => 232, 240 => 232, \r
-241 => 233, 242 => 233, 243 => 234, 244 => 234, 245 => 235, \r
-246 => 235, 247 => 236, 248 => 236, 249 => 237, 250 => 237, \r
-251 => 238, 252 => 238, 253 => 239, 254 => 239, 255 => 240);\r
-\r
-$_euctosjis_byte2 = array(\r
-0 => array(\r
-161 => 64, 162 => 65, 163 => 66, 164 => 67, 165 => 68, \r
-166 => 69, 167 => 70, 168 => 71, 169 => 72, 170 => 73, \r
-171 => 74, 172 => 75, 173 => 76, 174 => 77, 175 => 78, \r
-176 => 79, 177 => 80, 178 => 81, 179 => 82, 180 => 83, \r
-181 => 84, 182 => 85, 183 => 86, 184 => 87, 185 => 88, \r
-186 => 89, 187 => 90, 188 => 91, 189 => 92, 190 => 93, \r
-191 => 94, 192 => 95, 193 => 96, 194 => 97, 195 => 98, \r
-196 => 99, 197 => 100, 198 => 101, 199 => 102, 200 => 103, \r
-201 => 104, 202 => 105, 203 => 106, 204 => 107, 205 => 108, \r
-206 => 109, 207 => 110, 208 => 111, 209 => 112, 210 => 113, \r
-211 => 114, 212 => 115, 213 => 116, 214 => 117, 215 => 118, \r
-216 => 119, 217 => 120, 218 => 121, 219 => 122, 220 => 123, \r
-221 => 124, 222 => 125, 223 => 126, 224 => 128, 225 => 129, \r
-226 => 130, 227 => 131, 228 => 132, 229 => 133, 230 => 134, \r
-231 => 135, 232 => 136, 233 => 137, 234 => 138, 235 => 139, \r
-236 => 140, 237 => 141, 238 => 142, 239 => 143, 240 => 144, \r
-241 => 145, 242 => 146, 243 => 147, 244 => 148, 245 => 149, \r
-246 => 150, 247 => 151, 248 => 152, 249 => 153, 250 => 154, \r
-251 => 155, 252 => 156, 253 => 157, 254 => 158),\r
-1 => array(\r
-161 => 159, 162 => 160, 163 => 161, 164 => 162, 165 => 163, \r
-166 => 164, 167 => 165, 168 => 166, 169 => 167, 170 => 168, \r
-171 => 169, 172 => 170, 173 => 171, 174 => 172, 175 => 173, \r
-176 => 174, 177 => 175, 178 => 176, 179 => 177, 180 => 178, \r
-181 => 179, 182 => 180, 183 => 181, 184 => 182, 185 => 183, \r
-186 => 184, 187 => 185, 188 => 186, 189 => 187, 190 => 188, \r
-191 => 189, 192 => 190, 193 => 191, 194 => 192, 195 => 193, \r
-196 => 194, 197 => 195, 198 => 196, 199 => 197, 200 => 198, \r
-201 => 199, 202 => 200, 203 => 201, 204 => 202, 205 => 203, \r
-206 => 204, 207 => 205, 208 => 206, 209 => 207, 210 => 208, \r
-211 => 209, 212 => 210, 213 => 211, 214 => 212, 215 => 213, \r
-216 => 214, 217 => 215, 218 => 216, 219 => 217, 220 => 218, \r
-221 => 219, 222 => 220, 223 => 221, 224 => 222, 225 => 223, \r
-226 => 224, 227 => 225, 228 => 226, 229 => 227, 230 => 228, \r
-231 => 229, 232 => 230, 233 => 231, 234 => 232, 235 => 233, \r
-236 => 234, 237 => 235, 238 => 236, 239 => 237, 240 => 238, \r
-241 => 239, 242 => 240, 243 => 241, 244 => 242, 245 => 243, \r
-246 => 244, 247 => 245, 248 => 246, 249 => 247, 250 => 248, \r
-251 => 249, 252 => 250, 253 => 251, 254 => 252));\r
-\r
-$alphanumeric_convert = array (\r
-0x20 => "\xa1\xa1",0x21 => "\xa1\xaa",0x23 => "\xa1\xf4",0x24 => \r
-"\xa1\xf0",0x25 => "\xa1\xf3",\r
-0x26 => "\xa1\xf5",0x28 => "\xa1\xca",0x29 => "\xa1\xcb",0x2a => "\xa1\xf6",\r
-0x2b => "\xa1\xdc",0x2c => "\xa1\xa4",0x2d => "\xa1\xdd",0x2e => "\xa1\xa5",\r
-0x2f => "\xa1\xbf",0x30 => "\xa3\xb0",0x31 => "\xa3\xb1",0x32 => "\xa3\xb2",\r
-0x33 => "\xa3\xb3",0x34 => "\xa3\xb4",0x35 => "\xa3\xb5",0x36 => "\xa3\xb6",\r
-0x37 => "\xa3\xb7",0x38 => "\xa3\xb8",0x39 => "\xa3\xb9",0x3a => "\xa1\xa7",\r
-0x3b => "\xa1\xa8",0x3c => "\xa1\xe3",0x3d => "\xa1\xe1",0x3e => "\xa1\xe4",\r
-0x3f => "\xa1\xa9",0x40 => "\xa1\xf7",0x41 => "\xa3\xc1",0x42 => "\xa3\xc2",\r
-0x43 => "\xa3\xc3",0x44 => "\xa3\xc4",0x45 => "\xa3\xc5",0x46 => "\xa3\xc6",\r
-0x47 => "\xa3\xc7",0x48 => "\xa3\xc8",0x49 => "\xa3\xc9",0x4a => "\xa3\xca",\r
-0x4b => "\xa3\xcb",0x4c => "\xa3\xcc",0x4d => "\xa3\xcd",0x4e => "\xa3\xce",\r
-0x4f => "\xa3\xcf",0x50 => "\xa3\xd0",0x51 => "\xa3\xd1",0x52 => "\xa3\xd2",\r
-0x53 => "\xa3\xd3",0x54 => "\xa3\xd4",0x55 => "\xa3\xd5",0x56 => "\xa3\xd6",\r
-0x57 => "\xa3\xd7",0x58 => "\xa3\xd8",0x59 => "\xa3\xd9",0x5a => "\xa3\xda",\r
-0x5b => "\xa1\xce",0x5d => "\xa1\xcf",0x5e => "\xa1\xb0",0x5f => "\xa1\xb2",\r
-0x61 => "\xa3\xe1",0x62 => "\xa3\xe2",0x63 => "\xa3\xe3",0x64 => "\xa3\xe4",\r
-0x65 => "\xa3\xe5",0x66 => "\xa3\xe6",0x67 => "\xa3\xe7",0x68 => "\xa3\xe8",\r
-0x69 => "\xa3\xe9",0x6a => "\xa3\xea",0x6b => "\xa3\xeb",0x6c => "\xa3\xec",\r
-0x6d => "\xa3\xed",0x6e => "\xa3\xee",0x6f => "\xa3\xef",0x70 => "\xa3\xf0",\r
-0x71 => "\xa3\xf1",0x72 => "\xa3\xf2",0x73 => "\xa3\xf3",0x74 => "\xa3\xf4",\r
-0x75 => "\xa3\xf5",0x76 => "\xa3\xf6",0x77 => "\xa3\xf7",0x78 => "\xa3\xf8",\r
-0x79 => "\xa3\xf9",0x7a => "\xa3\xfa",0x7b => "\xa1\xd0",0x7c => "\xa1\xc3",\r
-0x7d => "\xa1\xd1");\r
-\r
-$kana_zenhan_convert = array (\r
-0xa1 => "\xa7",0xa2 => "\xb1",0xa3 => "\xa8",0xa4 => "\xb2",\r
-0xa5 => "\xa9",0xa6 => "\xb3",0xa7 => "\xaa",0xa8 => "\xb4",\r
-0xa9 => "\xab",0xaa => "\xb5",0xab => "\xb6",0xac => "\xb6\x8e\xde",\r
-0xad => "\xb7",0xae => "\xb7\x8e\xde",0xaf => "\xb8",\r
-0xb0 => "\xb8\x8e\xde",0xb1 => "\xb9",0xb2 => "\xb9\x8e\xde",\r
-0xb3 => "\xba",0xb4 => "\xba\x8e\xde",0xb5 => "\xbb",\r
-0xb6 => "\xbb\x8e\xde",0xb7 => "\xbc",0xb8 => "\xbc\x8e\xde",\r
-0xb9 => "\xbd",0xba => "\xbd\x8e\xde",0xbb => "\xbe",\r
-0xbc => "\xbe\x8e\xde",0xbd => "\xbf",0xbe => "\xbf\x8e\xde",\r
-0xbf => "\xc0",0xc0 => "\xc0\x8e\xde",0xc1 => "\xc1",\r
-0xc2 => "\xc1\x8e\xde",0xc3 => "\xaf",0xc4 => "\xc2",\r
-0xc5 => "\xc2\x8e\xde",0xc6 => "\xc3",0xc7 => "\xc3\x8e\xde",\r
-0xc8 => "\xc4",0xc9 => "\xc4\x8e\xde",0xca => "\xc5",\r
-0xcb => "\xc6",0xcc => "\xc7",0xcd => "\xc8",0xce => "\xc9",\r
-0xcf => "\xca",0xd0 => "\xca\x8e\xde",0xd1 => "\xca\x8e\xdf",\r
-0xd2 => "\xcb",0xd3 => "\xcb\x8e\xde",0xd4 => "\xcb\x8e\xdf",\r
-0xd5 => "\xcc",0xd6 => "\xcc\x8e\xde",0xd7 => "\xcc\x8e\xdf",\r
-0xd8 => "\xcd",0xd9 => "\xcd\x8e\xde",0xda => "\xcd\x8e\xdf",0xdb => "\xce",\r
-0xdc => "\xce\x8e\xde",0xdd => "\xce\x8e\xdf",0xde => "\xcf",0xdf => "\xd0",\r
-0xe0 => "\xd1",0xe1 => "\xd2",0xe2 => "\xd3",0xe3 => "\xac",0xe4 => "\xd4",\r
-0xe5 => "\xad",0xe6 => "\xd5",0xe7 => "\xae",0xe8 => "\xd6",0xe9 => "\xd7",\r
-0xea => "\xd8",0xeb => "\xd9",0xec => "\xda",0xed => "\xdb",0xef => "\xdc",\r
-0xee => "\xdc",0xf0 => "\xb2",0xf1 => "\xb4",0xf2 => "\xa6",0xf3 => "\xdd",\r
-0xf4 => "\xb3\x8e\xde");\r
-\r
-$special_zenhan_convert = array(\r
-0xa2 => "\xa4",0xa3 => "\xa1",0xa6 => "\xa5",0xab => "\xde",\r
-0xac => "\xdf",0xbc => "\xb0",0xd6 => "\xa2",0xd7 => "\xa3");\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
+<?php
+$mbemu_internals['sjistoeuc_byte1'] = array(
+129 => 161 ,130 => 163 ,131 => 165 ,132 => 167 ,133 => 169 ,134 => 171 ,
+135 => 173 ,136 => 175 ,137 => 177 ,138 => 179 ,139 => 181 ,140 => 183 ,
+141 => 185 ,142 => 187 ,143 => 189 ,144 => 191 ,145 => 193 ,146 => 195 ,
+147 => 197 ,148 => 199 ,149 => 201 ,150 => 203 ,151 => 205 ,152 => 207 ,
+153 => 209 ,154 => 211 ,155 => 213 ,156 => 215 ,157 => 217 ,158 => 219 ,
+159 => 221 ,224 => 223 ,225 => 225 ,226 => 227 ,227 => 229 ,228 => 231 ,
+229 => 233 ,230 => 235 ,231 => 237 ,232 => 239 ,233 => 241 ,234 => 243 ,
+235 => 245 ,236 => 247 ,237 => 249 ,238 => 251 ,239 => 253 ,240 => 255 );
+
+$mbemu_internals['sjistoeuc_byte2'] = array(
+0 => array(
+64 => 161 ,65 => 162 ,66 => 163 ,67 => 164 ,68 => 165 ,69 => 166 ,
+70 => 167 ,71 => 168 ,72 => 169 ,73 => 170 ,74 => 171 ,75 => 172 ,
+76 => 173 ,77 => 174 ,78 => 175 ,79 => 176 ,80 => 177 ,81 => 178 ,
+82 => 179 ,83 => 180 ,84 => 181 ,85 => 182 ,86 => 183 ,87 => 184 ,
+88 => 185 ,89 => 186 ,90 => 187 ,91 => 188 ,92 => 189 ,93 => 190 ,
+94 => 191 ,95 => 192 ,96 => 193 ,97 => 194 ,98 => 195 ,99 => 196 ,
+100 => 197 ,101 => 198 ,102 => 199 ,103 => 200 ,104 => 201 ,105 => 202 ,
+106 => 203 ,107 => 204 ,108 => 205 ,109 => 206 ,110 => 207 ,111 => 208 ,
+112 => 209 ,113 => 210 ,114 => 211 ,115 => 212 ,116 => 213 ,117 => 214 ,
+118 => 215 ,119 => 216 ,120 => 217 ,121 => 218 ,122 => 219 ,123 => 220 ,
+124 => 221 ,125 => 222 ,126 => 223 ,128 => 224 ,129 => 225 ,130 => 226 ,
+131 => 227 ,132 => 228 ,133 => 229 ,134 => 230 ,135 => 231 ,136 => 232 ,
+137 => 233 ,138 => 234 ,139 => 235 ,140 => 236 ,141 => 237 ,142 => 238 ,
+143 => 239 ,144 => 240 ,145 => 241 ,146 => 242 ,147 => 243 ,148 => 244 ,
+149 => 245 ,150 => 246 ,151 => 247 ,152 => 248 ,153 => 249 ,154 => 250 ,
+155 => 251 ,156 => 252 ,157 => 253 ,158 => 254 ),
+1 => array(
+159 => 161 ,160 => 162 ,
+161 => 163 ,162 => 164 ,163 => 165 ,164 => 166 ,165 => 167 ,166 => 168 ,
+167 => 169 ,168 => 170 ,169 => 171 ,170 => 172 ,171 => 173 ,172 => 174 ,
+173 => 175 ,174 => 176 ,175 => 177 ,176 => 178 ,177 => 179 ,178 => 180 ,
+179 => 181 ,180 => 182 ,181 => 183 ,182 => 184 ,183 => 185 ,184 => 186 ,
+185 => 187 ,186 => 188 ,187 => 189 ,188 => 190 ,189 => 191 ,190 => 192 ,
+191 => 193 ,192 => 194 ,193 => 195 ,194 => 196 ,195 => 197 ,196 => 198 ,
+197 => 199 ,198 => 200 ,199 => 201 ,200 => 202 ,201 => 203 ,202 => 204 ,
+203 => 205 ,204 => 206 ,205 => 207 ,206 => 208 ,207 => 209 ,208 => 210 ,
+209 => 211 ,210 => 212 ,211 => 213 ,212 => 214 ,213 => 215 ,214 => 216 ,
+215 => 217 ,216 => 218 ,217 => 219 ,218 => 220 ,219 => 221 ,220 => 222 ,
+221 => 223 ,222 => 224 ,223 => 225 ,224 => 226 ,225 => 227 ,226 => 228 ,
+227 => 229 ,228 => 230 ,229 => 231 ,230 => 232 ,231 => 233 ,232 => 234 ,
+233 => 235 ,234 => 236 ,235 => 237 ,236 => 238 ,237 => 239 ,238 => 240 ,
+239 => 241 ,240 => 242 ,241 => 243 ,242 => 244 ,243 => 245 ,244 => 246 ,
+245 => 247 ,246 => 248 ,247 => 249 ,248 => 250 ,249 => 251 ,250 => 252 ,
+251 => 253 ,252 => 254 ));
+
+$mbemu_internals['sjistoeuc_byte1_shift'] = array (
+64 => 0 ,65 => 0 ,66 => 0 ,67 => 0 ,68 => 0 ,69 => 0 ,
+70 => 0 ,71 => 0 ,72 => 0 ,73 => 0 ,74 => 0 ,75 => 0 ,
+76 => 0 ,77 => 0 ,78 => 0 ,79 => 0 ,80 => 0 ,81 => 0 ,
+82 => 0 ,83 => 0 ,84 => 0 ,85 => 0 ,86 => 0 ,87 => 0 ,
+88 => 0 ,89 => 0 ,90 => 0 ,91 => 0 ,92 => 0 ,93 => 0 ,
+94 => 0 ,95 => 0 ,96 => 0 ,97 => 0 ,98 => 0 ,99 => 0 ,
+100 => 0 ,101 => 0 ,102 => 0 ,103 => 0 ,104 => 0 ,105 => 0 ,
+106 => 0 ,107 => 0 ,108 => 0 ,109 => 0 ,110 => 0 ,111 => 0 ,
+112 => 0 ,113 => 0 ,114 => 0 ,115 => 0 ,116 => 0 ,117 => 0 ,
+118 => 0 ,119 => 0 ,120 => 0 ,121 => 0 ,122 => 0 ,123 => 0 ,
+124 => 0 ,125 => 0 ,126 => 0 ,128 => 0 ,129 => 0 ,130 => 0 ,
+131 => 0 ,132 => 0 ,133 => 0 ,134 => 0 ,135 => 0 ,136 => 0 ,
+137 => 0 ,138 => 0 ,139 => 0 ,140 => 0 ,141 => 0 ,142 => 0 ,
+143 => 0 ,144 => 0 ,145 => 0 ,146 => 0 ,147 => 0 ,148 => 0 ,
+149 => 0 ,150 => 0 ,151 => 0 ,152 => 0 ,153 => 0 ,154 => 0 ,
+155 => 0 ,156 => 0 ,157 => 0 ,158 => 0 ,159 => 1 ,160 => 1 ,
+161 => 1 ,162 => 1 ,163 => 1 ,164 => 1 ,165 => 1 ,166 => 1 ,
+167 => 1 ,168 => 1 ,169 => 1 ,170 => 1 ,171 => 1 ,172 => 1 ,
+173 => 1 ,174 => 1 ,175 => 1 ,176 => 1 ,177 => 1 ,178 => 1 ,
+179 => 1 ,180 => 1 ,181 => 1 ,182 => 1 ,183 => 1 ,184 => 1 ,
+185 => 1 ,186 => 1 ,187 => 1 ,188 => 1 ,189 => 1 ,190 => 1 ,
+191 => 1 ,192 => 1 ,193 => 1 ,194 => 1 ,195 => 1 ,196 => 1 ,
+197 => 1 ,198 => 1 ,199 => 1 ,200 => 1 ,201 => 1 ,202 => 1 ,
+203 => 1 ,204 => 1 ,205 => 1 ,206 => 1 ,207 => 1 ,208 => 1 ,
+209 => 1 ,210 => 1 ,211 => 1 ,212 => 1 ,213 => 1 ,214 => 1 ,
+215 => 1 ,216 => 1 ,217 => 1 ,218 => 1 ,219 => 1 ,220 => 1 ,
+221 => 1 ,222 => 1 ,223 => 1 ,224 => 1 ,225 => 1 ,226 => 1 ,
+227 => 1 ,228 => 1 ,229 => 1 ,230 => 1 ,231 => 1 ,232 => 1 ,
+233 => 1 ,234 => 1 ,235 => 1 ,236 => 1 ,237 => 1 ,238 => 1 ,
+239 => 1 ,240 => 1 ,241 => 1 ,242 => 1 ,243 => 1 ,244 => 1 ,
+245 => 1 ,246 => 1 ,247 => 1 ,248 => 1 ,249 => 1 ,250 => 1 ,
+251 => 1 ,252 => 1 );
+
+$mbemu_internals['euctosjis_byte1'] = array(
+161 => 129, 162 => 129, 163 => 130, 164 => 130, 165 => 131, 
+166 => 131, 167 => 132, 168 => 132, 169 => 133, 170 => 133, 
+171 => 134, 172 => 134, 173 => 135, 174 => 135, 175 => 136, 
+176 => 136, 177 => 137, 178 => 137, 179 => 138, 180 => 138, 
+181 => 139, 182 => 139, 183 => 140, 184 => 140, 185 => 141, 
+186 => 141, 187 => 142, 188 => 142, 189 => 143, 190 => 143, 
+191 => 144, 192 => 144, 193 => 145, 194 => 145, 195 => 146, 
+196 => 146, 197 => 147, 198 => 147, 199 => 148, 200 => 148, 
+201 => 149, 202 => 149, 203 => 150, 204 => 150, 205 => 151, 
+206 => 151, 207 => 152, 208 => 152, 209 => 153, 210 => 153, 
+211 => 154, 212 => 154, 213 => 155, 214 => 155, 215 => 156, 
+216 => 156, 217 => 157, 218 => 157, 219 => 158, 220 => 158, 
+221 => 159, 222 => 159, 223 => 224, 224 => 224, 225 => 225, 
+226 => 225, 227 => 226, 228 => 226, 229 => 227, 230 => 227, 
+231 => 228, 232 => 228, 233 => 229, 234 => 229, 235 => 230, 
+236 => 230, 237 => 231, 238 => 231, 239 => 232, 240 => 232, 
+241 => 233, 242 => 233, 243 => 234, 244 => 234, 245 => 235, 
+246 => 235, 247 => 236, 248 => 236, 249 => 237, 250 => 237, 
+251 => 238, 252 => 238, 253 => 239, 254 => 239, 255 => 240);
+
+$mbemu_internals['euctosjis_byte2'] = array(
+0 => array(
+161 => 64, 162 => 65, 163 => 66, 164 => 67, 165 => 68, 
+166 => 69, 167 => 70, 168 => 71, 169 => 72, 170 => 73, 
+171 => 74, 172 => 75, 173 => 76, 174 => 77, 175 => 78, 
+176 => 79, 177 => 80, 178 => 81, 179 => 82, 180 => 83, 
+181 => 84, 182 => 85, 183 => 86, 184 => 87, 185 => 88, 
+186 => 89, 187 => 90, 188 => 91, 189 => 92, 190 => 93, 
+191 => 94, 192 => 95, 193 => 96, 194 => 97, 195 => 98, 
+196 => 99, 197 => 100, 198 => 101, 199 => 102, 200 => 103, 
+201 => 104, 202 => 105, 203 => 106, 204 => 107, 205 => 108, 
+206 => 109, 207 => 110, 208 => 111, 209 => 112, 210 => 113, 
+211 => 114, 212 => 115, 213 => 116, 214 => 117, 215 => 118, 
+216 => 119, 217 => 120, 218 => 121, 219 => 122, 220 => 123, 
+221 => 124, 222 => 125, 223 => 126, 224 => 128, 225 => 129, 
+226 => 130, 227 => 131, 228 => 132, 229 => 133, 230 => 134, 
+231 => 135, 232 => 136, 233 => 137, 234 => 138, 235 => 139, 
+236 => 140, 237 => 141, 238 => 142, 239 => 143, 240 => 144, 
+241 => 145, 242 => 146, 243 => 147, 244 => 148, 245 => 149, 
+246 => 150, 247 => 151, 248 => 152, 249 => 153, 250 => 154, 
+251 => 155, 252 => 156, 253 => 157, 254 => 158),
+1 => array(
+161 => 159, 162 => 160, 163 => 161, 164 => 162, 165 => 163, 
+166 => 164, 167 => 165, 168 => 166, 169 => 167, 170 => 168, 
+171 => 169, 172 => 170, 173 => 171, 174 => 172, 175 => 173, 
+176 => 174, 177 => 175, 178 => 176, 179 => 177, 180 => 178, 
+181 => 179, 182 => 180, 183 => 181, 184 => 182, 185 => 183, 
+186 => 184, 187 => 185, 188 => 186, 189 => 187, 190 => 188, 
+191 => 189, 192 => 190, 193 => 191, 194 => 192, 195 => 193, 
+196 => 194, 197 => 195, 198 => 196, 199 => 197, 200 => 198, 
+201 => 199, 202 => 200, 203 => 201, 204 => 202, 205 => 203, 
+206 => 204, 207 => 205, 208 => 206, 209 => 207, 210 => 208, 
+211 => 209, 212 => 210, 213 => 211, 214 => 212, 215 => 213, 
+216 => 214, 217 => 215, 218 => 216, 219 => 217, 220 => 218, 
+221 => 219, 222 => 220, 223 => 221, 224 => 222, 225 => 223, 
+226 => 224, 227 => 225, 228 => 226, 229 => 227, 230 => 228, 
+231 => 229, 232 => 230, 233 => 231, 234 => 232, 235 => 233, 
+236 => 234, 237 => 235, 238 => 236, 239 => 237, 240 => 238, 
+241 => 239, 242 => 240, 243 => 241, 244 => 242, 245 => 243, 
+246 => 244, 247 => 245, 248 => 246, 249 => 247, 250 => 248, 
+251 => 249, 252 => 250, 253 => 251, 254 => 252));
+
+$mbemu_internals['alphanumeric_convert'] = array (
+0x20 => "\xa1\xa1",0x21 => "\xa1\xaa",0x23 => "\xa1\xf4",0x24 => 
+"\xa1\xf0",0x25 => "\xa1\xf3",
+0x26 => "\xa1\xf5",0x28 => "\xa1\xca",0x29 => "\xa1\xcb",0x2a => "\xa1\xf6",
+0x2b => "\xa1\xdc",0x2c => "\xa1\xa4",0x2d => "\xa1\xdd",0x2e => "\xa1\xa5",
+0x2f => "\xa1\xbf",0x30 => "\xa3\xb0",0x31 => "\xa3\xb1",0x32 => "\xa3\xb2",
+0x33 => "\xa3\xb3",0x34 => "\xa3\xb4",0x35 => "\xa3\xb5",0x36 => "\xa3\xb6",
+0x37 => "\xa3\xb7",0x38 => "\xa3\xb8",0x39 => "\xa3\xb9",0x3a => "\xa1\xa7",
+0x3b => "\xa1\xa8",0x3c => "\xa1\xe3",0x3d => "\xa1\xe1",0x3e => "\xa1\xe4",
+0x3f => "\xa1\xa9",0x40 => "\xa1\xf7",0x41 => "\xa3\xc1",0x42 => "\xa3\xc2",
+0x43 => "\xa3\xc3",0x44 => "\xa3\xc4",0x45 => "\xa3\xc5",0x46 => "\xa3\xc6",
+0x47 => "\xa3\xc7",0x48 => "\xa3\xc8",0x49 => "\xa3\xc9",0x4a => "\xa3\xca",
+0x4b => "\xa3\xcb",0x4c => "\xa3\xcc",0x4d => "\xa3\xcd",0x4e => "\xa3\xce",
+0x4f => "\xa3\xcf",0x50 => "\xa3\xd0",0x51 => "\xa3\xd1",0x52 => "\xa3\xd2",
+0x53 => "\xa3\xd3",0x54 => "\xa3\xd4",0x55 => "\xa3\xd5",0x56 => "\xa3\xd6",
+0x57 => "\xa3\xd7",0x58 => "\xa3\xd8",0x59 => "\xa3\xd9",0x5a => "\xa3\xda",
+0x5b => "\xa1\xce",0x5d => "\xa1\xcf",0x5e => "\xa1\xb0",0x5f => "\xa1\xb2",
+0x61 => "\xa3\xe1",0x62 => "\xa3\xe2",0x63 => "\xa3\xe3",0x64 => "\xa3\xe4",
+0x65 => "\xa3\xe5",0x66 => "\xa3\xe6",0x67 => "\xa3\xe7",0x68 => "\xa3\xe8",
+0x69 => "\xa3\xe9",0x6a => "\xa3\xea",0x6b => "\xa3\xeb",0x6c => "\xa3\xec",
+0x6d => "\xa3\xed",0x6e => "\xa3\xee",0x6f => "\xa3\xef",0x70 => "\xa3\xf0",
+0x71 => "\xa3\xf1",0x72 => "\xa3\xf2",0x73 => "\xa3\xf3",0x74 => "\xa3\xf4",
+0x75 => "\xa3\xf5",0x76 => "\xa3\xf6",0x77 => "\xa3\xf7",0x78 => "\xa3\xf8",
+0x79 => "\xa3\xf9",0x7a => "\xa3\xfa",0x7b => "\xa1\xd0",0x7c => "\xa1\xc3",
+0x7d => "\xa1\xd1");
+
+$mbemu_internals['kana_zenhan_convert'] = array (
+0xa1 => "\xa7",0xa2 => "\xb1",0xa3 => "\xa8",0xa4 => "\xb2",
+0xa5 => "\xa9",0xa6 => "\xb3",0xa7 => "\xaa",0xa8 => "\xb4",
+0xa9 => "\xab",0xaa => "\xb5",0xab => "\xb6",0xac => "\xb6\x8e\xde",
+0xad => "\xb7",0xae => "\xb7\x8e\xde",0xaf => "\xb8",
+0xb0 => "\xb8\x8e\xde",0xb1 => "\xb9",0xb2 => "\xb9\x8e\xde",
+0xb3 => "\xba",0xb4 => "\xba\x8e\xde",0xb5 => "\xbb",
+0xb6 => "\xbb\x8e\xde",0xb7 => "\xbc",0xb8 => "\xbc\x8e\xde",
+0xb9 => "\xbd",0xba => "\xbd\x8e\xde",0xbb => "\xbe",
+0xbc => "\xbe\x8e\xde",0xbd => "\xbf",0xbe => "\xbf\x8e\xde",
+0xbf => "\xc0",0xc0 => "\xc0\x8e\xde",0xc1 => "\xc1",
+0xc2 => "\xc1\x8e\xde",0xc3 => "\xaf",0xc4 => "\xc2",
+0xc5 => "\xc2\x8e\xde",0xc6 => "\xc3",0xc7 => "\xc3\x8e\xde",
+0xc8 => "\xc4",0xc9 => "\xc4\x8e\xde",0xca => "\xc5",
+0xcb => "\xc6",0xcc => "\xc7",0xcd => "\xc8",0xce => "\xc9",
+0xcf => "\xca",0xd0 => "\xca\x8e\xde",0xd1 => "\xca\x8e\xdf",
+0xd2 => "\xcb",0xd3 => "\xcb\x8e\xde",0xd4 => "\xcb\x8e\xdf",
+0xd5 => "\xcc",0xd6 => "\xcc\x8e\xde",0xd7 => "\xcc\x8e\xdf",
+0xd8 => "\xcd",0xd9 => "\xcd\x8e\xde",0xda => "\xcd\x8e\xdf",0xdb => "\xce",
+0xdc => "\xce\x8e\xde",0xdd => "\xce\x8e\xdf",0xde => "\xcf",0xdf => "\xd0",
+0xe0 => "\xd1",0xe1 => "\xd2",0xe2 => "\xd3",0xe3 => "\xac",0xe4 => "\xd4",
+0xe5 => "\xad",0xe6 => "\xd5",0xe7 => "\xae",0xe8 => "\xd6",0xe9 => "\xd7",
+0xea => "\xd8",0xeb => "\xd9",0xec => "\xda",0xed => "\xdb",0xef => "\xdc",
+0xee => "\xdc",0xf0 => "\xb2",0xf1 => "\xb4",0xf2 => "\xa6",0xf3 => "\xdd",
+0xf4 => "\xb3\x8e\xde");
+
+$mbemu_internals['special_zenhan_convert'] = array(
+0xa2 => "\xa4",0xa3 => "\xa1",0xa6 => "\xa5",0xab => "\xde",
+0xac => "\xdf",0xbc => "\xb0",0xd6 => "\xa2",0xd7 => "\xa3");
+
+
+
+
+
+
+
 ?>
\ No newline at end of file
index 2da730f..eb0c7f8 100755 (executable)
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">\r
-<HTML>\r
-<HEAD>\r
-       <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=shift_jis">\r
-       <TITLE>\95Ï\8dX\97\9a\97ð</TITLE>\r
-       <META NAME="GENERATOR" CONTENT="OpenOffice.org 1.1.3  (Win32)">\r
-       <META NAME="CREATED" CONTENT="20050130;2310982">\r
-       <META NAME="CHANGED" CONTENT="20050130;2372139">\r
-</HEAD>\r
-<BODY LANG="ja-JP" DIR="LTR">\r
-<H2>\95Ï\8dX\97\9a\97ð</H2>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">Ver.0.37</SPAN></FONT>\81i<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">2005/1/30</SPAN></FONT>\81j</H3>\r
-<UL>\r
-       <LI><P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">JIS</SPAN></FONT>\82Ì\83}\83b\83`\83\93\83O\82Ì\83o\83O\82ð\8dÄ\82Ñ\8fC\90³\82µ\82Ü\82µ\82½\81B\r
-               </P>\r
-</UL>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">Ver.0.36</SPAN></FONT>\81i<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">2004/11/13</SPAN></FONT>\81j</H3>\r
-<UL>\r
-       <LI><P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">JIS</SPAN></FONT>\82Ì\83}\83b\83`\83\93\83O\82Ì\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ\82½\81B\r
-               </P>\r
-</UL>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">Ver.0.35</SPAN></FONT>\81i<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">2004/9/26</SPAN></FONT>\81j</H3>\r
-<UL>\r
-       <LI><P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_send_mail</SPAN></FONT>\82Ì\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ\82½\81B\r
-               </P>\r
-</UL>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">Ver.0.341</SPAN></FONT>\81i<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">2004/9/16</SPAN></FONT>\81j</H3>\r
-<UL>\r
-       <LI><P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_convert_kana</SPAN></FONT>\82Ì\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ\82½\81B\r
-               </P>\r
-</UL>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">Ver.0.34</SPAN></FONT>\81i<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">2004/9/15</SPAN></FONT>\81j</H3>\r
-<UL>\r
-       <LI><P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_convert_kana</SPAN></FONT>\82Ì\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ\82½\81B\r
-               </P>\r
-</UL>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">Ver.0.33</SPAN></FONT>\81i<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">2004/8/27</SPAN></FONT>\81j</H3>\r
-<UL>\r
-       <LI><P STYLE="margin-bottom: 0cm"><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_encode_numericentity,\r
-       mb_decode_numericentity</SPAN></FONT>\82ð\83T\83|\81[\83g\82µ\82Ü\82µ\82½\81\r
-       </P>\r
-       <LI><P STYLE="margin-bottom: 0cm"><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_convert_encoding</SPAN></FONT>\82Å<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">UTF-16</SPAN></FONT>\82©\82ç\82Ì\95Ï\8a·\82ð\83T\83|\81[\83g\82µ\82Ü\82µ\82½\81B\r
-               </P>\r
-       <LI><P STYLE="margin-bottom: 0cm">\83V\83t\83g<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">JIS</SPAN></FONT>\82Ì\8f\88\97\9d\82ð<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">SJIS-WIN</SPAN></FONT>\8cÝ\8a·\82É\82µ\82Ü\82µ\82½\81B<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US"><BR>mbstring</SPAN></FONT>\96{\89Æ\82Æ\82Í\88Ù\82È\82è\81C<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">SJIS</SPAN></FONT>\82Æ<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">SJIS-WIN</SPAN></FONT>\82Ì\93®\8dì\82Í\93¯\82\82Å\82·\81B\r
-               </P>\r
-       <LI><P STYLE="margin-bottom: 0cm"><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_strcut</SPAN></FONT>\82Ì\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ\82½\81B\r
-               </P>\r
-       <LI><P>\95Ï\8dX\97\9a\97ð\82ð<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">HTML</SPAN></FONT>\82É\95Ï\82¦\82Ü\82µ\82½\81B\r
-               </P>\r
-</UL>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">Ver.0.32(2004/8/19)</SPAN></FONT></H3>\r
-<UL>\r
-       <LI><P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_http_input,\r
-       mb_http_output, mb_output_handler\r
-       </SPAN></FONT>\82ð\83T\83|\81[\83g\82µ\82Ü\82µ\82½<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US"><BR></SPAN></FONT>\82½\82¾\82µ\81C<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_http_input</SPAN></FONT>\82É\8aÖ\82µ\82Ä\82Í\95\8e\9a\83R\81[\83h\95Ï\8a·\82ð\8ds\82í\82È\82¢\82½\82ß\81C\8fí\82É<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">FALSE</SPAN></FONT>\82ð\95Ô\82µ\82Ü\82·\81B\r
-               </P>\r
-</UL>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">Ver.0.31(2004/8/16)</SPAN></FONT></H3>\r
-<UL>\r
-       <LI><P STYLE="margin-bottom: 0cm"><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_decode_mimeheader</SPAN></FONT>\82Ì\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ\82½\r
-               </P>\r
-       <LI><P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_convert_variables</SPAN></FONT>\82Ì\8f\89\8aú\90Ý\92è\83`\83F\83b\83N\82Ì\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ\82½\r
-               </P>\r
-</UL>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">Ver.0.3(2004/8/8)</SPAN></FONT></H3>\r
-<UL>\r
-       <LI><P STYLE="margin-bottom: 0cm">\83o\83O\82Â\82Ô\82µ<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US"><BR></SPAN></FONT>\93ü\82ê\8eq\82Ì\83t\83@\83\93\83N\83V\83\87\83\93\82Å\93ñ\8fd\90é\8c¾\82É\82È\82Á\82Ä\82µ\82Ü\82¤\8fê\8d\87\82ª\82 \82é\82Ì\82Å\8aO\95\94\82É\8fo\82µ\82Ü\82µ\82½\81B\r
-               </P>\r
-       <LI><P STYLE="margin-bottom: 0cm">\83o\83O\82Â\82Ô\82µ<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US"><BR>mb_strcut</SPAN></FONT>\82Ì\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ\82½\r
-               </P>\r
-       <LI><P STYLE="margin-bottom: 0cm"><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_encode_mimeheader,\r
-       mb_decode_mimeheader</SPAN></FONT>\82ð\83T\83|\81[\83g\82µ\82Ü\82µ\82½\81\r
-       </P>\r
-       <LI><P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_convert_variables</SPAN></FONT>\82Å\94z\97ñ\82©\82ç\82Ì\95Ï\8a·\82ð\83T\83|\81[\83g\82µ\82Ü\82µ\82½\81B<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US"><BR></SPAN></FONT>\82±\82ê\82É\94º\82¢<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_convert_variables</SPAN></FONT>\82ð<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">2</SPAN></FONT>\83p\83^\81[\83\93\82É\82µ\81C\8f\89\8aú\90Ý\92è\82Å\95Ï\8dX\82Å\82«\82é\82æ\82¤\82É\82µ\82Ü\82µ\82½\81B<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US"><BR></SPAN></FONT>\8f\89\8aú\90Ý\92è\83t\83@\83C\83\8b\82Ì<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">convert-variables-arrayonly</SPAN></FONT>\82ª<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">no</SPAN></FONT>\82Ì\8fê\8d\87\81i\83f\83t\83H\83\8b\83g\81j\81C\82±\82ê\82Ü\82Å\82Æ\93¯\82\82æ\82¤\82É\94z\97ñ\82Å\82È\82­\82Ä\82à\95Ï\8a·\82µ\82Ü\82·\81B\82Ü\82½\81C\8dÅ\8f\89\82Ì\97v\91f\82ª\94z\97ñ\82Ì\8fê\8d\87\81C\82»\82ê\82¾\82¯\82ð\95Ï\8a·\82µ\82Ü\82·\81B\82½\82¾\82µ\81C\82±\82¿\82ç\82Ì\8fê\8d\87\81C\8cÄ\82Ñ\8fo\82µ\8e\9e\82É\88ø\90\94\82É<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">&amp;</SPAN></FONT>\82ð\95t\82¯\82Ä\96¾\8e¦\93I\82É\8eQ\8fÆ\93n\82µ\82É\82·\82é\95K\97v\82ª\82 \82è\82Ü\82·\81B<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US"><BR>convert-variables-arrayonly</SPAN></FONT>\82ª<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">no</SPAN></FONT>\82Å\82È\82¢\8fê\8d\87\81C\95Ï\8a·\82·\82é\88ø\90\94\82Í\94z\97ñ\82¾\82¯\82É\82È\82è\82Ü\82·\81B\82»\82Ì\91ã\82í\82è\81C<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">&amp;</SPAN></FONT>\82Í\95s\97v\82Å\82·\81B\r
-               </P>\r
-</UL>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">Ver.0.25(2004/7/7)</SPAN></FONT></H3>\r
-<UL>\r
-       <LI><P>\83o\83O\82Â\82Ô\82µ<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US"><BR></SPAN></FONT>\93ü\82ê\8eq\82Ì\83t\83@\83\93\83N\83V\83\87\83\93\82Å\93ñ\8fd\90é\8c¾\82É\82È\82Á\82Ä\82µ\82Ü\82¤\8fê\8d\87\82ª\82 \82é\82Ì\82Å\8aO\95\94\82É\8fo\82µ\82Ü\82µ\82½\81B\r
-               </P>\r
-</UL>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">ver.0.24(2004/6/8)</SPAN></FONT></H3>\r
-<UL>\r
-       <LI><P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_strpos,\r
-       mb_substr_count, mb_preferred_mime_name</SPAN></FONT>\82ð\83T\83|\81[\83g\82µ\82Ü\82µ\82½\81B\r
-               </P>\r
-</UL>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">ver.0.23(2004/5/19)</SPAN></FONT></H3>\r
-<UL>\r
-       <LI><P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_convert_encoding</SPAN></FONT>\82Å<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">UTF-16</SPAN></FONT>\82Ö\82Ì\95Ï\8a·\82ð\83T\83|\81[\83g\82µ\82Ü\82µ\82½\81B<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US"><BR><BR>usage:<BR>$str\r
-       = mb_convert_encoding($str, 'UTF-16', 'EUC-JP,\r
-       UTF-8');<BR><BR></SPAN></FONT>\95Ô\82·\82Ì\82Í<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">BOM</SPAN></FONT>\82È\82µ\82Ì\83r\83b\83O\81E\83G\83\93\83f\83B\83A\83\93\82É\82È\82è\82Ü\82·\81B\r
-               </P>\r
-</UL>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">ver.0.22(2004/5/11)</SPAN></FONT></H3>\r
-<UL>\r
-       <LI><P STYLE="margin-bottom: 0cm">\83o\83O\82Â\82Ô\82µ \r
-       </P>\r
-       <LI><P STYLE="margin-bottom: 0cm"><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_convert_variables</SPAN></FONT>\82ð\8eb\92è\83T\83|\81[\83g\r
-               </P>\r
-       <LI><P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_strwidth</SPAN></FONT>\82ð\83T\83|\81[\83g\r
-               </P>\r
-</UL>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">ver.0.21(2004/4/28)</SPAN></FONT></H3>\r
-<UL>\r
-       <LI><P STYLE="margin-bottom: 0cm">\8f\89\8aú\90Ý\92è\82ð<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb-emulator.ini</SPAN></FONT>\82©\82ç\93Ç\82Þ\82æ\82¤\82É\95Ï\8dX\r
-               </P>\r
-       <LI><P STYLE="margin-bottom: 0cm"><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">EUC</SPAN></FONT>\82Æ<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">UTF-8</SPAN></FONT>\8aÔ\82ð\92¼\90Ú\95Ï\8a·\82·\82é\82æ\82¤\82É\95Ï\8dX\r
-               </P>\r
-       <LI><P>\83o\83O\82Â\82Ô\82µ \r
-       </P>\r
-</UL>\r
-<H3><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">ver.0.2(2004/4/27)</SPAN></FONT></H3>\r
-<UL>\r
-       <LI><P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">jcode</SPAN></FONT>\82ð\8eg\82í\82È\82¢\8c`\82Å\93Æ\97§\82µ\82Ü\82µ\82½\81B<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">12</SPAN></FONT>\8aÖ\90\94\83T\83|\81[\83g<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US"><BR>mb_language,\r
-       mb_internal_encoding, mb_convert_encoding, mb_convert_kana,\r
-       mb_send_mail, mb_strimwidth, mb_detect_encoding, mb_detect_order,\r
-       mb_strlen, mb_substr, mb_strcut, mb_strrpos </SPAN></FONT>\r
-       </P>\r
-</UL>\r
-<H2>\8aÖ\90\94\83T\83|\81[\83g\8fó\8bµ\81i<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">2004/8/19</SPAN></FONT>\81j</H2>\r
-<TABLE CELLPADDING=2 CELLSPACING=2>\r
-       <TR>\r
-               <TD WIDTH=150>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US"><B>mbstring</B></SPAN></FONT><B>\8aÖ\90\94\96¼</B></P>\r
-               </TD>\r
-               <TD WIDTH=300>\r
-                       <P><B>\8d¡\8cã\82Ì\83T\83|\81[\83g\97\\92è</B></P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_convert_case</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\89Â\94\\82¾\82¯\82Ç\8c\8b\8d\\91å\95Ï\82»\82¤\81B\82 \82Ü\82è\8eg\82¢\82»\82¤\82É\82È\82¢\8bC\82ª\82·\82é\81B\82à\82µ\83j\81[\83Y\82ª\82 \82ê\82Î</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_convert_encoding</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_convert_kana</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_convert_variables</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_decode_mimeheader</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_decode_numericentity</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_detect_encoding</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_detect_order</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_encode_mimeheader</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_encode_numericentity</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_ereg_match</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_ereg_replace</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_ereg_search_getpos</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_ereg_search_getregs</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_ereg_search_init</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_ereg_search_pos</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_ereg_search_regs</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_ereg_search_setpos</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_ereg_search</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_ereg</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_eregi_replace</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_eregi</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_get_info</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_http_input</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý\81i\8fí\82É<FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">FALSE</SPAN></FONT>\82ð\95Ô\82·\81j</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_http_output</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_internal_encoding</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_language</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý\81i\82½\82¾\82µ\8ew\92è\82µ\82Ä\82à\89½\82à\95Ï\82í\82ç\82È\82¢\81j</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_output_handler</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_parse_str</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_preferred_mime_name</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_regex_encoding</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_regex_set_options</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_send_mail</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_split</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\95s\89Â\94\</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_strcut</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_strimwidth</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_strlen</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_strpos</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_strrpos</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_strtolower</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\89Â\94\\82¾\82¯\82Ç\91å\95Ï\82»\82¤</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_strtoupper</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\89Â\94\\82¾\82¯\82Ç\91å\95Ï\82»\82¤</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_strwidth</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_substitute_character</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\93ï\82µ\82»\82¤</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_substr_count</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-       <TR>\r
-               <TD>\r
-                       <P><FONT FACE="Times New Roman, serif"><SPAN LANG="en-US">mb_substr</SPAN></FONT></P>\r
-               </TD>\r
-               <TD>\r
-                       <P>\83T\83|\81[\83g\8dÏ\82Ý</P>\r
-               </TD>\r
-       </TR>\r
-</TABLE>\r
-<P><BR><BR>\r
-</P>\r
-</BODY>\r
-</HTML>
\ No newline at end of file
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+
+  <meta http-equiv="CONTENT-TYPE" content="text/html; charset=shift_jis">
+  <title>\95Ï\8dX\97\9a\97ð</title>
+
+
+  <meta name="GENERATOR" content="OpenOffice.org 1.1.3 (Win32)">
+
+  <meta name="CREATED" content="20050130;2310982">
+
+  <meta name="CHANGED" content="20050130;2372139">
+
+</head>
+
+
+<body style="direction: ltr;" lang="ja-JP">
+
+<h2>\95Ï\8dX\97\9a\97ð</h2>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">mbstring\83G\83~\83\85\83\8c\81[\83^ for Japanese Ver.0.84</span></font>\81i<font face="Times New Roman, serif"><span lang="en-US">2006/1/23</span></font>\81j</h3>
+
+<ul>
+
+  <li>\83V\83t\83gJIS\82Å\94¼\8ap\83J\83\93\83}\82Ì\8f\88\97\9d\82ª\82¨\82©\82µ\82©\82Á\82½\82Ì\82ð\8fC\90³\82µ\82Ü\82µ\82½</li>
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">mbstring\83G\83~\83\85\83\8c\81[\83^ for Japanese Ver.0.83</span></font>\81i<font face="Times New Roman, serif"><span lang="en-US">2005/12/15</span></font>\81j</h3>
+
+<ul>
+
+  <li>mb_send_mail\82Åmb_language\82ªja\82¾\82Á\82½\82Æ\82«\82É\91Î\89\9e\82µ\82Ü\82µ\82½</li>
+  <li>mb_send_mail\82Å\93ú\96{\8cê\8f\88\97\9d\82Ì\8dÅ\8cã\82Ébreak\82ª\82È\82©\82Á\82½\82Ì\82Å\89Á\82¦\82Ü\82µ\82½</li>
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">mbstring\83G\83~\83\85\83\8c\81[\83^ for Japanese Ver.0.82</span></font>\81i<font face="Times New Roman, serif"><span lang="en-US">2005/11/28</span></font>\81j</h3>
+
+<ul>
+
+  <li>mb_language\82Å\83p\83\89\83\81\81[\83^\82ª\82È\82©\82Á\82½\8fê\8d\87\82Éwarning\82ª\8fo\82Ä\82µ\82Ü\82¤\82Ì\82ð\8fC\90³\82µ\82Ü\82µ\82½</li>
+  <li>mb_send_mail\93à\95\94\82Å_is_encoded\82ð\8cÄ\82Ñ\8fo\82µ\82Ä\82¢\82é\82Ì\82ð_check_encoding\82ð\8cÄ\82Ô\82æ\82¤\82É\8fC\90³\82µ\82Ü\82µ\82½</li>
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">mbstring\83G\83~\83\85\83\8c\81[\83^ for Japanese Ver.0.81</span></font>\81i<font face="Times New Roman, serif"><span lang="en-US">2005/10/09</span></font>\81j</h3>
+
+<ul>
+
+  <li>$jis_match\82ª\96¢\92è\8b`\82¾\82Á\82½\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ\82½</li>
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">mbstring\83G\83~\83\85\83\8c\81[\83^ for Japanese Ver.0.8</span></font>\81i<font face="Times New Roman, serif"><span lang="en-US">2005/8/23</span></font>\81j</h3>
+
+<ul>
+
+  <li>\96¼\8fÌ\82ðmbstring\83G\83~\83\85\83\8c\81[\83^ for Japanese\82É\95Ï\8dX\82µ\82Ü\82µ\82½</li>
+  <li>
+mb_substitute_character\83T\83|\81[\83g\82µ\82Ü\82µ\82½
+  </li>
+
+  <li>
+mb_convert_case\83T\83|\81[\83g\82µ\82Ü\82µ\82½
+  </li>
+
+  <li>
+mb_get_info\83T\83|\81[\83g\82µ\82Ü\82µ\82½
+  </li>
+
+  <li>
+mb_strtolower\83T\83|\81[\83g\82µ\82Ü\82µ\82½
+  </li>
+
+  <li>
+mb_strtoupper\83T\83|\81[\83g\82µ\82Ü\82µ\82½</li>
+  <li>MB_CASE_UPPER\81CMB_CASE_LOWER\81CMB_CASE_CASE\82ð\92è\8b`\82µ\82Ü\82µ\82½</li>
+
+  <li>\83O\83\8d\81[\83o\83\8b\95Ï\90\94\82ð$mbemu_internals\82É\8fW\96ñ\82µ\82Ü\82µ\82½</li>
+
+  <li>\83G\83\93\83R\81[\83f\83B\83\93\83O\82ÉSHIFT_JIS\81CISO-8859-1\82ð\92Ç\89Á\82µ\82Ü\82µ\82½</li>
+
+  <li>\95Ï\8a·\83e\81[\83u\83\8b\82ð\95K\97v\8e\9e\82É\93Ç\82Ý\8d\9e\82Þ\82æ\82¤\82É\8fC\90³\82µ\82Ü\82µ\82½</li>
+  <li>
+               mb_convert_kana\82Ì\83G\83\93\83R\81[\83f\83B\83\93\83O\82ª\8ew\92è\82³\82ê\82Ä\82¢\82È\82¢\82Æ\82«\81Cinternal_encoding\82Ì\92l\82ð\8eg\82¤\82æ\82¤\82É\8fC\90³\82µ\82Ü\82µ\82½</li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">Ver.0.37</span></font>\81i<font face="Times New Roman, serif"><span lang="en-US">2005/1/30</span></font>\81j</h3>
+
+<ul>
+
+  <li>
+    <p><font face="Times New Roman, serif"><span lang="en-US">JIS</span></font>\82Ì\83}\83b\83`\83\93\83O\82Ì\83o\83O\82ð\8dÄ\82Ñ\8fC\90³\82µ\82Ü\82µ\82½\81B
+    </p>
+
+  </li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">Ver.0.36</span></font>\81i<font face="Times New Roman, serif"><span lang="en-US">2004/11/13</span></font>\81j</h3>
+
+<ul>
+
+  <li>
+    <p><font face="Times New Roman, serif"><span lang="en-US">JIS</span></font>\82Ì\83}\83b\83`\83\93\83O\82Ì\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ\82½\81B </p>
+
+  </li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">Ver.0.35</span></font>\81i<font face="Times New Roman, serif"><span lang="en-US">2004/9/26</span></font>\81j</h3>
+
+<ul>
+
+  <li>
+    <p><font face="Times New Roman, serif"><span lang="en-US">mb_send_mail</span></font>\82Ì\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ
+\82½\81B </p>
+
+  </li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">Ver.0.341</span></font>\81i<font face="Times New Roman, serif"><span lang="en-US">2004/9/16</span></font>\81j</h3>
+
+<ul>
+
+  <li>
+    <p><font face="Times New Roman, serif"><span lang="en-US">mb_convert_kana</span></font>\82Ì\83o\83O\82ð\8fC\90³\82µ
+\82Ü\82µ\82½\81B </p>
+
+  </li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">Ver.0.34</span></font>\81i<font face="Times New Roman, serif"><span lang="en-US">2004/9/15</span></font>\81j</h3>
+
+<ul>
+
+  <li>
+    <p><font face="Times New Roman, serif"><span lang="en-US">mb_convert_kana</span></font>\82Ì\83o\83O\82ð\8fC\90³\82µ
+\82Ü\82µ\82½\81B </p>
+
+  </li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">Ver.0.33</span></font>\81i<font face="Times New Roman, serif"><span lang="en-US">2004/8/27</span></font>\81j</h3>
+
+<ul>
+
+  <li>
+    <p style="margin-bottom: 0cm;"><font face="Times New Roman, serif"><span lang="en-US">mb_encode_numericentity,
+mb_decode_numericentity</span></font>\82ð\83T\83|\81[\83g\82µ\82Ü\82µ\82½\81B </p>
+
+  </li>
+
+  <li>
+    <p style="margin-bottom: 0cm;"><font face="Times New Roman, serif"><span lang="en-US">mb_convert_encoding</span></font>\82Å<font face="Times New Roman, serif"><span lang="en-US">UTF-16</span></font>\82©
+\82ç\82Ì\95Ï\8a·\82ð\83T\83|\81[\83g\82µ\82Ü\82µ\82½\81B </p>
+
+  </li>
+
+  <li>
+    <p style="margin-bottom: 0cm;">\83V\83t\83g<font face="Times New Roman, serif"><span lang="en-US">JIS</span></font>\82Ì
+\8f\88\97\9d\82ð<font face="Times New Roman, serif"><span lang="en-US">SJIS-WIN</span></font>\8cÝ\8a·\82É\82µ\82Ü\82µ\82½\81B<font face="Times New Roman, serif"><span lang="en-US"><br>
+
+mbstring</span></font>\96{\89Æ\82Æ\82Í\88Ù\82È\82è\81C<font face="Times New Roman, serif"><span lang="en-US">SJIS</span></font>\82Æ<font face="Times New Roman, serif"><span lang="en-US">SJIS-WIN</span></font>\82Ì
+\93®\8dì\82Í\93¯\82\82Å\82·\81B </p>
+
+  </li>
+
+  <li>
+    <p style="margin-bottom: 0cm;"><font face="Times New Roman, serif"><span lang="en-US">mb_strcut</span></font>\82Ì
+\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ\82½\81B </p>
+
+  </li>
+
+  <li>
+    <p>\95Ï\8dX\97\9a\97ð\82ð<font face="Times New Roman, serif"><span lang="en-US">HTML</span></font>\82É\95Ï\82¦\82Ü\82µ\82½\81B </p>
+
+  </li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">Ver.0.32(2004/8/19)</span></font></h3>
+
+<ul>
+
+  <li>
+    <p><font face="Times New Roman, serif"><span lang="en-US">mb_http_input, mb_http_output,
+mb_output_handler </span></font>\82ð\83T\83|\81[\83g\82µ\82Ü\82µ\82½<font face="Times New Roman, serif"><span lang="en-US"><br>
+
+    </span></font>\82½\82¾\82µ\81C<font face="Times New Roman, serif"><span lang="en-US">mb_http_input</span></font>\82É\8aÖ\82µ\82Ä\82Í\95\8e\9a\83R\81[
+\83h\95Ï\8a·\82ð\8ds\82í\82È\82¢\82½\82ß\81C\8fí\82É<font face="Times New Roman, serif"><span lang="en-US">FALSE</span></font>\82ð\95Ô\82µ\82Ü\82·\81B </p>
+
+  </li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">Ver.0.31(2004/8/16)</span></font></h3>
+
+<ul>
+
+  <li>
+    <p style="margin-bottom: 0cm;"><font face="Times New Roman, serif"><span lang="en-US">mb_decode_mimeheader</span></font>\82Ì
+\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ\82½ </p>
+
+  </li>
+
+  <li>
+    <p><font face="Times New Roman, serif"><span lang="en-US">mb_convert_variables</span></font>\82Ì\8f\89
+\8aú\90Ý\92è\83`\83F\83b\83N\82Ì\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ\82½ </p>
+
+  </li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">Ver.0.3(2004/8/8)</span></font></h3>
+
+<ul>
+
+  <li>
+    <p style="margin-bottom: 0cm;">\83o\83O\82Â\82Ô\82µ<font face="Times New Roman, serif"><span lang="en-US"><br>
+
+    </span></font>\93ü\82ê\8eq\82Ì\83t\83@\83\93\83N\83V\83\87\83\93\82Å\93ñ\8fd\90é\8c¾\82É\82È\82Á\82Ä\82µ\82Ü\82¤\8fê\8d\87\82ª\82 \82é\82Ì\82Å\8aO\95\94\82É\8fo\82µ\82Ü\82µ\82½\81B </p>
+
+  </li>
+
+  <li>
+    <p style="margin-bottom: 0cm;">\83o\83O\82Â\82Ô\82µ<font face="Times New Roman, serif"><span lang="en-US"><br>
+
+mb_strcut</span></font>\82Ì\83o\83O\82ð\8fC\90³\82µ\82Ü\82µ\82½ </p>
+
+  </li>
+
+  <li>
+    <p style="margin-bottom: 0cm;"><font face="Times New Roman, serif"><span lang="en-US">mb_encode_mimeheader,
+mb_decode_mimeheader</span></font>\82ð\83T\83|\81[\83g\82µ\82Ü\82µ\82½\81B </p>
+
+  </li>
+
+  <li>
+    <p><font face="Times New Roman, serif"><span lang="en-US">mb_convert_variables</span></font>\82Å\94z
+\97ñ\82©\82ç\82Ì\95Ï\8a·\82ð\83T\83|\81[\83g\82µ\82Ü\82µ\82½\81B<font face="Times New Roman, serif"><span lang="en-US"><br>
+
+    </span></font>\82±\82ê\82É\94º\82¢<font face="Times New Roman, serif"><span lang="en-US">mb_convert_variables</span></font>\82ð<font face="Times New Roman, serif"><span lang="en-US">2</span></font>\83p
+\83^\81[\83\93\82É\82µ\81C\8f\89\8aú\90Ý\92è\82Å\95Ï\8dX\82Å\82«\82é\82æ\82¤\82É\82µ\82Ü\82µ\82½\81B<font face="Times New Roman, serif"><span lang="en-US"><br>
+
+    </span></font>\8f\89\8aú\90Ý\92è\83t\83@\83C\83\8b\82Ì<font face="Times New Roman, serif"><span lang="en-US">convert-variables-arrayonly</span></font>\82ª<font face="Times New Roman, serif"><span lang="en-US">no</span></font>\82Ì
+\8fê\8d\87\81i\83f\83t\83H\83\8b\83g\81j\81C\82±\82ê\82Ü\82Å\82Æ\93¯\82\82æ\82¤\82É\94z\97ñ\82Å\82È\82­\82Ä\82à\95Ï\8a·\82µ\82Ü\82·\81B\82Ü\82½\81C\8dÅ\8f\89\82Ì\97v\91f\82ª\94z\97ñ\82Ì\8fê\8d\87\81C\82»\82ê\82¾\82¯\82ð\95Ï\8a·\82µ\82Ü\82·\81B\82½\82¾\82µ\81C\82±\82¿\82ç\82Ì\8fê\8d\87\81C\8cÄ\82Ñ
+\8fo\82µ\8e\9e\82É\88ø\90\94\82É<font face="Times New Roman, serif"><span lang="en-US">&amp;</span></font>\82ð\95t\82¯\82Ä\96¾\8e¦\93I\82É\8eQ\8fÆ\93n\82µ\82É
+\82·\82é\95K\97v\82ª\82 \82è\82Ü\82·\81B<font face="Times New Roman, serif"><span lang="en-US"><br>
+
+convert-variables-arrayonly</span></font>\82ª<font face="Times New Roman, serif"><span lang="en-US">no</span></font>\82Å
+\82È\82¢\8fê\8d\87\81C\95Ï\8a·\82·\82é\88ø\90\94\82Í\94z\97ñ\82¾\82¯\82É\82È\82è\82Ü\82·\81B\82»\82Ì\91ã\82í\82è\81C<font face="Times New Roman, serif"><span lang="en-US">&amp;</span></font>\82Í\95s\97v\82Å\82·\81B </p>
+
+  </li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">Ver.0.25(2004/7/7)</span></font></h3>
+
+<ul>
+
+  <li>
+    <p>\83o\83O\82Â\82Ô\82µ<font face="Times New Roman, serif"><span lang="en-US"><br>
+
+    </span></font>\93ü\82ê\8eq\82Ì\83t\83@\83\93\83N\83V\83\87\83\93\82Å\93ñ\8fd\90é\8c¾\82É\82È\82Á\82Ä\82µ\82Ü\82¤\8fê\8d\87\82ª\82 \82é\82Ì\82Å\8aO\95\94\82É\8fo\82µ\82Ü\82µ\82½\81B </p>
+
+  </li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">ver.0.24(2004/6/8)</span></font></h3>
+
+<ul>
+
+  <li>
+    <p><font face="Times New Roman, serif"><span lang="en-US">mb_strpos, mb_substr_count,
+mb_preferred_mime_name</span></font>\82ð\83T\83|\81[\83g\82µ\82Ü\82µ\82½\81B </p>
+
+  </li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">ver.0.23(2004/5/19)</span></font></h3>
+
+<ul>
+
+  <li>
+    <p><font face="Times New Roman, serif"><span lang="en-US">mb_convert_encoding</span></font>\82Å<font face="Times New Roman, serif"><span lang="en-US">UTF-16</span></font>\82Ö
+\82Ì\95Ï\8a·\82ð\83T\83|\81[\83g\82µ\82Ü\82µ\82½\81B<font face="Times New Roman, serif"><span lang="en-US"><br>
+
+    <br>
+
+usage:<br>
+
+$str = mb_convert_encoding($str, 'UTF-16', 'EUC-JP, UTF-8');<br>
+
+    <br>
+
+    </span></font>\95Ô\82·\82Ì\82Í<font face="Times New Roman, serif"><span lang="en-US">BOM</span></font>\82È\82µ\82Ì\83r\83b\83O\81E\83G\83\93\83f\83B\83A\83\93\82É\82È\82è\82Ü\82·\81B
+    </p>
+
+  </li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">ver.0.22(2004/5/11)</span></font></h3>
+
+<ul>
+
+  <li>
+    <p style="margin-bottom: 0cm;">\83o\83O\82Â\82Ô\82µ </p>
+
+  </li>
+
+  <li>
+    <p style="margin-bottom: 0cm;"><font face="Times New Roman, serif"><span lang="en-US">mb_convert_variables</span></font>\82ð
+\8eb\92è\83T\83|\81[\83g </p>
+
+  </li>
+
+  <li>
+    <p><font face="Times New Roman, serif"><span lang="en-US">mb_strwidth</span></font>\82ð\83T\83|\81[\83g </p>
+
+  </li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">ver.0.21(2004/4/28)</span></font></h3>
+
+<ul>
+
+  <li>
+    <p style="margin-bottom: 0cm;">\8f\89\8aú\90Ý\92è\82ð<font face="Times New Roman, serif"><span lang="en-US">mb-emulator.ini</span></font>\82©
+\82ç\93Ç\82Þ\82æ\82¤\82É\95Ï\8dX </p>
+
+  </li>
+
+  <li>
+    <p style="margin-bottom: 0cm;"><font face="Times New Roman, serif"><span lang="en-US">EUC</span></font>\82Æ<font face="Times New Roman, serif"><span lang="en-US">UTF-8</span></font>\8aÔ
+\82ð\92¼\90Ú\95Ï\8a·\82·\82é\82æ\82¤\82É\95Ï\8dX </p>
+
+  </li>
+
+  <li>
+    <p>\83o\83O\82Â\82Ô\82µ </p>
+
+  </li>
+
+</ul>
+
+<h3><font face="Times New Roman, serif"><span lang="en-US">ver.0.2(2004/4/27)</span></font></h3>
+
+<ul>
+
+  <li>
+    <p><font face="Times New Roman, serif"><span lang="en-US">jcode</span></font>\82ð\8eg\82í\82È\82¢\8c`\82Å\93Æ\97§\82µ\82Ü\82µ\82½\81B<font face="Times New Roman, serif"><span lang="en-US">12</span></font>\8aÖ
+\90\94\83T\83|\81[\83g<font face="Times New Roman, serif"><span lang="en-US"><br>
+
+mb_language, mb_internal_encoding, mb_convert_encoding,
+mb_convert_kana, mb_send_mail, mb_strimwidth, mb_detect_encoding,
+mb_detect_order, mb_strlen, mb_substr, mb_strcut, mb_strrpos </span></font>
+    </p>
+
+  </li>
+
+</ul>
+
+<h2>\8aÖ\90\94\83T\83|\81[\83g\8fó\8bµ\81i<font face="Times New Roman, serif"><span lang="en-US">2004/8/19</span></font>\81j</h2>
+
+<table cellpadding="2" cellspacing="2">
+
+  <tbody>
+
+    <tr>
+
+      <td width="150">
+      <p><font face="Times New Roman, serif"><span lang="en-US"><b>mbstring</b></span></font><b>\8aÖ
+\90\94\96¼</b></p>
+
+      </td>
+
+      <td width="300">
+      <p><b>\8d¡\8cã\82Ì\83T\83|\81[\83g\97\\92è</b></p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_convert_case</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\89Â\94\\82¾\82¯\82Ç\8c\8b\8d\\91å\95Ï\82»\82¤\81B\82 \82Ü\82è\8eg\82¢\82»\82¤\82É\82È\82¢\8bC\82ª\82·\82é\81B\82à\82µ\83j\81[\83Y\82ª\82 \82ê\82Î</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_convert_encoding</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_convert_kana</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_convert_variables</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_decode_mimeheader</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_decode_numericentity</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_detect_encoding</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_detect_order</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_encode_mimeheader</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_encode_numericentity</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_ereg_match</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_ereg_replace</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_ereg_search_getpos</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_ereg_search_getregs</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_ereg_search_init</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_ereg_search_pos</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_ereg_search_regs</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_ereg_search_setpos</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_ereg_search</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_ereg</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_eregi_replace</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_eregi</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_get_info</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_http_input</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý\81i\8fí\82É<font face="Times New Roman, serif"><span lang="en-US">FALSE</span></font>\82ð\95Ô\82·\81j</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_http_output</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_internal_encoding</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_language</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý\81i\82½\82¾\82µ\8ew\92è\82µ\82Ä\82à\89½\82à\95Ï\82í\82ç\82È\82¢\81j</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_output_handler</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_parse_str</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_preferred_mime_name</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_regex_encoding</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_regex_set_options</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_send_mail</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_split</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\95s\89Â\94\</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_strcut</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_strimwidth</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_strlen</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_strpos</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_strrpos</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_strtolower</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\89Â\94\\82¾\82¯\82Ç\91å\95Ï\82»\82¤</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_strtoupper</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\89Â\94\\82¾\82¯\82Ç\91å\95Ï\82»\82¤</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_strwidth</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_substitute_character</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\93ï\82µ\82»\82¤</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_substr_count</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+    <tr>
+
+      <td>
+      <p><font face="Times New Roman, serif"><span lang="en-US">mb_substr</span></font></p>
+
+      </td>
+
+      <td>
+      <p>\83T\83|\81[\83g\8dÏ\82Ý</p>
+
+      </td>
+
+    </tr>
+
+  </tbody>
+</table>
+
+<p><br>
+
+<br>
+
+</p>
+
+</body>
+</html>
diff --git a/euc/nucleus/libs/mb_emulator/lower.table b/euc/nucleus/libs/mb_emulator/lower.table
new file mode 100644 (file)
index 0000000..57e44ce
--- /dev/null
@@ -0,0 +1,615 @@
+<?php
+$mbemu_internals['lowerarray'] = array (
+0x00C0 => 0x00E0,
+0x00C1 => 0x00E1,
+0x00C2 => 0x00E2,
+0x00C3 => 0x00E3,
+0x00C4 => 0x00E4,
+0x00C5 => 0x00E5,
+0x00C6 => 0x00E6,
+0x00C7 => 0x00E7,
+0x00C8 => 0x00E8,
+0x00C9 => 0x00E9,
+0x00CA => 0x00EA,
+0x00CB => 0x00EB,
+0x00CC => 0x00EC,
+0x00CD => 0x00ED,
+0x00CE => 0x00EE,
+0x00CF => 0x00EF,
+0x00D0 => 0x00F0,
+0x00D1 => 0x00F1,
+0x00D2 => 0x00F2,
+0x00D3 => 0x00F3,
+0x00D4 => 0x00F4,
+0x00D5 => 0x00F5,
+0x00D6 => 0x00F6,
+0x00D8 => 0x00F8,
+0x00D9 => 0x00F9,
+0x00DA => 0x00FA,
+0x00DB => 0x00FB,
+0x00DC => 0x00FC,
+0x00DD => 0x00FD,
+0x00DE => 0x00FE, 
+0x0100 => 0x0101,
+0x0102 => 0x0103,
+0x0104 => 0x0105,
+0x0106 => 0x0107,
+0x0108 => 0x0109,
+0x010A => 0x010B,
+0x010C => 0x010D,
+0x010E => 0x010F,
+0x0110 => 0x0111,
+0x0112 => 0x0113,
+0x0114 => 0x0115,
+0x0116 => 0x0117,
+0x0118 => 0x0119,
+0x011A => 0x011B,
+0x011C => 0x011D,
+0x011E => 0x011F,
+0x0120 => 0x0121,
+0x0122 => 0x0123,
+0x0124 => 0x0125,
+0x0126 => 0x0127,
+0x0128 => 0x0129,
+0x012A => 0x012B,
+0x012C => 0x012D,
+0x012E => 0x012F,
+0x0130 => 0x0069,
+0x0132 => 0x0133,
+0x0134 => 0x0135,
+0x0136 => 0x0137,
+0x0139 => 0x013A,
+0x013B => 0x013C,
+0x013D => 0x013E,
+0x013F => 0x0140,
+0x0141 => 0x0142,
+0x0143 => 0x0144,
+0x0145 => 0x0146,
+0x0147 => 0x0148,
+0x014A => 0x014B,
+0x014C => 0x014D,
+0x014E => 0x014F,
+0x0150 => 0x0151,
+0x0152 => 0x0153,
+0x0154 => 0x0155,
+0x0156 => 0x0157,
+0x0158 => 0x0159,
+0x015A => 0x015B,
+0x015C => 0x015D,
+0x015E => 0x015F,
+0x0160 => 0x0161,
+0x0162 => 0x0163,
+0x0164 => 0x0165,
+0x0166 => 0x0167,
+0x0168 => 0x0169,
+0x016A => 0x016B,
+0x016C => 0x016D,
+0x016E => 0x016F,
+0x0170 => 0x0171,
+0x0172 => 0x0173,
+0x0174 => 0x0175,
+0x0176 => 0x0177,
+0x0178 => 0x00FF,
+0x0179 => 0x017A,
+0x017B => 0x017C,
+0x017D => 0x017E,
+0x0181 => 0x0253,
+0x0182 => 0x0183,
+0x0184 => 0x0185,
+0x0186 => 0x0254,
+0x0187 => 0x0188,
+0x0189 => 0x0256,
+0x018A => 0x0257,
+0x018B => 0x018C,
+0x018E => 0x01DD,
+0x018F => 0x0259,
+0x0190 => 0x025B,
+0x0191 => 0x0192,
+0x0193 => 0x0260,
+0x0194 => 0x0263,
+0x0196 => 0x0269,
+0x0197 => 0x0268,
+0x0198 => 0x0199,
+0x019C => 0x026F,
+0x019D => 0x0272,
+0x019F => 0x0275,
+0x01A0 => 0x01A1,
+0x01A2 => 0x01A3,
+0x01A4 => 0x01A5,
+0x01A6 => 0x0280,
+0x01A7 => 0x01A8,
+0x01A9 => 0x0283,
+0x01AC => 0x01AD,
+0x01AE => 0x0288,
+0x01AF => 0x01B0,
+0x01B1 => 0x028A,
+0x01B2 => 0x028B,
+0x01B3 => 0x01B4,
+0x01B5 => 0x01B6,
+0x01B7 => 0x0292,
+0x01B8 => 0x01B9,
+0x01BC => 0x01BD,
+0x01C4 => 0x01C6,
+0x01C7 => 0x01C9,
+0x01CA => 0x01CC,
+0x01CD => 0x01CE,
+0x01CF => 0x01D0,
+0x01D1 => 0x01D2,
+0x01D3 => 0x01D4,
+0x01D5 => 0x01D6,
+0x01D7 => 0x01D8,
+0x01D9 => 0x01DA,
+0x01DB => 0x01DC,
+0x01DE => 0x01DF,
+0x01E0 => 0x01E1,
+0x01E2 => 0x01E3,
+0x01E4 => 0x01E5,
+0x01E6 => 0x01E7,
+0x01E8 => 0x01E9,
+0x01EA => 0x01EB,
+0x01EC => 0x01ED,
+0x01EE => 0x01EF,
+0x01F1 => 0x01F3,
+0x01F4 => 0x01F5,
+0x01F6 => 0x0195,
+0x01F7 => 0x01BF,
+0x01F8 => 0x01F9,
+0x01FA => 0x01FB,
+0x01FC => 0x01FD,
+0x01FE => 0x01FF,
+0x0200 => 0x0201,
+0x0202 => 0x0203,
+0x0204 => 0x0205,
+0x0206 => 0x0207,
+0x0208 => 0x0209,
+0x020A => 0x020B,
+0x020C => 0x020D,
+0x020E => 0x020F,
+0x0210 => 0x0211,
+0x0212 => 0x0213,
+0x0214 => 0x0215,
+0x0216 => 0x0217,
+0x0218 => 0x0219,
+0x021A => 0x021B,
+0x021C => 0x021D,
+0x021E => 0x021F,
+0x0220 => 0x019E,
+0x0222 => 0x0223,
+0x0224 => 0x0225,
+0x0226 => 0x0227,
+0x0228 => 0x0229,
+0x022A => 0x022B,
+0x022C => 0x022D,
+0x022E => 0x022F,
+0x0230 => 0x0231,
+0x0232 => 0x0233,
+0x0386 => 0x03AC,
+0x0388 => 0x03AD,
+0x0389 => 0x03AE,
+0x038A => 0x03AF,
+0x038C => 0x03CC,
+0x038E => 0x03CD,
+0x038F => 0x03CE,
+0x0391 => 0x03B1,
+0x0392 => 0x03B2,
+0x0393 => 0x03B3,
+0x0394 => 0x03B4,
+0x0395 => 0x03B5,
+0x0396 => 0x03B6,
+0x0397 => 0x03B7,
+0x0398 => 0x03B8,
+0x0399 => 0x03B9,
+0x039A => 0x03BA,
+0x039B => 0x03BB,
+0x039C => 0x03BC,
+0x039D => 0x03BD,
+0x039E => 0x03BE,
+0x039F => 0x03BF,
+0x03A0 => 0x03C0,
+0x03A1 => 0x03C1,
+0x03A3 => 0x03C3,
+0x03A4 => 0x03C4,
+0x03A5 => 0x03C5,
+0x03A6 => 0x03C6,
+0x03A7 => 0x03C7,
+0x03A8 => 0x03C8,
+0x03A9 => 0x03C9,
+0x03AA => 0x03CA,
+0x03AB => 0x03CB,
+0x03D8 => 0x03D9,
+0x03DA => 0x03DB,
+0x03DC => 0x03DD,
+0x03DE => 0x03DF,
+0x03E0 => 0x03E1,
+0x03E2 => 0x03E3,
+0x03E4 => 0x03E5,
+0x03E6 => 0x03E7,
+0x03E8 => 0x03E9,
+0x03EA => 0x03EB,
+0x03EC => 0x03ED,
+0x03EE => 0x03EF,
+0x03F4 => 0x03B8,
+0x0400 => 0x0450,
+0x0401 => 0x0451,
+0x0402 => 0x0452,
+0x0403 => 0x0453,
+0x0404 => 0x0454,
+0x0405 => 0x0455,
+0x0406 => 0x0456,
+0x0407 => 0x0457,
+0x0408 => 0x0458,
+0x0409 => 0x0459,
+0x040A => 0x045A,
+0x040B => 0x045B,
+0x040C => 0x045C,
+0x040D => 0x045D,
+0x040E => 0x045E,
+0x040F => 0x045F,
+0x0410 => 0x0430,
+0x0411 => 0x0431,
+0x0412 => 0x0432,
+0x0413 => 0x0433,
+0x0414 => 0x0434,
+0x0415 => 0x0435,
+0x0416 => 0x0436,
+0x0417 => 0x0437,
+0x0418 => 0x0438,
+0x0419 => 0x0439,
+0x041A => 0x043A,
+0x041B => 0x043B,
+0x041C => 0x043C,
+0x041D => 0x043D,
+0x041E => 0x043E,
+0x041F => 0x043F,
+0x0420 => 0x0440,
+0x0421 => 0x0441,
+0x0422 => 0x0442,
+0x0423 => 0x0443,
+0x0424 => 0x0444,
+0x0425 => 0x0445,
+0x0426 => 0x0446,
+0x0427 => 0x0447,
+0x0428 => 0x0448,
+0x0429 => 0x0449,
+0x042A => 0x044A,
+0x042B => 0x044B,
+0x042C => 0x044C,
+0x042D => 0x044D,
+0x042E => 0x044E,
+0x042F => 0x044F,
+0x0460 => 0x0461,
+0x0462 => 0x0463,
+0x0464 => 0x0465,
+0x0466 => 0x0467,
+0x0468 => 0x0469,
+0x046A => 0x046B,
+0x046C => 0x046D,
+0x046E => 0x046F,
+0x0470 => 0x0471,
+0x0472 => 0x0473,
+0x0474 => 0x0475,
+0x0476 => 0x0477,
+0x0478 => 0x0479,
+0x047A => 0x047B,
+0x047C => 0x047D,
+0x047E => 0x047F,
+0x0480 => 0x0481,
+0x048A => 0x048B,
+0x048C => 0x048D,
+0x048E => 0x048F,
+0x0490 => 0x0491,
+0x0492 => 0x0493,
+0x0494 => 0x0495,
+0x0496 => 0x0497,
+0x0498 => 0x0499,
+0x049A => 0x049B,
+0x049C => 0x049D,
+0x049E => 0x049F,
+0x04A0 => 0x04A1,
+0x04A2 => 0x04A3,
+0x04A4 => 0x04A5,
+0x04A6 => 0x04A7,
+0x04A8 => 0x04A9,
+0x04AA => 0x04AB,
+0x04AC => 0x04AD,
+0x04AE => 0x04AF,
+0x04B0 => 0x04B1,
+0x04B2 => 0x04B3,
+0x04B4 => 0x04B5,
+0x04B6 => 0x04B7,
+0x04B8 => 0x04B9,
+0x04BA => 0x04BB,
+0x04BC => 0x04BD,
+0x04BE => 0x04BF,
+0x04C1 => 0x04C2,
+0x04C3 => 0x04C4,
+0x04C5 => 0x04C6,
+0x04C7 => 0x04C8,
+0x04C9 => 0x04CA,
+0x04CB => 0x04CC,
+0x04CD => 0x04CE,
+0x04D0 => 0x04D1,
+0x04D2 => 0x04D3,
+0x04D4 => 0x04D5,
+0x04D6 => 0x04D7,
+0x04D8 => 0x04D9,
+0x04DA => 0x04DB,
+0x04DC => 0x04DD,
+0x04DE => 0x04DF,
+0x04E0 => 0x04E1,
+0x04E2 => 0x04E3,
+0x04E4 => 0x04E5,
+0x04E6 => 0x04E7,
+0x04E8 => 0x04E9,
+0x04EA => 0x04EB,
+0x04EC => 0x04ED,
+0x04EE => 0x04EF,
+0x04F0 => 0x04F1,
+0x04F2 => 0x04F3,
+0x04F4 => 0x04F5,
+0x04F8 => 0x04F9,
+0x0500 => 0x0501,
+0x0502 => 0x0503,
+0x0504 => 0x0505,
+0x0506 => 0x0507,
+0x0508 => 0x0509,
+0x050A => 0x050B,
+0x050C => 0x050D,
+0x050E => 0x050F,
+0x0531 => 0x0561,
+0x0532 => 0x0562,
+0x0533 => 0x0563,
+0x0534 => 0x0564,
+0x0535 => 0x0565,
+0x0536 => 0x0566,
+0x0537 => 0x0567,
+0x0538 => 0x0568,
+0x0539 => 0x0569,
+0x053A => 0x056A,
+0x053B => 0x056B,
+0x053C => 0x056C,
+0x053D => 0x056D,
+0x053E => 0x056E,
+0x053F => 0x056F,
+0x0540 => 0x0570,
+0x0541 => 0x0571,
+0x0542 => 0x0572,
+0x0543 => 0x0573,
+0x0544 => 0x0574,
+0x0545 => 0x0575,
+0x0546 => 0x0576,
+0x0547 => 0x0577,
+0x0548 => 0x0578,
+0x0549 => 0x0579,
+0x054A => 0x057A,
+0x054B => 0x057B,
+0x054C => 0x057C,
+0x054D => 0x057D,
+0x054E => 0x057E,
+0x054F => 0x057F,
+0x0550 => 0x0580,
+0x0551 => 0x0581,
+0x0552 => 0x0582,
+0x0553 => 0x0583,
+0x0554 => 0x0584,
+0x0555 => 0x0585,
+0x0556 => 0x0586,
+0x1E00 => 0x1E01,
+0x1E02 => 0x1E03,
+0x1E04 => 0x1E05,
+0x1E06 => 0x1E07,
+0x1E08 => 0x1E09,
+0x1E0A => 0x1E0B,
+0x1E0C => 0x1E0D,
+0x1E0E => 0x1E0F,
+0x1E10 => 0x1E11,
+0x1E12 => 0x1E13,
+0x1E14 => 0x1E15,
+0x1E16 => 0x1E17,
+0x1E18 => 0x1E19,
+0x1E1A => 0x1E1B,
+0x1E1C => 0x1E1D,
+0x1E1E => 0x1E1F,
+0x1E20 => 0x1E21,
+0x1E22 => 0x1E23,
+0x1E24 => 0x1E25,
+0x1E26 => 0x1E27,
+0x1E28 => 0x1E29,
+0x1E2A => 0x1E2B,
+0x1E2C => 0x1E2D,
+0x1E2E => 0x1E2F,
+0x1E30 => 0x1E31,
+0x1E32 => 0x1E33,
+0x1E34 => 0x1E35,
+0x1E36 => 0x1E37,
+0x1E38 => 0x1E39,
+0x1E3A => 0x1E3B,
+0x1E3C => 0x1E3D,
+0x1E3E => 0x1E3F,
+0x1E40 => 0x1E41,
+0x1E42 => 0x1E43,
+0x1E44 => 0x1E45,
+0x1E46 => 0x1E47,
+0x1E48 => 0x1E49,
+0x1E4A => 0x1E4B,
+0x1E4C => 0x1E4D,
+0x1E4E => 0x1E4F,
+0x1E50 => 0x1E51,
+0x1E52 => 0x1E53,
+0x1E54 => 0x1E55,
+0x1E56 => 0x1E57,
+0x1E58 => 0x1E59,
+0x1E5A => 0x1E5B,
+0x1E5C => 0x1E5D,
+0x1E5E => 0x1E5F,
+0x1E60 => 0x1E61,
+0x1E62 => 0x1E63,
+0x1E64 => 0x1E65,
+0x1E66 => 0x1E67,
+0x1E68 => 0x1E69,
+0x1E6A => 0x1E6B,
+0x1E6C => 0x1E6D,
+0x1E6E => 0x1E6F,
+0x1E70 => 0x1E71,
+0x1E72 => 0x1E73,
+0x1E74 => 0x1E75,
+0x1E76 => 0x1E77,
+0x1E78 => 0x1E79,
+0x1E7A => 0x1E7B,
+0x1E7C => 0x1E7D,
+0x1E7E => 0x1E7F,
+0x1E80 => 0x1E81,
+0x1E82 => 0x1E83,
+0x1E84 => 0x1E85,
+0x1E86 => 0x1E87,
+0x1E88 => 0x1E89,
+0x1E8A => 0x1E8B,
+0x1E8C => 0x1E8D,
+0x1E8E => 0x1E8F,
+0x1E90 => 0x1E91,
+0x1E92 => 0x1E93,
+0x1E94 => 0x1E95,
+0x1EA0 => 0x1EA1,
+0x1EA2 => 0x1EA3,
+0x1EA4 => 0x1EA5,
+0x1EA6 => 0x1EA7,
+0x1EA8 => 0x1EA9,
+0x1EAA => 0x1EAB,
+0x1EAC => 0x1EAD,
+0x1EAE => 0x1EAF,
+0x1EB0 => 0x1EB1,
+0x1EB2 => 0x1EB3,
+0x1EB4 => 0x1EB5,
+0x1EB6 => 0x1EB7,
+0x1EB8 => 0x1EB9,
+0x1EBA => 0x1EBB,
+0x1EBC => 0x1EBD,
+0x1EBE => 0x1EBF,
+0x1EC0 => 0x1EC1,
+0x1EC2 => 0x1EC3,
+0x1EC4 => 0x1EC5,
+0x1EC6 => 0x1EC7,
+0x1EC8 => 0x1EC9,
+0x1ECA => 0x1ECB,
+0x1ECC => 0x1ECD,
+0x1ECE => 0x1ECF,
+0x1ED0 => 0x1ED1,
+0x1ED2 => 0x1ED3,
+0x1ED4 => 0x1ED5,
+0x1ED6 => 0x1ED7,
+0x1ED8 => 0x1ED9,
+0x1EDA => 0x1EDB,
+0x1EDC => 0x1EDD,
+0x1EDE => 0x1EDF,
+0x1EE0 => 0x1EE1,
+0x1EE2 => 0x1EE3,
+0x1EE4 => 0x1EE5,
+0x1EE6 => 0x1EE7,
+0x1EE8 => 0x1EE9,
+0x1EEA => 0x1EEB,
+0x1EEC => 0x1EED,
+0x1EEE => 0x1EEF,
+0x1EF0 => 0x1EF1,
+0x1EF2 => 0x1EF3,
+0x1EF4 => 0x1EF5,
+0x1EF6 => 0x1EF7,
+0x1EF8 => 0x1EF9,
+0x1F08 => 0x1F00,
+0x1F09 => 0x1F01,
+0x1F0A => 0x1F02,
+0x1F0B => 0x1F03,
+0x1F0C => 0x1F04,
+0x1F0D => 0x1F05,
+0x1F0E => 0x1F06,
+0x1F0F => 0x1F07,
+0x1F18 => 0x1F10,
+0x1F19 => 0x1F11,
+0x1F1A => 0x1F12,
+0x1F1B => 0x1F13,
+0x1F1C => 0x1F14,
+0x1F1D => 0x1F15,
+0x1F28 => 0x1F20,
+0x1F29 => 0x1F21,
+0x1F2A => 0x1F22,
+0x1F2B => 0x1F23,
+0x1F2C => 0x1F24,
+0x1F2D => 0x1F25,
+0x1F2E => 0x1F26,
+0x1F2F => 0x1F27,
+0x1F38 => 0x1F30,
+0x1F39 => 0x1F31,
+0x1F3A => 0x1F32,
+0x1F3B => 0x1F33,
+0x1F3C => 0x1F34,
+0x1F3D => 0x1F35,
+0x1F3E => 0x1F36,
+0x1F3F => 0x1F37,
+0x1F48 => 0x1F40,
+0x1F49 => 0x1F41,
+0x1F4A => 0x1F42,
+0x1F4B => 0x1F43,
+0x1F4C => 0x1F44,
+0x1F4D => 0x1F45,
+0x1F59 => 0x1F51,
+0x1F5B => 0x1F53,
+0x1F5D => 0x1F55,
+0x1F5F => 0x1F57,
+0x1F68 => 0x1F60,
+0x1F69 => 0x1F61,
+0x1F6A => 0x1F62,
+0x1F6B => 0x1F63,
+0x1F6C => 0x1F64,
+0x1F6D => 0x1F65,
+0x1F6E => 0x1F66,
+0x1F6F => 0x1F67,
+0x1FB8 => 0x1FB0,
+0x1FB9 => 0x1FB1,
+0x1FBA => 0x1F70,
+0x1FBB => 0x1F71,
+0x1FC8 => 0x1F72,
+0x1FC9 => 0x1F73,
+0x1FCA => 0x1F74,
+0x1FCB => 0x1F75,
+0x1FD8 => 0x1FD0,
+0x1FD9 => 0x1FD1,
+0x1FDA => 0x1F76,
+0x1FDB => 0x1F77,
+0x1FE8 => 0x1FE0,
+0x1FE9 => 0x1FE1,
+0x1FEA => 0x1F7A,
+0x1FEB => 0x1F7B,
+0x1FEC => 0x1FE5,
+0x1FF8 => 0x1F78,
+0x1FF9 => 0x1F79,
+0x1FFA => 0x1F7C,
+0x1FFB => 0x1F7D,
+0x2126 => 0x03C9,
+0x212A => 0x006B,
+0x212B => 0x00E5,
+0xFF21 => 0xFF41,
+0xFF22 => 0xFF42,
+0xFF23 => 0xFF43,
+0xFF24 => 0xFF44,
+0xFF25 => 0xFF45,
+0xFF26 => 0xFF46,
+0xFF27 => 0xFF47,
+0xFF28 => 0xFF48,
+0xFF29 => 0xFF49,
+0xFF2A => 0xFF4A,
+0xFF2B => 0xFF4B,
+0xFF2C => 0xFF4C,
+0xFF2D => 0xFF4D,
+0xFF2E => 0xFF4E,
+0xFF2F => 0xFF4F,
+0xFF30 => 0xFF50,
+0xFF31 => 0xFF51,
+0xFF32 => 0xFF52,
+0xFF33 => 0xFF53,
+0xFF34 => 0xFF54,
+0xFF35 => 0xFF55,
+0xFF36 => 0xFF56,
+0xFF37 => 0xFF57,
+0xFF38 => 0xFF58,
+0xFF39 => 0xFF59,
+0xFF3A => 0xFF5A);
+?>
index 3af4f04..c0ae385 100755 (executable)
@@ -1,5 +1,6 @@
-language=ja\r
-internal_encoding=\r
-detect_order=ASCII, JIS, UTF-8, EUC-JP, SJIS\r
-convert_variables_arrayonly=no\r
-http_output=pass\r
+language=ja
+internal_encoding=
+detect_order=ASCII, JIS, UTF-8, EUC-JP, SJIS
+convert_variables_arrayonly=no
+http_output=pass
+substitute_character=none
index 99e0955..9490571 100755 (executable)
-<?php\r
-/* mb-emulator.php by Andy\r
- * email : webmaster@matsubarafamily.com\r
- *\r
- * license based on GPL(GNU General Public License)\r
- *\r
- * Ver.0.37 (2005/1/30)\r
- */\r
-\r
-\r
-\r
-include dirname(__FILE__).'/convert.table';\r
-include dirname(__FILE__).'/sjistouni.table';\r
-include dirname(__FILE__).'/unitosjis.table';\r
-\r
-$ini_file = parse_ini_file(dirname(__FILE__).'/mb-emulator.ini');\r
-\r
-$_language = $ini_file['language'];\r
-$_internal_encoding = $ini_file['internal_encoding'];\r
-$_lang_array = array (\r
-       'Japanese', 'ja', 'English', 'en', 'uni'\r
-       );\r
-\r
-$_mb_encoding = array (\r
-       'AUTO' => 0,\r
-       'ASCII' => 0,\r
-       'EUC-JP' => 1,\r
-       'EUC' => 1,\r
-       'SJIS' => 2,\r
-       'SHIFT-JIS' => 2,\r
-       'SJIS-WIN' => 2,\r
-       'JIS' => 3,\r
-       'ISO-2022-JP' => 3,\r
-       'UTF-8' => 4,\r
-       'UTF8' => 4,\r
-       'UTF-16'=>5\r
-       );\r
-\r
-if (!(mb_detect_order($ini_file['detect_order'])))\r
-       $_detect_order = array ("ASCII", "JIS", "UTF-8", "EUC-JP", "SJIS");\r
-\r
-\r
-\r
-$sjis_match = "[\x81-\x9F,\xE0-\xFC]([\x40-\xFC])|[\x01-\x7F]|[\xA0-\xDF]";\r
-$euc_match = "[\xa1-\xfe]([\xa1-\xfe])|[\x01-\x7f]|\x8e([\xa0-\xdf])";\r
-$utf8_match = "[\x01-\x7F]|[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF][\x80-\xBF]";\r
-$jis_match = "(?:^|\x1b\(\x42)([^\x1b]*)|(?:\x1b\\$\x42([^\x1b]*))|(?:\x1b\(I([^\x1b]*))";\r
-\r
-function mb_language($language)\r
-{\r
-  global $_language, $_lang_array;\r
-\r
-  if ($language =='') {\r
-    if ($_language == '') return FALSE;\r
-    else return $_language;\r
-  } else {\r
-       foreach ($_lang_array as $element) {\r
-               if ($element == $language) {\r
-                       $_language = $language;\r
-                       return TRUE;\r
-               }\r
-       }\r
-       return FALSE;\r
-  }\r
-}\r
-\r
-\r
-function mb_internal_encoding($encoding = '')\r
-{\r
-  global $_internal_encoding;\r
-\r
-  if ($encoding =='') {\r
-    if ($_internal_encoding == '') return FALSE;\r
-    else return $_internal_encoding;\r
-  } else {\r
-               $_internal_encoding = $encoding;\r
-               return TRUE;\r
-  }\r
-}\r
-\r
-\r
-\r
-function mb_convert_encoding( $str, $to_encoding, $from_encoding = '')\r
-{\r
-       global $_internal_encoding, $_mb_encoding;\r
-\r
-       $to_encoding = strtoupper($to_encoding);\r
-       $from_encoding = mb_detect_encoding($str, $from_encoding);\r
-       \r
-       switch ($_mb_encoding[$from_encoding]) {\r
-               case 1: //euc-jp\r
-                       switch($_mb_encoding[$to_encoding]) {\r
-                               case 2: //sjis\r
-                                       return _euctosjis($str);\r
-                               case 3: //jis\r
-                                       $str = _euctosjis($str);\r
-                                       return _sjistojis($str);\r
-                               case 4: //utf8\r
-                                       return _euctoutf8($str);\r
-                               case 5: //utf16\r
-                                       $str = _euctoutf8($str);\r
-                                       return _utf8toutf16($str);\r
-                               default:\r
-                                       return $str;\r
-                       }\r
-               case 2: //sjis\r
-                       switch($_mb_encoding[$to_encoding]) {\r
-                               case 1: //euc-jp\r
-                                       return _sjistoeuc($str);\r
-                               case 3: //jis\r
-                                       return _sjistojis($str);\r
-                               case 4: //utf8\r
-                                       return _sjistoutf8($str);\r
-                               case 5: //utf16\r
-                                       $str = _sjistoutf8($str);\r
-                                       return _utf8toutf16($str);\r
-                               default:\r
-                                       return $str;\r
-                       }\r
-               case 3: //jis\r
-                       switch($_mb_encoding[$to_encoding]) {\r
-                               case 1: //euc-jp\r
-                                       $str = _jistosjis($str);\r
-                                       return _sjistoeuc($str);\r
-                               case 2: //sjis\r
-                                       return _jistosjis($str);\r
-                               case 4: //utf8\r
-                                       $str = _jistosjis($str);\r
-                                       return _sjistoutf8($str);\r
-                               case 5: //utf16\r
-                                       $str = _jistosjis($str);\r
-                                       $str = _sjistoutf8($str);\r
-                                       return _utf8toutf16($str);\r
-                               default:\r
-                                       return $str;\r
-                       }\r
-               case 4: //utf8\r
-                       switch($_mb_encoding[$to_encoding]) {\r
-                               case 1: //euc-jp\r
-                                       return _utf8toeuc($str);\r
-                               case 2: //sjis\r
-                                       return _utf8tosjis($str);\r
-                               case 3: //jis\r
-                                       $str = _utf8tosjis($str);\r
-                                       return _sjistojis($str);\r
-                               case 5: //utf16\r
-                                       return _utf8toutf16($str);\r
-                               default:\r
-                                       return $str;\r
-                       }\r
-               case 5: //utf16\r
-                       $str = _utf16toutf8($str);\r
-                       switch($_mb_encoding[$to_encoding]) {\r
-                               case 1: //euc-jp\r
-                                       return _utf8toeuc($str);\r
-                               case 2: //sjis\r
-                                       return _utf8tosjis($str);\r
-                               case 3: //jis\r
-                                       $str = _utf8tosjis($str);\r
-                                       return _sjistojis($str);\r
-                               case 4: //utf8\r
-                                       return $str;\r
-                               default:\r
-                                       return _utf8toutf16($str);\r
-                       }\r
-               default:\r
-                       return $str;\r
-       }\r
-}\r
-\r
-function _get_encoding(&$str, $encoding)\r
-{\r
-       global $_internal_encoding, $_mb_encoding;\r
-\r
-       if ($encoding =='') {\r
-               if ($_internal_encoding == '') {\r
-                       return mb_detect_encoding($str, mb_detect_order());\r
-               } else {\r
-                       return $_internal_encoding;\r
-               }\r
-       }\r
-       return strtoupper($encoding);\r
-}\r
-\r
-\r
-\r
-function _sjistoeuc(&$str)\r
-{\r
-       global $sjis_match, $_sjistoeuc_byte1, $_sjistoeuc_byte2, $_sjistoeuc_byte1_shift;\r
-       \r
-       $max = preg_match_all("/$sjis_match/", $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð\r
-       $str_EUC = '';\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               $num = ord($allchars[0][$i]);  // \8ae\95\8e\9a\82Ì1\83o\83C\83g\96Ú\82ð\90\94\92l\82Æ\82µ\82Ä\8eæ\82è\8fo\82·\r
-               if ($num2 = ord($allchars[1][$i])) { // 2\83o\83C\83g\96Ú\82ª\82 \82é\8fê\8d\87\r
-                       $shift = $_sjistoeuc_byte1_shift[$num2];\r
-                       $str_EUC .= chr($_sjistoeuc_byte1[$num] + $shift)\r
-                                          .chr($_sjistoeuc_byte2[$shift][$num2]);\r
-               } elseif ($num <= 0x7F) {//\89p\90\94\8e\9a\r
-                       $str_EUC .= chr($num);\r
-               } else { //\94¼\8ap\83J\83i\r
-                       $str_EUC .= chr(0x8E).chr($num);\r
-               }\r
-       }\r
-       return $str_EUC;\r
-}\r
-\r
-\r
-function _euctosjis(&$str)\r
-{\r
-       global $euc_match, $_euctosjis_byte1, $_euctosjis_byte2;\r
-       $max = preg_match_all("/$euc_match/", $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð\r
-       $str_SJIS = '';\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               $num = ord($allchars[0][$i]);  // \8ae\95\8e\9a\82Ì1\83o\83C\83g\96Ú\82ð\90\94\92l\82Æ\82µ\82Ä\8eæ\82è\8fo\82·\r
-               if ($num2 = ord($allchars[1][$i])) { // \8a¿\8e\9a\82Ì\8fê\8d\87\r
-                       $str_SJIS .= chr($_euctosjis_byte1[$num]);\r
-                       if ($num & 1)\r
-                               $str_SJIS .= chr($_euctosjis_byte2[0][$num2]);\r
-                       else\r
-                               $str_SJIS .= chr($_euctosjis_byte2[1][$num2]);\r
-               } elseif ($num3 = ord($allchars[2][$i])) {//\94¼\8ap\83J\83i\r
-                       $str_SJIS .= chr($num3);\r
-               } else { //\89p\90\94\8e\9a\r
-                       $str_SJIS .= chr($num);\r
-               }\r
-       }\r
-       return $str_SJIS;\r
-}\r
-\r
-function _sjistojis(&$str)\r
-{\r
-       global $sjis_match, $_sjistoeuc_byte1, $_sjistoeuc_byte2, $_sjistoeuc_byte1_shift;\r
-       \r
-       $max = preg_match_all("/$sjis_match/", $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð\r
-       $str_JIS = '';\r
-       $mode = 0; // \89p\90\94\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               $num = ord($allchars[0][$i]);  // \8ae\95\8e\9a\82Ì1\83o\83C\83g\96Ú\82ð\90\94\92l\82Æ\82µ\82Ä\8eæ\82è\8fo\82·\r
-               if ($num2 = ord($allchars[1][$i])) { // 2\83o\83C\83g\96Ú\82ª\82 \82é\8fê\8d\87\r
-                       if ($mode != 1) {\r
-                               $mode = 1;\r
-                               $str_JIS .= chr(0x1b).'$B';\r
-                       }\r
-                       $shift = $_sjistoeuc_byte1_shift[$num2];\r
-                       $str_JIS .= chr(($_sjistoeuc_byte1[$num] + $shift) & 0x7F)\r
-                                          .chr($_sjistoeuc_byte2[$shift][$num2] & 0x7F);\r
-               } elseif ($num > 0x80) {//\94¼\8ap\83J\83i\r
-                       if ($mode != 2) {\r
-                               $mode = 2;\r
-                               $str_JIS .= chr(0x1B).'(I';\r
-                       }\r
-                       $str_JIS .= chr($num & 0x7F);\r
-               } else {//\94¼\8ap\89p\90\94\r
-                       if ($mode != 0) {\r
-                               $mode = 0;\r
-                               $str_JIS .= chr(0x1B).'(B';\r
-                       }\r
-                       $str_JIS .= chr($num);\r
-               }\r
-       }\r
-       if ($mode != 0) {\r
-               $str_JIS .= chr(0x1B).'(B';\r
-       }\r
-       return $str_JIS;\r
-}\r
-\r
-function _sub_jtosj($match)\r
-{\r
-       global $_euctosjis_byte1, $_euctosjis_byte2;\r
-       $num = ord($match[0]);\r
-       $num2 = ord($match[1]);\r
-       $s = chr($_euctosjis_byte1[$num | 0x80]);\r
-       if ($num & 1) {\r
-               $s .= chr($_euctosjis_byte2[0][$num2 | 0x80]);\r
-       } else {\r
-               $s .= chr($_euctosjis_byte2[1][$num2 | 0x80]);\r
-       }\r
-       return $s;\r
-}\r
-\r
-function _jistosjis(&$str)\r
-{\r
-       global $_euctosjis_byte1, $_euctosjis_byte2, $jis_match;\r
-       \r
-       $max = preg_match_all("/$jis_match/", $str, $allchunks, PREG_SET_ORDER);  // \95\8e\9a\8eí\82²\82Æ\82Ì\94z\97ñ\82É\95ª\89ð\r
-       $st = '';\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               if (ord($allchunks[$i][1])) { //\89p\90\94\82É\83}\83b\83`\r
-                       $st .= $allchunks[$i][1];\r
-               } elseif (ord($allchunks[$i][2])) { //\8a¿\8e\9a\82É\83}\83b\83`\r
-                       $tmp = substr($allchunks[$i][0], 3, strlen($allchunks[$i][0]));\r
-                       $st .= preg_replace_callback("/.(.)/","_sub_jtosj", $tmp);\r
-               } elseif (ord($allchunks[$i][3])) { //\94¼\8ap\83J\83i\82É\83}\83b\83`\r
-                       $st .= preg_replace("/./e","chr(ord['$1'] | 0x80);",$allchunks[$i][3]);\r
-               }\r
-       }\r
-       return $st;\r
-}\r
-\r
-\r
-function _ucs2utf8($uni)\r
-{\r
-       if ($uni <= 0x7f)\r
-               return chr($uni);\r
-       elseif ($uni <= 0x7ff) {\r
-               $y = ($uni >> 6) & 0x1f;\r
-               $x = $uni & 0x3f;\r
-               return chr(0xc0 | $y).chr(0x80 | $x);\r
-       } else {\r
-               $z = ($uni >> 12) & 0x0f;\r
-               $y = ($uni >> 6) & 0x3f;\r
-               $x = $uni & 0x3f;\r
-               return chr(0xe0 | $z).chr(0x80 | $y).chr(0x80 | $x);\r
-       }\r
-}\r
-\r
-function _sjistoutf8(&$str)\r
-{\r
-\r
-       global $sjis_match, $sjistoucs2;\r
-       $st = '';\r
-       $max = preg_match_all("/$sjis_match/", $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               $num = ord($allchars[0][$i]);  // \8ae\95\8e\9a\82Ì1\83o\83C\83g\96Ú\82ð\90\94\92l\82Æ\82µ\82Ä\8eæ\82è\8fo\82·\r
-               if ($num2 = ord($allchars[1][$i])) { // 2\83o\83C\83g\96Ú\82ª\82 \82é\8fê\8d\87\r
-                       $ucs2 = $sjistoucs2[($num << 8) | $num2];\r
-                       $st .= _ucs2utf8($ucs2);\r
-               } elseif ($num > 0x80) {//\94¼\8ap\83J\83i\r
-                       $st .= _ucs2utf8(0xfec0 + $num);\r
-               } else {//\94¼\8ap\89p\90\94\r
-                       $st .= chr($num);\r
-               }\r
-       }\r
-       return $st;\r
-}\r
-\r
-function _utf8ucs2($st)\r
-{\r
-       $num = ord($st);\r
-       if (!($num & 0x80)) //1byte\r
-               return $num;\r
-       elseif (($num & 0xe0) == 0xc0) {//2bytes\r
-               $num2 = ord(substr($st, 1,1));\r
-               return (($num & 0x1f) << 6) | ($num2 & 0x3f);\r
-       } else  { //3bytes\r
-               $num2 = ord(substr($st, 1,1));\r
-               $num3 = ord(substr($st, 2,1));\r
-               return (($num & 0x0f) << 12) | (($num2 & 0x3f) << 6) | ($num3 & 0x3f);\r
-       }\r
-}\r
-\r
-function _utf8tosjis(&$str)\r
-{\r
-       global $utf8_match, $ucs2tosjis;\r
-       $st = '';\r
-       $max = preg_match_all("/$utf8_match/", $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               $num = _utf8ucs2($allchars[0][$i]); //ucs2\82Ì\92l\82ð\8eæ\82è\8fo\82·\r
-               if ($num < 0x80)\r
-                       $st .= chr($num);\r
-               elseif ((0xff61 <= $num) && ($num <= 0xff9f))\r
-                       $st .= chr($num - 0xfec0);\r
-               else {\r
-                       $sjis = $ucs2tosjis[$num];\r
-                       $st .= chr($sjis >> 8) . chr($sjis & 0xff);\r
-               }\r
-       }\r
-       return $st;\r
-}\r
-\r
-function _euctoutf8(&$str)\r
-{\r
-       global $euc_match, $sjistoucs2, $_euctosjis_byte1, $_euctosjis_byte2;\r
-       $st = '';\r
-       $max = preg_match_all("/$euc_match/", $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               $num = ord($allchars[0][$i]);  // \8ae\95\8e\9a\82Ì1\83o\83C\83g\96Ú\82ð\90\94\92l\82Æ\82µ\82Ä\8eæ\82è\8fo\82·\r
-               if ($num2 = ord($allchars[1][$i])) { // 2\83o\83C\83g\96Ú\82ª\82 \82é\8fê\8d\87\r
-                       if ($num & 1)\r
-                               $sjis = ($_euctosjis_byte1[$num] << 8) | $_euctosjis_byte2[0][$num2];\r
-                       else\r
-                               $sjis = ($_euctosjis_byte1[$num] << 8) | $_euctosjis_byte2[1][$num2];\r
-                       $st .= _ucs2utf8($sjistoucs2[$sjis]);\r
-               } elseif ($num3 = ord($allchars[2][$i])) {\r
-                       $st .= _ucs2utf8(0xfec0 + $num3);\r
-               } else {//\94¼\8ap\89p\90\94\r
-                       $st .= chr($num);\r
-               }\r
-       }\r
-       return $st;\r
-}\r
-\r
-function _utf8toeuc(&$str)\r
-{\r
-       global $utf8_match, $ucs2tosjis, $_sjistoeuc_byte1, $_sjistoeuc_byte2, $_sjistoeuc_byte1_shift;\r
-       $st = '';\r
-       $max = preg_match_all("/$utf8_match/", $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               $num = _utf8ucs2($allchars[0][$i]); //ucs2\82Ì\92l\82ð\8eæ\82è\8fo\82·\r
-               if ($num < 0x80)\r
-                       $st .= chr($num);\r
-               elseif ((0xff61 <= $num) && ($num <= 0xff9f)) //\94¼\8ap\83J\83i\r
-                       $st .= chr(0x8e) . chr($num - 0xfec0);\r
-               else {\r
-                       $sjis = $ucs2tosjis[$num];\r
-                       $upper = $sjis >> 8;\r
-                       $lower = $sjis & 0xff;\r
-                       $shift = $_sjistoeuc_byte1_shift[$lower];\r
-                       $st .= chr($_sjistoeuc_byte1[$upper] + $shift)\r
-                                  .chr($_sjistoeuc_byte2[$shift][$lower]);\r
-               }\r
-       }\r
-       return $st;\r
-}\r
-\r
-function _utf8toutf16(&$str)\r
-{\r
-       global $utf8_match;\r
-       $st = '';\r
-       $max = preg_match_all("/$utf8_match/", $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               $num = _utf8ucs2($allchars[0][$i]); //ucs2\82Ì\92l\82ð\8eæ\82è\8fo\82·\r
-               $st .= chr(($num >> 8) & 0xff).chr($num & 0xff);\r
-       }\r
-       return $st;\r
-}\r
-\r
-function _utf16toutf8(&$str)\r
-{\r
-       global $utf8_match;\r
-       $st = '';\r
-       $ar = unpack("n*", $str);\r
-       foreach($ar as $char) {\r
-               $st .= _ucs2utf8($char);\r
-       }\r
-       return $st;\r
-}\r
-\r
-       \r
-function sub_zenhan_EUC(&$str, $match) {\r
-       global $alphanumeric_convert;\r
-\r
-       $match = $match . "|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e[\xa0-\xdf]";\r
-       $max = preg_match_all("/$match/", $str, $chars);\r
-       $str = '';\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               if ($num = ord($chars[1][$i])) //\91S\8ap\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87\r
-                       $str .= chr(array_search($chars[1][$i], $alphanumeric_convert));\r
-               //      $str .= chr($num & 0x7F);\r
-               else\r
-                       $str .= $chars[0][$i];\r
-       }\r
-}\r
-\r
-function sub_hanzen_EUC(&$str, $match) {\r
-       global $alphanumeric_convert;\r
-\r
-       $match = $match . "|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e[\xa0-\xdf]";\r
-       $max = preg_match_all("/$match/", $str, $chars);\r
-       $str = '';\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               if ($num = ord($chars[1][$i])) //\94¼\8ap\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87\r
-                       $str .= $alphanumeric_convert[$num];\r
-               else\r
-                       $str .= $chars[0][$i];\r
-       }\r
-}\r
-\r
-function alpha_zenhan_EUC(&$str) {\r
-       sub_zenhan_EUC($str, "(\xA3[\xC1-\xFA])");\r
-}\r
-\r
-function alpha_hanzen_EUC(&$str) {\r
-       sub_hanzen_EUC($str, "([\x41-\x5A,\x61-\x7A])");\r
-}\r
-\r
-\r
-function num_zenhan_EUC(&$str) {\r
-       sub_zenhan_EUC($str, "(\xA3[\xB0-\xB9])");\r
-}\r
-\r
-function num_hanzen_EUC(&$str) {\r
-       sub_hanzen_EUC($str, "([\x30-\x39])");\r
-}\r
-\r
-function alphanum_zenhan_EUC(&$str) {\r
-       sub_zenhan_EUC($str, "(\xa1[\xa4,\xa5,\xa7-\xaa,\xb0,\xb2,\xbf,\xc3,\xca,\xcb,\xce-\xd1,\xdc,\xdd,\xe1,\xe3,\xe4,\xf0,\xf3-\xf7]|\xA3[\xC1-\xFA]|\xA3[\xB0-\xB9])");\r
-}\r
-\r
-function alphanum_hanzen_EUC(&$str) {\r
-       sub_hanzen_EUC($str, "([\\\x21,\\\x23-\\\x26,\\\x28-\\\x5B,\\\x5D-\\\x7D])");\r
-}\r
-\r
-\r
-function space_zenhan_EUC(&$str) {\r
-       sub_zenhan_EUC($str, "(\xA1\xA1)");\r
-}\r
-\r
-function space_hanzen_EUC(&$str) {\r
-       sub_hanzen_EUC($str, "(\x20)");\r
-}\r
-\r
-function katakana_zenhan_EUC(&$str) {\r
-global $kana_zenhan_convert, $special_zenhan_convert;\r
-\r
-       $match = "\xa5([\xa1-\xf4])|\xa1([\xa2,\xa3,\xa6,\xab,\xac,\xbc,\xd6,\xd7])|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e[\xa0-\xdf]";\r
-       $max = preg_match_all("/$match/", $str, $chars);\r
-       $str = '';\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               if ($num = ord($chars[1][$i])) //\83J\83i\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87\r
-                       $str .= chr(0x8e) . $kana_zenhan_convert[$num];\r
-               elseif ($num = ord($chars[2][$i])) //\94¼\8ap\95Ï\8a·\89Â\94\\82È\93Á\8eê\95\8e\9a\82É\83}\83b\83`\82µ\82½\8fê\8d\87\r
-                       $str .= chr(0x8e) . $special_zenhan_convert[$num];\r
-               else\r
-                       $str .= $chars[0][$i];\r
-       }\r
-}\r
-\r
-function hiragana_zenhan_EUC(&$str) {\r
-global $kana_zenhan_convert, $special_zenhan_convert;\r
-\r
-       $match = "\xa4([\xa1-\xf4])|\xa1([\xa2,\xa3,\xa6,\xab,\xac,\xbc,\xd6,\xd7])|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e[\xa0-\xdf]";\r
-       $max = preg_match_all("/$match/", $str, $chars);\r
-       $str = '';\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               if ($num = ord($chars[1][$i])) //\82©\82È\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87\r
-                       $str .= chr(0x8e) . $kana_zenhan_convert[$num];\r
-               elseif ($num = ord($chars[2][$i])) //\94¼\8ap\95Ï\8a·\89Â\94\\82È\93Á\8eê\95\8e\9a\82É\83}\83b\83`\82µ\82½\8fê\8d\87\r
-                       $str .= chr(0x8e) . $special_zenhan_convert[$num];\r
-               else\r
-                       $str .= $chars[0][$i];\r
-       }\r
-}\r
-\r
-function katakana_hanzen1_EUC(&$str) { //\91÷\93_\82Ì\93\9d\8d\87\82ð\82·\82é\95û\r
-global $kana_zenhan_convert, $special_zenhan_convert;\r
-\r
-       $match = "\x8e((?:[\xb3,\xb6-\xc4,\xca-\xce]\x8e\xde)|(?:[\xca-\xce]\x8e\xdf))|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e([\xa1-\xdf])";\r
-               //\91÷\93_\82â\94¼\91÷\93_\82Í\88ê\8f\8f\82É\83}\83b\83`\83\93\83O\r
-       $max = preg_match_all("/$match/", $str, $chars);\r
-       $str = '';\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               if ($chars[1][$i]) //\91÷\89¹\81C\94¼\91÷\89¹\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87\r
-                       $str .= chr(0xa5).chr(array_search($chars[1][$i], $kana_zenhan_convert));\r
-               elseif ($chars[2][$i]) //\82»\82Ì\91¼\82Ì\94¼\8ap\83J\83i\82É\83}\83b\83`\r
-                       if ($num = array_search($chars[2][$i], $kana_zenhan_convert))\r
-                               $str .= chr(0xa5).chr($num);\r
-                       else\r
-                               $str .= chr(0xa1).chr(array_search($chars[2][$i], $special_zenhan_convert));\r
-               else\r
-                       $str .= $chars[0][$i];\r
-       }\r
-}\r
-\r
-function hiragana_hanzen1_EUC(&$str) { //\91÷\93_\82Ì\93\9d\8d\87\82ð\82·\82é\95û\r
-global $kana_zenhan_convert, $special_zenhan_convert;\r
-\r
-       $match = "\x8e((?:[\xb6-\xc4,\xca-\xce]\x8e\xde)|(?:[\xca-\xce]\x8e\xdf))|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e([\xa1-\xdf])";\r
-               //\91÷\93_\82â\94¼\91÷\93_\82Í\88ê\8f\8f\82É\83}\83b\83`\83\93\83O\r
-       $max = preg_match_all("/$match/", $str, $chars);\r
-       $str = '';\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               if ($chars[1][$i]) //\91÷\89¹\81C\94¼\91÷\89¹\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87\r
-                       $str .= chr(0xa4).chr(array_search($chars[1][$i], $kana_zenhan_convert));\r
-               elseif ($chars[2][$i]) //\82»\82Ì\91¼\82Ì\94¼\8ap\83J\83i\82É\83}\83b\83`\r
-                       if ($num = array_search($chars[2][$i], $kana_zenhan_convert))\r
-                               $str .= chr(0xa4).chr($num);\r
-                       else\r
-                               $str .= chr(0xa1).chr(array_search($chars[2][$i], $special_zenhan_convert));\r
-               else\r
-                       $str .= $chars[0][$i];\r
-       }\r
-}\r
-\r
-function katakana_hanzen2_EUC(&$str) { //\91÷\93_\82Ì\93\9d\8d\87\82ð\82µ\82È\82¢\95û\r
-global $kana_zenhan_convert, $special_zenhan_convert;\r
-\r
-       $match = "[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e([\xa1-\xdf])";\r
-       $max = preg_match_all("/$match/", $str, $chars);\r
-       $str = '';\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               if ($chars[1][$i]) //\94¼\8ap\83J\83i\82É\83}\83b\83`\r
-                       if ($num = array_search($chars[1][$i], $kana_zenhan_convert))\r
-                               $str .= chr(0xa5).chr($num);\r
-                       else\r
-                               $str .= chr(0xa1).chr(array_search($chars[1][$i], $special_zenhan_convert));\r
-               else\r
-                       $str .= $chars[0][$i];\r
-       }\r
-}\r
-\r
-function hiragana_hanzen2_EUC(&$str) { //\91÷\93_\82Ì\93\9d\8d\87\82ð\82µ\82È\82¢\95û\r
-global $kana_zenhan_convert, $special_zenhan_convert;\r
-\r
-       $match = "[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e([\xa1-\xdf])";\r
-       $max = preg_match_all("/$match/", $str, $chars);\r
-       $str = '';\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               if ($chars[1][$i]) //\94¼\8ap\83J\83i\82É\83}\83b\83`\r
-                       if ($num = array_search($chars[1][$i], $kana_zenhan_convert))\r
-                               $str .= chr(0xa4).chr($num);\r
-                       else\r
-                               $str .= chr(0xa1).chr(array_search($chars[1][$i], $special_zenhan_convert));\r
-               else\r
-                       $str .= $chars[0][$i];\r
-       }\r
-}\r
-\r
-function katakana_hiragana_EUC(&$str) {\r
-\r
-       $match = "\xa5([\xa1-\xf3])|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e[\xa0-\xdf]";\r
-       $max = preg_match_all("/$match/", $str, $chars);\r
-       $str = '';\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               if ($num = ord($chars[1][$i])) //\83J\83i\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87\r
-                       $str .= chr(0xa4) . chr($num);\r
-               else\r
-                       $str .= $chars[0][$i];\r
-       }\r
-}\r
-\r
-function hiragana_katakana_EUC(&$str) {\r
-\r
-       $match = "\xa4([\xa1-\xf4])|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e[\xa0-\xdf]";\r
-       $max = preg_match_all("/$match/", $str, $chars);\r
-       $str = '';\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               if ($num = ord($chars[1][$i])) //\83J\83i\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87\r
-                       $str .= chr(0xa5) . chr($num);\r
-               else\r
-                       $str .= $chars[0][$i];\r
-       }\r
-}\r
-\r
-function mb_convert_kana( $str, $option='KV', $encoding = '')\r
-{\r
-       $encoding = mb_detect_encoding($str, $encoding);\r
-       $str = mb_convert_encoding($str, 'EUC-JP', $encoding);\r
-\r
-       if (strstr($option, "r")) alpha_zenhan_EUC($str);\r
-       if (strstr($option, "R")) alpha_hanzen_EUC($str);\r
-       if (strstr($option, "n")) num_zenhan_EUC($str);\r
-       if (strstr($option, "N")) num_hanzen_EUC($str);\r
-       if (strstr($option, "a")) alphanum_zenhan_EUC($str);\r
-       if (strstr($option, "A")) alphanum_hanzen_EUC($str);\r
-       if (strstr($option, "s")) space_zenhan_EUC($str);\r
-       if (strstr($option, "S")) space_hanzen_EUC($str);\r
-       if (strstr($option, "k")) katakana_zenhan_EUC($str);\r
-       if (strstr($option, "K")) {\r
-               if (strstr($option, "V"))\r
-                       katakana_hanzen1_EUC($str);\r
-               else\r
-                       katakana_hanzen2_EUC($str);\r
-       }\r
-       if (strstr($option, "H")) {\r
-               if (strstr($option, "V"))\r
-                       hiragana_hanzen1_EUC($str);\r
-               else\r
-                       hiragana_hanzen2_EUC($str);\r
-       }\r
-       if (strstr($option, "h")) hiragana_zenhan_EUC($str);\r
-       if (strstr($option, "c")) katakana_hiragana_EUC($str);\r
-       if (strstr($option, "C")) hiragana_katakana_EUC($str);\r
-\r
-       $str = mb_convert_encoding($str, $encoding, 'EUC-JP');\r
-       return $str;\r
-}\r
-\r
-function mb_send_mail($to, $subject, $message , $additional_headers, $additional_parameter)\r
-{\r
-       if (!_is_JIS($subject)) \r
-               $subject =mb_encode_mimeheader($subject);\r
-       else {\r
-               $tmp = mb_internal_encoding();\r
-               mb_internal_encoding('iso-2022-jp');\r
-               $subject =mb_encode_mimeheader($subject);\r
-               mb_internal_encoding($tmp);\r
-       }\r
-       if (!_is_JIS($message))\r
-               $message = mb_convert_encoding($message, "iso-2022-jp", mb_internal_encoding());\r
-       $additional_headers .= \r
-       "\r\nMime-Version: 1.0\r\nContent-Type: text/plain; charset=ISO-2022-JP\r\nContent-Transfer-Encoding: 7bit";\r
-       mail($to, $subject, $message, $additional_headers, $additional_parameter); \r
-       \r
-}\r
-\r
-\r
-function mb_detect_order($encoding_list = '')\r
-{\r
-       global $_detect_order, $_mb_encoding;\r
-       \r
-       if ($encoding_list) {\r
-               if (is_string($encoding_list)) {\r
-                       $encoding_list = strtoupper($encoding_list);\r
-                       $encoding_list = split(', *', $encoding_list);\r
-               }\r
-               foreach($encoding_list as $encode)\r
-                       if (!array_key_exists($encode, $_mb_encoding)) return FALSE;\r
-               $_detect_order = $encoding_list;\r
-               return TRUE;\r
-       }\r
-       return $_detect_order;\r
-}\r
-\r
-function _is_Ascii(&$str)\r
-{\r
-       return (!ereg("[\x80-\xFF]", $str) && !ereg("\x1B", $str));\r
-}\r
-\r
-function _is_JIS(&$str)\r
-{\r
-       return (!ereg("[\x80-\xFF]", $str) && ereg("\x1B", $str));\r
-}\r
-\r
-function _is_SJIS(&$str)\r
-{\r
-       $sjis_match = \r
-       "[\x01-\x7F]|[\xA0-\xDF]|[\x81-\xFC][\x40-\xFC]";\r
-       return (preg_match("/^($sjis_match)+$/", $str) == 1);\r
-}\r
-\r
-function _is_EUCJP(&$str)\r
-{\r
-       $euc_match = \r
-       "[\x01-\x7F]|\x8E[\xA0-\xDF]|\x8F[xA1-\xFE][\xA1-\xFE]|[\xA1-\xFE][\xA1-\xFE]";\r
-       return (preg_match("/^($euc_match)+$/", $str) == 1);\r
-}\r
-\r
-function _is_UTF8(&$str)\r
-{\r
-       $utf8_match = \r
-       "[\x01-\x7F]|[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF][\x80-\xBF]";\r
-       return (preg_match("/^($utf8_match)+$/", $str) == 1);\r
-}\r
-\r
-function mb_detect_encoding( $str , $encoding_list = '')\r
-{\r
-       global $_mb_encoding;\r
-\r
-       if ($encoding_list == '') \r
-                       $encoding_list = mb_detect_order();\r
-       if (!is_array($encoding_list)) {\r
-               $encoding_list = strtoupper($encoding_list);\r
-               if ($encoding_list == 'AUTO') {\r
-                       $encoding_list = mb_detect_order();\r
-               } else {\r
-                       $encoding_list = split(', *', $encoding_list);\r
-               }\r
-       }\r
-       foreach($encoding_list as $encode) {\r
-               switch ($_mb_encoding[$encode]) {\r
-                       case 0 : //ascii\r
-                               if (_is_ASCII($str)) return 'ASCII';\r
-                               break;\r
-                       case 1 : //euc-jp\r
-                               if (_is_EUCJP($str)) return 'EUC-JP';\r
-                               break;\r
-                       case 2 : //shift-jis\r
-                               if (_is_SJIS($str)) return 'SJIS';\r
-                               break;\r
-                       case 3 : //jis\r
-                               if (_is_JIS($str)) return 'JIS';\r
-                               break;\r
-                       case 4 : //utf-8\r
-                               if (_is_UTF8($str)) return 'UTF-8';\r
-                               break;\r
-               }\r
-       }\r
-       return $encode;\r
-}\r
-\r
-function mb_strlen ( $str , $encoding='')\r
-{\r
-       global $_mb_encoding, $euc_match, $utf8_match, $sjis_match;\r
-\r
-       $encoding = _get_encoding($str, $encoding);\r
-\r
-       switch ($_mb_encoding[$encoding]) {\r
-               case 1 : //euc-jp\r
-                       return preg_match_all("/$euc_match/", $str, $arr);\r
-               case 0 : //ascii\r
-               case 4 : //utf-8\r
-                       return preg_match_all("/$utf8_match/", $str, $arr);\r
-               case 2 : //shift-jis\r
-                       return preg_match_all("/$sjis_match/", $str, $arr);\r
-               case 3 : //jis\r
-                       $str = mb_convert_encoding($str, 'SJIS', 'JIS');\r
-                       return preg_match_all("/$sjis_match/", $str, $arr);\r
-       }\r
-}\r
-\r
-function mb_strwidth( $str, $encoding='')\r
-{\r
-       global $_mb_encoding, $euc_match, $utf8_match, $sjis_match;\r
-\r
-       $encoding = _get_encoding($str, $encoding);\r
-       switch ($_mb_encoding[$encoding]) {\r
-               case 1 : //euc-jp\r
-                       $max = $len = preg_match_all("/$euc_match/", $str, $arr);\r
-                       $len;\r
-                       for ($i=0; $i < $max; ++$i)\r
-                               if ($arr[1][$i]) ++$len;\r
-                       return $len;\r
-               case 0 : //ascii\r
-               case 4 : //utf-8\r
-                       $max = $len = preg_match_all("/$utf8_match/", $str, $arr);\r
-                       for ($i=0; $i < $max; ++$i) {\r
-                               $ucs2 = _utf8ucs2($arr[0][$i]);\r
-                               if (((0x2000 <= $ucs2) && ($ucs2 <= 0xff60)) || (0xffa0 <= $ucs2))\r
-                                       ++$len;\r
-                       }\r
-                       return $len;\r
-               case 2 : //shift-jis\r
-                       $max = $len = preg_match_all("/$sjis_match/", $str, $arr);\r
-                       for ($i=0; $i < $max; ++$i)\r
-                               if ($arr[1][$i]) ++$len;\r
-                       return $len;\r
-               case 3 : //jis\r
-                       $str = mb_convert_encoding($str, 'SJIS', 'JIS');\r
-                       $max = $len = preg_match_all("/$sjis_match/", $str, $arr);\r
-                       for ($i=0; $i < $max; ++$i)\r
-                               if ($arr[1][$i]) ++$len;\r
-                       return $len;\r
-       }\r
-}\r
-\r
-function mb_strimwidth( $str, $start, $width, $trimmarker , $encoding = '')\r
-{\r
-       global $_mb_encoding, $euc_match, $utf8_match, $sjis_match;\r
-\r
-       $encoding = _get_encoding($str, $encoding);\r
-       $str = mb_substr($str, $start, 'notnumber', $encoding);\r
-       if (($len = mb_strwidth($str,$encoding)) <= $width)\r
-               return $str;\r
-       $trimwidth = mb_strwidth($trimmarker,$encoding);\r
-       $width -= $trimwidth;\r
-       if ($width <= 0) return $trimmarker;\r
-       \r
-       switch ($_mb_encoding[$encoding]) {\r
-               case 1 : //euc-jp\r
-                       preg_match_all("/$euc_match/", $str, $arr);\r
-                       $i = 0;\r
-                       while(TRUE) {\r
-                               if ($arr[1][$i])\r
-                                       $width -= 2;\r
-                               else\r
-                                       --$width;\r
-                               if ($width<0) break;\r
-                               ++$i;\r
-                       }\r
-                       $arr[0] = array_slice($arr[0], 0, $i);\r
-                       return implode("", $arr[0]).$trimmarker;\r
-               case 0 : //ascii\r
-               case 4 : //utf-8\r
-                       preg_match_all("/$utf8_match/", $str, $arr);\r
-                       $i = 0;\r
-                       while(TRUE) {\r
-                               $ucs2 = _utf8ucs2($arr[0][$i]);\r
-                               if (((0x2000 <= $ucs2) && ($ucs2 <= 0xff60)) || (0xffa0 <= $ucs2))\r
-                                       $width -= 2;\r
-                               else\r
-                                       --$width;\r
-                               if ($width<0) break;\r
-                               ++$i;\r
-                       }\r
-                       $arr[0] = array_slice($arr[0], 0, $i);\r
-                       return implode("", $arr[0]).$trimmarker;\r
-               case 2 : //shift-jis\r
-                       preg_match_all("/$sjis_match/", $str, $arr);\r
-                       $i = 0;\r
-                       while(TRUE) {\r
-                               if ($arr[1][$i])\r
-                                       $width -= 2;\r
-                               else\r
-                                       --$width;\r
-                               if ($width<0) break;\r
-                               ++$i;\r
-                       }\r
-                       $arr[0] = array_slice($arr[0], 0, $i);\r
-                       return implode("", $arr[0]).$trimmarker;\r
-               case 3 : //jis\r
-                       $str = mb_convert_encoding($str, 'SJIS', 'JIS');\r
-                       $trimmarker = mb_convert_encoding($trimmarker, 'SJIS', 'JIS');\r
-                       preg_match_all("/$sjis_match/", $str, $arr);\r
-                       $i = 0;\r
-                       while(TRUE) {\r
-                               if ($arr[1][$i])\r
-                                       $width -= 2;\r
-                               else\r
-                                       --$width;\r
-                               if ($width<0) break;\r
-                               ++$i;\r
-                       }\r
-                       $arr[0] = array_slice($arr[0], 0, $i);\r
-                       return mb_convert_encoding(implode("", $arr[0]).$trimmarker,'JIS','SJIS');\r
-       }\r
-}\r
-\r
-\r
-function mb_substr ( $str, $start , $length='notnumber' , $encoding='')\r
-{\r
-       global $_mb_encoding, $euc_match, $utf8_match, $sjis_match;\r
-\r
-       $encoding = _get_encoding($str, $encoding);\r
-\r
-       switch ($_mb_encoding[$encoding]) {\r
-               case 1 : //euc-jp\r
-                       preg_match_all("/$euc_match/", $str, $arr);\r
-                       break;\r
-               case 0 : //ascii\r
-               case 4 : //utf-8\r
-                       preg_match_all("/$utf8_match/", $str, $arr);\r
-                       break;\r
-               case 2 : //shift-jis\r
-                       preg_match_all("/$sjis_match/", $str, $arr);\r
-                       break;\r
-               case 3 : //jis\r
-                       $str = mb_convert_encoding($str, 'SJIS', 'JIS');\r
-                       preg_match_all("/$sjis_match/", $str, $arr);\r
-       }\r
-       if (is_int($length))\r
-               $arr[0] = array_slice($arr[0], $start, $length);\r
-       else\r
-               $arr[0] = array_slice($arr[0], $start);\r
-       $str = implode("", $arr[0]);\r
-       if ($_mb_encoding[$encoding] == 3)\r
-               $str = mb_convert_encoding($str, 'JIS', 'SJIS');\r
-       return $str;\r
-}\r
-\r
-function _sub_strcut($arr, $start, $length) {\r
-       $max = count($arr[0]);\r
-       $s = ''; $counter = 0;\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               $counter += strlen($arr[0][$i]);\r
-               if ($counter > $start) {\r
-                       if ($length == 0) {\r
-                               for ($j = $i; $j < $max; ++$j)\r
-                                       $s .= $arr[0][$j];\r
-                               return $s;\r
-                       }\r
-                       for ($j = $i, $len = 0; $j < $max; ++$j) {\r
-                               $len += strlen($arr[0][$j]);\r
-                               if ($len <= $length)\r
-                                       $s .= $arr[0][$j];\r
-                       }\r
-                       return $s;\r
-               }\r
-       }\r
-       return $s;\r
-}\r
-\r
-\r
-function mb_strcut ( $str, $start , $length=0 , $encoding = '')\r
-{\r
-       global $_mb_encoding, $euc_match, $utf8_match, $sjis_match;\r
-       \r
-       \r
-       $encoding = _get_encoding($str, $encoding);\r
-\r
-       switch ($_mb_encoding[$encoding]) {\r
-               case 1 : //euc-jp\r
-                       preg_match_all("/$euc_match/", $str, $arr);\r
-                       return _sub_strcut($arr, $start, $length);\r
-               case 0 : //ascii\r
-                       return substr($str, $start, $length);\r
-               case 4 : //utf-8\r
-                       preg_match_all("/$utf8_match/", $str, $arr);\r
-                       return _sub_strcut($arr, $start, $length);\r
-               case 2 : //shift-jis\r
-                       preg_match_all("/$sjis_match/", $str, $arr);\r
-                       return _sub_strcut($arr, $start, $length);\r
-               case 3 : //jis\r
-                       $str = mb_convert_encoding($str, 'SJIS', 'JIS');\r
-                       preg_match_all("/$sjis_match/", $str, $arr);\r
-                       $sub = _sub_strcut($arr, $start, $length);\r
-                       return mb_convert_encoding($sub, 'JIS', 'SJIS');\r
-       }\r
-}\r
-\r
-function _sub_strrpos($ar_haystack, $ar_needle)\r
-{\r
-       $max_h = count($ar_haystack) - 1;\r
-       $max_n = count($ar_needle) - 1;\r
-       for ($i = $max_h; $i >= $max_n; --$i) {\r
-               if ($ar_haystack[$i] == $ar_needle[$max_n]) {\r
-                       $match = TRUE;\r
-                       for ($j = 1; $j <= $max_n; ++$j)\r
-                               if ($ar_haystack[$i-$j] != $ar_needle[$max_n-$j]) {\r
-                                       $match = FALSE;\r
-                                       break;\r
-                               }\r
-                       if ($match) return $i - $max_n;\r
-               }\r
-       }\r
-       return FALSE;\r
-}\r
-\r
-function mb_strrpos ( $haystack, $needle , $encoding = '')\r
-{\r
-       \r
-       global $_mb_encoding, $euc_match, $utf8_match, $sjis_match;\r
-       \r
-       $encoding = _get_encoding($haystack, $encoding);\r
-\r
-       switch ($_mb_encoding[$encoding]) {\r
-               case 1 : //euc-jp\r
-                       preg_match_all("/$euc_match/", $haystack, $ar_h);\r
-                       preg_match_all("/$euc_match/", $needle, $ar_n);\r
-                       return _sub_strrpos($ar_h[0], $ar_n[0]);\r
-               case 0 : //ascii\r
-               case 4 : //utf-8\r
-                       preg_match_all("/$utf8_match/", $haystack, $ar_h);\r
-                       preg_match_all("/$utf8_match/", $needle, $ar_n);\r
-                       return _sub_strrpos($ar_h[0], $ar_n[0]);\r
-               case 2 : //shift-jis\r
-                       preg_match_all("/$sjis_match/", $haystack, $ar_h);\r
-                       preg_match_all("/$sjis_match/", $needle, $ar_n);\r
-                       return _sub_strrpos($ar_h[0], $ar_n[0]);\r
-               case 3 : //jis\r
-                       $haystack = mb_convert_encoding($haystack, 'SJIS', 'JIS');\r
-                       $needle = mb_convert_encoding($needle, 'SJIS', 'JIS');\r
-                       preg_match_all("/$sjis_match/", $haystack, $ar_h);\r
-                       preg_match_all("/$sjis_match/", $needle, $ar_n);\r
-                       return _sub_strrpos($ar_h[0], $ar_n[0]);\r
-       }\r
-}\r
-\r
-function _sub_strpos($ar_haystack, $ar_needle, $offset)\r
-{\r
-       $max_n = count($ar_needle) - 1;\r
-       $max_h = count($ar_haystack) - count($ar_needle);\r
-       for ($i = $offset; $i <= $max_h; ++$i) {\r
-               for ($j = 0; $j <= $max_n; ++$j) {\r
-                       $match = TRUE;\r
-                       if ($ar_haystack[$i+$j] != $ar_needle[$j]) {\r
-                               $match = FALSE;\r
-                               break;\r
-                       }\r
-               }\r
-               if ($match) return $i;\r
-       }\r
-       return FALSE;\r
-}\r
-\r
-function mb_strpos ( $haystack, $needle , $offset = 0, $encoding = '')\r
-{\r
-       \r
-       global $_mb_encoding, $euc_match, $utf8_match, $sjis_match;\r
-       \r
-       $encoding = _get_encoding($haystack, $encoding);\r
-\r
-       switch ($_mb_encoding[$encoding]) {\r
-               case 1 : //euc-jp\r
-                       preg_match_all("/$euc_match/", $haystack, $ar_h);\r
-                       preg_match_all("/$euc_match/", $needle, $ar_n);\r
-                       return _sub_strpos($ar_h[0], $ar_n[0], $offset);\r
-               case 0 : //ascii\r
-               case 4 : //utf-8\r
-                       preg_match_all("/$utf8_match/", $haystack, $ar_h);\r
-                       preg_match_all("/$utf8_match/", $needle, $ar_n);\r
-                       return _sub_strpos($ar_h[0], $ar_n[0], $offset);\r
-               case 2 : //shift-jis\r
-                       preg_match_all("/$sjis_match/", $haystack, $ar_h);\r
-                       preg_match_all("/$sjis_match/", $needle, $ar_n);\r
-                       return _sub_strpos($ar_h[0], $ar_n[0], $offset);\r
-               case 3 : //jis\r
-                       $haystack = mb_convert_encoding($haystack, 'SJIS', 'JIS');\r
-                       $needle = mb_convert_encoding($needle, 'SJIS', 'JIS');\r
-                       preg_match_all("/$sjis_match/", $haystack, $ar_h);\r
-                       preg_match_all("/$sjis_match/", $needle, $ar_n);\r
-                       return _sub_strpos($ar_h[0], $ar_n[0], $offset);\r
-       }\r
-}\r
-\r
-function _sub_substr_count($ar_haystack, $ar_needle)\r
-{\r
-       $matches = 0;\r
-       $max_n = count($ar_needle) - 1;\r
-       $max_h = count($ar_haystack) - count($ar_needle);\r
-       for ($i = 0; $i <= $max_h; ++$i) {\r
-               for ($j = 0; $j <= $max_n; ++$j) {\r
-                       $match = TRUE;\r
-                       if ($ar_haystack[$i+$j] != $ar_needle[$j]) {\r
-                               $match = FALSE;\r
-                               break;\r
-                       }\r
-               }\r
-               if ($match) ++$matches;\r
-       }\r
-       return $matches;\r
-}\r
-\r
-function mb_substr_count($haystack, $needle , $encoding = '')\r
-{\r
-       \r
-       global $_mb_encoding, $euc_match, $utf8_match, $sjis_match;\r
-       \r
-       $encoding = _get_encoding($haystack, $encoding);\r
-\r
-       switch ($_mb_encoding[$encoding]) {\r
-               case 1 : //euc-jp\r
-                       preg_match_all("/$euc_match/", $haystack, $ar_h);\r
-                       preg_match_all("/$euc_match/", $needle, $ar_n);\r
-                       return _sub_substr_count($ar_h[0], $ar_n[0]);\r
-               case 0 : //ascii\r
-               case 4 : //utf-8\r
-                       preg_match_all("/$utf8_match/", $haystack, $ar_h);\r
-                       preg_match_all("/$utf8_match/", $needle, $ar_n);\r
-                       return _sub_substr_count($ar_h[0], $ar_n[0]);\r
-               case 2 : //shift-jis\r
-                       preg_match_all("/$sjis_match/", $haystack, $ar_h);\r
-                       preg_match_all("/$sjis_match/", $needle, $ar_n);\r
-                       return _sub_substr_count($ar_h[0], $ar_n[0]);\r
-               case 3 : //jis\r
-                       $haystack = mb_convert_encoding($haystack, 'SJIS', 'JIS');\r
-                       $needle = mb_convert_encoding($needle, 'SJIS', 'JIS');\r
-                       preg_match_all("/$sjis_match/", $haystack, $ar_h);\r
-                       preg_match_all("/$sjis_match/", $needle, $ar_n);\r
-                       return _sub_substr_count($ar_h[0], $ar_n[0]);\r
-       }\r
-}\r
-\r
-\r
-/******************\r
-mb_convert_variables\r
-*******************/\r
-if (!$ini_file['convert_variables_arrayonly']) {\r
-       function mb_convert_variables($to_encoding, $from_encoding, $s1, $s2='',$s3='',$s4='',$s5='',$s6='',$s7='', $s8='',$s9='', $s10='')\r
-       {\r
-               if (is_array($s1)) {\r
-                       $st = '';\r
-                       foreach($s1 as $s) $st .= $s;\r
-                       if (!($encode = mb_detect_encoding($st, $from_encoding)))\r
-                               return FALSE;\r
-                       reset($s1);\r
-                       while (list ($key, $val) = each ($s1)) {\r
-                               $s1[$key] = mb_convert_encoding($val, $to_encoding, $encode);\r
-                       }\r
-                       return $encode;\r
-               }\r
-           $st = $s1.$s2.$s3.$s4.$s5.$s6.$s7.$s8.$s9.$s10;\r
-           if (!($encode = mb_detect_encoding($st, $from_encoding)))\r
-               return FALSE;\r
-           $s1 = mb_convert_encoding($s1, $to_encoding, $encode);\r
-           $s2 = mb_convert_encoding($s2, $to_encoding, $encode);\r
-           $s3 = mb_convert_encoding($s3, $to_encoding, $encode);\r
-           $s4 = mb_convert_encoding($s4, $to_encoding, $encode);\r
-           $s5 = mb_convert_encoding($s5, $to_encoding, $encode);\r
-           $s6 = mb_convert_encoding($s6, $to_encoding, $encode);\r
-           $s7 = mb_convert_encoding($s7, $to_encoding, $encode);\r
-           $s8 = mb_convert_encoding($s8, $to_encoding, $encode);\r
-           $s9 = mb_convert_encoding($s9, $to_encoding, $encode);\r
-           $s10 = mb_convert_encoding($s10, $to_encoding, $encode);\r
-           return $encode;\r
-       }\r
-} else {\r
-       function mb_convert_variables($to_encoding, $from_encoding, &$arr)\r
-       {\r
-               $st = '';\r
-               foreach($arr as $s) $st .= $s;\r
-               if (!($encode = mb_detect_encoding($st, $from_encoding)))\r
-                       return FALSE;\r
-               reset($arr);\r
-               while (list ($key, $val) = each ($arr)) {\r
-                       $arr[$key] = mb_convert_encoding($val, $to_encoding, $encode);\r
-               }\r
-               return $encode;\r
-       }\r
-}\r
-\r
-function mb_preferred_mime_name ($encoding)\r
-{\r
-       global $_mb_encoding;\r
-       \r
-       $encoding = strtoupper($encoding);\r
-       \r
-       switch ($_mb_encoding[$encoding]) {\r
-               case 0 : //ascii\r
-                       return 'US-ASCII';\r
-               case 1 : //euc-jp\r
-                       return 'EUC-JP';\r
-               case 2 : //shift-jis\r
-                       return 'Shift_JIS';\r
-               case 3 : //jis\r
-                       return 'ISO-2022-JP';\r
-               case 4 : //utf-8\r
-                       return 'UTF-8';\r
-       }\r
-}\r
-\r
-function mb_decode_mimeheader($str)\r
-{\r
-       $lines = preg_split("/(\r\n|\r|\n)( *)/", $str);\r
-       $s = '';\r
-       foreach ($lines as $line) {\r
-               if ($line != "") {\r
-                       $line = preg_replace("/<[\w\-+\.]+\@[\w\-+\.]+>/","", $line); //\83\81\81[\83\8b\81E\83A\83h\83\8c\83X\95\94\82ð\8fÁ\82·\r
-                       $matches = preg_split("/=\?([^?]+)\?(B|Q)\?([^?]+)\?=/", $line, -1, PREG_SPLIT_DELIM_CAPTURE);\r
-                       for ($i = 0; $i < count($matches)-1; $i+=4) {\r
-                               if (!preg_match("/^[ \t\r\n]*$/", $matches[$i]))\r
-                                       $s .= $matches[$i];\r
-                               if ($matches[$i+2] == 'B')\r
-                                       $s .= mb_convert_encoding(base64_decode($matches[$i+3]), \r
-                                                                                       mb_internal_encoding(), $matches[$i+1]);\r
-                               else\r
-                                       $s .= mb_convert_encoding(quoted_printable_decode($matches[$i+3]), \r
-                                                                                       mb_internal_encoding(), $matches[$i+1]);\r
-                       }\r
-                       if (!preg_match("/^[ \t\r\n]*$/", $matches[$i]))\r
-                                       $s .= $matches[$i];\r
-               }\r
-       }\r
-       return $s;\r
-}\r
-\r
-function _sub_qponechar($str, &$len)\r
-{\r
-       $all = unpack("C*", $str);\r
-       $s = ''; $len = 0;\r
-       foreach($all as $char) {\r
-               if (((ord('A') <= $char) && ($char <= ord('Z'))) ||\r
-                       ((ord('a') <= $char) && ($char <= ord('z')))) {\r
-                       $s .= chr($char);\r
-                       ++$len;\r
-               } else {\r
-                       $s .= '='.sprintf("%2X",$char);\r
-                       $len += 3;\r
-               }\r
-       }\r
-       return $s;\r
-}\r
-\r
-function _sub_quoted_printable_encode($str, $encoding, $maxline, $linefeed)\r
-{\r
-       global $_mb_encoding, $euc_match, $utf8_match, $sjis_match, $jis_match;\r
-       switch ($_mb_encoding[$encoding]) {\r
-               case 0 : //ascii\r
-                       $allchars[0] = unpack("c*", $str);\r
-                       $max = count($allchars[0]);\r
-                       break;\r
-               case 1 : //euc-jp\r
-                       $max = preg_match_all("/$euc_match/", $str, $allchars);\r
-                       break;\r
-               case 2 : //shift-jis\r
-                       $max = preg_match_all("/$sjis_match/", $str, $allchars);\r
-                       break;\r
-               case 4 : //utf-8\r
-                       $max = preg_match_all("/$utf8_match/", $str, $allchars);\r
-                       break;\r
-               case 3 : //jis\r
-                       $max = preg_match_all("/$jis_match/", $str, $allchunks, PREG_SET_ORDER);  // \95\8e\9a\8eí\82²\82Æ\82Ì\94z\97ñ\82É\95ª\89ð\r
-                       $st = ''; // quoted printable\95Ï\8a·\8cã\82Ì\95\8e\9a\97ñ\r
-                       $len = $maxline;  // \82»\82Ì\8ds\82É\92Ç\89Á\89Â\94\\82È\83o\83C\83g\90\94\r
-                       $needterminate = FALSE; //\8dÅ\8cã\82É\83G\83X\83P\81[\83v\83V\81[\83P\83\93\83X\82ª\95K\97v\82©\82Ç\82¤\82©\r
-                       for ($i = 0; $i < $max; ++$i) {\r
-                               if (ord($allchunks[$i][1])) { //\89p\90\94\82É\83}\83b\83`\r
-                                       if ($needterminate) {\r
-                                               $st .= '=1B=28B';\r
-                                               $len -= 7;\r
-                                       }\r
-                                       $tmparr = unpack("C*", $allchunks[$i][1]);\r
-                                       foreach ($tmparr as $char) {\r
-                                               $tmp = _sub_qponechar(chr($char), $l);\r
-                                               if ($len < $l) {\r
-                                                       $st .= $linefeed;\r
-                                                       $len = $maxline;\r
-                                               }\r
-                                               $st .= $tmp;\r
-                                               $len -= $l;\r
-                                       } \r
-                                       $needterminate = FALSE;\r
-                               } elseif (ord($allchunks[$i][2])) { //\8a¿\8e\9a\82É\83}\83b\83`\r
-                                       $maxchars = preg_match_all("/../",substr($allchunks[$i][0], 3),$allchars);\r
-                                       $tmp = _sub_qponechar($allchars[0][0], $l);\r
-                                       if ($len < 14 + $l) {\r
-                                               if ($needterminate)\r
-                                                       $st .= '=1B=28B';\r
-                                               $st .= $linefeed;\r
-                                               $len = $maxline;\r
-                                       }\r
-                                       $st .= '=1B=24B';\r
-                                       $len -= 7;\r
-                                       for ($j = 0; $j < $maxchars; ++$j) {\r
-                                               $tmp = _sub_qponechar($allchars[0][$j], $l);\r
-                                               if ($len < $l + 7) {\r
-                                                       $st .= '=1B=28B'.$linefeed.'=1B=24B';\r
-                                                       $len = $maxline-7;\r
-                                               }\r
-                                               $st .= $tmp;\r
-                                               $len -= $l;\r
-                                       }\r
-                                       $needterminate = TRUE;\r
-                                       \r
-                               } elseif (ord($allchunks[$i][3])) { //\94¼\8ap\83J\83i\82É\83}\83b\83`\r
-                                       $max = preg_match_all("/./",$allchunks[$i][3],$allchars);\r
-                                       $tmp = _sub_qponechar($allchars[0][0], $l);\r
-                                       if ($len < 14 + $l) {\r
-                                               if ($needterminate)\r
-                                                       $st .= '=1B=28B';\r
-                                               $st .= $linefeed;\r
-                                               $len = $maxline;\r
-                                       }\r
-                                       $st .= '=1B=28I';\r
-                                       $len -= 7;\r
-                                       for ($j == 0; $j < $max; ++$j) {\r
-                                               $tmp = _sub_qponechar($allchars[0][$j], $l);\r
-                                               if ($len < $l + 7) {\r
-                                                       $st .= '=1B=28B'.$linefeed.'=1B=28I';\r
-                                                       $len = $maxline-7;\r
-                                               }\r
-                                               $st .= $tmp;\r
-                                               $len -= $l;\r
-                                       }\r
-                                       $needterminate = TRUE;\r
-                               }\r
-                       }\r
-                       if ($needterminate) $st .= '=1B=28B';\r
-                       $st .= $linefeed;\r
-                       return $st;\r
-       }\r
-       $st = ''; // quoted printable\95Ï\8a·\8cã\82Ì\95\8e\9a\97ñ\r
-       $len = $maxline;  // \82»\82Ì\8ds\82É\92Ç\89Á\89Â\94\\82È\83o\83C\83g\90\94\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               $tmp = _sub_qponechar($allchars[0][$i], $l);\r
-               if ($l > $len) {\r
-                       $st .= $linefeed;\r
-                       $len = $maxline;\r
-               }\r
-               $st .= $tmp;\r
-               $len -= $l;\r
-       }\r
-       $st .= $linefeed;\r
-       return $st;\r
-}\r
-\r
-function _sub_encode_base64($str, $encoding, $maxline , $linefeed)\r
-{\r
-       global $_mb_encoding, $euc_match, $utf8_match, $sjis_match, $jis_match;\r
-       switch ($_mb_encoding[$encoding]) {\r
-               case 0 : //ascii\r
-                       return chunk_split( base64_encode($str) , $maxline, $linefeed);\r
-               case 1 : //euc-jp\r
-                       $max = preg_match_all("/$euc_match/", $str, $allchars);\r
-                       break;\r
-               case 2 : //shift-jis\r
-                       $max = preg_match_all("/$sjis_match/", $str, $allchars);\r
-                       break;\r
-               case 4 : //utf-8\r
-                       $max = preg_match_all("/$utf8_match/", $str, $allchars);\r
-                       break;\r
-               case 3 : //jis\r
-                       $max = preg_match_all("/$jis_match/", $str, $allchunks, PREG_SET_ORDER);  // \95\8e\9a\8eí\82²\82Æ\82Ì\94z\97ñ\82É\95ª\89ð\r
-                       $st = ''; // BASE64\95Ï\8a·\8cã\82Ì\95\8e\9a\97ñ\r
-                       $maxbytes = floor($maxline * 3 / 4);  //1\8ds\82É\95Ï\8a·\89Â\94\\82È\83o\83C\83g\90\94\r
-                       $len = $maxbytes;  // \82»\82Ì\8ds\82É\92Ç\89Á\89Â\94\\82È\83o\83C\83g\90\94\r
-                       $line = '';  //1\8ds\95ª\82Ì\95Ï\8a·\91O\82Ì\95\8e\9a\97ñ\r
-                       $needterminate = FALSE; //\8dÅ\8cã\82É\83G\83X\83P\81[\83v\83V\81[\83P\83\93\83X\82ª\95K\97v\82©\82Ç\82¤\82©\r
-                       for ($i = 0; $i < $max; ++$i) {\r
-                               if (ord($allchunks[$i][1])) { //\89p\90\94\82É\83}\83b\83`\r
-                                       if ($needterminate) {\r
-                                               $line .= chr(0x1B).'(B';\r
-                                               $len -= 3;\r
-                                       }\r
-                                       $tmpstr = $allchunks[$i][1];  //\92Ç\89Á\82·\82é\95\8e\9a\97ñ\r
-                                       $l = strlen($tmpstr);  //\92Ç\89Á\82·\82é\95\8e\9a\97ñ\82Ì\92·\82³\r
-                                       while ($l > $len) {\r
-                                               $line .= substr($tmpstr, 0, $len);\r
-                                               $st .= base64_encode($line).$linefeed;\r
-                                               $l -= $len;\r
-                                               $tmpstr = substr($tmpstr, $len);\r
-                                               $len = $maxbytes;\r
-                                               $line = '';\r
-                                       } \r
-                                       $line .= $tmpstr;\r
-                                       $len -= $l;\r
-                                       $needterminate = FALSE;\r
-                               } elseif (ord($allchunks[$i][2])) { //\8a¿\8e\9a\82É\83}\83b\83`\r
-                                       $tmpstr = substr($allchunks[$i][0], 3);\r
-                                       if ($len < 8) { //\95\8e\9a\82ð\92Ç\89Á\82·\82é\82Ì\82É\8dÅ\92á8\83o\83C\83g\95K\97v\82È\82Ì\82Å\r
-                                               if ($needterminate)\r
-                                                       $line .= chr(0x1B).'(B';\r
-                                               $st .= base64_encode($line).$linefeed;\r
-                                               $len = $maxbytes;\r
-                                               $line = '';\r
-                                       }\r
-                                       $l = strlen($tmpstr);\r
-                                       $line .= chr(0x1B).'$B';\r
-                                       $len -= 3; \r
-                                       while ($l > $len-3) {\r
-                                               $add = floor(($len-3) / 2) * 2;\r
-                                               if ($add == 0) break;\r
-                                               $line .= substr($tmpstr, 0, $add).chr(0x1B).'(B';\r
-                                               $st .= base64_encode($line).$linefeed;\r
-                                               $l -= $add;\r
-                                               $tmpstr = substr($tmpstr, $add);\r
-                                               $len = $maxbytes-3;\r
-                                               $line = chr(0x1B).'$B';\r
-                                       } \r
-                                       $line .= $tmpstr;\r
-                                       $len -= $l;\r
-                                       $needterminate = TRUE;\r
-                                       \r
-                               } elseif (ord($allchunks[$i][3])) { //\94¼\8ap\83J\83i\82É\83}\83b\83`\r
-                                       $tmpstr = $allchunks[$i][3];\r
-                                       if ($len < 7) { //\95\8e\9a\82ð\92Ç\89Á\82·\82é\82Ì\82É\8dÅ\92á7\83o\83C\83g\95K\97v\82È\82Ì\82Å\r
-                                               if ($needterminate)\r
-                                                       $line .= chr(0x1B).'(B';\r
-                                               $st .= base64_encode($line).$linefeed;\r
-                                               $len = $maxbytes;\r
-                                               $line = '';\r
-                                       }\r
-                                       $l = strlen($tmpstr);\r
-                                       $line .= chr(0x1B).'(I';\r
-                                       $len -= 3; \r
-                                       while ($l > $len-3) {\r
-                                               $line .= substr($tmpstr, 0, $len-3).chr(0x1B).'(B';\r
-                                               $st .= base64_encode($line).$linefeed;\r
-                                               $l -= $len;\r
-                                               $tmpstr = substr($tmpstr, $len-3);\r
-                                               $len = $maxbytes-3;\r
-                                               $line = chr(0x1B).'(I';\r
-                                       } \r
-                                       $line .= $tmpstr;\r
-                                       $len -= $l;\r
-                                       $needterminate = TRUE;\r
-                               }\r
-                       }\r
-                       if ($needterminate) $line .= chr(0x1B).'(B';\r
-                       $st .= base64_encode($line).$linefeed;\r
-                       return $st;\r
-       }\r
-       $st = ''; // BASE64\95Ï\8a·\8cã\82Ì\95\8e\9a\97ñ\r
-       $maxbytes = floor($maxline * 3 / 4);  //1\8ds\82É\95Ï\8a·\89Â\94\\82È\83o\83C\83g\90\94\r
-       $len = $maxbytes;  // \82»\82Ì\8ds\82É\92Ç\89Á\89Â\94\\82È\83o\83C\83g\90\94\r
-       $line = '';  //1\8ds\95ª\82Ì\95Ï\8a·\91O\82Ì\95\8e\9a\97ñ\r
-       for ($i = 0; $i < $max; ++$i) {\r
-               $l = strlen($allchars[0][$i]);\r
-               if ($l > $len) {\r
-                       $st .= base64_encode($line).$linefeed;\r
-                       $len = $maxbytes;\r
-                       $line = '';\r
-               }\r
-               $line .= $allchars[0][$i];\r
-               $len -= $l;\r
-       }\r
-       $st .= base64_encode($line).$linefeed;\r
-       return $st;\r
-}\r
-\r
-function mb_encode_mimeheader( $str, $encoding = "ISO-2022-JP", $transfer_encoding = "B", $linefeed = "\r\n")\r
-{\r
-       global $_mb_encoding;\r
-       if ($transfer_encoding == "b") $transfer_encoding = "B";\r
-       if ($transfer_encoding <> "B") $transfer_encoding = "Q";\r
-       $encoding = strtoupper($encoding);\r
-       \r
-       $head = '=?' . mb_preferred_mime_name ($encoding) . '?'.$transfer_encoding.'?';\r
-       $str = mb_convert_encoding($str, $encoding, mb_internal_encoding());\r
-       $length = 76 - strlen($head) - 4;\r
-       if ($transfer_encoding == "B") {\r
-        $str = _sub_encode_base64( $str , $encoding, $length, $linefeed);\r
-       } else {\r
-               $str = _sub_quoted_printable_encode($str, $encoding, $length, $linefeed);\r
-       }\r
-       $ar = explode($linefeed, $str);\r
-       $s = '';\r
-       foreach ($ar as $element) {\r
-               if ($element <> '')\r
-                       $s .= $head . $element . '?=' .$linefeed;\r
-       }\r
-       return $s;\r
-}\r
-\r
-function mb_http_input($type = '')\r
-{\r
-       return FALSE;\r
-}\r
-\r
-function mb_http_output($encoding = '')\r
-{\r
-       global $ini_file;\r
-       \r
-       if ($encoding == '') return $ini_file['http_output'];\r
-       if (strtolower($encoding) == 'pass') {\r
-               $ini_file['http_output'] = 'pass';\r
-               return TRUE;\r
-       }\r
-       $ini_file['http_output'] = mb_preferred_mime_name($encoding);\r
-       return TRUE;\r
-}\r
-\r
-\r
-function mb_output_handler ( $buffer, $status='')\r
-{\r
-       global $ini_file, $tmpstr;\r
-       if ($ini_file['http_output'] == 'pass')\r
-               return $buffer;\r
-       return mb_convert_encoding($buffer, $ini_file['http_output'], mb_internal_encoding());\r
-}\r
-\r
-\r
-function mb_encode_numericentity($str, $convmap, $encoding="")\r
-{\r
-       if (!$encoding) $encoding = mb_internal_encoding();\r
-       $str = mb_convert_encoding($str, "utf-16", $encoding);\r
-       $ar = unpack("n*", $str);\r
-       $s = "";\r
-       foreach($ar as $char) {\r
-               $max = count($convmap);\r
-               for ($i = 0; $i < $max; $i += 4) {\r
-                       if (($convmap[$i] <= $char) && ($char <= $convmap[$i+1])) {\r
-                               $char += $convmap[$i+2];\r
-                               $char &= $convmap[$i+3];\r
-                               $s .= sprintf("&#%u;", $char);\r
-                               break;\r
-                       }\r
-               }\r
-               if ($i >= $max) $s .= pack("n*", $char);\r
-       }\r
-       return $s;\r
-}\r
-\r
-function mb_decode_numericentity ($str, $convmap, $encoding="")\r
-{\r
-       if (!$encoding) $encoding = mb_internal_encoding();\r
-       $ar = preg_split('/(&#[0-9]+;)/', $str, -1, PREG_SPLIT_DELIM_CAPTURE);\r
-       $s = '';\r
-       $max = count($convmap);\r
-       foreach($ar as $chunk) {\r
-               if (preg_match('/&#([0-9]+);/', $chunk, $match)) {\r
-                       for ($i = 0; $i < $max; $i += 4) {\r
-                               $num = $match[1] - $convmap[$i+2];\r
-                               if (($convmap[$i] <= $num) && ($num <= $convmap[$i+1])) {\r
-                                       $ucs2 = pack('n*', $num);\r
-                                       $s .= mb_convert_encoding($ucs2, $encoding, 'UTF-16');\r
-                                       break;\r
-                               }\r
-                       }\r
-                       if ($i >= $max) $s .= $chunk;\r
-               } else {\r
-                       $s .= $chunk;\r
-               }\r
-       }\r
-       return $s;\r
-}\r
-\r
-\r
-function _print_str($str) {\r
-       $all = unpack("C*", $str);\r
-       $s = '';\r
-       foreach($all as $char) {\r
-               $s .= sprintf(" %2X",$char);\r
-       }\r
-       print $s."\n";\r
-}\r
-\r
+<?php
+/* mbstring emulator for Japanese by Andy
+ * email : webmaster@matsubarafamily.com
+ *
+ * license based on GPL(GNU General Public License)
+ *
+ * Ver.0.84 (2006/1/20)
+ */
+
+
+define('MB_CASE_UPPER', 0);
+define('MB_CASE_LOWER', 1);
+define('MB_CASE_TITLE', 2);
+
+include dirname(__FILE__).'/convert.table';
+// include dirname(__FILE__).'/sjistouni.table';
+// include dirname(__FILE__).'/unitosjis.table';
+
+
+$mbemu_internals['ini_file'] = parse_ini_file(dirname(__FILE__).'/mb-emulator.ini');
+
+$mbemu_internals['language'] = $mbemu_internals['ini_file']['language'];
+$mbemu_internals['internal_encoding'] = $mbemu_internals['ini_file']['internal_encoding'];
+$mbemu_internals['lang_array'] = array (
+       'Japanese', 'ja','jp', 'English', 'en', 'uni'
+       );
+
+$mbemu_internals['encoding'] = array (
+       'AUTO' => 0xFF,
+       'ASCII' => 0,
+       'EUC-JP' => 1,
+       'EUC' => 1,
+       'SJIS' => 2,
+       'SHIFT-JIS' => 2,
+       'SHIFT_JIS' => 2,
+       'SJIS-WIN' => 2,
+       'JIS' => 3,
+       'ISO-2022-JP' => 3,
+       'UTF-8' => 4,
+       'UTF8' => 4,
+       'UTF-16'=>5,
+       'ISO-8859-1' => 6
+       );
+
+
+function mb_detect_order($encoding_list = '')
+{
+       global $mbemu_internals;
+       
+       if ($encoding_list) {
+               if (is_string($encoding_list)) {
+                       $encoding_list = strtoupper($encoding_list);
+                       $encoding_list = split(', *', $encoding_list);
+               }
+               foreach($encoding_list as $encode)
+                       if (!array_key_exists($encode, $mbemu_internals['encoding'])) return FALSE;
+               $mbemu_internals['detect_order'] = $encoding_list;
+               return TRUE;
+       }
+       return $mbemu_internals['detect_order'];
+}
+
+if (!(mb_detect_order($mbemu_internals['ini_file']['detect_order'])))
+       $mbemu_internals['detect_order'] = array ("ASCII", "JIS", "UTF-8", "EUC-JP", "SJIS");
+
+$mbemu_internals['substitute_character'] = $mbemu_internals['ini_file']['substitute_character'];
+
+$mbemu_internals['regex'] = array(
+       0 => "[\x01-\x7F]", // for ASCII
+       1 => "[\xA1-\xFE]([\xA1-\xFE])|[\x01-\x7F]|\x8E([\xA0-\xDF])", // for EUC-JP
+       2 => "[\x81-\x9F\xE0-\xFC]([\x40-\xFC])|[\x01-\x7F]|[\xA0-\xDF]", // for Shift_JIS
+       3 => "(?:^|\x1B\(\x42)([\x01-\x1A,\x1C-\x7F]*)|(?:\x1B\\$\x42([\x01-\x1A,\x1C-\x7F]*))|(?:\x1B\(I([\x01-\x1A,\x1C-\x7F]*))", // for JIS
+       4 => "[\x01-\x7F]|[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF][\x80-\xBF]", // for UTF-8
+       5 => "..", // for UTF-16
+       6 => "." // for ISO-8859-1
+       );
+
+
+
+function mb_language($language='')
+{
+  global $mbemu_internals;
+
+  if ($language =='') {
+    if ($mbemu_internals['language'] == '') return FALSE;
+    else return $mbemu_internals['language'];
+  } else {
+       foreach ($mbemu_internals['lang_array'] as $element) {
+               if ($element == $language) {
+                       $mbemu_internals['language'] = $language;
+                       return TRUE;
+               }
+       }
+       return FALSE;
+  }
+}
+
+
+function mb_internal_encoding($encoding = '')
+{
+       global $mbemu_internals;
+
+  if ($encoding =='') {
+    if ($mbemu_internals['internal_encoding'] == '') return FALSE;
+    else return $mbemu_internals['internal_encoding'];
+  } else {
+               $mbemu_internals['internal_encoding'] = $encoding;
+               return TRUE;
+  }
+}
+
+function mb_get_info($type = 'all')
+{
+       switch(strtolower($type)) {
+               case 'all' :
+                       $a['internal_encoding'] = mb_internal_encoding();
+                       $a['http_output'] = mb_http_output();
+                       $a['http_input'] = 'pass';
+                       $a['func_overload'] = 'pass';
+                       return $a;
+               case 'internal_encoding' :
+                       return mb_internal_encoding();
+               case 'http_output' :
+                       return mb_http_output();
+               case 'http_input' :
+                       return 'pass';
+               case 'func_overloard' :
+                       return 'pass';
+       }
+}
+
+function mb_substitute_character($subchar='')
+{
+       global $mbemu_internals;
+       
+       if (!$subchar) return $mbemu_internals['substitute_character'];
+       if (is_int($subchar)) {
+               $mbemu_internals['substitute_character'] = $subchar;
+       } else {
+               $subchar = strtolower($subchar);
+               switch ($subchar) {
+                       case 'none' :
+                       case 'long' :
+                               $mbemu_internals['substitute_character'] = $subchar;
+               }
+       }
+}
+
+
+function mb_convert_encoding( $str, $to_encoding, $from_encoding = '')
+{
+       global $mbemu_internals;
+
+       $to_encoding = strtoupper($to_encoding);
+       $from_encoding = mb_detect_encoding($str, $from_encoding);
+       
+       switch ($mbemu_internals['encoding'][$from_encoding]) {
+               case 1: //euc-jp
+                       switch($mbemu_internals['encoding'][$to_encoding]) {
+                               case 2: //sjis
+                                       return _euctosjis($str);
+                               case 3: //jis
+                                       $str = _euctosjis($str);
+                                       return _sjistojis($str);
+                               case 4: //utf8
+                                       return _euctoutf8($str);
+                               case 5: //utf16
+                                       $str = _euctoutf8($str);
+                                       return _utf8toutf16($str);
+                               default:
+                                       return $str;
+                       }
+               case 2: //sjis
+                       switch($mbemu_internals['encoding'][$to_encoding]) {
+                               case 1: //euc-jp
+                                       return _sjistoeuc($str);
+                               case 3: //jis
+                                       return _sjistojis($str);
+                               case 4: //utf8
+                                       return _sjistoutf8($str);
+                               case 5: //utf16
+                                       $str = _sjistoutf8($str);
+                                       return _utf8toutf16($str);
+                               default:
+                                       return $str;
+                       }
+               case 3: //jis
+                       switch($mbemu_internals['encoding'][$to_encoding]) {
+                               case 1: //euc-jp
+                                       $str = _jistosjis($str);
+                                       return _sjistoeuc($str);
+                               case 2: //sjis
+                                       return _jistosjis($str);
+                               case 4: //utf8
+                                       $str = _jistosjis($str);
+                                       return _sjistoutf8($str);
+                               case 5: //utf16
+                                       $str = _jistosjis($str);
+                                       $str = _sjistoutf8($str);
+                                       return _utf8toutf16($str);
+                               default:
+                                       return $str;
+                       }
+               case 4: //utf8
+                       switch($mbemu_internals['encoding'][$to_encoding]) {
+                               case 1: //euc-jp
+                                       return _utf8toeuc($str);
+                               case 2: //sjis
+                                       return _utf8tosjis($str);
+                               case 3: //jis
+                                       $str = _utf8tosjis($str);
+                                       return _sjistojis($str);
+                               case 5: //utf16
+                                       return _utf8toutf16($str);
+                               default:
+                                       return $str;
+                       }
+               case 5: //utf16
+                       $str = _utf16toutf8($str);
+                       switch($mbemu_internals['encoding'][$to_encoding]) {
+                               case 1: //euc-jp
+                                       return _utf8toeuc($str);
+                               case 2: //sjis
+                                       return _utf8tosjis($str);
+                               case 3: //jis
+                                       $str = _utf8tosjis($str);
+                                       return _sjistojis($str);
+                               case 4: //utf8
+                                       return $str;
+                               default:
+                                       return _utf8toutf16($str);
+                       }
+               default:
+                       return $str;
+       }
+}
+
+
+
+function _sjistoeuc(&$str)
+{
+       global $mbemu_internals;
+       
+       $max = preg_match_all('/'.$mbemu_internals['regex'][2].'/', $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð
+       $str_EUC = '';
+       for ($i = 0; $i < $max; ++$i) {
+               $num = ord($allchars[0][$i]);  // \8ae\95\8e\9a\82Ì1\83o\83C\83g\96Ú\82ð\90\94\92l\82Æ\82µ\82Ä\8eæ\82è\8fo\82·
+               if ($num2 = ord($allchars[1][$i])) { // 2\83o\83C\83g\96Ú\82ª\82 \82é\8fê\8d\87
+                       $shift = $mbemu_internals['sjistoeuc_byte1_shift'][$num2];
+                       $str_EUC .= chr($mbemu_internals['sjistoeuc_byte1'][$num] + $shift)
+                                          .chr($mbemu_internals['sjistoeuc_byte2'][$shift][$num2]);
+               } elseif ($num <= 0x7F) {//\89p\90\94\8e\9a
+                       $str_EUC .= chr($num);
+               } else { //\94¼\8ap\83J\83i
+                       $str_EUC .= chr(0x8E).chr($num);
+               }
+       }
+       return $str_EUC;
+}
+
+
+function _euctosjis(&$str)
+{
+       global $mbemu_internals;
+       $max = preg_match_all('/'.$mbemu_internals['regex'][1].'/', $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð
+       $str_SJIS = '';
+       for ($i = 0; $i < $max; ++$i) {
+               $num = ord($allchars[0][$i]);  // \8ae\95\8e\9a\82Ì1\83o\83C\83g\96Ú\82ð\90\94\92l\82Æ\82µ\82Ä\8eæ\82è\8fo\82·
+               if ($num2 = ord($allchars[1][$i])) { // \8a¿\8e\9a\82Ì\8fê\8d\87
+                       $str_SJIS .= chr($mbemu_internals['euctosjis_byte1'][$num]);
+                       if ($num & 1)
+                               $str_SJIS .= chr($mbemu_internals['euctosjis_byte2'][0][$num2]);
+                       else
+                               $str_SJIS .= chr($mbemu_internals['euctosjis_byte2'][1][$num2]);
+               } elseif ($num3 = ord($allchars[2][$i])) {//\94¼\8ap\83J\83i
+                       $str_SJIS .= chr($num3);
+               } else { //\89p\90\94\8e\9a
+                       $str_SJIS .= chr($num);
+               }
+       }
+       return $str_SJIS;
+}
+
+function _sjistojis(&$str)
+{
+       global $mbemu_internals;
+       
+       $max = preg_match_all('/'.$mbemu_internals['regex'][2].'/', $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð
+       $str_JIS = '';
+       $mode = 0; // \89p\90\94
+       for ($i = 0; $i < $max; ++$i) {
+               $num = ord($allchars[0][$i]);  // \8ae\95\8e\9a\82Ì1\83o\83C\83g\96Ú\82ð\90\94\92l\82Æ\82µ\82Ä\8eæ\82è\8fo\82·
+               if ($num2 = ord($allchars[1][$i])) { // 2\83o\83C\83g\96Ú\82ª\82 \82é\8fê\8d\87
+                       if ($mode != 1) {
+                               $mode = 1;
+                               $str_JIS .= chr(0x1b).'$B';
+                       }
+                       $shift = $mbemu_internals['sjistoeuc_byte1_shift'][$num2];
+                       $str_JIS .= chr(($mbemu_internals['sjistoeuc_byte1'][$num] + $shift) & 0x7F)
+                                          .chr($mbemu_internals['sjistoeuc_byte2'][$shift][$num2] & 0x7F);
+               } elseif ($num > 0x80) {//\94¼\8ap\83J\83i
+                       if ($mode != 2) {
+                               $mode = 2;
+                               $str_JIS .= chr(0x1B).'(I';
+                       }
+                       $str_JIS .= chr($num & 0x7F);
+               } else {//\94¼\8ap\89p\90\94
+                       if ($mode != 0) {
+                               $mode = 0;
+                               $str_JIS .= chr(0x1B).'(B';
+                       }
+                       $str_JIS .= chr($num);
+               }
+       }
+       if ($mode != 0) {
+               $str_JIS .= chr(0x1B).'(B';
+       }
+       return $str_JIS;
+}
+
+function _sub_jtosj($match)
+{
+       global $mbemu_internals;
+       $num = ord($match[0]);
+       $num2 = ord($match[1]);
+       $s = chr($mbemu_internals['euctosjis_byte1'][$num | 0x80]);
+       if ($num & 1) {
+               $s .= chr($mbemu_internals['euctosjis_byte2'][0][$num2 | 0x80]);
+       } else {
+               $s .= chr($mbemu_internals['euctosjis_byte2'][1][$num2 | 0x80]);
+       }
+       return $s;
+}
+
+function _jistosjis(&$str)
+{
+       global $mbemu_internals;
+       
+       $max = preg_match_all('/'.$mbemu_internals['regex'][3].'/', $str, $allchunks, PREG_SET_ORDER);  // \95\8e\9a\8eí\82²\82Æ\82Ì\94z\97ñ\82É\95ª\89ð
+       $st = '';
+       for ($i = 0; $i < $max; ++$i) {
+               if (ord($allchunks[$i][1])) { //\89p\90\94\82É\83}\83b\83`
+                       $st .= $allchunks[$i][1];
+               } elseif (ord($allchunks[$i][2])) { //\8a¿\8e\9a\82É\83}\83b\83`
+                       $tmp = substr($allchunks[$i][0], 3, strlen($allchunks[$i][0]));
+                       $st .= preg_replace_callback("/.(.)/","_sub_jtosj", $tmp);
+               } elseif (ord($allchunks[$i][3])) { //\94¼\8ap\83J\83i\82É\83}\83b\83`
+                       $st .= preg_replace("/./e","chr(ord['$1'] | 0x80);",$allchunks[$i][3]);
+               }
+       }
+       return $st;
+}
+
+
+function _ucs2utf8($uni)
+{
+       if ($uni <= 0x7f)
+               return chr($uni);
+       elseif ($uni <= 0x7ff) {
+               $y = ($uni >> 6) & 0x1f;
+               $x = $uni & 0x3f;
+               return chr(0xc0 | $y).chr(0x80 | $x);
+       } else {
+               $z = ($uni >> 12) & 0x0f;
+               $y = ($uni >> 6) & 0x3f;
+               $x = $uni & 0x3f;
+               return chr(0xe0 | $z).chr(0x80 | $y).chr(0x80 | $x);
+       }
+}
+
+function _sjistoutf8(&$str)
+{
+       global $mbemu_internals;
+       include_once(dirname(__FILE__).'/sjistouni.table');
+       $st = '';
+       $max = preg_match_all('/'.$mbemu_internals['regex'][2].'/', $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð
+       for ($i = 0; $i < $max; ++$i) {
+               $num = ord($allchars[0][$i]);  // \8ae\95\8e\9a\82Ì1\83o\83C\83g\96Ú\82ð\90\94\92l\82Æ\82µ\82Ä\8eæ\82è\8fo\82·
+               if ($num2 = ord($allchars[1][$i])) { // 2\83o\83C\83g\96Ú\82ª\82 \82é\8fê\8d\87
+                       $ucs2 = $mbemu_internals['sjistoucs2'][($num << 8) | $num2];
+                       $st .= _ucs2utf8($ucs2);
+               } elseif ($num > 0x80) {//\94¼\8ap\83J\83i
+                       $st .= _ucs2utf8(0xfec0 + $num);
+               } else {//\94¼\8ap\89p\90\94
+                       $st .= chr($num);
+               }
+       }
+       return $st;
+}
+
+function _utf8ucs2($st)
+{
+       $num = ord($st);
+       if (!($num & 0x80)) //1byte
+               return $num;
+       elseif (($num & 0xe0) == 0xc0) {//2bytes
+               $num2 = ord(substr($st, 1,1));
+               return (($num & 0x1f) << 6) | ($num2 & 0x3f);
+       } else  { //3bytes
+               $num2 = ord(substr($st, 1,1));
+               $num3 = ord(substr($st, 2,1));
+               return (($num & 0x0f) << 12) | (($num2 & 0x3f) << 6) | ($num3 & 0x3f);
+       }
+}
+
+function _utf8tosjis(&$str)
+{
+       global $mbemu_internals;
+       include_once(dirname(__FILE__).'/unitosjis.table');
+       $st = '';
+       $max = preg_match_all('/'.$mbemu_internals['regex'][4].'/', $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð
+       for ($i = 0; $i < $max; ++$i) {
+               $num = _utf8ucs2($allchars[0][$i]); //ucs2\82Ì\92l\82ð\8eæ\82è\8fo\82·
+               if ($num < 0x80)
+                       $st .= chr($num);
+               elseif ((0xff61 <= $num) && ($num <= 0xff9f))
+                       $st .= chr($num - 0xfec0);
+               else {
+                       $sjis = $mbemu_internals['ucs2tosjis'][$num];
+                       $st .= chr($sjis >> 8) . chr($sjis & 0xff);
+               }
+       }
+       return $st;
+}
+
+function _euctoutf8(&$str)
+{
+       global $mbemu_internals;
+       include_once(dirname(__FILE__).'/sjistouni.table');
+       $st = '';
+       $max = preg_match_all('/'.$mbemu_internals['regex'][1].'/', $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð
+       for ($i = 0; $i < $max; ++$i) {
+               $num = ord($allchars[0][$i]);  // \8ae\95\8e\9a\82Ì1\83o\83C\83g\96Ú\82ð\90\94\92l\82Æ\82µ\82Ä\8eæ\82è\8fo\82·
+               if ($num2 = ord($allchars[1][$i])) { // 2\83o\83C\83g\96Ú\82ª\82 \82é\8fê\8d\87
+                       if ($num & 1)
+                               $sjis = ($mbemu_internals['euctosjis_byte1'][$num] << 8) | $mbemu_internals['euctosjis_byte2'][0][$num2];
+                       else
+                               $sjis = ($mbemu_internals['euctosjis_byte1'][$num] << 8) | $mbemu_internals['euctosjis_byte2'][1][$num2];
+                       $st .= _ucs2utf8($mbemu_internals['sjistoucs2'][$sjis]);
+               } elseif ($num3 = ord($allchars[2][$i])) {
+                       $st .= _ucs2utf8(0xfec0 + $num3);
+               } else {//\94¼\8ap\89p\90\94
+                       $st .= chr($num);
+               }
+       }
+       return $st;
+}
+
+function _utf8toeuc(&$str)
+{
+       global $mbemu_internals;
+       include_once(dirname(__FILE__).'/unitosjis.table');
+       $st = '';
+       $max = preg_match_all('/'.$mbemu_internals['regex'][4].'/', $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð
+       for ($i = 0; $i < $max; ++$i) {
+               $num = _utf8ucs2($allchars[0][$i]); //ucs2\82Ì\92l\82ð\8eæ\82è\8fo\82·
+               if ($num < 0x80)
+                       $st .= chr($num);
+               elseif ((0xff61 <= $num) && ($num <= 0xff9f)) //\94¼\8ap\83J\83i
+                       $st .= chr(0x8e) . chr($num - 0xfec0);
+               else {
+                       $sjis = $mbemu_internals['ucs2tosjis'][$num];
+                       $upper = $sjis >> 8;
+                       $lower = $sjis & 0xff;
+                       $shift = $mbemu_internals['sjistoeuc_byte1_shift'][$lower];
+                       $st .= chr($mbemu_internals['sjistoeuc_byte1'][$upper] + $shift)
+                                  .chr($mbemu_internals['sjistoeuc_byte2'][$shift][$lower]);
+               }
+       }
+       return $st;
+}
+
+function _utf8toutf16(&$str)
+{
+       global $mbemu_internals;
+       $st = '';
+       $max = preg_match_all('/'.$mbemu_internals['regex'][4].'/', $str, $allchars);  // \95\8e\9a\82Ì\94z\97ñ\82É\95ª\89ð
+       for ($i = 0; $i < $max; ++$i) {
+               $num = _utf8ucs2($allchars[0][$i]); //ucs2\82Ì\92l\82ð\8eæ\82è\8fo\82·
+               $st .= chr(($num >> 8) & 0xff).chr($num & 0xff);
+       }
+       return $st;
+}
+
+function _utf16toutf8(&$str)
+{
+       global $mbemu_internals;
+       $st = '';
+       $ar = unpack("n*", $str);
+       foreach($ar as $char) {
+               $st .= _ucs2utf8($char);
+       }
+       return $st;
+}
+
+       
+function sub_zenhan_EUC(&$str, $match) {
+       global $mbemu_internals;
+
+       $match = $match . "|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e[\xa0-\xdf]";
+       $max = preg_match_all("/$match/", $str, $chars);
+       $str = '';
+       for ($i = 0; $i < $max; ++$i) {
+               if ($num = ord($chars[1][$i])) //\91S\8ap\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87
+                       $str .= chr(array_search($chars[1][$i], $mbemu_internals['alphanumeric_convert']));
+               //      $str .= chr($num & 0x7F);
+               else
+                       $str .= $chars[0][$i];
+       }
+}
+
+function sub_hanzen_EUC(&$str, $match) {
+       global $mbemu_internals;
+
+       $match = $match . "|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e[\xa0-\xdf]";
+       $max = preg_match_all("/$match/", $str, $chars);
+       $str = '';
+       for ($i = 0; $i < $max; ++$i) {
+               if ($num = ord($chars[1][$i])) //\94¼\8ap\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87
+                       $str .= $mbemu_internals['alphanumeric_convert'][$num];
+               else
+                       $str .= $chars[0][$i];
+       }
+}
+
+function alpha_zenhan_EUC(&$str) {
+       sub_zenhan_EUC($str, "(\xA3[\xC1-\xFA])");
+}
+
+function alpha_hanzen_EUC(&$str) {
+       sub_hanzen_EUC($str, "([\x41-\x5A,\x61-\x7A])");
+}
+
+
+function num_zenhan_EUC(&$str) {
+       sub_zenhan_EUC($str, "(\xA3[\xB0-\xB9])");
+}
+
+function num_hanzen_EUC(&$str) {
+       sub_hanzen_EUC($str, "([\x30-\x39])");
+}
+
+function alphanum_zenhan_EUC(&$str) {
+       sub_zenhan_EUC($str, "(\xa1[\xa4,\xa5,\xa7-\xaa,\xb0,\xb2,\xbf,\xc3,\xca,\xcb,\xce-\xd1,\xdc,\xdd,\xe1,\xe3,\xe4,\xf0,\xf3-\xf7]|\xA3[\xC1-\xFA]|\xA3[\xB0-\xB9])");
+}
+
+function alphanum_hanzen_EUC(&$str) {
+       sub_hanzen_EUC($str, "([\\\x21,\\\x23-\\\x26,\\\x28-\\\x5B,\\\x5D-\\\x7D])");
+}
+
+
+function space_zenhan_EUC(&$str) {
+       sub_zenhan_EUC($str, "(\xA1\xA1)");
+}
+
+function space_hanzen_EUC(&$str) {
+       sub_hanzen_EUC($str, "(\x20)");
+}
+
+function katakana_zenhan_EUC(&$str) {
+       global $mbemu_internals;
+
+       $match = "\xa5([\xa1-\xf4])|\xa1([\xa2,\xa3,\xa6,\xab,\xac,\xbc,\xd6,\xd7])|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e[\xa0-\xdf]";
+       $max = preg_match_all("/$match/", $str, $chars);
+       $str = '';
+       for ($i = 0; $i < $max; ++$i) {
+               if ($num = ord($chars[1][$i])) //\83J\83i\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87
+                       $str .= chr(0x8e) . $mbemu_internals['kana_zenhan_convert'][$num];
+               elseif ($num = ord($chars[2][$i])) //\94¼\8ap\95Ï\8a·\89Â\94\\82È\93Á\8eê\95\8e\9a\82É\83}\83b\83`\82µ\82½\8fê\8d\87
+                       $str .= chr(0x8e) . $mbemu_internals['special_zenhan_convert'][$num];
+               else
+                       $str .= $chars[0][$i];
+       }
+}
+
+function hiragana_zenhan_EUC(&$str) {
+       global $mbemu_internals;
+
+       $match = "\xa4([\xa1-\xf4])|\xa1([\xa2,\xa3,\xa6,\xab,\xac,\xbc,\xd6,\xd7])|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e[\xa0-\xdf]";
+       $max = preg_match_all("/$match/", $str, $chars);
+       $str = '';
+       for ($i = 0; $i < $max; ++$i) {
+               if ($num = ord($chars[1][$i])) //\82©\82È\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87
+                       $str .= chr(0x8e) . $mbemu_internals['kana_zenhan_convert'][$num];
+               elseif ($num = ord($chars[2][$i])) //\94¼\8ap\95Ï\8a·\89Â\94\\82È\93Á\8eê\95\8e\9a\82É\83}\83b\83`\82µ\82½\8fê\8d\87
+                       $str .= chr(0x8e) . $mbemu_internals['special_zenhan_convert'][$num];
+               else
+                       $str .= $chars[0][$i];
+       }
+}
+
+function katakana_hanzen1_EUC(&$str) { //\91÷\93_\82Ì\93\9d\8d\87\82ð\82·\82é\95û
+       global $mbemu_internals;
+
+       $match = "\x8e((?:[\xb3,\xb6-\xc4,\xca-\xce]\x8e\xde)|(?:[\xca-\xce]\x8e\xdf))|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e([\xa1-\xdf])";
+               //\91÷\93_\82â\94¼\91÷\93_\82Í\88ê\8f\8f\82É\83}\83b\83`\83\93\83O
+       $max = preg_match_all("/$match/", $str, $chars);
+       $str = '';
+       for ($i = 0; $i < $max; ++$i) {
+               if ($chars[1][$i]) //\91÷\89¹\81C\94¼\91÷\89¹\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87
+                       $str .= chr(0xa5).chr(array_search($chars[1][$i], $mbemu_internals['kana_zenhan_convert']));
+               elseif ($chars[2][$i]) //\82»\82Ì\91¼\82Ì\94¼\8ap\83J\83i\82É\83}\83b\83`
+                       if ($num = array_search($chars[2][$i], $mbemu_internals['kana_zenhan_convert']))
+                               $str .= chr(0xa5).chr($num);
+                       else
+                               $str .= chr(0xa1).chr(array_search($chars[2][$i], $mbemu_internals['special_zenhan_convert']));
+               else
+                       $str .= $chars[0][$i];
+       }
+}
+
+function hiragana_hanzen1_EUC(&$str) { //\91÷\93_\82Ì\93\9d\8d\87\82ð\82·\82é\95û
+       global $mbemu_internals;
+
+       $match = "\x8e((?:[\xb6-\xc4,\xca-\xce]\x8e\xde)|(?:[\xca-\xce]\x8e\xdf))|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e([\xa1-\xdf])";
+               //\91÷\93_\82â\94¼\91÷\93_\82Í\88ê\8f\8f\82É\83}\83b\83`\83\93\83O
+       $max = preg_match_all("/$match/", $str, $chars);
+       $str = '';
+       for ($i = 0; $i < $max; ++$i) {
+               if ($chars[1][$i]) //\91÷\89¹\81C\94¼\91÷\89¹\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87
+                       $str .= chr(0xa4).chr(array_search($chars[1][$i], $mbemu_internals['kana_zenhan_convert']));
+               elseif ($chars[2][$i]) //\82»\82Ì\91¼\82Ì\94¼\8ap\83J\83i\82É\83}\83b\83`
+                       if ($num = array_search($chars[2][$i], $mbemu_internals['kana_zenhan_convert']))
+                               $str .= chr(0xa4).chr($num);
+                       else
+                               $str .= chr(0xa1).chr(array_search($chars[2][$i], $mbemu_internals['special_zenhan_convert']));
+               else
+                       $str .= $chars[0][$i];
+       }
+}
+
+function katakana_hanzen2_EUC(&$str) { //\91÷\93_\82Ì\93\9d\8d\87\82ð\82µ\82È\82¢\95û
+       global $mbemu_internals;
+
+       $match = "[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e([\xa1-\xdf])";
+       $max = preg_match_all("/$match/", $str, $chars);
+       $str = '';
+       for ($i = 0; $i < $max; ++$i) {
+               if ($chars[1][$i]) //\94¼\8ap\83J\83i\82É\83}\83b\83`
+                       if ($num = array_search($chars[1][$i], $mbemu_internals['kana_zenhan_convert']))
+                               $str .= chr(0xa5).chr($num);
+                       else
+                               $str .= chr(0xa1).chr(array_search($chars[1][$i], $mbemu_internals['special_zenhan_convert']));
+               else
+                       $str .= $chars[0][$i];
+       }
+}
+
+function hiragana_hanzen2_EUC(&$str) { //\91÷\93_\82Ì\93\9d\8d\87\82ð\82µ\82È\82¢\95û
+       global $mbemu_internals;
+
+       $match = "[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e([\xa1-\xdf])";
+       $max = preg_match_all("/$match/", $str, $chars);
+       $str = '';
+       for ($i = 0; $i < $max; ++$i) {
+               if ($chars[1][$i]) //\94¼\8ap\83J\83i\82É\83}\83b\83`
+                       if ($num = array_search($chars[1][$i], $mbemu_internals['kana_zenhan_convert']))
+                               $str .= chr(0xa4).chr($num);
+                       else
+                               $str .= chr(0xa1).chr(array_search($chars[1][$i], $mbemu_internals['special_zenhan_convert']));
+               else
+                       $str .= $chars[0][$i];
+       }
+}
+
+function katakana_hiragana_EUC(&$str) {
+
+       $match = "\xa5([\xa1-\xf3])|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e[\xa0-\xdf]";
+       $max = preg_match_all("/$match/", $str, $chars);
+       $str = '';
+       for ($i = 0; $i < $max; ++$i) {
+               if ($num = ord($chars[1][$i])) //\83J\83i\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87
+                       $str .= chr(0xa4) . chr($num);
+               else
+                       $str .= $chars[0][$i];
+       }
+}
+
+function hiragana_katakana_EUC(&$str) {
+
+       $match = "\xa4([\xa1-\xf4])|[\xa1-\xfe][\xa1-\xfe]|[\x01-\x7f]|\x8e[\xa0-\xdf]";
+       $max = preg_match_all("/$match/", $str, $chars);
+       $str = '';
+       for ($i = 0; $i < $max; ++$i) {
+               if ($num = ord($chars[1][$i])) //\83J\83i\82É\83}\83b\83`\83\93\83O\82µ\82½\8fê\8d\87
+                       $str .= chr(0xa5) . chr($num);
+               else
+                       $str .= $chars[0][$i];
+       }
+}
+
+function mb_convert_kana( $str, $option='KV', $encoding = '')
+{
+       if (!$encoding) $encoding = mb_internal_encoding();
+       $str = mb_convert_encoding($str, 'EUC-JP', $encoding);
+
+       if (strstr($option, "r")) alpha_zenhan_EUC($str);
+       if (strstr($option, "R")) alpha_hanzen_EUC($str);
+       if (strstr($option, "n")) num_zenhan_EUC($str);
+       if (strstr($option, "N")) num_hanzen_EUC($str);
+       if (strstr($option, "a")) alphanum_zenhan_EUC($str);
+       if (strstr($option, "A")) alphanum_hanzen_EUC($str);
+       if (strstr($option, "s")) space_zenhan_EUC($str);
+       if (strstr($option, "S")) space_hanzen_EUC($str);
+       if (strstr($option, "k")) katakana_zenhan_EUC($str);
+       if (strstr($option, "K")) {
+               if (strstr($option, "V"))
+                       katakana_hanzen1_EUC($str);
+               else
+                       katakana_hanzen2_EUC($str);
+       }
+       if (strstr($option, "H")) {
+               if (strstr($option, "V"))
+                       hiragana_hanzen1_EUC($str);
+               else
+                       hiragana_hanzen2_EUC($str);
+       }
+       if (strstr($option, "h")) hiragana_zenhan_EUC($str);
+       if (strstr($option, "c")) katakana_hiragana_EUC($str);
+       if (strstr($option, "C")) hiragana_katakana_EUC($str);
+
+       $str = mb_convert_encoding($str, $encoding, 'EUC-JP');
+       return $str;
+}
+
+// if mb_language is uni this function send mail using UTF-8/Base64
+// if English or en this function send mail using ISO-8859-1/quoted printable
+// if Japanese this function send mail using ISO-2022-JP
+function mb_send_mail($to, $subject, $message , $additional_headers='', $additional_parameter='')
+{
+       switch (mb_language()) {
+               case 'jp' :
+               case 'ja' :
+               case 'Japanese' :
+                       if (!_check_encoding($subject, 3)) //if not JIS encoded
+                               $subject =mb_encode_mimeheader($subject);
+                       else {
+                               $tmp = mb_internal_encoding();
+                               mb_internal_encoding('iso-2022-jp');
+                               $subject =mb_encode_mimeheader($subject);
+                               mb_internal_encoding($tmp);
+                       }
+                       if (!_check_encoding($message, 3))
+                               $message = mb_convert_encoding($message, "iso-2022-jp", mb_internal_encoding());
+                       $additional_headers .= 
+                       "\r\nMime-Version: 1.0\r\nContent-Type: text/plain; charset=ISO-2022-JP\r\nContent-Transfer-Encoding: 7bit";
+                       mail($to, $subject, $message, $additional_headers, $additional_parameter);
+                       break;
+               case 'en' :
+               case 'English' :
+                       $subject =mb_encode_mimeheader($subject, mb_internal_encoding(), 'Q');
+                       $message = _sub_encode_base64($message, mb_internal_encoding(), 76 , "\r\n");
+                       $additional_headers .= 
+                       "\r\nMime-Version: 1.0\r\nContent-Type: text/plain; charset=".
+                       mb_preferred_mime_name(mb_internal_encoding()).
+                       "\r\nContent-Transfer-Encoding: BASE64";
+                       mail($to, $subject, $message, $additional_headers, $additional_parameter); 
+                       break;
+               case 'uni' :
+                       $subject =mb_encode_mimeheader($subject, mb_internal_encoding(), 'B');
+                       $message = _sub_encode_base64($message, mb_internal_encoding(), 76 , "\r\n");
+                       $additional_headers .= 
+                       "\r\nMime-Version: 1.0\r\nContent-Type: text/plain; charset=".
+                       mb_preferred_mime_name(mb_internal_encoding()).
+                       "\r\nContent-Transfer-Encoding: BASE64";
+                       mail($to, $subject, $message, $additional_headers, $additional_parameter); 
+                       break;
+       }
+       
+}
+
+
+
+function _check_encoding($str, $encoding_number)
+{
+       global $mbemu_internals;
+       return (preg_match('/^('.$mbemu_internals['regex'][$encoding_number].')+$/', $str) == 1);
+}
+
+function mb_detect_encoding( $str , $encoding_list = '')
+{
+       global $mbemu_internals;
+
+       if ($encoding_list == '') 
+                       $encoding_list = mb_detect_order();
+       if (!is_array($encoding_list)) {
+               $encoding_list = strtoupper($encoding_list);
+               if ($encoding_list == 'AUTO') {
+                       $encoding_list = mb_detect_order();
+               } else {
+                       $encoding_list = split(', *', $encoding_list);
+               }
+       }
+       foreach($encoding_list as $encode) {
+               if (_check_encoding($str, $mbemu_internals['encoding'][$encode]))
+                       return $encode;
+       }
+       return $encode;
+}
+
+function mb_strlen ( $str , $encoding='')
+{
+       global $mbemu_internals;
+
+       $encoding = mb_detect_encoding($str, $encoding);
+
+       switch ($e = $mbemu_internals['encoding'][$encoding]) {
+               case 1 : //euc-jp
+               case 2 : //shift-jis
+               case 4 : //utf-8
+                       return preg_match_all('/'.$mbemu_internals['regex'][$e].'/', $str, $arr);
+               case 5 : //utf-16
+                       return strlen($str) >> 1;
+               case 0 : //ascii
+               case 6 : //iso8859-1
+                       return strlen($str);
+               case 3 : //jis
+                       $str = mb_convert_encoding($str, 'SJIS', 'JIS');
+                       return preg_match_all('/'.$mbemu_internals['regex'][2].'/', $str, $arr);
+       }
+}
+
+function mb_strwidth( $str, $encoding='')
+{
+       global $mbemu_internals;
+
+       $encoding = mb_detect_encoding($str, $encoding);
+       switch ($e = $mbemu_internals['encoding'][$encoding]) {
+               case 4 : //utf-8
+                       $max = $len = preg_match_all('/'.$mbemu_internals['regex'][4].'/', $str, $arr);
+                       for ($i=0; $i < $max; ++$i) {
+                               $ucs2 = _utf8ucs2($arr[0][$i]);
+                               if (((0x2000 <= $ucs2) && ($ucs2 <= 0xff60)) || (0xffa0 <= $ucs2))
+                                       ++$len;
+                       }
+                       return $len;
+               case 1 : //euc-jp
+               case 2 : //shift-jis
+                       $max = $len = preg_match_all('/'.$mbemu_internals['regex'][$e].'/', $str, $arr);
+                       for ($i=0; $i < $max; ++$i)
+                               if ($arr[1][$i]) ++$len;
+                       return $len;
+               case 5 : //utf-16
+                       $max = $len = preg_match_all('/'.$mbemu_internals['regex'][5].'/', $str, $arr);
+                       for ($i=0; $i < $max; ++$i) {
+                               $ucs2 = (ord($arr[0][$i]) << 8) | ord(substr($arr[0][$i],1,1));
+                               if (((0x2000 <= $ucs2) && ($ucs2 <= 0xff60)) || (0xffa0 <= $ucs2))
+                                       ++$len;
+                       }
+                       return $len;
+               case 0 : //ascii
+               case 6 : //iso8859-1
+                       return strlen($str);
+               case 3 : //jis
+                       $str = mb_convert_encoding($str, 'SJIS', 'JIS');
+                       $max = $len = preg_match_all('/'.$mbemu_internals['regex'][2].'/', $str, $arr);
+                       for ($i=0; $i < $max; ++$i)
+                               if ($arr[1][$i]) ++$len;
+                       return $len;
+       }
+}
+
+function mb_strimwidth( $str, $start, $width, $trimmarker , $encoding = '')
+{
+       global $mbemu_internals;
+
+       $encoding = mb_detect_encoding($str, $encoding);
+       $str = mb_substr($str, $start, 'notnumber', $encoding);
+       if (($len = mb_strwidth($str,$encoding)) <= $width)
+               return $str;
+       $trimwidth = mb_strwidth($trimmarker,$encoding);
+       $width -= $trimwidth;
+       if ($width <= 0) return $trimmarker;
+       
+       switch ($e = $mbemu_internals['encoding'][$encoding]) {
+               case 0 : //ascii
+               case 6 : //iso8859-1
+                       return substr($str, 0, $width).$trimmarker;
+               case 4 : //utf-8
+                       preg_match_all('/'.$mbemu_internals['regex'][4].'/', $str, $arr);
+                       $i = 0;
+                       while(TRUE) {
+                               $ucs2 = _utf8ucs2($arr[0][$i]);
+                               if (((0x2000 <= $ucs2) && ($ucs2 <= 0xff60)) || (0xffa0 <= $ucs2))
+                                       $width -= 2;
+                               else
+                                       --$width;
+                               if ($width<0) break;
+                               ++$i;
+                       }
+                       $arr[0] = array_slice($arr[0], 0, $i);
+                       return implode("", $arr[0]).$trimmarker;
+               case 5 : //utf-16
+                       $arr = unpack("n*", $str);
+                       $i = 0;
+                       foreach($arr as $ucs2) {
+                               if (((0x2000 <= $ucs2) && ($ucs2 <= 0xff60)) || (0xffa0 <= $ucs2))
+                                       $width -= 2;
+                               else
+                                       --$width;
+                               if ($width<0) break;
+                               ++$i;
+                       }
+                       $arr[0] = array_slice($arr[0], 0, $i);
+                       return implode("", $arr[0]).$trimmarker;
+               case 1 : //euc-jp
+               case 2 : //shift-jis
+                       preg_match_all('/'.$mbemu_internals['regex'][$e].'/', $str, $arr);
+                       $i = 0;
+                       while(TRUE) {
+                               if ($arr[1][$i])
+                                       $width -= 2;
+                               else
+                                       --$width;
+                               if ($width<0) break;
+                               ++$i;
+                       }
+                       $arr[0] = array_slice($arr[0], 0, $i);
+                       return implode("", $arr[0]).$trimmarker;
+               case 3 : //jis
+                       $str = mb_convert_encoding($str, 'SJIS', 'JIS');
+                       $trimmarker = mb_convert_encoding($trimmarker, 'SJIS', 'JIS');
+                       preg_match_all('/'.$mbemu_internals['regex'][2].'/', $str, $arr);
+                       $i = 0;
+                       while(TRUE) {
+                               if ($arr[1][$i])
+                                       $width -= 2;
+                               else
+                                       --$width;
+                               if ($width<0) break;
+                               ++$i;
+                       }
+                       $arr[0] = array_slice($arr[0], 0, $i);
+                       return mb_convert_encoding(implode("", $arr[0]).$trimmarker,'JIS','SJIS');
+       }
+}
+
+
+function mb_substr ( $str, $start , $length='notnumber' , $encoding='')
+{
+       global $mbemu_internals;
+
+       $encoding = mb_detect_encoding($str, $encoding);
+
+       switch ($e = $mbemu_internals['encoding'][$encoding]) {
+               case 0 : //ascii
+               case 1 : //euc-jp
+               case 2 : //shift-jis
+               case 4 : //utf-8
+               case 5 : //utf-16
+               case 6 : //iso-8859-1
+                       preg_match_all('/'.$mbemu_internals['regex'][$e].'/', $str, $arr);
+                       break;
+               case 3 : //jis
+                       $str = mb_convert_encoding($str, 'SJIS', 'JIS');
+                       preg_match_all('/'.$mbemu_internals['regex'][2].'/', $str, $arr);
+       }
+       if (is_int($length))
+               $arr[0] = array_slice($arr[0], $start, $length);
+       else
+               $arr[0] = array_slice($arr[0], $start);
+       $str = implode("", $arr[0]);
+       if ($mbemu_internals['encoding'][$encoding] == 3)
+               $str = mb_convert_encoding($str, 'JIS', 'SJIS');
+       return $str;
+}
+
+function _sub_strcut($arr, $start, $length) {
+       $max = count($arr[0]);
+       $s = ''; $counter = 0;
+       for ($i = 0; $i < $max; ++$i) {
+               $counter += strlen($arr[0][$i]);
+               if ($counter > $start) {
+                       if ($length == 0) {
+                               for ($j = $i; $j < $max; ++$j)
+                                       $s .= $arr[0][$j];
+                               return $s;
+                       }
+                       for ($j = $i, $len = 0; $j < $max; ++$j) {
+                               $len += strlen($arr[0][$j]);
+                               if ($len <= $length)
+                                       $s .= $arr[0][$j];
+                       }
+                       return $s;
+               }
+       }
+       return $s;
+}
+
+
+function mb_strcut ( $str, $start , $length=0 , $encoding = '')
+{
+       global $mbemu_internals;
+       
+       $encoding = mb_detect_encoding($str, $encoding);
+
+       switch ($e = $mbemu_internals['encoding'][$encoding]) {
+               case 0 : //ascii
+               case 1 : //euc-jp
+               case 2 : //shift-jis
+               case 4 : //utf-8
+               case 5 : //utf-16
+               case 6 : //iso-8859-1
+                       preg_match_all('/'.$mbemu_internals['regex'][$e].'/', $str, $arr);
+                       return _sub_strcut($arr, $start, $length);
+               case 3 : //jis
+                       $str = mb_convert_encoding($str, 'SJIS', 'JIS');
+                       preg_match_all('/'.$mbemu_internals['regex'][2].'/', $str, $arr);
+                       $sub = _sub_strcut($arr, $start, $length);
+                       return mb_convert_encoding($sub, 'JIS', 'SJIS');
+       }
+}
+
+function _sub_strrpos($ar_haystack, $ar_needle)
+{
+       $max_h = count($ar_haystack) - 1;
+       $max_n = count($ar_needle) - 1;
+       for ($i = $max_h; $i >= $max_n; --$i) {
+               if ($ar_haystack[$i] == $ar_needle[$max_n]) {
+                       $match = TRUE;
+                       for ($j = 1; $j <= $max_n; ++$j)
+                               if ($ar_haystack[$i-$j] != $ar_needle[$max_n-$j]) {
+                                       $match = FALSE;
+                                       break;
+                               }
+                       if ($match) return $i - $max_n;
+               }
+       }
+       return FALSE;
+}
+
+function mb_strrpos ( $haystack, $needle , $encoding = '')
+{
+       
+       global $mbemu_internals;
+       
+       $encoding = mb_detect_encoding($haystack, $encoding);
+
+       switch ($e = $mbemu_internals['encoding'][$encoding]) {
+               case 0 : //ascii
+               case 1 : //euc-jp
+               case 2 : //shift-jis
+               case 4 : //utf-8
+               case 5 : //utf-16
+               case 6 : //iso-8859-1
+                       preg_match_all('/'.$mbemu_internals['regex'][$e].'/', $haystack, $ar_h);
+                       preg_match_all('/'.$mbemu_internals['regex'][$e].'/', $needle, $ar_n);
+                       return _sub_strrpos($ar_h[0], $ar_n[0]);
+               case 3 : //jis
+                       $haystack = mb_convert_encoding($haystack, 'SJIS', 'JIS');
+                       $needle = mb_convert_encoding($needle, 'SJIS', 'JIS');
+                       preg_match_all('/'.$mbemu_internals['regex'][2].'/', $haystack, $ar_h);
+                       preg_match_all('/'.$mbemu_internals['regex'][2].'/', $needle, $ar_n);
+                       return _sub_strrpos($ar_h[0], $ar_n[0]);
+       }
+}
+
+function _sub_strpos($ar_haystack, $ar_needle, $offset)
+{
+       $max_n = count($ar_needle) - 1;
+       $max_h = count($ar_haystack) - count($ar_needle);
+       for ($i = $offset; $i <= $max_h; ++$i) {
+               for ($j = 0; $j <= $max_n; ++$j) {
+                       $match = TRUE;
+                       if ($ar_haystack[$i+$j] != $ar_needle[$j]) {
+                               $match = FALSE;
+                               break;
+                       }
+               }
+               if ($match) return $i;
+       }
+       return FALSE;
+}
+
+function mb_strpos ( $haystack, $needle , $offset = 0, $encoding = '')
+{
+       
+       global $mbemu_internals;
+       
+       $encoding = mb_detect_encoding($haystack, $encoding);
+
+       switch ($e = $mbemu_internals['encoding'][$encoding]) {
+               case 0 : //ascii
+               case 1 : //euc-jp
+               case 2 : //shift-jis
+               case 4 : //utf-8
+               case 5 : //utf-16
+               case 6 : //iso-8859-1
+                       preg_match_all('/'.$mbemu_internals['regex'][$e].'/', $haystack, $ar_h);
+                       preg_match_all('/'.$mbemu_internals['regex'][$e].'/', $needle, $ar_n);
+                       return _sub_strpos($ar_h[0], $ar_n[0], $offset);
+               case 3 : //jis
+                       $haystack = mb_convert_encoding($haystack, 'SJIS', 'JIS');
+                       $needle = mb_convert_encoding($needle, 'SJIS', 'JIS');
+                       preg_match_all('/'.$mbemu_internals['regex'][2].'/', $haystack, $ar_h);
+                       preg_match_all('/'.$mbemu_internals['regex'][2].'/', $needle, $ar_n);
+                       return _sub_strpos($ar_h[0], $ar_n[0], $offset);
+       }
+}
+
+function _sub_substr_count($ar_haystack, $ar_needle)
+{
+       $matches = 0;
+       $max_n = count($ar_needle) - 1;
+       $max_h = count($ar_haystack) - count($ar_needle);
+       for ($i = 0; $i <= $max_h; ++$i) {
+               for ($j = 0; $j <= $max_n; ++$j) {
+                       $match = TRUE;
+                       if ($ar_haystack[$i+$j] != $ar_needle[$j]) {
+                               $match = FALSE;
+                               break;
+                       }
+               }
+               if ($match) ++$matches;
+       }
+       return $matches;
+}
+
+function mb_substr_count($haystack, $needle , $encoding = '')
+{
+       
+       global $mbemu_internals;
+       
+       $encoding = mb_detect_encoding($haystack, $encoding);
+
+       switch ($e = $mbemu_internals['encoding'][$encoding]) {
+               case 0 : //ascii
+               case 1 : //euc-jp
+               case 2 : //shift-jis
+               case 4 : //utf-8
+               case 5 : //utf-16
+               case 6 : //iso-8859-1
+                       preg_match_all('/'.$mbemu_internals['regex'][$e].'/', $haystack, $ar_h);
+                       preg_match_all('/'.$mbemu_internals['regex'][$e].'/', $needle, $ar_n);
+                       return _sub_substr_count($ar_h[0], $ar_n[0]);
+               case 3 : //jis
+                       $haystack = mb_convert_encoding($haystack, 'SJIS', 'JIS');
+                       $needle = mb_convert_encoding($needle, 'SJIS', 'JIS');
+                       preg_match_all('/'.$mbemu_internals['regex'][2].'/', $haystack, $ar_h);
+                       preg_match_all('/'.$mbemu_internals['regex'][2].'/', $needle, $ar_n);
+                       return _sub_substr_count($ar_h[0], $ar_n[0]);
+       }
+}
+
+
+/******************
+mb_convert_variables
+*******************/
+if (!$mbemu_internals['ini_file']['convert_variables_arrayonly']) {
+       function mb_convert_variables($to_encoding, $from_encoding, $s1, $s2='',$s3='',$s4='',$s5='',$s6='',$s7='', $s8='',$s9='', $s10='')
+       {
+               if (is_array($s1)) {
+                       $st = '';
+                       foreach($s1 as $s) $st .= $s;
+                       if (!($encode = mb_detect_encoding($st, $from_encoding)))
+                               return FALSE;
+                       reset($s1);
+                       while (list ($key, $val) = each ($s1)) {
+                               $s1[$key] = mb_convert_encoding($val, $to_encoding, $encode);
+                       }
+                       return $encode;
+               }
+           $st = $s1.$s2.$s3.$s4.$s5.$s6.$s7.$s8.$s9.$s10;
+           if (!($encode = mb_detect_encoding($st, $from_encoding)))
+               return FALSE;
+           $s1 = mb_convert_encoding($s1, $to_encoding, $encode);
+           $s2 = mb_convert_encoding($s2, $to_encoding, $encode);
+           $s3 = mb_convert_encoding($s3, $to_encoding, $encode);
+           $s4 = mb_convert_encoding($s4, $to_encoding, $encode);
+           $s5 = mb_convert_encoding($s5, $to_encoding, $encode);
+           $s6 = mb_convert_encoding($s6, $to_encoding, $encode);
+           $s7 = mb_convert_encoding($s7, $to_encoding, $encode);
+           $s8 = mb_convert_encoding($s8, $to_encoding, $encode);
+           $s9 = mb_convert_encoding($s9, $to_encoding, $encode);
+           $s10 = mb_convert_encoding($s10, $to_encoding, $encode);
+           return $encode;
+       }
+} else {
+       function mb_convert_variables($to_encoding, $from_encoding, &$arr)
+       {
+               $st = '';
+               foreach($arr as $s) $st .= $s;
+               if (!($encode = mb_detect_encoding($st, $from_encoding)))
+                       return FALSE;
+               reset($arr);
+               while (list ($key, $val) = each ($arr)) {
+                       $arr[$key] = mb_convert_encoding($val, $to_encoding, $encode);
+               }
+               return $encode;
+       }
+}
+
+function mb_preferred_mime_name ($encoding)
+{
+       global $mbemu_internals;
+       
+       $encoding = strtoupper($encoding);
+       
+       switch ($mbemu_internals['encoding'][$encoding]) {
+               case 0 : //ascii
+                       return 'US-ASCII';
+               case 1 : //euc-jp
+                       return 'EUC-JP';
+               case 2 : //shift-jis
+                       return 'Shift_JIS';
+               case 3 : //jis
+                       return 'ISO-2022-JP';
+               case 4 : //utf-8
+                       return 'UTF-8';
+               case 5 : 
+                       return 'UTF-16';
+               case 6 :
+                       return 'ISO-8859-1';
+       }
+}
+
+function mb_decode_mimeheader($str)
+{
+       $lines = preg_split("/(\r\n|\r|\n)( *)/", $str);
+       $s = '';
+       foreach ($lines as $line) {
+               if ($line != "") {
+                       $line = preg_replace("/<[\w\-+\.]+\@[\w\-+\.]+>/","", $line); //\83\81\81[\83\8b\81E\83A\83h\83\8c\83X\95\94\82ð\8fÁ\82·
+                       $matches = preg_split("/=\?([^?]+)\?(B|Q)\?([^?]+)\?=/", $line, -1, PREG_SPLIT_DELIM_CAPTURE);
+                       for ($i = 0; $i < count($matches)-1; $i+=4) {
+                               if (!preg_match("/^[ \t\r\n]*$/", $matches[$i]))
+                                       $s .= $matches[$i];
+                               if ($matches[$i+2] == 'B')
+                                       $s .= mb_convert_encoding(base64_decode($matches[$i+3]), 
+                                                                                       mb_internal_encoding(), $matches[$i+1]);
+                               else
+                                       $s .= mb_convert_encoding(quoted_printable_decode($matches[$i+3]), 
+                                                                                       mb_internal_encoding(), $matches[$i+1]);
+                       }
+                       if (!preg_match("/^[ \t\r\n]*$/", $matches[$i]))
+                                       $s .= $matches[$i];
+               }
+       }
+       return $s;
+}
+
+function _sub_qponechar($str, &$len)
+{
+       $all = unpack("C*", $str);
+       $s = ''; $len = 0;
+       foreach($all as $char) {
+               if (((ord('A') <= $char) && ($char <= ord('Z'))) ||
+                       ((ord('a') <= $char) && ($char <= ord('z')))) {
+                       $s .= chr($char);
+                       ++$len;
+               } else {
+                       $s .= '='.sprintf("%2X",$char);
+                       $len += 3;
+               }
+       }
+       return $s;
+}
+
+function _sub_quoted_printable_encode($str, $encoding, $maxline, $linefeed)
+{
+       global $mbemu_internals;
+       switch ($e = $mbemu_internals['encoding'][$encoding]) {
+               case 0 : //ascii
+               case 1 : //euc-jp
+               case 2 : //shift-jis
+               case 4 : //utf-8
+                       $max = preg_match_all('/'.$mbemu_internals['regex'][$e].'/', $str, $allchars);
+                       break;
+               case 3 : //jis
+                       $max = preg_match_all('/'.$mbemu_internals['regex'][3].'/', $str, $allchunks, PREG_SET_ORDER);  // \95\8e\9a\8eí\82²\82Æ\82Ì\94z\97ñ\82É\95ª\89ð
+                       $st = ''; // quoted printable\95Ï\8a·\8cã\82Ì\95\8e\9a\97ñ
+                       $len = $maxline;  // \82»\82Ì\8ds\82É\92Ç\89Á\89Â\94\\82È\83o\83C\83g\90\94
+                       $needterminate = FALSE; //\8dÅ\8cã\82É\83G\83X\83P\81[\83v\83V\81[\83P\83\93\83X\82ª\95K\97v\82©\82Ç\82¤\82©
+                       for ($i = 0; $i < $max; ++$i) {
+                               if (ord($allchunks[$i][1])) { //\89p\90\94\82É\83}\83b\83`
+                                       if ($needterminate) {
+                                               $st .= '=1B=28B';
+                                               $len -= 7;
+                                       }
+                                       $tmparr = unpack("C*", $allchunks[$i][1]);
+                                       foreach ($tmparr as $char) {
+                                               $tmp = _sub_qponechar(chr($char), $l);
+                                               if ($len < $l) {
+                                                       $st .= $linefeed;
+                                                       $len = $maxline;
+                                               }
+                                               $st .= $tmp;
+                                               $len -= $l;
+                                       } 
+                                       $needterminate = FALSE;
+                               } elseif (ord($allchunks[$i][2])) { //\8a¿\8e\9a\82É\83}\83b\83`
+                                       $maxchars = preg_match_all("/../",substr($allchunks[$i][0], 3),$allchars);
+                                       $tmp = _sub_qponechar($allchars[0][0], $l);
+                                       if ($len < 14 + $l) {
+                                               if ($needterminate)
+                                                       $st .= '=1B=28B';
+                                               $st .= $linefeed;
+                                               $len = $maxline;
+                                       }
+                                       $st .= '=1B=24B';
+                                       $len -= 7;
+                                       for ($j = 0; $j < $maxchars; ++$j) {
+                                               $tmp = _sub_qponechar($allchars[0][$j], $l);
+                                               if ($len < $l + 7) {
+                                                       $st .= '=1B=28B'.$linefeed.'=1B=24B';
+                                                       $len = $maxline-7;
+                                               }
+                                               $st .= $tmp;
+                                               $len -= $l;
+                                       }
+                                       $needterminate = TRUE;
+                                       
+                               } elseif (ord($allchunks[$i][3])) { //\94¼\8ap\83J\83i\82É\83}\83b\83`
+                                       $max = preg_match_all("/./",$allchunks[$i][3],$allchars);
+                                       $tmp = _sub_qponechar($allchars[0][0], $l);
+                                       if ($len < 14 + $l) {
+                                               if ($needterminate)
+                                                       $st .= '=1B=28B';
+                                               $st .= $linefeed;
+                                               $len = $maxline;
+                                       }
+                                       $st .= '=1B=28I';
+                                       $len -= 7;
+                                       for ($j == 0; $j < $max; ++$j) {
+                                               $tmp = _sub_qponechar($allchars[0][$j], $l);
+                                               if ($len < $l + 7) {
+                                                       $st .= '=1B=28B'.$linefeed.'=1B=28I';
+                                                       $len = $maxline-7;
+                                               }
+                                               $st .= $tmp;
+                                               $len -= $l;
+                                       }
+                                       $needterminate = TRUE;
+                               }
+                       }
+                       if ($needterminate) $st .= '=1B=28B';
+                       $st .= $linefeed;
+                       return $st;
+       }
+       $st = ''; // quoted printable\95Ï\8a·\8cã\82Ì\95\8e\9a\97ñ
+       $len = $maxline;  // \82»\82Ì\8ds\82É\92Ç\89Á\89Â\94\\82È\83o\83C\83g\90\94
+       for ($i = 0; $i < $max; ++$i) {
+               $tmp = _sub_qponechar($allchars[0][$i], $l);
+               if ($l > $len) {
+                       $st .= $linefeed;
+                       $len = $maxline;
+               }
+               $st .= $tmp;
+               $len -= $l;
+       }
+       $st .= $linefeed;
+       return $st;
+}
+
+function _sub_encode_base64($str, $encoding, $maxline , $linefeed)
+{
+       global $mbemu_internals;
+       switch ($e = $mbemu_internals['encoding'][$encoding]) {
+               case 0 : //ascii
+               case 6 : //iso-8859-1
+                       return chunk_split( base64_encode($str) , $maxline, $linefeed);
+               case 1 : //euc-jp
+               case 2 : //shift-jis
+               case 4 : //utf-8
+               case 5 : //utf-16
+                       $max = preg_match_all('/'.$mbemu_internals['regex'][$e].'/', $str, $allchars);
+                       break;
+               case 3 : //jis
+                       $max = preg_match_all('/'.$mbemu_internals['regex'][3].'/', $str, $allchunks);  // \95\8e\9a\8eí\82²\82Æ\82Ì\94z\97ñ\82É\95ª\89ð
+                       $st = ''; // BASE64\95Ï\8a·\8cã\82Ì\95\8e\9a\97ñ
+                       $maxbytes = floor($maxline * 3 / 4);  //1\8ds\82É\95Ï\8a·\89Â\94\\82È\83o\83C\83g\90\94
+                       $len = $maxbytes;  // \82»\82Ì\8ds\82É\92Ç\89Á\89Â\94\\82È\83o\83C\83g\90\94
+                       $line = '';  //1\8ds\95ª\82Ì\95Ï\8a·\91O\82Ì\95\8e\9a\97ñ
+                       $needterminate = FALSE; //\8dÅ\8cã\82É\83G\83X\83P\81[\83v\83V\81[\83P\83\93\83X\82ª\95K\97v\82©\82Ç\82¤\82©
+                       for ($i = 0; $i < $max; ++$i) {
+                               if (ord($allchunks[1][$i])) { //\89p\90\94\82É\83}\83b\83`
+                                       if ($needterminate) {
+                                               $line .= chr(0x1B).'(B';
+                                               $len -= 3;
+                                       }
+                                       $tmpstr = $allchunks[1][$i];  //\92Ç\89Á\82·\82é\95\8e\9a\97ñ
+                                       $l = strlen($tmpstr);  //\92Ç\89Á\82·\82é\95\8e\9a\97ñ\82Ì\92·\82³
+                                       while ($l > $len) {
+                                               $line .= substr($tmpstr, 0, $len);
+                                               $st .= base64_encode($line).$linefeed;
+                                               $l -= $len;
+                                               $tmpstr = substr($tmpstr, $len);
+                                               $len = $maxbytes;
+                                               $line = '';
+                                       } 
+                                       $line .= $tmpstr;
+                                       $len -= $l;
+                                       $needterminate = FALSE;
+                               } elseif (ord($allchunks[2][$i])) { //\8a¿\8e\9a\82É\83}\83b\83`
+                                       $tmpstr = substr($allchunks[0][$i], 3);
+                                       if ($len < 8) { //\95\8e\9a\82ð\92Ç\89Á\82·\82é\82Ì\82É\8dÅ\92á8\83o\83C\83g\95K\97v\82È\82Ì\82Å
+                                               if ($needterminate)
+                                                       $line .= chr(0x1B).'(B';
+                                               $st .= base64_encode($line).$linefeed;
+                                               $len = $maxbytes;
+                                               $line = '';
+                                       }
+                                       $l = strlen($tmpstr);
+                                       $line .= chr(0x1B).'$B';
+                                       $len -= 3; 
+                                       while ($l > $len-3) {
+                                               $add = floor(($len-3) / 2) * 2;
+                                               if ($add == 0) break;
+                                               $line .= substr($tmpstr, 0, $add).chr(0x1B).'(B';
+                                               $st .= base64_encode($line).$linefeed;
+                                               $l -= $add;
+                                               $tmpstr = substr($tmpstr, $add);
+                                               $len = $maxbytes-3;
+                                               $line = chr(0x1B).'$B';
+                                       } 
+                                       $line .= $tmpstr;
+                                       $len -= $l;
+                                       $needterminate = TRUE;
+                                       
+                               } elseif (ord($allchunks[3][$i])) { //\94¼\8ap\83J\83i\82É\83}\83b\83`
+                                       $tmpstr = $allchunks[3][$i];
+                                       if ($len < 7) { //\95\8e\9a\82ð\92Ç\89Á\82·\82é\82Ì\82É\8dÅ\92á7\83o\83C\83g\95K\97v\82È\82Ì\82Å
+                                               if ($needterminate)
+                                                       $line .= chr(0x1B).'(B';
+                                               $st .= base64_encode($line).$linefeed;
+                                               $len = $maxbytes;
+                                               $line = '';
+                                       }
+                                       $l = strlen($tmpstr);
+                                       $line .= chr(0x1B).'(I';
+                                       $len -= 3; 
+                                       while ($l > $len-3) {
+                                               $line .= substr($tmpstr, 0, $len-3).chr(0x1B).'(B';
+                                               $st .= base64_encode($line).$linefeed;
+                                               $l -= $len;
+                                               $tmpstr = substr($tmpstr, $len-3);
+                                               $len = $maxbytes-3;
+                                               $line = chr(0x1B).'(I';
+                                       } 
+                                       $line .= $tmpstr;
+                                       $len -= $l;
+                                       $needterminate = TRUE;
+                               }
+                       }
+                       if ($needterminate) $line .= chr(0x1B).'(B';
+                       $st .= base64_encode($line).$linefeed;
+                       return $st;
+       }
+       $st = ''; // BASE64\95Ï\8a·\8cã\82Ì\95\8e\9a\97ñ
+       $maxbytes = floor($maxline * 3 / 4);  //1\8ds\82É\95Ï\8a·\89Â\94\\82È\83o\83C\83g\90\94
+       $len = $maxbytes;  // \82»\82Ì\8ds\82É\92Ç\89Á\89Â\94\\82È\83o\83C\83g\90\94
+       $line = '';  //1\8ds\95ª\82Ì\95Ï\8a·\91O\82Ì\95\8e\9a\97ñ
+       for ($i = 0; $i < $max; ++$i) {
+               $l = strlen($allchars[0][$i]);
+               if ($l > $len) {
+                       $st .= base64_encode($line).$linefeed;
+                       $len = $maxbytes;
+                       $line = '';
+               }
+               $line .= $allchars[0][$i];
+               $len -= $l;
+       }
+       $st .= base64_encode($line).$linefeed;
+       return $st;
+}
+
+function mb_encode_mimeheader( $str, $encoding = "ISO-2022-JP", $transfer_encoding = "B", $linefeed = "\r\n")
+{
+       global $mbemu_internals;
+       if ($transfer_encoding == "b") $transfer_encoding = "B";
+       if ($transfer_encoding <> "B") $transfer_encoding = "Q";
+       $encoding = strtoupper($encoding);
+       
+       $head = '=?' . mb_preferred_mime_name ($encoding) . '?'.$transfer_encoding.'?';
+       $str = mb_convert_encoding($str, $encoding, mb_internal_encoding());
+       $length = 76 - strlen($head) - 4;
+       if ($transfer_encoding == "B") {
+        $str = _sub_encode_base64( $str , $encoding, $length, $linefeed);
+       } else {
+               $str = _sub_quoted_printable_encode($str, $encoding, $length, $linefeed);
+       }
+       $ar = explode($linefeed, $str);
+       $s = '';
+       foreach ($ar as $element) {
+               if ($element <> '')
+                       $s .= $head . $element . '?=' .$linefeed;
+       }
+       return $s;
+}
+
+function mb_http_input($type = '')
+{
+       return FALSE;
+}
+
+function mb_http_output($encoding = '')
+{
+       global $mbemu_internals;
+       
+       if ($encoding == '') return $mbemu_internals['ini_file']['http_output'];
+       if (strtolower($encoding) == 'pass') {
+               $mbemu_internals['ini_file']['http_output'] = 'pass';
+               return TRUE;
+       }
+       $mbemu_internals['ini_file']['http_output'] = mb_preferred_mime_name($encoding);
+       return TRUE;
+}
+
+
+function mb_output_handler ( $buffer, $status='')
+{
+       global $mbemu_internals;
+       if ($mbemu_internals['ini_file']['http_output'] == 'pass')
+               return $buffer;
+       return mb_convert_encoding($buffer, $mbemu_internals['ini_file']['http_output'], mb_internal_encoding());
+}
+
+
+function mb_encode_numericentity($str, $convmap, $encoding="")
+{
+       if (!$encoding) $encoding = mb_internal_encoding();
+       $str = mb_convert_encoding($str, "utf-16", $encoding);
+       $ar = unpack("n*", $str);
+       $s = "";
+       foreach($ar as $char) {
+               $max = count($convmap);
+               for ($i = 0; $i < $max; $i += 4) {
+                       if (($convmap[$i] <= $char) && ($char <= $convmap[$i+1])) {
+                               $char += $convmap[$i+2];
+                               $char &= $convmap[$i+3];
+                               $s .= sprintf("&#%u;", $char);
+                               break;
+                       }
+               }
+               if ($i >= $max) $s .= pack("n*", $char);
+       }
+       return $s;
+}
+
+function mb_decode_numericentity ($str, $convmap, $encoding="")
+{
+       if (!$encoding) $encoding = mb_internal_encoding();
+       $ar = preg_split('/(&#[0-9]+;)/', $str, -1, PREG_SPLIT_DELIM_CAPTURE);
+       $s = '';
+       $max = count($convmap);
+       foreach($ar as $chunk) {
+               if (preg_match('/&#([0-9]+);/', $chunk, $match)) {
+                       for ($i = 0; $i < $max; $i += 4) {
+                               $num = $match[1] - $convmap[$i+2];
+                               if (($convmap[$i] <= $num) && ($num <= $convmap[$i+1])) {
+                                       $ucs2 = pack('n*', $num);
+                                       $s .= mb_convert_encoding($ucs2, $encoding, 'UTF-16');
+                                       break;
+                               }
+                       }
+                       if ($i >= $max) $s .= $chunk;
+               } else {
+                       $s .= $chunk;
+               }
+       }
+       return $s;
+}
+
+function mb_strtoupper($str, $encoding='')
+{
+       global $mbemu_internals;
+
+       include_once(dirname(__FILE__).'/upper.table');
+       $encoding = mb_detect_encoding($str, $encoding);
+       $str = mb_convert_encoding($str, 'UTF-8', $encoding);
+
+       $max = preg_match_all('/'.$mbemu_internals['regex'][4].'/', $str, $allchars);  // make array of chars
+       $newst = '';
+       for ($i = 0; $i < $max; ++$i) {
+               $val = _utf8ucs2($allchars[0][$i]); //get ucs2 value
+               if ((0x61 <= $val) && ($val <= 0x7a)) {
+                       $val -= 0x20;
+                       $newst .= _ucs2utf8($val);
+               } elseif ($upper = $mbemu_internals['upperarray'][$val]) {
+                       $newst .= _ucs2utf8($upper);
+               } else {
+                       $newst .= $allchars[0][$i];
+               }
+       }
+       return mb_convert_encoding($newst, $encoding, 'UTF-8');
+}
+
+function mb_strtolower($str, $encoding='')
+{
+       global $mbemu_internals;
+
+       include_once(dirname(__FILE__).'/lower.table');
+       $encoding = mb_detect_encoding($str, $encoding);
+       $str = mb_convert_encoding($str, 'UTF-8', $encoding);
+
+       $max = preg_match_all('/'.$mbemu_internals['regex'][4].'/', $str, $allchars);  // make array of chars
+       $newst = '';
+       for ($i = 0; $i < $max; ++$i) {
+               $val = _utf8ucs2($allchars[0][$i]); //get ucs2 value
+               if ((0x41 <= $val) && ($val <= 0x5a)) {
+                       $val += 0x20;
+                       $newst .= _ucs2utf8($val);
+               } elseif ($lower = $mbemu_internals['lowerarray'][$val]) {
+                       $newst .= _ucs2utf8($lower);
+               } else {
+                       $newst .= $allchars[0][$i];
+               }
+       }
+       return mb_convert_encoding($newst, $encoding, 'UTF-8');
+}
+
+function mb_convert_case($str, $case, $encoding='')
+{
+       global $mbemu_internals;
+       
+       switch($case) {
+               case MB_CASE_UPPER :
+                       return mb_strtoupper($str, $encoding);
+               case MB_CASE_LOWER :
+                       return mb_strtolower($str, $encoding);
+               case MB_CASE_TITLE :
+                       include_once(dirname(__FILE__).'/upper.table');
+                       include_once(dirname(__FILE__).'/lower.table');
+                       $encoding = mb_detect_encoding($str, $encoding);
+                       $str = mb_convert_encoding($str, 'UTF-8', $encoding);
+
+                       $max = preg_match_all('/'.$mbemu_internals['regex'][4].'/', $str, $allchars);  // make array of chars
+                       $newst = '';
+                       $isalpha = FALSE;
+                       for ($i = 0; $i < $max; ++$i) {
+                               $val = _utf8ucs2($allchars[0][$i]); //get ucs2 value
+                               if ((0x41 <= $val) && ($val <= 0x5a)) {
+                                       if ($isalpha) {
+                                               $val += 0x20; // to lower;
+                                       } else {
+                                               $isalpha = TRUE;
+                                       }
+                                       $newst .= _ucs2utf8($val);
+                               } elseif ((0x61 <= $val) && ($val <= 0x7a)){
+                                       if (!$isalpha) {
+                                               $val -= 0x20; // to upper
+                                               $isalpha = TRUE;
+                                       }
+                                       $newst .= _ucs2utf8($val);
+                               } elseif ($upper = $mbemu_internals['upperarray'][$val]) { // this char is lower
+                                       if ($isalpha) {
+                                               $newst .= _ucs2utf8($val);
+                                       } else {
+                                               $isalpha = TRUE;
+                                               $newst .= _ucs2utf8($upper);
+                                       }
+                               } elseif ($lower = $mbemu_internals['lowerarray'][$val]) { // this char is upper
+                                       if ($isalpha) {
+                                               $newst .= _ucs2utf8($lower);
+                                       } else {
+                                               $isalpha = TRUE;
+                                               $newst .= _ucs2utf8($val);
+                                       }
+                               } else {
+                                       $isalpha = FALSE;
+                                       $newst .= $allchars[0][$i];
+                               }
+                       }
+                       return mb_convert_encoding($newst, $encoding, 'UTF-8');
+       }
+}
+
+
+function _print_str($str) {
+       $all = unpack("C*", $str);
+       $s = '';
+       foreach($all as $char) {
+               $s .= sprintf(" %2X",$char);
+       }
+       print $s."\n";
+}
+
 ?>
\ No newline at end of file
index ada1bed..149ff6a 100755 (executable)
-<?php\r
-$sjistoucs2 = array (\r
-0x8140=>0x3000,\r
-0x8141=>0x3001,\r
-0x8142=>0x3002,\r
-0x8143=>0xFF0C,\r
-0x8144=>0xFF0E,\r
-0x8145=>0x30FB,\r
-0x8146=>0xFF1A,\r
-0x8147=>0xFF1B,\r
-0x8148=>0xFF1F,\r
-0x8149=>0xFF01,\r
-0x814A=>0x309B,\r
-0x814B=>0x309C,\r
-0x814C=>0x00B4,\r
-0x814D=>0xFF40,\r
-0x814E=>0x00A8,\r
-0x814F=>0xFF3E,\r
-0x8150=>0xFFE3,\r
-0x8151=>0xFF3F,\r
-0x8152=>0x30FD,\r
-0x8153=>0x30FE,\r
-0x8154=>0x309D,\r
-0x8155=>0x309E,\r
-0x8156=>0x3003,\r
-0x8157=>0x4EDD,\r
-0x8158=>0x3005,\r
-0x8159=>0x3006,\r
-0x815A=>0x3007,\r
-0x815B=>0x30FC,\r
-0x815C=>0x2015,\r
-0x815D=>0x2010,\r
-0x815E=>0xFF0F,\r
-0x815F=>0xFF3C,\r
-0x8160=>0xFF5E,\r
-0x8161=>0x2225,\r
-0x8162=>0xFF5C,\r
-0x8163=>0x2026,\r
-0x8164=>0x2025,\r
-0x8165=>0x2018,\r
-0x8166=>0x2019,\r
-0x8167=>0x201C,\r
-0x8168=>0x201D,\r
-0x8169=>0xFF08,\r
-0x816A=>0xFF09,\r
-0x816B=>0x3014,\r
-0x816C=>0x3015,\r
-0x816D=>0xFF3B,\r
-0x816E=>0xFF3D,\r
-0x816F=>0xFF5B,\r
-0x8170=>0xFF5D,\r
-0x8171=>0x3008,\r
-0x8172=>0x3009,\r
-0x8173=>0x300A,\r
-0x8174=>0x300B,\r
-0x8175=>0x300C,\r
-0x8176=>0x300D,\r
-0x8177=>0x300E,\r
-0x8178=>0x300F,\r
-0x8179=>0x3010,\r
-0x817A=>0x3011,\r
-0x817B=>0xFF0B,\r
-0x817C=>0xFF0D,\r
-0x817D=>0x00B1,\r
-0x817E=>0x00D7,\r
-0x8180=>0x00F7,\r
-0x8181=>0xFF1D,\r
-0x8182=>0x2260,\r
-0x8183=>0xFF1C,\r
-0x8184=>0xFF1E,\r
-0x8185=>0x2266,\r
-0x8186=>0x2267,\r
-0x8187=>0x221E,\r
-0x8188=>0x2234,\r
-0x8189=>0x2642,\r
-0x818A=>0x2640,\r
-0x818B=>0x00B0,\r
-0x818C=>0x2032,\r
-0x818D=>0x2033,\r
-0x818E=>0x2103,\r
-0x818F=>0xFFE5,\r
-0x8190=>0xFF04,\r
-0x8191=>0xFFE0,\r
-0x8192=>0xFFE1,\r
-0x8193=>0xFF05,\r
-0x8194=>0xFF03,\r
-0x8195=>0xFF06,\r
-0x8196=>0xFF0A,\r
-0x8197=>0xFF20,\r
-0x8198=>0x00A7,\r
-0x8199=>0x2606,\r
-0x819A=>0x2605,\r
-0x819B=>0x25CB,\r
-0x819C=>0x25CF,\r
-0x819D=>0x25CE,\r
-0x819E=>0x25C7,\r
-0x819F=>0x25C6,\r
-0x81A0=>0x25A1,\r
-0x81A1=>0x25A0,\r
-0x81A2=>0x25B3,\r
-0x81A3=>0x25B2,\r
-0x81A4=>0x25BD,\r
-0x81A5=>0x25BC,\r
-0x81A6=>0x203B,\r
-0x81A7=>0x3012,\r
-0x81A8=>0x2192,\r
-0x81A9=>0x2190,\r
-0x81AA=>0x2191,\r
-0x81AB=>0x2193,\r
-0x81AC=>0x3013,\r
-0x81B8=>0x2208,\r
-0x81B9=>0x220B,\r
-0x81BA=>0x2286,\r
-0x81BB=>0x2287,\r
-0x81BC=>0x2282,\r
-0x81BD=>0x2283,\r
-0x81BE=>0x222A,\r
-0x81BF=>0x2229,\r
-0x81C8=>0x2227,\r
-0x81C9=>0x2228,\r
-0x81CA=>0xFFE2,\r
-0x81CB=>0x21D2,\r
-0x81CC=>0x21D4,\r
-0x81CD=>0x2200,\r
-0x81CE=>0x2203,\r
-0x81DA=>0x2220,\r
-0x81DB=>0x22A5,\r
-0x81DC=>0x2312,\r
-0x81DD=>0x2202,\r
-0x81DE=>0x2207,\r
-0x81DF=>0x2261,\r
-0x81E0=>0x2252,\r
-0x81E1=>0x226A,\r
-0x81E2=>0x226B,\r
-0x81E3=>0x221A,\r
-0x81E4=>0x223D,\r
-0x81E5=>0x221D,\r
-0x81E6=>0x2235,\r
-0x81E7=>0x222B,\r
-0x81E8=>0x222C,\r
-0x81F0=>0x212B,\r
-0x81F1=>0x2030,\r
-0x81F2=>0x266F,\r
-0x81F3=>0x266D,\r
-0x81F4=>0x266A,\r
-0x81F5=>0x2020,\r
-0x81F6=>0x2021,\r
-0x81F7=>0x00B6,\r
-0x81FC=>0x25EF,\r
-0x824F=>0xFF10,\r
-0x8250=>0xFF11,\r
-0x8251=>0xFF12,\r
-0x8252=>0xFF13,\r
-0x8253=>0xFF14,\r
-0x8254=>0xFF15,\r
-0x8255=>0xFF16,\r
-0x8256=>0xFF17,\r
-0x8257=>0xFF18,\r
-0x8258=>0xFF19,\r
-0x8260=>0xFF21,\r
-0x8261=>0xFF22,\r
-0x8262=>0xFF23,\r
-0x8263=>0xFF24,\r
-0x8264=>0xFF25,\r
-0x8265=>0xFF26,\r
-0x8266=>0xFF27,\r
-0x8267=>0xFF28,\r
-0x8268=>0xFF29,\r
-0x8269=>0xFF2A,\r
-0x826A=>0xFF2B,\r
-0x826B=>0xFF2C,\r
-0x826C=>0xFF2D,\r
-0x826D=>0xFF2E,\r
-0x826E=>0xFF2F,\r
-0x826F=>0xFF30,\r
-0x8270=>0xFF31,\r
-0x8271=>0xFF32,\r
-0x8272=>0xFF33,\r
-0x8273=>0xFF34,\r
-0x8274=>0xFF35,\r
-0x8275=>0xFF36,\r
-0x8276=>0xFF37,\r
-0x8277=>0xFF38,\r
-0x8278=>0xFF39,\r
-0x8279=>0xFF3A,\r
-0x8281=>0xFF41,\r
-0x8282=>0xFF42,\r
-0x8283=>0xFF43,\r
-0x8284=>0xFF44,\r
-0x8285=>0xFF45,\r
-0x8286=>0xFF46,\r
-0x8287=>0xFF47,\r
-0x8288=>0xFF48,\r
-0x8289=>0xFF49,\r
-0x828A=>0xFF4A,\r
-0x828B=>0xFF4B,\r
-0x828C=>0xFF4C,\r
-0x828D=>0xFF4D,\r
-0x828E=>0xFF4E,\r
-0x828F=>0xFF4F,\r
-0x8290=>0xFF50,\r
-0x8291=>0xFF51,\r
-0x8292=>0xFF52,\r
-0x8293=>0xFF53,\r
-0x8294=>0xFF54,\r
-0x8295=>0xFF55,\r
-0x8296=>0xFF56,\r
-0x8297=>0xFF57,\r
-0x8298=>0xFF58,\r
-0x8299=>0xFF59,\r
-0x829A=>0xFF5A,\r
-0x829F=>0x3041,\r
-0x82A0=>0x3042,\r
-0x82A1=>0x3043,\r
-0x82A2=>0x3044,\r
-0x82A3=>0x3045,\r
-0x82A4=>0x3046,\r
-0x82A5=>0x3047,\r
-0x82A6=>0x3048,\r
-0x82A7=>0x3049,\r
-0x82A8=>0x304A,\r
-0x82A9=>0x304B,\r
-0x82AA=>0x304C,\r
-0x82AB=>0x304D,\r
-0x82AC=>0x304E,\r
-0x82AD=>0x304F,\r
-0x82AE=>0x3050,\r
-0x82AF=>0x3051,\r
-0x82B0=>0x3052,\r
-0x82B1=>0x3053,\r
-0x82B2=>0x3054,\r
-0x82B3=>0x3055,\r
-0x82B4=>0x3056,\r
-0x82B5=>0x3057,\r
-0x82B6=>0x3058,\r
-0x82B7=>0x3059,\r
-0x82B8=>0x305A,\r
-0x82B9=>0x305B,\r
-0x82BA=>0x305C,\r
-0x82BB=>0x305D,\r
-0x82BC=>0x305E,\r
-0x82BD=>0x305F,\r
-0x82BE=>0x3060,\r
-0x82BF=>0x3061,\r
-0x82C0=>0x3062,\r
-0x82C1=>0x3063,\r
-0x82C2=>0x3064,\r
-0x82C3=>0x3065,\r
-0x82C4=>0x3066,\r
-0x82C5=>0x3067,\r
-0x82C6=>0x3068,\r
-0x82C7=>0x3069,\r
-0x82C8=>0x306A,\r
-0x82C9=>0x306B,\r
-0x82CA=>0x306C,\r
-0x82CB=>0x306D,\r
-0x82CC=>0x306E,\r
-0x82CD=>0x306F,\r
-0x82CE=>0x3070,\r
-0x82CF=>0x3071,\r
-0x82D0=>0x3072,\r
-0x82D1=>0x3073,\r
-0x82D2=>0x3074,\r<