need better nested namespaces