#include<stdio.h>

int main(void){
int H,W,i,I,j;
for(j=0;j<10000;j++){
	scanf("%d %d",&H,&W);
	if(H!=0){
	for(i=0;i<H;i++){
		for(I=0;I<W;I++){
			printf("#");
		}
		printf("\n");
	}
	printf("\n");
}else{
	break;
}
}
return 0;

}

### Prompt

Generate 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(void){
int H,W,i,I,j;
for(j=0;j<10000;j++){
	scanf("%d %d",&H,&W);
	if(H!=0){
	for(i=0;i<H;i++){
		for(I=0;I<W;I++){
			printf("#");
		}
		printf("\n");
	}
	printf("\n");
}else{
	break;
}
}
return 0;

}

```