externalize functions, add more logic around spacing
0.1.2