Revert "Initial commit"

This reverts commit 93d7c241745d8bf47846fd32c4603182f2fde0e3.
Revert "Revert "Initial commit""

This reverts commit 4cdd0351ad493ce851d33ac63f0f8456ee69a81c.
Merge pull request #1 from JohnLyu/new-solution

New solution