refactored namespaces and class names