function VBGetAllPersistentData()
  safe_array = window.external.GetAllPersistentData(array_size)
  VBGetAllPersistentData = VBGetArray(safe_array, array_size)
end function

function VBGetAllAppPersistentData()
  safe_array = window.external.LoadSettings(array_size)
  VBGetAllAppPersistentData = VBGetArray(safe_array, array_size)
end function

function VBGetFileTypes()
  safe_array = window.external.GetFileTypes(array_size)
  VBGetFileTypes = VBGetArray(safe_array, array_size)
end function

function VBGetExtensionList()
  safe_array = window.external.GetExtensionList(array_size)
  VBGetExtensionList = VBGetArray(safe_array, array_size)
end function

function VBGetDefaultExtensionList()
  safe_array = window.external.GetDefaultExtensionList(array_size)
  VBGetDefaultExtensionList = VBGetArray(safe_array, array_size)
end function

function VBGetArray(safe_array, array_size)
  Dim vb_array()
  Dim upper
  Dim lower
  Dim i
  
  upper = UBound(safe_array)
  lower = LBound(safe_array)
  
  if(upper >= 0) then
    Redim vb_array(upper)
    for i = lower to upper
      vb_array(i) = safe_array(i)
    next
  else
    Redim vb_array(0)
    vb_array(0) = ""
  end if
  
  VBGetArray = vb_array
end function

function VBCreateArray(num_elements)
  Dim vb_array()
  
  if(num_elements > 0) then
    ReDim vb_array(num_elements - 1)
  else
    ReDim vb_array(0)
	vb_array(0) = ""
  end if
  
  VBCreateArray = vb_array
end function

function VBSetElement(array, index, value)
  array(index) = value
  VBSetElement = array
end function
