膜法记录
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

牛牛最近在玩一款叫做《膜法记录》的游戏,这个游戏的机制是这样的:
在一局游戏中,所有的敌人都排布在一个  行  列的网格中,牛牛指挥着他的魔法少女对敌人进行攻击。
攻击有两种类型:行blast,列blast
行blast能消灭一整行的敌人,列blast能消灭一整列的敌人
牛牛总共能够释放  次行blast, 次列blast
给定某局游戏的初始局面,请问牛牛能否将敌人全歼?

输入描述:

第一行包含一个正整数,表示测试数据组数,接下来是组测试数据
每组测试数据的第一行有四个正整数 ,,,
接下来有行,每行是一个长度为的字符串,第行第列的字符如果是*则说明这里有一个敌人,如果是.说明这里没有

输出描述:

对每组测试数据输出一行,如果能消灭所有的敌人,就输出yes,否则输出no
示例1

输入

复制
2
3 3 1 2
..*
.*.
*..
4 4 3 1
..**
**..
.**.
*.**

输出

复制
yes
no

说明

第一个样例,我可以在第一行放一个行blast,然后前两列都放一个列blast,就把敌人给全歼了。第二个样例,我不管怎么安排攻击策略,都没法全歼敌人

备注:

要么

要么

对于以上两种情况都满足:0 \le a \le n, 0 \le b \le m