同じビット列が文字コードによってどんな文字に解釈されるか
文字コード | ビット列 | 表示される文字 |
---|---|---|
ISO-8859-1 | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????I????æ¹??æ?»?????æ¹??æ?»??????????I????æ¹???I????æ¹??æ?»???????????????I????æ¹??æ?»?????æ¹??æ?»??????????I????æ¹???I????æ¹??æ?»?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????I????æ¹??æ?»?????æ¹??æ?»??????????I????æ¹???I????æ¹??æ?»???????????????I????æ¹??æ?»?????æ¹??æ?»??????????I????æ¹???I????æ¹??æ?»???????????????????????????????????????????????????????????????????????????????????????????????????? |
SJIS-WIN | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????I????貉??謠?サ?????貉??謠?サ??????????I????貉???I????貉??謠?サ???????????????I????貉??謠?サ?????貉??謠?サ??????????I????貉???I????貉??謠?サ?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????I????貉??謠?サ?????貉??謠?サ??????????I????貉???I????貉??謠?サ???????????????I????貉??謠?サ?????貉??謠?サ??????????I????貉???I????貉??謠?サ???????????????????????????????????????????????????????????????????????????????????????????????????? |
EUC-JP | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????I????羚?????????羚??????????????I????羚???I????羚???????????????????I????羚?????????羚??????????????I????羚???I????羚?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????I????羚?????????羚??????????????I????羚???I????羚???????????????????I????羚?????????羚??????????????I????羚???I????羚???????????????????????????????????????????????????????????????????????????????????????????????????????? |
UTF-8 | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????I???????????????????????????????I????????I?????????????????????????I???????????????????????????????I????????I???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????I???????????????????????????????I????????I?????????????????????????I???????????????????????????????I????????I?????????????????????????????????????????????????????????????????????????????????????????????????????????????? |
UHC | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f493f3f3f3fe6b93f3f3f493f3f3f3fe6b93f3fe68f3fbb3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ???????????????????????????????????????????????????S????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????I????疫??孼?빡????疫??孼?빡?????????I????疫???I????疫??孼?빡??????????????I????疫??孼?빡????疫??孼?빡?????????I????疫???I????疫??孼?빡????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????S????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????I????疫??孼?빡????疫??孼?빡?????????I????疫???I????疫??孼?빡??????????????I????疫??孼?빡????疫??孼?빡?????????I????疫???I????疫??孼?빡??????????????????????????????????????????????????????????????????????????????????????????????????? |