I finish the step 5
finish real code
I merge two branches