container for different types, avoiding boiler plate