add new source code
fix and reformant high level overview