phew, so many bugs. Modularization takes time