add form when necessary. resolve issue #9