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