1public abstract class cases/protected/PublicAbstractClass { 2 protected fun <init> ()V 3 protected abstract fun getProtectedVal ()I 4 protected abstract fun getProtectedVar ()Ljava/lang/Object; 5 protected abstract fun protectedFun ()V 6 protected abstract fun setProtectedVar (Ljava/lang/Object;)V 7} 8 9public final class cases/protected/PublicFinalClass { 10} 11 12public class cases/protected/PublicOpenClass { 13 protected fun <init> ()V 14 protected final fun getProtectedVal ()I 15 protected final fun getProtectedVar ()I 16 protected final fun protectedFun ()I 17 protected final fun setProtectedVar (I)V 18} 19 20