From e14d69bd98a09fc886080dfb3e218ce6617d88fd Mon Sep 17 00:00:00 2001
From: Nilay Vaish <nilay@cs.wisc.edu>
Date: Sat, 11 Oct 2014 16:16:00 -0500
Subject: [PATCH] ext: dsent: adds a Python interface, drops C++ one This patch
 extensively modifies DSENT so that it can be accessed using Python. To access
 the Python interface, DSENT needs to compiled as a shared library. For this
 purpose a CMakeLists.txt file has been added.  Some of the code that is not
 required is being removed.

---
 ext/dsent/CMakeLists.txt                      |  46 ++
 ext/dsent/DSENT.cc                            | 478 ++++++++----------
 ext/dsent/DSENT.h                             |  71 +--
 ext/dsent/Makefile                            |  55 --
 ext/dsent/configs/electrical-link.cfg         |   2 +-
 ext/dsent/configs/router.cfg                  |   2 +-
 ext/dsent/interface.cc                        | 213 ++++++++
 ext/dsent/libutil/Assert.h                    |  21 +
 ext/dsent/libutil/Calculator.cc               |  78 ++-
 ext/dsent/libutil/Calculator.h                |  51 +-
 ext/dsent/libutil/Config.cc                   |  94 ++--
 ext/dsent/libutil/Config.h                    |  50 +-
 ext/dsent/libutil/Exception.cc                |  21 +
 ext/dsent/libutil/Exception.h                 |  21 +
 ext/dsent/libutil/LibUtil.h                   |  21 +
 ext/dsent/libutil/Log.cc                      |  21 +
 ext/dsent/libutil/Log.h                       |  21 +
 ext/dsent/libutil/Makefile                    |  43 --
 ext/dsent/libutil/Map.h                       |  21 +
 ext/dsent/libutil/MathUtil.cc                 |  21 +
 ext/dsent/libutil/MathUtil.h                  |  21 +
 ext/dsent/libutil/OptionParser.cc             | 177 -------
 ext/dsent/libutil/OptionParser.h              |  57 ---
 ext/dsent/libutil/String.cc                   |  21 +
 ext/dsent/libutil/String.h                    |  21 +
 ext/dsent/main.cc                             |  10 -
 ext/dsent/model/ElectricalModel.cc            |  21 +
 ext/dsent/model/ElectricalModel.h             |  21 +
 ext/dsent/model/EventInfo.cc                  |  21 +
 ext/dsent/model/EventInfo.h                   |  21 +
 ext/dsent/model/Model.cc                      |  21 +
 ext/dsent/model/Model.h                       |  21 +
 ext/dsent/model/ModelGen.cc                   |  21 +
 ext/dsent/model/ModelGen.h                    |  21 +
 ext/dsent/model/OpticalModel.cc               |  21 +
 ext/dsent/model/OpticalModel.h                |  21 +
 ext/dsent/model/PortInfo.cc                   |  21 +
 ext/dsent/model/PortInfo.h                    |  21 +
 ext/dsent/model/TransitionInfo.cc             |  21 +
 ext/dsent/model/TransitionInfo.h              |  21 +
 ext/dsent/model/electrical/BarrelShifter.cc   |  21 +
 ext/dsent/model/electrical/BarrelShifter.h    |  21 +
 ext/dsent/model/electrical/BroadcastHTree.cc  |  21 +
 ext/dsent/model/electrical/BroadcastHTree.h   |  21 +
 ext/dsent/model/electrical/DFFRAM.cc          |  21 +
 ext/dsent/model/electrical/DFFRAM.h           |  21 +
 ext/dsent/model/electrical/Decoder.cc         |  21 +
 ext/dsent/model/electrical/Decoder.h          |  21 +
 .../model/electrical/DemuxTreeDeserializer.cc |  21 +
 .../model/electrical/DemuxTreeDeserializer.h  |  21 +
 ext/dsent/model/electrical/MatrixArbiter.cc   |  21 +
 ext/dsent/model/electrical/MatrixArbiter.h    |  21 +
 ext/dsent/model/electrical/Multiplexer.cc     |  21 +
 ext/dsent/model/electrical/Multiplexer.h      |  21 +
 .../model/electrical/MultiplexerCrossbar.cc   |  21 +
 .../model/electrical/MultiplexerCrossbar.h    |  21 +
 .../model/electrical/MuxTreeSerializer.cc     |  21 +
 .../model/electrical/MuxTreeSerializer.h      |  21 +
 ext/dsent/model/electrical/OR.cc              |  21 +
 ext/dsent/model/electrical/OR.h               |  21 +
 ext/dsent/model/electrical/RepeatedLink.cc    |  21 +
 ext/dsent/model/electrical/RepeatedLink.h     |  21 +
 ext/dsent/model/electrical/RippleAdder.cc     |  21 +
 ext/dsent/model/electrical/RippleAdder.h      |  21 +
 .../model/electrical/SeparableAllocator.cc    |  21 +
 .../model/electrical/SeparableAllocator.h     |  21 +
 ext/dsent/model/electrical/TestModel.cc       |  21 +
 ext/dsent/model/electrical/TestModel.h        |  21 +
 ext/dsent/model/electrical/router/Router.cc   |  21 +
 ext/dsent/model/electrical/router/Router.h    |  21 +
 .../electrical/router/RouterInputPort.cc      |  21 +
 .../model/electrical/router/RouterInputPort.h |  21 +
 .../router/RouterSwitchAllocator.cc           |  21 +
 .../electrical/router/RouterSwitchAllocator.h |  21 +
 ext/dsent/model/network/ElectricalClos.cc     |  21 +
 ext/dsent/model/network/ElectricalClos.h      |  21 +
 ext/dsent/model/network/ElectricalMesh.cc     |  21 +
 ext/dsent/model/network/ElectricalMesh.h      |  21 +
 ext/dsent/model/network/PhotonicClos.cc       |  21 +
 ext/dsent/model/network/PhotonicClos.h        |  21 +
 ext/dsent/model/optical/GatedLaserSource.cc   |  21 +
 ext/dsent/model/optical/GatedLaserSource.h    |  21 +
 ext/dsent/model/optical/LaserSource.cc        |  21 +
 ext/dsent/model/optical/LaserSource.h         |  21 +
 .../model/optical/OpticalLinkBackendRx.cc     |  21 +
 .../model/optical/OpticalLinkBackendRx.h      |  21 +
 .../model/optical/OpticalLinkBackendTx.cc     |  21 +
 .../model/optical/OpticalLinkBackendTx.h      |  21 +
 ext/dsent/model/optical/OpticalTestModel.cc   |  21 +
 ext/dsent/model/optical/OpticalTestModel.h    |  21 +
 ext/dsent/model/optical/RingDetector.cc       |  21 +
 ext/dsent/model/optical/RingDetector.h        |  21 +
 ext/dsent/model/optical/RingFilter.cc         |  21 +
 ext/dsent/model/optical/RingFilter.h          |  21 +
 ext/dsent/model/optical/RingModulator.cc      |  21 +
 ext/dsent/model/optical/RingModulator.h       |  21 +
 ext/dsent/model/optical/SWMRLink.cc           |  21 +
 ext/dsent/model/optical/SWMRLink.h            |  21 +
 ext/dsent/model/optical/SWSRLink.cc           |  21 +
 ext/dsent/model/optical/SWSRLink.h            |  21 +
 .../model/optical/ThrottledLaserSource.cc     |  21 +
 .../model/optical/ThrottledLaserSource.h      |  21 +
 .../model/optical_graph/OpticalDetector.cc    |  21 +
 .../model/optical_graph/OpticalDetector.h     |  21 +
 .../model/optical_graph/OpticalFilter.cc      |  21 +
 ext/dsent/model/optical_graph/OpticalFilter.h |  21 +
 ext/dsent/model/optical_graph/OpticalGraph.cc |  21 +
 ext/dsent/model/optical_graph/OpticalGraph.h  |  21 +
 ext/dsent/model/optical_graph/OpticalLaser.cc |  21 +
 ext/dsent/model/optical_graph/OpticalLaser.h  |  21 +
 .../model/optical_graph/OpticalModulator.cc   |  21 +
 .../model/optical_graph/OpticalModulator.h    |  21 +
 ext/dsent/model/optical_graph/OpticalNode.cc  |  21 +
 ext/dsent/model/optical_graph/OpticalNode.h   |  21 +
 .../model/optical_graph/OpticalReceiver.h     |  21 +
 .../model/optical_graph/OpticalTransmitter.h  |  21 +
 .../model/optical_graph/OpticalWaveguide.cc   |  21 +
 .../model/optical_graph/OpticalWaveguide.h    |  21 +
 .../model/optical_graph/OpticalWavelength.cc  |  21 +
 .../model/optical_graph/OpticalWavelength.h   |  21 +
 ext/dsent/model/std_cells/ADDF.cc             |  21 +
 ext/dsent/model/std_cells/ADDF.h              |  21 +
 ext/dsent/model/std_cells/AND2.cc             |  21 +
 ext/dsent/model/std_cells/AND2.h              |  21 +
 ext/dsent/model/std_cells/BUF.cc              |  21 +
 ext/dsent/model/std_cells/BUF.h               |  21 +
 ext/dsent/model/std_cells/CellMacros.cc       |  21 +
 ext/dsent/model/std_cells/CellMacros.h        |  21 +
 ext/dsent/model/std_cells/DFFQ.cc             |  21 +
 ext/dsent/model/std_cells/DFFQ.h              |  21 +
 ext/dsent/model/std_cells/INV.cc              |  21 +
 ext/dsent/model/std_cells/INV.h               |  21 +
 ext/dsent/model/std_cells/LATQ.cc             |  21 +
 ext/dsent/model/std_cells/LATQ.h              |  21 +
 ext/dsent/model/std_cells/MUX2.cc             |  21 +
 ext/dsent/model/std_cells/MUX2.h              |  21 +
 ext/dsent/model/std_cells/NAND2.cc            |  21 +
 ext/dsent/model/std_cells/NAND2.h             |  21 +
 ext/dsent/model/std_cells/NOR2.cc             |  21 +
 ext/dsent/model/std_cells/NOR2.h              |  21 +
 ext/dsent/model/std_cells/OR2.cc              |  21 +
 ext/dsent/model/std_cells/OR2.h               |  21 +
 ext/dsent/model/std_cells/StdCell.cc          |  21 +
 ext/dsent/model/std_cells/StdCell.h           |  21 +
 ext/dsent/model/std_cells/StdCellLib.cc       |  21 +
 ext/dsent/model/std_cells/StdCellLib.h        |  21 +
 ext/dsent/model/std_cells/XOR2.cc             |  21 +
 ext/dsent/model/std_cells/XOR2.h              |  21 +
 .../model/timing_graph/ElectricalDelay.cc     |  21 +
 .../model/timing_graph/ElectricalDelay.h      |  21 +
 .../model/timing_graph/ElectricalDriver.cc    |  21 +
 .../model/timing_graph/ElectricalDriver.h     |  21 +
 .../ElectricalDriverMultiplier.cc             |  21 +
 .../timing_graph/ElectricalDriverMultiplier.h |  21 +
 .../model/timing_graph/ElectricalLoad.cc      |  21 +
 ext/dsent/model/timing_graph/ElectricalLoad.h |  21 +
 ext/dsent/model/timing_graph/ElectricalNet.cc |  21 +
 ext/dsent/model/timing_graph/ElectricalNet.h  |  21 +
 .../timing_graph/ElectricalTimingNode.cc      |  21 +
 .../model/timing_graph/ElectricalTimingNode.h |  21 +
 .../timing_graph/ElectricalTimingOptimizer.cc |  21 +
 .../timing_graph/ElectricalTimingOptimizer.h  |  21 +
 .../timing_graph/ElectricalTimingTree.cc      |  21 +
 .../model/timing_graph/ElectricalTimingTree.h |  21 +
 ext/dsent/tech/TechModel.cc                   |  44 +-
 ext/dsent/tech/TechModel.h                    |  29 +-
 ext/dsent/tech/tech_models/Bulk22LVT.model    |  20 +
 ext/dsent/tech/tech_models/Bulk32LVT.model    |  20 +
 ext/dsent/tech/tech_models/Bulk45LVT.model    |  20 +
 ext/dsent/tech/tech_models/Photonics.model    |  20 +
 ext/dsent/tech/tech_models/TG11LVT.model      |  20 +
 ext/dsent/util/CommonType.h                   |  21 +
 ext/dsent/util/Config.cc                      | 105 ----
 ext/dsent/util/Config.h                       |  40 --
 ext/dsent/util/Constants.cc                   |  21 +
 ext/dsent/util/Constants.h                    |  21 +
 ext/dsent/util/Result.cc                      |  21 +
 ext/dsent/util/Result.h                       |  21 +
 178 files changed, 4053 insertions(+), 926 deletions(-)
 create mode 100644 ext/dsent/CMakeLists.txt
 delete mode 100644 ext/dsent/Makefile
 create mode 100644 ext/dsent/interface.cc
 delete mode 100644 ext/dsent/libutil/Makefile
 delete mode 100644 ext/dsent/libutil/OptionParser.cc
 delete mode 100644 ext/dsent/libutil/OptionParser.h
 delete mode 100644 ext/dsent/main.cc
 delete mode 100644 ext/dsent/util/Config.cc
 delete mode 100644 ext/dsent/util/Config.h

diff --git a/ext/dsent/CMakeLists.txt b/ext/dsent/CMakeLists.txt
new file mode 100644
index 0000000000..555606c861
--- /dev/null
+++ b/ext/dsent/CMakeLists.txt
@@ -0,0 +1,46 @@
+# Copyright (c) 2014 Mark D. Hill and David A. Wood
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met: redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer;
+# redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution;
+# neither the name of the copyright holders nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cmake_minimum_required (VERSION 2.6)
+
+project (DSENT)
+# find out all the file that need to be compiled
+file(GLOB_RECURSE SRCS  "*.h" "*.cc")
+
+# add the library
+add_library(dsent MODULE ${SRCS})
+
+SET(PYTHON_CONFIG "python-config")
+
+# add the binary tree to the search path for include files
+include_directories("${CMAKE_SOURCE_DIR}" "`${PYTHON_CONFIG} --includes`")
+EXEC_PROGRAM(${PYTHON_CONFIG} ARGS --cflags OUTPUT_VARIABLE PYTHON_CFLAGS)
+EXEC_PROGRAM(${PYTHON_CONFIG} ARGS --ldflags OUTPUT_VARIABLE PYTHON_LFLAGS)
+
+set_target_properties(dsent PROPERTIES
+        PREFIX ""
+        COMPILE_FLAGS "${PYTHON_CFLAGS} -std=c++11"
+        LINK_FLAGS "${PYTHON_LFLAGS}")
diff --git a/ext/dsent/DSENT.cc b/ext/dsent/DSENT.cc
index 576cbbebcf..da9163a504 100644
--- a/ext/dsent/DSENT.cc
+++ b/ext/dsent/DSENT.cc
@@ -1,237 +1,209 @@
-#include "DSENT.h"
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
 
 #include <cstdlib>
 #include <iostream>
 
-namespace DSENT
-{
-    Model* DSENT::ms_model_ = NULL;
-    bool DSENT::ms_is_verbose_ = false;
-
-    void DSENT::run(int argc_, char** argv_)
-    {
-        // Initialize DSENT framework (setup log file, config file, ...)
-        initialize(argc_, argv_);
-
-        // Build the specified model in the config file
-        buildModel();
-
-        // Process the specified queries
-        processQuery();
-        // Process the specified evaluation
-        processEvaluate();
-
-        // Finalize DSENT framework (close log file, ...)
-        finalize();
-        return;
-    }
-
-    void DSENT::setRuntimeOptions(OptionParser* option_parser_)
-    {
-        option_parser_->addOption("-cfg", "ConfigFilename", true, "filename", false, "",
-                "Specify the config filename.");
-
-        option_parser_->addOption("-available_models", "IsListModels", false, "", true, "false",
-                "List available DSENT models.");
-
-        option_parser_->addOption("-log", "LogFilename", true, "filename", true, "./dsent.log", 
-                "Specify the log filename.");
-
-        option_parser_->addOption("-overwrite", "OverwriteString", true, "options", true, "",
-                "Overwrite dynamically the options set in the config file. Options are separated by a comma (;).");
-
-        option_parser_->addOption("-overwrite_tech", "OverwriteTechString", true, "options", true, "",
-                "Overwrite dynamically the options set in the technology file. Options are separated by a comma (;).");
-
-        option_parser_->addOption("-print_config", "IsPrintConfig", false, "", true, "false", 
-                "Print the config used at DSENT runtime.");
-
-        option_parser_->addOption("-query", "QueryString", true, "query string", true, "",
-                "Specify the list of items to query. This command is the same as owerwriting the 'QueryString'.");
+#include "DSENT.h"
+#include "model/std_cells/StdCellLib.h"
 
-        option_parser_->addOption("-eval", "EvaluateString", true, "evaluate string", true, "",
-                "Specify the list of statements to evaluate. This command is the same as owerwriting the 'EvaluateString'.");
+using namespace std;
 
-        option_parser_->addOption("-verbose", "IsVerbose", false, "", true, "false", 
-                "Enable verbose mode which prints out more detailed messages.");
-        return;
-    }
-
-    void DSENT::initialize(int argc_, char** argv_)
+namespace DSENT
+{
+    static void performTimingOpt(const map<String, String> &params,
+                                 Model *ms_model)
     {
-        OptionParser* option_parser = new OptionParser();
+        // Get the frequency it is optimizing to
+        double freq = params.at("Frequency").toDouble();
 
-        // Init the option parser and setup available options
-        setRuntimeOptions(option_parser);
+        // Get all the starting net names
+        const vector<String>& start_net_names =
+            params.at("TimingOptimization->StartNetNames").split("[,]");
 
-        // Parse the options
-        option_parser->parseArguments(argc_, argv_);
+        ASSERT((start_net_names.size() > 0),
+               "[Error] Expecting net names in TimingOptimization->StartNetNames");
 
-        // If -available_models is specified, print out a list of available 
-        // models and exit DSENT.
-        if(option_parser->get("IsListModels").toBool())
+        if(start_net_names[0] == "*")
         {
-            ModelGen::printAvailableModels();
-            exit(0);
-        }
-
-        // Init the log file
-        Log::allocate(option_parser->get("LogFilename"));
-
-        // Init the config file
-        Config::allocate(option_parser->get("ConfigFilename"));
-        Config* dsent_config = Config::getSingleton();
-
-        // Overwrite the existing options
-        dsent_config->readString(option_parser->get("OverwriteString"));
-
-        // Overwrite the technology file
-        dsent_config->constructTechModel(option_parser->get("OverwriteTechString"));
+            // Optimize from all input ports
+            ElectricalModel* electrical_model = (ElectricalModel*)ms_model;
 
-        ms_is_verbose_ = option_parser->get("IsVerbose").toBool();
+            ElectricalTimingOptimizer timing_optimizer(
+                    "Optimizer", electrical_model->getTechModel());
+            timing_optimizer.setModel(electrical_model);
+            timing_optimizer.construct();
+            timing_optimizer.update();
 
-        // Overwrite the query string if it is specified from command line
-        if(option_parser->get("QueryString").size() != 0)
-        {
-            dsent_config->set("QueryString", option_parser->get("QueryString"));
-        }
-        // Overwrite the evaluation string if it is specified from command line
-        if(option_parser->get("EvaluateString").size() != 0)
-        {
-            dsent_config->set("EvaluateString", option_parser->get("EvaluateString"));
-        }
+            ElectricalTimingTree timing_tree(
+                    timing_optimizer.getInstanceName(), &timing_optimizer);
 
-        // Print the config used for this run
-        if(option_parser->get("IsPrintConfig").toBool())
-        {
-            if(ms_is_verbose_)
+            const Map<PortInfo*>* input_ports = timing_optimizer.getInputs();
+            Map<PortInfo*>::ConstIterator it_begin = input_ports->begin();
+            Map<PortInfo*>::ConstIterator it_end = input_ports->end();
+            Map<PortInfo*>::ConstIterator it;
+            for(it = it_begin; it != it_end; ++it)
             {
-                cout << "Configuration:" << endl;
-                cout << "==============" << endl;
+                const String& net_name = it->first;
+                Log::printLine("Optimizing net: " + net_name);
+                timing_tree.performTimingOpt(
+                        timing_optimizer.getNet(net_name, makeNetIndex(0)), 1.0 / freq);
             }
-            cout << *dsent_config;
 
-            if(ms_is_verbose_)
+            // Loop the second times 
+            for(it = it_begin; it != it_end; ++it)
             {
-                cout << "==============" << endl;
+                const String& net_name = it->first;
+                Log::printLine("Optimizing net: " + net_name);
             }
         }
+        else
+        {
+            // TODO : parse the net name so that we could do hierarchical optimization
+            // Currently we can only optimize timing at the top level
+            ElectricalModel* electrical_model = (ElectricalModel*)ms_model;
+            ElectricalTimingTree timing_tree(
+                    electrical_model->getInstanceName(), electrical_model);
 
-        delete option_parser;
-        return;
+            for(unsigned int i = 0; i < start_net_names.size(); ++i)
+            {
+                const String& net_name = start_net_names[i];
+                timing_tree.performTimingOpt(
+                        electrical_model->getNet(net_name), 1.0 / freq);
+            }
+        }
     }
 
-    void DSENT::buildModel()
+    static void reportTiming(const map<String, String> &params, Model *ms_model)
     {
-        Config* dsent_config = Config::getSingleton();
+        // Get all the starting net names
+        const vector<String>& start_net_names =
+            params.at("ReportTiming->StartNetNames").split("[,]");
+
+        ElectricalModel* electrical_model = (ElectricalModel*)ms_model;
+        ElectricalTimingTree timing_tree(
+                electrical_model->getInstanceName(), electrical_model);
 
+        cout << "Report timing:" << endl;
+        cout << "==============" << endl;
+        for(unsigned int i = 0; i < start_net_names.size(); ++i)
+        {
+            const String& net_name = start_net_names[i];
+            double timing = timing_tree.performCritPathExtract(electrical_model->getNet(net_name));
+            cout << net_name << " = " << timing << endl;
+        }
+        cout << "==============" << endl;
+    }
+
+    static Model *buildModel(const map<String, String> &params,
+                             TechModel *tech_model)
+    {
         // Create the model specified
-        const String& model_name = dsent_config->get("ModelName");
-        ms_model_ = ModelGen::createModel(model_name, model_name, dsent_config->getTechModel());
+        const String& model_name = params.at("ModelName");
+        Model *ms_model = ModelGen::createModel(model_name, model_name,
+                                                tech_model);
 
         // Construct the model
         // Read all parameters the model requires
-        const vector<String>* parameter_names = ms_model_->getParameterNames();
+        const vector<String>* parameter_names = ms_model->getParameterNames();
         // For all parameters, grab values from the config file
-        for(vector<String>::const_iterator it = parameter_names->begin(); it != parameter_names->end(); ++it)
+        for(vector<String>::const_iterator it = parameter_names->begin();
+            it != parameter_names->end(); ++it)
         {
             const String& parameter_name = *it;
             // If it exists in the config file, set the parameter
-            if(dsent_config->keyExist(parameter_name))
+            if(params.count(parameter_name) > 0)
             {
-                ms_model_->setParameter(parameter_name, dsent_config->get(parameter_name));
+                ms_model->setParameter(parameter_name,
+                                       params.at(parameter_name));
             }
         }
-        ms_model_->construct();
+
+        ms_model->construct();
 
         // Update the model
         // Read all properties the model requires
-        const vector<String>* property_names = ms_model_->getPropertyNames();
+        const vector<String>* property_names = ms_model->getPropertyNames();
         // For all properties, grab values from the config file
-        for(vector<String>::const_iterator it = property_names->begin(); it != property_names->end(); ++it)
+        for(vector<String>::const_iterator it = property_names->begin();
+            it != property_names->end(); ++it)
         {
             const String& property_name = *it;
             // If it exists in the config file, set the parameter
-            if(dsent_config->keyExist(property_name))
+            if(params.count(property_name) > 0)
             {
-                ms_model_->setProperty(property_name, dsent_config->get(property_name));
+                ms_model->setProperty(property_name,
+                                      params.at(property_name));
             }
         }
-        ms_model_->update();
+        ms_model->update();
 
         // Evaluate the model
         // Perform timing optimization if needed
-        if(dsent_config->getIfKeyExist("IsPerformTimingOptimization", "false").toBool())
+        if(params.find("IsPerformTimingOptimization") != params.end() &&
+           params.at("IsPerformTimingOptimization").toBool())
         {
-            performTimingOpt();
+            performTimingOpt(params, ms_model);
         }
-        ms_model_->evaluate();
+        ms_model->evaluate();
 
         // Report timing if needed
-        if(dsent_config->getIfKeyExist("IsReportTiming", "false").toBool())
+        if(params.count("IsReportTiming") > 0 &&
+           params.at("IsReportTiming") != "false")
         {
-            reportTiming();
+            reportTiming(params, ms_model);
         }
 
-        return;
-    }
-
-    void DSENT::processQuery()
-    {
-        Config* dsent_config = Config::getSingleton();
-        vector<String> queries = dsent_config->get("QueryString").split(" ;\r\n");
-
-        if(ms_is_verbose_)
-        {
-            cout << "Query results:" << endl;
-            cout << "==============" << endl;
-        }
-
-        for(unsigned int i = 0; i < queries.size(); ++i)
-        {
-            const String& curr_query = queries[i];
-
-            if(ms_is_verbose_)
-            {
-                String str = "Process query: '" + curr_query + "'";
-                cout << str << endl;
-                cout << String(str.size(), '-') << endl;
-            }
-
-            processQuery(curr_query, true);
-
-            if(ms_is_verbose_)
-            {
-                cout << endl;
-            }
-        }
-        if(ms_is_verbose_)
-        {
-            cout << "==============" << endl;
-        }
-        return;
+        return ms_model;
     }
 
-    const void* DSENT::processQuery(const String& query_str_, bool is_print_)
+    static const void* processQuery(const String& query_str_,
+                                    Model *ms_model, bool is_print_)
     {
         vector<String> type_split = query_str_.splitByString(Model::TYPE_SEPARATOR);
         ASSERT((type_split.size() == 2), "[Error] Invalid query format: " + query_str_);
         String query_type = type_split[0];
 
-        vector<String> detail_split = type_split[1].splitByString(Model::DETAIL_SEPARATOR);
+        vector<String> detail_split =
+            type_split[1].splitByString(Model::DETAIL_SEPARATOR);
+
         ASSERT((detail_split.size() == 2), "[Error] Invalid query format: " + query_str_);
         String query_detail = detail_split[1];
 
-        vector<String> subfield_split = detail_split[0].splitByString(Model::SUBFIELD_SEPARATOR);
-        ASSERT(((subfield_split.size() == 2) || (subfield_split.size() == 1)), "[Error] Invalid query format: " + query_str_);
+        vector<String> subfield_split =
+            detail_split[0].splitByString(Model::SUBFIELD_SEPARATOR);
+
+        ASSERT(((subfield_split.size() == 2) || (subfield_split.size() == 1)),
+               "[Error] Invalid query format: " + query_str_);
+
         String query_hier = subfield_split[0];
         String query_subfield = "";
+
         if(subfield_split.size() == 2)
         {
             query_subfield = subfield_split[1];
         }
 
-        const void* query_result = ms_model_->parseQuery(query_type, query_hier, query_subfield);
+        const void* query_result = ms_model->parseQuery(query_type, query_hier,
+                                                        query_subfield);
         if(query_type == "Property")
         {
             const PropertyMap* property = (const PropertyMap*)query_result;
@@ -268,156 +240,104 @@ namespace DSENT
         return query_result;
     }
 
-    void DSENT::finalize()
+    void processQuery(const vector<String> &queries,
+                      Model *ms_model, vector<String> &outputs)
     {
-        // Release the constructed model
-        delete ms_model_;
-        ms_model_ = NULL;
-
-        // Release the config file
-        Config::release();
-
-        // Release the log file
-        Log::release();
+        for(unsigned int i = 0; i < queries.size(); ++i)
+        {
+            const String& curr_query = queries[i];
+            processQuery(curr_query, ms_model, true);
 
-        return;
+        }
     }
 
-    void DSENT::performTimingOpt()
+    static TechModel* constructTechModel(const map<String, String>& params)
     {
-        Config* dsent_config = Config::getSingleton();
+        // Allocate static TechModel instance
+        const String& electrical_tech_model_filename =
+            params.at("ElectricalTechModelFilename");
 
-        // Get the frequency it is optimizing to
-        double freq = dsent_config->get("Frequency").toDouble();
+        TechModel* tech_model = new TechModel();
+        tech_model->readFile(electrical_tech_model_filename);
 
-        // Get all the starting net names
-        const vector<String>& start_net_names = dsent_config->get("TimingOptimization->StartNetNames").split("[,]");
-
-        ASSERT((start_net_names.size() > 0), "[Error] Expecting net names in TimingOptimization->StartNetNames");
-
-        if(start_net_names[0] == "*")
-        {
-            // Optimize from all input ports
-            ElectricalModel* electrical_model = (ElectricalModel*)ms_model_;
-
-            ElectricalTimingOptimizer timing_optimizer("Optimizer", electrical_model->getTechModel());
-            timing_optimizer.setModel(electrical_model);
-            timing_optimizer.construct();
-            timing_optimizer.update();
+        if (params.count("PhotonicTechModelFilename") != 0) {
+            const String& photonic_tech_model_filename =
+                params.at("PhotonicTechModelFilename");
+            tech_model->readFile(photonic_tech_model_filename);
+        }
 
-            ElectricalTimingTree timing_tree(timing_optimizer.getInstanceName(), &timing_optimizer);
+        // Allocate static StdCellLib instance
+        StdCellLib* std_cell_lib = new StdCellLib(tech_model);
 
-            const Map<PortInfo*>* input_ports = timing_optimizer.getInputs();
-            Map<PortInfo*>::ConstIterator it_begin = input_ports->begin();
-            Map<PortInfo*>::ConstIterator it_end = input_ports->end();
-            Map<PortInfo*>::ConstIterator it;
-            for(it = it_begin; it != it_end; ++it)
-            {
-                const String& net_name = it->first;
-                Log::printLine("Optimizing net: " + net_name);
-                timing_tree.performTimingOpt(timing_optimizer.getNet(net_name, makeNetIndex(0)), 1.0 / freq);
-                //timing_tree.performTimingOpt(electrical_model->getNet(net_name, makeNetIndex(0)), 1.0 / freq);
-            }
-            // Loop the second times 
-            for(it = it_begin; it != it_end; ++it)
-            {
-                const String& net_name = it->first;
-                Log::printLine("Optimizing net: " + net_name);
-                //timing_tree.performTimingOpt(timing_optimizer.getNet(net_name, makeNetIndex(0)), 1.0 / freq);
-            }
-        }
-        else
-        {
-            // TODO : parse the net name so that we could do hierarchical optimization
-            // Currently we can only optimize timing at the top level
-            ElectricalModel* electrical_model = (ElectricalModel*)ms_model_;
-            ElectricalTimingTree timing_tree(electrical_model->getInstanceName(), electrical_model);
-            for(unsigned int i = 0; i < start_net_names.size(); ++i)
-            {
-                const String& net_name = start_net_names[i];
-                timing_tree.performTimingOpt(electrical_model->getNet(net_name), 1.0 / freq);
-            }
-        }
-        return;
+        // Set the StdCellLib pointer in static TechModel instance
+        tech_model->setStdCellLib(std_cell_lib);
+        return tech_model;
     }
 
-    void DSENT::reportTiming()
+    Model *initialize(const char *config_file_name, map<String, String> &config)
     {
-        Config* dsent_config = Config::getSingleton();
+        // Init the log file
+        Log::allocate("/tmp/dsent.log");
 
-        // Get all the starting net names
-        const vector<String>& start_net_names = dsent_config->get("ReportTiming->StartNetNames").split("[,]");
+        // Init the config file
+        LibUtil::readFile(config_file_name, config);
 
-        ElectricalModel* electrical_model = (ElectricalModel*)ms_model_;
-        ElectricalTimingTree timing_tree(electrical_model->getInstanceName(), electrical_model);
+        // Overwrite the technology file
+        TechModel *tech_model = constructTechModel(config);
 
-        cout << "Report timing:" << endl;
-        cout << "==============" << endl;
-        for(unsigned int i = 0; i < start_net_names.size(); ++i)
-        {
-            const String& net_name = start_net_names[i];
-            double timing = timing_tree.performCritPathExtract(electrical_model->getNet(net_name));
-            cout << net_name << " = " << timing << endl;
-        }
-        cout << "==============" << endl;
-        return;
+        // Build the specified model in the config file
+        return buildModel(config, tech_model);
     }
 
-    void DSENT::processEvaluate()
+    void finalize(map<String, String> &config, Model *ms_model)
     {
-        Config* dsent_config = Config::getSingleton();
-
-        // Return if EvaluatString is empty or not exists
-        if(!dsent_config->keyExist("EvaluateString")) return;
+        // Delete the model
+        delete ms_model;
 
-        String eval_str = dsent_config->get("EvaluateString");
+        // Discard all the (key, value) pairs.
+        config.clear();
 
-        if(eval_str == "") return;
+        // Release the log file
+        Log::release();
+    }
 
-        if(ms_is_verbose_)
-        {
-            cout << "Eval results:" << endl;
-            cout << "==============" << endl;
+    void run(const map<String, String> &params, Model *ms_model,
+             map<string, double> &outputs)
+    {
+        // Process the specified queries
+        const auto &it = params.find("EvaluateString");
+        if(it == params.end()) {
+            return;
         }
 
-        //if(ms_is_verbose_)
-        //{
-        //    String str = "Process evaluation: '" + eval_str + "'";
-        //    cout << str << endl;
-        //    cout << String(str.size(), '-') << endl;
-        //}
-        DSENTCalculator calc;
-        calc.evaluateString(eval_str);
+        String eval_str = it->second;
 
-        if(ms_is_verbose_)
-        {
-            cout << "==============" << endl;
+        if (eval_str == "") {
+            return;
         }
-        return;
-        return;
+
+        DSENTCalculator calc;
+        calc.evaluateString(eval_str, params, ms_model, outputs);
     }
 
-    DSENT::DSENTCalculator::DSENTCalculator()
-    {}
+    DSENTCalculator::DSENTCalculator() {}
 
-    DSENT::DSENTCalculator::~DSENTCalculator()
-    {}
+    DSENTCalculator::~DSENTCalculator() {}
 
-    double DSENT::DSENTCalculator::getEnvVar(const String& var_name_) const
+    double DSENTCalculator::getEnvVar(const String& var_name_,
+                                      const map<String, String> &config,
+                                      Model *ms_model) const
     {
-        if(m_var_.keyExist(var_name_))
-        {
+        if (m_var_.keyExist(var_name_)) {
             return m_var_.get(var_name_);
-        }
-        else if(Config::getSingleton()->keyExist(var_name_))
-        {
-            return Config::getSingleton()->get(var_name_);
-        }
-        else
-        {
-            const Result* result = (const Result*)DSENT::processQuery(var_name_ + "@0", false);
+        } else if (config.count(var_name_) > 0) {
+            return config.at(var_name_);
+        } else {
+            // Wish there was a way to not have to pass in a stream if we aren't
+            // doing anything with it
+            const Result* result = (const Result*)DSENT::processQuery(
+                var_name_ + "@0", ms_model, false);
             return result->calculateSum();
         }
     }
 } // namespace DSENT
-
diff --git a/ext/dsent/DSENT.h b/ext/dsent/DSENT.h
index 42abb98e12..5012256d79 100644
--- a/ext/dsent/DSENT.h
+++ b/ext/dsent/DSENT.h
@@ -1,11 +1,33 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_DSENT_H__
 #define __DSENT_DSENT_H__
 
+#include <map>
+#include <string>
+
 // For DSENT operations
-#include "libutil/OptionParser.h"
 #include "libutil/Calculator.h"
 #include "util/CommonType.h"
-#include "util/Config.h"
 #include "util/Result.h"
 #include "model/Model.h"
 #include "model/ModelGen.h"
@@ -19,46 +41,29 @@
 
 namespace DSENT
 {
-    using LibUtil::OptionParser;
     using LibUtil::Calculator;
 
-    class DSENT
+    class DSENTCalculator : public Calculator
     {
-        protected:
-            class DSENTCalculator : public Calculator
-            {
-                public:
-                    DSENTCalculator();
-                    virtual ~DSENTCalculator();
-        
-                protected:
-                    virtual double getEnvVar(const String& var_name_) const;
-            }; // class DSENTCalculator
-
         public:
-            static void run(int argc_, char** argv_);
+            DSENTCalculator();
+            virtual ~DSENTCalculator();
 
         protected:
-            static void setRuntimeOptions(OptionParser* option_parser_);
-            static void initialize(int argc_, char** argv_);
-            static void buildModel();
-            static void processQuery();
-            static const void* processQuery(const String& query_str_, bool is_print_);
-            static void finalize();
+            virtual double getEnvVar(
+                const String& var_name_,
+                const std::map<String, String> &Config,
+                Model *ms_model) const;
+    };
 
-            static void performTimingOpt();
-            static void reportTiming();
+    Model *initialize(const char *config_file_name,
+                      std::map<String, String> &config);
 
-            static void processEvaluate();
-
-        protected:
-            static Model* ms_model_;
-
-            static bool ms_is_verbose_;
-
-    }; // class DSENT
+    void finalize(std::map<String, String> &config,
+                  Model *ms_model);
 
+    void run(const std::map<String, String> &config, Model *ms_model,
+             std::map<std::string, double> &outputs);
 } // namespace DSENT
 
 #endif // __DSENT_DSENT_H__
-
diff --git a/ext/dsent/Makefile b/ext/dsent/Makefile
deleted file mode 100644
index 1241883539..0000000000
--- a/ext/dsent/Makefile
+++ /dev/null
@@ -1,55 +0,0 @@
-
-# Define the directories that will be compiled
-DIRS_TO_COMPILE := util tech io \
-                   model model/timing_graph \
-                   model/std_cells \
-                   model/electrical \
-                   model/electrical/router \
-                   model/optical \
-                   model/optical_graph \
-                   model/network \
-                   model/network/ATAC
-
-DIRS = $(patsubst %,$(CURDIR)/%,$(DIRS_TO_COMPILE))
-
-SRCS = $(foreach dir, $(DIRS), $(wildcard $(dir)/*.cc))
-
-OBJS = $(SRCS:%.cc=%.o)
-
-DEF_FLAGS = 
-INCLUDE_FLAGS = -I$(CURDIR)
-OPT_FLAGS = -O2 -g 
-WARN_FLAGS = -pedantic -Wall -W #-Wextra -Werror -Wno-write-strings
-CXXFLAGS = $(OPT_FLAGS) $(WARN_FLAGS) $(INCLUDE_FLAGS) $(DEF_FLAGS)
-
-LD_LIBS += -lutil
-LD_FLAGS += -Llibutil
-
-# Other libraries used 
-LIB_UTIL = libutil/libutil.a
-
-#TARGET = $(CURDIR)/libdsent.a
-TARGET = $(CURDIR)/dsent
-
-all: $(TARGET)
-
-#$(TARGET): $(OBJS)
-#	ar rcs $@ $^
-$(TARGET): main.o DSENT.o $(LIB_UTIL) $(OBJS) 
-	$(CXX) $(CXXFLAGS) $(LD_FLAGS) $(OBJS) main.o DSENT.o -o $(TARGET) $(LD_LIBS) 
-
-# For general c++ compilation
-%.o: %.cc
-	$(CXX) $(CXXFLAGS) -c $< -o $@
-
-$(LIB_UTIL):
-	$(MAKE) -C $(CURDIR)/libutil
-
-%/created:
-	mkdir -p $(dir $@)
-	touch $@
-
-.phony: clean
-clean:
-	$(RM) -rf main.o DSENT.o $(OBJS) $(TARGET)
-	$(MAKE) -C $(CURDIR)/libutil clean
diff --git a/ext/dsent/configs/electrical-link.cfg b/ext/dsent/configs/electrical-link.cfg
index 8369b8633a..1873a117a9 100644
--- a/ext/dsent/configs/electrical-link.cfg
+++ b/ext/dsent/configs/electrical-link.cfg
@@ -19,7 +19,7 @@ EvaluateString                          = \
     print "    Leakage power: " link_static; \
 
 # Technology file (see models in tech/models)
-ElectricalTechModelFilename             = tech/tech_models/Bulk45LVT.model
+ElectricalTechModelFilename             = ext/dsent/tech/tech_models/Bulk45LVT.model
 
 ###############################################################################
 # Timing optimization
diff --git a/ext/dsent/configs/router.cfg b/ext/dsent/configs/router.cfg
index 2e68b7e2ca..d00198ea01 100644
--- a/ext/dsent/configs/router.cfg
+++ b/ext/dsent/configs/router.cfg
@@ -65,7 +65,7 @@ EvaluateString                          = \
     print "    Other:            " other_area; \
 
 # Technology file (see other models in tech/models)
-ElectricalTechModelFilename             = tech/tech_models/Bulk45LVT.model
+ElectricalTechModelFilename             = ext/dsent/tech/tech_models/Bulk45LVT.model
 
 ###############################################################################
 # Timing optimization
diff --git a/ext/dsent/interface.cc b/ext/dsent/interface.cc
new file mode 100644
index 0000000000..b57c33ea89
--- /dev/null
+++ b/ext/dsent/interface.cc
@@ -0,0 +1,213 @@
+/* Copyright (c) 2014 Mark D. Hill and David A. Wood
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met: redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer;
+ * redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution;
+ * neither the name of the copyright holders nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <Python.h>
+#include <cstdio>
+
+#include "DSENT.h"
+#include "libutil/String.h"
+#include "model/Model.h"
+
+using namespace std;
+using namespace LibUtil;
+
+static PyObject *DSENTError;
+static PyObject* dsent_initialize(PyObject*, PyObject*);
+static PyObject* dsent_finalize(PyObject*, PyObject*);
+static PyObject* dsent_computeRouterPowerAndArea(PyObject*, PyObject*);
+static PyObject* dsent_computeLinkPower(PyObject*, PyObject*);
+
+// Create DSENT configuration map.  This map is supposed to retain all
+// the information between calls to initialize() and finalize().
+map<String, String> params;
+DSENT::Model *ms_model;
+
+
+static PyMethodDef DSENTMethods[] = {
+    {"initialize", dsent_initialize, METH_O,
+     "initialize dsent using a config file."},
+
+    {"finalize", dsent_finalize, METH_NOARGS,
+     "finalize dsent by dstroying the config object"},
+
+    {"computeRouterPowerAndArea", dsent_computeRouterPowerAndArea,
+     METH_VARARGS, "compute quantities related power consumption of a router"},
+
+    {"computeLinkPower", dsent_computeLinkPower, METH_O,
+     "compute quantities related power consumption of a link"},
+
+    {NULL, NULL, 0, NULL}
+};
+
+
+PyMODINIT_FUNC
+initdsent(void)
+{
+    PyObject *m;
+
+    m = Py_InitModule("dsent", DSENTMethods);
+    if (m == NULL) return;
+
+    DSENTError = PyErr_NewException("dsent.error", NULL, NULL);
+    Py_INCREF(DSENTError);
+    PyModule_AddObject(m, "error", DSENTError);
+
+    ms_model = nullptr;
+}
+
+
+static PyObject *
+dsent_initialize(PyObject *self, PyObject *arg)
+{
+    const char *config_file = PyString_AsString(arg);
+    //Read the arguments sent from the python script
+    if (!config_file) {
+        Py_RETURN_NONE;
+    }
+
+    // Initialize DSENT
+    ms_model = DSENT::initialize(config_file, params);
+    Py_RETURN_NONE;
+}
+
+
+static PyObject *
+dsent_finalize(PyObject *self, PyObject *args)
+{
+    // Finalize DSENT
+    DSENT::finalize(params, ms_model);
+    ms_model = nullptr;
+    Py_RETURN_NONE;
+}
+
+
+static PyObject *
+dsent_computeRouterPowerAndArea(PyObject *self, PyObject *args)
+{
+    uint64_t frequency;
+    unsigned int num_in_port;
+    unsigned int num_out_port;
+    unsigned int num_vclass;
+    unsigned int num_vchannels;
+    unsigned int num_buffers;
+
+    unsigned int flit_width;
+    const char *input_port_buffer_model;
+    const char *crossbar_model;
+    const char *sa_arbiter_model;
+    const char *clk_tree_model;
+    unsigned int clk_tree_num_levels;
+    const char *clk_tree_wire_layer;
+    double clk_tree_wire_width_mult;
+
+    // Read the arguments sent from the python script
+    if (!PyArg_ParseTuple(args, "KIIIIII", &frequency, &num_in_port,
+                          &num_out_port, &num_vclass, &num_vchannels,
+                          &num_buffers, &flit_width)) {
+        Py_RETURN_NONE;
+    }
+
+    assert(frequency > 0.0);
+    assert(num_in_port != 0);
+    assert(num_out_port != 0);
+    assert(num_vclass != 0);
+    assert(flit_width != 0);
+
+    vector<unsigned int> num_vchannels_vec(num_vclass, num_vchannels);
+    vector<unsigned int> num_buffers_vec(num_vclass, num_buffers);
+    // DSENT outputs
+    map<string, double> outputs;
+
+    params["Frequency"] = String(frequency);
+    params["NumberInputPorts"] = String(num_in_port);
+    params["NumberOutputPorts"] = String(num_out_port);
+    params["NumberVirtualNetworks"] = String(num_vclass);
+    params["NumberVirtualChannelsPerVirtualNetwork"] =
+        vectorToString<unsigned int>(num_vchannels_vec);
+    params["NumberBuffersPerVirtualChannel"] =
+        vectorToString<unsigned int>(num_buffers_vec);
+    params["NumberBitsPerFlit"] = String(flit_width);
+
+    // Run DSENT
+    DSENT::run(params, ms_model, outputs);
+
+    // Store outputs
+    PyObject *r = PyTuple_New(outputs.size());
+    int index = 0;
+
+    // Prepare the output.  The assumption is that all the output
+    for (const auto &it : outputs) {
+        PyObject *s = PyTuple_New(2);
+        PyTuple_SetItem(s, 0, PyString_FromString(it.first.c_str()));
+        PyTuple_SetItem(s, 1, PyFloat_FromDouble(it.second));
+
+        PyTuple_SetItem(r, index, s);
+        index++;
+    }
+
+    return r;
+}
+
+
+static PyObject *
+dsent_computeLinkPower(PyObject *self, PyObject *arg)
+{
+    uint64_t frequency = PyLong_AsLongLong(arg);
+
+    // Read the arguments sent from the python script
+    if (frequency == -1) {
+        Py_RETURN_NONE;
+    }
+
+    // DSENT outputs
+    map<string, double> outputs;
+    params["Frequency"] = String(frequency);
+
+    // Run DSENT
+    DSENT::run(params, ms_model, outputs);
+
+    // Store outputs
+    PyObject *r = PyTuple_New(outputs.size());
+    int index = 0;
+
+    // Prepare the output.  The assumption is that all the output
+    for (const auto &it : outputs) {
+        PyObject *s = PyTuple_New(2);
+        PyTuple_SetItem(s, 0, PyString_FromString(it.first.c_str()));
+        PyTuple_SetItem(s, 1, PyFloat_FromDouble(it.second));
+
+        PyTuple_SetItem(r, index, s);
+        index++;
+    }
+
+    return r;
+}
+
+static PyObject *
+dsent_printAvailableModels(PyObject* self, PyObject *args)
+{
+}
diff --git a/ext/dsent/libutil/Assert.h b/ext/dsent/libutil/Assert.h
index 0fdd364b2a..dae12e9ae6 100644
--- a/ext/dsent/libutil/Assert.h
+++ b/ext/dsent/libutil/Assert.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __ASSERT_H__
 #define __ASSERT_H__
 
diff --git a/ext/dsent/libutil/Calculator.cc b/ext/dsent/libutil/Calculator.cc
index e78e672873..ca4192dd65 100644
--- a/ext/dsent/libutil/Calculator.cc
+++ b/ext/dsent/libutil/Calculator.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "Calculator.h"
 
 #include <cctype>
@@ -23,9 +44,13 @@ namespace LibUtil
         return;
     }
 
-    void Calculator::evaluateString(const String& str_)
+    void Calculator::evaluateString(const String& str_,
+                                    const map<String, String> &config,
+                                    DSENT::Model *ms_model,
+                                    map<string, double> &outputs)
     {
         istringstream ist(str_);
+
         while(ist)
         {
             getToken(ist);
@@ -42,26 +67,28 @@ namespace LibUtil
                     getToken(ist);
                     if(m_curr_token_ == SEP)
                     {
+                        outputs[print_str] = 0;
                         cout << print_str << endl;
                     }
                     else
                     {
-                        double v = expr(ist, false);
-                        cout << scientific << print_str << v << endl;
+                        double v = expr(ist, false, config, ms_model);
+                        outputs[print_str] = v;
+                        cout << print_str << v << endl;
                     }
                 }
                 else
                 {
-                    double v = expr(ist, false);
-                    cout << scientific << v << endl;
+                    double v = expr(ist, false, config, ms_model);
+                    outputs["Missing Expression"] = v;
+                    cout << v << endl;
                 }
             }
             else
             {
-                expr(ist, false);
+                expr(ist, false, config, ms_model);
             }
         }
-        return;
     }
 
     Calculator::Token Calculator::getToken(istringstream& ist_)
@@ -146,7 +173,9 @@ namespace LibUtil
         }
     }
 
-    double Calculator::prim(istringstream& ist_, bool is_get_)
+    double Calculator::prim(istringstream& ist_, bool is_get_,
+                            const map<String, String> &config,
+                            DSENT::Model *ms_model)
     {
         if(is_get_)
         {
@@ -164,7 +193,7 @@ namespace LibUtil
                 if(getToken(ist_) == ASSIGN)
                 {
                     String var_name = m_value_string_;
-                    v = expr(ist_, true);
+                    v = expr(ist_, true, config, ms_model);
                     m_var_.set(var_name, v);
                 }
                 else
@@ -173,13 +202,13 @@ namespace LibUtil
                 }
                 return v;
             case NAME2:
-                v = getEnvVar(m_value_string_);
+                v = getEnvVar(m_value_string_, config, ms_model);
                 getToken(ist_);
                 return v;
             case MINUS:
-                return -prim(ist_, true);
+                return -prim(ist_, true, config, ms_model);
             case LP:
-                v = expr(ist_, true);
+                v = expr(ist_, true, config, ms_model);
                 ASSERT((m_curr_token_ == RP), "[Error] ')' expected");
                 getToken(ist_);
                 return v;
@@ -188,9 +217,11 @@ namespace LibUtil
         }
     }
 
-    double Calculator::term(istringstream& ist_, bool is_get_)
+    double Calculator::term(istringstream& ist_, bool is_get_,
+                            const map<String, String> &config,
+                            DSENT::Model *ms_model)
     {
-        double left = prim(ist_, is_get_);
+        double left = prim(ist_, is_get_, config, ms_model);
 
         while(1)
         {
@@ -198,10 +229,10 @@ namespace LibUtil
             switch(m_curr_token_)
             {
                 case MUL:
-                    left *= prim(ist_, true);
+                    left *= prim(ist_, true, config, ms_model);
                     break;
                 case DIV:
-                    d = prim(ist_, true);
+                    d = prim(ist_, true, config, ms_model);
                     ASSERT(d, "[Error] divided by 0");
                     left /= d;
                     break;
@@ -211,19 +242,21 @@ namespace LibUtil
         }
     }
 
-    double Calculator::expr(istringstream& ist_, bool is_get_)
+    double Calculator::expr(istringstream& ist_, bool is_get_,
+                            const map<String, String> &config,
+                            DSENT::Model *ms_model)
     {
-        double left = term(ist_, is_get_);
+        double left = term(ist_, is_get_, config, ms_model);
 
         while(1)
         {
             switch(m_curr_token_)
             {
                 case PLUS:
-                    left += term(ist_, true);
+                    left += term(ist_, true, config, ms_model);
                     break;
                 case MINUS:
-                    left -= term(ist_, true);
+                    left -= term(ist_, true, config, ms_model);
                     break;
                 default:
                     return left;
@@ -231,9 +264,10 @@ namespace LibUtil
         }
     }
 
-    double Calculator::getEnvVar(const String& var_name_) const
+    double Calculator::getEnvVar(const String& var_name_,
+                                 const map<String, String> &config,
+                                 DSENT::Model *ms_model) const
     {
         return m_var_.get(var_name_);
     }
 } // namespace LibUtil
-
diff --git a/ext/dsent/libutil/Calculator.h b/ext/dsent/libutil/Calculator.h
index 4fcdf471fb..78b3fb63a3 100644
--- a/ext/dsent/libutil/Calculator.h
+++ b/ext/dsent/libutil/Calculator.h
@@ -1,8 +1,30 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __LIBUTIL_CALCULATOR_H__
 #define __LIBUTIL_CALCULATOR_H__
 
 #include <sstream>
 
+#include "model/Model.h"
 #include "String.h"
 #include "Map.h"
 #include "Assert.h"
@@ -10,6 +32,7 @@
 namespace LibUtil
 {
     using std::istringstream;
+    using std::ostringstream;
 
     /*
      *  program:
@@ -63,14 +86,30 @@ namespace LibUtil
 
         public:
             void reset();
-            void evaluateString(const String& str_);
+            void evaluateString(const String& str_,
+                                const std::map<String, String> &config,
+                                DSENT::Model *ms_model,
+                                std::map<std::string, double> &outputs);
 
         protected:
             Token getToken(istringstream& ist_);
-            double prim(istringstream& ist_, bool is_get_);
-            double term(istringstream& ist_, bool is_get_);
-            double expr(istringstream& ist_, bool is_get_);
-            virtual double getEnvVar(const String& var_name_) const;
+
+            double prim(istringstream& ist_, bool is_get_,
+                        const std::map<String, String> &config,
+                        DSENT::Model *ms_model);
+
+            double term(istringstream& ist_, bool is_get_,
+                        const std::map<String, String> &config,
+                        DSENT::Model *ms_model);
+
+            double expr(istringstream& ist_, bool is_get_,
+                        const std::map<String, String> &config,
+                        DSENT::Model *ms_model);
+
+            virtual double getEnvVar(
+                    const String& var_name_,
+                    const std::map<String, String> &config,
+                    DSENT::Model *ms_model) const;
 
         protected:
             String m_reserved_chars_;
@@ -79,7 +118,7 @@ namespace LibUtil
             Token m_curr_token_;
             double m_value_number_;
             String m_value_string_;
-    }; // class Calculator
+    };
 } // namespace LibUtil
 
 #endif // __LIBUTIL_CALCULATOR_H__
diff --git a/ext/dsent/libutil/Config.cc b/ext/dsent/libutil/Config.cc
index f858c6926e..c0b4f5bda0 100644
--- a/ext/dsent/libutil/Config.cc
+++ b/ext/dsent/libutil/Config.cc
@@ -1,69 +1,44 @@
-#include "Config.h"
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
 
 #include <fstream>
 
 #include "Assert.h"
+#include "Config.h"
+
+using namespace std;
 
 namespace LibUtil
 {
-    Config::Config(const String& delimiter_, const String& comment_, const String& sentry_)
-        : mDelimiter(delimiter_), mComment(comment_), mSentry(sentry_)
-    {}
-
-    Config::Config(const Config& config_)
-        : StringMap(config_)
-    {
-        mDelimiter = config_.mDelimiter;
-        mComment = config_.mComment;
-        mSentry = config_.mSentry;
-    }
-
-    Config::~Config()
-    {}
-
-    Config* Config::clone() const
-    {
-        return new Config(*this);
-    }
-
-    void Config::readFile(const String& filename_)
+    void readFile(const char *filename_, map<String, String> &config)
     {
-        std::ifstream fin(filename_.c_str());
+        std::ifstream ist_(filename_);
 
-        ASSERT(fin, "File not found: " + filename_);
-        fin >> (*this);
-        return;
-    }
-
-    void Config::readString(const String& str_)
-    {
-        String newString = str_;
-        newString.substitute(";", "\n");
-        std::istringstream iss(newString, std::istringstream::in);
-
-        iss >> (*this);
-    }
-
-    std::ostream& operator<<(std::ostream& ost_, const Config& config_)
-    {
-        Config::ConstIterator it;
-        for(it = config_.begin(); it != config_.end(); it++)
-        {
-            ost_ << it->first << " " << config_.mDelimiter << " ";
-            ost_ << it->second << std::endl;
-        }
-        return ost_;
-    }
-
-    std::istream& operator>>(std::istream& ist_, Config& config_)
-    {
         // Set a Config from ist_
         // Read in keys and values, keeping internal whitespace
         typedef String::size_type pos;
-        const String& delim  = config_.mDelimiter;  // separator
-        const String& comm   = config_.mComment;    // comment
-        const String& sentry = config_.mSentry;     // end of file sentry
-        const pos skip = delim.length();        // length of separator
+        const String& delimiter = "=";
+        const String& comment = "#";
+        const String& sentry = "End";
+        const pos skip = delimiter.length();        // length of separator
 
         String nextline = "";  // might need to read ahead to see where value ends
 
@@ -83,17 +58,17 @@ namespace LibUtil
             }
 
             // Ignore comments and the spaces on both ends
-            line = line.substr(0, line.find(comm));
+            line = line.substr(0, line.find(comment));
             line.trim();
 
             // Check for end of file sentry
-            if((sentry != "") && (line.find(sentry) != String::npos)) return ist_;
+            if((sentry != "") && (line.find(sentry) != String::npos)) return;
 
             if(line.length() == 0)
                 continue;
 
             // Parse the line if it contains a delimiter
-            pos delimPos = line.find(delim);
+            pos delimPos = line.find(delimiter);
             ASSERT((delimPos < String::npos), "Invalid config line: '" + line + "'");
 
             // Extract the key
@@ -119,7 +94,7 @@ namespace LibUtil
                 nlcopy.trim();
                 if(nlcopy == "") continue;
 
-                nextline = nextline.substr(0, nextline.find(comm));
+                nextline = nextline.substr(0, nextline.find(comment));
                 //if(nextline.find(delim) != String::npos)
                 //    continue;
                 if((sentry != "") && (nextline.find(sentry) != String::npos))
@@ -136,9 +111,8 @@ namespace LibUtil
             // Store key and value
             key.trim();
             line.trim();
-            config_.set(key, line);  // overwrites if key is repeated
+            config[key] = line;  // overwrites if key is repeated
         }
-        return ist_;
     }
 }
 
diff --git a/ext/dsent/libutil/Config.h b/ext/dsent/libutil/Config.h
index a60c4b8fd0..d88a800a25 100644
--- a/ext/dsent/libutil/Config.h
+++ b/ext/dsent/libutil/Config.h
@@ -1,36 +1,36 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __LIBUTIL_CONFIG_H__
 #define __LIBUTIL_CONFIG_H__
 
 #include <iostream>
+#include <map>
 
-#include "Map.h"
+#include "libutil/String.h"
 
 namespace LibUtil
 {
-    class Config : public StringMap
-    {
-        public:
-            Config(const String& delimiter_ = "=", const String& comment_ = "#", const String& sentry_ = "End");
-            Config(const Config& config_);
-            virtual ~Config();
-
-        public:
-            // Make a copy of this instance
-            virtual Config* clone() const;
-            // Load the config from file
-            virtual void readFile(const String& filename_);
-            // Parse string and overwrite the Config instance if keys exist
-            virtual void readString(const String& str_);
-
-            // Write or read map using standard IO
-            friend std::ostream& operator<<(std::ostream& ost_, const Config& config_);
-            friend std::istream& operator>>(std::istream& ist_, Config& config_);
-
-        protected:
-            String mDelimiter;
-            String mComment;
-            String mSentry;
-    };
+    // Load the config from file
+    void readFile(const char *filename_, std::map<String, String> &config);
 }
 
 #endif // __LIBUTIL_CONFIG_H__
diff --git a/ext/dsent/libutil/Exception.cc b/ext/dsent/libutil/Exception.cc
index c6db0e3fb4..81a459f18c 100644
--- a/ext/dsent/libutil/Exception.cc
+++ b/ext/dsent/libutil/Exception.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "Exception.h"
 
 namespace LibUtil
diff --git a/ext/dsent/libutil/Exception.h b/ext/dsent/libutil/Exception.h
index 88d68cce2f..640eac8b82 100644
--- a/ext/dsent/libutil/Exception.h
+++ b/ext/dsent/libutil/Exception.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __EXCEPTION_H__
 #define __EXCEPTION_H__
 
diff --git a/ext/dsent/libutil/LibUtil.h b/ext/dsent/libutil/LibUtil.h
index 12eb76fa0c..b5170ffb5d 100644
--- a/ext/dsent/libutil/LibUtil.h
+++ b/ext/dsent/libutil/LibUtil.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __LIBUTIL_H__
 #define __LIBUTIL_H__
 
diff --git a/ext/dsent/libutil/Log.cc b/ext/dsent/libutil/Log.cc
index cb4266bf97..d662ed9219 100644
--- a/ext/dsent/libutil/Log.cc
+++ b/ext/dsent/libutil/Log.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "Log.h"
 
 #include "Assert.h"
diff --git a/ext/dsent/libutil/Log.h b/ext/dsent/libutil/Log.h
index 9c759e702a..9aafa4e403 100644
--- a/ext/dsent/libutil/Log.h
+++ b/ext/dsent/libutil/Log.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __LOG_H__
 #define __LOG_H__
 
diff --git a/ext/dsent/libutil/Makefile b/ext/dsent/libutil/Makefile
deleted file mode 100644
index 1500283468..0000000000
--- a/ext/dsent/libutil/Makefile
+++ /dev/null
@@ -1,43 +0,0 @@
-
-# Define the directories that will be compiled
-DIRS_TO_COMPILE := . \
-
-DIRS = $(patsubst %,$(CURDIR)/%,$(DIRS_TO_COMPILE))
-
-SRCS = $(foreach dir, $(DIRS), $(wildcard $(dir)/*.cc))
-
-OBJS = $(SRCS:%.cc=%.o)
-
-DEF_FLAGS = 
-
-ifdef LIBUTIL_IS_LOG
-	LIBUTIL_IS_LOG = true
-else
-	LIBUTIL_IS_LOG = false
-endif
-DEF_FLAGS += -DLIBUTIL_IS_LOG=$(LIBUTIL_IS_LOG)
-
-INCLUDE_FLAGS = $(foreach dir, $(DIRS), -I$(dir))
-OPT_FLAGS = -O2 -g 
-WARN_FLAGS = -pedantic -Wall -W -Wextra -Werror
-CXXFLAGS = $(OPT_FLAGS) $(WARN_FLAGS) $(INCLUDE_FLAGS) $(DEF_FLAGS)
-
-TARGET = $(CURDIR)/libutil.a
-
-all: $(TARGET)
-
-$(TARGET): $(OBJS)
-	ar rcs $@ $^
-#$(TARGET): $(OBJS)
-#	$(CXX) $(CXXFLAGS) $^ -o $(TARGET)
-
-%.o: %.cc
-	$(CXX) $(CXXFLAGS) -c $< -o $@
-
-%/created:
-	mkdir -p $(dir $@)
-	touch $@
-
-clean:
-	$(RM) -rf $(OBJS) $(TARGET)
-
diff --git a/ext/dsent/libutil/Map.h b/ext/dsent/libutil/Map.h
index 0352c86343..7a990fc99a 100644
--- a/ext/dsent/libutil/Map.h
+++ b/ext/dsent/libutil/Map.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __MAP_H__
 #define __MAP_H__
 
diff --git a/ext/dsent/libutil/MathUtil.cc b/ext/dsent/libutil/MathUtil.cc
index 0e177b5fc3..d14e9ae709 100644
--- a/ext/dsent/libutil/MathUtil.cc
+++ b/ext/dsent/libutil/MathUtil.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "MathUtil.h"
 
 namespace LibUtil
diff --git a/ext/dsent/libutil/MathUtil.h b/ext/dsent/libutil/MathUtil.h
index 1f3341ee1c..0275b02d23 100644
--- a/ext/dsent/libutil/MathUtil.h
+++ b/ext/dsent/libutil/MathUtil.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __MATH_H__
 #define __MATH_H__
 
diff --git a/ext/dsent/libutil/OptionParser.cc b/ext/dsent/libutil/OptionParser.cc
deleted file mode 100644
index 6d2695f2df..0000000000
--- a/ext/dsent/libutil/OptionParser.cc
+++ /dev/null
@@ -1,177 +0,0 @@
-#include "OptionParser.h"
-
-#include <cstdlib>
-#include <iostream>
-
-namespace LibUtil
-{
-    using std::cout;
-    using std::cerr;
-    using std::endl;
-
-    OptionParser::OptionInfo::OptionInfo(
-            const String& var_name_,
-            bool has_arg_, 
-            const String& arg_name_, 
-            bool has_default_arg_value_,
-            const String& default_arg_value_, 
-            const String& description_
-            )
-        : m_var_name_(var_name_),
-        m_has_arg_(has_arg_), 
-        m_arg_name_(arg_name_), 
-        m_has_default_arg_value_(has_default_arg_value_),
-        m_default_arg_value_(default_arg_value_),
-        m_description_(description_)
-    {}
-
-    OptionParser::OptionInfo::~OptionInfo()
-    {
-    }
-
-    OptionParser::OptionParser()
-    {}
-
-    OptionParser::~OptionParser()
-    {
-        clearPtrMap(&m_option_infos_);
-    }
-
-    void OptionParser::addOption(
-            const String& option_name_, 
-            const String& var_name_, 
-            bool has_arg_, 
-            const String& arg_name_, 
-            bool has_default_arg_value_,
-            const String& default_arg_value_, 
-            const String& description_)
-    {
-        OptionInfo* option_info = new OptionInfo(var_name_, has_arg_, arg_name_, 
-                has_default_arg_value_, default_arg_value_, description_);
-
-        ASSERT(!m_option_infos_.keyExist(option_name_), "Option exists: " + option_name_);
-
-        // Add the option name to an array for sorting
-        m_option_names_.push_back(option_name_);
-
-        // Add option info 
-        m_option_infos_.set(option_name_, option_info);
-
-        // Set the default argument value
-        if(has_default_arg_value_)
-        {
-            set(var_name_, default_arg_value_);
-        }
-
-        return;
-    }
-
-    void OptionParser::parseArguments(int argc_, char** argv_)
-    {
-        bool is_print_options = false;
-        int arg_idx = 0;
-
-        while(arg_idx < argc_)
-        {
-            String option_name = String(argv_[arg_idx]);
-
-            // Print the options page if -help is specified
-            if(option_name == "-help")
-            {
-                is_print_options = true;
-                break;
-            }
-            else if(m_option_infos_.keyExist(option_name))
-            {
-                const OptionInfo* option_info = m_option_infos_.get(option_name);
-                const String& var_name = option_info->getVarName();
-                if(option_info->hasArg())
-                {
-                    if((arg_idx + 1) >= argc_)
-                    {
-                        cerr << "[Error] Missing argument for option: '" << option_name << "'" << endl;
-                        is_print_options = true;
-                        break;
-                    }
-
-                    String option_arg = String(argv_[arg_idx + 1]);
-                    set(var_name, option_arg);
-
-                    arg_idx += 2;
-                }
-                else
-                {
-                    // If the option does not require an argument
-                    // then set it to true
-                    set(var_name, "true");
-
-                    arg_idx += 1;
-                }
-            }
-            else
-            {
-                cerr << "[Error] Unknown option: '" << option_name << "'" << endl;
-                is_print_options = true;
-                break;
-            }
-        }
-
-        // Check if all required options are set (the ones without default values)
-        vector<String>::const_iterator it;
-        for(it = m_option_names_.begin(); it != m_option_names_.end(); ++it)
-        {
-            const String& option_name = *it;
-            const OptionInfo* option_info = m_option_infos_.get(option_name);
-
-            if(!option_info->hasDefaultArgValue())
-            {
-                const String& var_name = option_info->getVarName();
-                if(!keyExist(var_name))
-                {
-                    cerr << "[Error] Missing required option: '" << option_name << "'" << endl;
-                    is_print_options = true;
-                }
-            }
-        }
-
-        if(is_print_options)
-        {
-            printOptions();
-            exit(0);
-        }
-        return;
-    }
-
-    void OptionParser::printOptions() const
-    {
-        cout << endl;
-        cout << "Available options:" << endl;
-        cout << "==================" << endl << endl;
-
-        vector<String>::const_iterator it;
-        for(it = m_option_names_.begin(); it != m_option_names_.end(); ++it)
-        {
-            const String& option_name = *it;
-            const OptionInfo* option_info = m_option_infos_.get(option_name);
-
-            cout << option_name;
-            if(option_info->hasArg())
-            {
-                cout << " <" << option_info->getArgName() << ">";
-            }
-            cout << endl;
-
-            cout << "    " << option_info->getDescription() << endl;
-            if(option_info->hasArg() && option_info->hasDefaultArgValue())
-            {
-                cout << "    " << "Default: " << option_info->getDefaultArgValue() << endl;
-            }
-            cout << endl;
-        }
-        cout << "-help" << endl;
-        cout << "    " << "Print this page" << endl;
-        cout << endl;
-        return;
-    }
-
-} // namespace LibUtil
diff --git a/ext/dsent/libutil/OptionParser.h b/ext/dsent/libutil/OptionParser.h
deleted file mode 100644
index b98012a80f..0000000000
--- a/ext/dsent/libutil/OptionParser.h
+++ /dev/null
@@ -1,57 +0,0 @@
-#ifndef __LIBUTIL_OPTION_PARSER_H__
-#define __LIBUTIL_OPTION_PARSER_H__
-
-#include <vector>
-
-#include "Map.h"
-
-namespace LibUtil
-{
-    using std::vector;
-
-    // Simple option parser
-    class OptionParser : public StringMap
-    {
-        private:
-            class OptionInfo
-            {
-                public:
-                    OptionInfo(const String& var_name_, bool has_arg_, const String& arg_name_, bool has_default_arg_value_, const String& default_arg_value_, const String& description_);
-                    ~OptionInfo();
-
-                public:
-                    inline const String& getVarName() const { return m_var_name_; }
-                    inline bool hasArg() const { return m_has_arg_; }
-                    inline const String& getArgName() const { return m_arg_name_; }
-                    inline bool hasDefaultArgValue() const { return m_has_default_arg_value_; }
-                    inline const String& getDefaultArgValue() const { return m_default_arg_value_; }
-                    inline const String& getDescription() const { return m_description_; }
-
-                private:
-                    String m_var_name_;
-                    bool m_has_arg_;
-                    String m_arg_name_;
-                    bool m_has_default_arg_value_;
-                    String m_default_arg_value_;
-                    String m_description_;
-            }; // class Option
-
-        public:
-            OptionParser();
-            virtual ~OptionParser();
-
-        public:
-            void addOption(const String& option_name_, const String& var_name_, bool has_arg_, const String& arg_name_, bool has_default_arg_value_, const String& default_arg_value_, const String& description_);
-
-            void parseArguments(int argc_, char** argv_);
-
-            void printOptions() const;
-
-        protected:
-            vector<String> m_option_names_;
-            Map<OptionInfo*> m_option_infos_;
-    }; // class OptionParser
-} // LibUtil
-
-#endif // __LIBUTIL_OPTION_PARSER_H__
-
diff --git a/ext/dsent/libutil/String.cc b/ext/dsent/libutil/String.cc
index 146e9f824e..472be802ab 100644
--- a/ext/dsent/libutil/String.cc
+++ b/ext/dsent/libutil/String.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "String.h"
 
 #include <cstdarg>
diff --git a/ext/dsent/libutil/String.h b/ext/dsent/libutil/String.h
index 95fe175652..0662a6a18c 100644
--- a/ext/dsent/libutil/String.h
+++ b/ext/dsent/libutil/String.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __STRING_H__
 #define __STRING_H__
 
diff --git a/ext/dsent/main.cc b/ext/dsent/main.cc
deleted file mode 100644
index f826829b26..0000000000
--- a/ext/dsent/main.cc
+++ /dev/null
@@ -1,10 +0,0 @@
-
-#include "DSENT.h"
-
-int main(int argc, char** argv)
-{
-    DSENT::DSENT::run(argc-1, argv+1);
-
-    return 0;
-}
-
diff --git a/ext/dsent/model/ElectricalModel.cc b/ext/dsent/model/ElectricalModel.cc
index 469e26c9ee..8f2cc92722 100644
--- a/ext/dsent/model/ElectricalModel.cc
+++ b/ext/dsent/model/ElectricalModel.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/ElectricalModel.h"
 
 #include "model/PortInfo.h"
diff --git a/ext/dsent/model/ElectricalModel.h b/ext/dsent/model/ElectricalModel.h
index 15dfefd787..f85a7cb97b 100644
--- a/ext/dsent/model/ElectricalModel.h
+++ b/ext/dsent/model/ElectricalModel.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICALMODEL_H__
 #define __DSENT_MODEL_ELECTRICALMODEL_H__
 
diff --git a/ext/dsent/model/EventInfo.cc b/ext/dsent/model/EventInfo.cc
index 6bbe781e5c..f48c18038d 100644
--- a/ext/dsent/model/EventInfo.cc
+++ b/ext/dsent/model/EventInfo.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/EventInfo.h"
 
 #include "model/PortInfo.h"
diff --git a/ext/dsent/model/EventInfo.h b/ext/dsent/model/EventInfo.h
index 646a6e18ca..0ca0530379 100644
--- a/ext/dsent/model/EventInfo.h
+++ b/ext/dsent/model/EventInfo.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_EVENT_INFO_H__
 #define __DSENT_MODEL_EVENT_INFO_H__
 
diff --git a/ext/dsent/model/Model.cc b/ext/dsent/model/Model.cc
index 5a7bfe391e..1d856a9b4e 100644
--- a/ext/dsent/model/Model.cc
+++ b/ext/dsent/model/Model.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/Model.h"
 
 #include <vector>
diff --git a/ext/dsent/model/Model.h b/ext/dsent/model/Model.h
index 9e516d5845..9508b5c925 100644
--- a/ext/dsent/model/Model.h
+++ b/ext/dsent/model/Model.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_MODEL_H__
 #define __DSENT_MODEL_MODEL_H__
 
diff --git a/ext/dsent/model/ModelGen.cc b/ext/dsent/model/ModelGen.cc
index 06957d6fdf..a5cdb9d021 100644
--- a/ext/dsent/model/ModelGen.cc
+++ b/ext/dsent/model/ModelGen.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/ModelGen.h"
 
 #include <iostream>
diff --git a/ext/dsent/model/ModelGen.h b/ext/dsent/model/ModelGen.h
index c11f435d5e..4262b3dc75 100644
--- a/ext/dsent/model/ModelGen.h
+++ b/ext/dsent/model/ModelGen.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_MODELGEN_H__
 #define __DSENT_MODEL_MODELGEN_H__
 
diff --git a/ext/dsent/model/OpticalModel.cc b/ext/dsent/model/OpticalModel.cc
index 7236d6bdae..48e7cedfea 100644
--- a/ext/dsent/model/OpticalModel.cc
+++ b/ext/dsent/model/OpticalModel.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/OpticalModel.h"
 
 #include "model/PortInfo.h"
diff --git a/ext/dsent/model/OpticalModel.h b/ext/dsent/model/OpticalModel.h
index 0b4f27d37a..1c17af0533 100644
--- a/ext/dsent/model/OpticalModel.h
+++ b/ext/dsent/model/OpticalModel.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICALMODEL_H__
 #define __DSENT_MODEL_OPTICALMODEL_H__
 
diff --git a/ext/dsent/model/PortInfo.cc b/ext/dsent/model/PortInfo.cc
index fd859fc7b7..bce0842bbf 100644
--- a/ext/dsent/model/PortInfo.cc
+++ b/ext/dsent/model/PortInfo.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/PortInfo.h"
 
 namespace DSENT
diff --git a/ext/dsent/model/PortInfo.h b/ext/dsent/model/PortInfo.h
index 68cd5dc19a..fcd24f47f4 100644
--- a/ext/dsent/model/PortInfo.h
+++ b/ext/dsent/model/PortInfo.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_PORT_INFO_H__
 #define __DSENT_MODEL_PORT_INFO_H__
 
diff --git a/ext/dsent/model/TransitionInfo.cc b/ext/dsent/model/TransitionInfo.cc
index ac44020602..3daab85df7 100644
--- a/ext/dsent/model/TransitionInfo.cc
+++ b/ext/dsent/model/TransitionInfo.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/TransitionInfo.h"
 
 namespace DSENT
diff --git a/ext/dsent/model/TransitionInfo.h b/ext/dsent/model/TransitionInfo.h
index 6f00cb86ab..561d4e7b44 100644
--- a/ext/dsent/model/TransitionInfo.h
+++ b/ext/dsent/model/TransitionInfo.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_TRANSITION_INFO_H__
 #define __DSENT_MODEL_TRANSITION_INFO_H__
 
diff --git a/ext/dsent/model/electrical/BarrelShifter.cc b/ext/dsent/model/electrical/BarrelShifter.cc
index b951fc566b..4f6277dd59 100644
--- a/ext/dsent/model/electrical/BarrelShifter.cc
+++ b/ext/dsent/model/electrical/BarrelShifter.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/BarrelShifter.h"
 #include "model/electrical/Multiplexer.h"
 
diff --git a/ext/dsent/model/electrical/BarrelShifter.h b/ext/dsent/model/electrical/BarrelShifter.h
index e26ca9e914..3b110ab69e 100644
--- a/ext/dsent/model/electrical/BarrelShifter.h
+++ b/ext/dsent/model/electrical/BarrelShifter.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_BARRELSHIFTER_H__
 #define __DSENT_MODEL_ELECTRICAL_BARRELSHIFTER_H__
 
diff --git a/ext/dsent/model/electrical/BroadcastHTree.cc b/ext/dsent/model/electrical/BroadcastHTree.cc
index efac128e76..527da35bda 100644
--- a/ext/dsent/model/electrical/BroadcastHTree.cc
+++ b/ext/dsent/model/electrical/BroadcastHTree.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/BroadcastHTree.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/electrical/BroadcastHTree.h b/ext/dsent/model/electrical/BroadcastHTree.h
index f2c8d407b2..e325d4da6d 100644
--- a/ext/dsent/model/electrical/BroadcastHTree.h
+++ b/ext/dsent/model/electrical/BroadcastHTree.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_BROADCAST_HTREE_H__
 #define __DSENT_MODEL_ELECTRICAL_BROADCAST_HTREE_H__
 
diff --git a/ext/dsent/model/electrical/DFFRAM.cc b/ext/dsent/model/electrical/DFFRAM.cc
index 604aead2fd..59386ccaaf 100644
--- a/ext/dsent/model/electrical/DFFRAM.cc
+++ b/ext/dsent/model/electrical/DFFRAM.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/DFFRAM.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/electrical/DFFRAM.h b/ext/dsent/model/electrical/DFFRAM.h
index 0e7626ecdb..6a18fad372 100644
--- a/ext/dsent/model/electrical/DFFRAM.h
+++ b/ext/dsent/model/electrical/DFFRAM.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_DFFRAM_H__
 #define __DSENT_MODEL_ELECTRICAL_DFFRAM_H__
 
diff --git a/ext/dsent/model/electrical/Decoder.cc b/ext/dsent/model/electrical/Decoder.cc
index 7629bf8b2a..7d84c3e0bc 100644
--- a/ext/dsent/model/electrical/Decoder.cc
+++ b/ext/dsent/model/electrical/Decoder.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/Decoder.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/electrical/Decoder.h b/ext/dsent/model/electrical/Decoder.h
index 3c09fc4ef4..a687f57cba 100644
--- a/ext/dsent/model/electrical/Decoder.h
+++ b/ext/dsent/model/electrical/Decoder.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_DECODER_H__
 #define __DSENT_MODEL_ELECTRICAL_DECODER_H__
 
diff --git a/ext/dsent/model/electrical/DemuxTreeDeserializer.cc b/ext/dsent/model/electrical/DemuxTreeDeserializer.cc
index 4d74e8db26..382bd37fa3 100644
--- a/ext/dsent/model/electrical/DemuxTreeDeserializer.cc
+++ b/ext/dsent/model/electrical/DemuxTreeDeserializer.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/DemuxTreeDeserializer.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/electrical/DemuxTreeDeserializer.h b/ext/dsent/model/electrical/DemuxTreeDeserializer.h
index 2166141934..a5426b7d5b 100644
--- a/ext/dsent/model/electrical/DemuxTreeDeserializer.h
+++ b/ext/dsent/model/electrical/DemuxTreeDeserializer.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_MULTIPHASEDESERIALIZER_H__
 #define __DSENT_MODEL_ELECTRICAL_MULTIPHASEDESERIALIZER_H__
 
diff --git a/ext/dsent/model/electrical/MatrixArbiter.cc b/ext/dsent/model/electrical/MatrixArbiter.cc
index 7f72abd634..e3a9906de5 100644
--- a/ext/dsent/model/electrical/MatrixArbiter.cc
+++ b/ext/dsent/model/electrical/MatrixArbiter.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/MatrixArbiter.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/electrical/MatrixArbiter.h b/ext/dsent/model/electrical/MatrixArbiter.h
index 59a6786ab0..7cc5faacb6 100644
--- a/ext/dsent/model/electrical/MatrixArbiter.h
+++ b/ext/dsent/model/electrical/MatrixArbiter.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_MATRIX_ARBITER_H__
 #define __DSENT_MODEL_ELECTRICAL_MATRIX_ARBITER_H__
 
diff --git a/ext/dsent/model/electrical/Multiplexer.cc b/ext/dsent/model/electrical/Multiplexer.cc
index f51f43b4c2..49399657c1 100644
--- a/ext/dsent/model/electrical/Multiplexer.cc
+++ b/ext/dsent/model/electrical/Multiplexer.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/Multiplexer.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/electrical/Multiplexer.h b/ext/dsent/model/electrical/Multiplexer.h
index 845798b18f..59cde144af 100644
--- a/ext/dsent/model/electrical/Multiplexer.h
+++ b/ext/dsent/model/electrical/Multiplexer.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_MULTIPLEXER_H__
 #define __DSENT_MODEL_ELECTRICAL_MULTIPLEXER_H__
 
diff --git a/ext/dsent/model/electrical/MultiplexerCrossbar.cc b/ext/dsent/model/electrical/MultiplexerCrossbar.cc
index 7400d5ed23..ec3bf3161c 100644
--- a/ext/dsent/model/electrical/MultiplexerCrossbar.cc
+++ b/ext/dsent/model/electrical/MultiplexerCrossbar.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/MultiplexerCrossbar.h"
 
 #include <vector>
diff --git a/ext/dsent/model/electrical/MultiplexerCrossbar.h b/ext/dsent/model/electrical/MultiplexerCrossbar.h
index e7f0920616..9a63454fc0 100644
--- a/ext/dsent/model/electrical/MultiplexerCrossbar.h
+++ b/ext/dsent/model/electrical/MultiplexerCrossbar.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_MULTIPLEXER_CROSSBAR_H__
 #define __DSENT_MODEL_ELECTRICAL_MULTIPLEXER_CROSSBAR_H__
 
diff --git a/ext/dsent/model/electrical/MuxTreeSerializer.cc b/ext/dsent/model/electrical/MuxTreeSerializer.cc
index 8f3b92122f..3c0d65d87b 100644
--- a/ext/dsent/model/electrical/MuxTreeSerializer.cc
+++ b/ext/dsent/model/electrical/MuxTreeSerializer.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/MuxTreeSerializer.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/electrical/MuxTreeSerializer.h b/ext/dsent/model/electrical/MuxTreeSerializer.h
index f56cccc4fd..b7b0cdd436 100644
--- a/ext/dsent/model/electrical/MuxTreeSerializer.h
+++ b/ext/dsent/model/electrical/MuxTreeSerializer.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_MUXTREESERIALIZER_H__
 #define __DSENT_MODEL_ELECTRICAL_MUXTREESERIALIZER_H__
 
diff --git a/ext/dsent/model/electrical/OR.cc b/ext/dsent/model/electrical/OR.cc
index d948ff0865..410e71c20f 100644
--- a/ext/dsent/model/electrical/OR.cc
+++ b/ext/dsent/model/electrical/OR.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/OR.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/electrical/OR.h b/ext/dsent/model/electrical/OR.h
index b8304799cb..a0fc71c17f 100644
--- a/ext/dsent/model/electrical/OR.h
+++ b/ext/dsent/model/electrical/OR.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_OR_H__
 #define __DSENT_MODEL_ELECTRICAL_OR_H__
 
diff --git a/ext/dsent/model/electrical/RepeatedLink.cc b/ext/dsent/model/electrical/RepeatedLink.cc
index 08a40e4329..94b9772ef3 100644
--- a/ext/dsent/model/electrical/RepeatedLink.cc
+++ b/ext/dsent/model/electrical/RepeatedLink.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/RepeatedLink.h"
 
 #include "model/PortInfo.h"
diff --git a/ext/dsent/model/electrical/RepeatedLink.h b/ext/dsent/model/electrical/RepeatedLink.h
index 1cd8e34125..8460b02a17 100644
--- a/ext/dsent/model/electrical/RepeatedLink.h
+++ b/ext/dsent/model/electrical/RepeatedLink.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_REPEATED_LINK_H__
 #define __DSENT_MODEL_ELECTRICAL_REPEATED_LINK_H__
 
diff --git a/ext/dsent/model/electrical/RippleAdder.cc b/ext/dsent/model/electrical/RippleAdder.cc
index 779cd4798b..7a859f832f 100644
--- a/ext/dsent/model/electrical/RippleAdder.cc
+++ b/ext/dsent/model/electrical/RippleAdder.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/RippleAdder.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/electrical/RippleAdder.h b/ext/dsent/model/electrical/RippleAdder.h
index 6f5f710721..e2127c9fb1 100644
--- a/ext/dsent/model/electrical/RippleAdder.h
+++ b/ext/dsent/model/electrical/RippleAdder.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_RIPPLE_ADDER_H__
 #define __DSENT_MODEL_ELECTRICAL_RIPPLE_ADDER_H__
 
diff --git a/ext/dsent/model/electrical/SeparableAllocator.cc b/ext/dsent/model/electrical/SeparableAllocator.cc
index e0965cbe91..ae59ef7c8d 100644
--- a/ext/dsent/model/electrical/SeparableAllocator.cc
+++ b/ext/dsent/model/electrical/SeparableAllocator.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/SeparableAllocator.h"
 
 #include "model/ModelGen.h"
diff --git a/ext/dsent/model/electrical/SeparableAllocator.h b/ext/dsent/model/electrical/SeparableAllocator.h
index 21519bf38a..349d48ee1c 100644
--- a/ext/dsent/model/electrical/SeparableAllocator.h
+++ b/ext/dsent/model/electrical/SeparableAllocator.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_SEPARABLE_ALLOCATOR_H__
 #define __DSENT_MODEL_ELECTRICAL_SEPARABLE_ALLOCATOR_H__
 
diff --git a/ext/dsent/model/electrical/TestModel.cc b/ext/dsent/model/electrical/TestModel.cc
index 24f1fab43c..d9c8e38f1d 100644
--- a/ext/dsent/model/electrical/TestModel.cc
+++ b/ext/dsent/model/electrical/TestModel.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/TestModel.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/electrical/TestModel.h b/ext/dsent/model/electrical/TestModel.h
index 5e07ea30c1..43e99761d8 100644
--- a/ext/dsent/model/electrical/TestModel.h
+++ b/ext/dsent/model/electrical/TestModel.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_TESTMODEL_H__
 #define __DSENT_MODEL_ELECTRICAL_TESTMODEL_H__
 
diff --git a/ext/dsent/model/electrical/router/Router.cc b/ext/dsent/model/electrical/router/Router.cc
index c079bd1d51..b8c9552cb2 100644
--- a/ext/dsent/model/electrical/router/Router.cc
+++ b/ext/dsent/model/electrical/router/Router.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/router/Router.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/electrical/router/Router.h b/ext/dsent/model/electrical/router/Router.h
index c2c1df3bcc..8c008bfcbd 100644
--- a/ext/dsent/model/electrical/router/Router.h
+++ b/ext/dsent/model/electrical/router/Router.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_ROUTER_ROUTER_H__
 #define __DSENT_MODEL_ELECTRICAL_ROUTER_ROUTER_H__
 
diff --git a/ext/dsent/model/electrical/router/RouterInputPort.cc b/ext/dsent/model/electrical/router/RouterInputPort.cc
index b698d3d80a..994c572bd2 100644
--- a/ext/dsent/model/electrical/router/RouterInputPort.cc
+++ b/ext/dsent/model/electrical/router/RouterInputPort.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/router/RouterInputPort.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/electrical/router/RouterInputPort.h b/ext/dsent/model/electrical/router/RouterInputPort.h
index 1d326a5cf1..b76ba9486f 100644
--- a/ext/dsent/model/electrical/router/RouterInputPort.h
+++ b/ext/dsent/model/electrical/router/RouterInputPort.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_ROUTER_ROUTER_INPUT_PORT_H__
 #define __DSENT_MODEL_ELECTRICAL_ROUTER_ROUTER_INPUT_PORT_H__
 
diff --git a/ext/dsent/model/electrical/router/RouterSwitchAllocator.cc b/ext/dsent/model/electrical/router/RouterSwitchAllocator.cc
index 92e5431b15..ac36524dba 100644
--- a/ext/dsent/model/electrical/router/RouterSwitchAllocator.cc
+++ b/ext/dsent/model/electrical/router/RouterSwitchAllocator.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/electrical/router/RouterSwitchAllocator.h"
 
 #include "model/PortInfo.h"
diff --git a/ext/dsent/model/electrical/router/RouterSwitchAllocator.h b/ext/dsent/model/electrical/router/RouterSwitchAllocator.h
index 8b18e199ff..5cb8dbe92f 100644
--- a/ext/dsent/model/electrical/router/RouterSwitchAllocator.h
+++ b/ext/dsent/model/electrical/router/RouterSwitchAllocator.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_ROUTER_ROUTER_SWITCH_ALLOCATOR_H__
 #define __DSENT_MODEL_ELECTRICAL_ROUTER_ROUTER_SWITCH_ALLOCATOR_H__
 
diff --git a/ext/dsent/model/network/ElectricalClos.cc b/ext/dsent/model/network/ElectricalClos.cc
index 94781d8867..bf0c508e24 100644
--- a/ext/dsent/model/network/ElectricalClos.cc
+++ b/ext/dsent/model/network/ElectricalClos.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/network/ElectricalClos.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/network/ElectricalClos.h b/ext/dsent/model/network/ElectricalClos.h
index c6a1f80632..83a3701d99 100644
--- a/ext/dsent/model/network/ElectricalClos.h
+++ b/ext/dsent/model/network/ElectricalClos.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_NETWORK_ELECTRICAL_CLOS_H__
 #define __DSENT_MODEL_NETWORK_ELECTRICAL_CLOS_H__
 
diff --git a/ext/dsent/model/network/ElectricalMesh.cc b/ext/dsent/model/network/ElectricalMesh.cc
index 5ad544eb51..c917fdb815 100644
--- a/ext/dsent/model/network/ElectricalMesh.cc
+++ b/ext/dsent/model/network/ElectricalMesh.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/network/ElectricalMesh.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/network/ElectricalMesh.h b/ext/dsent/model/network/ElectricalMesh.h
index de89a8f801..1cc7641a80 100644
--- a/ext/dsent/model/network/ElectricalMesh.h
+++ b/ext/dsent/model/network/ElectricalMesh.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_NETWORK_ELECTRICAL_MESH_H__
 #define __DSENT_MODEL_NETWORK_ELECTRICAL_MESH_H__
 
diff --git a/ext/dsent/model/network/PhotonicClos.cc b/ext/dsent/model/network/PhotonicClos.cc
index 1b0868ebc5..77f7a671d3 100644
--- a/ext/dsent/model/network/PhotonicClos.cc
+++ b/ext/dsent/model/network/PhotonicClos.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/network/PhotonicClos.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/network/PhotonicClos.h b/ext/dsent/model/network/PhotonicClos.h
index 814885dd76..ca2a7b35db 100644
--- a/ext/dsent/model/network/PhotonicClos.h
+++ b/ext/dsent/model/network/PhotonicClos.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_NETWORK_PHOTONIC_CLOS_H__
 #define __DSENT_MODEL_NETWORK_PHOTONIC_CLOS_H__
 
diff --git a/ext/dsent/model/optical/GatedLaserSource.cc b/ext/dsent/model/optical/GatedLaserSource.cc
index e32474dafa..dcd6ea38d4 100644
--- a/ext/dsent/model/optical/GatedLaserSource.cc
+++ b/ext/dsent/model/optical/GatedLaserSource.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/optical/GatedLaserSource.h"
 
 #include "model/optical_graph/OpticalWaveguide.h"
diff --git a/ext/dsent/model/optical/GatedLaserSource.h b/ext/dsent/model/optical/GatedLaserSource.h
index b6413b0475..0770c91079 100644
--- a/ext/dsent/model/optical/GatedLaserSource.h
+++ b/ext/dsent/model/optical/GatedLaserSource.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICAL_GATEDLASERSOURCE_H__
 #define __DSENT_MODEL_OPTICAL_GATEDLASERSOURCE_H__
 
diff --git a/ext/dsent/model/optical/LaserSource.cc b/ext/dsent/model/optical/LaserSource.cc
index e55de8cf70..549698e31a 100644
--- a/ext/dsent/model/optical/LaserSource.cc
+++ b/ext/dsent/model/optical/LaserSource.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/optical/LaserSource.h"
 
 #include "model/optical_graph/OpticalWaveguide.h"
diff --git a/ext/dsent/model/optical/LaserSource.h b/ext/dsent/model/optical/LaserSource.h
index 92c7658d59..2d8698ac48 100644
--- a/ext/dsent/model/optical/LaserSource.h
+++ b/ext/dsent/model/optical/LaserSource.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICAL_LASERSOURCE_H__
 #define __DSENT_MODEL_OPTICAL_LASERSOURCE_H__
 
diff --git a/ext/dsent/model/optical/OpticalLinkBackendRx.cc b/ext/dsent/model/optical/OpticalLinkBackendRx.cc
index 3a65cee629..2d75875cd9 100644
--- a/ext/dsent/model/optical/OpticalLinkBackendRx.cc
+++ b/ext/dsent/model/optical/OpticalLinkBackendRx.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/optical/OpticalLinkBackendRx.h"
 
 #include "util/Constants.h"
diff --git a/ext/dsent/model/optical/OpticalLinkBackendRx.h b/ext/dsent/model/optical/OpticalLinkBackendRx.h
index 19f3966642..b225f7f392 100644
--- a/ext/dsent/model/optical/OpticalLinkBackendRx.h
+++ b/ext/dsent/model/optical/OpticalLinkBackendRx.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICAL_OPTICALLINKBACKENDRX_H__
 #define __DSENT_MODEL_OPTICAL_OPTICALLINKBACKENDRX_H__
 
diff --git a/ext/dsent/model/optical/OpticalLinkBackendTx.cc b/ext/dsent/model/optical/OpticalLinkBackendTx.cc
index 18d86cfe70..0ceb8033a3 100644
--- a/ext/dsent/model/optical/OpticalLinkBackendTx.cc
+++ b/ext/dsent/model/optical/OpticalLinkBackendTx.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/optical/OpticalLinkBackendTx.h"
 
 #include "util/Constants.h"
diff --git a/ext/dsent/model/optical/OpticalLinkBackendTx.h b/ext/dsent/model/optical/OpticalLinkBackendTx.h
index a3e5964034..355ea7505e 100644
--- a/ext/dsent/model/optical/OpticalLinkBackendTx.h
+++ b/ext/dsent/model/optical/OpticalLinkBackendTx.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICAL_OPTICALLINKBACKENDTX_H__
 #define __DSENT_MODEL_OPTICAL_OPTICALLINKBACKENDTX_H__
 
diff --git a/ext/dsent/model/optical/OpticalTestModel.cc b/ext/dsent/model/optical/OpticalTestModel.cc
index c821c48415..0af1171330 100644
--- a/ext/dsent/model/optical/OpticalTestModel.cc
+++ b/ext/dsent/model/optical/OpticalTestModel.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/optical/OpticalTestModel.h"
 #include "model/optical_graph/OpticalGraph.h"
 #include "model/optical_graph/OpticalWaveguide.h"
diff --git a/ext/dsent/model/optical/OpticalTestModel.h b/ext/dsent/model/optical/OpticalTestModel.h
index 06a80e9558..279625b430 100644
--- a/ext/dsent/model/optical/OpticalTestModel.h
+++ b/ext/dsent/model/optical/OpticalTestModel.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICAL_OPTICALTESTMODEL_H__
 #define __DSENT_MODEL_OPTICAL_OPTICALTESTMODEL_H__
 
diff --git a/ext/dsent/model/optical/RingDetector.cc b/ext/dsent/model/optical/RingDetector.cc
index 4baf2f68f7..010e458d88 100644
--- a/ext/dsent/model/optical/RingDetector.cc
+++ b/ext/dsent/model/optical/RingDetector.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/optical/RingDetector.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/optical/RingDetector.h b/ext/dsent/model/optical/RingDetector.h
index e18b2fe750..e97bef84d4 100644
--- a/ext/dsent/model/optical/RingDetector.h
+++ b/ext/dsent/model/optical/RingDetector.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICAL_RINGDETECTOR_H__
 #define __DSENT_MODEL_OPTICAL_RINGDETECTOR_H__
 
diff --git a/ext/dsent/model/optical/RingFilter.cc b/ext/dsent/model/optical/RingFilter.cc
index 5f0bd5b40d..e591b48689 100644
--- a/ext/dsent/model/optical/RingFilter.cc
+++ b/ext/dsent/model/optical/RingFilter.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/optical/RingFilter.h"
 
 #include "model/optical_graph/OpticalWaveguide.h"
diff --git a/ext/dsent/model/optical/RingFilter.h b/ext/dsent/model/optical/RingFilter.h
index 87fcb8c04c..c5b213d921 100644
--- a/ext/dsent/model/optical/RingFilter.h
+++ b/ext/dsent/model/optical/RingFilter.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICAL_RINGFILTER_H__
 #define __DSENT_MODEL_OPTICAL_RINGFILTER_H__
 
diff --git a/ext/dsent/model/optical/RingModulator.cc b/ext/dsent/model/optical/RingModulator.cc
index 8fe320fbdb..8447f188be 100644
--- a/ext/dsent/model/optical/RingModulator.cc
+++ b/ext/dsent/model/optical/RingModulator.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/optical/RingModulator.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/optical/RingModulator.h b/ext/dsent/model/optical/RingModulator.h
index bbfa7f4ee5..012245c596 100644
--- a/ext/dsent/model/optical/RingModulator.h
+++ b/ext/dsent/model/optical/RingModulator.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICAL_RINGMODULATOR_H__
 #define __DSENT_MODEL_OPTICAL_RINGMODULATOR_H__
 
diff --git a/ext/dsent/model/optical/SWMRLink.cc b/ext/dsent/model/optical/SWMRLink.cc
index 56d2d70b33..579511146a 100644
--- a/ext/dsent/model/optical/SWMRLink.cc
+++ b/ext/dsent/model/optical/SWMRLink.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/optical/SWMRLink.h"
 
 #include "model/PortInfo.h"
diff --git a/ext/dsent/model/optical/SWMRLink.h b/ext/dsent/model/optical/SWMRLink.h
index a2618358ce..e03f1f29c4 100644
--- a/ext/dsent/model/optical/SWMRLink.h
+++ b/ext/dsent/model/optical/SWMRLink.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICAL_SWMRLINK_H__
 #define __DSENT_MODEL_OPTICAL_SWMRLINK_H__
 
diff --git a/ext/dsent/model/optical/SWSRLink.cc b/ext/dsent/model/optical/SWSRLink.cc
index 88973e392e..e59758f020 100644
--- a/ext/dsent/model/optical/SWSRLink.cc
+++ b/ext/dsent/model/optical/SWSRLink.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/optical/SWSRLink.h"
 
 #include "model/ModelGen.h"
diff --git a/ext/dsent/model/optical/SWSRLink.h b/ext/dsent/model/optical/SWSRLink.h
index fd6ecca73f..5a0f81de13 100644
--- a/ext/dsent/model/optical/SWSRLink.h
+++ b/ext/dsent/model/optical/SWSRLink.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICAL_SWSRLINK_H__
 #define __DSENT_MODEL_OPTICAL_SWSRLINK_H__
 
diff --git a/ext/dsent/model/optical/ThrottledLaserSource.cc b/ext/dsent/model/optical/ThrottledLaserSource.cc
index e95188b77a..5a09e5bb94 100644
--- a/ext/dsent/model/optical/ThrottledLaserSource.cc
+++ b/ext/dsent/model/optical/ThrottledLaserSource.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/optical/ThrottledLaserSource.h"
 
 #include "model/PortInfo.h"
diff --git a/ext/dsent/model/optical/ThrottledLaserSource.h b/ext/dsent/model/optical/ThrottledLaserSource.h
index 1174654197..57ab6ce9e3 100644
--- a/ext/dsent/model/optical/ThrottledLaserSource.h
+++ b/ext/dsent/model/optical/ThrottledLaserSource.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICAL_THROTTLEDLASERSOURCE_H__
 #define __DSENT_MODEL_OPTICAL_THROTTLEDLASERSOURCE_H__
 
diff --git a/ext/dsent/model/optical_graph/OpticalDetector.cc b/ext/dsent/model/optical_graph/OpticalDetector.cc
index 8de005099e..f4578b6078 100644
--- a/ext/dsent/model/optical_graph/OpticalDetector.cc
+++ b/ext/dsent/model/optical_graph/OpticalDetector.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/optical_graph/OpticalDetector.h"
 #include "model/optical_graph/OpticalReceiver.h"
diff --git a/ext/dsent/model/optical_graph/OpticalDetector.h b/ext/dsent/model/optical_graph/OpticalDetector.h
index e3994f1767..7535379cd0 100644
--- a/ext/dsent/model/optical_graph/OpticalDetector.h
+++ b/ext/dsent/model/optical_graph/OpticalDetector.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICALGRAPH_OPTICALDETECTOR_H__
 #define __DSENT_MODEL_OPTICALGRAPH_OPTICALDETECTOR_H__
 
diff --git a/ext/dsent/model/optical_graph/OpticalFilter.cc b/ext/dsent/model/optical_graph/OpticalFilter.cc
index 1bac9a8c96..c676f3cf38 100644
--- a/ext/dsent/model/optical_graph/OpticalFilter.cc
+++ b/ext/dsent/model/optical_graph/OpticalFilter.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/optical_graph/OpticalFilter.h"
 
diff --git a/ext/dsent/model/optical_graph/OpticalFilter.h b/ext/dsent/model/optical_graph/OpticalFilter.h
index e908618e45..38fd759cf6 100644
--- a/ext/dsent/model/optical_graph/OpticalFilter.h
+++ b/ext/dsent/model/optical_graph/OpticalFilter.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICALGRAPH_OPTICALFILTER_H__
 #define __DSENT_MODEL_OPTICALGRAPH_OPTICALFILTER_H__
 
diff --git a/ext/dsent/model/optical_graph/OpticalGraph.cc b/ext/dsent/model/optical_graph/OpticalGraph.cc
index 424f2bcb27..660a49e446 100644
--- a/ext/dsent/model/optical_graph/OpticalGraph.cc
+++ b/ext/dsent/model/optical_graph/OpticalGraph.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/optical_graph/OpticalGraph.h"
 
diff --git a/ext/dsent/model/optical_graph/OpticalGraph.h b/ext/dsent/model/optical_graph/OpticalGraph.h
index 43dab1bf82..f4feae116d 100644
--- a/ext/dsent/model/optical_graph/OpticalGraph.h
+++ b/ext/dsent/model/optical_graph/OpticalGraph.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICALGRAPH_OPTICALGRAPH_H__
 #define __DSENT_MODEL_OPTICALGRAPH_OPTICALGRAPH_H__
 
diff --git a/ext/dsent/model/optical_graph/OpticalLaser.cc b/ext/dsent/model/optical_graph/OpticalLaser.cc
index 8b25f90bd2..cb103a7c1d 100644
--- a/ext/dsent/model/optical_graph/OpticalLaser.cc
+++ b/ext/dsent/model/optical_graph/OpticalLaser.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/optical_graph/OpticalLaser.h"
 
diff --git a/ext/dsent/model/optical_graph/OpticalLaser.h b/ext/dsent/model/optical_graph/OpticalLaser.h
index 911517e1d4..de4490b0cf 100644
--- a/ext/dsent/model/optical_graph/OpticalLaser.h
+++ b/ext/dsent/model/optical_graph/OpticalLaser.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICALGRAPH_OPTICALLASER_H__
 #define __DSENT_MODEL_OPTICALGRAPH_OPTICALLASER_H__
 
diff --git a/ext/dsent/model/optical_graph/OpticalModulator.cc b/ext/dsent/model/optical_graph/OpticalModulator.cc
index 662560341c..2f7a2749e7 100644
--- a/ext/dsent/model/optical_graph/OpticalModulator.cc
+++ b/ext/dsent/model/optical_graph/OpticalModulator.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/optical_graph/OpticalModulator.h"
 #include "model/optical_graph/OpticalTransmitter.h"
diff --git a/ext/dsent/model/optical_graph/OpticalModulator.h b/ext/dsent/model/optical_graph/OpticalModulator.h
index 416c2a0f39..4bb14be36f 100644
--- a/ext/dsent/model/optical_graph/OpticalModulator.h
+++ b/ext/dsent/model/optical_graph/OpticalModulator.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICALGRAPH_OPTICALMODULATOR_H__
 #define __DSENT_MODEL_OPTICALGRAPH_OPTICALMODULATOR_H__
 
diff --git a/ext/dsent/model/optical_graph/OpticalNode.cc b/ext/dsent/model/optical_graph/OpticalNode.cc
index 89e034b097..e76804867d 100644
--- a/ext/dsent/model/optical_graph/OpticalNode.cc
+++ b/ext/dsent/model/optical_graph/OpticalNode.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/optical_graph/OpticalNode.h"
 
diff --git a/ext/dsent/model/optical_graph/OpticalNode.h b/ext/dsent/model/optical_graph/OpticalNode.h
index bb88d2da19..1304b34c12 100644
--- a/ext/dsent/model/optical_graph/OpticalNode.h
+++ b/ext/dsent/model/optical_graph/OpticalNode.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICALGRAPH_OPTICALNODE_H__
 #define __DSENT_MODEL_OPTICALGRAPH_OPTICALNODE_H__
 
diff --git a/ext/dsent/model/optical_graph/OpticalReceiver.h b/ext/dsent/model/optical_graph/OpticalReceiver.h
index 11c9405221..95173cacb1 100644
--- a/ext/dsent/model/optical_graph/OpticalReceiver.h
+++ b/ext/dsent/model/optical_graph/OpticalReceiver.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICALGRAPH_OPTICALRECEIVER_H__
 #define __DSENT_MODEL_OPTICALGRAPH_OPTICALRECEIVER_H__
 
diff --git a/ext/dsent/model/optical_graph/OpticalTransmitter.h b/ext/dsent/model/optical_graph/OpticalTransmitter.h
index 235d88880c..11aa623811 100644
--- a/ext/dsent/model/optical_graph/OpticalTransmitter.h
+++ b/ext/dsent/model/optical_graph/OpticalTransmitter.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICALGRAPH_OPTICALTRANSMITTER_H__
 #define __DSENT_MODEL_OPTICALGRAPH_OPTICALTRANSMITTER_H__
 
diff --git a/ext/dsent/model/optical_graph/OpticalWaveguide.cc b/ext/dsent/model/optical_graph/OpticalWaveguide.cc
index 7e35a18aa6..71cf8ef34b 100644
--- a/ext/dsent/model/optical_graph/OpticalWaveguide.cc
+++ b/ext/dsent/model/optical_graph/OpticalWaveguide.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/optical_graph/OpticalWaveguide.h"
 
diff --git a/ext/dsent/model/optical_graph/OpticalWaveguide.h b/ext/dsent/model/optical_graph/OpticalWaveguide.h
index 6fd03bcf3a..8cc9e73346 100644
--- a/ext/dsent/model/optical_graph/OpticalWaveguide.h
+++ b/ext/dsent/model/optical_graph/OpticalWaveguide.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICALGRAPH_OPTICALWAVEGUIDE_H__
 #define __DSENT_MODEL_OPTICALGRAPH_OPTICALWAVEGUIDE_H__
 
diff --git a/ext/dsent/model/optical_graph/OpticalWavelength.cc b/ext/dsent/model/optical_graph/OpticalWavelength.cc
index fa5e36f632..dd1f9b3159 100644
--- a/ext/dsent/model/optical_graph/OpticalWavelength.cc
+++ b/ext/dsent/model/optical_graph/OpticalWavelength.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/optical_graph/OpticalWavelength.h"
 #include "model/optical_graph/OpticalNode.h"
diff --git a/ext/dsent/model/optical_graph/OpticalWavelength.h b/ext/dsent/model/optical_graph/OpticalWavelength.h
index 6a5f31e9ab..bbf273f820 100644
--- a/ext/dsent/model/optical_graph/OpticalWavelength.h
+++ b/ext/dsent/model/optical_graph/OpticalWavelength.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_OPTICALGRAPH_OPTICALWAVELENGTH_H__
 #define __DSENT_MODEL_OPTICALGRAPH_OPTICALWAVELENGTH_H__
 
diff --git a/ext/dsent/model/std_cells/ADDF.cc b/ext/dsent/model/std_cells/ADDF.cc
index 99ebcdb6b0..7330016f6d 100644
--- a/ext/dsent/model/std_cells/ADDF.cc
+++ b/ext/dsent/model/std_cells/ADDF.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/std_cells/ADDF.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/std_cells/ADDF.h b/ext/dsent/model/std_cells/ADDF.h
index 03bae5d4f8..408672208e 100644
--- a/ext/dsent/model/std_cells/ADDF.h
+++ b/ext/dsent/model/std_cells/ADDF.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_STD_CELLS_ADDF_H__
 #define __DSENT_MODEL_STD_CELLS_ADDF_H__
 
diff --git a/ext/dsent/model/std_cells/AND2.cc b/ext/dsent/model/std_cells/AND2.cc
index 2113c2397a..e00854f072 100644
--- a/ext/dsent/model/std_cells/AND2.cc
+++ b/ext/dsent/model/std_cells/AND2.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/std_cells/AND2.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/std_cells/AND2.h b/ext/dsent/model/std_cells/AND2.h
index 67fe36be15..3ce6557d3e 100644
--- a/ext/dsent/model/std_cells/AND2.h
+++ b/ext/dsent/model/std_cells/AND2.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_STD_CELLS_AND2_H__
 #define __DSENT_MODEL_STD_CELLS_AND2_H__
 
diff --git a/ext/dsent/model/std_cells/BUF.cc b/ext/dsent/model/std_cells/BUF.cc
index 61c7dac4be..07eaeaafca 100644
--- a/ext/dsent/model/std_cells/BUF.cc
+++ b/ext/dsent/model/std_cells/BUF.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/std_cells/BUF.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/std_cells/BUF.h b/ext/dsent/model/std_cells/BUF.h
index 1c85b2a440..b427c0a9ca 100644
--- a/ext/dsent/model/std_cells/BUF.h
+++ b/ext/dsent/model/std_cells/BUF.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_STD_CELLS_BUF_H__
 #define __DSENT_MODEL_STD_CELLS_BUF_H__
 
diff --git a/ext/dsent/model/std_cells/CellMacros.cc b/ext/dsent/model/std_cells/CellMacros.cc
index 5b243942a8..a8a0b1c0b9 100644
--- a/ext/dsent/model/std_cells/CellMacros.cc
+++ b/ext/dsent/model/std_cells/CellMacros.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/std_cells/CellMacros.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/std_cells/CellMacros.h b/ext/dsent/model/std_cells/CellMacros.h
index ce4b544737..6c1edc9f48 100644
--- a/ext/dsent/model/std_cells/CellMacros.h
+++ b/ext/dsent/model/std_cells/CellMacros.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_STD_CELLS_CELLMACROS_H__
 #define __DSENT_MODEL_STD_CELLS_CELLMACROS_H__
 
diff --git a/ext/dsent/model/std_cells/DFFQ.cc b/ext/dsent/model/std_cells/DFFQ.cc
index 9080a7211d..7029d5d62b 100644
--- a/ext/dsent/model/std_cells/DFFQ.cc
+++ b/ext/dsent/model/std_cells/DFFQ.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/std_cells/DFFQ.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/std_cells/DFFQ.h b/ext/dsent/model/std_cells/DFFQ.h
index 699e48627a..aee916febd 100644
--- a/ext/dsent/model/std_cells/DFFQ.h
+++ b/ext/dsent/model/std_cells/DFFQ.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_STD_CELLS_DFFQ_H__
 #define __DSENT_MODEL_STD_CELLS_DFFQ_H__
 
diff --git a/ext/dsent/model/std_cells/INV.cc b/ext/dsent/model/std_cells/INV.cc
index a6ea6c4f4a..3c30e2f4cd 100644
--- a/ext/dsent/model/std_cells/INV.cc
+++ b/ext/dsent/model/std_cells/INV.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/std_cells/INV.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/std_cells/INV.h b/ext/dsent/model/std_cells/INV.h
index d81d207c63..4830685650 100644
--- a/ext/dsent/model/std_cells/INV.h
+++ b/ext/dsent/model/std_cells/INV.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_STD_CELLS_INV_H__
 #define __DSENT_MODEL_STD_CELLS_INV_H__
 
diff --git a/ext/dsent/model/std_cells/LATQ.cc b/ext/dsent/model/std_cells/LATQ.cc
index b2548d07b3..7155daea22 100644
--- a/ext/dsent/model/std_cells/LATQ.cc
+++ b/ext/dsent/model/std_cells/LATQ.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/std_cells/LATQ.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/std_cells/LATQ.h b/ext/dsent/model/std_cells/LATQ.h
index 7dcb26fd58..4edc35703e 100644
--- a/ext/dsent/model/std_cells/LATQ.h
+++ b/ext/dsent/model/std_cells/LATQ.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_STD_CELLS_LATQ_H__
 #define __DSENT_MODEL_STD_CELLS_LATQ_H__
 
diff --git a/ext/dsent/model/std_cells/MUX2.cc b/ext/dsent/model/std_cells/MUX2.cc
index 73f18f7b6c..fbb836b712 100644
--- a/ext/dsent/model/std_cells/MUX2.cc
+++ b/ext/dsent/model/std_cells/MUX2.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/std_cells/MUX2.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/std_cells/MUX2.h b/ext/dsent/model/std_cells/MUX2.h
index 63df6863ec..d847b5c7bb 100644
--- a/ext/dsent/model/std_cells/MUX2.h
+++ b/ext/dsent/model/std_cells/MUX2.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_STD_CELLS_MUX2_H__
 #define __DSENT_MODEL_STD_CELLS_MUX2_H__
 
diff --git a/ext/dsent/model/std_cells/NAND2.cc b/ext/dsent/model/std_cells/NAND2.cc
index 2599f85273..c0e02b6e31 100644
--- a/ext/dsent/model/std_cells/NAND2.cc
+++ b/ext/dsent/model/std_cells/NAND2.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/std_cells/NAND2.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/std_cells/NAND2.h b/ext/dsent/model/std_cells/NAND2.h
index 75a6436ce9..a718667370 100644
--- a/ext/dsent/model/std_cells/NAND2.h
+++ b/ext/dsent/model/std_cells/NAND2.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_STD_CELLS_NAND2_H__
 #define __DSENT_MODEL_STD_CELLS_NAND2_H__
 
diff --git a/ext/dsent/model/std_cells/NOR2.cc b/ext/dsent/model/std_cells/NOR2.cc
index dd201b956a..6cb83562bf 100644
--- a/ext/dsent/model/std_cells/NOR2.cc
+++ b/ext/dsent/model/std_cells/NOR2.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/std_cells/NOR2.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/std_cells/NOR2.h b/ext/dsent/model/std_cells/NOR2.h
index b43740717e..4f33614609 100644
--- a/ext/dsent/model/std_cells/NOR2.h
+++ b/ext/dsent/model/std_cells/NOR2.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_STD_CELLS_NOR2_H__
 #define __DSENT_MODEL_STD_CELLS_NOR2_H__
 
diff --git a/ext/dsent/model/std_cells/OR2.cc b/ext/dsent/model/std_cells/OR2.cc
index 1271ad0911..ea57ad2f4a 100644
--- a/ext/dsent/model/std_cells/OR2.cc
+++ b/ext/dsent/model/std_cells/OR2.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/std_cells/OR2.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/std_cells/OR2.h b/ext/dsent/model/std_cells/OR2.h
index 8e08131f1a..7121def1c9 100644
--- a/ext/dsent/model/std_cells/OR2.h
+++ b/ext/dsent/model/std_cells/OR2.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_STD_CELLS_OR2_H__
 #define __DSENT_MODEL_STD_CELLS_OR2_H__
 
diff --git a/ext/dsent/model/std_cells/StdCell.cc b/ext/dsent/model/std_cells/StdCell.cc
index bc95f97c35..6ff9658429 100644
--- a/ext/dsent/model/std_cells/StdCell.cc
+++ b/ext/dsent/model/std_cells/StdCell.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/std_cells/StdCell.h"
 
 #include "model/timing_graph/ElectricalNet.h"
diff --git a/ext/dsent/model/std_cells/StdCell.h b/ext/dsent/model/std_cells/StdCell.h
index 25a65768a4..1947b6c183 100644
--- a/ext/dsent/model/std_cells/StdCell.h
+++ b/ext/dsent/model/std_cells/StdCell.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_STD_CELLS_STDCELL_H__
 #define __DSENT_MODEL_STD_CELLS_STDCELL_H__
 
diff --git a/ext/dsent/model/std_cells/StdCellLib.cc b/ext/dsent/model/std_cells/StdCellLib.cc
index dfe32012bb..0d36d3e056 100644
--- a/ext/dsent/model/std_cells/StdCellLib.cc
+++ b/ext/dsent/model/std_cells/StdCellLib.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/std_cells/StdCellLib.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/std_cells/StdCellLib.h b/ext/dsent/model/std_cells/StdCellLib.h
index 74c09149e2..ed5d57d7e2 100644
--- a/ext/dsent/model/std_cells/StdCellLib.h
+++ b/ext/dsent/model/std_cells/StdCellLib.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_STD_CELLS_STDCELLLIBS_H__
 #define __DSENT_MODEL_STD_CELLS_STDCELLLIBS_H__
 
diff --git a/ext/dsent/model/std_cells/XOR2.cc b/ext/dsent/model/std_cells/XOR2.cc
index 5b57b55e5a..b0b6b99d01 100644
--- a/ext/dsent/model/std_cells/XOR2.cc
+++ b/ext/dsent/model/std_cells/XOR2.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/std_cells/XOR2.h"
 
 #include <cmath>
diff --git a/ext/dsent/model/std_cells/XOR2.h b/ext/dsent/model/std_cells/XOR2.h
index 95f9a54b31..ea5040133f 100644
--- a/ext/dsent/model/std_cells/XOR2.h
+++ b/ext/dsent/model/std_cells/XOR2.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_STD_CELLS_XOR2_H__
 #define __DSENT_MODEL_STD_CELLS_XOR2_H__
 
diff --git a/ext/dsent/model/timing_graph/ElectricalDelay.cc b/ext/dsent/model/timing_graph/ElectricalDelay.cc
index e87a77be9d..ef6a34bb41 100644
--- a/ext/dsent/model/timing_graph/ElectricalDelay.cc
+++ b/ext/dsent/model/timing_graph/ElectricalDelay.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/timing_graph/ElectricalDelay.h"
 #include "model/timing_graph/ElectricalLoad.h"
diff --git a/ext/dsent/model/timing_graph/ElectricalDelay.h b/ext/dsent/model/timing_graph/ElectricalDelay.h
index d3d3d3a8c9..60a8d9e5e6 100644
--- a/ext/dsent/model/timing_graph/ElectricalDelay.h
+++ b/ext/dsent/model/timing_graph/ElectricalDelay.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_DELAY_H__
 #define __DSENT_MODEL_ELECTRICAL_DELAY_H__
 
diff --git a/ext/dsent/model/timing_graph/ElectricalDriver.cc b/ext/dsent/model/timing_graph/ElectricalDriver.cc
index 9456ef067a..e3f6ae1044 100644
--- a/ext/dsent/model/timing_graph/ElectricalDriver.cc
+++ b/ext/dsent/model/timing_graph/ElectricalDriver.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/timing_graph/ElectricalDriver.h"
 #include "model/timing_graph/ElectricalNet.h"
diff --git a/ext/dsent/model/timing_graph/ElectricalDriver.h b/ext/dsent/model/timing_graph/ElectricalDriver.h
index 604206b5d0..04458a37d4 100644
--- a/ext/dsent/model/timing_graph/ElectricalDriver.h
+++ b/ext/dsent/model/timing_graph/ElectricalDriver.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_DRIVER_H__
 #define __DSENT_MODEL_ELECTRICAL_DRIVER_H__
 
diff --git a/ext/dsent/model/timing_graph/ElectricalDriverMultiplier.cc b/ext/dsent/model/timing_graph/ElectricalDriverMultiplier.cc
index bf8600fd83..c3c9d00673 100644
--- a/ext/dsent/model/timing_graph/ElectricalDriverMultiplier.cc
+++ b/ext/dsent/model/timing_graph/ElectricalDriverMultiplier.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/timing_graph/ElectricalDriverMultiplier.h"
 #include "model/timing_graph/ElectricalLoad.h"
diff --git a/ext/dsent/model/timing_graph/ElectricalDriverMultiplier.h b/ext/dsent/model/timing_graph/ElectricalDriverMultiplier.h
index 62b14569f3..ee01c42217 100644
--- a/ext/dsent/model/timing_graph/ElectricalDriverMultiplier.h
+++ b/ext/dsent/model/timing_graph/ElectricalDriverMultiplier.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_DRIVER_MULTIPLIER_H__
 #define __DSENT_MODEL_ELECTRICAL_DRIVER_MULTIPLIER_H__
 
diff --git a/ext/dsent/model/timing_graph/ElectricalLoad.cc b/ext/dsent/model/timing_graph/ElectricalLoad.cc
index a20d6459da..dfacc0fab1 100644
--- a/ext/dsent/model/timing_graph/ElectricalLoad.cc
+++ b/ext/dsent/model/timing_graph/ElectricalLoad.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/timing_graph/ElectricalLoad.h"
 #include "model/ElectricalModel.h"
diff --git a/ext/dsent/model/timing_graph/ElectricalLoad.h b/ext/dsent/model/timing_graph/ElectricalLoad.h
index 551eccf85f..29b734b120 100644
--- a/ext/dsent/model/timing_graph/ElectricalLoad.h
+++ b/ext/dsent/model/timing_graph/ElectricalLoad.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_LOAD_H__
 #define __DSENT_MODEL_ELECTRICAL_LOAD_H__
 
diff --git a/ext/dsent/model/timing_graph/ElectricalNet.cc b/ext/dsent/model/timing_graph/ElectricalNet.cc
index 09baa77e5b..111b194019 100644
--- a/ext/dsent/model/timing_graph/ElectricalNet.cc
+++ b/ext/dsent/model/timing_graph/ElectricalNet.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/timing_graph/ElectricalNet.h"
 #include "model/timing_graph/ElectricalLoad.h"
diff --git a/ext/dsent/model/timing_graph/ElectricalNet.h b/ext/dsent/model/timing_graph/ElectricalNet.h
index b96bfea917..9aca996149 100644
--- a/ext/dsent/model/timing_graph/ElectricalNet.h
+++ b/ext/dsent/model/timing_graph/ElectricalNet.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_NET_H__
 #define __DSENT_MODEL_ELECTRICAL_NET_H__
 
diff --git a/ext/dsent/model/timing_graph/ElectricalTimingNode.cc b/ext/dsent/model/timing_graph/ElectricalTimingNode.cc
index d8b2bfd13c..0a5fadc4a3 100644
--- a/ext/dsent/model/timing_graph/ElectricalTimingNode.cc
+++ b/ext/dsent/model/timing_graph/ElectricalTimingNode.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/timing_graph/ElectricalTimingNode.h"
 #include "model/timing_graph/ElectricalLoad.h"
diff --git a/ext/dsent/model/timing_graph/ElectricalTimingNode.h b/ext/dsent/model/timing_graph/ElectricalTimingNode.h
index 01c6497da9..71d3ad70bc 100644
--- a/ext/dsent/model/timing_graph/ElectricalTimingNode.h
+++ b/ext/dsent/model/timing_graph/ElectricalTimingNode.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_TIMING_NODE_H__
 #define __DSENT_MODEL_ELECTRICAL_TIMING_NODE_H__
 
diff --git a/ext/dsent/model/timing_graph/ElectricalTimingOptimizer.cc b/ext/dsent/model/timing_graph/ElectricalTimingOptimizer.cc
index dd7b4330a2..397f73bebe 100644
--- a/ext/dsent/model/timing_graph/ElectricalTimingOptimizer.cc
+++ b/ext/dsent/model/timing_graph/ElectricalTimingOptimizer.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "model/timing_graph/ElectricalTimingOptimizer.h"
 
 #include "model/PortInfo.h"
diff --git a/ext/dsent/model/timing_graph/ElectricalTimingOptimizer.h b/ext/dsent/model/timing_graph/ElectricalTimingOptimizer.h
index c0c850e0b2..e312959faa 100644
--- a/ext/dsent/model/timing_graph/ElectricalTimingOptimizer.h
+++ b/ext/dsent/model/timing_graph/ElectricalTimingOptimizer.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_TIMING_GRAPH_ELECTRICAL_TIMING_OPTIMIZER_H__
 #define __DSENT_MODEL_TIMING_GRAPH_ELECTRICAL_TIMING_OPTIMIZER_H__
 
diff --git a/ext/dsent/model/timing_graph/ElectricalTimingTree.cc b/ext/dsent/model/timing_graph/ElectricalTimingTree.cc
index 83d583c537..26ce2604c1 100644
--- a/ext/dsent/model/timing_graph/ElectricalTimingTree.cc
+++ b/ext/dsent/model/timing_graph/ElectricalTimingTree.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "model/timing_graph/ElectricalTimingTree.h"
 
diff --git a/ext/dsent/model/timing_graph/ElectricalTimingTree.h b/ext/dsent/model/timing_graph/ElectricalTimingTree.h
index 4dfbff8a72..d7fbfb430e 100644
--- a/ext/dsent/model/timing_graph/ElectricalTimingTree.h
+++ b/ext/dsent/model/timing_graph/ElectricalTimingTree.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_MODEL_ELECTRICAL_TIMING_TREE_H__
 #define __DSENT_MODEL_ELECTRICAL_TIMING_TREE_H__
 
diff --git a/ext/dsent/tech/TechModel.cc b/ext/dsent/tech/TechModel.cc
index 5922177ad0..67ffbbc971 100644
--- a/ext/dsent/tech/TechModel.cc
+++ b/ext/dsent/tech/TechModel.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "tech/TechModel.h"
 
 #include <cmath>
@@ -7,12 +28,17 @@
 namespace DSENT
 {
     TechModel::TechModel()
-        : Config(), m_std_cell_lib_(NULL), m_available_wire_layers_(NULL)
+        : m_std_cell_lib_(NULL), m_available_wire_layers_(NULL)
     {}
 
     TechModel::~TechModel()
     {}
 
+    const String& TechModel::get(const String &key_) const
+    {
+        return params.at(key_);
+    }
+
     void TechModel::setStdCellLib(const StdCellLib* std_cell_lib_)
     {
         m_std_cell_lib_ = std_cell_lib_;
@@ -32,17 +58,16 @@ namespace DSENT
     void TechModel::readFile(const String& filename_)
     {
         // Read the main technology file
-        LibUtil::Config::readFile(filename_);
+        LibUtil::readFile(filename_, params);
 
         // Search for "INCLUDE" to include more technology files
-        StringMap::ConstIterator it;
-        for(it = begin(); it != end(); ++it)
+        for (const auto &it : params)
         {
-            const String& key = it->first;
+            const String& key = it.first;
             if(key.compare(0, 8, "INCLUDE_") == 0)
             {
-                const String& include_filename = it->second;
-                LibUtil::Config::readFile(include_filename);
+                const String& include_filename = it.second;
+                LibUtil::readFile(include_filename, params);
             }
         }
 
@@ -53,7 +78,6 @@ namespace DSENT
         {
             m_available_wire_layers_->insert(available_wire_layer_vector[i]);
         }
-        return;
     }
 
     //-------------------------------------------------------------------------
@@ -314,7 +338,7 @@ namespace DSENT
     //-------------------------------------------------------------------------
 
     TechModel::TechModel(const TechModel& tech_model_)
-        : Config(tech_model_), m_std_cell_lib_(tech_model_.m_std_cell_lib_)
+        : m_std_cell_lib_(tech_model_.m_std_cell_lib_),
+          params(tech_model_.params)
     {}
 } // namespace DSENT
-
diff --git a/ext/dsent/tech/TechModel.h b/ext/dsent/tech/TechModel.h
index 92e5a30ac3..a4578f1687 100644
--- a/ext/dsent/tech/TechModel.h
+++ b/ext/dsent/tech/TechModel.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_TECH_TECH_MODEL_H__
 #define __DSENT_TECH_TECH_MODEL_H__
 
@@ -15,7 +36,7 @@ namespace DSENT
     using std::vector;
     using LibUtil::String;
 
-    class TechModel : public LibUtil::Config
+    class TechModel
     {
         public:
             typedef std::set<String>::const_iterator ConstWireLayerIterator;
@@ -25,6 +46,9 @@ namespace DSENT
             virtual ~TechModel();
 
         public:
+            // Get the value_ corresponding to the key_
+            const String& get(const String& key_) const;
+
             // Set the pointer to a standard cell library
             void setStdCellLib(const StdCellLib* std_cell_lib_);
             // Get the pointer to the standard cell library
@@ -64,8 +88,9 @@ namespace DSENT
             const StdCellLib* m_std_cell_lib_;
             // A set of available wire layers
             std::set<String>* m_available_wire_layers_;
+            // A map of model's parameters
+            std::map<String, String> params;
     }; // class TechModel
 } // namespace DSENT
 
 #endif // __DSENT_TECH_TECH_MODEL_H__
-
diff --git a/ext/dsent/tech/tech_models/Bulk22LVT.model b/ext/dsent/tech/tech_models/Bulk22LVT.model
index e2087a12df..d1cdb93ece 100644
--- a/ext/dsent/tech/tech_models/Bulk22LVT.model
+++ b/ext/dsent/tech/tech_models/Bulk22LVT.model
@@ -1,3 +1,23 @@
+# Copyright (c) 2012 Massachusetts Institute of Technology
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+# 
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+# 
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
 # WARNING: Most commercial fabs will not be happy if you release their exact
 # process information! If you derive these numbers through SPICE models,
 # the process design kit, or any other confidential material, please round-off
diff --git a/ext/dsent/tech/tech_models/Bulk32LVT.model b/ext/dsent/tech/tech_models/Bulk32LVT.model
index 9a90bdaf9c..2514407db8 100644
--- a/ext/dsent/tech/tech_models/Bulk32LVT.model
+++ b/ext/dsent/tech/tech_models/Bulk32LVT.model
@@ -1,3 +1,23 @@
+# Copyright (c) 2012 Massachusetts Institute of Technology
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+# 
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+# 
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
 # WARNING: Most commercial fabs will not be happy if you release their exact
 # process information! If you derive these numbers through SPICE models,
 # the process design kit, or any other confidential material, please round-off
diff --git a/ext/dsent/tech/tech_models/Bulk45LVT.model b/ext/dsent/tech/tech_models/Bulk45LVT.model
index d8015c5228..2398d781d4 100644
--- a/ext/dsent/tech/tech_models/Bulk45LVT.model
+++ b/ext/dsent/tech/tech_models/Bulk45LVT.model
@@ -1,3 +1,23 @@
+# Copyright (c) 2012 Massachusetts Institute of Technology
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+# 
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+# 
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
 # WARNING: Most commercial fabs will not be happy if you release their exact
 # process information! If you derive these numbers through SPICE models,
 # the process design kit, or any other confidential material, please round-off
diff --git a/ext/dsent/tech/tech_models/Photonics.model b/ext/dsent/tech/tech_models/Photonics.model
index 335e1e8323..9e33c710d9 100644
--- a/ext/dsent/tech/tech_models/Photonics.model
+++ b/ext/dsent/tech/tech_models/Photonics.model
@@ -1,3 +1,23 @@
+# Copyright (c) 2012 Massachusetts Institute of Technology
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+# 
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+# 
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
 # This file contains the model for photonic devices/circuits
 PhotonicsName = Photonics
 
diff --git a/ext/dsent/tech/tech_models/TG11LVT.model b/ext/dsent/tech/tech_models/TG11LVT.model
index 292e40ab0c..f1cb7eeae3 100644
--- a/ext/dsent/tech/tech_models/TG11LVT.model
+++ b/ext/dsent/tech/tech_models/TG11LVT.model
@@ -1,3 +1,23 @@
+# Copyright (c) 2012 Massachusetts Institute of Technology
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+# 
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+# 
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
 # WARNING: Most commercial fabs will not be happy if you release their exact
 # process information! If you derive these numbers through SPICE models,
 # the process design kit, or any other confidential material, please round-off
diff --git a/ext/dsent/util/CommonType.h b/ext/dsent/util/CommonType.h
index e8c9705bb1..543cca8661 100644
--- a/ext/dsent/util/CommonType.h
+++ b/ext/dsent/util/CommonType.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_UTIL_COMMON_TYPE_H__
 #define __DSENT_UTIL_COMMON_TYPE_H__
 
diff --git a/ext/dsent/util/Config.cc b/ext/dsent/util/Config.cc
deleted file mode 100644
index a12a30070f..0000000000
--- a/ext/dsent/util/Config.cc
+++ /dev/null
@@ -1,105 +0,0 @@
-#include "util/Config.h"
-
-#include "model/std_cells/StdCellLib.h"
-
-namespace DSENT
-{
-
-    Config* Config::ms_singleton_ = NULL;
-
-    void Config::allocate(const String& cfg_file_name_)
-    {
-        Log::printLine("Config::allocate");
-
-        // Allocate static Config instance
-        ASSERT(!ms_singleton_, "Config singleton is allocated");
-        ms_singleton_ = new Config();
-        ms_singleton_->readFile(cfg_file_name_);
-
-        Log::printLine("Config::allocate - End");
-        return;
-    }
-
-    void Config::release()
-    {
-        Log::printLine("Config::release");
-
-        // Release static Config instance
-        ASSERT(ms_singleton_, "Config singleton is not allocated");
-        delete ms_singleton_;
-        ms_singleton_ = NULL;
-
-        Log::printLine("Config::release - End");
-        return;
-    }
-
-    Config* Config::getSingleton()
-    {
-        ASSERT(ms_singleton_, "Config singleton is not allocated");
-        return ms_singleton_;
-    }
-
-    Config::Config()
-        : m_tech_model_(NULL)
-    {}
-
-    Config::~Config()
-    {
-        delete m_tech_model_;
-    }
-
-    void Config::setTechModel(const TechModel* tech_model_)
-    {
-        ASSERT((tech_model_ != NULL), "tech_model_ is null");
-
-        m_tech_model_ = tech_model_;
-        return;
-    }
-
-    const TechModel* Config::getTechModel() const
-    {
-        ASSERT((m_tech_model_ != NULL), "m_tech_model_ is null");
-
-        return m_tech_model_;
-    }
-
-    void Config::readFile(const String& file_name_)
-    {
-        Log::printLine("Config::readFile");
-
-        LibUtil::Config::readFile(file_name_);
-
-        Log::printLine("Config::readFile - End");
-        return;
-    }
-
-    void Config::constructTechModel(const String& overwrite_str_)
-    {
-        Log::printLine("Config::constructTechModel");
-
-        // Allocate static TechModel instance
-        const String& electrical_tech_model_filename = get("ElectricalTechModelFilename");
-
-        TechModel* tech_model = new TechModel();
-        tech_model->readFile(electrical_tech_model_filename);
-        if(keyExist("PhotonicTechModelFilename"))
-        {
-            const String& photonic_tech_model_filename = get("PhotonicTechModelFilename");
-            tech_model->readFile(photonic_tech_model_filename);
-        }
-
-        // Overwrite the settings at runtime
-        tech_model->readString(overwrite_str_);
-
-        // Allocate static StdCellLib instance
-        StdCellLib* std_cell_lib = new StdCellLib(tech_model);
-
-        // Set the StdCellLib pointer in static TechModel instance
-        tech_model->setStdCellLib(std_cell_lib);
-
-        m_tech_model_ = tech_model;
-        Log::printLine("Config::constructTechModel - End");
-        return;
-    }
-} // namespace DSENT
-
diff --git a/ext/dsent/util/Config.h b/ext/dsent/util/Config.h
deleted file mode 100644
index 910f5ca8ca..0000000000
--- a/ext/dsent/util/Config.h
+++ /dev/null
@@ -1,40 +0,0 @@
-#ifndef __DSENT_UTIL_CONFIG_H__
-#define __DSENT_UTIL_CONFIG_H__
-
-#include "util/CommonType.h"
-
-namespace DSENT
-{
-    class TechModel;
-    class StdCellLib;
-
-    class Config : public LibUtil::Config
-    {
-        public:
-            static void allocate(const String& cfg_file_name_);
-            static void release();
-            static Config* getSingleton();
-
-        protected:
-            static Config* ms_singleton_;
-
-        public:
-            Config();
-            ~Config();
-
-        public:
-            void setTechModel(const TechModel* tech_model_);
-            const TechModel* getTechModel() const;
-
-            void constructTechModel(const String& overwrite_str_);
-
-        protected:
-            void readFile(const String& file_name_);
-
-        protected:
-            const TechModel* m_tech_model_;
-    }; // class Config
-} // namespace DSENT
-
-#endif // __DSENT_UTIL_CONFIG_H__
-
diff --git a/ext/dsent/util/Constants.cc b/ext/dsent/util/Constants.cc
index 6af0a275ab..d01ca4faf1 100644
--- a/ext/dsent/util/Constants.cc
+++ b/ext/dsent/util/Constants.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 
 #include "util/Constants.h"
 
diff --git a/ext/dsent/util/Constants.h b/ext/dsent/util/Constants.h
index 4447e6991d..c3450760aa 100644
--- a/ext/dsent/util/Constants.h
+++ b/ext/dsent/util/Constants.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_UTIL_CONSTANTS_H__
 #define __DSENT_UTIL_CONSTANTS_H__
 
diff --git a/ext/dsent/util/Result.cc b/ext/dsent/util/Result.cc
index f2a1b23ead..f9f762660e 100644
--- a/ext/dsent/util/Result.cc
+++ b/ext/dsent/util/Result.cc
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #include "util/Result.h"
 
 #include <iostream>
diff --git a/ext/dsent/util/Result.h b/ext/dsent/util/Result.h
index 96f0e58054..daa07d67c2 100644
--- a/ext/dsent/util/Result.h
+++ b/ext/dsent/util/Result.h
@@ -1,3 +1,24 @@
+/* Copyright (c) 2012 Massachusetts Institute of Technology
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
 #ifndef __DSENT_UTIL_RESULT_H__
 #define __DSENT_UTIL_RESULT_H__
 
-- 
GitLab