implementing the namespace pattern