module ActiveSupport

def self.execute_hook(base, options, block)

def self.execute_hook(base, options, block)
  if options[:yield]
    block.call(base)
  else
    base.instance_eval(&block)
  end
end

def self.on_load(name, options = {}, &block)

def self.on_load(name, options = {}, &block)
  @loaded[name].each do |base|
    execute_hook(base, options, block)
  end
  @load_hooks[name] << [block, options]
end

def self.run_load_hooks(name, base = Object)

def self.run_load_hooks(name, base = Object)
  @loaded[name] << base
  @load_hooks[name].each do |hook, options|
    execute_hook(base, options, hook)
  end
end

def self.version

Returns the version of the currently loaded ActiveSupport as a Gem::Version
def self.version
  Gem::Version.new "4.0.11"
end