class TestCase::SimpleChild extends TestCase::Simple {
  
  has parent_child_duplicate : int;
  
  has z : rw public int;
  
  static method new : TestCase::SimpleChild () {
    return new TestCase::SimpleChild;
  }
  
  method clear : void () {
    $self->SUPER::clear;
    
    $self->{z} = 0;
  }
  
  method DESTROY : void () {
    $self->SUPER::DESTROY();
    
    $TestCase::Simple::DESTROY_VALUE += 2;
    
  }
  
  method arg_object : string ($string : string) {
    return $string;
  }
  
  method arg_object_option : string ($string : string = undef) {
    return $string;
  }
}