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

namespace _2199 {
    class Program {
        static void Main(string[] args) {
            int yNum = 256;
            int MAX_VAL = (int)Math.Pow(10.0, 6);
            while(true) {
                var nm = Console.In.ReadLine().Split(' ').Select(int.Parse).ToArray();
                var n = nm[0];
                var m = nm[1];
                if(n == 0 && m == 0) { break; }
                var c = new List<int>();
                var x = new List<int>();
                x.Add(128);
                for(int i = 0; i < m; i++) {
                    c.Add(int.Parse(Console.In.ReadLine()));
                }
                for(int i = 0; i < n; i++) {
                    x.Add(int.Parse(Console.In.ReadLine()));
                }
                //var values = new int[n + 1, yNum];
                var values = new int[n + 1][];
                for(int i=0; i<values.Length; ++i) { values[i] = new int[yNum]; }
                for(int i = 0; i < n + 1; i++) {
                    for(int j = 0; j < yNum; j++) {
                        values[i][j] = MAX_VAL;
                    }
                }
                values[0][128] = 0;
                for(int i = 0; i < n; i++) {
                    for(int j = 0; j < yNum; j++) {
                        for(int k = 0; k < m; k++) {
                            if((0 <= j + c[k]) && (j + c[k] <= 255)) {
                                values[i + 1][j + c[k]] = Math.Min(values[i + 1][j + c[k]], values[i][j] + (j + c[k] - x[i + 1]) * (j + c[k] - x[i + 1]));
                            }
                            else if(0 > j + c[k]) {
                                values[i + 1][0] = Math.Min(values[i + 1][0], values[i][j] + (0 - x[i + 1]) * (0 - x[i + 1]));
                            }
                            else {
                                values[i + 1][255] = Math.Min(values[i + 1][255], values[i][j] + (255 - x[i + 1]) * (255 - x[i + 1]));
                            }
                        }
                    }
                }
                Console.Out.WriteLine(values[n].Min());
            }
        }
    }
}