object MonadsMain extends App { import cats.syntax.either._ // for asRight val a = 3.asRight[String] val b = 4.asRight[String] val result = for { x <- a y <- b } yield x * x + y * y println(result) }