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.*;
import java.io.*;
import static java.lang.Math.*;

class Main {

    public static void main( final String[] args ) {

	final Scanner stdin = new Scanner( System.in );

	while ( stdin.hasNextLine() ) {

	    final String input = stdin.nextLine();

	    final ArrayList<Integer> indicesOfJ = getIndicesOf( 'J', input );
	    int jCount = 0;
	    for ( int i : indicesOfJ ) {
		if ( input.startsWith( "JOI", i ) ){
		    jCount++;
		}			
	    }

	    final ArrayList<Integer> indicesOfI = getIndicesOf( 'I', input );
	    int iCount = 0;
	    for ( int i : indicesOfI ) {
		if ( input.startsWith( "IOI", i ) ) {
		    iCount++;
		}
	    }
	    System.out.println( jCount );
	    System.out.println( iCount );
	}	
    }

    public static ArrayList<Integer> getIndicesOf( char ch, String input ) {
	final ArrayList<Integer> indices = new ArrayList<Integer>();

	for ( int i = 0; i < input.length(); i++ ) {
	    if ( input.charAt( i ) == ch ) {
		indices.add( i );
	    }
	}
	
	return indices;
    }    
}