同じビット列が文字コードによってどんな文字に解釈されるか
文字コード | ビット列 | 表示される文字 |
---|---|---|
ISO-8859-1 | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S?????????????????????????????????????????????????????????????????????????â??????????â???????????????â????????â??????????â?????????????????????â??????????â???????????????â????????â??????????â????????????????????????????â??????????â???????????????â????????â??????????â??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S?????????????????????????????????????????????????????????????????????????â??????????â???????????????â????????â??????????â?????????????????????â??????????â???????????????â????????â??????????â????????????????????????????â??????????â???????????????â????????â??????????â????????????????????????????????????????????????????????????????????????????????????????????????? |
SJIS-WIN | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S?????????????????????????????????????????????????????????????????????????窶??????????窶???????????????窶????????窶??????????窶?????????????????????窶??????????窶???????????????窶????????窶??????????窶????????????????????????????窶??????????窶???????????????窶????????窶??????????窶??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S?????????????????????????????????????????????????????????????????????????窶??????????窶???????????????窶????????窶??????????窶?????????????????????窶??????????窶???????????????窶????????窶??????????窶????????????????????????????窶??????????窶???????????????窶????????窶??????????窶????????????????????????????????????????????????????????????????????????????????????????????????? |
EUC-JP | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? |
UTF-8 | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S?????????????????????????????????????????????????????????????????????????‐??????????‘???????????????‐????????‐??????????‘?????????????????????‐??????????‘???????????????‐????????‐??????????‘????????????????????????????‐??????????‘???????????????‐????????‐??????????‘??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S?????????????????????????????????????????????????????????????????????????‐??????????‘???????????????‐????????‐??????????‘?????????????????????‐??????????‘???????????????‐????????‐??????????‘????????????????????????????‐??????????‘???????????????‐????????‐??????????‘????????????????????????????????????????????????????????????????????????????????????????????????? |
UHC | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3fe280903f3f3f3f3f3f3f3f3f3fe280983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S?????????????????????????????????????????????????????????????????????????巽륖?????????巽쀾??????????????巽륖???????巽륖?????????巽쀾????????????????????巽륖?????????巽쀾??????????????巽륖???????巽륖?????????巽쀾???????????????????????????巽륖?????????巽쀾??????????????巽륖???????巽륖?????????巽쀾?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S?????????????????????????????????????????????????????????????????????????巽륖?????????巽쀾??????????????巽륖???????巽륖?????????巽쀾????????????????????巽륖?????????巽쀾??????????????巽륖???????巽륖?????????巽쀾???????????????????????????巽륖?????????巽쀾??????????????巽륖???????巽륖?????????巽쀾???????????????????????????????????????????????????????????????????????????????????????????????? |