add reset form feature, all finished