more logic namespacing