(function(){return function(e,t,r){var a=Scanner.fromMessage(e);a.setLocale(t);var n,i,o,p,s,c,d,m,x,g,h,f,l,P,u,v,S,E,y;if(n=a.getSpan().innerCapture(regExpFormatted(/\b\1 (.*)\s/,r.namePrefix),1),i=a.getSpan().innerCapture(regExpFormatted(/\b\1 (\w+)\s/,r.reservationIdPrefix),1),0===(""+i).length&&r.reservationIdPrefixAlt&&(i=a.getSpan().innerCapture(regExpFormatted(/\b\1 (\w+)\s/,r.reservationIdPrefixAlt),1)),p=a.getSpan().nextText(r.modifyReservationUrlPrefix).nextLink(),s=p,y=a.getSpan().nextText(r.pickUpDatePrefix).nextDate(),u=a.getSpan().nextText(r.dropOffDatePrefix).nextDate(),r.timePrefix){var C,$;C=y,$=y.nextDate(),(""+$).match(regExpFormatted(/\1\s\d{1,2}\:\d{2}/,r.timePrefix))&&(y=combineDateAndTime(C,$)),C=u,$=u.nextDate(),(""+$).match(regExpFormatted(/\1\s\d{1,2}\:\d{2}/,r.timePrefix))&&(u=combineDateAndTime(C,$))}S=u.nextAddress(),E=u.nextPhoneNumber();var F=regExpFormatted(/\1\s+($<name>.*)\s+($<address>[^]+?)\s+\2 ($<telephone>.*)\s/,r.pickUpHeader,r.pickUpPhonePrefix);h=a.getSpan().innerCapture(F),h&&(v=h.$name,(not(S)||h.$address.getLength()>S.getLength())&&(S=h.$address),not(E)&&(E=h.$telephone)),m=a.getSpan().nextText(r.carAndRatePrefix).withEnd(a.getSpan().nextRegExp(regExpFormatted(/\1/,r.totalChargesPrefix)).getStart()).innerCapture(regExpFormatted(/\1\s+.*\s+(.*)\s+/,r.carAndRatePrefix),1);var R=a.getSpan().innerCapture(regExpFormatted(/\1\s+($<price>[\d,.]+)\s($<currency>[A-Z]{3})/,r.totalChargesPrefix));if(c=R?R.$price:null,d=R?R.$currency:null,ASSERT(S,y))return f||(f=v,l||(l=S),P||(P=E)),[{"@context":"http://schema.org","@type":"http://schema.org/RentalCarReservation",totalPrice:c,priceCurrency:d,reservationId:i,reservationStatus:"http://schema.org/ReservationConfirmed",checkinUrl:o,modifyReservationUrl:p,cancelReservationUrl:s,underName:{"@type":"http://schema.org/Person",name:n},provider:{"@type":"http://schema.org/Organization",name:"Enterprise"},reservationFor:{"@type":"http://schema.org/Car",brand:{"@type":"http://schema.org/Organization",name:m},license:x,color:g},pickupTime:y,pickupLocation:{"@type":"http://schema.org/Place",name:v,telephone:E,address:S},dropoffTime:u,dropoffLocation:{"@type":"http://schema.org/Place",name:f,telephone:P,address:l}}]}}).call();