<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="ResLink" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="ResLink" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">For documentation please go &lt;a href="../doco_Package/Default.aspx"&gt;here&lt;/a&gt;</wsdl:documentation>
  <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="ResLink">
      <s:element name="Ping">
        <s:complexType />
      </s:element>
      <s:element name="PingResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="PingResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="ResLinkSoapHeader" type="tns:ResLinkSoapHeader" />
      <s:complexType name="ResLinkSoapHeader">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="GUID" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Password" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ProviderGUID" type="s:string" />
        </s:sequence>
        <s:anyAttribute />
      </s:complexType>
      <s:element name="GetPackageTypes">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetPackageTypesRequest" type="tns:GetPackageTypes_RQ" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetPackageTypes_RQ">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonRequest" />
        </s:complexContent>
      </s:complexType>
      <s:complexType name="CommonRequest" abstract="true" />
      <s:element name="GetPackageTypesResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetPackageTypesResult" type="tns:GetPackageTypes_RS" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetPackageTypes_RS">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonResponse">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="PackageTypes" type="tns:ArrayOfPackageType" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="CommonResponse" abstract="true">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="TimeStamp" type="s:dateTime" />
          <s:element minOccurs="0" maxOccurs="1" name="Status" type="tns:Status" />
          <s:element minOccurs="0" maxOccurs="1" name="Errors" type="tns:ArrayOfErrorItem" />
          <s:element minOccurs="0" maxOccurs="1" name="Warnings" type="tns:ArrayOfWarningItem" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Status">
        <s:attribute name="Code" type="s:int" use="required" />
        <s:attribute name="Message" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfErrorItem">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="ErrorItem" nillable="true" type="tns:ErrorItem" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ErrorItem">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="Code" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Source" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfWarningItem">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="WarningItem" nillable="true" type="tns:WarningItem" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="WarningItem">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfPackageType">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="PackageType" nillable="true" type="tns:PackageType" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="PackageType">
        <s:attribute name="ID" type="s:string" />
        <s:attribute name="Description" type="s:string" />
      </s:complexType>
      <s:element name="GetPackages">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetPackagesRequest" type="tns:GetPackages_RQ" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetPackages_RQ">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonRequest">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="PackageTypes" type="tns:ArrayOfPackageType" />
              <s:element minOccurs="0" maxOccurs="1" name="Agent" type="tns:AvailAgent" />
            </s:sequence>
            <s:attribute name="LastDateCalled" type="s:dateTime" use="required" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="AvailAgent">
        <s:attribute name="ID" type="s:string" />
        <s:attribute name="GUID" type="s:string" />
      </s:complexType>
      <s:element name="GetPackagesResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetPackagesResult" type="tns:GetPackages_RS" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetPackages_RS">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonResponse">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Packages" type="tns:ArrayOfPackage" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="ArrayOfPackage">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Package" nillable="true" type="tns:Package" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Package">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="PackageType" type="tns:PackageType" />
        </s:sequence>
        <s:attribute name="ID" type="s:string" />
        <s:attribute name="Description" type="s:string" />
      </s:complexType>
      <s:element name="GetPackageDetails">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetPackageDetailRequest" type="tns:GetPackageDetail_RQ" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetPackageDetail_RQ">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonRequest">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="PackageID" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="Agent" type="tns:AvailAgent" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="GetPackageDetailsResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetPackageDetailsResult" type="tns:GetPackageDetail_RS" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetPackageDetail_RS">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonResponse">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="PackageDetails" type="tns:ArrayOfPackageDetail" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="ArrayOfPackageDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="PackageDetail" nillable="true" type="tns:PackageDetail" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="PackageDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PackageTemplates" type="tns:ArrayOfPackageTemplate" />
          <s:element minOccurs="0" maxOccurs="1" name="Images" type="tns:ArrayOfImage" />
          <s:element minOccurs="0" maxOccurs="1" name="Tags" type="tns:ArrayOfTag" />
          <s:element minOccurs="0" maxOccurs="1" name="Featured" type="tns:FeaturedProduct" />
          <s:element minOccurs="0" maxOccurs="1" name="TermsAndConditions" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BonusPoints" type="tns:ArrayOfBonusPoint" />
          <s:element minOccurs="0" maxOccurs="1" name="Addons" type="tns:ArrayOfAddon" />
        </s:sequence>
        <s:attribute name="ID" type="s:int" use="required" />
        <s:attribute name="Name" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfPackageTemplate">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="PackageTemplate" nillable="true" type="tns:PackageTemplate" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="PackageTemplate">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Components" type="tns:ArrayOfOpVoucherComponent" />
        </s:sequence>
        <s:attribute name="ID" type="s:int" use="required" />
        <s:attribute name="Description" type="s:string" />
        <s:attribute name="DefaultComponentID" type="s:int" use="required" />
        <s:attribute name="SortOrder" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfOpVoucherComponent">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="OpVoucherComponent" nillable="true" type="tns:OpVoucherComponent" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="OpVoucherComponent">
        <s:attribute name="ID" type="s:int" use="required" />
        <s:attribute name="Description" type="s:string" />
        <s:attribute name="VoucherType" type="s:string" />
        <s:attribute name="SupplierName" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfImage">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Image" nillable="true" type="tns:Image" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Image">
        <s:attribute name="Description" type="s:string" />
        <s:attribute name="Url" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfTag">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Tag" nillable="true" type="tns:Tag" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Tag">
        <s:attribute name="Tag" type="s:string" />
        <s:attribute name="Group" type="s:string" />
        <s:attribute name="Category" type="s:string" />
      </s:complexType>
      <s:complexType name="FeaturedProduct">
        <s:attribute name="Featured" type="s:boolean" use="required" />
        <s:attribute name="Description" type="s:string" />
        <s:attribute name="Url" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfBonusPoint">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="BonusPoint" nillable="true" type="tns:BonusPoint" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="BonusPoint">
        <s:attribute name="Name" type="s:string" />
        <s:attribute name="Description" type="s:string" />
        <s:attribute name="Type" type="s:string" />
        <s:attribute name="Value" type="s:int" use="required" />
        <s:attribute name="DateFrom" type="s:dateTime" use="required" />
        <s:attribute name="DateTo" type="s:dateTime" use="required" />
        <s:attribute name="Weight" type="s:int" use="required" />
      </s:complexType>
      <s:complexType name="ArrayOfAddon">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Addon" nillable="true" type="tns:Addon" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Addon">
        <s:attribute name="ComponentID" type="s:int" use="required" />
        <s:attribute name="Name" type="s:string" />
      </s:complexType>
      <s:element name="GetOpVoucherComponentDetails">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetOpVoucherComponentDetailsRequest" type="tns:GetOpVoucherComponentDetail_RQ" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetOpVoucherComponentDetail_RQ">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ComponentID" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Agent" type="tns:AvailAgent" />
          <s:element minOccurs="1" maxOccurs="1" name="AddonOnly" type="s:boolean" />
          <s:element minOccurs="1" maxOccurs="1" name="StartID" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="PageSize" type="s:int" />
        </s:sequence>
      </s:complexType>
      <s:element name="GetOpVoucherComponentDetailsResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetOpVoucherComponentDetailsResult" type="tns:GetOpVoucherComponentDetail_RS" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetOpVoucherComponentDetail_RS">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="OpVoucherComponentDetails" type="tns:ArrayOfOpVoucherComponentDetail" />
          <s:element minOccurs="0" maxOccurs="1" name="Status" type="tns:Status" />
          <s:element minOccurs="1" maxOccurs="1" name="TimeStamp" type="s:dateTime" />
          <s:element minOccurs="0" maxOccurs="1" name="Errors" type="tns:ArrayOfErrorItem" />
          <s:element minOccurs="0" maxOccurs="1" name="Warnings" type="tns:ArrayOfWarningItem" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfOpVoucherComponentDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="OpVoucherComponentDetail" nillable="true" type="tns:OpVoucherComponentDetail" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="OpVoucherComponentDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Notes" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PackagePricingTable" type="tns:ArrayOfPriceItem" />
          <s:element minOccurs="0" maxOccurs="1" name="StandAlonePricingTable" type="tns:ArrayOfPriceItem" />
          <s:element minOccurs="0" maxOccurs="1" name="LocalFeesPricingTable" type="tns:ArrayOfPriceItem" />
          <s:element minOccurs="0" maxOccurs="1" name="PreReqComponents" type="tns:ArrayOfOpVoucherComponent" />
          <s:element minOccurs="0" maxOccurs="1" name="Images" type="tns:ArrayOfImage" />
          <s:element minOccurs="0" maxOccurs="1" name="Tags" type="tns:ArrayOfTag" />
          <s:element minOccurs="0" maxOccurs="1" name="Featured" type="tns:FeaturedProduct" />
          <s:element minOccurs="0" maxOccurs="1" name="ComponentType" type="tns:ComponentType" />
          <s:element minOccurs="0" maxOccurs="1" name="TermsAndConditions" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BonusPoints" type="tns:ArrayOfBonusPoint" />
          <s:element minOccurs="0" maxOccurs="1" name="Duration" type="tns:Duration" />
          <s:element minOccurs="0" maxOccurs="1" name="Addons" type="tns:ArrayOfAddon" />
          <s:element minOccurs="0" maxOccurs="1" name="Locations" type="tns:ArrayOfLocation" />
        </s:sequence>
        <s:attribute name="ID" type="s:int" use="required" />
        <s:attribute name="Description" type="s:string" />
        <s:attribute name="ImageURL" type="s:string" />
        <s:attribute name="NoBookPeriod" type="s:int" use="required" />
        <s:attribute name="SupplierID" type="s:int" use="required" />
        <s:attribute name="SupplierName" type="s:string" />
        <s:attribute name="AddOn" type="s:boolean" use="required" />
        <s:attribute name="Flexi" type="s:boolean" use="required" />
        <s:attribute name="AccommodationNights" type="s:int" use="required" />
        <s:attribute name="AccommodationComponentID" type="s:int" use="required" />
      </s:complexType>
      <s:complexType name="ArrayOfPriceItem">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="PriceItem" nillable="true" type="tns:PriceItem" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="PriceItem">
        <s:attribute name="PaxCount" type="s:int" use="required" />
        <s:attribute name="RackRate" type="s:decimal" use="required" />
        <s:attribute name="Commission" type="s:decimal" use="required" />
        <s:attribute name="Currency" type="s:string" />
      </s:complexType>
      <s:complexType name="ComponentType">
        <s:attribute name="Code" type="s:string" />
        <s:attribute name="Description" type="s:string" />
      </s:complexType>
      <s:complexType name="Duration">
        <s:attribute name="Days" type="s:string" />
        <s:attribute name="Nights" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfLocation">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Location" nillable="true" type="tns:Location" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Location">
        <s:attribute name="Latitude" type="s:decimal" use="required" />
        <s:attribute name="Longitude" type="s:decimal" use="required" />
        <s:attribute name="Description" type="s:string" />
      </s:complexType>
      <s:element name="GetOpVoucherComponentAvailability">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetComponentAvailabilityRequest" type="tns:GetOpVoucherComponentAvailability_RQ" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetOpVoucherComponentAvailability_RQ">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ComponentID" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="PaxCount" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="DateFrom" type="s:dateTime" />
          <s:element minOccurs="1" maxOccurs="1" name="DateTo" type="s:dateTime" />
          <s:element minOccurs="1" maxOccurs="1" name="PackageID" nillable="true" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="Agent" type="tns:AvailAgent" />
        </s:sequence>
      </s:complexType>
      <s:element name="GetOpVoucherComponentAvailabilityResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetOpVoucherComponentAvailabilityResult" type="tns:GetOpVoucherComponentAvailability_RS" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetOpVoucherComponentAvailability_RS">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Component" type="tns:OpVoucherComponent" />
          <s:element minOccurs="1" maxOccurs="1" name="PaxCount" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="DateFrom" type="s:dateTime" />
          <s:element minOccurs="1" maxOccurs="1" name="DateTo" type="s:dateTime" />
          <s:element minOccurs="0" maxOccurs="1" name="ComponentAvailabilities" type="tns:ArrayOfComponentAvailability" />
          <s:element minOccurs="0" maxOccurs="1" name="Status" type="tns:Status" />
          <s:element minOccurs="1" maxOccurs="1" name="TimeStamp" type="s:dateTime" />
          <s:element minOccurs="0" maxOccurs="1" name="Errors" type="tns:ArrayOfErrorItem" />
          <s:element minOccurs="0" maxOccurs="1" name="Warnings" type="tns:ArrayOfWarningItem" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfComponentAvailability">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="ComponentAvailability" nillable="true" type="tns:ComponentAvailability" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ComponentAvailability">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="PricingTable" type="tns:ArrayOfPriceItem" />
        </s:sequence>
        <s:attribute name="ID" type="s:int" use="required" />
        <s:attribute name="AvailabilityType" type="tns:AvailabilityType" use="required" />
        <s:attribute name="StartDate" type="s:dateTime" use="required" />
        <s:attribute name="Available" type="s:int" use="required" />
      </s:complexType>
      <s:simpleType name="AvailabilityType">
        <s:restriction base="s:string">
          <s:enumeration value="NONE" />
          <s:enumeration value="ALLOCATION" />
          <s:enumeration value="LIVE" />
          <s:enumeration value="FREESELL" />
          <s:enumeration value="SUBSCRIPTION" />
        </s:restriction>
      </s:simpleType>
      <s:element name="MakePackageBooking">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="MakePackageBookingRequest" type="tns:MakePackageBooking_RQ" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="MakePackageBooking_RQ">
        <s:complexContent mixed="false">
          <s:extension base="tns:MakeBooking_RQ">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="PackageID" type="s:int" />
              <s:element minOccurs="0" maxOccurs="1" name="PackageTemplateComponents" type="tns:ArrayOfPackageTemplateComponent" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="MakeBooking_RQ">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonRequest">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="BookingAgent" type="tns:BookingAgent" />
              <s:element minOccurs="0" maxOccurs="1" name="SellingAgent" type="tns:SellingAgent" />
              <s:element minOccurs="0" maxOccurs="1" name="Booking" type="tns:Booking" />
              <s:element minOccurs="0" maxOccurs="1" name="PaxList" type="tns:ArrayOfPax" />
              <s:element minOccurs="0" maxOccurs="1" name="MarketingFields" type="tns:ArrayOfMarketingField" />
              <s:element minOccurs="0" maxOccurs="1" name="Notes" type="tns:ArrayOfString" />
              <s:element minOccurs="0" maxOccurs="1" name="Receipts" type="tns:ArrayOfReceipt" />
              <s:element minOccurs="1" maxOccurs="1" name="MakeTestBooking" type="s:boolean" />
              <s:element minOccurs="1" maxOccurs="1" name="SendConfirmationEmail" type="s:boolean" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="BookingAgent">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ID" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GUID" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Contact" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Email" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Phone" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="OtherRef" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="OtherRef2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="SupplierNote" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="DepositType" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="SellingAgent">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ID" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="GUID" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Booking">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Email" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Phone" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="MemberID" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PaymentToken" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Pickup" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfPax">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Pax" nillable="true" type="tns:Pax" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Pax">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="FirstName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="LastName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Email" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Phone" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Country_GUID" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="State_GUID" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Comments" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CommentsInternal" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CommentsDiet" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="CommentsMedical" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="OtherRef" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="OtherRef2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="MarketingFields" type="tns:ArrayOfMarketingField" />
          <s:element minOccurs="0" maxOccurs="1" name="Address" type="tns:Address" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfMarketingField">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="MarketingField" nillable="true" type="tns:MarketingField" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="MarketingField">
        <s:attribute name="Type" type="s:string" />
        <s:attribute name="Index" type="s:int" use="required" />
        <s:attribute name="Name" type="s:string" />
        <s:attribute name="CategoryCode" type="s:string" />
        <s:attribute name="Value" type="s:string" />
      </s:complexType>
      <s:complexType name="Address">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Line1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Line2" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Line3" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PostCode" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="State" type="tns:SystemCode" />
          <s:element minOccurs="0" maxOccurs="1" name="Country" type="tns:SystemCode" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="SystemCode">
        <s:attribute name="Code" type="s:string" />
        <s:attribute name="Name" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfString">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfReceipt">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Receipt" nillable="true" type="tns:Receipt" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Receipt">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="Total" type="s:decimal" />
          <s:element minOccurs="1" maxOccurs="1" name="Commission" type="s:decimal" />
          <s:element minOccurs="1" maxOccurs="1" name="TransactionFee" type="s:decimal" />
          <s:element minOccurs="0" maxOccurs="1" name="FTR" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Currency" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PaymentType" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfPackageTemplateComponent">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="PackageTemplateComponent" nillable="true" type="tns:PackageTemplateComponent" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="PackageTemplateComponent">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Discount" type="tns:Discount" />
          <s:element minOccurs="0" maxOccurs="1" name="SupplierNote" type="s:string" />
        </s:sequence>
        <s:attribute name="TemplateID" type="s:int" use="required" />
        <s:attribute name="ComponentID" type="s:int" use="required" />
        <s:attribute name="ComponentAvailabilityID" type="s:int" use="required" />
        <s:attribute name="ComponentAvailabilityDate" type="s:dateTime" use="required" />
        <s:attribute name="EchoToken" type="s:string" />
        <s:attribute name="AccommodationNightsPre" type="s:int" />
        <s:attribute name="AccommodationNightsPost" type="s:int" />
      </s:complexType>
      <s:complexType name="Discount">
        <s:attribute name="Amount" type="s:decimal" use="required" />
        <s:attribute name="Type" type="tns:DiscountType" use="required" />
      </s:complexType>
      <s:simpleType name="DiscountType">
        <s:restriction base="s:string">
          <s:enumeration value="Amount" />
          <s:enumeration value="Percent" />
        </s:restriction>
      </s:simpleType>
      <s:element name="MakePackageBookingResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="MakePackageBookingResult" type="tns:MakePackageBooking_RS" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="MakePackageBooking_RS">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonResponseOnRequest">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="ID" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="CommonResponseOnRequest" abstract="true">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonResponseBooking">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="OnRequest" type="s:boolean" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="CommonResponseBooking" abstract="true">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonResponse">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="CalculatedPrice" type="s:decimal" />
              <s:element minOccurs="1" maxOccurs="1" name="CalculatedCommission" type="s:decimal" />
              <s:element minOccurs="0" maxOccurs="1" name="FinancialSummary" type="tns:FinancialSummary" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="FinancialSummary">
        <s:attribute name="Currency" type="s:string" />
        <s:attribute name="EchoToken" type="s:string" />
        <s:attribute name="CalculatedPrice" type="s:decimal" use="required" />
        <s:attribute name="CalculatedCommission" type="s:decimal" use="required" />
        <s:attribute name="CalculatedDiscount" type="s:decimal" use="required" />
        <s:attribute name="DiscountedPrice" type="s:decimal" use="required" />
        <s:attribute name="DiscountedCommission" type="s:decimal" use="required" />
        <s:attribute name="DebtorAmount" type="s:decimal" use="required" />
        <s:attribute name="AmountToPayOnArrival" type="s:decimal" use="required" />
        <s:attribute name="AmountToPayOnBooking" type="s:decimal" use="required" />
        <s:attribute name="AmountToPayAgent" type="s:decimal" use="required" />
        <s:attribute name="ReceiptTotal" type="s:decimal" use="required" />
        <s:attribute name="TransactionFeeTotal" type="s:decimal" use="required" />
        <s:attribute name="AdvancePayment" type="s:boolean" use="required" />
        <s:attribute name="AdvancePaymentDate" type="s:dateTime" use="required" />
      </s:complexType>
      <s:element name="ValidatePackageBooking">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="ValidatePackageBookingRequest" type="tns:MakePackageBooking_RQ" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="ValidatePackageBookingResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="ValidatePackageBookingResult" type="tns:ValidatePackageBooking_RS" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ValidatePackageBooking_RS">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonResponseOnRequest">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="Valid" type="s:boolean" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="MakeStandaloneBooking">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="MakeStandaloneBookingRequest" type="tns:MakeStandaloneBooking_RQ" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="MakeStandaloneBooking_RQ">
        <s:complexContent mixed="false">
          <s:extension base="tns:MakeBooking_RQ">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="PackageTemplateComponents" type="tns:ArrayOfPackageTemplateComponent" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="MakeStandaloneBookingResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="MakeStandaloneBookingResult" type="tns:MakeStandaloneBooking_RS" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="MakeStandaloneBooking_RS">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonResponseOnRequest">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="ID" type="s:string" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="ValidateStandaloneBooking">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="ValidateStandaloneBookingRequest" type="tns:MakeStandaloneBooking_RQ" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="ValidateStandaloneBookingResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="ValidateStandaloneBookingResult" type="tns:ValidateStandaloneBooking_RS" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ValidateStandaloneBooking_RS">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonResponseOnRequest">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="Valid" type="s:boolean" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="GetPackageAvailability">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetPackageAvailabilityRequest" type="tns:GetPackageAvailability_RQ" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetPackageAvailability_RQ">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonRequest">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="PackageID" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="DateFrom" type="s:dateTime" />
              <s:element minOccurs="1" maxOccurs="1" name="DateTo" type="s:dateTime" />
              <s:element minOccurs="0" maxOccurs="1" name="Agent" type="tns:AvailAgent" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="GetPackageAvailabilityResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetPackageAvailabilityResult" type="tns:GetPackageAvailability_RS" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetPackageAvailability_RS">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonResponse">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="PackageAvailability" type="tns:PackageAvailability" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="PackageAvailability">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="TemplateAvailabilities" type="tns:ArrayOfTemplateAvailability" />
        </s:sequence>
        <s:attribute name="PackageID" type="s:int" use="required" />
        <s:attribute name="Name" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfTemplateAvailability">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="TemplateAvailability" nillable="true" type="tns:TemplateAvailability" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="TemplateAvailability">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="TemplateAvailabilityConfigs" type="tns:ArrayOfTemplateComponentConfig" />
          <s:element minOccurs="0" maxOccurs="1" name="TemplateAvailabilityDates" type="tns:ArrayOfTemplateAvailabilityDate" />
        </s:sequence>
        <s:attribute name="BaseTemplateID" type="s:int" use="required" />
      </s:complexType>
      <s:complexType name="ArrayOfTemplateComponentConfig">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="TemplateComponentConfig" nillable="true" type="tns:TemplateComponentConfig" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="TemplateComponentConfig">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="PricingTable" type="tns:ArrayOfPriceItem" />
        </s:sequence>
        <s:attribute name="TemplateID" type="s:int" use="required" />
        <s:attribute name="ComponentID" type="s:int" use="required" />
        <s:attribute name="OffsetType" type="s:string" />
        <s:attribute name="Offset" type="s:int" use="required" />
      </s:complexType>
      <s:complexType name="ArrayOfTemplateAvailabilityDate">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="TemplateAvailabilityDate" nillable="true" type="tns:TemplateAvailabilityDate" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="TemplateAvailabilityDate">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="TemplateAvailabilityDateDetails" type="tns:ArrayOfTemplateAvailabilityDateDetail" />
        </s:sequence>
        <s:attribute name="Date" type="s:dateTime" use="required" />
        <s:attribute name="Nights" type="s:int" use="required" />
        <s:attribute name="Available" type="s:int" use="required" />
      </s:complexType>
      <s:complexType name="ArrayOfTemplateAvailabilityDateDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="TemplateAvailabilityDateDetail" nillable="true" type="tns:TemplateAvailabilityDateDetail" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="TemplateAvailabilityDateDetail">
        <s:attribute name="TemplateID" type="s:int" use="required" />
        <s:attribute name="ComponentID" type="s:int" use="required" />
        <s:attribute name="AvailID" type="s:int" use="required" />
        <s:attribute name="Date" type="s:dateTime" use="required" />
        <s:attribute name="Nights" type="s:int" use="required" />
        <s:attribute name="Available" type="s:int" use="required" />
      </s:complexType>
      <s:element name="ValidateCustomBooking">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="ValidateCustomBookingRequest" type="tns:MakeCustomBooking_RQ" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="MakeCustomBooking_RQ">
        <s:complexContent mixed="false">
          <s:extension base="tns:MakeBooking_RQ">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="PropertyBookings" type="tns:ArrayOfPropertyBooking" />
              <s:element minOccurs="0" maxOccurs="1" name="PackageBookings" type="tns:ArrayOfPackageBooking" />
              <s:element minOccurs="0" maxOccurs="1" name="AddonBookings" type="tns:ArrayOfPackageTemplateComponent" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="ArrayOfPropertyBooking">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="PropertyBooking" nillable="true" type="tns:PropertyBooking" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="PropertyBooking">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="SupplierID" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="RoomRequests" type="tns:ArrayOfRoomRequest" />
        </s:sequence>
        <s:attribute name="EchoToken" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfRoomRequest">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="RoomRequest" nillable="true" type="tns:RoomRequest" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="RoomRequest">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="RoomRequestDetails" type="tns:ArrayOfRoomRequestDetail" />
          <s:element minOccurs="0" maxOccurs="1" name="SupplierNote" type="s:string" />
        </s:sequence>
        <s:attribute name="ArrivalDate" type="s:dateTime" use="required" />
        <s:attribute name="Nights" type="s:int" use="required" />
        <s:attribute name="PackageId" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfRoomRequestDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="RoomRequestDetail" nillable="true" type="tns:RoomRequestDetail" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="RoomRequestDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="RoomRequestDates" type="tns:ArrayOfRoomRequestDate" />
        </s:sequence>
        <s:attribute name="Guests" type="s:int" use="required" />
        <s:attribute name="Quantity" type="s:int" use="required" />
        <s:attribute name="RoomTypeId" type="s:string" />
        <s:attribute name="DiscountReducesCommission" type="s:boolean" use="required" />
      </s:complexType>
      <s:complexType name="ArrayOfRoomRequestDate">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="RoomRequestDate" nillable="true" type="tns:RoomRequestDate" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="RoomRequestDate">
        <s:attribute name="Date" type="s:dateTime" use="required" />
        <s:attribute name="Price" type="s:decimal" use="required" />
        <s:attribute name="Discount" type="s:decimal" use="required" />
        <s:attribute name="Commission" type="s:decimal" use="required" />
        <s:attribute name="Currency" type="s:string" />
        <s:attribute name="AppliedPointsMultiplier" type="s:int" use="required" />
      </s:complexType>
      <s:complexType name="ArrayOfPackageBooking">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="PackageBooking" nillable="true" type="tns:PackageBooking" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="PackageBooking">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="PackageID" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="PackageTemplateComponents" type="tns:ArrayOfPackageTemplateComponent" />
        </s:sequence>
        <s:attribute name="EchoToken" type="s:string" />
      </s:complexType>
      <s:element name="ValidateCustomBookingResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="ValidateCustomBookingResult" type="tns:ValidateCustomBooking_RS" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ValidateCustomBooking_RS">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonResponseOnRequest">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="Valid" type="s:boolean" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="MakeCustomBooking">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="MakeCustomBookingRequest" type="tns:MakeCustomBooking_RQ" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="MakeCustomBookingResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="MakeCustomBookingResult" type="tns:MakeCustomBooking_RS" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="MakeCustomBooking_RS">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonResponseOnRequest">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="ID" type="s:string" />
              <s:element minOccurs="0" maxOccurs="1" name="PropertyBookingResults" type="tns:ArrayOfPropertyBookingResult" />
              <s:element minOccurs="0" maxOccurs="1" name="PackageBookingResults" type="tns:ArrayOfPackageBookingResult" />
              <s:element minOccurs="0" maxOccurs="1" name="AddonBookingResults" type="tns:ArrayOfPackageTemplateComponentBookingResult" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="ArrayOfPropertyBookingResult">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="PropertyBookingResult" nillable="true" type="tns:PropertyBookingResult" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="PropertyBookingResult">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="RoomRequestResults" type="tns:ArrayOfRoomRequestResult" />
        </s:sequence>
        <s:attribute name="SupplierID" type="s:int" use="required" />
        <s:attribute name="EchoToken" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfRoomRequestResult">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="RoomRequestResult" nillable="true" type="tns:RoomRequestResult" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="RoomRequestResult">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="RoomRequestDetailResults" type="tns:ArrayOfRoomRequestDetailResult" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfRoomRequestDetailResult">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="RoomRequestDetailResult" nillable="true" type="tns:RoomRequestDetailResult" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="RoomRequestDetailResult">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Status" type="tns:Status" />
        </s:sequence>
        <s:attribute name="RoomTypeID" type="s:string" />
        <s:attribute name="SupplierReference" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfPackageBookingResult">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="PackageBookingResult" nillable="true" type="tns:PackageBookingResult" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="PackageBookingResult">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="PackageTemplateComponentBookingResults" type="tns:ArrayOfPackageTemplateComponentBookingResult" />
        </s:sequence>
        <s:attribute name="PackageID" type="s:int" use="required" />
        <s:attribute name="EchoToken" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfPackageTemplateComponentBookingResult">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="PackageTemplateComponentBookingResult" nillable="true" type="tns:PackageTemplateComponentBookingResult" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="PackageTemplateComponentBookingResult">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Status" type="tns:Status" />
        </s:sequence>
        <s:attribute name="TemplateID" type="s:int" use="required" />
        <s:attribute name="ComponentID" type="s:int" use="required" />
        <s:attribute name="SupplierReference" type="s:string" />
        <s:attribute name="CalculatedPrice" type="s:decimal" use="required" />
        <s:attribute name="CalculatedCommission" type="s:decimal" use="required" />
        <s:attribute name="CalculatedDiscount" type="s:decimal" use="required" />
        <s:attribute name="EchoToken" type="s:string" />
      </s:complexType>
      <s:element name="GetPackageRates">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetPackageRatesRequest" type="tns:GetPackageRates_RQ" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetPackageRates_RQ">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonRequest">
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="PackageID" type="s:int" />
              <s:element minOccurs="0" maxOccurs="1" name="Agent" type="tns:AvailAgent" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="GetPackageRatesResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetPackageRatesResult" type="tns:GetPackageRates_RS" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetPackageRates_RS">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonResponse">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="Rates" type="tns:ArrayOfComponentRate" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="ArrayOfComponentRate">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="ComponentRate" nillable="true" type="tns:ComponentRate" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ComponentRate">
        <s:complexContent mixed="false">
          <s:extension base="tns:PriceItem">
            <s:attribute name="ComponentID" type="s:int" use="required" />
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="GetCustomBookingFinancials">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetCustomBookingFinancialsRequest" type="tns:GetCustomBookingFinancials_RQ" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetCustomBookingFinancials_RQ">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonRequest">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="BookingAgent" type="tns:BookingAgent" />
              <s:element minOccurs="1" maxOccurs="1" name="TotalPax" type="s:int" />
              <s:element minOccurs="0" maxOccurs="1" name="PropertyBookings" type="tns:ArrayOfPropertyBooking" />
              <s:element minOccurs="0" maxOccurs="1" name="PackageBookings" type="tns:ArrayOfPackageBooking" />
              <s:element minOccurs="0" maxOccurs="1" name="AddonBookings" type="tns:ArrayOfPackageTemplateComponent" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:element name="GetCustomBookingFinancialsResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetCustomBookingFinancialsResult" type="tns:GetCustomBookingFinancials_RS" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="GetCustomBookingFinancials_RS">
        <s:complexContent mixed="false">
          <s:extension base="tns:CommonResponse">
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="PropertyBookingFinancials" type="tns:ArrayOfFinancialSummary" />
              <s:element minOccurs="0" maxOccurs="1" name="PackageBookingFinancials" type="tns:ArrayOfFinancialSummary" />
              <s:element minOccurs="0" maxOccurs="1" name="AddonBookingFinancials" type="tns:ArrayOfFinancialSummary" />
              <s:element minOccurs="0" maxOccurs="1" name="Total" type="tns:FinancialSummary" />
            </s:sequence>
          </s:extension>
        </s:complexContent>
      </s:complexType>
      <s:complexType name="ArrayOfFinancialSummary">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="FinancialSummary" nillable="true" type="tns:FinancialSummary" />
        </s:sequence>
      </s:complexType>
      <s:element name="string" nillable="true" type="s:string" />
    </s:schema>
  </wsdl:types>
  <wsdl:message name="PingSoapIn">
    <wsdl:part name="parameters" element="tns:Ping" />
  </wsdl:message>
  <wsdl:message name="PingSoapOut">
    <wsdl:part name="parameters" element="tns:PingResponse" />
  </wsdl:message>
  <wsdl:message name="PingResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="GetPackageTypesSoapIn">
    <wsdl:part name="parameters" element="tns:GetPackageTypes" />
  </wsdl:message>
  <wsdl:message name="GetPackageTypesSoapOut">
    <wsdl:part name="parameters" element="tns:GetPackageTypesResponse" />
  </wsdl:message>
  <wsdl:message name="GetPackageTypesResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="GetPackagesSoapIn">
    <wsdl:part name="parameters" element="tns:GetPackages" />
  </wsdl:message>
  <wsdl:message name="GetPackagesSoapOut">
    <wsdl:part name="parameters" element="tns:GetPackagesResponse" />
  </wsdl:message>
  <wsdl:message name="GetPackagesResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="GetPackageDetailsSoapIn">
    <wsdl:part name="parameters" element="tns:GetPackageDetails" />
  </wsdl:message>
  <wsdl:message name="GetPackageDetailsSoapOut">
    <wsdl:part name="parameters" element="tns:GetPackageDetailsResponse" />
  </wsdl:message>
  <wsdl:message name="GetPackageDetailsResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="GetOpVoucherComponentDetailsSoapIn">
    <wsdl:part name="parameters" element="tns:GetOpVoucherComponentDetails" />
  </wsdl:message>
  <wsdl:message name="GetOpVoucherComponentDetailsSoapOut">
    <wsdl:part name="parameters" element="tns:GetOpVoucherComponentDetailsResponse" />
  </wsdl:message>
  <wsdl:message name="GetOpVoucherComponentDetailsResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="GetOpVoucherComponentAvailabilitySoapIn">
    <wsdl:part name="parameters" element="tns:GetOpVoucherComponentAvailability" />
  </wsdl:message>
  <wsdl:message name="GetOpVoucherComponentAvailabilitySoapOut">
    <wsdl:part name="parameters" element="tns:GetOpVoucherComponentAvailabilityResponse" />
  </wsdl:message>
  <wsdl:message name="GetOpVoucherComponentAvailabilityResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="MakePackageBookingSoapIn">
    <wsdl:part name="parameters" element="tns:MakePackageBooking" />
  </wsdl:message>
  <wsdl:message name="MakePackageBookingSoapOut">
    <wsdl:part name="parameters" element="tns:MakePackageBookingResponse" />
  </wsdl:message>
  <wsdl:message name="MakePackageBookingResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="ValidatePackageBookingSoapIn">
    <wsdl:part name="parameters" element="tns:ValidatePackageBooking" />
  </wsdl:message>
  <wsdl:message name="ValidatePackageBookingSoapOut">
    <wsdl:part name="parameters" element="tns:ValidatePackageBookingResponse" />
  </wsdl:message>
  <wsdl:message name="ValidatePackageBookingResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="MakeStandaloneBookingSoapIn">
    <wsdl:part name="parameters" element="tns:MakeStandaloneBooking" />
  </wsdl:message>
  <wsdl:message name="MakeStandaloneBookingSoapOut">
    <wsdl:part name="parameters" element="tns:MakeStandaloneBookingResponse" />
  </wsdl:message>
  <wsdl:message name="MakeStandaloneBookingResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="ValidateStandaloneBookingSoapIn">
    <wsdl:part name="parameters" element="tns:ValidateStandaloneBooking" />
  </wsdl:message>
  <wsdl:message name="ValidateStandaloneBookingSoapOut">
    <wsdl:part name="parameters" element="tns:ValidateStandaloneBookingResponse" />
  </wsdl:message>
  <wsdl:message name="ValidateStandaloneBookingResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="GetPackageAvailabilitySoapIn">
    <wsdl:part name="parameters" element="tns:GetPackageAvailability" />
  </wsdl:message>
  <wsdl:message name="GetPackageAvailabilitySoapOut">
    <wsdl:part name="parameters" element="tns:GetPackageAvailabilityResponse" />
  </wsdl:message>
  <wsdl:message name="GetPackageAvailabilityResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="ValidateCustomBookingSoapIn">
    <wsdl:part name="parameters" element="tns:ValidateCustomBooking" />
  </wsdl:message>
  <wsdl:message name="ValidateCustomBookingSoapOut">
    <wsdl:part name="parameters" element="tns:ValidateCustomBookingResponse" />
  </wsdl:message>
  <wsdl:message name="ValidateCustomBookingResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="MakeCustomBookingSoapIn">
    <wsdl:part name="parameters" element="tns:MakeCustomBooking" />
  </wsdl:message>
  <wsdl:message name="MakeCustomBookingSoapOut">
    <wsdl:part name="parameters" element="tns:MakeCustomBookingResponse" />
  </wsdl:message>
  <wsdl:message name="MakeCustomBookingResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="GetPackageRatesSoapIn">
    <wsdl:part name="parameters" element="tns:GetPackageRates" />
  </wsdl:message>
  <wsdl:message name="GetPackageRatesSoapOut">
    <wsdl:part name="parameters" element="tns:GetPackageRatesResponse" />
  </wsdl:message>
  <wsdl:message name="GetPackageRatesResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="GetCustomBookingFinancialsSoapIn">
    <wsdl:part name="parameters" element="tns:GetCustomBookingFinancials" />
  </wsdl:message>
  <wsdl:message name="GetCustomBookingFinancialsSoapOut">
    <wsdl:part name="parameters" element="tns:GetCustomBookingFinancialsResponse" />
  </wsdl:message>
  <wsdl:message name="GetCustomBookingFinancialsResLinkSoapHeader">
    <wsdl:part name="ResLinkSoapHeader" element="tns:ResLinkSoapHeader" />
  </wsdl:message>
  <wsdl:message name="PingHttpGetIn" />
  <wsdl:message name="PingHttpGetOut">
    <wsdl:part name="Body" element="tns:string" />
  </wsdl:message>
  <wsdl:message name="PingHttpPostIn" />
  <wsdl:message name="PingHttpPostOut">
    <wsdl:part name="Body" element="tns:string" />
  </wsdl:message>
  <wsdl:portType name="ResLink_x0020_Package_x0020_ServiceSoap">
    <wsdl:operation name="Ping">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Connection Test</wsdl:documentation>
      <wsdl:input message="tns:PingSoapIn" />
      <wsdl:output message="tns:PingSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetPackageTypes">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns Package Type list &lt;a href="../doco_Package/Instr_GetPackageTypes.aspx"&gt;more info&lt;/a&gt;</wsdl:documentation>
      <wsdl:input message="tns:GetPackageTypesSoapIn" />
      <wsdl:output message="tns:GetPackageTypesSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetPackages">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns Packages list &lt;a href="../doco_Package/Instr_GetPackages.aspx"&gt;more info&lt;/a&gt;</wsdl:documentation>
      <wsdl:input message="tns:GetPackagesSoapIn" />
      <wsdl:output message="tns:GetPackagesSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetPackageDetails">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns Package configuration &lt;a href="../doco_Package/Instr_GetPackageDetail.aspx"&gt;more info&lt;/a&gt;</wsdl:documentation>
      <wsdl:input message="tns:GetPackageDetailsSoapIn" />
      <wsdl:output message="tns:GetPackageDetailsSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetOpVoucherComponentDetails">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns Details for an Operator Voucher Component &lt;a href="../doco_Package/Instr_GetOpVoucherComponentDetail.aspx"&gt;more info&lt;/a&gt;</wsdl:documentation>
      <wsdl:input message="tns:GetOpVoucherComponentDetailsSoapIn" />
      <wsdl:output message="tns:GetOpVoucherComponentDetailsSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetOpVoucherComponentAvailability">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns Availability for an Operator Voucher Component &lt;a href="../doco_Package/Instr_GetOpVoucherComponentAvailability.aspx"&gt;more info&lt;/a&gt;</wsdl:documentation>
      <wsdl:input message="tns:GetOpVoucherComponentAvailabilitySoapIn" />
      <wsdl:output message="tns:GetOpVoucherComponentAvailabilitySoapOut" />
    </wsdl:operation>
    <wsdl:operation name="MakePackageBooking">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Create a new Pending Package Booking  &lt;a href="../doco_Package/Instr_MakePackageBooking.aspx"&gt;more info&lt;/a&gt;</wsdl:documentation>
      <wsdl:input message="tns:MakePackageBookingSoapIn" />
      <wsdl:output message="tns:MakePackageBookingSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="ValidatePackageBooking">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Validate a Pending Package Booking request &lt;a href="../doco_Package/Instr_MakePackageBooking.aspx"&gt;more info&lt;/a&gt;</wsdl:documentation>
      <wsdl:input message="tns:ValidatePackageBookingSoapIn" />
      <wsdl:output message="tns:ValidatePackageBookingSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="MakeStandaloneBooking">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Create a new Pending Standalone Booking  &lt;a href="../doco_Package/Instr_MakeStandaloneBooking.aspx"&gt;more info&lt;/a&gt;</wsdl:documentation>
      <wsdl:input message="tns:MakeStandaloneBookingSoapIn" />
      <wsdl:output message="tns:MakeStandaloneBookingSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="ValidateStandaloneBooking">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Validate a Pending Standalone Booking request &lt;a href="../doco_Package/Instr_MakeStandaloneBooking.aspx"&gt;more info&lt;/a&gt;</wsdl:documentation>
      <wsdl:input message="tns:ValidateStandaloneBookingSoapIn" />
      <wsdl:output message="tns:ValidateStandaloneBookingSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetPackageAvailability">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns combined Availability for a Package that is configured with Template Offsets &lt;a href="../doco_Package/Instr_GetPackageAvailability.aspx"&gt;more info&lt;/a&gt;</wsdl:documentation>
      <wsdl:input message="tns:GetPackageAvailabilitySoapIn" />
      <wsdl:output message="tns:GetPackageAvailabilitySoapOut" />
    </wsdl:operation>
    <wsdl:operation name="ValidateCustomBooking">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Validate a Custom Booking request &lt;a href="../doco_Package/Instr_ValidateCustomBooking.aspx"&gt;more info&lt;/a&gt;</wsdl:documentation>
      <wsdl:input message="tns:ValidateCustomBookingSoapIn" />
      <wsdl:output message="tns:ValidateCustomBookingSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="MakeCustomBooking">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Create a new Custom Booking request &lt;a href="../doco_Package/Instr_MakeCustomBooking.aspx"&gt;more info&lt;/a&gt;</wsdl:documentation>
      <wsdl:input message="tns:MakeCustomBookingSoapIn" />
      <wsdl:output message="tns:MakeCustomBookingSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetPackageRates">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns Package Rates list &lt;a href="../doco_Package/Instr_GetPackageRates.aspx"&gt;more info&lt;/a&gt;</wsdl:documentation>
      <wsdl:input message="tns:GetPackageRatesSoapIn" />
      <wsdl:output message="tns:GetPackageRatesSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetCustomBookingFinancials">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Returns Financials for a Custom Booking request &lt;a href="../doco_Package/Instr_GetCustomBookingFinancials.aspx"&gt;more info&lt;/a&gt;</wsdl:documentation>
      <wsdl:input message="tns:GetCustomBookingFinancialsSoapIn" />
      <wsdl:output message="tns:GetCustomBookingFinancialsSoapOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:portType name="ResLink_x0020_Package_x0020_ServiceHttpGet">
    <wsdl:operation name="Ping">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Connection Test</wsdl:documentation>
      <wsdl:input message="tns:PingHttpGetIn" />
      <wsdl:output message="tns:PingHttpGetOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:portType name="ResLink_x0020_Package_x0020_ServiceHttpPost">
    <wsdl:operation name="Ping">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Connection Test</wsdl:documentation>
      <wsdl:input message="tns:PingHttpPostIn" />
      <wsdl:output message="tns:PingHttpPostOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="ResLink_x0020_Package_x0020_ServiceSoap" type="tns:ResLink_x0020_Package_x0020_ServiceSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="Ping">
      <soap:operation soapAction="ResLink/Ping" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:PingResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetPackageTypes">
      <soap:operation soapAction="ResLink/GetPackageTypes" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:GetPackageTypesResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetPackages">
      <soap:operation soapAction="ResLink/GetPackages" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:GetPackagesResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetPackageDetails">
      <soap:operation soapAction="ResLink/GetPackageDetails" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:GetPackageDetailsResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetOpVoucherComponentDetails">
      <soap:operation soapAction="ResLink/GetOpVoucherComponentDetails" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:GetOpVoucherComponentDetailsResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetOpVoucherComponentAvailability">
      <soap:operation soapAction="ResLink/GetOpVoucherComponentAvailability" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:GetOpVoucherComponentAvailabilityResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="MakePackageBooking">
      <soap:operation soapAction="ResLink/MakePackageBooking" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:MakePackageBookingResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidatePackageBooking">
      <soap:operation soapAction="ResLink/ValidatePackageBooking" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:ValidatePackageBookingResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="MakeStandaloneBooking">
      <soap:operation soapAction="ResLink/MakeStandaloneBooking" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:MakeStandaloneBookingResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateStandaloneBooking">
      <soap:operation soapAction="ResLink/ValidateStandaloneBooking" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:ValidateStandaloneBookingResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetPackageAvailability">
      <soap:operation soapAction="ResLink/GetPackageAvailability" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:GetPackageAvailabilityResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateCustomBooking">
      <soap:operation soapAction="ResLink/ValidateCustomBooking" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:ValidateCustomBookingResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="MakeCustomBooking">
      <soap:operation soapAction="ResLink/MakeCustomBooking" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:MakeCustomBookingResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetPackageRates">
      <soap:operation soapAction="ResLink/GetPackageRates" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:GetPackageRatesResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetCustomBookingFinancials">
      <soap:operation soapAction="ResLink/GetCustomBookingFinancials" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:GetCustomBookingFinancialsResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="ResLink_x0020_Package_x0020_ServiceSoap12" type="tns:ResLink_x0020_Package_x0020_ServiceSoap">
    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="Ping">
      <soap12:operation soapAction="ResLink/Ping" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:PingResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetPackageTypes">
      <soap12:operation soapAction="ResLink/GetPackageTypes" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:GetPackageTypesResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetPackages">
      <soap12:operation soapAction="ResLink/GetPackages" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:GetPackagesResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetPackageDetails">
      <soap12:operation soapAction="ResLink/GetPackageDetails" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:GetPackageDetailsResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetOpVoucherComponentDetails">
      <soap12:operation soapAction="ResLink/GetOpVoucherComponentDetails" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:GetOpVoucherComponentDetailsResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetOpVoucherComponentAvailability">
      <soap12:operation soapAction="ResLink/GetOpVoucherComponentAvailability" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:GetOpVoucherComponentAvailabilityResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="MakePackageBooking">
      <soap12:operation soapAction="ResLink/MakePackageBooking" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:MakePackageBookingResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidatePackageBooking">
      <soap12:operation soapAction="ResLink/ValidatePackageBooking" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:ValidatePackageBookingResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="MakeStandaloneBooking">
      <soap12:operation soapAction="ResLink/MakeStandaloneBooking" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:MakeStandaloneBookingResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateStandaloneBooking">
      <soap12:operation soapAction="ResLink/ValidateStandaloneBooking" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:ValidateStandaloneBookingResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetPackageAvailability">
      <soap12:operation soapAction="ResLink/GetPackageAvailability" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:GetPackageAvailabilityResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ValidateCustomBooking">
      <soap12:operation soapAction="ResLink/ValidateCustomBooking" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:ValidateCustomBookingResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="MakeCustomBooking">
      <soap12:operation soapAction="ResLink/MakeCustomBooking" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:MakeCustomBookingResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetPackageRates">
      <soap12:operation soapAction="ResLink/GetPackageRates" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:GetPackageRatesResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetCustomBookingFinancials">
      <soap12:operation soapAction="ResLink/GetCustomBookingFinancials" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:GetCustomBookingFinancialsResLinkSoapHeader" part="ResLinkSoapHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="ResLink_x0020_Package_x0020_ServiceHttpGet" type="tns:ResLink_x0020_Package_x0020_ServiceHttpGet">
    <http:binding verb="GET" />
    <wsdl:operation name="Ping">
      <http:operation location="/Ping" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="ResLink_x0020_Package_x0020_ServiceHttpPost" type="tns:ResLink_x0020_Package_x0020_ServiceHttpPost">
    <http:binding verb="POST" />
    <wsdl:operation name="Ping">
      <http:operation location="/Ping" />
      <wsdl:input>
        <mime:content type="application/x-www-form-urlencoded" />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="ResLink_x0020_Package_x0020_Service">
    <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">For documentation please go &lt;a href="../doco_Package/Default.aspx"&gt;here&lt;/a&gt;</wsdl:documentation>
    <wsdl:port name="ResLink_x0020_Package_x0020_ServiceSoap" binding="tns:ResLink_x0020_Package_x0020_ServiceSoap">
      <soap:address location="http://www.reslink.net/ResLink/Public/PackageService.asmx" />
    </wsdl:port>
    <wsdl:port name="ResLink_x0020_Package_x0020_ServiceSoap12" binding="tns:ResLink_x0020_Package_x0020_ServiceSoap12">
      <soap12:address location="http://www.reslink.net/ResLink/Public/PackageService.asmx" />
    </wsdl:port>
    <wsdl:port name="ResLink_x0020_Package_x0020_ServiceHttpGet" binding="tns:ResLink_x0020_Package_x0020_ServiceHttpGet">
      <http:address location="http://www.reslink.net/ResLink/Public/PackageService.asmx" />
    </wsdl:port>
    <wsdl:port name="ResLink_x0020_Package_x0020_ServiceHttpPost" binding="tns:ResLink_x0020_Package_x0020_ServiceHttpPost">
      <http:address location="http://www.reslink.net/ResLink/Public/PackageService.asmx" />
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>