feature detection, bug fixes.