The developers of Looksery have to write an efficient algorithm that detects faces on a picture. Unfortunately, they are currently busy preparing a contest for you, so you will have to do it for them. 

In this problem an image is a rectangular table that consists of lowercase Latin letters. A face on the image is a 2 × 2 square, such that from the four letters of this square you can make word "face". 

You need to write a program that determines the number of faces on the image. The squares that correspond to the faces can overlap.
The first line contains two space-separated integers, *n* and *m* (1 ≤ *n*, *m* ≤ 50) — the height and the width of the image, respectively.

Next *n* lines define the image. Each line contains *m* lowercase Latin letters.
import math,string,itertools,fractions,heapq,collections,re,array,bisect
from itertools import chain, dropwhile, permutations, combinations
from collections import defaultdict, deque

def VI(): return list(map(int,input().split()))

def main(n,m,im):
    ans = 0
    if n==1 or m==1:
        print(ans)
        return
    def detect(x):
        if len(x)<4: return 0
        if 'x' not in x:
            return 1
        return 0
    for i in range(n):
        for j in range(m):
            if im[i][j] == 'f':
                if i>0 and j>0:
                    ans += detect(im[i-1][j-1:j+1] + im[i][j-1:j+1])
                if i<n-1 and j>0:
                    ans += detect(im[i][j-1:j+1] + im[i+1][j-1:j+1])
                if i>0 and j<m-1:
                    ans += detect(im[i-1][j:j+2] + im[i][j:j+2])
                if i<n-1 and j<m-1:
                    ans += detect(im[i][j:j+2] + im[i+1][j:j+2])
    print(ans)


def main_input(info=0):
    n,m = VI()
    im = list(range(n))
    for i in range(n):
        im[i] = input()
    main(n,m,im)

if __name__ == "__main__":
    main_input()
