// WITH_STDLIB
// IGNORE_K1
package a_

class `$-$` {
    @JvmInline
    value class `$-`(val `$-`: UInt) {
        context(_: Int, _: UInt, `$$-`: Int, `$$--`: UInt)
        fun `$-`.foo(x: Int, y: UInt) {
            val arg0 = 42
        }
    }
}

// METHOD : a_/$-$$$-.foo-sMXUCbs(IIIIIIII)V
// VARIABLE : NAME=$$- TYPE=I INDEX=*
// VARIABLE : NAME=$context-Int TYPE=I INDEX=*
// VARIABLE : NAME=$v$c$a_-$$--$$-$$--$-$this$foo$0 TYPE=I INDEX=*
// VARIABLE : NAME=$v$c$a_-$$--$$-$$--$-this$0 TYPE=I INDEX=*
// VARIABLE : NAME=$v$c$kotlin-UInt$-$$--$0 TYPE=I INDEX=*
// VARIABLE : NAME=$v$c$kotlin-UInt$-$context-UInt$0 TYPE=I INDEX=*
// VARIABLE : NAME=$v$c$kotlin-UInt$-y$0 TYPE=I INDEX=*
// VARIABLE : NAME=arg0 TYPE=I INDEX=*
// VARIABLE : NAME=x TYPE=I INDEX=*
