package TestCase::ImplementCallback2 {
  use TestCase::Minimal;
  
  sub new : TestCase::ImplementCallback2 () {
    return new TestCase::ImplementCallback2;
  }
  
  sub foo : int ($self : self, $var1 : int, $var2 : long) {
    return 2;
  }
  sub bar : TestCase::Minimal ($self : self, $var1 : TestCase::Minimal, $var2 : object) {
    return undef;
  }
  
  sub baz : int ($self : self) {
    return 2;
  }
}
