#!/bin/python import sys import itertools from operator import ior from operator import iand def costlyIntervals(n, k, A): F = [] F= [-1]*n a = [] for i in range(1,n+1): a.append(i) ans = list(itertools.combinations(a,2)) l = len(ans) for i in range(l): t = ans[i] arr = A[t[0]:t[1]+1] #print arr val1 = max(arr)-min(arr) val2 = reduce(ior, arr)-reduce(iand, arr) if abs(val1-val2)==k: F[t[0]]=len(t) F[t[1]]=len(t) return F if __name__ == "__main__": n, k = raw_input().strip().split(' ') n, k = [int(n), int(k)] A = map(int, raw_input().strip().split(' ')) result = costlyIntervals(n, k, A) print "\n".join(map(str, result))