import com.google.common.base.Optional
fun <T, R> Optional<T>.let(block: (T) -> R): R? = if (isPresent) block(get()) else null
import com.google.common.base.Optional
fun <T, R> Optional<T>.let(block: (T) -> R): R? = if (isPresent) block(get()) else null