using :: as namespace separator