working on custom data types -- in progress