handle AbstractMethodError correctly