#!/bin/python3 import sys def costlyIntervals(n, k, A): # Return a list of length n consisting of the answers ans = [-1]*len(A) for i in range(0, len(A)): Max = A[i] Min = A[i] Or = A[i] And = A[i] for j in range(i, len(A)): Max = max(Max,A[j]) Min = min(Min,A[j]) Or |= A[j] And &= A[j] if ((Or-And)-(Max-Min)) == k: ans[i] = (j-i+1) ans[j] = (j-i+1) return ans if __name__ == "__main__": n, k = input().strip().split(' ') n, k = [int(n), int(k)] A = list(map(int, input().strip().split(' '))) result = costlyIntervals(n, k, A) print ("\n".join(map(str, result)))