docs: public static List<BundleEntryParts> toListOfEntries(FhirContext theContext, IBaseBundle theBundle) {
  		List<BundleEntryParts> retVal = new ArrayList<>();
  
  		RuntimeResourceDefinition def = theContext.getResourceDefinition(theBundle);
  		BaseRuntimeChildDefinition entryChild = def.getChildByName("entry");
  		List<IBase> entries = entryChild.getAccessor().getValues(theBundle);
  
  		BaseRuntimeElementCompositeDefinition<?> entryChildElem = (BaseRuntimeElementCompositeDefinition<?>) entryChild.getChildByName("entry");
  
  		BaseRuntimeChildDefinition resourceChild = entryChildElem.getChildByName("resource");
  		BaseRuntimeChildDefinition requestChild = entryChildElem.getChildByName("request");
  		BaseRuntimeElementCompositeDefinition<?> requestElem = (BaseRuntimeElementCompositeDefinition<?>) requestChild.getChildByName("request");
  		BaseRuntimeChildDefinition urlChild = requestElem.getChildByName("url");
  		BaseRuntimeChildDefinition methodChild = requestElem.getChildByName("method");
  
  		for (IBase nextEntry : entries) {
  			IBaseResource resource = null;
  			String url = null;
  			RequestTypeEnum requestType = null;
  
  			for (IBase next : resourceChild.getAccessor().getValues(nextEntry)) {
  				resource = (IBaseResource) next;
  			}
  			for (IBase nextRequest : requestChild.getAccessor().getValues(nextEntry)) {
  				for (IBase nextUrl : urlChild.getAccessor().getValues(nextRequest)) {
  					url = ((IPrimitiveType<?>) nextUrl).getValueAsString();
  				}
  				for (IBase nextUrl : methodChild.getAccessor().getValues(nextRequest)) {
  					String methodString = ((IPrimitiveType<?>) nextUrl).getValueAsString();
  					if (isNotBlank(methodString)) {
  						requestType = RequestTypeEnum.valueOf(methodString);
  					}
  				}
  			}
  
  			/*
  			 * All 3 might be null - That's ok because we still want to know the
  			 * order in the original bundle.
  			 */
  			retVal.add(new BundleEntryParts(requestType, url, resource));
  		}
  
  
  		return retVal;
  	}