Add Exception handling
add ambiguity codes