import java.util.*;

public class Main {

  public static void main (String[] args) {

    Scanner sc = new Scanner(System.in);

    int N = sc.nextInt();
    int L = sc.nextInt();

    TreeMap<String, Integer> hashMap = new TreeMap<>();

    for (int i = 0; i < N; i++) {
      String s_ = sc.next();
      if (hashMap.containsKey(s_)) {
        Integer v_ = hashMap.get(s_);
        hashMap.put(s_,v_ + 1);
      } else { 
        hashMap.put(s_,1);
      }
    }

    sc.close();

    for (Map.Entry<String, Integer> map : hashMap.entrySet()) {
      for (int i = 0; i < map.getValue(); i++) {
        System.out.print(map.getKey());
      }
    }

    System.out.println("");

  }

}
/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz