// Copyright 2014 Apple Inc.  All Rights Reserved.
(function(){return function(e,t,n){var a=Scanner.fromMessage(e);a.setLocale(t);var r,i,g,o,s,p,c,d,m,x,u,l,C,T,h,y,S,E;if(!n.emailTitelConfirmation.test(e.subject)&&!n.emailTitelCancelConfirmation.test(e.subject))return CONTINUE;s=a.getSpan().nextRegExp(n.reservationId).tagContents().innerCapture(n.reservationId,1),r=a.getSpan().nextRegExp(n.guestName).nextAnyTag("td").tagContents(),i=a.getSpan().nextRegExp(n.guestEmail).nextAnyTag("td").tagContents(),d=a.getSpan().nextRegExp(n.checkInDate).nextAnyTag("td").tagContents().innerDate(),u=a.getSpan().nextRegExp(n.checkOutDate).nextAnyTag("td").tagContents().innerDate(),c=a.getSpan().nextRegExp(n.checkInTime).nextAnyTag("td").tagContents().innerDate(),x=a.getSpan().nextRegExp(n.checkOutTime).nextAnyTag("td").tagContents().innerDate(),m=getFuzzyDate(a.getDetachedSpan(d+" "+c).innerDate()),l=getFuzzyDate(a.getDetachedSpan(u+" "+x).innerDate());var f=a.getSpan().nextRegExp(n.price).nextAnyTag("td").tagContents();g=f.innerCapture(/([\d,.]+)/,1),o=f.innerCapture(/([^\d,.]+)/,1).trim();var R=a.getSpan().nextRegExp(n.reservationId).parentAnyTag("table").nextAnyTag("td").tagContents();if(T=R.innerCapture(regExpFormatted(/(.+)\s+</),1),C=R.innerLink(),h=R.innerPhoneNumber(),y=R.innerAddress(),0===(""+y).length&&(y=R.innerCapture(n.hotelAddress,1)),S=a.getSpan().nextRegExp(n.modifyUrl).parentAnyTag("td").nextLink(),n.emailTitelConfirmation.test(e.subject)){if(!ASSERT(r,s,m,l,y))return CONTINUE;p="Confirmed"}if(n.emailTitelCancelConfirmation.test(e.subject)){if(!ASSERT(r,s,m,l,y))return CONTINUE;p="Cancelled"}return[{"@context":"http://schema.org","@type":"http://schema.org/LodgingReservation",underName:{"@type":"http://schema.org/Person",name:r,email:i},totalPrice:g,priceCurrency:o,checkinTime:m,checkoutTime:l,modifyReservationUrl:S,cancelReservationUrl:E,reservationStatus:"http://schema.org/Reservation"+(p||"Confirmed"),reservationId:s,reservationFor:{"@type":"http://schema.org/LodgingBusiness",name:T,url:C,telephone:h,address:y}}]}}).call();