同じビット列が文字コードによってどんな文字に解釈されるか
文字コード | ビット列 | 表示される文字 |
---|---|---|
ISO-8859-1 | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f423f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f4e3f3f3f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f4c3f3f3f3f423f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????J??????????????????Y????L??????????????L???????????L???????S?????M?????K?????Y????L??????????????L???????????L???????S???????L??????????????L???????????L???????S????????????????B?????J??????????????????Y????L??????????????L???????????L???????S?????M?????K?????Y????L??????????????L???????????L???????S???????L??????????????L???????????L???????S????????????N???????J??????????????????Y????L??????????????L???????????L???????S?????M?????K?????Y????L??????????????L???????????L???????S???????L??????????????L???????????L???????S????????????L????B??????????????????????????????????????????????????????????????????????????????????????????????????????????? |
SJIS-WIN | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f423f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f4e3f3f3f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f4c3f3f3f3f423f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????J??????????????????Y????´??????????????´???????????´???????S?????M?????K?????Y????´??????????????´???????????´???????S???????´??????????????´???????????´???????S????????????????B?????J??????????????????Y????´??????????????´???????????´???????S?????M?????K?????Y????´??????????????´???????????´???????S???????´??????????????´???????????´???????S????????????N???????J??????????????????Y????´??????????????´???????????´???????S?????M?????K?????Y????´??????????????´???????????´???????S???????´??????????????´???????????´???????S????????????L????B??????????????????????????????????????????????????????????????????????????????????????????????????????????? |
EUC-JP | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f423f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f4e3f3f3f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f4c3f3f3f3f423f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????J??????????????????Y?????L???????????????L????????????L???????S?????M?????K?????Y?????L???????????????L????????????L???????S????????L???????????????L????????????L???????S????????????????B?????J??????????????????Y?????L???????????????L????????????L???????S?????M?????K?????Y?????L???????????????L????????????L???????S????????L???????????????L????????????L???????S????????????N???????J??????????????????Y?????L???????????????L????????????L???????S?????M?????K?????Y?????L???????????????L????????????L???????S????????L???????????????L????????????L???????S????????????L????B??????????????????????????????????????????????????????????????????????????????????????????????????????????? |
UTF-8 | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f423f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f4e3f3f3f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f4c3f3f3f3f423f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????J??????????????????Y?????L???????????????L????????????L???????S?????M?????K?????Y?????L???????????????L????????????L???????S????????L???????????????L????????????L???????S????????????????B?????J??????????????????Y?????L???????????????L????????????L???????S?????M?????K?????Y?????L???????????????L????????????L???????S????????L???????????????L????????????L???????S????????????N???????J??????????????????Y?????L???????????????L????????????L???????S?????M?????K?????Y?????L???????????????L????????????L???????S????????L???????????????L????????????L???????S????????????L????B??????????????????????????????????????????????????????????????????????????????????????????????????????????? |
UHC | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f423f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f4e3f3f3f3f3f3f3f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f4d3f3f3f3f3f4b3f3f3f3f3f593f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f3f3f3f3f814c3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f4c3f3f3f3f423f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????J??????????????????Y????갟??????????????갟???????????갟???????S?????M?????K?????Y????갟??????????????갟???????????갟???????S???????갟??????????????갟???????????갟???????S????????????????B?????J??????????????????Y????갟??????????????갟???????????갟???????S?????M?????K?????Y????갟??????????????갟???????????갟???????S???????갟??????????????갟???????????갟???????S????????????N???????J??????????????????Y????갟??????????????갟???????????갟???????S?????M?????K?????Y????갟??????????????갟???????????갟???????S???????갟??????????????갟???????????갟???????S????????????L????B??????????????????????????????????????????????????????????????????????????????????????????????????????????? |