<?xml version="1.0" encoding="UTF-8"?>
<uml:Model xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_Ysq8cHSvEeSRrsSFp927Fw" name="model">
  <packagedElement xmi:type="uml:Activity" xmi:id="_zosnkHS7EeSRrsSFp927Fw" name="Book Specific Room" node="_CGQdUHS8EeSRrsSFp927Fw _HNLT0HS8EeSRrsSFp927Fw _Q1pp8HS8EeSRrsSFp927Fw _UTitIHS8EeSRrsSFp927Fw _cZb2MHS8EeSRrsSFp927Fw _nqkzQHS8EeSRrsSFp927Fw _avpjAHS-EeSRrsSFp927Fw _EkBY4HS_EeSRrsSFp927Fw _GLOx0HTAEeSRrsSFp927Fw _SgnaIHTAEeSRrsSFp927Fw _YneqsHTAEeSRrsSFp927Fw _1HqtsHTAEeSRrsSFp927Fw _4NVosHTBEeSRrsSFp927Fw _BssfEHTCEeSRrsSFp927Fw _KsUFcHTCEeSRrsSFp927Fw _mpgJEHTCEeSRrsSFp927Fw _uy55IHTCEeSRrsSFp927Fw _zu55EHTCEeSRrsSFp927Fw _8TuZ0HTCEeSRrsSFp927Fw _EkMbMHTDEeSRrsSFp927Fw _I-tesHTDEeSRrsSFp927Fw _JgU-AHTDEeSRrsSFp927Fw _u4Rr4HTDEeSRrsSFp927Fw _XIMscHTEEeSRrsSFp927Fw _pHotgHTEEeSRrsSFp927Fw _0o3VAHTEEeSRrsSFp927Fw _KnCcgHTFEeSRrsSFp927Fw">
    <edge xmi:type="uml:ControlFlow" xmi:id="_Nva40HS8EeSRrsSFp927Fw" target="_HNLT0HS8EeSRrsSFp927Fw" source="_CGQdUHS8EeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_ZwZ-cHS8EeSRrsSFp927Fw" target="_UTitIHS8EeSRrsSFp927Fw" source="_Q1pp8HS8EeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_cZm1UHS8EeSRrsSFp927Fw" name="Room not available" target="_cZb2MHS8EeSRrsSFp927Fw" source="_UTitIHS8EeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_Ei_JAHS9EeSRrsSFp927Fw" name="Room is available" target="_nqkzQHS8EeSRrsSFp927Fw" source="_UTitIHS8EeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_taqQoHS-EeSRrsSFp927Fw" target="_avpjAHS-EeSRrsSFp927Fw" source="_HNLT0HS8EeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_HzflkHS_EeSRrsSFp927Fw" target="_EkBY4HS_EeSRrsSFp927Fw" source="_avpjAHS-EeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_Kzt1UHS_EeSRrsSFp927Fw" name="Valid dates" target="_GLOx0HTAEeSRrsSFp927Fw" source="_EkBY4HS_EeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_TcyHcHTAEeSRrsSFp927Fw" target="_SgnaIHTAEeSRrsSFp927Fw" source="_GLOx0HTAEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_UMwy4HTAEeSRrsSFp927Fw" name="Room exists" target="_Q1pp8HS8EeSRrsSFp927Fw" source="_SgnaIHTAEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_pTfVAHTAEeSRrsSFp927Fw" target="_HNLT0HS8EeSRrsSFp927Fw" source="_YneqsHTAEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_2B6IYHTAEeSRrsSFp927Fw" name="Room does not exist" target="_1HqtsHTAEeSRrsSFp927Fw" source="_SgnaIHTAEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_6kAakHTAEeSRrsSFp927Fw" name="Dates not valid" target="_1HqtsHTAEeSRrsSFp927Fw" source="_EkBY4HS_EeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="__ILJUHTAEeSRrsSFp927Fw" target="_YneqsHTAEeSRrsSFp927Fw" source="_1HqtsHTAEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="__HmFEHTBEeSRrsSFp927Fw" target="_4NVosHTBEeSRrsSFp927Fw" source="_nqkzQHS8EeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_DVpZ4HTCEeSRrsSFp927Fw" name="Customer name valid" target="_BssfEHTCEeSRrsSFp927Fw" source="_4NVosHTBEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_EL66kHTCEeSRrsSFp927Fw" name="Customer name invalid" target="_nqkzQHS8EeSRrsSFp927Fw" source="_BssfEHTCEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_RIRcQHTCEeSRrsSFp927Fw" target="_KsUFcHTCEeSRrsSFp927Fw" source="_BssfEHTCEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_tXpcEHTCEeSRrsSFp927Fw" target="_u4Rr4HTDEeSRrsSFp927Fw" source="_mpgJEHTCEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_3uLyEHTCEeSRrsSFp927Fw" target="_zu55EHTCEeSRrsSFp927Fw" source="_uy55IHTCEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="__-7gQHTCEeSRrsSFp927Fw" name="Confirmed" target="_8TuZ0HTCEeSRrsSFp927Fw" source="_zu55EHTCEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_IIuR4HTDEeSRrsSFp927Fw" target="_EkMbMHTDEeSRrsSFp927Fw" source="_8TuZ0HTCEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_L-NVsHTDEeSRrsSFp927Fw" target="_JgU-AHTDEeSRrsSFp927Fw" source="_EkMbMHTDEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_M806EHTDEeSRrsSFp927Fw" name="Aborted" target="_I-tesHTDEeSRrsSFp927Fw" source="_zu55EHTCEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_21AR4HTDEeSRrsSFp927Fw" name="Customer found" target="_uy55IHTCEeSRrsSFp927Fw" source="_u4Rr4HTDEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_OMy3sHTEEeSRrsSFp927Fw" target="_mpgJEHTCEeSRrsSFp927Fw" source="_KsUFcHTCEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_2PiX4HTEEeSRrsSFp927Fw" name="Not found" target="_XIMscHTEEeSRrsSFp927Fw" source="_u4Rr4HTDEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_7WEz4HTEEeSRrsSFp927Fw" target="_pHotgHTEEeSRrsSFp927Fw" source="_XIMscHTEEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_8cELkHTEEeSRrsSFp927Fw" target="_0o3VAHTEEeSRrsSFp927Fw" source="_pHotgHTEEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_Cz8ToHTFEeSRrsSFp927Fw" name="Invalid" target="_XIMscHTEEeSRrsSFp927Fw" source="_0o3VAHTEEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_HF3b0HTFEeSRrsSFp927Fw" name="Valid" target="_KnCcgHTFEeSRrsSFp927Fw" source="_0o3VAHTEEeSRrsSFp927Fw"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_PLKvAHTFEeSRrsSFp927Fw" target="_uy55IHTCEeSRrsSFp927Fw" source="_KnCcgHTFEeSRrsSFp927Fw"/>
    <node xmi:type="uml:InitialNode" xmi:id="_CGQdUHS8EeSRrsSFp927Fw" name="InitialNode1" outgoing="_Nva40HS8EeSRrsSFp927Fw"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_HNLT0HS8EeSRrsSFp927Fw" name="Ask date range &amp; room number" incoming="_Nva40HS8EeSRrsSFp927Fw _pTfVAHTAEeSRrsSFp927Fw" outgoing="_taqQoHS-EeSRrsSFp927Fw">
      <body></body>
    </node>
    <node xmi:type="uml:OpaqueAction" xmi:id="_Q1pp8HS8EeSRrsSFp927Fw" name="Check if room available in date range" incoming="_UMwy4HTAEeSRrsSFp927Fw" outgoing="_ZwZ-cHS8EeSRrsSFp927Fw"/>
    <node xmi:type="uml:DecisionNode" xmi:id="_UTitIHS8EeSRrsSFp927Fw" name="DecisionNode1" incoming="_ZwZ-cHS8EeSRrsSFp927Fw" outgoing="_cZm1UHS8EeSRrsSFp927Fw _Ei_JAHS9EeSRrsSFp927Fw"/>
    <node xmi:type="uml:ActivityFinalNode" xmi:id="_cZb2MHS8EeSRrsSFp927Fw" name="ActivityFinalNode1" incoming="_cZm1UHS8EeSRrsSFp927Fw"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_nqkzQHS8EeSRrsSFp927Fw" name="Ask customer name" incoming="_Ei_JAHS9EeSRrsSFp927Fw _EL66kHTCEeSRrsSFp927Fw" outgoing="__HmFEHTBEeSRrsSFp927Fw"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_avpjAHS-EeSRrsSFp927Fw" name="Check if date range valid" incoming="_taqQoHS-EeSRrsSFp927Fw" outgoing="_HzflkHS_EeSRrsSFp927Fw"/>
    <node xmi:type="uml:DecisionNode" xmi:id="_EkBY4HS_EeSRrsSFp927Fw" name="DecisionNode2" incoming="_HzflkHS_EeSRrsSFp927Fw" outgoing="_Kzt1UHS_EeSRrsSFp927Fw _6kAakHTAEeSRrsSFp927Fw"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_GLOx0HTAEeSRrsSFp927Fw" name="Check if the room exists" incoming="_Kzt1UHS_EeSRrsSFp927Fw" outgoing="_TcyHcHTAEeSRrsSFp927Fw"/>
    <node xmi:type="uml:DecisionNode" xmi:id="_SgnaIHTAEeSRrsSFp927Fw" name="DecisionNode3" incoming="_TcyHcHTAEeSRrsSFp927Fw" outgoing="_UMwy4HTAEeSRrsSFp927Fw _2B6IYHTAEeSRrsSFp927Fw"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_YneqsHTAEeSRrsSFp927Fw" name="Notify user of problem" incoming="__ILJUHTAEeSRrsSFp927Fw" outgoing="_pTfVAHTAEeSRrsSFp927Fw"/>
    <node xmi:type="uml:MergeNode" xmi:id="_1HqtsHTAEeSRrsSFp927Fw" name="MergeNode1" incoming="_2B6IYHTAEeSRrsSFp927Fw _6kAakHTAEeSRrsSFp927Fw" outgoing="__ILJUHTAEeSRrsSFp927Fw"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_4NVosHTBEeSRrsSFp927Fw" name="Check customer name valid" incoming="__HmFEHTBEeSRrsSFp927Fw" outgoing="_DVpZ4HTCEeSRrsSFp927Fw"/>
    <node xmi:type="uml:DecisionNode" xmi:id="_BssfEHTCEeSRrsSFp927Fw" name="DecisionNode4" incoming="_DVpZ4HTCEeSRrsSFp927Fw" outgoing="_EL66kHTCEeSRrsSFp927Fw _RIRcQHTCEeSRrsSFp927Fw"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_KsUFcHTCEeSRrsSFp927Fw" name="Find customers matching name" incoming="_RIRcQHTCEeSRrsSFp927Fw" outgoing="_OMy3sHTEEeSRrsSFp927Fw"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_mpgJEHTCEeSRrsSFp927Fw" name="Await actor choice" incoming="_OMy3sHTEEeSRrsSFp927Fw" outgoing="_tXpcEHTCEeSRrsSFp927Fw"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_uy55IHTCEeSRrsSFp927Fw" name="Ask confirm booking" incoming="_21AR4HTDEeSRrsSFp927Fw _PLKvAHTFEeSRrsSFp927Fw" outgoing="_3uLyEHTCEeSRrsSFp927Fw"/>
    <node xmi:type="uml:DecisionNode" xmi:id="_zu55EHTCEeSRrsSFp927Fw" name="DecisionNode5" incoming="_3uLyEHTCEeSRrsSFp927Fw" outgoing="__-7gQHTCEeSRrsSFp927Fw _M806EHTDEeSRrsSFp927Fw"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_8TuZ0HTCEeSRrsSFp927Fw" name="Create booking" incoming="__-7gQHTCEeSRrsSFp927Fw" outgoing="_IIuR4HTDEeSRrsSFp927Fw"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_EkMbMHTDEeSRrsSFp927Fw" name="Register customer on booking" incoming="_IIuR4HTDEeSRrsSFp927Fw" outgoing="_L-NVsHTDEeSRrsSFp927Fw"/>
    <node xmi:type="uml:ActivityFinalNode" xmi:id="_I-tesHTDEeSRrsSFp927Fw" name="ActivityFinalNode2" incoming="_M806EHTDEeSRrsSFp927Fw"/>
    <node xmi:type="uml:ActivityFinalNode" xmi:id="_JgU-AHTDEeSRrsSFp927Fw" name="ActivityFinalNode3" incoming="_L-NVsHTDEeSRrsSFp927Fw"/>
    <node xmi:type="uml:DecisionNode" xmi:id="_u4Rr4HTDEeSRrsSFp927Fw" name="DecisionNode6" incoming="_tXpcEHTCEeSRrsSFp927Fw" outgoing="_21AR4HTDEeSRrsSFp927Fw _2PiX4HTEEeSRrsSFp927Fw"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_XIMscHTEEeSRrsSFp927Fw" name="Ask additional customer information" incoming="_2PiX4HTEEeSRrsSFp927Fw _Cz8ToHTFEeSRrsSFp927Fw" outgoing="_7WEz4HTEEeSRrsSFp927Fw"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_pHotgHTEEeSRrsSFp927Fw" name="Check supplied information valid" incoming="_7WEz4HTEEeSRrsSFp927Fw" outgoing="_8cELkHTEEeSRrsSFp927Fw"/>
    <node xmi:type="uml:DecisionNode" xmi:id="_0o3VAHTEEeSRrsSFp927Fw" name="DecisionNode7" incoming="_8cELkHTEEeSRrsSFp927Fw" outgoing="_Cz8ToHTFEeSRrsSFp927Fw _HF3b0HTFEeSRrsSFp927Fw"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_KnCcgHTFEeSRrsSFp927Fw" name="Create customer" incoming="_HF3b0HTFEeSRrsSFp927Fw" outgoing="_PLKvAHTFEeSRrsSFp927Fw"/>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_6SLu0HZBEeSrX_LICIhx2Q" name="Room" visibility="package">
    <ownedAttribute xmi:type="uml:Property" xmi:id="_0tjzMHZCEeSrX_LICIhx2Q" name="floor" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_eOpOwHZFEeSrX_LICIhx2Q" name="roomNumber" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_rT-GQHZFEeSrX_LICIhx2Q" name="isOperational" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EBoolean"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_w81zQHZFEeSrX_LICIhx2Q" name="isCleaned" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EBoolean"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_5XRB4HZFEeSrX_LICIhx2Q" name="description" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_FBMSYHZGEeSrX_LICIhx2Q" name="disabilityApprovals" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EEList"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_YDGdEHZGEeSrX_LICIhx2Q" name="photos" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EEList"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_gKQKYHZGEeSrX_LICIhx2Q" name="allowedKeyCards" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EEList"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_sqV78HZIEeSrX_LICIhx2Q" name="keyCard" type="_LUQhAHZIEeSrX_LICIhx2Q" association="_sqWjAHZIEeSrX_LICIhx2Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_sqV78XZIEeSrX_LICIhx2Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sqV78nZIEeSrX_LICIhx2Q" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_3WLXEHZJEeSrX_LICIhx2Q" name="roomType" type="_MEBmgHZHEeSrX_LICIhx2Q" association="_3WL-IHZJEeSrX_LICIhx2Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_3WLXEXZJEeSrX_LICIhx2Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_3WLXEnZJEeSrX_LICIhx2Q" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_UR9i8HlVEeSGW6TbfhvuNQ" name="roomStay" type="_135lwHZKEeSrX_LICIhx2Q" association="_UR_YIHlVEeSGW6TbfhvuNQ">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UR9i8XlVEeSGW6TbfhvuNQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UR9i8nlVEeSGW6TbfhvuNQ" value="1"/>
    </ownedAttribute>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_6fXc8HZGEeSrX_LICIhx2Q" name="registerKeyCard">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_h6IhsHZIEeSrX_LICIhx2Q" name="keyCard" type="_LUQhAHZIEeSrX_LICIhx2Q"/>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_-W7kYHZGEeSrX_LICIhx2Q" name="unregisterKeyCard">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_lVf1UHZIEeSrX_LICIhx2Q" name="keyCard" type="_LUQhAHZIEeSrX_LICIhx2Q"/>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_HbofEHZHEeSrX_LICIhx2Q" name="unregisterKeyCards"/>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_MEBmgHZHEeSrX_LICIhx2Q" name="RoomType">
    <ownedAttribute xmi:type="uml:Property" xmi:id="_g3P90HZHEeSrX_LICIhx2Q" name="id" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_l20PIHZHEeSrX_LICIhx2Q" name="name" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_t9SnAHZHEeSrX_LICIhx2Q" name="roomApprovals" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EEList"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_yR86IHZHEeSrX_LICIhx2Q" name="description" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_VGrm4HZUEeSbBJzXJgLK5Q" name="roomApproval" type="_1lx-MHZOEeSrX_LICIhx2Q" association="_VGs1AHZUEeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_VGrm4XZUEeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_VGrm4nZUEeSbBJzXJgLK5Q" value="1"/>
    </ownedAttribute>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_LUQhAHZIEeSrX_LICIhx2Q" name="KeyCard">
    <ownedAttribute xmi:type="uml:Property" xmi:id="_SpuSsHZIEeSrX_LICIhx2Q" name="id" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_sqWjAHZIEeSrX_LICIhx2Q" memberEnd="_sqWjAXZIEeSrX_LICIhx2Q _sqV78HZIEeSrX_LICIhx2Q">
    <name xsi:nil="true"/>
    <ownedEnd xmi:type="uml:Property" xmi:id="_sqWjAXZIEeSrX_LICIhx2Q" name="room" type="_6SLu0HZBEeSrX_LICIhx2Q" association="_sqWjAHZIEeSrX_LICIhx2Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_sqWjAnZIEeSrX_LICIhx2Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sqWjA3ZIEeSrX_LICIhx2Q" value="1"/>
    </ownedEnd>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_zg8nYHZIEeSrX_LICIhx2Q" name="GuestRoom">
    <generalization xmi:type="uml:Generalization" xmi:id="_6iO40HZIEeSrX_LICIhx2Q" general="_6SLu0HZBEeSrX_LICIhx2Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_APq8wHZJEeSrX_LICIhx2Q" name="numberOfBeds" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_IYF1YHZJEeSrX_LICIhx2Q" name="numberOfExtrabeds" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
    </ownedAttribute>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_27D90HZIEeSrX_LICIhx2Q" name="ConferenceRoom">
    <generalization xmi:type="uml:Generalization" xmi:id="_4mHKYHZIEeSrX_LICIhx2Q" general="_6SLu0HZBEeSrX_LICIhx2Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_ZI9KgHZJEeSrX_LICIhx2Q" name="numberOfSeats" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_u4FJYHZJEeSrX_LICIhx2Q" name="equipment" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EEList"/>
    </ownedAttribute>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_3WL-IHZJEeSrX_LICIhx2Q" memberEnd="_3WL-IXZJEeSrX_LICIhx2Q _3WLXEHZJEeSrX_LICIhx2Q">
    <ownedEnd xmi:type="uml:Property" xmi:id="_3WL-IXZJEeSrX_LICIhx2Q" name="room" type="_6SLu0HZBEeSrX_LICIhx2Q" association="_3WL-IHZJEeSrX_LICIhx2Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_3WL-InZJEeSrX_LICIhx2Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_3WL-I3ZJEeSrX_LICIhx2Q" value="1"/>
    </ownedEnd>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_QwNhcHZKEeSrX_LICIhx2Q" name="Booking" visibility="protected">
    <ownedAttribute xmi:type="uml:Property" xmi:id="_pU2lkHbyEeSbBJzXJgLK5Q" name="id" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_eSxukHZKEeSrX_LICIhx2Q" name="startDate" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_iQs8sHZKEeSrX_LICIhx2Q" name="endDate" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_pZm5EHZKEeSrX_LICIhx2Q" name="specialRequest" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_y2HPwHZKEeSrX_LICIhx2Q" name="price" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDouble"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_GwmBMHZLEeSrX_LICIhx2Q" name="roomStay" visibility="private" type="_135lwHZKEeSrX_LICIhx2Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_qXPwkHZLEeSrX_LICIhx2Q" name="roomType" visibility="private" type="_MEBmgHZHEeSrX_LICIhx2Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_yBgGgHZLEeSrX_LICIhx2Q" name="responsibleEntity" visibility="private" type="_3oahIHZKEeSrX_LICIhx2Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_JKHuQHZUEeSbBJzXJgLK5Q" name="travelInformation" visibility="private" type="_0QuhsHZMEeSrX_LICIhx2Q" association="_JKI8YHZUEeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_JKHuQXZUEeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_JKHuQnZUEeSbBJzXJgLK5Q" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_UkfDEHb0EeSbBJzXJgLK5Q" name="legalEntity" type="_3oahIHZKEeSrX_LICIhx2Q" association="_UkgRMHb0EeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UkfDEXb0EeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UkfDEnb0EeSbBJzXJgLK5Q" value="1"/>
    </ownedAttribute>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_Tn84sHZMEeSrX_LICIhx2Q" name="checkIn" isStatic="true"/>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_VxFvcHZMEeSrX_LICIhx2Q" name="checkOut"/>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_r9tioHZMEeSrX_LICIhx2Q" name="registerTravelInformation">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_r9tioXZMEeSrX_LICIhx2Q" name="travelInformation" type="_0QuhsHZMEeSrX_LICIhx2Q"/>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="__joZUHZMEeSrX_LICIhx2Q" name="unregisterTravelInformation">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="__joZUXZMEeSrX_LICIhx2Q" name="travelInformation" type="_0QuhsHZMEeSrX_LICIhx2Q"/>
    </ownedOperation>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_135lwHZKEeSrX_LICIhx2Q" name="RoomStay">
    <ownedAttribute xmi:type="uml:Port" xmi:id="_ebM4gHZPEeSrX_LICIhx2Q" name="active" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EBoolean"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Port" xmi:id="_04Bq4HZPEeSrX_LICIhx2Q" name="registeredPersons" visibility="private"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_CpZzQHZUEeSbBJzXJgLK5Q" name="stayRequest" type="_qgItMHZTEeSbBJzXJgLK5Q" association="_CpbBYHZUEeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_CpZzQXZUEeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_CpZzQnZUEeSbBJzXJgLK5Q" value="1"/>
    </ownedAttribute>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_p5oDoHZPEeSrX_LICIhx2Q" name="setActive">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_p5oDoXZPEeSrX_LICIhx2Q" name="value">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EBoolean"/>
      </ownedParameter>
    </ownedOperation>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_3oahIHZKEeSrX_LICIhx2Q" name="LegalEntity">
    <ownedAttribute xmi:type="uml:Property" xmi:id="_N7xKQHZSEeSbBJzXJgLK5Q" name="phone" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_dvdFcHZSEeSbBJzXJgLK5Q" name="email" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_5nIKIHcGEeSbBJzXJgLK5Q" name="billingInformation" visibility="private" type="_027nAHcFEeSbBJzXJgLK5Q" association="_5nJYQHcGEeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_5nIKIXcGEeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_5nIKIncGEeSbBJzXJgLK5Q" value="1"/>
    </ownedAttribute>
    <ownedOperation xmi:type="uml:Operation" xmi:id="__0p8wHoOEeSVKdBxhP6Y7A" name="Operation1"/>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_0QuhsHZMEeSrX_LICIhx2Q" name="TravelInformation">
    <ownedAttribute xmi:type="uml:Property" xmi:id="_UaYJQHZOEeSrX_LICIhx2Q" name="id" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_qpz_4HZOEeSrX_LICIhx2Q" name="trackingId" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_JPNb4HZPEeSrX_LICIhx2Q" name="comment" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_J25UsHZUEeSbBJzXJgLK5Q" name="travelInformation" type="_0QuhsHZMEeSrX_LICIhx2Q" association="_J26i0HZUEeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_J25UsXZUEeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_J25UsnZUEeSbBJzXJgLK5Q" value="1"/>
    </ownedAttribute>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_V9TfIHZPEeSrX_LICIhx2Q" name="addPredecessor">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_V9TfIXZPEeSrX_LICIhx2Q" name="travelInfomation" type="_0QuhsHZMEeSrX_LICIhx2Q"/>
    </ownedOperation>
  </packagedElement>
  <packagedElement xmi:type="uml:Enumeration" xmi:id="_1lx-MHZOEeSrX_LICIhx2Q" name="RoomApproval"/>
  <packagedElement xmi:type="uml:Class" xmi:id="_5Km6YHZPEeSrX_LICIhx2Q" name="Person" visibility="package">
    <generalization xmi:type="uml:Generalization" xmi:id="_8gzIMHZREeSbBJzXJgLK5Q" general="_3oahIHZKEeSrX_LICIhx2Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_omfgcHZSEeSbBJzXJgLK5Q" name="firstname" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_MCHrkHZTEeSbBJzXJgLK5Q" name="lastname" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_TTzwgHZTEeSbBJzXJgLK5Q" name="socialSecurityNumber" visibility="private"/>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_WOTLsHZTEeSbBJzXJgLK5Q" name="Organization">
    <generalization xmi:type="uml:Generalization" xmi:id="_m9uWYHZTEeSbBJzXJgLK5Q" general="_3oahIHZKEeSrX_LICIhx2Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_b8grsHZTEeSbBJzXJgLK5Q" name="name" visibility="private"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_kst9EHZTEeSbBJzXJgLK5Q" name="organizationNumber" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_qgItMHZTEeSbBJzXJgLK5Q" name="StayRequest">
    <ownedAttribute xmi:type="uml:Property" xmi:id="_4WNFIHZTEeSbBJzXJgLK5Q" name="text" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_9-rwkHZTEeSbBJzXJgLK5Q" name="timeStamp" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
    </ownedAttribute>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_CpbBYHZUEeSbBJzXJgLK5Q" memberEnd="_CpbBYXZUEeSbBJzXJgLK5Q _CpZzQHZUEeSbBJzXJgLK5Q">
    <name xsi:nil="true"/>
    <ownedEnd xmi:type="uml:Property" xmi:id="_CpbBYXZUEeSbBJzXJgLK5Q" name="roomStay" type="_135lwHZKEeSrX_LICIhx2Q" association="_CpbBYHZUEeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_CpbBYnZUEeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_CpbBY3ZUEeSbBJzXJgLK5Q" value="1"/>
    </ownedEnd>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_JKI8YHZUEeSbBJzXJgLK5Q" memberEnd="_JKI8YXZUEeSbBJzXJgLK5Q _JKHuQHZUEeSbBJzXJgLK5Q">
    <name xsi:nil="true"/>
    <ownedEnd xmi:type="uml:Property" xmi:id="_JKI8YXZUEeSbBJzXJgLK5Q" name="booking" type="_QwNhcHZKEeSrX_LICIhx2Q" association="_JKI8YHZUEeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_JKI8YnZUEeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_JKI8Y3ZUEeSbBJzXJgLK5Q" value="1"/>
    </ownedEnd>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_J26i0HZUEeSbBJzXJgLK5Q" memberEnd="_J26i0XZUEeSbBJzXJgLK5Q _J25UsHZUEeSbBJzXJgLK5Q">
    <name xsi:nil="true"/>
    <ownedEnd xmi:type="uml:Property" xmi:id="_J26i0XZUEeSbBJzXJgLK5Q" name="travelInformation" type="_0QuhsHZMEeSrX_LICIhx2Q" association="_J26i0HZUEeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_J26i0nZUEeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_J26i03ZUEeSbBJzXJgLK5Q" value="1"/>
    </ownedEnd>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_VGs1AHZUEeSbBJzXJgLK5Q" memberEnd="_VGs1AXZUEeSbBJzXJgLK5Q _VGrm4HZUEeSbBJzXJgLK5Q">
    <name xsi:nil="true"/>
    <ownedEnd xmi:type="uml:Property" xmi:id="_VGs1AXZUEeSbBJzXJgLK5Q" name="roomType" type="_MEBmgHZHEeSrX_LICIhx2Q" association="_VGs1AHZUEeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_VGs1AnZUEeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_VGs1A3ZUEeSbBJzXJgLK5Q" value="1"/>
    </ownedEnd>
  </packagedElement>
  <packagedElement xmi:type="uml:Interface" xmi:id="_xX22IHZXEeSbBJzXJgLK5Q" name="BookingManager" visibility="package">
    <ownedOperation xmi:type="uml:Operation" xmi:id="_M4j2AHbwEeSbBJzXJgLK5Q" name="getBookings">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_nZZ3cHbwEeSbBJzXJgLK5Q" name="from">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_u5_7EHbwEeSbBJzXJgLK5Q" name="to">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_CwrxoHbxEeSbBJzXJgLK5Q" direction="return">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EEList"/>
      </ownedParameter>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_R34aQHbxEeSbBJzXJgLK5Q" name="getBookings">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_R34aQXbxEeSbBJzXJgLK5Q" name="from">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_R34aQnbxEeSbBJzXJgLK5Q" name="to">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_R34aQ3bxEeSbBJzXJgLK5Q" direction="return">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EEList"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_Xs5s4HbxEeSbBJzXJgLK5Q" name="customer" type="_3oahIHZKEeSrX_LICIhx2Q"/>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_ZySsEHbxEeSbBJzXJgLK5Q" name="getBookings">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_ZySsE3bxEeSbBJzXJgLK5Q" direction="return">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EEList"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_ZySsFHbxEeSbBJzXJgLK5Q" name="customer" type="_3oahIHZKEeSrX_LICIhx2Q"/>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_-tRxIHbxEeSbBJzXJgLK5Q" name="getAvailableRooms">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_MRrxUHbyEeSbBJzXJgLK5Q" name="from">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_Qk4r4HbyEeSbBJzXJgLK5Q" type="_6SLu0HZBEeSrX_LICIhx2Q" direction="return"/>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_VyKpEHbyEeSbBJzXJgLK5Q" name="to">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_aJ-W0HbyEeSbBJzXJgLK5Q" name="getAvailableRooms">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_aJ-W0XbyEeSbBJzXJgLK5Q" name="from">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_aJ-W03byEeSbBJzXJgLK5Q" name="to">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_d8dJ8HbyEeSbBJzXJgLK5Q" name="roomType" type="_MEBmgHZHEeSrX_LICIhx2Q"/>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_aJ-W0nbyEeSbBJzXJgLK5Q" type="_6SLu0HZBEeSrX_LICIhx2Q" direction="return"/>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_TFoU4HbzEeSbBJzXJgLK5Q" name="getAvailableRoomTypeAmount">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_TFoU4XbzEeSbBJzXJgLK5Q" name="from">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_TFoU43bzEeSbBJzXJgLK5Q" name="to">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_hccpcHbzEeSbBJzXJgLK5Q" visibility="public" direction="return">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EMap"/>
      </ownedParameter>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_TFpjAHbzEeSbBJzXJgLK5Q" name="getAvailableRoomTypeAmount">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_TFpjAXbzEeSbBJzXJgLK5Q" name="from">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_TFpjAnbzEeSbBJzXJgLK5Q" name="to">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_TFpjA3bzEeSbBJzXJgLK5Q" name="roomType" type="_MEBmgHZHEeSrX_LICIhx2Q"/>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_TFpjBHbzEeSbBJzXJgLK5Q" direction="return">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
      </ownedParameter>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_ZEZj8Hb0EeSbBJzXJgLK5Q" name="createBooking" visibility="public">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_lPNT8Hb0EeSbBJzXJgLK5Q" name="from">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_na_2EHb0EeSbBJzXJgLK5Q" name="to">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_p6NDcHb0EeSbBJzXJgLK5Q" name="customer" type="_3oahIHZKEeSrX_LICIhx2Q"/>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_5DZQIHb0EeSbBJzXJgLK5Q" name="RoomType" type="_MEBmgHZHEeSrX_LICIhx2Q"/>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_JBf2IHb2EeSbBJzXJgLK5Q" name="createBooking" visibility="public">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_JBf2IXb2EeSbBJzXJgLK5Q" name="from">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_JBf2Inb2EeSbBJzXJgLK5Q" name="to">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_JBf2I3b2EeSbBJzXJgLK5Q" name="customer" type="_3oahIHZKEeSrX_LICIhx2Q"/>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_JBf2JHb2EeSbBJzXJgLK5Q" name="room" type="_6SLu0HZBEeSrX_LICIhx2Q"/>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_Zk7KMHcMEeSxBZTxw5XQdg" name="isRoomAvailable">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_0hQYUHcNEeSxBZTxw5XQdg" name="from">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_2Eu9QHcNEeSxBZTxw5XQdg" name="to">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_-5BdYHcNEeSxBZTxw5XQdg" name="roomNumber">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_CS0DsHcOEeSxBZTxw5XQdg" direction="return">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EBoolean"/>
      </ownedParameter>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_ZQOHQHoGEeSVKdBxhP6Y7A" name="isRoomTypeAvailable">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_ZQOHQXoGEeSVKdBxhP6Y7A" name="from">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_ZQOHQnoGEeSVKdBxhP6Y7A" name="to">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_ZQOHRHoGEeSVKdBxhP6Y7A" direction="return">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EBoolean"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_ok6ZUHoGEeSVKdBxhP6Y7A" name="roomType" type="_MEBmgHZHEeSrX_LICIhx2Q"/>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_so8PcHoGEeSVKdBxhP6Y7A" name="getRoomTypes">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_xrjNsHoGEeSVKdBxhP6Y7A" direction="return">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EEList"/>
      </ownedParameter>
    </ownedOperation>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_UkgRMHb0EeSbBJzXJgLK5Q" memberEnd="_UkgRMXb0EeSbBJzXJgLK5Q _UkfDEHb0EeSbBJzXJgLK5Q">
    <name xsi:nil="true"/>
    <ownedEnd xmi:type="uml:Property" xmi:id="_UkgRMXb0EeSbBJzXJgLK5Q" name="booking" type="_QwNhcHZKEeSrX_LICIhx2Q" association="_UkgRMHb0EeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UkgRMnb0EeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UkgRM3b0EeSbBJzXJgLK5Q" value="1"/>
    </ownedEnd>
  </packagedElement>
  <packagedElement xmi:type="uml:Interface" xmi:id="_tuIWIHb2EeSbBJzXJgLK5Q" name="LegalEntityManager">
    <ownedOperation xmi:type="uml:Operation" xmi:id="_xwG90Hb2EeSbBJzXJgLK5Q" name="findPerson">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_7z-PcHb2EeSbBJzXJgLK5Q" name="firstname">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_-RFyIHb2EeSbBJzXJgLK5Q" name="lastname">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_AyNrEHb3EeSbBJzXJgLK5Q" direction="return">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EEList"/>
      </ownedParameter>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_DBmTwHb3EeSbBJzXJgLK5Q" name="findOrganization" visibility="public">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_DBmTw3b3EeSbBJzXJgLK5Q" direction="return">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EEList"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_LMJTUHb3EeSbBJzXJgLK5Q" name="name">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedParameter>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_d62_wHb4EeSbBJzXJgLK5Q" name="getOrganization" visibility="public">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_j8xe4Hb4EeSbBJzXJgLK5Q" name="organizationNumber">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_mJNhQHb4EeSbBJzXJgLK5Q" name="organization" type="_WOTLsHZTEeSbBJzXJgLK5Q" direction="return"/>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_d61xoHb4EeSbBJzXJgLK5Q" name="getPerson">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_JZW1IHb5EeSbBJzXJgLK5Q" type="_5Km6YHZPEeSrX_LICIhx2Q" direction="return"/>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_3sUWMHb5EeSbBJzXJgLK5Q" name="SSN">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedParameter>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_HCmrEHb3EeSbBJzXJgLK5Q" name="createPerson">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_cFyxAHb3EeSbBJzXJgLK5Q" name="firstname">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_df-3EHb3EeSbBJzXJgLK5Q" name="lastname">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_eywtkHb3EeSbBJzXJgLK5Q" name="SSN">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_rSwDYHb3EeSbBJzXJgLK5Q" name="phone">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_sW5oAHb3EeSbBJzXJgLK5Q" name="email">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedParameter>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_tVCrQHb3EeSbBJzXJgLK5Q" name="createOrganization">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_zSbPsHb3EeSbBJzXJgLK5Q" name="name">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_xgxE0Hb3EeSbBJzXJgLK5Q" name="organizationNumber">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_tVCrRHb3EeSbBJzXJgLK5Q" name="phone">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_tVCrRXb3EeSbBJzXJgLK5Q" name="email">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
      </ownedParameter>
    </ownedOperation>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_gemc8Hb6EeSbBJzXJgLK5Q" name="Bill">
    <ownedAttribute xmi:type="uml:Property" xmi:id="_ssJX4Hb6EeSbBJzXJgLK5Q" name="purchases" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EEList"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_yIbaYHb6EeSbBJzXJgLK5Q" name="id" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_2TDAsHb6EeSbBJzXJgLK5Q" name="date" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_-iAmMHb6EeSbBJzXJgLK5Q" name="isPublished" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EBoolean"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_vVQ5wHb7EeSbBJzXJgLK5Q" name="customer" visibility="private" type="_3oahIHZKEeSrX_LICIhx2Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_zOZugHb7EeSbBJzXJgLK5Q" name="isPaied" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EBoolean"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_jQqNgHb9EeSbBJzXJgLK5Q" name="purchase" type="_An5fMHb8EeSbBJzXJgLK5Q" association="_jQrboHb9EeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_jQqNgXb9EeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_jQqNgnb9EeSbBJzXJgLK5Q" value="1"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_SHp5oHcHEeSbBJzXJgLK5Q" name="billingInformation" type="_027nAHcFEeSbBJzXJgLK5Q" association="_SHqgsHcHEeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_SHp5oXcHEeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_SHp5oncHEeSbBJzXJgLK5Q" value="1"/>
    </ownedAttribute>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_g98SEHb_EeSbBJzXJgLK5Q" name="applyDiscount">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_g98SEXb_EeSbBJzXJgLK5Q" name="discount" type="_GaHqkHb-EeSbBJzXJgLK5Q"/>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_fi8hcHcEEeSbBJzXJgLK5Q" name="addSubBill">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_fi8hcXcEEeSbBJzXJgLK5Q" name="bill" type="_gemc8Hb6EeSbBJzXJgLK5Q"/>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_s79xAHcEEeSbBJzXJgLK5Q" name="registerPurchase">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_s79xAXcEEeSbBJzXJgLK5Q" name="purchase" type="_An5fMHb8EeSbBJzXJgLK5Q"/>
    </ownedOperation>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_2g2AkHcEEeSbBJzXJgLK5Q" name="publishBill"/>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_1FAq0Hb7EeSbBJzXJgLK5Q" name="BookingBill">
    <generalization xmi:type="uml:Generalization" xmi:id="_4xpUoHb7EeSbBJzXJgLK5Q" general="_gemc8Hb6EeSbBJzXJgLK5Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_9tUkcHb7EeSbBJzXJgLK5Q" name="booking" visibility="private" type="_QwNhcHZKEeSrX_LICIhx2Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_iBYW8Hb9EeSbBJzXJgLK5Q" name="booking" type="_QwNhcHZKEeSrX_LICIhx2Q" association="_iBY-AHb9EeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_iBYW8Xb9EeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_iBYW8nb9EeSbBJzXJgLK5Q" value="1"/>
    </ownedAttribute>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_An5fMHb8EeSbBJzXJgLK5Q" name="Purchase">
    <ownedAttribute xmi:type="uml:Property" xmi:id="_N9kf0Hb8EeSbBJzXJgLK5Q" name="id" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_1_kZIHb8EeSbBJzXJgLK5Q" name="quantity" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_-k4pIHb8EeSbBJzXJgLK5Q" name="price" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDouble"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_DUX3EHb9EeSbBJzXJgLK5Q" name="service" visibility="private" type="_D2zEIHb8EeSbBJzXJgLK5Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_g77x0Hb9EeSbBJzXJgLK5Q" name="service" type="_D2zEIHb8EeSbBJzXJgLK5Q" association="_g7-1IHb9EeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g77x0Xb9EeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g77x0nb9EeSbBJzXJgLK5Q" value="1"/>
    </ownedAttribute>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_D2zEIHb8EeSbBJzXJgLK5Q" name="Service">
    <ownedAttribute xmi:type="uml:Property" xmi:id="_JofggHb9EeSbBJzXJgLK5Q" name="id" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_YTCpYHb9EeSbBJzXJgLK5Q" name="price" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDouble"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_eHbC0Hb9EeSbBJzXJgLK5Q" name="name" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_g7-1IHb9EeSbBJzXJgLK5Q" memberEnd="_g7-1IXb9EeSbBJzXJgLK5Q _g77x0Hb9EeSbBJzXJgLK5Q">
    <name xsi:nil="true"/>
    <ownedEnd xmi:type="uml:Property" xmi:id="_g7-1IXb9EeSbBJzXJgLK5Q" name="purchase" type="_An5fMHb8EeSbBJzXJgLK5Q" association="_g7-1IHb9EeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g7-1Inb9EeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_g7-1I3b9EeSbBJzXJgLK5Q" value="1"/>
    </ownedEnd>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_iBY-AHb9EeSbBJzXJgLK5Q" memberEnd="_iBY-AXb9EeSbBJzXJgLK5Q _iBYW8Hb9EeSbBJzXJgLK5Q">
    <name xsi:nil="true"/>
    <ownedEnd xmi:type="uml:Property" xmi:id="_iBY-AXb9EeSbBJzXJgLK5Q" name="bookingBill" type="_1FAq0Hb7EeSbBJzXJgLK5Q" association="_iBY-AHb9EeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_iBY-Anb9EeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_iBY-A3b9EeSbBJzXJgLK5Q" value="1"/>
    </ownedEnd>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_jQrboHb9EeSbBJzXJgLK5Q" memberEnd="_jQrboXb9EeSbBJzXJgLK5Q _jQqNgHb9EeSbBJzXJgLK5Q">
    <name xsi:nil="true"/>
    <ownedEnd xmi:type="uml:Property" xmi:id="_jQrboXb9EeSbBJzXJgLK5Q" name="bill" type="_gemc8Hb6EeSbBJzXJgLK5Q" association="_jQrboHb9EeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_jQrbonb9EeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_jQrbo3b9EeSbBJzXJgLK5Q" value="1"/>
    </ownedEnd>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_GaHqkHb-EeSbBJzXJgLK5Q" name="Discount">
    <ownedAttribute xmi:type="uml:Property" xmi:id="_NH3U8Hb-EeSbBJzXJgLK5Q" name="code" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_Q5WCgHb-EeSbBJzXJgLK5Q" name="name" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_q8SnAHb-EeSbBJzXJgLK5Q" name="limit" visibility="private" type="_SVZw0Hb-EeSbBJzXJgLK5Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_UK5dYHb_EeSbBJzXJgLK5Q" name="discountLimit" type="_SVZw0Hb-EeSbBJzXJgLK5Q" association="_UK6EcHb_EeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UK5dYXb_EeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UK5dYnb_EeSbBJzXJgLK5Q" value="1"/>
    </ownedAttribute>
    <ownedOperation xmi:type="uml:Operation" xmi:id="_Sdt7IHcFEeSbBJzXJgLK5Q" name="getPriceWithDiscount">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_Sdt7IXcFEeSbBJzXJgLK5Q" name="price">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDouble"/>
      </ownedParameter>
    </ownedOperation>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_SVZw0Hb-EeSbBJzXJgLK5Q" name="DiscountLimit">
    <ownedAttribute xmi:type="uml:Property" xmi:id="_axsnsHb-EeSbBJzXJgLK5Q" name="id" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_ypBCIHb-EeSbBJzXJgLK5Q" name="startDate" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_zseqQHb-EeSbBJzXJgLK5Q" name="endDate" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_NNj30Hb_EeSbBJzXJgLK5Q" name="allowedUsers" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EEList"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_UhQu8Hb_EeSbBJzXJgLK5Q" name="legalEntity" type="_3oahIHZKEeSrX_LICIhx2Q" association="_UhR9EHb_EeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UhQu8Xb_EeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UhQu8nb_EeSbBJzXJgLK5Q" value="1"/>
    </ownedAttribute>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_UK6EcHb_EeSbBJzXJgLK5Q" memberEnd="_UK6EcXb_EeSbBJzXJgLK5Q _UK5dYHb_EeSbBJzXJgLK5Q">
    <name xsi:nil="true"/>
    <ownedEnd xmi:type="uml:Property" xmi:id="_UK6EcXb_EeSbBJzXJgLK5Q" name="discount" type="_GaHqkHb-EeSbBJzXJgLK5Q" association="_UK6EcHb_EeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UK6Ecnb_EeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UK6Ec3b_EeSbBJzXJgLK5Q" value="1"/>
    </ownedEnd>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_UhR9EHb_EeSbBJzXJgLK5Q" memberEnd="_UhR9EXb_EeSbBJzXJgLK5Q _UhQu8Hb_EeSbBJzXJgLK5Q">
    <name xsi:nil="true"/>
    <ownedEnd xmi:type="uml:Property" xmi:id="_UhR9EXb_EeSbBJzXJgLK5Q" name="discountLimit" type="_SVZw0Hb-EeSbBJzXJgLK5Q" association="_UhR9EHb_EeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UhR9Enb_EeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UhR9E3b_EeSbBJzXJgLK5Q" value="1"/>
    </ownedEnd>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_F7dUcHcFEeSbBJzXJgLK5Q" name="PercentageDiscount">
    <generalization xmi:type="uml:Generalization" xmi:id="_tHUP8HcFEeSbBJzXJgLK5Q" general="_GaHqkHb-EeSbBJzXJgLK5Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_Y5wKcHcFEeSbBJzXJgLK5Q" name="percentage" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EFloat"/>
    </ownedAttribute>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_acOp0HcFEeSbBJzXJgLK5Q" name="SumDiscount">
    <generalization xmi:type="uml:Generalization" xmi:id="_tbhlYHcFEeSbBJzXJgLK5Q" general="_GaHqkHb-EeSbBJzXJgLK5Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_qoRaoHcFEeSbBJzXJgLK5Q" name="discountSum" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDouble"/>
    </ownedAttribute>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_027nAHcFEeSbBJzXJgLK5Q" name="BillingInformation"/>
  <packagedElement xmi:type="uml:Class" xmi:id="_28JnEHcFEeSbBJzXJgLK5Q" name="CreditCardInformation">
    <generalization xmi:type="uml:Generalization" xmi:id="_y0q-4HcGEeSbBJzXJgLK5Q" general="_027nAHcFEeSbBJzXJgLK5Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_Vt-VgHcGEeSbBJzXJgLK5Q" name="cardNumber" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_iig_AHcGEeSbBJzXJgLK5Q" name="cardHolder" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_v9mEEHcGEeSbBJzXJgLK5Q" name="expirationDate" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EDate"/>
    </ownedAttribute>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_7z4yEHcFEeSbBJzXJgLK5Q" name="InvoiceInformation">
    <generalization xmi:type="uml:Generalization" xmi:id="_yZ68kHcGEeSbBJzXJgLK5Q" general="_027nAHcFEeSbBJzXJgLK5Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_DcDdUHcGEeSbBJzXJgLK5Q" name="address" visibility="private">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
    </ownedAttribute>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_5nJYQHcGEeSbBJzXJgLK5Q" memberEnd="_5nJYQXcGEeSbBJzXJgLK5Q _5nIKIHcGEeSbBJzXJgLK5Q">
    <name xsi:nil="true"/>
    <ownedEnd xmi:type="uml:Property" xmi:id="_5nJYQXcGEeSbBJzXJgLK5Q" name="legalEntity" type="_3oahIHZKEeSrX_LICIhx2Q" association="_5nJYQHcGEeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_5nJYQncGEeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_5nJYQ3cGEeSbBJzXJgLK5Q" value="1"/>
    </ownedEnd>
  </packagedElement>
  <packagedElement xmi:type="uml:Interface" xmi:id="_FIjl8HcHEeSbBJzXJgLK5Q" name="BillManager">
    <ownedOperation xmi:type="uml:Operation" xmi:id="_LPLl8HcHEeSbBJzXJgLK5Q" name="getBill" concurrency="concurrent">
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_q-nMIHcHEeSbBJzXJgLK5Q" name="id">
        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>
      </ownedParameter>
      <ownedParameter xmi:type="uml:Parameter" xmi:id="_t2QHoHcHEeSbBJzXJgLK5Q" type="_gemc8Hb6EeSbBJzXJgLK5Q" direction="return"/>
    </ownedOperation>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_SHqgsHcHEeSbBJzXJgLK5Q" memberEnd="_SHqgsXcHEeSbBJzXJgLK5Q _SHp5oHcHEeSbBJzXJgLK5Q">
    <name xsi:nil="true"/>
    <ownedEnd xmi:type="uml:Property" xmi:id="_SHqgsXcHEeSbBJzXJgLK5Q" name="bill" type="_gemc8Hb6EeSbBJzXJgLK5Q" association="_SHqgsHcHEeSbBJzXJgLK5Q">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_SHqgsncHEeSbBJzXJgLK5Q" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_SHqgs3cHEeSbBJzXJgLK5Q" value="1"/>
    </ownedEnd>
  </packagedElement>
  <packagedElement xmi:type="uml:Activity" xmi:id="_S4VGcHb4EeShssy1Vm4D0g" name="Book room type" node="_S4VGjXb4EeShssy1Vm4D0g _S4VGjnb4EeShssy1Vm4D0g _S4VGj3b4EeShssy1Vm4D0g _S4VGkHb4EeShssy1Vm4D0g _S4VGkXb4EeShssy1Vm4D0g _S4VGknb4EeShssy1Vm4D0g _S4VGk3b4EeShssy1Vm4D0g _S4VGlHb4EeShssy1Vm4D0g _S4VGlXb4EeShssy1Vm4D0g _S4VGlnb4EeShssy1Vm4D0g _S4VGl3b4EeShssy1Vm4D0g _S4VGmHb4EeShssy1Vm4D0g _S4VGmXb4EeShssy1Vm4D0g _S4VGmnb4EeShssy1Vm4D0g _S4VGm3b4EeShssy1Vm4D0g _S4VGnHb4EeShssy1Vm4D0g _S4VGnXb4EeShssy1Vm4D0g _S4VGnnb4EeShssy1Vm4D0g _S4VGn3b4EeShssy1Vm4D0g _S4VGoHb4EeShssy1Vm4D0g _S4VGoXb4EeShssy1Vm4D0g _S4VGonb4EeShssy1Vm4D0g">
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGcXb4EeShssy1Vm4D0g" target="_S4VGjnb4EeShssy1Vm4D0g" source="_S4VGjXb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGcnb4EeShssy1Vm4D0g" target="_S4VGj3b4EeShssy1Vm4D0g" source="_S4VGjnb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGc3b4EeShssy1Vm4D0g" target="_S4VGkHb4EeShssy1Vm4D0g" source="_S4VGj3b4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGdHb4EeShssy1Vm4D0g" name="room type not available" target="_S4VGkXb4EeShssy1Vm4D0g" source="_S4VGkHb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGdXb4EeShssy1Vm4D0g" name="room type or date range invalid" target="_S4VGknb4EeShssy1Vm4D0g" source="_S4VGkHb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGdnb4EeShssy1Vm4D0g" name="success" target="_S4VGk3b4EeShssy1Vm4D0g" source="_S4VGkHb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGd3b4EeShssy1Vm4D0g" target="_S4VGlHb4EeShssy1Vm4D0g" source="_S4VGk3b4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGeHb4EeShssy1Vm4D0g" target="_S4VGlXb4EeShssy1Vm4D0g" source="_S4VGlHb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGeXb4EeShssy1Vm4D0g" name="invalid input" target="_S4VGlnb4EeShssy1Vm4D0g" source="_S4VGlXb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGenb4EeShssy1Vm4D0g" name="customer does not exist" target="_S4VGl3b4EeShssy1Vm4D0g" source="_S4VGlXb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGe3b4EeShssy1Vm4D0g" target="_S4VGj3b4EeShssy1Vm4D0g" source="_S4VGknb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGfHb4EeShssy1Vm4D0g" target="_S4VGj3b4EeShssy1Vm4D0g" source="_S4VGkXb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGfXb4EeShssy1Vm4D0g" name="success" target="_S4VGmHb4EeShssy1Vm4D0g" source="_S4VGlXb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGfnb4EeShssy1Vm4D0g" target="_S4VGmXb4EeShssy1Vm4D0g" source="_S4VGmHb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGf3b4EeShssy1Vm4D0g" target="_S4VGmnb4EeShssy1Vm4D0g" source="_S4VGmXb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGgHb4EeShssy1Vm4D0g" target="_S4VGm3b4EeShssy1Vm4D0g" source="_S4VGmnb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGgXb4EeShssy1Vm4D0g" target="_S4VGnHb4EeShssy1Vm4D0g" source="_S4VGm3b4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGgnb4EeShssy1Vm4D0g" target="_S4VGnXb4EeShssy1Vm4D0g" source="_S4VGl3b4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGg3b4EeShssy1Vm4D0g" target="_S4VGnnb4EeShssy1Vm4D0g" source="_S4VGnXb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGhHb4EeShssy1Vm4D0g" target="_S4VGn3b4EeShssy1Vm4D0g" source="_S4VGnnb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGhXb4EeShssy1Vm4D0g" name="info valid" target="_S4VGoHb4EeShssy1Vm4D0g" source="_S4VGn3b4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGhnb4EeShssy1Vm4D0g" target="_S4VGnnb4EeShssy1Vm4D0g" source="_S4VGoXb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGh3b4EeShssy1Vm4D0g" name="info invalid" target="_S4VGoXb4EeShssy1Vm4D0g" source="_S4VGn3b4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGiHb4EeShssy1Vm4D0g" target="_S4VGmXb4EeShssy1Vm4D0g" source="_S4VGoHb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGiXb4EeShssy1Vm4D0g" name="not confirmed" target="_S4VGonb4EeShssy1Vm4D0g" source="_S4VGnHb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGinb4EeShssy1Vm4D0g" name="confirmed" target="_S4VGo3b4EeShssy1Vm4D0g" source="_S4VGnHb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGi3b4EeShssy1Vm4D0g" target="_S4VGlHb4EeShssy1Vm4D0g" source="_S4VGlnb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_S4VGjHb4EeShssy1Vm4D0g" target="_S4VGpHb4EeShssy1Vm4D0g" source="_S4VGo3b4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_K-N6IHb5EeShssy1Vm4D0g" name="room type or date range invalid" target="_S4VGkXb4EeShssy1Vm4D0g" source="_S4VGkHb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_QPpXgHb5EeShssy1Vm4D0g" name="room type not available" target="_S4VGknb4EeShssy1Vm4D0g" source="_S4VGkHb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_bQZIIHb5EeShssy1Vm4D0g" name="success" target="_S4VGk3b4EeShssy1Vm4D0g" source="_S4VGkHb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_oGeCsHb5EeShssy1Vm4D0g" name="invalid input" target="_S4VGlnb4EeShssy1Vm4D0g" source="_S4VGlXb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_RS1dYHb6EeShssy1Vm4D0g" name="info invalid" target="_S4VGoXb4EeShssy1Vm4D0g" source="_S4VGn3b4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_eLw3oHb6EeShssy1Vm4D0g" name="info valid" target="_S4VGoHb4EeShssy1Vm4D0g" source="_S4VGn3b4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_jGPNkHb6EeShssy1Vm4D0g" name="customer does not exist" target="_S4VGl3b4EeShssy1Vm4D0g" source="_S4VGlXb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_kkJ9EHb6EeShssy1Vm4D0g" name="success" target="_S4VGmHb4EeShssy1Vm4D0g" source="_S4VGlXb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_qXkGIHb6EeShssy1Vm4D0g" name="not confirmed" target="_ozpcUHb6EeShssy1Vm4D0g" source="_S4VGnHb4EeShssy1Vm4D0g"/>
    <edge xmi:type="uml:ControlFlow" xmi:id="_rZIQ0Hb6EeShssy1Vm4D0g" name="confirmed" target="_S4VGo3b4EeShssy1Vm4D0g" source="_S4VGnHb4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:InitialNode" xmi:id="_S4VGjXb4EeShssy1Vm4D0g" name="InitialNode1" outgoing="_S4VGcXb4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGjnb4EeShssy1Vm4D0g" name="Ask for date range and room type" incoming="_S4VGcXb4EeShssy1Vm4D0g" outgoing="_S4VGcnb4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGj3b4EeShssy1Vm4D0g" name="Enter date range and room type" incoming="_S4VGcnb4EeShssy1Vm4D0g _S4VGe3b4EeShssy1Vm4D0g _S4VGfHb4EeShssy1Vm4D0g" outgoing="_S4VGc3b4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:DecisionNode" xmi:id="_S4VGkHb4EeShssy1Vm4D0g" name="DecisionNode1" incoming="_S4VGc3b4EeShssy1Vm4D0g" outgoing="_S4VGdHb4EeShssy1Vm4D0g _S4VGdXb4EeShssy1Vm4D0g _S4VGdnb4EeShssy1Vm4D0g _K-N6IHb5EeShssy1Vm4D0g _QPpXgHb5EeShssy1Vm4D0g _bQZIIHb5EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGkXb4EeShssy1Vm4D0g" name="Indicate room type not available" incoming="_S4VGdHb4EeShssy1Vm4D0g _K-N6IHb5EeShssy1Vm4D0g" outgoing="_S4VGfHb4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGknb4EeShssy1Vm4D0g" name="Indicate room type or date range invalid" incoming="_S4VGdXb4EeShssy1Vm4D0g _QPpXgHb5EeShssy1Vm4D0g" outgoing="_S4VGe3b4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGk3b4EeShssy1Vm4D0g" name="Ask for customer name" incoming="_S4VGdnb4EeShssy1Vm4D0g _bQZIIHb5EeShssy1Vm4D0g" outgoing="_S4VGd3b4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGlHb4EeShssy1Vm4D0g" name="Enter customer name" incoming="_S4VGd3b4EeShssy1Vm4D0g _S4VGi3b4EeShssy1Vm4D0g" outgoing="_S4VGeHb4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:DecisionNode" xmi:id="_S4VGlXb4EeShssy1Vm4D0g" name="DecisionNode2" incoming="_S4VGeHb4EeShssy1Vm4D0g" outgoing="_S4VGeXb4EeShssy1Vm4D0g _S4VGenb4EeShssy1Vm4D0g _S4VGfXb4EeShssy1Vm4D0g _oGeCsHb5EeShssy1Vm4D0g _jGPNkHb6EeShssy1Vm4D0g _kkJ9EHb6EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGlnb4EeShssy1Vm4D0g" name="Indicate invalid input" incoming="_S4VGeXb4EeShssy1Vm4D0g _oGeCsHb5EeShssy1Vm4D0g" outgoing="_S4VGi3b4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGl3b4EeShssy1Vm4D0g" name="Indicate customer does not exist" incoming="_S4VGenb4EeShssy1Vm4D0g _jGPNkHb6EeShssy1Vm4D0g" outgoing="_S4VGgnb4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGmHb4EeShssy1Vm4D0g" name="Present list of possible customers" incoming="_S4VGfXb4EeShssy1Vm4D0g _kkJ9EHb6EeShssy1Vm4D0g" outgoing="_S4VGfnb4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGmXb4EeShssy1Vm4D0g" name="Choose customer" incoming="_S4VGfnb4EeShssy1Vm4D0g _S4VGiHb4EeShssy1Vm4D0g" outgoing="_S4VGf3b4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGmnb4EeShssy1Vm4D0g" name="Ask for booking confirmation" incoming="_S4VGf3b4EeShssy1Vm4D0g" outgoing="_S4VGgHb4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGm3b4EeShssy1Vm4D0g" name="Confirm booking" incoming="_S4VGgHb4EeShssy1Vm4D0g" outgoing="_S4VGgXb4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:DecisionNode" xmi:id="_S4VGnHb4EeShssy1Vm4D0g" name="DecisionNode3" incoming="_S4VGgXb4EeShssy1Vm4D0g" outgoing="_S4VGiXb4EeShssy1Vm4D0g _S4VGinb4EeShssy1Vm4D0g _qXkGIHb6EeShssy1Vm4D0g _rZIQ0Hb6EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGnXb4EeShssy1Vm4D0g" name="Ask for additional customer information" incoming="_S4VGgnb4EeShssy1Vm4D0g" outgoing="_S4VGg3b4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGnnb4EeShssy1Vm4D0g" name="Enter additional customer information" incoming="_S4VGg3b4EeShssy1Vm4D0g _S4VGhnb4EeShssy1Vm4D0g" outgoing="_S4VGhHb4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:DecisionNode" xmi:id="_S4VGn3b4EeShssy1Vm4D0g" name="DecisionNode4" incoming="_S4VGhHb4EeShssy1Vm4D0g" outgoing="_S4VGhXb4EeShssy1Vm4D0g _S4VGh3b4EeShssy1Vm4D0g _RS1dYHb6EeShssy1Vm4D0g _eLw3oHb6EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGoHb4EeShssy1Vm4D0g" name="Customer is added" incoming="_S4VGhXb4EeShssy1Vm4D0g _eLw3oHb6EeShssy1Vm4D0g" outgoing="_S4VGiHb4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGoXb4EeShssy1Vm4D0g" name="Indicate customer information invalid" incoming="_S4VGh3b4EeShssy1Vm4D0g _RS1dYHb6EeShssy1Vm4D0g" outgoing="_S4VGhnb4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:ActivityFinalNode" xmi:id="_S4VGonb4EeShssy1Vm4D0g" name="ActivityFinalNode1" incoming="_S4VGiXb4EeShssy1Vm4D0g"/>
  </packagedElement>
  <packagedElement xmi:type="uml:Activity" xmi:id="_XW8m0Hb4EeShssy1Vm4D0g" name="Book Room Type" node="_S4VGpHb4EeShssy1Vm4D0g _S4VGo3b4EeShssy1Vm4D0g _ozpcUHb6EeShssy1Vm4D0g">
    <node xmi:type="uml:ActivityFinalNode" xmi:id="_S4VGpHb4EeShssy1Vm4D0g" name="ActivityFinalNode2" incoming="_S4VGjHb4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:OpaqueAction" xmi:id="_S4VGo3b4EeShssy1Vm4D0g" name="Create booking and register customer on booking" incoming="_S4VGinb4EeShssy1Vm4D0g _rZIQ0Hb6EeShssy1Vm4D0g" outgoing="_S4VGjHb4EeShssy1Vm4D0g"/>
    <node xmi:type="uml:ActivityFinalNode" xmi:id="_ozpcUHb6EeShssy1Vm4D0g" name="ActivityFinalNode3" incoming="_qXkGIHb6EeShssy1Vm4D0g"/>
  </packagedElement>
  <packagedElement xmi:type="uml:Interaction" xmi:id="_Af2rYHlKEeSxBZTxw5XQdg" name="BookSpecificRoomInteraction">
    <ownedAttribute xmi:type="uml:Property" xmi:id="_pUWiMHlWEeSGW6TbfhvuNQ" name="bookingManager" type="_xX22IHZXEeSbBJzXJgLK5Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_T27pcHl5EeSVKdBxhP6Y7A" name="legalEntityManager" type="_tuIWIHb2EeSbBJzXJgLK5Q"/>
    <ownedAttribute xmi:type="uml:Property" xmi:id="_qcJD4HoKEeSVKdBxhP6Y7A" name="legalEntity" type="_3oahIHZKEeSrX_LICIhx2Q"/>
    <lifeline xmi:type="uml:Lifeline" xmi:id="_0sSq0HlWEeSGW6TbfhvuNQ" name="bookingManagerLifeLine" represents="_pUWiMHlWEeSGW6TbfhvuNQ" coveredBy="_Gxe_gHlgEeSVKdBxhP6Y7A _oFn5sHlgEeSVKdBxhP6Y7A _uyeMMHlgEeSVKdBxhP6Y7A _uyezQHlgEeSVKdBxhP6Y7A _A4R7AnlhEeSVKdBxhP6Y7A _a5bdAHmTEeSVKdBxhP6Y7A _a5crIHmTEeSVKdBxhP6Y7A _Vu41UHmUEeSVKdBxhP6Y7A _E61z4HmVEeSVKdBxhP6Y7A _E63CAHmVEeSVKdBxhP6Y7A _wak_YHmVEeSVKdBxhP6Y7A _T2F1wXmWEeSVKdBxhP6Y7A"/>
    <lifeline xmi:type="uml:Lifeline" xmi:id="_esy_wHl5EeSVKdBxhP6Y7A" name="legalEntityManagerLifeline" represents="_T27pcHl5EeSVKdBxhP6Y7A" coveredBy="_uyeMMHlgEeSVKdBxhP6Y7A _uyezQHlgEeSVKdBxhP6Y7A _a5bdAHmTEeSVKdBxhP6Y7A _a5crIHmTEeSVKdBxhP6Y7A _Vu41UHmUEeSVKdBxhP6Y7A _uRu5AXmUEeSVKdBxhP6Y7A _2gecEHmUEeSVKdBxhP6Y7A _E61z4HmVEeSVKdBxhP6Y7A _E63CAHmVEeSVKdBxhP6Y7A _r2z5QnmVEeSVKdBxhP6Y7A _wak_YHmVEeSVKdBxhP6Y7A _9ME78nmVEeSVKdBxhP6Y7A"/>
    <fragment xmi:type="uml:MessageOccurrenceSpecification" xmi:id="_T2F1wXmWEeSVKdBxhP6Y7A" name="createBooking_MessageRecv" covered="_0sSq0HlWEeSGW6TbfhvuNQ" message="_T2EAkHmWEeSVKdBxhP6Y7A"/>
    <fragment xmi:type="uml:MessageOccurrenceSpecification" xmi:id="_Gxe_gHlgEeSVKdBxhP6Y7A" name="isRoomAvailable_MessageRecv" covered="_0sSq0HlWEeSGW6TbfhvuNQ"/>
    <fragment xmi:type="uml:MessageOccurrenceSpecification" xmi:id="_oFn5sHlgEeSVKdBxhP6Y7A" name="isRoomAvailable_MessageRecv0" covered="_0sSq0HlWEeSGW6TbfhvuNQ" message="_oFldcHlgEeSVKdBxhP6Y7A"/>
    <fragment xmi:type="uml:CombinedFragment" xmi:id="_uyeMMHlgEeSVKdBxhP6Y7A" name="CombinedFragment" covered="_0sSq0HlWEeSGW6TbfhvuNQ _esy_wHl5EeSVKdBxhP6Y7A" interactionOperator="alt">
      <cfragmentGate xmi:type="uml:Gate" xmi:id="_A4PewHlhEeSVKdBxhP6Y7A" name="in_getAvailableRooms_Message" message="_A4NpkHlhEeSVKdBxhP6Y7A">
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_A4Qs4XlhEeSVKdBxhP6Y7A" source="CombinedFragment.InnerGate">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_A4RT8HlhEeSVKdBxhP6Y7A" key="insideCF" value="_A4QF0HlhEeSVKdBxhP6Y7A"/>
        </eAnnotations>
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_A4RT8XlhEeSVKdBxhP6Y7A" source="Gate.name.volatile">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_A4RT8nlhEeSVKdBxhP6Y7A" key="Gate.name.volatile" value="true"/>
        </eAnnotations>
      </cfragmentGate>
      <cfragmentGate xmi:type="uml:Gate" xmi:id="_A4QF0HlhEeSVKdBxhP6Y7A" name="in_getAvailableRooms_Message">
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_A4QF0XlhEeSVKdBxhP6Y7A" source="CombinedFragment.InnerGate">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_A4Qs4HlhEeSVKdBxhP6Y7A" key="outsideCF" value="_A4PewHlhEeSVKdBxhP6Y7A"/>
        </eAnnotations>
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_A4R7AHlhEeSVKdBxhP6Y7A" source="Gate.name.volatile">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_A4R7AXlhEeSVKdBxhP6Y7A" key="Gate.name.volatile" value="true"/>
        </eAnnotations>
      </cfragmentGate>
      <operand xmi:type="uml:InteractionOperand" xmi:id="_uyezQHlgEeSVKdBxhP6Y7A" name="InteractionOperand" covered="_0sSq0HlWEeSGW6TbfhvuNQ _esy_wHl5EeSVKdBxhP6Y7A">
        <fragment xmi:type="uml:MessageOccurrenceSpecification" xmi:id="_A4R7AnlhEeSVKdBxhP6Y7A" name="getAvailableRooms_MessageRecv" covered="_0sSq0HlWEeSGW6TbfhvuNQ" message="_A4NpkHlhEeSVKdBxhP6Y7A"/>
        <guard xmi:type="uml:InteractionConstraint" xmi:id="_uyfaUHlgEeSVKdBxhP6Y7A">
          <specification xmi:type="uml:LiteralString" xmi:id="_uyfaUXlgEeSVKdBxhP6Y7A" value="if isRoomAvailable returns false"/>
          <maxint xmi:type="uml:LiteralInteger" xmi:id="_uyfaU3lgEeSVKdBxhP6Y7A" value="1"/>
          <minint xmi:type="uml:LiteralInteger" xmi:id="_uyfaUnlgEeSVKdBxhP6Y7A"/>
        </guard>
      </operand>
    </fragment>
    <fragment xmi:type="uml:CombinedFragment" xmi:id="_a5bdAHmTEeSVKdBxhP6Y7A" name="CombinedFragment0" covered="_esy_wHl5EeSVKdBxhP6Y7A _0sSq0HlWEeSGW6TbfhvuNQ" interactionOperator="alt">
      <cfragmentGate xmi:type="uml:Gate" xmi:id="_uRr1sHmUEeSVKdBxhP6Y7A" name="in_findOrganization_Message" message="_uRqAgHmUEeSVKdBxhP6Y7A">
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uRtq4HmUEeSVKdBxhP6Y7A" source="CombinedFragment.InnerGate">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uRtq4XmUEeSVKdBxhP6Y7A" key="insideCF" value="_uRscwHmUEeSVKdBxhP6Y7A"/>
        </eAnnotations>
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uRtq4nmUEeSVKdBxhP6Y7A" source="Gate.name.volatile">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uRuR8HmUEeSVKdBxhP6Y7A" key="Gate.name.volatile" value="true"/>
        </eAnnotations>
      </cfragmentGate>
      <cfragmentGate xmi:type="uml:Gate" xmi:id="_uRscwHmUEeSVKdBxhP6Y7A" name="in_findOrganization_Message">
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uRtD0HmUEeSVKdBxhP6Y7A" source="CombinedFragment.InnerGate">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uRtD0XmUEeSVKdBxhP6Y7A" key="outsideCF" value="_uRr1sHmUEeSVKdBxhP6Y7A"/>
        </eAnnotations>
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uRuR8XmUEeSVKdBxhP6Y7A" source="Gate.name.volatile">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uRu5AHmUEeSVKdBxhP6Y7A" key="Gate.name.volatile" value="true"/>
        </eAnnotations>
      </cfragmentGate>
      <cfragmentGate xmi:type="uml:Gate" xmi:id="_2gbYwHmUEeSVKdBxhP6Y7A" name="in_findPerson_Message" message="_2gZjkHmUEeSVKdBxhP6Y7A">
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2gcm4nmUEeSVKdBxhP6Y7A" source="CombinedFragment.InnerGate">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_2gdN8HmUEeSVKdBxhP6Y7A" key="insideCF" value="_2gb_0HmUEeSVKdBxhP6Y7A"/>
        </eAnnotations>
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2gdN8XmUEeSVKdBxhP6Y7A" source="Gate.name.volatile">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_2gd1AHmUEeSVKdBxhP6Y7A" key="Gate.name.volatile" value="true"/>
        </eAnnotations>
      </cfragmentGate>
      <cfragmentGate xmi:type="uml:Gate" xmi:id="_2gb_0HmUEeSVKdBxhP6Y7A" name="in_findPerson_Message">
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2gcm4HmUEeSVKdBxhP6Y7A" source="CombinedFragment.InnerGate">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_2gcm4XmUEeSVKdBxhP6Y7A" key="outsideCF" value="_2gbYwHmUEeSVKdBxhP6Y7A"/>
        </eAnnotations>
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2gd1AXmUEeSVKdBxhP6Y7A" source="Gate.name.volatile">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_2gd1AnmUEeSVKdBxhP6Y7A" key="Gate.name.volatile" value="true"/>
        </eAnnotations>
      </cfragmentGate>
      <operand xmi:type="uml:InteractionOperand" xmi:id="_a5crIHmTEeSVKdBxhP6Y7A" name="InteractionOperand" covered="_esy_wHl5EeSVKdBxhP6Y7A _0sSq0HlWEeSGW6TbfhvuNQ">
        <fragment xmi:type="uml:MessageOccurrenceSpecification" xmi:id="_uRu5AXmUEeSVKdBxhP6Y7A" name="findOrganization_MessageRecv" covered="_esy_wHl5EeSVKdBxhP6Y7A" message="_uRqAgHmUEeSVKdBxhP6Y7A"/>
        <guard xmi:type="uml:InteractionConstraint" xmi:id="_a5dSMHmTEeSVKdBxhP6Y7A">
          <specification xmi:type="uml:LiteralString" xmi:id="_a5d5QHmTEeSVKdBxhP6Y7A" value="if is a organization booking"/>
          <maxint xmi:type="uml:LiteralInteger" xmi:id="_a5d5QnmTEeSVKdBxhP6Y7A" value="1"/>
          <minint xmi:type="uml:LiteralInteger" xmi:id="_a5d5QXmTEeSVKdBxhP6Y7A"/>
        </guard>
      </operand>
      <operand xmi:type="uml:InteractionOperand" xmi:id="_Vu41UHmUEeSVKdBxhP6Y7A" name="InteractionOperand0" covered="_esy_wHl5EeSVKdBxhP6Y7A _0sSq0HlWEeSGW6TbfhvuNQ">
        <fragment xmi:type="uml:MessageOccurrenceSpecification" xmi:id="_2gecEHmUEeSVKdBxhP6Y7A" name="findPerson_MessageRecv" covered="_esy_wHl5EeSVKdBxhP6Y7A" message="_2gZjkHmUEeSVKdBxhP6Y7A"/>
        <guard xmi:type="uml:InteractionConstraint" xmi:id="_Vu5cYHmUEeSVKdBxhP6Y7A">
          <specification xmi:type="uml:LiteralString" xmi:id="_Vu6DcHmUEeSVKdBxhP6Y7A" value="if is a person booking"/>
          <maxint xmi:type="uml:LiteralInteger" xmi:id="_Vu6DcnmUEeSVKdBxhP6Y7A" value="1"/>
          <minint xmi:type="uml:LiteralInteger" xmi:id="_Vu6DcXmUEeSVKdBxhP6Y7A"/>
        </guard>
      </operand>
    </fragment>
    <fragment xmi:type="uml:CombinedFragment" xmi:id="_E61z4HmVEeSVKdBxhP6Y7A" name="CombinedFragment1" covered="_0sSq0HlWEeSGW6TbfhvuNQ _esy_wHl5EeSVKdBxhP6Y7A" interactionOperator="alt">
      <cfragmentGate xmi:type="uml:Gate" xmi:id="_r2w18HmVEeSVKdBxhP6Y7A" name="in_createOrganization_Message" message="_r2vAwHmVEeSVKdBxhP6Y7A">
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_r2yrIHmVEeSVKdBxhP6Y7A" source="CombinedFragment.InnerGate">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_r2zSMHmVEeSVKdBxhP6Y7A" key="insideCF" value="_r2xdAHmVEeSVKdBxhP6Y7A"/>
        </eAnnotations>
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_r2zSMXmVEeSVKdBxhP6Y7A" source="Gate.name.volatile">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_r2zSMnmVEeSVKdBxhP6Y7A" key="Gate.name.volatile" value="true"/>
        </eAnnotations>
      </cfragmentGate>
      <cfragmentGate xmi:type="uml:Gate" xmi:id="_r2xdAHmVEeSVKdBxhP6Y7A" name="in_createOrganization_Message">
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_r2yEEHmVEeSVKdBxhP6Y7A" source="CombinedFragment.InnerGate">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_r2yEEXmVEeSVKdBxhP6Y7A" key="outsideCF" value="_r2w18HmVEeSVKdBxhP6Y7A"/>
        </eAnnotations>
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_r2z5QHmVEeSVKdBxhP6Y7A" source="Gate.name.volatile">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_r2z5QXmVEeSVKdBxhP6Y7A" key="Gate.name.volatile" value="true"/>
        </eAnnotations>
      </cfragmentGate>
      <cfragmentGate xmi:type="uml:Gate" xmi:id="_9MB4oHmVEeSVKdBxhP6Y7A" name="in_createPerson_Message" message="_9L_cYHmVEeSVKdBxhP6Y7A">
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9MDt0XmVEeSVKdBxhP6Y7A" source="CombinedFragment.InnerGate">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_9MEU4HmVEeSVKdBxhP6Y7A" key="insideCF" value="_9MCfsHmVEeSVKdBxhP6Y7A"/>
        </eAnnotations>
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9MEU4XmVEeSVKdBxhP6Y7A" source="Gate.name.volatile">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_9MEU4nmVEeSVKdBxhP6Y7A" key="Gate.name.volatile" value="true"/>
        </eAnnotations>
      </cfragmentGate>
      <cfragmentGate xmi:type="uml:Gate" xmi:id="_9MCfsHmVEeSVKdBxhP6Y7A" name="in_createPerson_Message">
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9MDGwHmVEeSVKdBxhP6Y7A" source="CombinedFragment.InnerGate">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_9MDt0HmVEeSVKdBxhP6Y7A" key="outsideCF" value="_9MB4oHmVEeSVKdBxhP6Y7A"/>
        </eAnnotations>
        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9ME78HmVEeSVKdBxhP6Y7A" source="Gate.name.volatile">
          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_9ME78XmVEeSVKdBxhP6Y7A" key="Gate.name.volatile" value="true"/>
        </eAnnotations>
      </cfragmentGate>
      <operand xmi:type="uml:InteractionOperand" xmi:id="_E63CAHmVEeSVKdBxhP6Y7A" name="InteractionOperand" covered="_0sSq0HlWEeSGW6TbfhvuNQ _esy_wHl5EeSVKdBxhP6Y7A">
        <fragment xmi:type="uml:MessageOccurrenceSpecification" xmi:id="_r2z5QnmVEeSVKdBxhP6Y7A" name="createOrganization_MessageRecv" covered="_esy_wHl5EeSVKdBxhP6Y7A" message="_r2vAwHmVEeSVKdBxhP6Y7A"/>
        <guard xmi:type="uml:InteractionConstraint" xmi:id="_E63pEHmVEeSVKdBxhP6Y7A">
          <specification xmi:type="uml:LiteralString" xmi:id="_vy5fcHoFEeSVKdBxhP6Y7A" value="if customer doesn't exist and is an organization"/>
          <maxint xmi:type="uml:LiteralInteger" xmi:id="_E643MHmVEeSVKdBxhP6Y7A" value="1"/>
          <minint xmi:type="uml:LiteralInteger" xmi:id="_E64QIXmVEeSVKdBxhP6Y7A"/>
        </guard>
      </operand>
      <operand xmi:type="uml:InteractionOperand" xmi:id="_wak_YHmVEeSVKdBxhP6Y7A" name="InteractionOperand0" covered="_0sSq0HlWEeSGW6TbfhvuNQ _esy_wHl5EeSVKdBxhP6Y7A">
        <fragment xmi:type="uml:MessageOccurrenceSpecification" xmi:id="_9ME78nmVEeSVKdBxhP6Y7A" name="createPerson_MessageRecv" covered="_esy_wHl5EeSVKdBxhP6Y7A" message="_9L_cYHmVEeSVKdBxhP6Y7A"/>
        <guard xmi:type="uml:InteractionConstraint" xmi:id="_wamNgHmVEeSVKdBxhP6Y7A">
          <specification xmi:type="uml:LiteralString" xmi:id="_wamNgXmVEeSVKdBxhP6Y7A" value="if customer doesn't exist and is a person"/>
          <maxint xmi:type="uml:LiteralInteger" xmi:id="_wam0kHmVEeSVKdBxhP6Y7A" value="1"/>
          <minint xmi:type="uml:LiteralInteger" xmi:id="_wamNgnmVEeSVKdBxhP6Y7A"/>
        </guard>
      </operand>
    </fragment>
    <formalGate xmi:type="uml:Gate" xmi:id="_oFmrkHlgEeSVKdBxhP6Y7A" name="gate0" message="_oFldcHlgEeSVKdBxhP6Y7A"/>
    <formalGate xmi:type="uml:Gate" xmi:id="_T2F1wHmWEeSVKdBxhP6Y7A" name="gate11" message="_T2EAkHmWEeSVKdBxhP6Y7A"/>
    <message xmi:type="uml:Message" xmi:id="_oFldcHlgEeSVKdBxhP6Y7A" name="isRoomAvailable_Message" messageSort="asynchCall" receiveEvent="_oFn5sHlgEeSVKdBxhP6Y7A" sendEvent="_oFmrkHlgEeSVKdBxhP6Y7A" signature="_Zk7KMHcMEeSxBZTxw5XQdg"/>
    <message xmi:type="uml:Message" xmi:id="_A4NpkHlhEeSVKdBxhP6Y7A" name="getAvailableRooms_Message" messageSort="asynchCall" receiveEvent="_A4R7AnlhEeSVKdBxhP6Y7A" sendEvent="_A4PewHlhEeSVKdBxhP6Y7A" signature="_-tRxIHbxEeSbBJzXJgLK5Q"/>
    <message xmi:type="uml:Message" xmi:id="_uRqAgHmUEeSVKdBxhP6Y7A" name="findOrganization_Message" messageSort="asynchCall" receiveEvent="_uRu5AXmUEeSVKdBxhP6Y7A" sendEvent="_uRr1sHmUEeSVKdBxhP6Y7A" signature="_DBmTwHb3EeSbBJzXJgLK5Q"/>
    <message xmi:type="uml:Message" xmi:id="_2gZjkHmUEeSVKdBxhP6Y7A" name="findPerson_Message" messageSort="asynchCall" receiveEvent="_2gecEHmUEeSVKdBxhP6Y7A" sendEvent="_2gbYwHmUEeSVKdBxhP6Y7A" signature="_xwG90Hb2EeSbBJzXJgLK5Q"/>
    <message xmi:type="uml:Message" xmi:id="_r2vAwHmVEeSVKdBxhP6Y7A" name="createOrganization_Message" messageSort="asynchCall" receiveEvent="_r2z5QnmVEeSVKdBxhP6Y7A" sendEvent="_r2w18HmVEeSVKdBxhP6Y7A" signature="_tVCrQHb3EeSbBJzXJgLK5Q"/>
    <message xmi:type="uml:Message" xmi:id="_9L_cYHmVEeSVKdBxhP6Y7A" name="createPerson_Message" messageSort="asynchCall" receiveEvent="_9ME78nmVEeSVKdBxhP6Y7A" sendEvent="_9MB4oHmVEeSVKdBxhP6Y7A" signature="_HCmrEHb3EeSbBJzXJgLK5Q"/>
    <message xmi:type="uml:Message" xmi:id="_T2EAkHmWEeSVKdBxhP6Y7A" name="createBooking_Message" messageSort="asynchCall" receiveEvent="_T2F1wXmWEeSVKdBxhP6Y7A" sendEvent="_T2F1wHmWEeSVKdBxhP6Y7A" signature="_JBf2IHb2EeSbBJzXJgLK5Q"/>
  </packagedElement>
  <packagedElement xmi:type="uml:Association" xmi:id="_UR_YIHlVEeSGW6TbfhvuNQ" memberEnd="_UR_YIXlVEeSGW6TbfhvuNQ _UR9i8HlVEeSGW6TbfhvuNQ">
    <name xsi:nil="true"/>
    <ownedEnd xmi:type="uml:Property" xmi:id="_UR_YIXlVEeSGW6TbfhvuNQ" name="room" type="_6SLu0HZBEeSrX_LICIhx2Q" association="_UR_YIHlVEeSGW6TbfhvuNQ">
      <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UR_YInlVEeSGW6TbfhvuNQ" value="1"/>
      <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UR_YI3lVEeSGW6TbfhvuNQ" value="1"/>
    </ownedEnd>
  </packagedElement>
</uml:Model>
