Still working on this. Will update some of works here later.