class okhttp.internal.cache.Relay$RelaySource extends java.lang.Object implements okio.Source { private final okio.Timeout timeout; private okhttp.internal.cache.FileOperator fileOperator; private long sourcePos; final okhttp.internal.cache.Relay this$0; void (okhttp.internal.cache.Relay) { java.io.RandomAccessFile v; okhttp.internal.cache.FileOperator v; okio.Timeout v; okhttp.internal.cache.Relay v, v; java.nio.channels.FileChannel v; okhttp.internal.cache.Relay$RelaySource v; v := @this: okhttp.internal.cache.Relay$RelaySource; v := @parameter: okhttp.internal.cache.Relay; v. = v; specialinvoke v.()>(); v = new okio.Timeout; specialinvoke v.()>(); v. = v; v = new okhttp.internal.cache.FileOperator; v = v.; v = v.; v = virtualinvoke v.(); specialinvoke v.(java.nio.channels.FileChannel)>(v); v. = v; return; } public long read(okio.Buffer, long) throws java.io.IOException { byte v, v, v, v, v; java.lang.Thread v, v; okhttp.internal.cache.Relay$RelaySource v; okhttp.internal.cache.Relay v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v; java.lang.Throwable v, v, v, v, v, v; okhttp.internal.cache.FileOperator v, v, v; okio.Source v; long v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v; java.lang.IllegalStateException v; okio.Timeout v; boolean v; okio.Buffer v, v, v, v, v, v, v, v, v, v, v, v; v := @this: okhttp.internal.cache.Relay$RelaySource; v := @parameter: okio.Buffer; v := @parameter: long; v = v.; if v != null goto label; v = new java.lang.IllegalStateException; specialinvoke v.(java.lang.String)>("closed"); throw v; label: v = v.; entermonitor v; label: v = v.; v = v.; v = v.; v = v cmp v; if v != 0 goto label; v = v.; v = v.; if v == 0 goto label; exitmonitor v; label: return -1L; label: v = v.; v = v.; if v == null goto label; v = v.; v = v.; virtualinvoke v.(v); goto label; label: v = v.; v = staticinvoke (); v. = v; v = 1; exitmonitor v; label: goto label; label: v = v.; v = v.; v = virtualinvoke v.(); v = v - v; v = v.; v = v cmp v; if v >= 0 goto label; v = 2; exitmonitor v; label: goto label; label: v = v.; v = v - v; v = staticinvoke (v, v); v = v.; v = v.; v = v.; v = v - v; virtualinvoke v.(v, v, v); v = v.; v = v + v; v. = v; exitmonitor v; label: return v; label: v := @caughtexception; exitmonitor v; throw v; label: if v != 2 goto label; v = v.; v = v - v; v = staticinvoke (v, v); v = v.; v = v.; v = 32L + v; virtualinvoke v.(v, v, v); v = v.; v = v + v; v. = v; return v; label: v = v.; v = v.; v = v.; v = v.; v = v.; v = v.; v = interfaceinvoke v.(v, v); v = v cmp -1L; if v != 0 goto label; v = v.; virtualinvoke v.(v); label: v = v.; entermonitor v; label: v = v.; v. = null; v = v.; virtualinvoke v.(); exitmonitor v; label: goto label; label: v := @caughtexception; exitmonitor v; throw v; label: return -1L; label: v = staticinvoke (v, v); v = v.; v = v.; virtualinvoke v.(v, 0L, v); v = v.; v = v + v; v. = v; v = v.; v = 32L + v; v = v.; v = v.; v = virtualinvoke v.(); virtualinvoke v.(v, v, v); v = v.; entermonitor v; label: v = v.; v = v.; v = v.; v = v.; virtualinvoke v.(v, v); v = v.; v = v.; v = virtualinvoke v.(); v = v.; v = v.; v = v cmp v; if v <= 0 goto label; v = v.; v = v.; v = v.; v = v.; v = virtualinvoke v.(); v = v.; v = v.; v = v - v; virtualinvoke v.(v); label: v = v.; v = v.; v = v + v; v. = v; exitmonitor v; label: goto label; label: v := @caughtexception; exitmonitor v; throw v; label: v = v.; entermonitor v; label: v = v.; v. = null; v = v.; virtualinvoke v.(); exitmonitor v; label: goto label; label: v := @caughtexception; exitmonitor v; throw v; label: return v; label: v := @caughtexception; v = v.; entermonitor v; label: v = v.; v. = null; v = v.; virtualinvoke v.(); exitmonitor v; label: goto label; label: v := @caughtexception; exitmonitor v; throw v; label: throw v; catch java.lang.Throwable from label to label with label; catch java.lang.Throwable from label to label with label; catch java.lang.Throwable from label to label with label; catch java.lang.Throwable from label to label with label; catch java.lang.Throwable from label to label with label; catch java.lang.Throwable from label to label with label; catch java.lang.Throwable from label to label with label; catch java.lang.Throwable from label to label with label; catch java.lang.Throwable from label to label with label; catch java.lang.Throwable from label to label with label; } public okio.Timeout timeout() { okio.Timeout v; okhttp.internal.cache.Relay$RelaySource v; v := @this: okhttp.internal.cache.Relay$RelaySource; v = v.; return v; } public void close() throws java.io.IOException { java.lang.Throwable v; java.io.RandomAccessFile v; okhttp.internal.cache.FileOperator v; okhttp.internal.cache.Relay v, v, v, v, v; int v, v, v; okhttp.internal.cache.Relay$RelaySource v; v := @this: okhttp.internal.cache.Relay$RelaySource; v = v.; if v != null goto label; return; label: v. = null; v = null; v = v.; entermonitor v; label: v = v.; v = v.; v = v - 1; v. = v; v = v.; v = v.; if v != 0 goto label; v = v.; v = v.; v = v.; v. = null; label: exitmonitor v; label: goto label; label: v := @caughtexception; exitmonitor v; throw v; label: if v == null goto label; staticinvoke (v); label: return; catch java.lang.Throwable from label to label with label; } }