support default multimethods