b=a(end,:,end);
for point = 1:columns;
if 1<point & point<columns;
pointleft=(point-1);
pointright=(point+1);
elseif point==1;
pointleft=columns;
pointright=(point+1);
elseif point==columns;
pointleft=(point-1);
pointright=1;
end;
ruleplacenumber=(a(end,pointleft,end)+a(end,point,end)+a(end,pointright,end))+1;
ruleplacenumber=(possiblestates+1)-ruleplacenumber;
b(end,point)=rulenumberbinary(ruleplacenumber);
end;
a(end,:,end)=b;