問題
サターニャさんが住む街は H 行 W 列のマスに区切られた長方形の形で表されます。
それぞれのマスは, 以下の文字で表されいずれかの意味を持ちます。
- 'S': サターニャさんが通う高校である。
- 'G': サターニャさんの家である。
- '.': 道である。
- '#': 障害物である。
サターニャさんは, 高校から家にメロンパンを持って帰宅しようとしています。 具体的には, 高校から家に辺で隣接するマスを通って移動します。このとき障害物マスに入ることはできません。
サターニャさんは帰宅はしますが, 馬や鹿のような思考能力を持つ(ガヴリールさんからそう教わったらしい)ので必ずしも最短経路を通って移動するとは限りません。
犬は, サターニャさんが持っているメロンパンが大好物です。 このメロンパンを得るために, 道マスから 1 マスを選んでそのマスで待ち伏せすることに決めました。学校と家はサターニャさんによって掌握されているので, それらのマスを選ぶことはできないので注意してください。
犬は, サターニャさんが必ず通過する道マスで待ち伏せしたいです。 このようなマスがあるか判定してください。
入力
H W S1,1S1,2...S1,W S2,1S2,2...S2,W : SH,1SH,2...SH,W
1 行目に長方形の行数 H(1 ≤ H ≤ 100), 列数 W(1 ≤ W ≤ 100) が与えられます。
つづく H 行には, それぞれ W 個からなる文字列が与えられます。 i 行 j 列目の文字 Si,j('S', 'G', '.', '#' のいずれか) は, サターニャさんが住む街の i 行 j 列目のマスが Si,j の意味を持つことを表します。
'S' と 'G' は, それぞれちょうど 1 回出現し, 'S' から 'G' に移動できることが保証されています。
出力
1 行に, サターニャさんが必ず通過する道マスが存在する時 yes, 存在しないとき no を出力してください。
入出力例
入力例 1
3 3 S.# #.# #.G
出力例 1
yes
2 列目のどのマスで待っていても, 必ずサターニャさんが通過します。
入力例 2
3 3 S.. .#. ..G
出力例 2
no
右上のマスを通る経路, 左下のマスを通る経路の 2 つ存在します。どのマスを選んでも, 別の経路が選ばれる可能性があります。
入力例 3
3 4 .... .SG. ....
出力例 3
no