some new and complete redesign function
Merge pull request #21 from rw1993/master

some new and complete redesign function