Support custom class
Fix value setters (take into account null values)