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