          (extend org.apache.commons.logging.Log
            Logger
            {:enabled?
-            (fn [logger# level#]
+            (fn [^org.apache.commons.logging.Log logger# level#]
               (condp = level#
                 :trace (.isTraceEnabled logger#)
                 :debug (.isDebugEnabled logger#)

         (extend org.apache.log4j.Logger
           Logger
           {:enabled?
            (fn [logger# level#]
              (.isEnabledFor logger#
                 (or
                   (levels# level#)
                   (throw (IllegalArgumentException. (str level#))))))
            :write!
            (fn [logger# level# e# msg#]
              (let [level# (or
                             (levels# level#)
                             (throw (IllegalArgumentException. (str level#))))]

        (extend org.slf4j.Logger
          Logger
          {:enabled?
           (fn [^org.slf4j.Logger logger# level#]
             (condp = level#
               :trace (.isTraceEnabled logger#)
               :debug (.isDebugEnabled logger#)
