e$c.smali

.class public final Llh/e$c;
.super Lkotlin/coroutines/jvm/internal/SuspendLambda;
.source "LocationRepoRealImpl.kt"

# interfaces
.implements Lkotlin/jvm/functions/Function2;


# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
    value = Llh/e;->a(Lgh/j;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x19
    name = null
.end annotation

.annotation system Ldalvik/annotation/Signature;
    value = {
        "Lkotlin/coroutines/jvm/internal/SuspendLambda;",
        "Lkotlin/jvm/functions/Function2<",
        "Lkotlinx/coroutines/CoroutineScope;",
        "Lkotlin/coroutines/Continuation<",
        "-",
        "Lkotlin/Unit;",
        ">;",
        "Ljava/lang/Object;",
        ">;"
    }
.end annotation

.annotation runtime Lkotlin/Metadata;
    bv = {
        0x1,
        0x0,
        0x3
    }
    d1 = {
        "\u0000\u000e\n\u0000\n\u0002\u0010\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0002\u0010\u0000\u001a\u00020\u0001*\u00020\u0002H\u008a@\u00a2\u0006\u0004\u0008\u0003\u0010\u0004"
    }
    d2 = {
        "<anonymous>",
        "",
        "Lkotlinx/coroutines/CoroutineScope;",
        "invoke",
        "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;"
    }
    k = 0x3
    mv = {
        0x1,
        0x1,
        0x10
    }
.end annotation

.annotation runtime Lkotlin/coroutines/jvm/internal/DebugMetadata;
    c = "com.shopee.foody.driver.location.repository.LocationRepoRealImpl$obtainSingleLocation$2"
    f = "LocationRepoRealImpl.kt"
    i = {
        0x0,
        0x0
    }
    l = {
        0x3e
    }
    m = "invokeSuspend"
    n = {
        "$this$withTimeout",
        "it"
    }
    s = {
        "L$0",
        "I$2"
    }
.end annotation


# instance fields
.field public a:Lkotlinx/coroutines/CoroutineScope;

.field public b:Ljava/lang/Object;

.field public c:I

.field public d:I

.field public e:I

.field public f:I

.field public final synthetic g:[Llh/b;

.field public final synthetic h:Lkotlinx/coroutines/channels/Channel;


# direct methods
.method static constructor <clinit>()V
    .registers 1

    return-void
.end method

.method public constructor <init>([Llh/b;Lkotlinx/coroutines/channels/Channel;Lkotlin/coroutines/Continuation;)V
    .registers 4

    iput-object p1, p0, Llh/e$c;->g:[Llh/b;

    iput-object p2, p0, Llh/e$c;->h:Lkotlinx/coroutines/channels/Channel;

    const/4 p1, 0x2

    invoke-direct {p0, p1, p3}, Lkotlin/coroutines/jvm/internal/SuspendLambda;-><init>(ILkotlin/coroutines/Continuation;)V

    return-void
.end method


# virtual methods
.method public final create(Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/Object;",
            "Lkotlin/coroutines/Continuation<",
            "*>;)",
            "Lkotlin/coroutines/Continuation<",
            "Lkotlin/Unit;",
            ">;"
        }
    .end annotation

    new-instance v0, Llh/e$c;

    iget-object v1, p0, Llh/e$c;->g:[Llh/b;

    iget-object v2, p0, Llh/e$c;->h:Lkotlinx/coroutines/channels/Channel;

    invoke-direct {v0, v1, v2, p2}, Llh/e$c;-><init>([Llh/b;Lkotlinx/coroutines/channels/Channel;Lkotlin/coroutines/Continuation;)V

    check-cast p1, Lkotlinx/coroutines/CoroutineScope;

    iput-object p1, v0, Llh/e$c;->a:Lkotlinx/coroutines/CoroutineScope;

    return-object v0
.end method

.method public final invoke(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    .registers 3

    check-cast p2, Lkotlin/coroutines/Continuation;

    invoke-virtual {p0, p1, p2}, Llh/e$c;->create(Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;

    move-result-object p1

    check-cast p1, Llh/e$c;

    sget-object p2, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;

    invoke-virtual {p1, p2}, Llh/e$c;->invokeSuspend(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    return-object p1
.end method

.method public final invokeSuspend(Ljava/lang/Object;)Ljava/lang/Object;
    .registers 13

    invoke-static {}, Lkotlin/coroutines/intrinsics/IntrinsicsKt__IntrinsicsKt;->getCOROUTINE_SUSPENDED()Ljava/lang/Object;

    move-result-object v0

    iget v1, p0, Llh/e$c;->f:I

    const/4 v2, 0x1

    const-string v3, "LocationRepoRealImpl"

    if-eqz v1, :cond_2a

    if-ne v1, v2, :cond_22

    iget v1, p0, Llh/e$c;->d:I

    iget v4, p0, Llh/e$c;->c:I

    iget-object v5, p0, Llh/e$c;->b:Ljava/lang/Object;

    check-cast v5, Lkotlinx/coroutines/CoroutineScope;

    :try_start_15
    invoke-static {p1}, Lkotlin/ResultKt;->throwOnFailure(Ljava/lang/Object;)V
    :try_end_18
    .catch Lkotlinx/coroutines/channels/ClosedReceiveChannelException; {:try_start_15 .. :try_end_18} :catch_1f

    move-object v6, v5

    move v5, v4

    move-object v4, v3

    move v3, v1

    move-object v1, v0

    move-object v0, p0

    goto :goto_6c

    :catch_1f
    move-exception p1

    goto/16 :goto_98

    :cond_22
    new-instance p1, Ljava/lang/IllegalStateException;

    const-string v0, "call to \'resume\' before \'invoke\' with coroutine"

    invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_2a
    invoke-static {p1}, Lkotlin/ResultKt;->throwOnFailure(Ljava/lang/Object;)V

    iget-object p1, p0, Llh/e$c;->a:Lkotlinx/coroutines/CoroutineScope;

    iget-object v1, p0, Llh/e$c;->g:[Llh/b;

    array-length v1, v1

    const/4 v4, 0x0

    move-object v5, p1

    move-object p1, p0

    :goto_35
    if-ge v4, v1, :cond_a5

    invoke-static {v4}, Lkotlin/coroutines/jvm/internal/Boxing;->boxInt(I)Ljava/lang/Integer;

    move-result-object v6

    invoke-virtual {v6}, Ljava/lang/Number;->intValue()I

    move-result v6

    iget-object v7, p1, Llh/e$c;->h:Lkotlinx/coroutines/channels/Channel;

    invoke-interface {v7}, Lkotlinx/coroutines/channels/ReceiveChannel;->isClosedForReceive()Z

    move-result v7

    if-eqz v7, :cond_51

    sget-object p1, Lqa/d;->e:Lqa/d$a;

    sget-object v0, Llh/e$c$a;->a:Llh/e$c$a;

    invoke-virtual {p1, v3, v0}, Lqa/d$a;->e(Ljava/lang/String;Lkotlin/jvm/functions/Function0;)V

    sget-object p1, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;

    return-object p1

    :cond_51
    :try_start_51
    iget-object v7, p1, Llh/e$c;->h:Lkotlinx/coroutines/channels/Channel;

    iput-object v5, p1, Llh/e$c;->b:Ljava/lang/Object;

    iput v4, p1, Llh/e$c;->c:I

    iput v1, p1, Llh/e$c;->d:I

    iput v6, p1, Llh/e$c;->e:I

    iput v2, p1, Llh/e$c;->f:I

    invoke-interface {v7, p1}, Lkotlinx/coroutines/channels/ReceiveChannel;->receive(Lkotlin/coroutines/Continuation;)Ljava/lang/Object;

    move-result-object v6
    :try_end_61
    .catch Lkotlinx/coroutines/channels/ClosedReceiveChannelException; {:try_start_51 .. :try_end_61} :catch_1f

    if-ne v6, v0, :cond_64

    return-object v0

    :cond_64
    move-object v10, v0

    move-object v0, p1

    move-object p1, v6

    move-object v6, v5

    move v5, v4

    move-object v4, v3

    move v3, v1

    move-object v1, v10

    :goto_6c
    :try_start_6c
    check-cast p1, Landroid/location/Location;
    :try_end_6e
    .catch Lkotlinx/coroutines/channels/ClosedReceiveChannelException; {:try_start_6c .. :try_end_6e} :catch_96

    if-eqz p1, :cond_85

    sget-object v7, Llh/e;->d:Llh/e;

    invoke-static {v7}, Llh/e;->b(Llh/e;)Llh/a;

    move-result-object v7

    invoke-virtual {v7, p1, v4}, Llh/a;->a(Landroid/location/Location;Ljava/lang/String;)Z

    move-result v7

    sget-object v8, Lqa/d;->e:Lqa/d$a;

    new-instance v9, Llh/e$c$c;

    invoke-direct {v9, p1, v7}, Llh/e$c$c;-><init>(Landroid/location/Location;Z)V

    invoke-virtual {v8, v4, v9}, Lqa/d$a;->c(Ljava/lang/String;Lkotlin/jvm/functions/Function0;)V

    goto :goto_8c

    :cond_85
    sget-object p1, Lqa/d;->e:Lqa/d$a;

    sget-object v7, Llh/e$c$b;->a:Llh/e$c$b;

    invoke-virtual {p1, v4, v7}, Lqa/d$a;->a(Ljava/lang/String;Lkotlin/jvm/functions/Function0;)V

    :goto_8c
    add-int/lit8 p1, v5, 0x1

    move-object v5, v6

    move-object v10, v4

    move v4, p1

    move-object p1, v0

    move-object v0, v1

    move v1, v3

    move-object v3, v10

    goto :goto_35

    :catch_96
    move-exception p1

    move-object v3, v4

    :goto_98
    sget-object v0, Lqa/d;->e:Lqa/d$a;

    new-instance v1, Llh/e$c$d;

    invoke-direct {v1, p1}, Llh/e$c$d;-><init>(Lkotlinx/coroutines/channels/ClosedReceiveChannelException;)V

    invoke-virtual {v0, v3, v1}, Lqa/d$a;->e(Ljava/lang/String;Lkotlin/jvm/functions/Function0;)V

    sget-object p1, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;

    return-object p1

    :cond_a5
    sget-object v0, Lqa/d;->e:Lqa/d$a;

    sget-object v1, Llh/e$c$e;->a:Llh/e$c$e;

    invoke-virtual {v0, v3, v1}, Lqa/d$a;->c(Ljava/lang/String;Lkotlin/jvm/functions/Function0;)V

    sget-object v0, Lgh/d;->g:Lgh/d;

    iget-object p1, p1, Llh/e$c;->h:Lkotlinx/coroutines/channels/Channel;

    const/4 v0, 0x0

    :try_start_b1
    invoke-static {p1, v0, v2, v0}, Lkotlinx/coroutines/channels/SendChannel$DefaultImpls;->close$default(Lkotlinx/coroutines/channels/SendChannel;Ljava/lang/Throwable;ILjava/lang/Object;)Z
    :try_end_b4
    .catchall {:try_start_b1 .. :try_end_b4} :catchall_b5

    goto :goto_c0

    :catchall_b5
    move-exception p1

    sget-object v0, Lqa/d;->e:Lqa/d$a;

    new-instance v1, Lgh/e;

    invoke-direct {v1, p1}, Lgh/e;-><init>(Ljava/lang/Throwable;)V

    invoke-virtual {v0, v3, v1}, Lqa/d$a;->b(Ljava/lang/String;Lkotlin/jvm/functions/Function0;)V

    :goto_c0
    sget-object p1, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;

    return-object p1
.end method