docs: public SharedSlot allocateSharedSlot(SlotSharingGroupAssignment sharingGroupAssignment)
  			throws InstanceDiedException {
  
  		synchronized (instanceLock) {
  			if (isDead) {
  				throw new InstanceDiedException(this);
  			}
  
  			Integer nextSlot = availableSlots.poll();
  			if (nextSlot == null) {
  				return null;
  			}
  			else {
  				SharedSlot slot = new SharedSlot(
  					this,
  					location,
  					nextSlot,
  					taskManagerGateway,
  					sharingGroupAssignment);
  				allocatedSlots.add(slot);
  				return slot;
  			}
  		}
  	}