def main
(args
: Array
[String
]) { println(fib(0, 1) takeWhile {_ < 4000000} filter {_ % 2 == 0} sum)
}
def fib
(x1
: Int, x2
: Int
): Stream
[Int
] = { x1 #:: fib(x2, x1 + x2)
}
}
b2JqZWN0IE1haW4gewogIGRlZiBtYWluKGFyZ3M6IEFycmF5W1N0cmluZ10pIHsKICAgIHByaW50bG4oZmliKDAsIDEpIHRha2VXaGlsZSB7XyA8IDQwMDAwMDB9IGZpbHRlciB7XyAlIDIgPT0gMH0gc3VtKQogIH0KICAKICBkZWYgZmliKHgxOiBJbnQsIHgyOiBJbnQpOiBTdHJlYW1bSW50XSA9IHsKICAgIHgxICM6OiBmaWIoeDIsIHgxICsgeDIpCiAgfQp9Cg==