// Задача "Луна"
// XVIII командный чемпионат школьников Санкт-Петербурга по программированию
// Автор задачи: Юрий Петров
// Автор решения: Владимир Ульянцев, ulyantsev@rain.ifmo.ru
//
// Решение за O(w^3 h)

uses
    sysutils, Math;
const
    MAXW = 1000;
    MAXH = 1000;
    MAXS = 25;
type
    int = longint;

var
    w, h, white_cnt : int;
    a : array [1..MAXH, 1..MAXW] of boolean;
    l : array [1..MAXH, 1..MAXW] of int;
    up, down : array [0..MAXH + 1, 0..MAXW + 1] of int;

procedure read_with_assertions();
var
    i, j : int;
    s : string;
begin
    assign(input, 'moon.in');
    reset(input);

    readln(w, h);
    assert((1 <= w) and (w <= MAXW));
    assert((1 <= h) and (h <= MAXH));

    white_cnt := 0;
    for i := 1 to h do begin
        readln(s);
        assert(length(s) = w);
        for j := 1 to w do begin
            assert((s[j] = '*') or (s[j] = '.'));
            a[i][j] := (s[j] = '*');
            if (s[j] = '*') then begin
                white_cnt := white_cnt + 1;
            end;

        end;
    end;
    close(input);
end;

procedure precalc();
var
    i, j : int;
begin
    fillchar(up, sizeof(up), 0);
    fillchar(down, sizeof(down), 0);

    for i := 1 to h do begin
        for j := 1 to w do begin
            if (a[i][j]) then begin
                up[i][j] := up[i - 1][j] + 1;
            end;
        end;
    end;
    
    for i := h downto 1 do begin
        for j := 1 to w do begin
            if (a[i][j]) then begin
                down[i][j] := down[i + 1][j] + 1;
            end;
            l[i][j] := min(up[i][j], down[i][j]);
            //write(l[i][j], ' ');
        end;
        //writeln;
    end;
end;

function check_position_n2(x, y : int) : int;
var
    r, i, j, c : int;
begin
    result := -1;

    for r := 0 to w do begin
        if ((x + r > h) or (x - r < 1) or (y + r > w) or (y - r < 1)) then begin
            exit;
        end;

        c := 0;
        for j := y - r to y + r do begin
            i := floor(sqrt(sqr(r) - sqr(y - j))) + 1;
            if (l[x][j] >= i) then begin
                c := c + 2 * i - 1;
            end else begin
                exit;
            end;
        end;

        if (white_cnt - c <= MAXS) then begin
            result := r;
        end;
    end;        
end;

var
    i, j, r, x, y, ans : int;

begin
    read_with_assertions;
    precalc;

    ans := -1;
    x := -1;
    y := -1;
    for i := 1 to h do begin
        for j := 1 to w do begin
            r := check_position_n2(i, j);
            if (ans < r) then begin
                ans := r;
                x := i;
                y := j;
            end;
        end;
    end;

    writeln(1);
    assert(ans >= 0);

    assign(output, 'moon.out');
    rewrite(output);

    writeln(ans);
    writeln(y, ' ', x);

    close(output);
end.
