improved Form builder