import java.util.Scanner;

public class Main {

    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        long[] a = new long[n];
        for(int i = 0;i < n;i++) a[i] = sc.nextLong();
        sc.close();
        System.out.println(max(a));
    }

    private static long max(long[] a){
        long max,ma = -1,l = a.length;
        int in = 0;
        for(int i = 1;i < l;i++){
            if(ma < a[i]){
                ma = a[i];
                in = i;
            }
        }
        max = ma - a[0];
        for(int i = 1;i < l - 1;i++){
            if(i == in){
                ma = -1;
                for(int j = in + 1;j < l;j++){
                    if(ma < a[j]){
                        ma = a[j];
                        in = j;
                    }
                }
            }
            if(max < ma - a[i]) max = ma - a[i];
        }
        return max;
    }

}
/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz