<!--
    Copyright (c) 2013-2016 LAAS-CNRS (www.laas.fr)
    7 Colonel Roche 31077 Toulouse - France
   
    All rights reserved. This program and the accompanying materials
    are made available under the terms of the Eclipse Public License v1.0
    which accompanies this distribution, and is available at
    http://www.eclipse.org/legal/epl-v10.html
   
    Initial Contributors:
        Thierry Monteil : Project manager, technical co-manager
        Mahdi Ben Alaya : Technical co-manager
        Samir Medjiah : Technical co-manager
        Khalil Drira : Strategy expert
        Guillaume Garzone : Developer
        François Aïssaoui : Developer
   
    New contributors :
 -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <artifactId>org.eclipse.om2m.ipe.sample</artifactId>
  <packaging>eclipse-plugin</packaging>
  <name>org.eclipse.om2m :: ipe sample</name>
  <description>org.eclipse.om2m :: ipe sample</description>
  <parent>
    <groupId>org.eclipse.om2m</groupId>
    <artifactId>org.eclipse.om2m</artifactId>
    <version>1.0.0-SNAPSHOT</version>
  </parent>
</project>