#include //#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //using namespace atcoder; using namespace std; using ll = long long; #define all(A) A.begin(),A.end() using vll = vector; #define rep(i, n) for (long long i = 0; i < (long long)(n); i++) using Graph = vector>>; vector seen; bool C = true; vector dist; ll mod = 998244353; int main() { ll H, W; cin >> H >> W; vll A(H * W); rep(i, H * W)cin >> A[i]; sort(all(A)); rep(i, H) { rep(w, W) { cout << A[i * W + w] <<" "; } cout << endl; } }