# Docstring
class A
  module B; end
  private
  class B::C < String; 
    def method1; end
    def method2; end
  end
  class X<B::C
  end
  class<<self
    def classmethod1; end
  end

  class << A::B::C; def Hello; end end
end

module B
  class A < A
  end
end

class RT < XX::RT; end

class Test1 < R "something"
end

class Test2 < R(/something/)
end

class Test3 < Struct.new(:foo, :bar)
end

class Test4 < OStruct.new
end

class Test5 < DelegateClass(Array)
end

class Test6 < NotDelegateClass(Array)
end

class ::MyRootClass
end

module Holder
  module SomeMod
    class Importer
      def parse; end
    end
  end
end

module Holder
  class Importer < Holder::SomeMod::Importer
    def a; end
  end
end

class String; end
CONST = String
class << CONST
  def classmethod; end
end

module Q
  class Logger < ::Logger; end
end

class << Symbol
  alias toString to_s
end

# Docstring
class Zebra
end

# Docstring 2

class Zebra
end

class Zebra
end

