同じビット列が文字コードによってどんな文字に解釈されるか
文字コード | ビット列 | 表示される文字 |
---|---|---|
ISO-8859-1 | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ????????????????????????????????????????C?????????????????????????????Ê??????????????????????????Ê????????????????????????????????????????????????Ê??????????????????????????Ê??????????????????????????C???????C???????C?????????????????????????????????????????????????????????????????????????????????????????????C?????????????????????????????Ê??????????????????????????Ê????????????????????????????????????????????????Ê??????????????????????????Ê??????????????????????????C???????C???????C?????????????????????????????????????????????????????????????????????????????????????????C?????????????????????????????Ê??????????????????????????Ê????????????????????????????????????????????????Ê??????????????????????????Ê??????????????????????????C???????C???????C?????????????????????????????????????????????????????? |
SJIS-WIN | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ????????????????????????????????????????C?????????§????§§????????????§????§¬????§°?????§????§?????????§????§¬????§°?????§????§???????????????§????§§????????????§????§¬????§°?????§????§?????????§????§¬????§°?????§????§?????????????C???????C???????C?????????????????????????????????????????????????????????????????????????????????????????????C?????????§????§§????????????§????§¬????§°?????§????§?????????§????§¬????§°?????§????§???????????????§????§§????????????§????§¬????§°?????§????§?????????§????§¬????§°?????§????§?????????????C???????C???????C?????????????????????????????????????????????????????????????????????????????????????????C?????????§????§§????????????§????§¬????§°?????§????§?????????§????§¬????§°?????§????§???????????????§????§§????????????§????§¬????§°?????§????§?????????§????§¬????§°?????§????§?????????????C???????C???????C?????????????????????????????????????????????????????? |
EUC-JP | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ????????????????????????????????????????C???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????C???????C???????C?????????????????????????????????????????????????????????????????????????????????????????????C???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????C???????C???????C?????????????????????????????????????????????????????????????????????????????????????????C???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????C???????C???????C?????????????????????????????????????????????????????? |
UTF-8 | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ????????????????????????????????????????C???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????C???????C???????C?????????????????????????????????????????????????????????????????????????????????????????????C???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????C???????C???????C?????????????????????????????????????????????????????????????????????????????????????????C???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????C???????C???????C?????????????????????????????????????????????????????? |
UHC | 3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881983f3f3f3f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f81983f3f3f3f819881ca3f3f3f3f8198818b3f3f3f3f3f81983f3f3f3f81983f3f3f3f3f3f3f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f433f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f | ????????????????????????????????????????C?????????걯????걯걯????????????걯????걯곅????걯걢?????걯????걯?????????걯????걯곅????걯걢?????걯????걯???????????????걯????걯걯????????????걯????걯곅????걯걢?????걯????걯?????????걯????걯곅????걯걢?????걯????걯?????????????C???????C???????C?????????????????????????????????????????????????????????????????????????????????????????????C?????????걯????걯걯????????????걯????걯곅????걯걢?????걯????걯?????????걯????걯곅????걯걢?????걯????걯???????????????걯????걯걯????????????걯????걯곅????걯걢?????걯????걯?????????걯????걯곅????걯걢?????걯????걯?????????????C???????C???????C?????????????????????????????????????????????????????????????????????????????????????????C?????????걯????걯걯????????????걯????걯곅????걯걢?????걯????걯?????????걯????걯곅????걯걢?????걯????걯???????????????걯????걯걯????????????걯????걯곅????걯걢?????걯????걯?????????걯????걯곅????걯걢?????걯????걯?????????????C???????C???????C?????????????????????????????????????????????????????? |