anchor.diff:  			function finish(): Iterator;
   
   			function at(num: integer): integer;
  +			function empty(): boolean;
   
   			procedure push_back(element: integer);
   			procedure insert(p: Iterator; element: integer);
  
positive.code: 		end;
  		length := length + 1;
  
  		tail := finish();
  
  		while not tail.equal(p) do
  		begin
  			tail.raw()^ := tail.prev().data();
  			tail := tail.prev();
  		end;
  	
  		p.raw()^ := element;
  	end;
  
  	function Vector.start(): Iterator;
  
negative.code: 
  	procedure Vector.push_back(element: integer);
  	begin
  		insert(finish(), element);
  	end;
  
  	procedure Vector.insert(p: Iterator; element: integer);
  	var
  		tail: Iterator;
  		index, i: integer;
  	begin
  		index := p.raw() - start().raw();
  		
  		if length = capacity then
  		begin
  			capacity := 3 * capacity div 2 + 1;
  