import kotlinApi.KotlinClassWithProperties;
import javaApi.JavaClassWithProperties;
import javaApi.JavaClassDerivedFromKotlinClassWithProperties;
import org.jetbrains.annotations.NotNull;
import java.lang.Override;
import java.lang.String;
class A extends KotlinClassWithProperties {
@NotNull
@Override
public String getSomeVar1() {
return super.getSomeVar1();
}
@Override
public void setSomeVar1(@NotNull String s) {
super.setSomeVar1(s);
}
@NotNull
@Override
public String getSomeVar2() {
return super.getSomeVar2();
}
@Override
public void setSomeVar3(@NotNull String s) {
super.setSomeVar3(s);
}
@NotNull
@Override
public String getSomeVar4() {
return super.getSomeVar4();
}
@NotNull
@Override
public String getSomeVal() {
return super.getSomeVal();
}
@Override
public void getSomething1() {
super.getSomething1();
}
@Override
public void getSomething2() {
super.getSomething2();
}
@Override
public void setSomething2(int value) {
super.setSomething2(value);
}
@Override
public void getSomething3() {
super.getSomething3();
}
@Override
public void setSomething4(int value) {
super.setSomething4(value);
}
}
class B extends JavaClassWithProperties {
@Override
public int getValue1() {
return super.getValue1();
}
@Override
public int getValue2() {
return super.getValue2();
}
@Override
public void setValue2(int value) {
super.setValue2(value);
}
@Override
public int getValue3() {
return super.getValue3();
}
@Override
public void setValue4(int value) {
super.setValue4(value);
}
}
class C extends A {
@NotNull
@Override
public String getSomeVar1() {
return super.getSomeVar1();
}
}
class D extends JavaClassDerivedFromKotlinClassWithProperties {
@Override
public String getSomeVar1() { return "a"; }
@Override
public void setSomeVar2(String value) { }
}