core form functionality finished