#include<stdio.h>
int main(){
int a[100],b[100],i=0;
do{
scanf("%d %d",&a[i],&b[i]);
i++;
}while(a[i-1]!=0||b[i-1]!=0);
for(int x=0;x<i-1;x++){
for(int y=0;y<a[x];y++){
for(int z=0;z<b[x];z++){
printf("#");
}
printf("\n");
}
printf("\n");
}
}
### Prompt

Please formulate a Cpp solution to the following problem:

Draw a rectangle which has a height of H cm and a width of W cm. Draw a 1-cm square by single '#'.

Constraints

* 1 ≤ H ≤ 300
* 1 ≤ W ≤ 300

Input

The input consists of multiple datasets. Each dataset consists of two integers H and W separated by a single space.

The input ends with two 0 (when both H and W are zero).

Output

For each dataset, print the rectangle made of H × W '#'.

Print a blank line after each dataset.

Example

Input

3 4
5 6
2 2
0 0


Output

####
####
####

######
######
######
######
######

##
##

### Response

```cpp
#include<stdio.h>
int main(){
int a[100],b[100],i=0;
do{
scanf("%d %d",&a[i],&b[i]);
i++;
}while(a[i-1]!=0||b[i-1]!=0);
for(int x=0;x<i-1;x++){
for(int y=0;y<a[x];y++){
for(int z=0;z<b[x];z++){
printf("#");
}
printf("\n");
}
printf("\n");
}
}
```