#include <stdio.h>

int main() {
  int h, w;
  while (scanf("%d%d", &h, &w), h | w) {
    for (int i = 0; i < h; ++i) {
      for (int j = 0; j < w; ++j) {
        printf("#");
      }
      printf("\n");
    }
    printf("\n");
  }
}

### Prompt

Create a solution in cpp for 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 h, w;
  while (scanf("%d%d", &h, &w), h | w) {
    for (int i = 0; i < h; ++i) {
      for (int j = 0; j < w; ++j) {
        printf("#");
      }
      printf("\n");
    }
    printf("\n");
  }
}

```