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