update code structure and form