added SubstitutionCypher