fun main(args : Array<String>) {
    val (a, b, c, d) = readLine()!!.split(" ").map { it.toLong() }
    val ans = mutableListOf<Long>()

    // plus * plus
    if (b >= 0 && d >= 0) {
        ans.add(b * d)
    }

    // minus * minus
    if (a < 0 && c < 0) {
        ans.add(a * c)
    }

    // plus * minus
    if (a >= 0 && d < 0) {
        ans.add(a * d)
    }

    // minus * plus
    if (b < 0 && c >= 0) {
        ans.add(b * c)
    }

    println(ans.max()!!)
}