remove 'you must be polymorphic to call polymorphic' restriction
kill template param discovery
silence annoying compile warnings