These mappings aren't obvious; can you document why character maps to A, etc...