同じビット列が文字コードによってどんな文字に解釈されるか
文字コード | ビット列 | 表示される文字 |
---|---|---|
ISO-8859-1 | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????ï½¥??ï½¥????????ï½¥??ï½¥??????????ï½¥??ï½¥??????????ï½¥??ï½¥??????????ï½¥??ï½¥????????ï½¥??ï½¥??????????????????????????ï½¥??ï½¥????????ï½¥??ï½¥???????????ï½¥??ï½¥??????????????????????????????????ï½¥??ï½¥????????ï½¥??ï½¥????????????????????????????????????????ï½¥??ï½¥????????ï½¥??ï½¥??????????ï½¥??ï½¥??????????ï½¥??ï½¥??????????ï½¥??ï½¥????????ï½¥??ï½¥???????????????????ï½¥??ï½¥????????ï½¥??ï½¥??????????ï½¥??ï½¥??????????ï½¥??ï½¥??????????ï½¥??ï½¥????????ï½¥??ï½¥???????????????????????????????????ï½¥??ï½¥????????ï½¥??ï½¥????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? |
SJIS-WIN | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????・???・?????????・???・???????????・???・???????????・???・???????????・???・?????????・???・???????????????????????????・???・?????????・???・????????????・???・???????????????????????????????????・???・?????????・???・?????????????????????????????????????????・???・?????????・???・???????????・???・???????????・???・???????????・???・?????????・???・????????????????????・???・?????????・???・???????????・???・???????????・???・???????????・???・?????????・???・????????????????????????????????????・???・?????????・???・????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? |
EUC-JP | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????鐔??鐔????????鐔??鐔??????????鐔??鐔??????????鐔??鐔??????????鐔??鐔????????鐔??鐔??????????????????????????鐔??鐔????????鐔??鐔???????????鐔??鐔??????????????????????????????????鐔??鐔????????鐔??鐔????????????????????????????????????????鐔??鐔????????鐔??鐔??????????鐔??鐔??????????鐔??鐔??????????鐔??鐔????????鐔??鐔???????????????????鐔??鐔????????鐔??鐔??????????鐔??鐔??????????鐔??鐔??????????鐔??鐔????????鐔??鐔???????????????????????????????????鐔??鐔????????鐔??鐔????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? |
UTF-8 | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????・??・????????・??・??????????・??・??????????・??・??????????・??・????????・??・??????????????????????????・??・????????・??・???????????・??・??????????????????????????????????・??・????????・??・????????????????????????????????????????・??・????????・??・??????????・??・??????????・??・??????????・??・????????・??・???????????????????・??・????????・??・??????????・??・??????????・??・??????????・??・????????・??・???????????????????????????????????・??・????????・??・????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? |
UHC | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3fefbda53f3fefbda53f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????節ㆍ?節ㆍ???????節ㆍ?節ㆍ?????????節ㆍ?節ㆍ?????????節ㆍ?節ㆍ?????????節ㆍ?節ㆍ???????節ㆍ?節ㆍ?????????????????????????節ㆍ?節ㆍ???????節ㆍ?節ㆍ??????????節ㆍ?節ㆍ?????????????????????????????????節ㆍ?節ㆍ???????節ㆍ?節ㆍ???????????????????????????????????????節ㆍ?節ㆍ???????節ㆍ?節ㆍ?????????節ㆍ?節ㆍ?????????節ㆍ?節ㆍ?????????節ㆍ?節ㆍ???????節ㆍ?節ㆍ??????????????????節ㆍ?節ㆍ???????節ㆍ?節ㆍ?????????節ㆍ?節ㆍ?????????節ㆍ?節ㆍ?????????節ㆍ?節ㆍ???????節ㆍ?節ㆍ??????????????????????????????????節ㆍ?節ㆍ???????節ㆍ?節ㆍ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? |