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