implement basic submission functionality.