package TestCase::Minimal : public {
  has x : rw public int;
  has y : rw public int;

  sub get_x : int ($self : self) {
    return $self->{x};
  }

  sub new : TestCase::Minimal () {
    return new TestCase::Minimal;
  }
  
  sub newp : TestCase::Minimal ($x : int, $y : int) {
    
    my $minimal = new TestCase::Minimal;
    $minimal->{x} = $x;
    $minimal->{y} = $y;
    
    return $minimal;
  }
  
  sub to_string : string ($self : self) {
    my $str = "(" . $self->{x} . "," . $self->{y} . ")";
    
    return $str;
  }
}