<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmi:id="_eYYVYN-gEeWLCIe2TsTMPA" name="model">
  <eAnnotations xmi:id="_eYYVYN-gEeWLCIe2TsTMPA0" source="genmymodel">
    <details xmi:id="_eYYVYN-gEeWLCIe2TsTMPA00" key="uuid" value="_eYYVYN-gEeWLCIe2TsTMPA"/>
  </eAnnotations>
  <eClassifiers xsi:type="ecore:EClass" xmi:id="_rnnqoMHPEDOH7J1A0rs7Jw" name="ClientHandler">
    <eAnnotations xmi:id="_rnnqoMHPEDOH7J1A0rs7Jw0" source="genmymodel">
      <details xmi:id="_rnnqoMHPEDOH7J1A0rs7Jw00" key="uuid" value="_rnnqoMHPEDOH7J1A0rs7Jw"/>
    </eAnnotations>
    <eOperations xmi:id="_4oppQMHVEDOH7J1A0rs7Jw" name="ClientHandler">
      <eAnnotations xmi:id="_4oppQMHVEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_4oppQMHVEDOH7J1A0rs7Jw00" key="uuid" value="_4oppQMHVEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eOperations>
    <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="_xMnqoMHXEDOH7J1A0rs7Jw" name="client" eType="_0nP4EMHPEDOH7J1A0rs7Jw">
      <eAnnotations xmi:id="_xMnqoMHXEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_xMnqoMHXEDOH7J1A0rs7Jw00" key="uuid" value="_xMnqoMHXEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" xmi:id="_0nP4EMHPEDOH7J1A0rs7Jw" name="Client">
    <eAnnotations xmi:id="_0nP4EMHPEDOH7J1A0rs7Jw0" source="genmymodel">
      <details xmi:id="_0nP4EMHPEDOH7J1A0rs7Jw00" key="uuid" value="_0nP4EMHPEDOH7J1A0rs7Jw"/>
    </eAnnotations>
    <eOperations xmi:id="_LA0I0MHVEDOH7J1A0rs7Jw" name="run">
      <eAnnotations xmi:id="_LA0I0MHVEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_LA0I0MHVEDOH7J1A0rs7Jw00" key="uuid" value="_LA0I0MHVEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eOperations>
    <eOperations xmi:id="_NZFAsMHVEDOH7J1A0rs7Jw" name="disconnect">
      <eAnnotations xmi:id="_NZFAsMHVEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_NZFAsMHVEDOH7J1A0rs7Jw00" key="uuid" value="_NZFAsMHVEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eOperations>
    <eOperations xmi:id="_O4ng0MHVEDOH7J1A0rs7Jw" name="recieve_message">
      <eAnnotations xmi:id="_O4ng0MHVEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_O4ng0MHVEDOH7J1A0rs7Jw00" key="uuid" value="_O4ng0MHVEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eOperations>
    <eOperations xmi:id="_XM_x0MHVEDOH7J1A0rs7Jw" name="send_payload">
      <eAnnotations xmi:id="_XM_x0MHVEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_XM_x0MHVEDOH7J1A0rs7Jw00" key="uuid" value="_XM_x0MHVEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eOperations>
    <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="_uTC1cMHXEDOH7J1A0rs7Jw" name="clienthandler" eType="_rnnqoMHPEDOH7J1A0rs7Jw">
      <eAnnotations xmi:id="_uTC1cMHXEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_uTC1cMHXEDOH7J1A0rs7Jw00" key="uuid" value="_uTC1cMHXEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="_zqtdsMHXEDOH7J1A0rs7Jw" name="messageparser" eType="_1SiQwMHPEDOH7J1A0rs7Jw">
      <eAnnotations xmi:id="_zqtdsMHXEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_zqtdsMHXEDOH7J1A0rs7Jw00" key="uuid" value="_zqtdsMHXEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="_VsgvIMHYEDOH7J1A0rs7Jw" name="threadedtcpserver" eType="_yhqc4MHVEDOH7J1A0rs7Jw">
      <eAnnotations xmi:id="_VsgvIMHYEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_VsgvIMHYEDOH7J1A0rs7Jw00" key="uuid" value="_VsgvIMHYEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" xmi:id="_07OkAMHPEDOH7J1A0rs7Jw" name="MessageReciever">
    <eAnnotations xmi:id="_07OkAMHPEDOH7J1A0rs7Jw0" source="genmymodel">
      <details xmi:id="_07OkAMHPEDOH7J1A0rs7Jw00" key="uuid" value="_07OkAMHPEDOH7J1A0rs7Jw"/>
    </eAnnotations>
    <eOperations xmi:id="_hthKQMHVEDOH7J1A0rs7Jw" name="run">
      <eAnnotations xmi:id="_hthKQMHVEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_hthKQMHVEDOH7J1A0rs7Jw00" key="uuid" value="_hthKQMHVEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eOperations>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" xmi:id="_1SiQwMHPEDOH7J1A0rs7Jw" name="MessageParser">
    <eAnnotations xmi:id="_1SiQwMHPEDOH7J1A0rs7Jw0" source="genmymodel">
      <details xmi:id="_1SiQwMHPEDOH7J1A0rs7Jw00" key="uuid" value="_1SiQwMHPEDOH7J1A0rs7Jw"/>
    </eAnnotations>
    <eOperations xmi:id="_jqP8sMHVEDOH7J1A0rs7Jw" name="parse">
      <eAnnotations xmi:id="_jqP8sMHVEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_jqP8sMHVEDOH7J1A0rs7Jw00" key="uuid" value="_jqP8sMHVEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eOperations>
    <eOperations xmi:id="_kdG9AMHVEDOH7J1A0rs7Jw" name="parse_error">
      <eAnnotations xmi:id="_kdG9AMHVEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_kdG9AMHVEDOH7J1A0rs7Jw00" key="uuid" value="_kdG9AMHVEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eOperations>
    <eOperations xmi:id="_lgfsoMHVEDOH7J1A0rs7Jw" name="parse_info">
      <eAnnotations xmi:id="_lgfsoMHVEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_lgfsoMHVEDOH7J1A0rs7Jw00" key="uuid" value="_lgfsoMHVEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eOperations>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" xmi:id="_yhqc4MHVEDOH7J1A0rs7Jw" name="ThreadedTCPServer">
    <eAnnotations xmi:id="_yhqc4MHVEDOH7J1A0rs7Jw0" source="genmymodel">
      <details xmi:id="_yhqc4MHVEDOH7J1A0rs7Jw00" key="uuid" value="_yhqc4MHVEDOH7J1A0rs7Jw"/>
    </eAnnotations>
    <eOperations xmi:id="_6-8LMMHVEDOH7J1A0rs7Jw" name="eOperation">
      <eAnnotations xmi:id="_6-8LMMHVEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_6-8LMMHVEDOH7J1A0rs7Jw00" key="uuid" value="_6-8LMMHVEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eOperations>
    <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="_YvJZsMHYEDOH7J1A0rs7Jw" name="clienthandler" eType="_rnnqoMHPEDOH7J1A0rs7Jw">
      <eAnnotations xmi:id="_YvJZsMHYEDOH7J1A0rs7Jw0" source="genmymodel">
        <details xmi:id="_YvJZsMHYEDOH7J1A0rs7Jw00" key="uuid" value="_YvJZsMHYEDOH7J1A0rs7Jw"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
</ecore:EPackage>

{"directed":true,"nodes":[{"nsPrefix":null,"nsURI":null,"name":"model","id":0,"eClass":"EPackage"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"ClientHandler","instanceClass":null,"abstract":false,"id":1,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Client","instanceClass":null,"abstract":false,"id":2,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"MessageReciever","instanceClass":null,"abstract":false,"id":3,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"MessageParser","instanceClass":null,"abstract":false,"id":4,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"ThreadedTCPServer","instanceClass":null,"abstract":false,"id":5,"interface":false,"eClass":"EClass"},{"ordered":true,"upperBound":1,"unique":true,"name":"ClientHandler","lowerBound":0,"id":6,"many":false,"required":false,"eClass":"EOperation"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"client","changeable":true,"resolveProxies":true,"lowerBound":0,"id":7,"derived":false},{"id":8,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"unique":true,"name":"run","lowerBound":0,"id":9,"many":false,"required":false,"eClass":"EOperation"},{"ordered":true,"upperBound":1,"unique":true,"name":"disconnect","lowerBound":0,"id":10,"many":false,"required":false,"eClass":"EOperation"},{"ordered":true,"upperBound":1,"unique":true,"name":"recieve_message","lowerBound":0,"id":11,"many":false,"required":false,"eClass":"EOperation"},{"ordered":true,"upperBound":1,"unique":true,"name":"send_payload","lowerBound":0,"id":12,"many":false,"required":false,"eClass":"EOperation"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"clienthandler","changeable":true,"resolveProxies":true,"lowerBound":0,"id":13,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"messageparser","changeable":true,"resolveProxies":true,"lowerBound":0,"id":14,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"threadedtcpserver","changeable":true,"resolveProxies":true,"lowerBound":0,"id":15,"derived":false},{"id":16,"eClass":"EGenericType"},{"id":17,"eClass":"EGenericType"},{"id":18,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"unique":true,"name":"run","lowerBound":0,"id":19,"many":false,"required":false,"eClass":"EOperation"},{"ordered":true,"upperBound":1,"unique":true,"name":"parse","lowerBound":0,"id":20,"many":false,"required":false,"eClass":"EOperation"},{"ordered":true,"upperBound":1,"unique":true,"name":"parse_error","lowerBound":0,"id":21,"many":false,"required":false,"eClass":"EOperation"},{"ordered":true,"upperBound":1,"unique":true,"name":"parse_info","lowerBound":0,"id":22,"many":false,"required":false,"eClass":"EOperation"},{"ordered":true,"upperBound":1,"unique":true,"name":"eOperation","lowerBound":0,"id":23,"many":false,"required":false,"eClass":"EOperation"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"clienthandler","changeable":true,"resolveProxies":true,"lowerBound":0,"id":24,"derived":false},{"id":25,"eClass":"EGenericType"}],"links":[{"source":0,"target":1},{"source":0,"target":2},{"source":0,"target":3},{"source":0,"target":4},{"source":0,"target":5},{"source":1,"target":0},{"source":1,"target":6},{"source":1,"target":7},{"source":6,"target":1},{"source":7,"target":2},{"source":7,"target":8},{"source":7,"target":1},{"source":8,"target":2},{"source":2,"target":0},{"source":2,"target":9},{"source":2,"target":10},{"source":2,"target":11},{"source":2,"target":12},{"source":2,"target":13},{"source":2,"target":14},{"source":2,"target":15},{"source":9,"target":2},{"source":10,"target":2},{"source":11,"target":2},{"source":12,"target":2},{"source":13,"target":1},{"source":13,"target":16},{"source":13,"target":2},{"source":16,"target":1},{"source":14,"target":4},{"source":14,"target":17},{"source":14,"target":2},{"source":17,"target":4},{"source":15,"target":5},{"source":15,"target":18},{"source":15,"target":2},{"source":18,"target":5},{"source":3,"target":0},{"source":3,"target":19},{"source":19,"target":3},{"source":4,"target":0},{"source":4,"target":20},{"source":4,"target":21},{"source":4,"target":22},{"source":20,"target":4},{"source":21,"target":4},{"source":22,"target":4},{"source":5,"target":0},{"source":5,"target":23},{"source":5,"target":24},{"source":23,"target":5},{"source":24,"target":1},{"source":24,"target":25},{"source":24,"target":5},{"source":25,"target":1}],"multigraph":true}
model
ClientHandler
ClientHandler
client
Client
run
disconnect
recieve_message
send_payload
clienthandler
messageparser
threadedtcpserver
MessageReciever
run
MessageParser
parse
parse_error
parse_info
ThreadedTCPServer
eOperation
clienthandler