사라는 커다란 직사각형 땅에서 농사를 짓는다. 땅은 $5R$개의 행과 $5C$개의 열로 이루어진 격자다. 다섯 행마다 가로 울타리가, 다섯 열마다 세로 울타리가 놓여 있어서 땅은 $5 \times 5$ 크기의 구역 $R \times C$개로 나뉜다.
새가 작물을 쪼아 먹는 것을 막으려고 몇몇 구역에는 허수아비가 서 있다. 허수아비는 칸 하나를 차지하고, 한 구역에 많아야 하나 있다.
가뭄에는 스프링클러로 물을 준다. 스프링클러 하나에는 노즐이 셋 있다. 가운데 노즐 하나와 옆 노즐 둘이고, 옆 노즐은 가운데 노즐과 상하좌우로 인접한 칸에 하나씩 놓인다. 그래서 스프링클러 하나는 정확히 세 칸을 차지하고 그 세 칸에 물을 준다. 세 칸은 일직선이거나 ㄱ자 모양이다.
물주기 계획은 허수아비가 없는 모든 칸에 스프링클러가 정확히 하나씩 물을 주도록 스프링클러를 놓은 것이다. 허수아비가 있는 칸에는 노즐을 놓지 않고, 노즐은 땅 밖으로 나가지 않는다.
스프링클러 하나가 물을 주는 세 칸이 같은 구역에 있어야 하는 것은 아니다. 세 칸이 이웃한 구역에 걸치면 사라는 그 두 칸 사이의 울타리에 구멍을 뚫는다.
계획은 땅과 같은 모양의 문자 그림으로 적는다. 빈 칸 자리에는 소문자를 적고, 같은 스프링클러가 물을 주는 두 칸 사이의 울타리 문자는 밑줄 _로 바꾼다. 글자는 다음 규칙을 따른다.
이 규칙 덕분에 계획만 보고 스프링클러를 되살릴 수 있다. 인접한 두 칸은 글자가 같으면서 같은 구역에 있거나, 글자가 같으면서 사이에 구멍이 뚫려 있을 때 같은 스프링클러가 담당한다. 이렇게 이어지는 칸을 모두 모은 덩어리 하나가 스프링클러 하나다.
땅과 계획이 주어진다. 계획이 올바른지 판정하고, 올바르면 울타리에 뚫은 구멍의 개수를 세어라. 계획은 다음 세 조건을 모두 만족할 때 올바르다.
#가, 빈 칸 자리에는 소문자 하나가 적혀 있다. 울타리 자리에는 원래 울타리 문자나 밑줄이 있고, 울타리가 만나는 + 자리는 그대로 +다.첫째 줄에 $R$과 $C$가 주어진다. ($1 \le R, C \le 100$)
다음 $6R-1$개 줄에는 각각 문자 $6C-1$개로 땅이 주어진다. 칸 하나는 문자 하나로 나타낸다. .은 빈 칸, #(아스키 35)은 허수아비다. 세로 울타리는 |(아스키 124), 가로 울타리는 -(빼기 기호)로 나타내고, 울타리가 만나는 자리는 +로 나타낸다. 울타리는 두께가 없지만 문자로 그린다.
이어서 $6R-1$개 줄에 같은 모양으로 계획이 주어진다. 계획의 각 줄은 영문자와 #, |, -, +, _로 이루어진다. 올바른 계획이라는 보장은 없다.
계획이 올바르면 울타리에 뚫은 구멍의 개수를 출력한다. 올바르지 않으면 -1을 출력한다.