using System;
using System.Collections.Generic;
using System.Linq;

namespace PaizaTest
{
    class Program
    {
        static void Main(string[] args)
        {
            var NM = Console.ReadLine().Split(' ').Select(int.Parse).ToList();

            var S = new int[NM[1]];
            var C = new int[NM[1]];

            for (int i = 0; i < NM[1]; i++)
            {
                var line = Console.ReadLine().Split(' ').Select(int.Parse).ToList();
                S[i] = line[0];
                C[i] = line[1];
            }

            // N桁目
            // 左から数えてS桁目はCである
            var result = int.MaxValue;
            for (int i = (int)Math.Pow(10, NM[0] - 1) - 1; i < Math.Pow(10, NM[0]); i++)
            {
                var length = i.ToString().Length;
                var allCorrect = true;
                for (int m = 0; m < NM[1]; m++)
                {
                    var targetI = (int)(i / Math.Pow(10, length - S[m]));
                    targetI = targetI % 10;
                    if (targetI != C[m])
                    {
                        allCorrect = false;
                    }
                }

                if (allCorrect) result = Math.Min(i, result);
            }

            //var a = 702;
            //for (int m = 0; m < NM[1]; m++)
            //{
            //    var tarA = (int)(a / Math.Pow(10, 3 - S[m]));
            //    tarA = tarA % 10;
            //    Console.WriteLine($"tarA: {tarA}, C[m]: {C[m]}");
            //    if (tarA != C[m])
            //    {
            //        Console.WriteLine("false");
            //    }
            //}

            Console.WriteLine(result == int.MaxValue ? -1 : result);

        }
    }
}
