    # File lib/facets/more/aspects.rb, line 97
      def self.include_advice_modules(target)
        add_advices = []
        del_advices = []

        for a in target.advices
          if a.code.is_a?(Module) and (!a.code.class.ancestors.include?(Class))
            target.module_eval %{ include #{a.code} }

            options = a.options.reject { |k,v| k == :pre || k == :post }

            method = (a.options[:pre] || 'pre').to_s
            if a.code.instance_methods.include?(method)
              options.update(:where => :prepend, :join => :pre)
              add_advices <<  Advice.new(method.to_sym, options)
            end

            method = (a.options[:post] || 'post').to_s
            if a.code.instance_methods.include?(method)
              options.update(:where => :append, :join => :post)
              add_advices <<  Advice.new(method.to_sym, options)
            end

            del_advices << a
          end
        end

        # Delete the original advices.

        for a in del_advices
          target.advices!.delete(a)
        end

        # Add the new advices.

        target.advices!.concat(add_advices)
      end