Fully implemented Pause Function