removed primitive type obsession