This is just the first version. I am going to continue working on this. And show the results when it is finished.