同じビット列が文字コードによってどんな文字に解釈されるか
文字コード | ビット列 | 表示される文字 |
---|---|---|
ISO-8859-1 | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????j???????????????????????????????????????????óÁ????????óÁ???????óÁ????????óÁ????????óÁ?????????????????????óÁ???????????????????????????????óÁ????????óÁ???????óÁ????????óÁ????????óÁ?????????????????????óÁ??????????????????????????????????????????????????????????????????????????óÁ????????óÁ???????óÁ????????óÁ????????óÁ?????????????????????óÁ??????????????????????????????????j???????????????j?????????????????????????????????????óÁ????????óÁ???????óÁ????????óÁ????????óÁ?????????????????????óÁ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? |
SJIS-WIN | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????j??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????j???????????????j???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? |
EUC-JP | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????j???????????????????????????????????????????鸛????????鸛???????鸛????????鸛????????鸛?????????????????????鸛???????????????????????????????鸛????????鸛???????鸛????????鸛????????鸛?????????????????????鸛??????????????????????????????????????????????????????????????????????????鸛????????鸛???????鸛????????鸛????????鸛?????????????????????鸛??????????????????????????????????j???????????????j?????????????????????????????????????鸛????????鸛???????鸛????????鸛????????鸛?????????????????????鸛??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? |
UTF-8 | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????j??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????j???????????????j???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? |
UHC | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f6a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3ff3c13f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????j???????????????????????????????????????????竄????????竄???????竄????????竄????????竄?????????????????????竄???????????????????????????????竄????????竄???????竄????????竄????????竄?????????????????????竄??????????????????????????????????????????????????????????????????????????竄????????竄???????竄????????竄????????竄?????????????????????竄??????????????????????????????????j???????????????j?????????????????????????????????????竄????????竄???????竄????????竄????????竄?????????????????????竄??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? |