Thanks to visit codestin.com Credit goes to stephlabou.github.io
Here is a review of existing methods.