Kefa decided to make some money doing business on the Internet for exactly n days. He knows that on the i-th day (1 ≤ i ≤ n) he makes ai money. Kefa loves progress, that's why he wants to know the length of the maximum non-decreasing subsegment in sequence ai. Let us remind you that the subsegment of the sequence is its continuous fragment. A subsegment of numbers is called non-decreasing if all numbers in it follow in the non-decreasing order.

Help Kefa cope with this task!

Input

The first line contains integer n (1 ≤ n ≤ 105).

The second line contains n integers a1, a2, ..., an (1 ≤ ai ≤ 109).

Output

Print a single integer — the length of the maximum non-decreasing subsegment of sequence a.

Examples

Input

6
2 2 1 3 4 1


Output

3

Input

3
2 2 9


Output

3

Note

In the first test the maximum non-decreasing subsegment is the numbers from the third to the fifth one.

In the second test the maximum non-decreasing subsegment is the numbers from the first to the third one.
import java.util.*;
import java.io.*;

public class Main{

	public static int contains(int [] array,int a){
		int c=0;
		for(int i=0;i<array.length;i++){
			if(array[i]==a){
				c=1;
				break;
			}else{
				c=2;
			}
		}return c;
	}

	public static void print(int[] array){
		for(int i=0;i<array.length;i++){

			System.out.print(array[i]+" ");
		}
		System.out.println();
	}

	public static int[] sort(int[] array){
		int h=array.length/2;  // here, h is the interval.
		while(h>0){
			for(int i=h;i<array.length;i++){
				int temp=array[i];
				int j;
				for( j=i;j>=h && array[j-h]>temp; j=j-h){
					array[j]=array[j-h];
				}
				array[j]=temp;

				print(array);
			}
			h=h/2;
			
		}
		return array;
	}

	public static boolean isUpperCase(String s){
		return s==s.toUpperCase();
	}
	public static boolean isLowerCase(String s){
		return s==s.toLowerCase();
	}

	public static int con(String s, String a){
		int c=0;
		for(int i=0;i<s.length();i++){
			if(s.substring(i,i+1).equals(a)){
				c=1;
				break;
			}else{
				c=2;
			}
		}
		return c;
	}

	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		//int m=sc.nextInt();
		int[] array=new int[n];
		for(int i=0;i<n;i++){
			array[i]=sc.nextInt();
		}
		if(n==1){
			System.out.println(1);
		}else if(n==2){
			if(array[0]>array[1]){
				System.out.println(1);
			}else{
				System.out.println(2);
			}
		}else{
		ArrayList<Integer> list=new ArrayList<Integer>();
		int c=1;
		int j=0;
		while(j<n-1){
			if(array[j]<=array[j+1] && j!=n-2){
				j++;
				c++;
			}else if(array[j]<=array[j+1] && j==n-2){
				c++;
				list.add(c);
				j++;
			}
			else{
				j++;
				list.add(c);
				c=1;
			}
		}
		Collections.sort(list);
		System.out.println(list.get(list.size()-1));
	}
}

	public static int minpos(int[] array,int c){
		int a=0;
		ArrayList<Integer> list = new ArrayList<Integer>();
		for(int i=0;i<array.length;i++){
			if(array[i]==c){
				list.add(i);
			}
		}
		Collections.sort(list);
		return list.get(list.size()-1);
	}
	public static int maxpos(int[] array,int c){
		ArrayList<Integer> list=new ArrayList<Integer>();
		for(int i=0;i<array.length;i++){
			if(array[i]==c){
				list.add(i);
			}
		}
		Collections.sort(list);
		return list.get(0);
	}
	
}
