factor out namespaces