b2a returns upper case so variants encode correctly