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