package kotlinx.coroutines.internal;

import java.util.ArrayDeque;
import java.util.Iterator;
import java.util.Objects;
import k1.i;

/* JADX INFO: compiled from: StackTraceRecovery.kt */
/* JADX INFO: loaded from: classes.dex */
public final class a0 {

    /* JADX INFO: renamed from: a, reason: collision with root package name */
    private static final String f5176a;

    static {
        Object objA;
        Object objA2;
        try {
            i.a aVar = k1.i.f5165e;
            objA = k1.i.a(Class.forName("p1.a").getCanonicalName());
        } catch (Throwable th) {
            i.a aVar2 = k1.i.f5165e;
            objA = k1.i.a(k1.j.a(th));
        }
        if (k1.i.b(objA) != null) {
            objA = "kotlin.coroutines.jvm.internal.BaseContinuationImpl";
        }
        f5176a = (String) objA;
        try {
            i.a aVar3 = k1.i.f5165e;
            objA2 = k1.i.a(a0.class.getCanonicalName());
        } catch (Throwable th2) {
            i.a aVar4 = k1.i.f5165e;
            objA2 = k1.i.a(k1.j.a(th2));
        }
        if (k1.i.b(objA2) != null) {
            objA2 = "kotlinx.coroutines.internal.StackTraceRecoveryKt";
        }
    }

    public static final StackTraceElement b(String str) {
        return new StackTraceElement(w1.g.j("\b\b\b(", str), "\b", "\b", -1);
    }

    private static final <E extends Throwable> k1.h<E, StackTraceElement[]> c(E e3) {
        boolean z2;
        Throwable cause = e3.getCause();
        if (cause == null || !w1.g.a(cause.getClass(), e3.getClass())) {
            return k1.l.a(e3, new StackTraceElement[0]);
        }
        StackTraceElement[] stackTrace = e3.getStackTrace();
        int length = stackTrace.length;
        int i3 = 0;
        while (true) {
            if (i3 >= length) {
                z2 = false;
                break;
            }
            StackTraceElement stackTraceElement = stackTrace[i3];
            i3++;
            if (h(stackTraceElement)) {
                z2 = true;
                break;
            }
        }
        return z2 ? k1.l.a(cause, stackTrace) : k1.l.a(e3, new StackTraceElement[0]);
    }

    private static final <E extends Throwable> E d(E e3, E e4, ArrayDeque<StackTraceElement> arrayDeque) {
        arrayDeque.addFirst(b("Coroutine boundary"));
        StackTraceElement[] stackTrace = e3.getStackTrace();
        int iG = g(stackTrace, f5176a);
        int i3 = 0;
        if (iG == -1) {
            Object[] array = arrayDeque.toArray(new StackTraceElement[0]);
            Objects.requireNonNull(array, "null cannot be cast to non-null type kotlin.Array<T of kotlin.collections.ArraysKt__ArraysJVMKt.toTypedArray>");
            e4.setStackTrace((StackTraceElement[]) array);
            return e4;
        }
        StackTraceElement[] stackTraceElementArr = new StackTraceElement[arrayDeque.size() + iG];
        for (int i4 = 0; i4 < iG; i4++) {
            stackTraceElementArr[i4] = stackTrace[i4];
        }
        Iterator<StackTraceElement> it = arrayDeque.iterator();
        while (it.hasNext()) {
            stackTraceElementArr[i3 + iG] = it.next();
            i3++;
        }
        e4.setStackTrace(stackTraceElementArr);
        return e4;
    }

    private static final ArrayDeque<StackTraceElement> e(p1.d dVar) {
        ArrayDeque<StackTraceElement> arrayDeque = new ArrayDeque<>();
        StackTraceElement stackTraceElementN = dVar.n();
        if (stackTraceElementN != null) {
            arrayDeque.add(stackTraceElementN);
        }
        while (true) {
            dVar = dVar.g();
            if (dVar == null) {
                return arrayDeque;
            }
            StackTraceElement stackTraceElementN2 = dVar.n();
            if (stackTraceElementN2 != null) {
                arrayDeque.add(stackTraceElementN2);
            }
        }
    }

    private static final boolean f(StackTraceElement stackTraceElement, StackTraceElement stackTraceElement2) {
        return stackTraceElement.getLineNumber() == stackTraceElement2.getLineNumber() && w1.g.a(stackTraceElement.getMethodName(), stackTraceElement2.getMethodName()) && w1.g.a(stackTraceElement.getFileName(), stackTraceElement2.getFileName()) && w1.g.a(stackTraceElement.getClassName(), stackTraceElement2.getClassName());
    }

    private static final int g(StackTraceElement[] stackTraceElementArr, String str) {
        int length = stackTraceElementArr.length;
        int i3 = 0;
        while (i3 < length) {
            int i4 = i3 + 1;
            if (w1.g.a(str, stackTraceElementArr[i3].getClassName())) {
                return i3;
            }
            i3 = i4;
        }
        return -1;
    }

    public static final boolean h(StackTraceElement stackTraceElement) {
        return c2.l.e(stackTraceElement.getClassName(), "\b\b\b", false, 2, null);
    }

    private static final void i(StackTraceElement[] stackTraceElementArr, ArrayDeque<StackTraceElement> arrayDeque) {
        int length = stackTraceElementArr.length;
        int i3 = 0;
        while (true) {
            if (i3 >= length) {
                i3 = -1;
                break;
            }
            int i4 = i3 + 1;
            if (h(stackTraceElementArr[i3])) {
                break;
            } else {
                i3 = i4;
            }
        }
        int i5 = i3 + 1;
        int length2 = stackTraceElementArr.length - 1;
        if (i5 > length2) {
            return;
        }
        while (true) {
            int i6 = length2 - 1;
            if (f(stackTraceElementArr[length2], arrayDeque.getLast())) {
                arrayDeque.removeLast();
            }
            arrayDeque.addFirst(stackTraceElementArr[length2]);
            if (length2 == i5) {
                return;
            } else {
                length2 = i6;
            }
        }
    }

    /* JADX INFO: Access modifiers changed from: private */
    public static final <E extends Throwable> E j(E e3, p1.d dVar) {
        k1.h hVarC = c(e3);
        Throwable th = (Throwable) hVarC.a();
        StackTraceElement[] stackTraceElementArr = (StackTraceElement[]) hVarC.b();
        Throwable thK = k(th);
        if (thK == null) {
            return e3;
        }
        ArrayDeque<StackTraceElement> arrayDequeE = e(dVar);
        if (arrayDequeE.isEmpty()) {
            return e3;
        }
        if (th != e3) {
            i(stackTraceElementArr, arrayDequeE);
        }
        return (E) d(th, thK, arrayDequeE);
    }

    private static final <E extends Throwable> E k(E e3) {
        E e4 = (E) h.g(e3);
        if (e4 == null) {
            return null;
        }
        if ((e3 instanceof d2.s) || w1.g.a(e4.getMessage(), e3.getMessage())) {
            return e4;
        }
        return null;
    }

    public static final <E extends Throwable> E l(E e3) {
        E e4 = (E) e3.getCause();
        if (e4 != null && w1.g.a(e4.getClass(), e3.getClass())) {
            StackTraceElement[] stackTrace = e3.getStackTrace();
            int length = stackTrace.length;
            boolean z2 = false;
            int i3 = 0;
            while (true) {
                if (i3 >= length) {
                    break;
                }
                StackTraceElement stackTraceElement = stackTrace[i3];
                i3++;
                if (h(stackTraceElement)) {
                    z2 = true;
                    break;
                }
            }
            if (z2) {
                return e4;
            }
        }
        return e3;
    }
}
