Removed to hpp file, added traits class