Disclaimer: The above resources should only be used as a reference. They are no longer maintained and were submitted to NTU for grading as part of their respective courses.