contrequest update
fix bugs. It works but looks ugly.