make compatibility hacks optional