granularity level: instruction

		.class public final Lcom/google/android/datatransport/cct/StringMerger;
.super Ljava/lang/Object;
.source "StringMerger.java"




.method public constructor <init>()V
	.locals 0

	invoke-direct {p0}, Ljava/lang/Object;-><init>()V
	return-void
.end method

.method static mergeStrings(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
	.locals 3

	invoke-virtual {p0}, Ljava/lang/String;->length()I
	move-result v0
	invoke-virtual {p1}, Ljava/lang/String;->length()I
	move-result v1
	sub-int/2addr v0, v1
	if-ltz v0, :cond_2
	const/4 v1, 0x1
	if-gt v0, v1, :cond_2
	new-instance v0, Ljava/lang/StringBuilder;
	invoke-virtual {p0}, Ljava/lang/String;->length()I
	move-result v1
	invoke-virtual {p1}, Ljava/lang/String;->length()I
	move-result v2
	add-int/2addr v1, v2
	invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(I)V
	const/4 v1, 0x0
	:goto_0
	invoke-virtual {p0}, Ljava/lang/String;->length()I
	move-result v2
	if-ge v1, v2, :cond_1
	invoke-virtual {p0, v1}, Ljava/lang/String;->charAt(I)C
	move-result v2
	invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
	invoke-virtual {p1}, Ljava/lang/String;->length()I
	move-result v2
	if-le v2, v1, :cond_0
	invoke-virtual {p1, v1}, Ljava/lang/String;->charAt(I)C
	move-result v2
	invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
	:cond_0
	add-int/lit8 v1, v1, 0x1
	goto :goto_0
	:cond_1
	invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
	move-result-object p0
	return-object p0
	:cond_2
	new-instance p0, Ljava/lang/IllegalArgumentException;
	const-string p1, "Invalid input received"
	invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
	throw p0
.end method