working on new datatype read/write approach using inner static factory interface