strict datatype field + encapsulated redraw