同じビット列が文字コードによってどんな文字に解釈されるか
文字コード | ビット列 | 表示される文字 |
---|---|---|
ISO-8859-1 | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f814e3f3f3f814e3f3f3f3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f814e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f814e3f3f3f814e3f3f3f3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f814e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S??????????????????????????????????????????????????????????????????????????????????????????????????????N????N????????N????N????????N????N????N???N??????N?????N??L???????N??????N???N?????N????????N????N??L???????N??????N???N?????N??L???????N???N??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S??????????????????????????????????????????????????????????????????????????????????????????????????????N????N????????N????N????????N????N????N???N??????N?????N??L???????N??????N???N?????N????????N????N??L???????N??????N???N?????N??L???????N???N????????????????????????????????????????????????????????????????????????????????????????????????????????????? |
SJIS-WIN | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f814e3f3f3f814e3f3f3f3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f814e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f814e3f3f3f814e3f3f3f3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f814e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S??????????????????????????????????????????????????????????????????????????????????????????????????????¨????¨????????¨????¨????????¨????¨????¨???¨??????¨??¥???¨??´???¢????¨??????¨???¨??¥???¨????????¨????¨??´???¢????¨??????¨???¨??¥???¨??´???¢????¨???¨??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S??????????????????????????????????????????????????????????????????????????????????????????????????????¨????¨????????¨????¨????????¨????¨????¨???¨??????¨??¥???¨??´???¢????¨??????¨???¨??¥???¨????????¨????¨??´???¢????¨??????¨???¨??¥???¨??´???¢????¨???¨????????????????????????????????????????????????????????????????????????????????????????????????????????????? |
EUC-JP | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f814e3f3f3f814e3f3f3f3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f814e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f814e3f3f3f814e3f3f3f3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f814e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S???????????????????????????????????????????????????????????????????????????????????????????????????????N?????N?????????N?????N?????????N?????N?????N????N???????N??????N???L??????????N???????N????N??????N?????????N?????N???L??????????N???????N????N??????N???L??????????N????N??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S???????????????????????????????????????????????????????????????????????????????????????????????????????N?????N?????????N?????N?????????N?????N?????N????N???????N??????N???L??????????N???????N????N??????N?????????N?????N???L??????????N???????N????N??????N???L??????????N????N????????????????????????????????????????????????????????????????????????????????????????????????????????????? |
UTF-8 | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f814e3f3f3f814e3f3f3f3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f814e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f814e3f3f3f814e3f3f3f3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f814e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S???????????????????????????????????????????????????????????????????????????????????????????????????????N?????N?????????N?????N?????????N?????N?????N????N???????N????????N???L??????????N???????N????N????????N?????????N?????N???L??????????N???????N????N????????N???L??????????N????N??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S???????????????????????????????????????????????????????????????????????????????????????????????????????N?????N?????????N?????N?????????N?????N?????N????N???????N????????N???L??????????N???????N????N????????N?????????N?????N???L??????????N???????N????N????????N???L??????????N????N????????????????????????????????????????????????????????????????????????????????????????????????????????????? |
UHC | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f814e3f3f3f814e3f3f3f3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f814e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f3f3f814e3f3f3f814e3f3f3f3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f3f3f3f3f3f3f814e3f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f3f3f3f814e3f3f3f814e3f3f818f3f3f3f814e3f3f814c3f3f3f81913f3f3f3f814e3f3f3f814e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S??????????????????????????????????????????????????????????????????????????????????????????????????????갢????갢????????갢????갢????????갢????갢????갢???갢??????갢??걦???갢??갟???걨????갢??????갢???갢??걦???갢????????갢????갢??갟???걨????갢??????갢???갢??걦???갢??갟???걨????갢???갢??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S??????????????????????????????????????????????????????????????????????????????????????????????????????갢????갢????????갢????갢????????갢????갢????갢???갢??????갢??걦???갢??갟???걨????갢??????갢???갢??걦???갢????????갢????갢??갟???걨????갢??????갢???갢??걦???갢??갟???걨????갢???갢????????????????????????????????????????????????????????????????????????????????????????????????????????????? |