function withdrawTo(address addr) postStart notNullified returns (bool) {
		uint _d = deposited[addr];
		uint _w = withdrawn[addr];

		uint diff = _withdrawTo(_d, _w, block.timestamp, total);

		
		if (diff == 0) {
			return false;
		}

		
		require((diff + _w) <= ((_d * total) / totalfv));

		
		require(token.transfer(addr, diff));

		withdrawn[addr] += diff;
		remainder -= diff;
		Withdraws(addr, diff);
		return true;
	}