change to uppercase. add interfaces