---
# System prepended metadata

title: Untitled

---


Implement a minimal `Option` that has `map` and `flatMap`.


```scala
import scala.{Option => _}


Option[Animal] :> Option[Dog]

sealed trait Option[+T] 

case class Some[T](a: T) extends Option[T] 
case object None extends Option[Nothing] 


val a: Option[String] = Some("hello")
val b: Option[Int] = Some(12321)

```