updated with better input form and docs