split up functionality
0.1.3