package foo

import kotlinx.js.JsPlainObject

external interface Marker1
external interface Marker2

@JsPlainObject
external interface User : Marker1, Marker2 {
    var name: String
    val age: Int
}

fun box(): String {
    val user = User(name = "Name", age = 10)

    if (user.name != "Name") return "Fail: problem with `name` property"
    if (user.age != 10) return "Fail: problem with `age` property"

    val json = js("JSON.stringify(user)")
    if (json != "{\"name\":\"Name\",\"age\":10}") return "Fail: got the next json: $json"

    return "OK"
}
