n,m=gets.split.map &:to_i a=(1..m).map{gets} i=0...m*n i.any?{|z|a[z/n][z%n]>?-&&(q=[z-1] (z=q.shift;x=z/n;[[x+1,y=z%n],[x,y+1],[x-1,y],[x,y-1]].map{|e,f|a[e][f]>?-&&(a[e][f]=?!;q+=[e*n+f])})while[]!=q;0)} c=99 i.map{|z|i.map{|w|a[z/n][z%n]+a[w/n][w%n]==".!"&&c=[c,(z/n-w/n).abs+(z%n-w%n).abs-1].min}} p c