form now use object instead of DOM calls