Added an internal representation and string functions for all the representation