added exceptions and ciutat anotations