T1
def judge(a,b,c):
if a+b>c and a+c>b and b+c>a:
return True
return False
n=int(input())
ans=[]
for i in range(1,n+1):
for j in range(i,n+1):
for k in range(j,n+1):
if i^j^k==0 and judge(i,j,k):
ans.append(1)
print(len(ans))
T2
n,s=map(int,input().split())
a=list(map(int,input().split()))
res=sum(a)
for i in range(n):
tmp1=res-a[i]
min_val=max(1,s-tmp1)
max_val=min(s-n+1,a[i])
len=max_val-min_val+1
print(a[i]-len,end=" ")