#!/usr/local/bin/ruby
# -*- mode: ruby -*-
# $Id: objinst.ruby,v 1.2 2000/12/24 22:04:57 doug Exp $
# http://www.bagley.org/~doug/shootout/

class Toggle
    def initialize(start_state)
    @bool = start_state
    self
    end
    def value()
    @bool
    end
    def activate()
    @bool = !@bool
    self
    end
end

class NthToggle < Toggle
    def initialize(start_state, max_counter)
    super(start_state)
    @count_max = max_counter
    @counter = 0
    self
    end
    def activate()
    @counter += 1
    if (@counter >= @count_max) then
        @bool = !@bool
        @counter = 0
    end
    self
    end
end

def main()
    n = Integer(ARGV.shift || 1)

    toggle = Toggle.new(1)
    5.times do
    if toggle.activate().value() then puts "true" else puts "false" end
    end
    n.times do
    toggle = Toggle.new(1)
    end

    puts

    ntoggle = NthToggle.new(1, 3)
    8.times do
    if ntoggle.activate().value() then puts "true" else puts "false" end
    end
    n.times do
    ntoggle = NthToggle.new(1, 3)
    end
end

main()