cleaning up generics
layout prototyping