Cleaned up with '-Wall' flag