小瓦正在 某交 大扫除。
要清扫的地面可以抽象为一个 的网格,脏的地方用 # 表示,扫帚占据的区域用 * 表示。接触到扫帚占据的区域的格子会立即变得干净,用 . 表示。
#
*
.
小瓦可以向上、下、左或右移动所有扫帚,移动时,扫帚占据的区域的每一个格子都会向对应的方向移动一格。移动不能超出网格的边界。
现在,你需要求出在小 B 将网格清扫得尽量干净(即脏的格子尽可能的少)时,这块地面的样子。
第一行两个正整数 ,分别表示网格的行数和列数。
接下来 行,每行一个长度为 的字符串,只包含字符 # 和 *,表示网格的初始状态。保证网格中至少有一个 *。
输出共 行,每行一个长度为 的字符串,只包含字符 # 和 .,表示网格的最终状态。
3 3 ### #*# ###
... ... ...
扫帚可以自由移动,每个格子都能被打扫。
4 3 #*# *** #*# ###
#.# ... ... #.#
扫帚可以向下移动一格。
5 5 ##*## ##### *###* ##### ##*##
##.## ##### .###. ##### ##.##
扫帚无法移动,所以只有最初在的格子能被打扫。注意扫帚所在的格子可能不连通。
见附加文件。
对于 的数据,。