fun main(arr:Array) { val inputCount = readLine()!!.toInt() (1..inputCount).map { if(isValid(readLine()!!)) "possible" else "impossible" }.forEach { println(it) } } fun isValid(inpt:String):Boolean { val log = inpt.reversed() val line = mutableListOf() for(i in log) { if(i == 'R') { line.add(i) } else if(i == 'G') { val idx = line.indexOfFirst { it == 'R' } if(idx < 0) { return false } line[idx] = 'G' } else if(i == 'W') { val idx = line.indexOfFirst { it == 'G' } if(idx < 0) { val idx2 = line.indexOfFirst { it == 'W' } if(idx2 < 0) { return false } else { line[idx2] = 'W' } } else { line[idx] = 'W' } } } return line.all { it == 'W' } }