import java.util.*;

public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    long a = sc.nextLong();
    long b = sc.nextLong();
    long c = sc.nextLong();
    long d = sc.nextLong();
    
    long ans = a * c > a * d ? a * c : a * d;
    ans = b * c > ans ? b * c : ans;
    ans = b * d > ans ? b * d : ans;
    
    System.out.println(ans);
  }
} import java.util.*; util.* java public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    long a = sc.nextLong();
    long b = sc.nextLong();
    long c = sc.nextLong();
    long d = sc.nextLong();
    
    long ans = a * c > a * d ? a * c : a * d;
    ans = b * c > ans ? b * c : ans;
    ans = b * d > ans ? b * d : ans;
    
    System.out.println(ans);
  }
} Main public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    long a = sc.nextLong();
    long b = sc.nextLong();
    long c = sc.nextLong();
    long d = sc.nextLong();
    
    long ans = a * c > a * d ? a * c : a * d;
    ans = b * c > ans ? b * c : ans;
    ans = b * d > ans ? b * d : ans;
    
    System.out.println(ans);
  } main {
    Scanner sc = new Scanner(System.in);
    long a = sc.nextLong();
    long b = sc.nextLong();
    long c = sc.nextLong();
    long d = sc.nextLong();
    
    long ans = a * c > a * d ? a * c : a * d;
    ans = b * c > ans ? b * c : ans;
    ans = b * d > ans ? b * d : ans;
    
    System.out.println(ans);
  } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) long a = sc.nextLong(); a sc.nextLong() sc.nextLong sc long b = sc.nextLong(); b sc.nextLong() sc.nextLong sc long c = sc.nextLong(); c sc.nextLong() sc.nextLong sc long d = sc.nextLong(); d sc.nextLong() sc.nextLong sc long ans = a * c > a * d ? a * c : a * d; ans a * c > a * d ? a * c : a * d a * c > a * d a * c a c a * d a d a * c a c a * d a d ans = b * c > ans ? b * c : ans ans b * c > ans ? b * c : ans b * c > ans b * c b c ans b * c b c ans ans = b * d > ans ? b * d : ans ans b * d > ans ? b * d : ans b * d > ans b * d b d ans b * d b d ans System.out.println(ans) System.out.println System.out System System.out ans String[] args args public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    long a = sc.nextLong();
    long b = sc.nextLong();
    long c = sc.nextLong();
    long d = sc.nextLong();
    
    long ans = a * c > a * d ? a * c : a * d;
    ans = b * c > ans ? b * c : ans;
    ans = b * d > ans ? b * d : ans;
    
    System.out.println(ans);
  }
} public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    long a = sc.nextLong();
    long b = sc.nextLong();
    long c = sc.nextLong();
    long d = sc.nextLong();
    
    long ans = a * c > a * d ? a * c : a * d;
    ans = b * c > ans ? b * c : ans;
    ans = b * d > ans ? b * d : ans;
    
    System.out.println(ans);
  }
} Main
import java.util.*;

public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    long a = sc.nextLong();
    long b = sc.nextLong();
    long c = sc.nextLong();
    long d = sc.nextLong();
    
    long ans = a * c > a * d ? a * c : a * d;
    ans = b * c > ans ? b * c : ans;
    ans = b * d > ans ? b * d : ans;
    
    System.out.println(ans);
  }
}