Finished & cleaned up code ...