added new features and hacks