```

Time Limit: 15000 MS    Memory Limit: 65536 K

Description
Mirko has got a mailman job in a small town in the hills.
The town can be represented by a N¡ÁN matrix. Each field
contains one of the following, exclusively: a house
denoted by ¡®K¡¯, the post office denoted by ¡®P¡¯,
or a pasture denoted by ¡®.¡¯. Additionally,
each field is assigned an altitude.

Every morning, Mirko delivers mail to all houses in the town.
He starts at the field denoted by ¡®P¡¯, which represents a
single post office in the town. Mirko is allowed to move
horizontally, vertically and diagonally, to adjacent squares only.
Once he delivers the last piece of mail, he must return to the post office.

Mirko did not have a clue about how tiresome his job will be.
Let the difference between the heights of the highest and the
lowest field Mirko visits while delivering the mail be equal
to his tiredness. Help him out and determine the least tiredness
possible for Mirko to deliver all the mail.

Input
The first line of input contains an integer N (2 ¡Ü N ¡Ü 50).

The following N lines represent fields in the corresponding matrix row.
The character ¡®P¡¯ will appear exactly once,
while the character ¡®K¡¯ will appear at least once.

The following N lines each contain N positive integers,
the altitudes of the fields in the corresponding matrix row.
Those values are less than 1 000 000.

Output
In a single line of output print a single integer
that represents the minimum possible tiredness.

Sample Input
2
P.
.K
2 1
3 2

3
P..
.KK
...
3 2 4
7 4 2
2 3 1

3
K.P
...
K.K
3 3 4
9 5 9
8 3 7

Sample Output
0
2
5

Source
COCI 2010/2011

```