package com.facebook.appevents.suggestedevents; import android.util.Patterns; import com.applovin.sdk.AppLovinEventTypes; import com.facebook.appevents.internal.ViewHierarchyConstants; import com.facebook.internal.instrument.crashshield.CrashShieldHandler; import com.ironsource.v8; import com.ironsource.zm; import com.mbridge.msdk.foundation.entity.CampaignEx; import java.io.File; import java.io.FileInputStream; import java.util.Map; import java.util.regex.Pattern; import kotlin.TuplesKt; import kotlin.collections.MapsKt__MapsKt; import kotlin.jvm.internal.Intrinsics; import kotlin.text.Charsets; import kotlin.text.StringsKt__StringsKt; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; /* loaded from: classes2.dex */ public final class FeatureExtractor { public static final FeatureExtractor INSTANCE = new FeatureExtractor(); private static final int NUM_OF_FEATURES = 30; private static final String REGEX_ADD_TO_CART_BUTTON_TEXT = "(?i)add to(\\s|\\Z)|update(\\s|\\Z)|cart"; private static final String REGEX_ADD_TO_CART_PAGE_TITLE = "(?i)add to(\\s|\\Z)|update(\\s|\\Z)|cart|shop|buy"; private static final String REGEX_CR_HAS_CONFIRM_PASSWORD_FIELD = "(?i)(confirm.*password)|(password.*(confirmation|confirm)|confirmation)"; private static final String REGEX_CR_HAS_LOG_IN_KEYWORDS = "(?i)(sign in)|login|signIn"; private static final String REGEX_CR_HAS_SIGN_ON_KEYWORDS = "(?i)(sign.*(up|now)|registration|register|(create|apply).*(profile|account)|open.*account|account.*(open|creation|application)|enroll|join.*now)"; private static final String REGEX_CR_PASSWORD_FIELD = "password"; private static Map eventInfo; private static boolean initialized; private static Map languageInfo; private static JSONObject rules; private static Map textTypeInfo; private FeatureExtractor() { } public static final boolean isInitialized() { if (CrashShieldHandler.isObjectCrashing(FeatureExtractor.class)) { return false; } try { return initialized; } catch (Throwable th) { CrashShieldHandler.handleThrowable(th, FeatureExtractor.class); return false; } } public static final void initialize(File file) { Map mapOf; Map mapOf2; Map mapOf3; if (CrashShieldHandler.isObjectCrashing(FeatureExtractor.class)) { return; } try { try { rules = new JSONObject(); FileInputStream fileInputStream = new FileInputStream(file); byte[] bArr = new byte[fileInputStream.available()]; fileInputStream.read(bArr); fileInputStream.close(); rules = new JSONObject(new String(bArr, Charsets.UTF_8)); mapOf = MapsKt__MapsKt.mapOf(TuplesKt.to(ViewHierarchyConstants.ENGLISH, "1"), TuplesKt.to(ViewHierarchyConstants.GERMAN, "2"), TuplesKt.to(ViewHierarchyConstants.SPANISH, "3"), TuplesKt.to(ViewHierarchyConstants.JAPANESE, "4")); languageInfo = mapOf; mapOf2 = MapsKt__MapsKt.mapOf(TuplesKt.to(ViewHierarchyConstants.VIEW_CONTENT, "0"), TuplesKt.to(ViewHierarchyConstants.SEARCH, "1"), TuplesKt.to(ViewHierarchyConstants.ADD_TO_CART, "2"), TuplesKt.to(ViewHierarchyConstants.ADD_TO_WISHLIST, "3"), TuplesKt.to(ViewHierarchyConstants.INITIATE_CHECKOUT, "4"), TuplesKt.to(ViewHierarchyConstants.ADD_PAYMENT_INFO, CampaignEx.CLICKMODE_ON), TuplesKt.to(ViewHierarchyConstants.PURCHASE, "6"), TuplesKt.to(ViewHierarchyConstants.LEAD, zm.e), TuplesKt.to(ViewHierarchyConstants.COMPLETE_REGISTRATION, "8")); eventInfo = mapOf2; mapOf3 = MapsKt__MapsKt.mapOf(TuplesKt.to(ViewHierarchyConstants.BUTTON_TEXT, "1"), TuplesKt.to(ViewHierarchyConstants.PAGE_TITLE, "2"), TuplesKt.to(ViewHierarchyConstants.RESOLVED_DOCUMENT_LINK, "3"), TuplesKt.to(ViewHierarchyConstants.BUTTON_ID, "4")); textTypeInfo = mapOf3; initialized = true; } catch (Throwable th) { CrashShieldHandler.handleThrowable(th, FeatureExtractor.class); } } catch (Exception unused) { } } public static final String getTextFeature(String buttonText, String activityName, String appName) { if (CrashShieldHandler.isObjectCrashing(FeatureExtractor.class)) { return null; } try { Intrinsics.checkNotNullParameter(buttonText, "buttonText"); Intrinsics.checkNotNullParameter(activityName, "activityName"); Intrinsics.checkNotNullParameter(appName, "appName"); String str = appName + " | " + activityName + ", " + buttonText; if (str == null) { throw new NullPointerException("null cannot be cast to non-null type java.lang.String"); } String lowerCase = str.toLowerCase(); Intrinsics.checkNotNullExpressionValue(lowerCase, "(this as java.lang.String).toLowerCase()"); return lowerCase; } catch (Throwable th) { CrashShieldHandler.handleThrowable(th, FeatureExtractor.class); return null; } } public static final float[] getDenseFeatures(JSONObject viewHierarchy, String appName) { String lowerCase; JSONObject jSONObject; String screenName; JSONArray jSONArray; FeatureExtractor featureExtractor; JSONObject interactedNode; if (CrashShieldHandler.isObjectCrashing(FeatureExtractor.class)) { return null; } try { Intrinsics.checkNotNullParameter(viewHierarchy, "viewHierarchy"); Intrinsics.checkNotNullParameter(appName, "appName"); if (!initialized) { return null; } float[] fArr = new float[30]; for (int i = 0; i < 30; i++) { fArr[i] = 0.0f; } try { lowerCase = appName.toLowerCase(); Intrinsics.checkNotNullExpressionValue(lowerCase, "(this as java.lang.String).toLowerCase()"); jSONObject = new JSONObject(viewHierarchy.optJSONObject("view").toString()); screenName = viewHierarchy.optString(ViewHierarchyConstants.SCREEN_NAME_KEY); jSONArray = new JSONArray(); featureExtractor = INSTANCE; featureExtractor.pruneTree(jSONObject, jSONArray); featureExtractor.sum(fArr, featureExtractor.parseFeatures(jSONObject)); interactedNode = featureExtractor.getInteractedNode(jSONObject); } catch (JSONException unused) { } if (interactedNode == null) { return null; } Intrinsics.checkNotNullExpressionValue(screenName, "screenName"); String jSONObject2 = jSONObject.toString(); Intrinsics.checkNotNullExpressionValue(jSONObject2, "viewTree.toString()"); featureExtractor.sum(fArr, featureExtractor.nonparseFeatures(interactedNode, jSONArray, screenName, jSONObject2, lowerCase)); return fArr; } catch (Throwable th) { CrashShieldHandler.handleThrowable(th, FeatureExtractor.class); return null; } } private final float[] parseFeatures(JSONObject jSONObject) { boolean contains$default; boolean contains$default2; boolean contains$default3; if (CrashShieldHandler.isObjectCrashing(this)) { return null; } try { float[] fArr = new float[30]; int i = 0; for (int i2 = 0; i2 < 30; i2++) { fArr[i2] = 0.0f; } String optString = jSONObject.optString("text"); Intrinsics.checkNotNullExpressionValue(optString, "node.optString(TEXT_KEY)"); String lowerCase = optString.toLowerCase(); Intrinsics.checkNotNullExpressionValue(lowerCase, "(this as java.lang.String).toLowerCase()"); String optString2 = jSONObject.optString(ViewHierarchyConstants.HINT_KEY); Intrinsics.checkNotNullExpressionValue(optString2, "node.optString(HINT_KEY)"); String lowerCase2 = optString2.toLowerCase(); Intrinsics.checkNotNullExpressionValue(lowerCase2, "(this as java.lang.String).toLowerCase()"); String optString3 = jSONObject.optString(ViewHierarchyConstants.CLASS_NAME_KEY); Intrinsics.checkNotNullExpressionValue(optString3, "node.optString(CLASS_NAME_KEY)"); String lowerCase3 = optString3.toLowerCase(); Intrinsics.checkNotNullExpressionValue(lowerCase3, "(this as java.lang.String).toLowerCase()"); int optInt = jSONObject.optInt(ViewHierarchyConstants.INPUT_TYPE_KEY, -1); String[] strArr = {lowerCase, lowerCase2}; if (matchIndicators(new String[]{"$", "amount", "price", v8.h.l}, strArr)) { fArr[0] = fArr[0] + 1.0f; } if (matchIndicators(new String[]{REGEX_CR_PASSWORD_FIELD, "pwd"}, strArr)) { fArr[1] = fArr[1] + 1.0f; } if (matchIndicators(new String[]{"tel", "phone"}, strArr)) { fArr[2] = fArr[2] + 1.0f; } if (matchIndicators(new String[]{AppLovinEventTypes.USER_EXECUTED_SEARCH}, strArr)) { fArr[4] = fArr[4] + 1.0f; } if (optInt >= 0) { fArr[5] = fArr[5] + 1.0f; } if (optInt == 3 || optInt == 2) { fArr[6] = fArr[6] + 1.0f; } if (optInt == 32 || Patterns.EMAIL_ADDRESS.matcher(lowerCase).matches()) { fArr[7] = fArr[7] + 1.0f; } contains$default = StringsKt__StringsKt.contains$default(lowerCase3, "checkbox", false, 2, null); if (contains$default) { fArr[8] = fArr[8] + 1.0f; } if (matchIndicators(new String[]{CampaignEx.JSON_NATIVE_VIDEO_COMPLETE, "confirm", "done", "submit"}, new String[]{lowerCase})) { fArr[10] = fArr[10] + 1.0f; } contains$default2 = StringsKt__StringsKt.contains$default(lowerCase3, "radio", false, 2, null); if (contains$default2) { contains$default3 = StringsKt__StringsKt.contains$default(lowerCase3, "button", false, 2, null); if (contains$default3) { fArr[12] = fArr[12] + 1.0f; } } try { JSONArray optJSONArray = jSONObject.optJSONArray(ViewHierarchyConstants.CHILDREN_VIEW_KEY); int length = optJSONArray.length(); if (length > 0) { while (true) { int i3 = i + 1; JSONObject jSONObject2 = optJSONArray.getJSONObject(i); Intrinsics.checkNotNullExpressionValue(jSONObject2, "childViews.getJSONObject(i)"); sum(fArr, parseFeatures(jSONObject2)); if (i3 >= length) { break; } i = i3; } } } catch (JSONException unused) { } return fArr; } catch (Throwable th) { CrashShieldHandler.handleThrowable(th, this); return null; } } private final float[] nonparseFeatures(JSONObject jSONObject, JSONArray jSONArray, String str, String str2, String str3) { boolean contains$default; if (CrashShieldHandler.isObjectCrashing(this)) { return null; } try { float[] fArr = new float[30]; for (int i = 0; i < 30; i++) { fArr[i] = 0.0f; } int length = jSONArray.length(); fArr[3] = length > 1 ? length - 1.0f : 0.0f; try { int length2 = jSONArray.length(); if (length2 > 0) { int i2 = 0; while (true) { int i3 = i2 + 1; JSONObject jSONObject2 = jSONArray.getJSONObject(i2); Intrinsics.checkNotNullExpressionValue(jSONObject2, "siblings.getJSONObject(i)"); if (isButton(jSONObject2)) { fArr[9] = fArr[9] + 1.0f; } if (i3 >= length2) { break; } i2 = i3; } } } catch (JSONException unused) { } fArr[13] = -1.0f; fArr[14] = -1.0f; String str4 = str + '|' + str3; StringBuilder sb = new StringBuilder(); StringBuilder sb2 = new StringBuilder(); updateHintAndTextRecursively(jSONObject, sb2, sb); String sb3 = sb.toString(); Intrinsics.checkNotNullExpressionValue(sb3, "hintSB.toString()"); String sb4 = sb2.toString(); Intrinsics.checkNotNullExpressionValue(sb4, "textSB.toString()"); fArr[15] = regexMatched(ViewHierarchyConstants.ENGLISH, ViewHierarchyConstants.COMPLETE_REGISTRATION, ViewHierarchyConstants.BUTTON_TEXT, sb4) ? 1.0f : 0.0f; fArr[16] = regexMatched(ViewHierarchyConstants.ENGLISH, ViewHierarchyConstants.COMPLETE_REGISTRATION, ViewHierarchyConstants.PAGE_TITLE, str4) ? 1.0f : 0.0f; fArr[17] = regexMatched(ViewHierarchyConstants.ENGLISH, ViewHierarchyConstants.COMPLETE_REGISTRATION, ViewHierarchyConstants.BUTTON_ID, sb3) ? 1.0f : 0.0f; contains$default = StringsKt__StringsKt.contains$default(str2, REGEX_CR_PASSWORD_FIELD, false, 2, null); fArr[18] = contains$default ? 1.0f : 0.0f; fArr[19] = regexMatched(REGEX_CR_HAS_CONFIRM_PASSWORD_FIELD, str2) ? 1.0f : 0.0f; fArr[20] = regexMatched(REGEX_CR_HAS_LOG_IN_KEYWORDS, str2) ? 1.0f : 0.0f; fArr[21] = regexMatched(REGEX_CR_HAS_SIGN_ON_KEYWORDS, str2) ? 1.0f : 0.0f; fArr[22] = regexMatched(ViewHierarchyConstants.ENGLISH, ViewHierarchyConstants.PURCHASE, ViewHierarchyConstants.BUTTON_TEXT, sb4) ? 1.0f : 0.0f; fArr[24] = regexMatched(ViewHierarchyConstants.ENGLISH, ViewHierarchyConstants.PURCHASE, ViewHierarchyConstants.PAGE_TITLE, str4) ? 1.0f : 0.0f; fArr[25] = regexMatched(REGEX_ADD_TO_CART_BUTTON_TEXT, sb4) ? 1.0f : 0.0f; fArr[27] = regexMatched(REGEX_ADD_TO_CART_PAGE_TITLE, str4) ? 1.0f : 0.0f; fArr[28] = regexMatched(ViewHierarchyConstants.ENGLISH, ViewHierarchyConstants.LEAD, ViewHierarchyConstants.BUTTON_TEXT, sb4) ? 1.0f : 0.0f; fArr[29] = regexMatched(ViewHierarchyConstants.ENGLISH, ViewHierarchyConstants.LEAD, ViewHierarchyConstants.PAGE_TITLE, str4) ? 1.0f : 0.0f; return fArr; } catch (Throwable th) { CrashShieldHandler.handleThrowable(th, this); return null; } } /* JADX WARN: Removed duplicated region for block: B:16:0x005c */ /* JADX WARN: Removed duplicated region for block: B:18:0x005d A[Catch: all -> 0x0062, TryCatch #0 {all -> 0x0062, blocks: (B:6:0x0008, B:8:0x000d, B:18:0x005d, B:20:0x0043, B:23:0x004c, B:25:0x0050, B:26:0x0064, B:27:0x0069, B:28:0x0029, B:31:0x0032, B:33:0x0036, B:34:0x006a, B:35:0x006f, B:36:0x0017, B:38:0x001b, B:39:0x0070, B:40:0x0075, B:41:0x0076, B:42:0x007b), top: B:5:0x0008 }] */ /* JADX WARN: Removed duplicated region for block: B:25:0x0050 A[Catch: all -> 0x0062, TryCatch #0 {all -> 0x0062, blocks: (B:6:0x0008, B:8:0x000d, B:18:0x005d, B:20:0x0043, B:23:0x004c, B:25:0x0050, B:26:0x0064, B:27:0x0069, B:28:0x0029, B:31:0x0032, B:33:0x0036, B:34:0x006a, B:35:0x006f, B:36:0x0017, B:38:0x001b, B:39:0x0070, B:40:0x0075, B:41:0x0076, B:42:0x007b), top: B:5:0x0008 }] */ /* JADX WARN: Removed duplicated region for block: B:26:0x0064 A[Catch: all -> 0x0062, TryCatch #0 {all -> 0x0062, blocks: (B:6:0x0008, B:8:0x000d, B:18:0x005d, B:20:0x0043, B:23:0x004c, B:25:0x0050, B:26:0x0064, B:27:0x0069, B:28:0x0029, B:31:0x0032, B:33:0x0036, B:34:0x006a, B:35:0x006f, B:36:0x0017, B:38:0x001b, B:39:0x0070, B:40:0x0075, B:41:0x0076, B:42:0x007b), top: B:5:0x0008 }] */ /* Code decompiled incorrectly, please refer to instructions dump. To view partially-correct add '--show-bad-code' argument */ private final boolean regexMatched(java.lang.String r5, java.lang.String r6, java.lang.String r7, java.lang.String r8) { /* r4 = this; boolean r0 = com.facebook.internal.instrument.crashshield.CrashShieldHandler.isObjectCrashing(r4) r1 = 0 if (r0 == 0) goto L8 return r1 L8: org.json.JSONObject r0 = com.facebook.appevents.suggestedevents.FeatureExtractor.rules // Catch: java.lang.Throwable -> L62 r2 = 0 if (r0 == 0) goto L76 java.lang.String r3 = "rulesForLanguage" org.json.JSONObject r0 = r0.optJSONObject(r3) // Catch: java.lang.Throwable -> L62 if (r0 != 0) goto L17 r5 = r2 goto L25 L17: java.util.Map r3 = com.facebook.appevents.suggestedevents.FeatureExtractor.languageInfo // Catch: java.lang.Throwable -> L62 if (r3 == 0) goto L70 java.lang.Object r5 = r3.get(r5) // Catch: java.lang.Throwable -> L62 java.lang.String r5 = (java.lang.String) r5 // Catch: java.lang.Throwable -> L62 org.json.JSONObject r5 = r0.optJSONObject(r5) // Catch: java.lang.Throwable -> L62 L25: if (r5 != 0) goto L29 L27: r5 = r2 goto L40 L29: java.lang.String r0 = "rulesForEvent" org.json.JSONObject r5 = r5.optJSONObject(r0) // Catch: java.lang.Throwable -> L62 if (r5 != 0) goto L32 goto L27 L32: java.util.Map r0 = com.facebook.appevents.suggestedevents.FeatureExtractor.eventInfo // Catch: java.lang.Throwable -> L62 if (r0 == 0) goto L6a java.lang.Object r6 = r0.get(r6) // Catch: java.lang.Throwable -> L62 java.lang.String r6 = (java.lang.String) r6 // Catch: java.lang.Throwable -> L62 org.json.JSONObject r5 = r5.optJSONObject(r6) // Catch: java.lang.Throwable -> L62 L40: if (r5 != 0) goto L43 goto L5a L43: java.lang.String r6 = "positiveRules" org.json.JSONObject r5 = r5.optJSONObject(r6) // Catch: java.lang.Throwable -> L62 if (r5 != 0) goto L4c goto L5a L4c: java.util.Map r6 = com.facebook.appevents.suggestedevents.FeatureExtractor.textTypeInfo // Catch: java.lang.Throwable -> L62 if (r6 == 0) goto L64 java.lang.Object r6 = r6.get(r7) // Catch: java.lang.Throwable -> L62 java.lang.String r6 = (java.lang.String) r6 // Catch: java.lang.Throwable -> L62 java.lang.String r2 = r5.optString(r6) // Catch: java.lang.Throwable -> L62 L5a: if (r2 != 0) goto L5d goto L61 L5d: boolean r1 = r4.regexMatched(r2, r8) // Catch: java.lang.Throwable -> L62 L61: return r1 L62: r5 = move-exception goto L7c L64: java.lang.String r5 = "textTypeInfo" kotlin.jvm.internal.Intrinsics.throwUninitializedPropertyAccessException(r5) // Catch: java.lang.Throwable -> L62 throw r2 // Catch: java.lang.Throwable -> L62 L6a: java.lang.String r5 = "eventInfo" kotlin.jvm.internal.Intrinsics.throwUninitializedPropertyAccessException(r5) // Catch: java.lang.Throwable -> L62 throw r2 // Catch: java.lang.Throwable -> L62 L70: java.lang.String r5 = "languageInfo" kotlin.jvm.internal.Intrinsics.throwUninitializedPropertyAccessException(r5) // Catch: java.lang.Throwable -> L62 throw r2 // Catch: java.lang.Throwable -> L62 L76: java.lang.String r5 = "rules" kotlin.jvm.internal.Intrinsics.throwUninitializedPropertyAccessException(r5) // Catch: java.lang.Throwable -> L62 throw r2 // Catch: java.lang.Throwable -> L62 L7c: com.facebook.internal.instrument.crashshield.CrashShieldHandler.handleThrowable(r5, r4) return r1 */ throw new UnsupportedOperationException("Method not decompiled: com.facebook.appevents.suggestedevents.FeatureExtractor.regexMatched(java.lang.String, java.lang.String, java.lang.String, java.lang.String):boolean"); } private final boolean regexMatched(String str, String str2) { if (CrashShieldHandler.isObjectCrashing(this)) { return false; } try { return Pattern.compile(str).matcher(str2).find(); } catch (Throwable th) { CrashShieldHandler.handleThrowable(th, this); return false; } } private final boolean matchIndicators(String[] strArr, String[] strArr2) { boolean contains$default; if (CrashShieldHandler.isObjectCrashing(this)) { return false; } try { int length = strArr.length; int i = 0; while (i < length) { String str = strArr[i]; i++; int length2 = strArr2.length; int i2 = 0; while (i2 < length2) { String str2 = strArr2[i2]; i2++; contains$default = StringsKt__StringsKt.contains$default(str2, str, false, 2, null); if (contains$default) { return true; } } } return false; } catch (Throwable th) { CrashShieldHandler.handleThrowable(th, this); return false; } } private final boolean pruneTree(JSONObject jSONObject, JSONArray jSONArray) { boolean z; if (CrashShieldHandler.isObjectCrashing(this)) { return false; } try { if (jSONObject.optBoolean(ViewHierarchyConstants.IS_INTERACTED_KEY)) { return true; } JSONArray optJSONArray = jSONObject.optJSONArray(ViewHierarchyConstants.CHILDREN_VIEW_KEY); int length = optJSONArray.length(); if (length > 0) { int i = 0; while (true) { int i2 = i + 1; if (optJSONArray.getJSONObject(i).optBoolean(ViewHierarchyConstants.IS_INTERACTED_KEY)) { z = true; break; } if (i2 >= length) { break; } i = i2; } } z = false; boolean z2 = z; JSONArray jSONArray2 = new JSONArray(); if (z) { int length2 = optJSONArray.length(); if (length2 > 0) { int i3 = 0; while (true) { int i4 = i3 + 1; jSONArray.put(optJSONArray.getJSONObject(i3)); if (i4 >= length2) { break; } i3 = i4; } } } else { int length3 = optJSONArray.length(); if (length3 > 0) { int i5 = 0; while (true) { int i6 = i5 + 1; JSONObject child = optJSONArray.getJSONObject(i5); Intrinsics.checkNotNullExpressionValue(child, "child"); if (pruneTree(child, jSONArray)) { jSONArray2.put(child); z2 = true; } if (i6 >= length3) { break; } i5 = i6; } } jSONObject.put(ViewHierarchyConstants.CHILDREN_VIEW_KEY, jSONArray2); } return z2; } catch (JSONException unused) { return false; } catch (Throwable th) { CrashShieldHandler.handleThrowable(th, this); return false; } } private final void sum(float[] fArr, float[] fArr2) { if (CrashShieldHandler.isObjectCrashing(this)) { return; } try { int length = fArr.length - 1; if (length < 0) { return; } int i = 0; while (true) { int i2 = i + 1; fArr[i] = fArr[i] + fArr2[i]; if (i2 > length) { return; } else { i = i2; } } } catch (Throwable th) { CrashShieldHandler.handleThrowable(th, this); } } private final boolean isButton(JSONObject jSONObject) { if (CrashShieldHandler.isObjectCrashing(this)) { return false; } try { return ((jSONObject.optInt(ViewHierarchyConstants.CLASS_TYPE_BITMASK_KEY) & 1) << 5) > 0; } catch (Throwable th) { CrashShieldHandler.handleThrowable(th, this); return false; } } private final void updateHintAndTextRecursively(JSONObject jSONObject, StringBuilder sb, StringBuilder sb2) { int length; if (CrashShieldHandler.isObjectCrashing(this)) { return; } try { String optString = jSONObject.optString("text", ""); Intrinsics.checkNotNullExpressionValue(optString, "view.optString(TEXT_KEY, \"\")"); String lowerCase = optString.toLowerCase(); Intrinsics.checkNotNullExpressionValue(lowerCase, "(this as java.lang.String).toLowerCase()"); String optString2 = jSONObject.optString(ViewHierarchyConstants.HINT_KEY, ""); Intrinsics.checkNotNullExpressionValue(optString2, "view.optString(HINT_KEY, \"\")"); String lowerCase2 = optString2.toLowerCase(); Intrinsics.checkNotNullExpressionValue(lowerCase2, "(this as java.lang.String).toLowerCase()"); if (lowerCase.length() > 0) { sb.append(lowerCase); sb.append(" "); } if (lowerCase2.length() > 0) { sb2.append(lowerCase2); sb2.append(" "); } JSONArray optJSONArray = jSONObject.optJSONArray(ViewHierarchyConstants.CHILDREN_VIEW_KEY); if (optJSONArray == null || (length = optJSONArray.length()) <= 0) { return; } int i = 0; while (true) { int i2 = i + 1; try { JSONObject currentChildView = optJSONArray.getJSONObject(i); Intrinsics.checkNotNullExpressionValue(currentChildView, "currentChildView"); updateHintAndTextRecursively(currentChildView, sb, sb2); } catch (JSONException unused) { } if (i2 >= length) { return; } else { i = i2; } } } catch (Throwable th) { CrashShieldHandler.handleThrowable(th, this); } } private final JSONObject getInteractedNode(JSONObject jSONObject) { int length; if (CrashShieldHandler.isObjectCrashing(this)) { return null; } try { } catch (JSONException unused) { } catch (Throwable th) { CrashShieldHandler.handleThrowable(th, this); } if (jSONObject.optBoolean(ViewHierarchyConstants.IS_INTERACTED_KEY)) { return jSONObject; } JSONArray optJSONArray = jSONObject.optJSONArray(ViewHierarchyConstants.CHILDREN_VIEW_KEY); if (optJSONArray != null && (length = optJSONArray.length()) > 0) { int i = 0; while (true) { int i2 = i + 1; JSONObject jSONObject2 = optJSONArray.getJSONObject(i); Intrinsics.checkNotNullExpressionValue(jSONObject2, "children.getJSONObject(i)"); JSONObject interactedNode = getInteractedNode(jSONObject2); if (interactedNode != null) { return interactedNode; } if (i2 >= length) { break; } i = i2; } } return null; } }