# На склад, который имеет форму прямоугольного параллелепипеда,\
# привезли ноутбуки, упакованные в коробки. Каждая коробка также\
# имеет форму прямоугольного параллелепипеда. По правилам хранения коробки\
# с ноутбуками должны быть размещены на складе с выполнением следующих\
# двух условий:
# Стороны коробок должны быть параллельны сторонам склада.
# Коробку при помещении на склад разрешается расположить где угодно\
# (с выполнением предыдущего условия), в том числе на другой коробке,\
# но все коробки должны быть ориентированы одинаково\
# (т.е. нельзя одну коробку расположить “стоя”, а другую —“лежа”)
# Напишите программу, которая по размерам склада и размерам коробки с\
# ноутбуком определит максимальное количество ноутбуков, которое\
# может быть размещено на складе.

a1 = int(input())
b1 = int(input())
c1 = int(input())
a2 = int(input())
b2 = int(input())
c2 = int(input())

# проверка на существование
isExist = a1 > 0 and b1 > 0 and c1 > 0 and\
 a2 > 0 and b2 > 0 and c2 > 0 and\
 (a1 >= a2 or a1 >= b2 or a1 >= c2) and\
 (b1 >= a2 or b1 >= b2 or b1 >= c2) and\
 (c1 >= a2 or c1 >= b2 or c1 >= c2)

if not isExist:
    print(0)
else:
    na = a1 // a2
    nb = b1 // b2
    nc = c1 // c2
    n1 = na * nb * nc

    na = a1 // a2
    nb = b1 // c2
    nc = c1 // b2
    n2 = na * nb * nc

    na = a1 // b2
    nb = b1 // a2
    nc = c1 // c2
    n3 = na * nb * nc

    na = a1 // b2
    nb = b1 // c2
    nc = c1 // a2
    n4 = na * nb * nc

    na = a1 // c2
    nb = b1 // a2
    nc = c1 // b2
    n5 = na * nb * nc

    na = a1 // c2
    nb = b1 // b2
    nc = c1 // a2
    n5 = na * nb * nc

    nmax = 0
    if n1 > nmax:
        nmax = n1
    if n2 > nmax:
        nmax = n2
    if n3 > nmax:
        nmax = n3
    if n4 > nmax:
        nmax = n4
    if n5 > nmax:
        nmax = n5

    print(nmax)
