refactor how to create Form
reimplement form already created