
method Base.<init>():void
{
	.src "Target.java"
	.line 1
	.prologue_end
	.line 1
	    0| invoke-direct {v0}, java.lang.Object.<init>():void
	    3| return-void
}

method Base.foo(int, java.lang.String):int
{
	.params "?", "?"
	.src "Target.java"
	.line 3
	.prologue_end
	.line 3
	    0| const/4 v0, #+0 (0x00000000 | 0.00000)
	    1| return v0
}

method IBase.bar(java.lang.String):void
{
}

method Target.<init>(Base, IBase):void
{
	.params "?", "?"
	.src "Target.java"
	.line 15
	.prologue_end
	.line 15
	    0| invoke-direct {v0}, java.lang.Object.<init>():void
	.line 16
	    3| iput-object v1, v0, Target.base
	.line 17
	    5| iput-object v2, v0, Target.iBase
	.line 18
	    7| return-void
}

method Target.foo(int, java.lang.String):int
{
	.params "?", "?"
	.src "Target.java"
	.line 21
	.prologue_end
	.line 21
	    0| iget-object v0, v2, Target.base
	    2| invoke-virtual {v0,v3,v4}, Base.foo(int, java.lang.String):int
	    5| move-result v0
	.line 22
	    6| iget-object v1, v2, Target.iBase
	    8| invoke-interface {v1,v4}, IBase.bar(java.lang.String):void
	.line 23
	   11| return v0
}

method Target.foo(int, java.lang.String[][]):java.lang.Integer
{
	.params "?", "?"
	.src "Target.java"
	.line 27
	.prologue_end
	.line 27
	    0| iget-object v0, v2, Target.base
	    2| const-string v1, "foo"
	    4| invoke-virtual {v0,v3,v1}, Base.foo(int, java.lang.String):int
	.line 28
	    7| iget-object v0, v2, Target.iBase
	    9| const-string v1, "bar"
	   11| invoke-interface {v0,v1}, IBase.bar(java.lang.String):void
	.line 29
	   14| const/4 v0, #+0 (0x00000000 | 0.00000)
	   15| return-object v0
}
