#include <cstdio>
#include <iostream>
#include <fstream>
#include <vector>
#include <list>
#include <map>
#include <set>
#include <queue>
#include <stack>
#include <bitset>
#include <algorithm>
#include <sstream>
#include <iomanip>
#include <cmath>
#include <cstdlib>
#include <ctype.h>
#include <cstring>
#include <string>
#include <ctime>
#include <cassert>
#include <utility>

using namespace std;

int v[5], aux[5], s, p, smax;

void copyArr() {
    for(int i = 0; i < 4; i++)
        aux[i] = v[i];
}

int main() {
//	freopen("date.in", "r", stdin);
//	freopen("date.out","w", stdout);

    for(int i = 0; i < 4; i++)
        cin >> v[i];

    smax = -1000000000;
    for(int a = 0; a < 4; a++)
        for(int b = 0; b < 4; b++) {
            copyArr();
            if(a != b) {
                s = aux[a] * aux[b];
                aux[a] = 1;
                aux[b] = 1;
                p = 1;
                for(int i = 0; i < 4; i++)
                    p *= aux[i];
                s += p;
            }
            smax = max(smax, s);
        }

    cout << smax;
	return 0;
}