导航菜单

页面标题

页面副标题

Glean v1.1.34 - SensorAsyncTask$readData$1.java 源代码

正在查看: Glean v1.1.34 应用的 SensorAsyncTask$readData$1.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package co.tryterra.terra.fsl;

import android.nfc.Tag;
import android.nfc.tech.NfcV;
import android.util.Log;
import co.tryterra.terra.HTTPRequestClient;
import co.tryterra.terra.TerraManager;
import co.tryterra.terra.backend.models.TerraDeviceData;
import co.tryterra.terra.backend.models.TerraGlucoseData;
import co.tryterra.terra.fsl.FSLUtils;
import co.tryterra.terra.fsl.SensorAsyncTask$readData$1;
import co.tryterra.terra.fsl.models.ActivationTimestampPayload;
import co.tryterra.terra.fsl.models.CalibratedData;
import co.tryterra.terra.fsl.models.CalibrationData;
import co.tryterra.terra.fsl.models.FSLDataStructure;
import co.tryterra.terra.fsl.models.FSLSensorDetails;
import co.tryterra.terra.fsl.models.LogDump;
import com.google.gson.Gson;
import java.io.IOException;
import java.time.Instant;
import java.time.temporal.ChronoUnit;
import java.time.temporal.TemporalUnit;
import java.util.ArrayList;
import java.util.List;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import kotlin.Metadata;
import kotlin.ResultKt;
import kotlin.Unit;
import kotlin.collections.ArraysKt;
import kotlin.collections.CollectionsKt;
import kotlin.coroutines.Continuation;
import kotlin.coroutines.intrinsics.IntrinsicsKt;
import kotlin.coroutines.jvm.internal.Boxing;
import kotlin.coroutines.jvm.internal.DebugMetadata;
import kotlin.coroutines.jvm.internal.SuspendLambda;
import kotlin.internal.ProgressionUtilKt;
import kotlin.jvm.functions.Function1;
import kotlin.jvm.functions.Function2;
import kotlin.jvm.internal.Intrinsics;
import kotlin.jvm.internal.Lambda;
import kotlin.jvm.internal.Ref;
import kotlin.ranges.RangesKt;
import kotlin.text.StringsKt;
import kotlinx.coroutines.CoroutineScope;

@Metadata(d1 = {"\u0000\n\n\u0000\n\u0002\u0010\u0002\n\u0002\u0018\u0002\u0010\u0000\u001a\u00020\u0001*\u00020\u0002H\u008a@"}, d2 = {"<anonymous>", "", "Lkotlinx/coroutines/CoroutineScope;"}, k = 3, mv = {1, 7, 1}, xi = 48)
@DebugMetadata(c = "co.tryterra.terra.fsl.SensorAsyncTask$readData$1", f = "SensorAsyncTask.kt", i = {}, l = {}, m = "invokeSuspend", n = {}, s = {})
final class SensorAsyncTask$readData$1 extends SuspendLambda implements Function2<CoroutineScope, Continuation<? super Unit>, Object> {
    final Function1<FSLSensorDetails, Unit> $completion;
    final Tag $tag;
    int label;
    final SensorAsyncTask this$0;

    @Metadata(k = 3, mv = {1, 7, 1}, xi = 48)
    public class WhenMappings {
        public static final int[] $EnumSwitchMapping$0;

        static {
            int[] iArr = new int[FSLUtils.SensorType.values().length];
            iArr[FSLUtils.SensorType.Libre1.ordinal()] = 1;
            iArr[FSLUtils.SensorType.Libre1New.ordinal()] = 2;
            iArr[FSLUtils.SensorType.LibreProH.ordinal()] = 3;
            iArr[FSLUtils.SensorType.Libre2.ordinal()] = 4;
            iArr[FSLUtils.SensorType.LibreUS14Day.ordinal()] = 5;
            $EnumSwitchMapping$0 = iArr;
        }
    }

    SensorAsyncTask$readData$1(Tag tag, Function1<? super FSLSensorDetails, Unit> function1, SensorAsyncTask sensorAsyncTask, Continuation<? super SensorAsyncTask$readData$1> continuation) {
        super(2, continuation);
        this.$tag = tag;
        this.$completion = function1;
        this.this$0 = sensorAsyncTask;
    }

    public final Continuation<Unit> create(Object obj, Continuation<?> continuation) {
        return new SensorAsyncTask$readData$1(this.$tag, this.$completion, this.this$0, continuation);
    }

    public final Object invoke(CoroutineScope coroutineScope, Continuation<? super Unit> continuation) {
        return create(coroutineScope, continuation).invokeSuspend(Unit.INSTANCE);
    }

    public final Object invokeSuspend(Object obj) {
        byte[] transceiveUntilResponse;
        String str;
        byte[] transceiveUntilResponse2;
        byte[] copyOfRange;
        Gson gson;
        String trimIndent;
        char c;
        char c2;
        int i;
        int i2;
        HTTPRequestClient hTTPRequestClient;
        NfcV nfcV;
        ArrayList<Integer> arrayList;
        ArrayList<Integer> arrayList2;
        int glucoseRaw;
        long epochSecond;
        String str2;
        String str3;
        Gson gson2;
        String trimIndent2;
        String str4;
        int glucoseRaw2;
        byte[] transceiveUntilResponse3;
        Gson gson3;
        String trimIndent3;
        Gson gson4;
        String str5;
        byte[] transceiveUntilResponse4;
        Gson gson5;
        String trimIndent4;
        Gson gson6;
        String trimIndent5;
        Gson gson7;
        String trimIndent6;
        IntrinsicsKt.getCOROUTINE_SUSPENDED();
        if (this.label != 0) {
            throw new IllegalStateException("call to 'resume' before 'invoke' with coroutine");
        }
        ResultKt.throwOnFailure(obj);
        NfcV nfcV2 = NfcV.get(this.$tag);
        Intrinsics.checkNotNullExpressionValue(nfcV2, "get(tag)");
        TerraManager.INSTANCE.getSensorScanning().set(true);
        SensorAsyncTaskKt.tryConnect(nfcV2);
        String str6 = "Failed to encrypt";
        if (!nfcV2.isConnected()) {
            Log.e(SensorAsyncTask.TAG, "Cannot connect to Tag");
            this.$completion.invoke(FSLSensorDetails.INSTANCE.errorReading());
            SensorAsyncTask sensorAsyncTask = this.this$0;
            gson7 = sensorAsyncTask.gson;
            String json = gson7.toJson(new LogDump("", "", String.valueOf(Instant.now().getEpochSecond()), new ArrayList(), new ArrayList(), "Could not connect to tag"));
            Intrinsics.checkNotNullExpressionValue(json, "gson.toJson(LogDump(\"\", …uld not connect to tag\"))");
            String encrypt$TerraAndroid_release = sensorAsyncTask.encrypt$TerraAndroid_release(json);
            if (encrypt$TerraAndroid_release != null && (trimIndent6 = StringsKt.trimIndent(encrypt$TerraAndroid_release)) != null) {
                str6 = trimIndent6;
            }
            SensorAsyncTaskKt.sendLogs(str6);
            return Unit.INSTANCE;
        }
        byte[] id = this.$tag.getId();
        transceiveUntilResponse = SensorAsyncTaskKt.transceiveUntilResponse(nfcV2, new byte[]{2, -95, 7});
        if (transceiveUntilResponse == null) {
            Log.e(SensorAsyncTask.TAG, "Cannot find tag name");
            this.$completion.invoke(FSLSensorDetails.INSTANCE.errorReading());
            SensorAsyncTask sensorAsyncTask2 = this.this$0;
            gson6 = sensorAsyncTask2.gson;
            String json2 = gson6.toJson(new LogDump("", "", String.valueOf(Instant.now().getEpochSecond()), new ArrayList(), new ArrayList(), "Could not get patch info"));
            Intrinsics.checkNotNullExpressionValue(json2, "gson.toJson(LogDump(\"\", …uld not get patch info\"))");
            String encrypt$TerraAndroid_release2 = sensorAsyncTask2.encrypt$TerraAndroid_release(json2);
            if (encrypt$TerraAndroid_release2 != null && (trimIndent5 = StringsKt.trimIndent(encrypt$TerraAndroid_release2)) != null) {
                str6 = trimIndent5;
            }
            SensorAsyncTaskKt.sendLogs(str6);
            return Unit.INSTANCE;
        }
        byte[] copyOfRange2 = ArraysKt.copyOfRange(transceiveUntilResponse, 1, transceiveUntilResponse.length);
        FSLUtils.SensorType sensorType = FSLUtils.getSensorType(copyOfRange2);
        byte[] bArr = {2, 35, 0, 1};
        byte b = 2;
        if (sensorType != FSLUtils.SensorType.Libre2) {
            str = "Failed to encrypt";
            transceiveUntilResponse2 = SensorAsyncTaskKt.transceiveUntilResponse(nfcV2, bArr);
            if (transceiveUntilResponse2 == null) {
                this.$completion.invoke(FSLSensorDetails.INSTANCE.errorReading());
                SensorAsyncTask sensorAsyncTask3 = this.this$0;
                gson = sensorAsyncTask3.gson;
                String json3 = gson.toJson(new LogDump("", "", String.valueOf(Instant.now().getEpochSecond()), new ArrayList(), new ArrayList(), "Failed status check (Not Libre 2)"));
                Intrinsics.checkNotNullExpressionValue(json3, "gson.toJson(LogDump(\"\", …s check (Not Libre 2)\" ))");
                String encrypt$TerraAndroid_release3 = sensorAsyncTask3.encrypt$TerraAndroid_release(json3);
                SensorAsyncTaskKt.sendLogs((encrypt$TerraAndroid_release3 == null || (trimIndent = StringsKt.trimIndent(encrypt$TerraAndroid_release3)) == null) ? str : trimIndent);
                return Unit.INSTANCE;
            }
            copyOfRange = ArraysKt.copyOfRange(transceiveUntilResponse2, 1, transceiveUntilResponse2.length);
        } else {
            copyOfRange = new byte[360];
            int progressionLastElement = ProgressionUtilKt.getProgressionLastElement(0, 43, 3);
            if (progressionLastElement >= 0) {
                int i3 = 0;
                while (true) {
                    str = str6;
                    transceiveUntilResponse4 = SensorAsyncTaskKt.transceiveUntilResponse(nfcV2, new byte[]{2, 35, (byte) i3, (byte) (((i3 == 42 && Intrinsics.areEqual(sensorType.name(), "Libre2")) ? 1 : 3) - 1)});
                    if (transceiveUntilResponse4 == null) {
                        this.$completion.invoke(FSLSensorDetails.INSTANCE.errorReading());
                        SensorAsyncTask sensorAsyncTask4 = this.this$0;
                        gson5 = sensorAsyncTask4.gson;
                        String json4 = gson5.toJson(new LogDump("", "", String.valueOf(Instant.now().getEpochSecond()), new ArrayList(), new ArrayList(), "Disconnected mid reading block " + i3 + " for status check"));
                        Intrinsics.checkNotNullExpressionValue(json4, "gson.toJson(LogDump(\"\", …k $i for status check\" ))");
                        String encrypt$TerraAndroid_release4 = sensorAsyncTask4.encrypt$TerraAndroid_release(json4);
                        SensorAsyncTaskKt.sendLogs((encrypt$TerraAndroid_release4 == null || (trimIndent4 = StringsKt.trimIndent(encrypt$TerraAndroid_release4)) == null) ? str : trimIndent4);
                        return Unit.INSTANCE;
                    }
                    System.arraycopy(transceiveUntilResponse4, 1, copyOfRange, i3 * 8, transceiveUntilResponse4.length - 1);
                    ArrayList<Byte> decodeFRAM = FSLUtils.decodeFRAM(sensorType, id, copyOfRange2, copyOfRange);
                    Intrinsics.checkNotNullExpressionValue(decodeFRAM, "decodeFRAM(sensorType, uid, patchInfo, status)");
                    copyOfRange = CollectionsKt.toByteArray(decodeFRAM);
                    if (i3 == progressionLastElement) {
                        break;
                    }
                    i3 += 3;
                    str6 = str;
                }
            } else {
                str = "Failed to encrypt";
            }
        }
        if (copyOfRange[4] == 1) {
            byte[] bArr2 = new byte[0];
            int i4 = sensorType == null ? -1 : WhenMappings.$EnumSwitchMapping$0[sensorType.ordinal()];
            if (i4 == 1 || i4 == 2) {
                Log.d(SensorAsyncTask.TAG, "Activating Libre 1");
                bArr2 = new byte[]{2, -96, id[6], -62, -83, 117, 33};
            } else if (i4 == 3) {
                Log.d(SensorAsyncTask.TAG, "Activating Libre Pro");
                byte[] transceive = nfcV2.transceive(new byte[]{2, 35, 2, 1});
                byte b2 = id[6];
                byte[] bArr3 = {2, -80, b2, -33, 4};
                Intrinsics.checkNotNullExpressionValue(transceive, "serial");
                bArr2 = ArraysKt.plus(new byte[]{2, -96, b2, -62, -83, 0, -112}, ArraysKt.copyOfRange(transceive, 1, transceive.length));
                nfcV2.transceive(bArr3);
                nfcV2.transceive(new byte[]{2, -92, b2, -62, -83, 0, -112});
                nfcV2.transceive(new byte[]{2, -79, b2, -33, 4, 32, 0, -33, -120, 0, 0, 0, 0});
                nfcV2.transceive(new byte[]{2, -94, b2, -62, -83, 0, -112});
                nfcV2.transceive(bArr3);
            } else if (i4 == 4 || i4 == 5) {
                Log.d(SensorAsyncTask.TAG, "Activating Libre 2");
                byte[] bArr4 = {2, -95, id[6]};
                byte[] activateParameters = FSLUtils.activateParameters(id);
                Intrinsics.checkNotNullExpressionValue(activateParameters, "activateParameters(uid)");
                bArr2 = ArraysKt.plus(bArr4, activateParameters);
            } else {
                Log.e(SensorAsyncTask.TAG, "Sensor type not supported for unlock");
            }
            try {
                nfcV2.transceive(bArr2);
            } catch (IOException e) {
                SensorAsyncTask sensorAsyncTask5 = this.this$0;
                gson4 = this.this$0.gson;
                String json5 = gson4.toJson(new LogDump("", "", String.valueOf(Instant.now().getEpochSecond()), new ArrayList(), new ArrayList(), "Failed activation for sensor " + sensorType + ", " + e.getMessage()));
                Intrinsics.checkNotNullExpressionValue(json5, "gson.toJson(LogDump(\"\", …nsorType, ${e.message}\"))");
                String encrypt$TerraAndroid_release5 = sensorAsyncTask5.encrypt$TerraAndroid_release(json5);
                if (encrypt$TerraAndroid_release5 == null || (str5 = StringsKt.trimIndent(encrypt$TerraAndroid_release5)) == null) {
                    str5 = str;
                }
                SensorAsyncTaskKt.sendLogs(str5);
                Log.e(SensorAsyncTask.TAG, String.valueOf(e.getMessage()));
            }
        }
        final Ref.ObjectRef objectRef = new Ref.ObjectRef();
        objectRef.element = new byte[6120];
        int progressionLastElement2 = ProgressionUtilKt.getProgressionLastElement(0, sensorType != FSLUtils.SensorType.LibreProH ? 67 : 46, 3);
        if (progressionLastElement2 >= 0) {
            int i5 = 0;
            while (true) {
                int i6 = (i5 == 42 && Intrinsics.areEqual(sensorType.name(), "Libre2")) ? 1 : 3;
                if (i5 == 45 && Intrinsics.areEqual(sensorType.name(), "Pro/H")) {
                    i6 = 1;
                }
                c = 4;
                byte[] bArr5 = new byte[4];
                bArr5[0] = b;
                bArr5[1] = 35;
                bArr5[b] = (byte) i5;
                bArr5[3] = (byte) (i6 - 1);
                transceiveUntilResponse3 = SensorAsyncTaskKt.transceiveUntilResponse(nfcV2, bArr5);
                if (transceiveUntilResponse3 == null) {
                    this.$completion.invoke(FSLSensorDetails.INSTANCE.errorReading());
                    SensorAsyncTask sensorAsyncTask6 = this.this$0;
                    gson3 = sensorAsyncTask6.gson;
                    String json6 = gson3.toJson(new LogDump("", "", String.valueOf(Instant.now().getEpochSecond()), new ArrayList(), new ArrayList(), "Failed mid reading data at block " + i5));
                    Intrinsics.checkNotNullExpressionValue(json6, "gson.toJson(LogDump(\"\", …ading data at block $i\"))");
                    String encrypt$TerraAndroid_release6 = sensorAsyncTask6.encrypt$TerraAndroid_release(json6);
                    SensorAsyncTaskKt.sendLogs((encrypt$TerraAndroid_release6 == null || (trimIndent3 = StringsKt.trimIndent(encrypt$TerraAndroid_release6)) == null) ? str : trimIndent3);
                    return Unit.INSTANCE;
                }
                System.arraycopy(transceiveUntilResponse3, 1, objectRef.element, i5 * 8, transceiveUntilResponse3.length - 1);
                if (i5 == progressionLastElement2) {
                    break;
                }
                i5 += 3;
                b = 2;
            }
        } else {
            c = 4;
        }
        if (sensorType == FSLUtils.SensorType.Libre2 || sensorType == FSLUtils.SensorType.LibreUS14Day) {
            ArrayList<Byte> decodeFRAM2 = FSLUtils.decodeFRAM(sensorType, id, copyOfRange2, ArraysKt.copyOfRange((byte[]) objectRef.element, 0, 360));
            Intrinsics.checkNotNullExpressionValue(decodeFRAM2, "decodeFRAM(sensorType, u…data.copyOfRange(0, 360))");
            objectRef.element = CollectionsKt.toByteArray(decodeFRAM2);
        }
        if (sensorType == FSLUtils.SensorType.LibreProH) {
            objectRef.element = CollectionsKt.toByteArray(ArraysKt.slice((byte[]) objectRef.element, RangesKt.until(0, 368)));
            int i7 = ((((byte[]) objectRef.element)[78] & 255) + ((((byte[]) objectRef.element)[79] & 255) << 8)) * 6;
            int i8 = i7 % 8;
            int i9 = i7 / 8;
            int max = Integer.max(0, i9 - 96);
            i = 0;
            c2 = 4;
            objectRef.element = ArraysKt.plus((byte[]) objectRef.element, ArraysKt.plus(new byte[max > 0 ? max * 8 : 0], SensorAsyncTaskKt.readBlocks$default(nfcV2, id[6], max + 46, Integer.min(i8 == 0 ? 72 : 73, Integer.max(i9 - 23, 0)), 0, 8, null)));
        } else {
            c2 = c;
            i = 0;
        }
        final String decodeSerialNumber = FSLUtils.decodeSerialNumber(id, sensorType);
        final TerraDeviceData terraDeviceData = new TerraDeviceData(null, "Abbott", decodeSerialNumber, null, sensorType.name(), null, null, 105, null);
        HTTPRequestClient build = new HTTPRequestClient.Builder().setUrl("https://api.tryterra.co/v2/serial?serial=" + decodeSerialNumber).withInput(ActivationTimestampPayload.class).build();
        if (!FSLUtils.isSensorReady(((byte[]) objectRef.element)[c2])) {
            Log.e(SensorAsyncTask.TAG, "Sensor is not ready, Ignoring reading!");
            Function1<FSLSensorDetails, Unit> function1 = this.$completion;
            String sensorState = FSLUtils.sensorState(((byte[]) objectRef.element)[c2]);
            Intrinsics.checkNotNullExpressionValue(sensorState, "sensorState(data[4])");
            Intrinsics.checkNotNullExpressionValue(decodeSerialNumber, "serialNumber");
            function1.invoke(new FSLSensorDetails(sensorState, "error", decodeSerialNumber, null, null, terraDeviceData, 24, null));
            nfcV = nfcV2;
        } else {
            byte b3 = ((byte[]) objectRef.element)[26];
            byte b4 = ((byte[]) objectRef.element)[27];
            FSLPro fSLPro = new FSLPro((byte[]) objectRef.element);
            if (sensorType == FSLUtils.SensorType.LibreProH) {
                i2 = fSLPro.getAge();
            } else {
                i2 = (((byte[]) objectRef.element)[317] * 256) + ((byte[]) objectRef.element)[316];
            }
            final int i10 = i2;
            if (sensorType != FSLUtils.SensorType.LibreProH) {
                ArrayList<Integer> arrayList3 = new ArrayList<>(32);
                for (int i11 = 32; i < i11; i11 = 32) {
                    int i12 = b4 - i;
                    int i13 = i12 - 1;
                    if (i13 < 0) {
                        i13 = i12 + 31;
                    }
                    int i14 = i13 * 6;
                    HTTPRequestClient hTTPRequestClient2 = build;
                    glucoseRaw2 = this.this$0.getGlucoseRaw(new byte[]{((byte[]) objectRef.element)[i14 + 125], ((byte[]) objectRef.element)[i14 + SensorAsyncTask.HISTORY_START]});
                    arrayList3.add(Boxing.boxInt(glucoseRaw2));
                    i++;
                    b4 = b4;
                    build = hTTPRequestClient2;
                    nfcV2 = nfcV2;
                }
                hTTPRequestClient = build;
                nfcV = nfcV2;
                arrayList = arrayList3;
            } else {
                hTTPRequestClient = build;
                nfcV = nfcV2;
                arrayList = fSLPro.getGlucose().get(i);
            }
            ArrayList<Integer> arrayList4 = new ArrayList<>();
            if (sensorType == FSLUtils.SensorType.LibreProH) {
                arrayList2 = fSLPro.getGlucose().get(1);
            } else {
                int i15 = 0;
                while (i15 < 16) {
                    int i16 = b3 - i15;
                    int i17 = i16 - 1;
                    if (i17 < 0) {
                        i17 = i16 + 15;
                    }
                    int i18 = i17 * 6;
                    byte b5 = b3;
                    glucoseRaw = this.this$0.getGlucoseRaw(new byte[]{((byte[]) objectRef.element)[i18 + 29], ((byte[]) objectRef.element)[i18 + 28]});
                    arrayList4.add(Boxing.boxInt(glucoseRaw));
                    i15++;
                    b3 = b5;
                }
                arrayList2 = arrayList4;
            }
            Instant truncatedTo = Instant.now().truncatedTo(ChronoUnit.MINUTES);
            int i19 = ((i10 - 3) % 15) + 3;
            if ((sensorType == FSLUtils.SensorType.LibreProH ? (i10 - 3) / 15 : ((i10 - 3) / 15) % 32) == (sensorType != FSLUtils.SensorType.LibreProH ? ((byte[]) objectRef.element)[3] : (((byte[]) objectRef.element)[78] & 255) + ((((byte[]) objectRef.element)[79] & 255) << 8))) {
                epochSecond = truncatedTo.minus(i19, (TemporalUnit) ChronoUnit.MINUTES).getEpochSecond();
            } else {
                epochSecond = truncatedTo.minus(r10 + 18, (TemporalUnit) ChronoUnit.MINUTES).getEpochSecond();
            }
            String sensorVersion = sensorType.sensorVersion();
            ArrayList<Integer> arrayList5 = arrayList2;
            Intrinsics.checkNotNullExpressionValue(sensorVersion, "sensorType.sensorVersion()");
            String decodeSerialNumber2 = FSLUtils.decodeSerialNumber(id, sensorType);
            Intrinsics.checkNotNullExpressionValue(decodeSerialNumber2, "decodeSerialNumber(uid, sensorType)");
            String sensorState2 = FSLUtils.sensorState(((byte[]) objectRef.element)[c2]);
            ArrayList<Integer> arrayList6 = arrayList;
            Intrinsics.checkNotNullExpressionValue(sensorState2, "sensorState(data[4])");
            final FSLDataStructure fSLDataStructure = new FSLDataStructure(CollectionsKt.toList(arrayList), CollectionsKt.toList(arrayList2), i10 * 60, sensorVersion, 0L, 0, epochSecond, decodeSerialNumber2, sensorState2, 48, null);
            if (sensorType == FSLUtils.SensorType.LibreProH && !fSLPro.getIsCalibrated()) {
                String byteArrayToHex = SensorAsyncTask.INSTANCE.byteArrayToHex((byte[]) objectRef.element);
                Intrinsics.checkNotNullExpressionValue(decodeSerialNumber, "serialNumber");
                CalibrationData calibrationData = new CalibrationData(byteArrayToHex, decodeSerialNumber);
                SensorAsyncTask sensorAsyncTask7 = this.this$0;
                str4 = sensorAsyncTask7.devId;
                sensorAsyncTask7.sendToCalibrate(calibrationData, str4, new AnonymousClass1(terraDeviceData, i10, fSLDataStructure, this.this$0, this.$completion, objectRef, decodeSerialNumber));
            } else if (sensorType == FSLUtils.SensorType.Libre1 || sensorType == FSLUtils.SensorType.Libre1New) {
                String byteArrayToHex2 = SensorAsyncTask.INSTANCE.byteArrayToHex((byte[]) objectRef.element);
                Intrinsics.checkNotNullExpressionValue(decodeSerialNumber, "serialNumber");
                CalibrationData calibrationData2 = new CalibrationData(byteArrayToHex2, decodeSerialNumber);
                SensorAsyncTask sensorAsyncTask8 = this.this$0;
                str2 = sensorAsyncTask8.devId;
                sensorAsyncTask8.sendToCalibrateOne(calibrationData2, str2, new AnonymousClass2(terraDeviceData, i10, fSLDataStructure, this.this$0, this.$completion, objectRef, decodeSerialNumber));
            } else {
                SensorAsyncTask sensorAsyncTask9 = this.this$0;
                str3 = sensorAsyncTask9.devId;
                sensorAsyncTask9.postData(fSLDataStructure, str3);
                final Function1<FSLSensorDetails, Unit> function12 = this.$completion;
                hTTPRequestClient.getResponseFromRequest(new Function1<Object, Unit>() {
                    {
                        super(1);
                    }

                    public Object invoke(Object obj2) {
                        m499invoke(obj2);
                        return Unit.INSTANCE;
                    }

                    public final void m499invoke(Object obj2) {
                        ActivationTimestampPayload activationTimestampPayload = obj2 instanceof ActivationTimestampPayload ? (ActivationTimestampPayload) obj2 : null;
                        String activation_timestamp = activationTimestampPayload != null ? activationTimestampPayload.getActivation_timestamp() : null;
                        TerraDeviceData terraDeviceData2 = TerraDeviceData.this;
                        String str7 = activation_timestamp;
                        if (str7 == null || str7.length() == 0 || Intrinsics.areEqual(activation_timestamp, "null")) {
                            activation_timestamp = Instant.now().minusSeconds(i10 * 60).toString();
                        }
                        terraDeviceData2.setActivation_timestamp(activation_timestamp);
                        Function1<FSLSensorDetails, Unit> function13 = function12;
                        String sensorState3 = FSLUtils.sensorState(((byte[]) objectRef.element)[4]);
                        Intrinsics.checkNotNullExpressionValue(sensorState3, "sensorState(data[4])");
                        String str8 = decodeSerialNumber;
                        Intrinsics.checkNotNullExpressionValue(str8, "serialNumber");
                        TerraGlucoseData convertPayloadToTerraPayload = FSLUtils.convertPayloadToTerraPayload(fSLDataStructure);
                        Intrinsics.checkNotNullExpressionValue(convertPayloadToTerraPayload, "convertPayloadToTerraPayload(formattedData)");
                        function13.invoke(new FSLSensorDetails(sensorState3, "success", str8, convertPayloadToTerraPayload, TerraDeviceData.this));
                    }
                });
            }
            SensorAsyncTask sensorAsyncTask10 = this.this$0;
            gson2 = sensorAsyncTask10.gson;
            String byteArrayToHex3 = SensorAsyncTask.INSTANCE.byteArrayToHex((byte[]) objectRef.element);
            Intrinsics.checkNotNullExpressionValue(decodeSerialNumber, "serialNumber");
            String instant = Instant.ofEpochSecond(epochSecond).toString();
            Intrinsics.checkNotNullExpressionValue(instant, "ofEpochSecond(timestampN…tHistoryValue).toString()");
            String json7 = gson2.toJson(new LogDump(byteArrayToHex3, decodeSerialNumber, instant, arrayList6, arrayList5, null, 32, null));
            Intrinsics.checkNotNullExpressionValue(json7, "gson.toJson(LogDump(byte…eHistory, glucoseTrend ))");
            String encrypt$TerraAndroid_release7 = sensorAsyncTask10.encrypt$TerraAndroid_release(json7);
            SensorAsyncTaskKt.sendLogs((encrypt$TerraAndroid_release7 == null || (trimIndent2 = StringsKt.trimIndent(encrypt$TerraAndroid_release7)) == null) ? str : trimIndent2);
        }
        nfcV.close();
        return Unit.INSTANCE;
    }

    @Metadata(d1 = {"\u0000\u000e\n\u0000\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\u0010\u0000\u001a\u00020\u00012\b\u0010\u0002\u001a\u0004\u0018\u00010\u0003H\n¢\u0006\u0002\b\u0004"}, d2 = {"<anonymous>", "", "calibratedData", "Lco/tryterra/terra/fsl/models/CalibratedData;", "invoke"}, k = 3, mv = {1, 7, 1}, xi = 48)
    static final class AnonymousClass1 extends Lambda implements Function1<CalibratedData, Unit> {
        final Function1<FSLSensorDetails, Unit> $completion;
        final Ref.ObjectRef<byte[]> $data;
        final TerraDeviceData $deviceData;
        final FSLDataStructure $formattedData;
        final int $sensorTime;
        final String $serialNumber;
        final SensorAsyncTask this$0;

        AnonymousClass1(TerraDeviceData terraDeviceData, int i, FSLDataStructure fSLDataStructure, SensorAsyncTask sensorAsyncTask, Function1<? super FSLSensorDetails, Unit> function1, Ref.ObjectRef<byte[]> objectRef, String str) {
            super(1);
            this.$deviceData = terraDeviceData;
            this.$sensorTime = i;
            this.$formattedData = fSLDataStructure;
            this.this$0 = sensorAsyncTask;
            this.$completion = function1;
            this.$data = objectRef;
            this.$serialNumber = str;
        }

        public Object invoke(Object obj) {
            invoke((CalibratedData) obj);
            return Unit.INSTANCE;
        }

        public final void invoke(CalibratedData calibratedData) {
            List history;
            List trend;
            String str;
            this.$deviceData.setActivation_timestamp((calibratedData != null ? calibratedData.getActivationTimestamp() : null) != null ? calibratedData.getActivationTimestamp() : Instant.now().minusSeconds(this.$sensorTime * 60).toString());
            FSLDataStructure fSLDataStructure = this.$formattedData;
            if (calibratedData == null || (history = calibratedData.getData()) == null) {
                history = this.$formattedData.getHistory();
            }
            Stream stream = history.stream();
            final C00101 c00101 = new Function1<?, Integer>() {
                public final Integer m491invoke(Object obj) {
                    return Integer.valueOf(((Number) obj).intValue());
                }
            };
            Object collect = stream.map(new Function() {
                @Override
                public final Object apply(Object obj) {
                    Integer m489invoke$lambda0;
                    m489invoke$lambda0 = SensorAsyncTask$readData$1.AnonymousClass1.m489invoke$lambda0(c00101, obj);
                    return m489invoke$lambda0;
                }
            }).collect(Collectors.toList());
            Intrinsics.checkNotNullExpressionValue(collect, "calibratedData?.data ?: …     Collectors.toList())");
            fSLDataStructure.setHistory((List) collect);
            FSLDataStructure fSLDataStructure2 = this.$formattedData;
            if (calibratedData == null || (trend = calibratedData.getTrend()) == null) {
                trend = this.$formattedData.getTrend();
            }
            Stream stream2 = trend.stream();
            final AnonymousClass2 anonymousClass2 = new Function1<?, Integer>() {
                public final Integer m492invoke(Object obj) {
                    return Integer.valueOf(((Number) obj).intValue());
                }
            };
            Object collect2 = stream2.map(new Function() {
                @Override
                public final Object apply(Object obj) {
                    Integer m490invoke$lambda1;
                    m490invoke$lambda1 = SensorAsyncTask$readData$1.AnonymousClass1.m490invoke$lambda1(anonymousClass2, obj);
                    return m490invoke$lambda1;
                }
            }).collect(Collectors.toList());
            Intrinsics.checkNotNullExpressionValue(collect2, "calibratedData?.trend ?:…     Collectors.toList())");
            fSLDataStructure2.setTrend((List) collect2);
            SensorAsyncTask sensorAsyncTask = this.this$0;
            FSLDataStructure fSLDataStructure3 = this.$formattedData;
            str = sensorAsyncTask.devId;
            sensorAsyncTask.postData(fSLDataStructure3, str);
            Function1<FSLSensorDetails, Unit> function1 = this.$completion;
            String sensorState = FSLUtils.sensorState(((byte[]) this.$data.element)[4]);
            Intrinsics.checkNotNullExpressionValue(sensorState, "sensorState(data[4])");
            String str2 = this.$serialNumber;
            Intrinsics.checkNotNullExpressionValue(str2, "serialNumber");
            TerraGlucoseData convertPayloadToTerraPayload = FSLUtils.convertPayloadToTerraPayload(this.$formattedData);
            Intrinsics.checkNotNullExpressionValue(convertPayloadToTerraPayload, "convertPayloadToTerraPayload(formattedData)");
            function1.invoke(new FSLSensorDetails(sensorState, "success", str2, convertPayloadToTerraPayload, this.$deviceData));
        }

        public static final Integer m489invoke$lambda0(Function1 function1, Object obj) {
            Intrinsics.checkNotNullParameter(function1, "$tmp0");
            return (Integer) function1.invoke(obj);
        }

        public static final Integer m490invoke$lambda1(Function1 function1, Object obj) {
            Intrinsics.checkNotNullParameter(function1, "$tmp0");
            return (Integer) function1.invoke(obj);
        }
    }

    @Metadata(d1 = {"\u0000\u000e\n\u0000\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\u0010\u0000\u001a\u00020\u00012\b\u0010\u0002\u001a\u0004\u0018\u00010\u0003H\n¢\u0006\u0002\b\u0004"}, d2 = {"<anonymous>", "", "calibratedData", "Lco/tryterra/terra/fsl/models/CalibratedData;", "invoke"}, k = 3, mv = {1, 7, 1}, xi = 48)
    static final class AnonymousClass2 extends Lambda implements Function1<CalibratedData, Unit> {
        final Function1<FSLSensorDetails, Unit> $completion;
        final Ref.ObjectRef<byte[]> $data;
        final TerraDeviceData $deviceData;
        final FSLDataStructure $formattedData;
        final int $sensorTime;
        final String $serialNumber;
        final SensorAsyncTask this$0;

        AnonymousClass2(TerraDeviceData terraDeviceData, int i, FSLDataStructure fSLDataStructure, SensorAsyncTask sensorAsyncTask, Function1<? super FSLSensorDetails, Unit> function1, Ref.ObjectRef<byte[]> objectRef, String str) {
            super(1);
            this.$deviceData = terraDeviceData;
            this.$sensorTime = i;
            this.$formattedData = fSLDataStructure;
            this.this$0 = sensorAsyncTask;
            this.$completion = function1;
            this.$data = objectRef;
            this.$serialNumber = str;
        }

        public Object invoke(Object obj) {
            invoke((CalibratedData) obj);
            return Unit.INSTANCE;
        }

        public final void invoke(CalibratedData calibratedData) {
            List history;
            List trend;
            String str;
            this.$deviceData.setActivation_timestamp((calibratedData != null ? calibratedData.getActivationTimestamp() : null) != null ? calibratedData.getActivationTimestamp() : Instant.now().minusSeconds(this.$sensorTime * 60).toString());
            FSLDataStructure fSLDataStructure = this.$formattedData;
            if (calibratedData == null || (history = calibratedData.getData()) == null) {
                history = this.$formattedData.getHistory();
            }
            Stream stream = history.stream();
            final AnonymousClass1 anonymousClass1 = new Function1<?, Integer>() {
                public final Integer m497invoke(Object obj) {
                    return Integer.valueOf(((Number) obj).intValue());
                }
            };
            Object collect = stream.map(new Function() {
                @Override
                public final Object apply(Object obj) {
                    Integer m495invoke$lambda0;
                    m495invoke$lambda0 = SensorAsyncTask$readData$1.AnonymousClass2.m495invoke$lambda0(anonymousClass1, obj);
                    return m495invoke$lambda0;
                }
            }).collect(Collectors.toList());
            Intrinsics.checkNotNullExpressionValue(collect, "calibratedData?.data ?: …lect(Collectors.toList())");
            fSLDataStructure.setHistory((List) collect);
            FSLDataStructure fSLDataStructure2 = this.$formattedData;
            if (calibratedData == null || (trend = calibratedData.getTrend()) == null) {
                trend = this.$formattedData.getTrend();
            }
            Stream stream2 = trend.stream();
            final C00112 c00112 = new Function1<?, Integer>() {
                public final Integer m498invoke(Object obj) {
                    return Integer.valueOf(((Number) obj).intValue());
                }
            };
            Object collect2 = stream2.map(new Function() {
                @Override
                public final Object apply(Object obj) {
                    Integer m496invoke$lambda1;
                    m496invoke$lambda1 = SensorAsyncTask$readData$1.AnonymousClass2.m496invoke$lambda1(c00112, obj);
                    return m496invoke$lambda1;
                }
            }).collect(Collectors.toList());
            Intrinsics.checkNotNullExpressionValue(collect2, "calibratedData?.trend ?:…     Collectors.toList())");
            fSLDataStructure2.setTrend((List) collect2);
            SensorAsyncTask sensorAsyncTask = this.this$0;
            FSLDataStructure fSLDataStructure3 = this.$formattedData;
            str = sensorAsyncTask.devId;
            sensorAsyncTask.postData(fSLDataStructure3, str);
            Function1<FSLSensorDetails, Unit> function1 = this.$completion;
            String sensorState = FSLUtils.sensorState(((byte[]) this.$data.element)[4]);
            Intrinsics.checkNotNullExpressionValue(sensorState, "sensorState(data[4])");
            String str2 = this.$serialNumber;
            Intrinsics.checkNotNullExpressionValue(str2, "serialNumber");
            TerraGlucoseData convertPayloadToTerraPayload = FSLUtils.convertPayloadToTerraPayload(this.$formattedData);
            Intrinsics.checkNotNullExpressionValue(convertPayloadToTerraPayload, "convertPayloadToTerraPayload(formattedData)");
            function1.invoke(new FSLSensorDetails(sensorState, "success", str2, convertPayloadToTerraPayload, this.$deviceData));
        }

        public static final Integer m495invoke$lambda0(Function1 function1, Object obj) {
            Intrinsics.checkNotNullParameter(function1, "$tmp0");
            return (Integer) function1.invoke(obj);
        }

        public static final Integer m496invoke$lambda1(Function1 function1, Object obj) {
            Intrinsics.checkNotNullParameter(function1, "$tmp0");
            return (Integer) function1.invoke(obj);
        }
    }
}