Solve the programming task below in a Python markdown code block.
There is a collection of rocks where each rock has various minerals embeded in it.  Each type of mineral is designated by a lowercase letter in the range $a s c i i[a-z]$. There may be multiple occurrences of a mineral in a rock. A mineral is called a gemstone if it occurs at least once in each of the rocks in the collection.

Given a list of minerals embedded in each of the rocks, display the number of types of gemstones in the collection.

Example 

$arr=[\text{'abc'},\text{'abc'},\text{'bc'}]$  

The minerals $\boldsymbol{b}$ and $\textbf{C}$ appear in each rock, so there are $2$ gemstones.

Function Description  

Complete the gemstones function in the editor below.    

gemstones has the following parameter(s):  

string arr[n]: an array of strings   

Returns  

int: the number of gemstones found 

Input Format

The first line consists of an integer $n$, the size of $\textbf{arr}$. 

Each of the next $n$ lines contains a string $arr\left[i\right]$ where each letter represents an occurence of a mineral in the current rock.

Constraints

$1\leq n\leq100$ 

$1\leq$ | arr[i] | $\leq100$ 

Each composition $arr\left[i\right]$ consists of only lower-case Latin letters ('a'-'z').  

Sample Input
STDIN       Function
-----       --------
3           arr[] size n = 3
abcdde      arr = ['abcdde', 'baccd', 'eeabg']
baccd
eeabg

Sample Output
2

Explanation

Only $a$ and $\boldsymbol{b}$ occur in every rock.