extracted from iban4j android branch