Problem: problem

Create a program that counts the number of consecutive JOI or IOI characters in a given character string. The character string consists only of uppercase letters of the alphabet. For example, the character string "JOIOIOI" in the figure below contains JOI in one place and IOI in two places.

<image>



input

The input consists of multiple datasets. Each dataset is one line and consists of uppercase letters of the alphabet of 10,000 characters or less. Input ends with EOF.

The number of datasets does not exceed 5.

output

For each dataset, output the number of JOIs found in the first line and the number of IOIs found in the second line.

Examples

Input

JOIJOI
JOIOIOIOI
JOIOIJOINXNXJIOIOIOJ


Output

2
0
1
3
2
3


Input

None


Output

None

Solution (in JAVA):

Solution:
import java.util.*;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		List<Integer> arrayCntJOI = new ArrayList<>();
		List<Integer> arrayCntIOI = new ArrayList<>();
		
		while(sc.hasNext()) {
			String str = sc.next();
			
			char[] charStr = str.toCharArray();

			int cntJOI = 0, cntIOI = 0;
			
			for(int i = 2; i < charStr.length; i++) {
				
				if(String.valueOf(charStr[i - 2] + "" + charStr[i - 1] + "" + charStr[i]).equals("JOI")) {
					cntJOI++;
				}
				
				if(String.valueOf(charStr[i - 2] + "" + charStr[i - 1] + "" + charStr[i]).equals("IOI")) {
					cntIOI++;
				}
			}
			
			arrayCntJOI.add(cntJOI);
			arrayCntIOI.add(cntIOI);
		}
		
		for(int i = 0; i < arrayCntJOI.size(); i++) {
			System.out.println(arrayCntJOI.get(i));
			System.out.println(arrayCntIOI.get(i));
		}
	}
}