Renaming, and add a -main method to demo it