Cleaned up ver. 1.0