Sync'ed with Protuhj and Added History