making form more generic