    # File lib/rbot/irc.rb, line 1367
        def initialize(name, topic=nil, users=[], opts={})
          raise ArgumentError, "Channel name cannot be empty" if name.to_s.empty?
          warn "Unknown channel prefix #{name[0].chr}" if name !~ /^[&#+!]/
          raise ArgumentError, "Invalid character in #{name.inspect}" if name =~ /[ \x07,]/

          init_server_or_casemap(opts)

          @name = name

          @topic = topic ? topic.to_irc_channel_topic : Channel::Topic.new

          @users = UserList.new

          users.each { |u|
            add_user(u)
          }

          # Flags
          @mode = ModeHash.new

          # creation time, only on some networks
          @creation_time = nil

          # URL, only on some networks
          @url = nil
        end