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