2022-06-10 21:38:30 +09:00

842 lines
20 KiB
Smali

.class public Lo8/f;
.super Ljava/lang/Object;
.source "RpLogutils.java"
# static fields
.field public static a:Z = false
.field public static b:I = 0x5
.field public static c:Ljava/lang/String; = "RpClient_"
# direct methods
.method public static constructor <clinit>()V
.locals 0
return-void
.end method
.method public constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static a([Ljava/lang/StackTraceElement;)I
.locals 4
.line 1
sget v0, Lo8/f;->b:I
.line 2
:goto_0
array-length v1, p0
const/4 v2, -0x1
if-ge v0, v1, :cond_1
.line 3
aget-object v1, p0, v0
.line 4
invoke-virtual {v1}, Ljava/lang/StackTraceElement;->getClassName()Ljava/lang/String;
move-result-object v1
.line 5
const-class v3, Lo8/f;
invoke-virtual {v3}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v3
invoke-static {v1, v3}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_0
add-int/2addr v0, v2
return v0
:cond_0
add-int/lit8 v0, v0, 0x1
goto :goto_0
:cond_1
return v2
.end method
.method public static b(Ljava/lang/Boolean;)V
.locals 2
.line 1
:try_start_0
invoke-virtual {p0}, Ljava/lang/Boolean;->booleanValue()Z
move-result p0
sput-boolean p0, Lo8/f;->a:Z
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
move-exception p0
.line 2
sget-object v0, Lo8/f;->c:Ljava/lang/String;
const-string v1, "set Debug Error : "
invoke-static {v1}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object p0
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-static {v0, p0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
:goto_0
return-void
.end method
.method public static c(Ljava/lang/String;)V
.locals 2
.line 1
sget-boolean v0, Lo8/f;->a:Z
if-eqz v0, :cond_0
if-eqz p0, :cond_0
sget-object v0, Lo8/f;->c:Ljava/lang/String;
const-string v1, ""
invoke-static {v1, p0}, Lo8/f;->o(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
invoke-static {v0, p0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_0
return-void
.end method
.method public static d(Ljava/lang/String;Landroid/content/Intent;)V
.locals 6
.line 1
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
if-eqz p1, :cond_2
.line 2
invoke-virtual {p1}, Landroid/content/Intent;->getData()Landroid/net/Uri;
move-result-object v1
const-string v2, "\n"
if-eqz v1, :cond_0
const-string v1, "host"
.line 3
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, " : "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Landroid/content/Intent;->getData()Landroid/net/Uri;
move-result-object v3
invoke-virtual {v3}, Landroid/net/Uri;->getHost()Ljava/lang/String;
move-result-object v3
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v3, "Scheme"
.line 4
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Landroid/content/Intent;->getData()Landroid/net/Uri;
move-result-object v3
invoke-virtual {v3}, Landroid/net/Uri;->getScheme()Ljava/lang/String;
move-result-object v3
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v3, "path"
.line 5
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Landroid/content/Intent;->getData()Landroid/net/Uri;
move-result-object v3
invoke-virtual {v3}, Landroid/net/Uri;->getPath()Ljava/lang/String;
move-result-object v3
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v3, "query"
.line 6
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Landroid/content/Intent;->getData()Landroid/net/Uri;
move-result-object v1
invoke-virtual {v1}, Landroid/net/Uri;->getQuery()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 7
:cond_0
invoke-virtual {p1}, Landroid/content/Intent;->getExtras()Landroid/os/Bundle;
move-result-object p1
if-eqz p1, :cond_2
.line 8
invoke-virtual {p1}, Landroid/os/Bundle;->keySet()Ljava/util/Set;
move-result-object v1
.line 9
invoke-interface {v1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v1
const-string v3, "Dumping Intent start"
.line 10
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 11
:goto_0
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_1
.line 12
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/String;
const-string v4, "["
const-string v5, " = "
.line 13
invoke-static {v4, v3, v5}, Landroidx/activity/result/g;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {p1, v3}, Landroid/os/Bundle;->get(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v3
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v3, "]"
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_0
:cond_1
const-string p1, "Dumping Intent end"
.line 14
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 15
:cond_2
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-static {p0, p1}, Lo8/f;->i(Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method
.method public static e(Ljava/lang/String;Ljava/lang/Exception;)V
.locals 2
.line 1
sget-boolean v0, Lo8/f;->a:Z
if-eqz v0, :cond_0
if-eqz p1, :cond_0
.line 2
sget-object v0, Lo8/f;->c:Ljava/lang/String;
const-string v1, ": "
invoke-static {p0, v1}, Landroid/support/v4/media/e;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p1}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object p1
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-static {v0, p0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
:cond_0
return-void
.end method
.method public static f(Ljava/lang/String;Ljava/lang/String;)V
.locals 1
.line 1
sget-boolean v0, Lo8/f;->a:Z
if-eqz v0, :cond_0
if-eqz p1, :cond_0
sget-object v0, Lo8/f;->c:Ljava/lang/String;
invoke-static {p0, p1}, Lo8/f;->o(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
invoke-static {v0, p0}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
:cond_0
return-void
.end method
.method public static g()Z
.locals 1
.line 1
sget-boolean v0, Lo8/f;->a:Z
return v0
.end method
.method public static h(Ljava/lang/String;)V
.locals 2
.line 1
sget-boolean v0, Lo8/f;->a:Z
if-eqz v0, :cond_0
if-eqz p0, :cond_0
sget-object v0, Lo8/f;->c:Ljava/lang/String;
const-string v1, ""
invoke-static {v1, p0}, Lo8/f;->o(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
invoke-static {v0, p0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
:cond_0
return-void
.end method
.method public static i(Ljava/lang/String;Ljava/lang/String;)V
.locals 5
.line 1
sget-boolean v0, Lo8/f;->a:Z
if-eqz v0, :cond_2
if-eqz p1, :cond_2
.line 2
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
const/16 v1, 0xfa0
if-le v0, v1, :cond_1
.line 3
sget-object v0, Lo8/f;->c:Ljava/lang/String;
const-string v2, "msg.length = "
invoke-static {v2}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v0, v2}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
.line 4
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
div-int/2addr v0, v1
const/4 v1, 0x0
:goto_0
if-gt v1, v0, :cond_2
add-int/lit8 v2, v1, 0x1
mul-int/lit16 v3, v2, 0xfa0
.line 5
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v4
if-lt v3, v4, :cond_0
.line 6
sget-object v3, Lo8/f;->c:Ljava/lang/String;
mul-int/lit16 v1, v1, 0xfa0
invoke-virtual {p1, v1}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v1
invoke-static {p0, v1}, Lo8/f;->o(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
invoke-static {v3, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_1
.line 7
:cond_0
sget-object v4, Lo8/f;->c:Ljava/lang/String;
mul-int/lit16 v1, v1, 0xfa0
invoke-virtual {p1, v1, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v1
invoke-static {p0, v1}, Lo8/f;->o(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
invoke-static {v4, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:goto_1
move v1, v2
goto :goto_0
.line 8
:cond_1
sget-object v0, Lo8/f;->c:Ljava/lang/String;
invoke-static {p0, p1}, Lo8/f;->o(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
invoke-static {v0, p0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_2
return-void
.end method
.method public static j(Ljava/lang/String;)Ljava/lang/String;
.locals 10
.line 1
invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Thread;->getStackTrace()[Ljava/lang/StackTraceElement;
move-result-object v0
.line 2
invoke-static {v0}, Lo8/f;->a([Ljava/lang/StackTraceElement;)I
move-result v1
add-int/lit8 v2, v1, 0x2
.line 3
array-length v3, v0
const/4 v4, 0x1
if-le v2, v3, :cond_0
.line 4
array-length v2, v0
sub-int/2addr v2, v1
sub-int/2addr v2, v4
goto :goto_0
:cond_0
const/4 v2, 0x2
.line 5
:goto_0
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, " "
move v6, v2
move-object v7, v5
:goto_1
if-lt v6, v4, :cond_3
add-int v8, v6, v1
.line 6
array-length v9, v0
if-lt v8, v9, :cond_1
goto :goto_2
.line 7
:cond_1
invoke-virtual {v3, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 8
invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
aget-object v9, v0, v8
.line 9
invoke-virtual {v9}, Ljava/lang/StackTraceElement;->getClassName()Ljava/lang/String;
move-result-object v9
invoke-static {v9}, Lo8/f;->l(Ljava/lang/String;)Ljava/lang/String;
move-result-object v9
invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v9, "."
.line 10
invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
aget-object v9, v0, v8
.line 11
invoke-virtual {v9}, Ljava/lang/StackTraceElement;->getMethodName()Ljava/lang/String;
move-result-object v9
invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 12
invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v9, " ("
.line 13
invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
aget-object v9, v0, v8
.line 14
invoke-virtual {v9}, Ljava/lang/StackTraceElement;->getFileName()Ljava/lang/String;
move-result-object v9
invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v9, ":"
.line 15
invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
aget-object v8, v0, v8
.line 16
invoke-virtual {v8}, Ljava/lang/StackTraceElement;->getLineNumber()I
move-result v8
invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v8, ")"
.line 17
invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 18
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v8, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v7, " "
invoke-virtual {v8, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v7
if-ne v6, v2, :cond_2
const-string v8, "\n"
.line 19
invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:cond_2
:goto_2
add-int/lit8 v6, v6, -0x1
goto :goto_1
.line 20
:cond_3
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method public static k(Ljava/lang/String;Ljava/lang/String;)V
.locals 1
.line 1
sget-boolean v0, Lo8/f;->a:Z
if-eqz v0, :cond_0
if-eqz p1, :cond_0
sget-object v0, Lo8/f;->c:Ljava/lang/String;
invoke-static {p0, p1}, Lo8/f;->o(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
invoke-static {v0, p0}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
:cond_0
return-void
.end method
.method public static l(Ljava/lang/String;)Ljava/lang/String;
.locals 1
.line 1
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_0
const-string p0, ""
return-object p0
:cond_0
const-string v0, "."
.line 2
invoke-virtual {p0, v0}, Ljava/lang/String;->lastIndexOf(Ljava/lang/String;)I
move-result v0
add-int/lit8 v0, v0, 0x1
.line 3
invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method public static m(Ljava/lang/String;Ljava/lang/String;)V
.locals 1
.line 1
sget-boolean v0, Lo8/f;->a:Z
if-eqz v0, :cond_0
if-eqz p1, :cond_0
sget-object v0, Lo8/f;->c:Ljava/lang/String;
invoke-static {p0, p1}, Lo8/f;->o(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
invoke-static {v0, p0}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
:cond_0
return-void
.end method
.method public static n(Ljava/lang/String;Ljava/lang/String;)V
.locals 1
.line 1
sget-boolean v0, Lo8/f;->a:Z
if-eqz v0, :cond_0
if-eqz p1, :cond_0
sget-object v0, Lo8/f;->c:Ljava/lang/String;
invoke-static {p0, p1}, Lo8/f;->o(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
invoke-static {v0, p0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
:cond_0
return-void
.end method
.method public static o(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.locals 3
const-string v0, " "
.line 1
invoke-static {p0, v0}, Landroid/support/v4/media/e;->a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
.line 2
invoke-static {p0}, Lo8/f;->j(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v2, "\n"
.line 3
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 4
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 5
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 6
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, "\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"
.line 7
invoke-static {v1, v2, p0, v0, p1}, Lr1/k;->a(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
return-object p0
.end method