two forms implemented