#334 using factory methods for data creation

:+1: