// Copyright 2014 Apple Inc.  All Rights Reserved.
(function(){return function(e,t,n,r){var a=loadHelper("opentable.com-microdata-parser.js"),o=a(e);if(o)return o;if(!(e&&t&&n&&r))return CONTINUE;var s=Scanner.fromMessage(e);s.setLocale(t);var i,p,d,g,m,l,h,x,c,u,S,E,T,v,C;return i="de_DE"===t||"es_MX"===t?s.getSpan().innerCapture(regExpFormatted(/\1.*\n(.*?)(\2)?\n/m,n.infos,n.hello),1).trim():s.getSpan().innerCapture(regExpFormatted(/(.+?)\s*\1/,n.hello),1),p=s.getSpan().innerCapture(regExpFormatted(/\1(:|\uff1a) (\d+)/,n.number),2),u=s.getSpan().nextText(n.address+":"),u.exists()||(u=s.getSpan().nextText(n.addressAlt+"\uff1a")),u=u.collapseToEnd().withEnd(s.getSpan().nextText(n.description).getStart()).trim(),c=not(u.innerAddress())?u.innerCapture(/^.*\r?\n(.*)/,1):u.innerAddress(),x=not(u.innerPhoneNumber())?u.innerCapture(/(\d{11})/,1):u.innerPhoneNumber(),d=s.getDetachedSpan(e.subject).innerCapture(regExpFormatted(/\1 (.*)/,n.reservation),1),d.exists()||(d=s.getDetachedSpan(e.subject).innerCapture(regExpFormatted(/\u3010?(.+?)\u3011?(\1|\2)/,n.reservation,n.reservationAlt),1).trim()),T=s.getSpan().next(n.infos).nextText(n.person),g=s.getSpan().withStart(T.previousText("\n").getEnd()).withEnd(T.nextText("\n").getStart()).innerCapture(regExpFormatted(/(\d+)/),1),v=s.getSpan().next(n.infosCapture).collapseToEnd().withEnd(s.getSpan().next(n.infosCapture).nextText(n.number).getStart()).trim(),C=v.allInnerDates(),C.length>0&&(C=s.getSpan().withStart(C[0].getStart()).withEnd(C[C.length-1].getEnd()),h="ja_JP"===t?getFuzzyDate(s.getDetachedSpan((""+C).replace(/[^\d\sa-zA-z:]+/g," ").replace(/\s+/g," ").replace(/^(\d+)\s(\d+)\s/,"$1/$2/"))):getFuzzyDate(s.getDetachedSpan(""+C))),S=s.getSpan().nextText(n.modify).nextLink(),E=s.getSpan().nextText(n.cancel).nextLink(),ASSERT(g,d,h,i)?[{"@context":"http://schema.org","@type":"http://schema.org/FoodEstablishmentReservation",partySize:g,reservationId:p,reservationStatus:"http://schema.org/Reservation"+(l||"Confirmed"),reservationFor:{"@type":"http://schema.org/FoodEstablishment",name:d,url:m,telephone:x,address:c},startTime:h,bookingAgent:{"@type":"http://schema.org/Organization",name:"OpenTable",url:"http://www."+r+"/"},underName:{"@type":"http://schema.org/Person",name:i},cancelReservationUrl:E,modifyReservationUrl:S}]:CONTINUE}}).call();