diff --git a/src/classification/ConvexHull1D.cpp b/src/classification/ConvexHull1D.cpp
index 404197abdf51c4df512086f1de2f2eb8c3406339..2915d94554b6501beb19537f6c0706db6832a3ee 100644
--- a/src/classification/ConvexHull1D.cpp
+++ b/src/classification/ConvexHull1D.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "classification/ConvexHull1D.hpp"
 
 ConvexHull1D::ConvexHull1D() :
diff --git a/src/classification/ConvexHull1D.hpp b/src/classification/ConvexHull1D.hpp
index 8cad64f515480f7c0956b37377940e6e26029eea..e93b773222d0319935eb39f0e4b531d7280d2024 100644
--- a/src/classification/ConvexHull1D.hpp
+++ b/src/classification/ConvexHull1D.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file classificationutils.hpp
  *  @brief A set of functions to create convex hulls, and compare overlap/distance
  *
diff --git a/src/classification/LPWrapper.cpp b/src/classification/LPWrapper.cpp
index 02a46ca8370c857d5cf3e22ef058c125e9f7add1..746e941e1a0378eae319ea7c26fee89d4262e548 100644
--- a/src/classification/LPWrapper.cpp
+++ b/src/classification/LPWrapper.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "classification/LPWrapper.hpp"
 #include <iomanip>
 LPWrapper::LPWrapper(
diff --git a/src/classification/LPWrapper.hpp b/src/classification/LPWrapper.hpp
index aadfbd59d5104f7f8cb1ff9b287b93633301e324..c8035ac458588dac87c564ca76c57f89854d75a9 100644
--- a/src/classification/LPWrapper.hpp
+++ b/src/classification/LPWrapper.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file classification/LPWrapper.hpp
  *  @brief A class used to wrap Coin-Clp into a single class
  *
diff --git a/src/classification/SVMWrapper.cpp b/src/classification/SVMWrapper.cpp
index b70d501733eb6cfd723f8d131776f5796d903360..a5fb4908e9047365d2d2ce8a2d1a22390701081f 100644
--- a/src/classification/SVMWrapper.cpp
+++ b/src/classification/SVMWrapper.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "classification/SVMWrapper.hpp"
 
 SVMWrapper::SVMWrapper(const int n_class, const int n_dim, const int n_samp, const double* prop) :
diff --git a/src/classification/SVMWrapper.hpp b/src/classification/SVMWrapper.hpp
index fbdba8f216f2f2c52963f95d2ff4001f331c75ec..7e17c31279cea28e51efff4e49d9ef8dbcaadea6 100644
--- a/src/classification/SVMWrapper.hpp
+++ b/src/classification/SVMWrapper.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file classification/SVMWrapper.hpp
  *  @brief A class used to wrap libsvm in more C++ oriented data structure
  *
diff --git a/src/classification/prop_sorted_d_mat.cpp b/src/classification/prop_sorted_d_mat.cpp
index 500e67337bec56e02c8c06dddd43a458ce5c21e3..bc3fe757f7a922501736b30fab5796fd5443f840 100644
--- a/src/classification/prop_sorted_d_mat.cpp
+++ b/src/classification/prop_sorted_d_mat.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "classification/prop_sorted_d_mat.hpp"
 
 std::vector<double> prop_sorted_d_mat::SORTED_D_MATRIX;
diff --git a/src/classification/prop_sorted_d_mat.hpp b/src/classification/prop_sorted_d_mat.hpp
index 3043d41f5813c4fa8d19450a900cb42131a3d73b..48b4a33e0eed5ed44b8c29ac917c728853993490 100644
--- a/src/classification/prop_sorted_d_mat.hpp
+++ b/src/classification/prop_sorted_d_mat.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file classification/prop_sorted_d_mat.hpp
  *  @brief Central storage area for a sorted descriptor matrix based on the task/class of a sample
 
diff --git a/src/descriptor_identifier/Model/Model.cpp b/src/descriptor_identifier/Model/Model.cpp
index c1eed7242df531cf4c079b4fbe0b5a70a14001bd..c536029614b61e7b3f406de4c82d97cd83db7fae 100644
--- a/src/descriptor_identifier/Model/Model.cpp
+++ b/src/descriptor_identifier/Model/Model.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "descriptor_identifier/Model/Model.hpp"
 
 Model::Model(
diff --git a/src/descriptor_identifier/Model/Model.hpp b/src/descriptor_identifier/Model/Model.hpp
index 0bcf9ea77ccc4405ebb8613430e29ccf7f09e02f..c122c7253eb666e9d97a508961ffbfde7da8c2d2 100644
--- a/src/descriptor_identifier/Model/Model.hpp
+++ b/src/descriptor_identifier/Model/Model.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file descriptor_identifier/Model/Model.hpp
  *  @brief Object to store the models generated form SISSO
  *
diff --git a/src/descriptor_identifier/Model/ModelClassifier.cpp b/src/descriptor_identifier/Model/ModelClassifier.cpp
index 8bc4e42dba348bef2732aa762df9191d1b74d974..b0e1816d19e20999c00b6df22d619b6c22b537bd 100644
--- a/src/descriptor_identifier/Model/ModelClassifier.cpp
+++ b/src/descriptor_identifier/Model/ModelClassifier.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "descriptor_identifier/Model/ModelClassifier.hpp"
 
 ModelClassifier::ModelClassifier(
diff --git a/src/descriptor_identifier/Model/ModelClassifier.hpp b/src/descriptor_identifier/Model/ModelClassifier.hpp
index b235a5e08db10eb2fd32b041d6cc33a0c7746bfe..4f1559daef791ea8878935643dc7d43e82b1e31d 100644
--- a/src/descriptor_identifier/Model/ModelClassifier.hpp
+++ b/src/descriptor_identifier/Model/ModelClassifier.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file descriptor_identifier/ModelClassifier/ModelClassifier.hpp
  *  @brief Object to store the models generated form SISSO
  *
diff --git a/src/descriptor_identifier/Model/ModelLogRegressor.cpp b/src/descriptor_identifier/Model/ModelLogRegressor.cpp
index 80083089981108fa3fa31ed26c46009cd9a68092..4fa33df28c33ebbbf5c8a7c1413a52683c1e910f 100644
--- a/src/descriptor_identifier/Model/ModelLogRegressor.cpp
+++ b/src/descriptor_identifier/Model/ModelLogRegressor.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "descriptor_identifier/Model/ModelLogRegressor.hpp"
 
 ModelLogRegressor::ModelLogRegressor()
diff --git a/src/descriptor_identifier/Model/ModelLogRegressor.hpp b/src/descriptor_identifier/Model/ModelLogRegressor.hpp
index a417d7ba481e5a92579b0a64868b538074fee799..7ab214092b5f5f39a67279b2018b0a6b05ee51d0 100644
--- a/src/descriptor_identifier/Model/ModelLogRegressor.hpp
+++ b/src/descriptor_identifier/Model/ModelLogRegressor.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file descriptor_identifier/ModelLogRegressor/ModelLogRegressor.hpp
  *  @brief Object to store the models generated form SISSO
  *
diff --git a/src/descriptor_identifier/Model/ModelRegressor.cpp b/src/descriptor_identifier/Model/ModelRegressor.cpp
index 630bfd0400da1d1879881b44b7f557f4d93c40d4..b56f66ebe7f4529c206848afa17bade3191acdfb 100644
--- a/src/descriptor_identifier/Model/ModelRegressor.cpp
+++ b/src/descriptor_identifier/Model/ModelRegressor.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "descriptor_identifier/Model/ModelRegressor.hpp"
 
 ModelRegressor::ModelRegressor()
diff --git a/src/descriptor_identifier/Model/ModelRegressor.hpp b/src/descriptor_identifier/Model/ModelRegressor.hpp
index 8a83e26151170da4c46682b7d9b159d84749f28a..a9008abf5d1684275a52d893e34ab86382e91d64 100644
--- a/src/descriptor_identifier/Model/ModelRegressor.hpp
+++ b/src/descriptor_identifier/Model/ModelRegressor.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file descriptor_identifier/ModelRegressor/ModelRegressor.hpp
  *  @brief Object to store the models generated form SISSO
  *
diff --git a/src/descriptor_identifier/SISSO_DI/SISSOClassifier.cpp b/src/descriptor_identifier/SISSO_DI/SISSOClassifier.cpp
index cc8369959930080e8c504ae2892991e116309aad..a65eac8f3b5cb3398c4426f78ba2386069ecb98f 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSOClassifier.cpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSOClassifier.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "descriptor_identifier/SISSO_DI/SISSOClassifier.hpp"
 
 SISSOClassifier::SISSOClassifier(
diff --git a/src/descriptor_identifier/SISSO_DI/SISSOClassifier.hpp b/src/descriptor_identifier/SISSO_DI/SISSOClassifier.hpp
index 077074ab05dee08ca352ffab3caf23335710525e..f3d84b5c5a5982aa7ee8594b8cc8ce8d2f248019 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSOClassifier.hpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSOClassifier.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file descriptor_identifier/SISSOClassifier.hpp
  *  @brief Perform SISSO on a previously generated Feature Space
  *
diff --git a/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.cpp b/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.cpp
index 5431246f5f118bb9a4638b5f6fce217084e25c07..59e15d6ad2356e89004b19d6b85e59938f004bfe 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.cpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp"
 
 SISSOLogRegressor::SISSOLogRegressor(
diff --git a/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp b/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp
index 398dc7293ea7831ebce757755c68f063598f3dd2..99f7502e87ca984e7274802448b6dc0642c55343 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file descriptor_identifier/SISSOLogRegressor.hpp
  *  @brief Perform SISSO on a previously generated Feature Space
  *
diff --git a/src/descriptor_identifier/SISSO_DI/SISSORegressor.cpp b/src/descriptor_identifier/SISSO_DI/SISSORegressor.cpp
index 467287d185de0cc3b649fd3e06bf43e41ba91816..71a4066f4d6573c3dd89970e8a0f176568a29476 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSORegressor.cpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSORegressor.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "descriptor_identifier/SISSO_DI/SISSORegressor.hpp"
 
 SISSORegressor::SISSORegressor(
diff --git a/src/descriptor_identifier/SISSO_DI/SISSORegressor.hpp b/src/descriptor_identifier/SISSO_DI/SISSORegressor.hpp
index 74e794947335c0dee01b32e34a6ef695c12ed924..1d91de73490f4d58c04ff8f361e3abd199fb056a 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSORegressor.hpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSORegressor.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file descriptor_identifier/SISSORegressor.hpp
  *  @brief Perform SISSO on a previously generated Feature Space
  *
diff --git a/src/descriptor_identifier/SISSO_DI/SISSO_DI.cpp b/src/descriptor_identifier/SISSO_DI/SISSO_DI.cpp
index 13869ebfa14a2745d94ef5f86a1173af4bf1f9b0..cab94c6c151792717cf7b9cb84e621412fb3da25 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSO_DI.cpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSO_DI.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "descriptor_identifier/SISSO_DI/SISSO_DI.hpp"
 
 SISSO_DI::SISSO_DI(
diff --git a/src/descriptor_identifier/SISSO_DI/SISSO_DI.hpp b/src/descriptor_identifier/SISSO_DI/SISSO_DI.hpp
index 95cc49a0470ef7027bcf391a94839dc2737f1ab6..e69e3f6d49e0407f64247a55c0d5a2218bfad741 100644
--- a/src/descriptor_identifier/SISSO_DI/SISSO_DI.hpp
+++ b/src/descriptor_identifier/SISSO_DI/SISSO_DI.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file descriptor_identifier/SISSO_DI/SISSO_DI.hpp
  *  @brief Base class used to perform SISSO on a previously generated Feature Space
  *
diff --git a/src/feature_creation/feature_space/FeatureSpace.cpp b/src/feature_creation/feature_space/FeatureSpace.cpp
index 676bcf74a8dc41bd964f99c1ae4774b825792d3a..ea0cbe2511c1b3765ff19346c60c41902cab2395 100644
--- a/src/feature_creation/feature_space/FeatureSpace.cpp
+++ b/src/feature_creation/feature_space/FeatureSpace.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/feature_space/FeatureSpace.hpp"
 
 BOOST_CLASS_EXPORT_GUID(FeatureNode, "FeatureNode")
diff --git a/src/feature_creation/feature_space/FeatureSpace.hpp b/src/feature_creation/feature_space/FeatureSpace.hpp
index d1d3ae670b28201ec929fdca65ae2523d458a58d..8320ffb02a8d17938103f0f2a96a57e9d596064d 100644
--- a/src/feature_creation/feature_space/FeatureSpace.hpp
+++ b/src/feature_creation/feature_space/FeatureSpace.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/feature_space/FeatureSpace.hpp
  *  @brief Create a feature space from an initial set of features and algebraic operators
  *
diff --git a/src/feature_creation/node/FeatureNode.cpp b/src/feature_creation/node/FeatureNode.cpp
index a5944607a17b927cd8a817a8bbd4ba855a940090..eeeb36f4831783d0d11479008fa231bedfb3426f 100644
--- a/src/feature_creation/node/FeatureNode.cpp
+++ b/src/feature_creation/node/FeatureNode.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/FeatureNode.hpp"
 
 FeatureNode::FeatureNode()
diff --git a/src/feature_creation/node/FeatureNode.hpp b/src/feature_creation/node/FeatureNode.hpp
index cd62424fe17ccfd757c7a9b9a68f5711485d94f4..0ae91d85041ca563cfa8ecd7bda773cc4ab0824b 100644
--- a/src/feature_creation/node/FeatureNode.hpp
+++ b/src/feature_creation/node/FeatureNode.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/FeatureNode.hpp
  *  @brief The class for describing the initial features
  *
diff --git a/src/feature_creation/node/ModelNode.cpp b/src/feature_creation/node/ModelNode.cpp
index 92f07ceefb32590f90879dc46a22dd5152dbf1e2..70272f01797dec2a3a9bd7591f00e7f7fdb016ce 100644
--- a/src/feature_creation/node/ModelNode.cpp
+++ b/src/feature_creation/node/ModelNode.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/ModelNode.hpp"
 
 ModelNode::ModelNode()
diff --git a/src/feature_creation/node/ModelNode.hpp b/src/feature_creation/node/ModelNode.hpp
index 33419865db2c51283c5dcac8363ea862c5c2fa9a..9fd42961047325f1ddd401c433fa5c9722325de7 100644
--- a/src/feature_creation/node/ModelNode.hpp
+++ b/src/feature_creation/node/ModelNode.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/ModelNode.hpp
  *  @brief The base class for describing features selected in SISSO Models
  *
diff --git a/src/feature_creation/node/Node.cpp b/src/feature_creation/node/Node.cpp
index 58c6735e269a03994e038db674e6de5a721d077b..1860e910e4f4fc2ae7452df65e77d4c9bfd64e30 100644
--- a/src/feature_creation/node/Node.cpp
+++ b/src/feature_creation/node/Node.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/Node.hpp"
 
 Node::Node()
diff --git a/src/feature_creation/node/Node.hpp b/src/feature_creation/node/Node.hpp
index 037b3d31a92fb0b32bdcea121d71280422b8d480..4d2079ec63aa5e5b9292b3f99f05638477000395 100644
--- a/src/feature_creation/node/Node.hpp
+++ b/src/feature_creation/node/Node.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/Node.hpp
  *  @brief The base class for describing features
  *
diff --git a/src/feature_creation/node/operator_nodes/OperatorNode.cpp b/src/feature_creation/node/operator_nodes/OperatorNode.cpp
index 67690c947de559857743957ef647244619d90b58..a274f7121ccb356411af07e755a8fc303dbc20eb 100644
--- a/src/feature_creation/node/operator_nodes/OperatorNode.cpp
+++ b/src/feature_creation/node/operator_nodes/OperatorNode.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/OperatorNode.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(OperatorNode)
diff --git a/src/feature_creation/node/operator_nodes/OperatorNode.hpp b/src/feature_creation/node/operator_nodes/OperatorNode.hpp
index 8df52f86d534bf5d0ca770851b74298f59c9f94a..00a7f5be89cb81dec7051157afba75214a466bf6 100644
--- a/src/feature_creation/node/operator_nodes/OperatorNode.hpp
+++ b/src/feature_creation/node/operator_nodes/OperatorNode.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/OperatorNode.hpp
  *  @brief Base class for representing all algebraic operators in the binary expression tree
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.cpp
index 48cc89925bd3d7e0ba2def533b9aa32fad505019..f388e966b2d3c60d9f68174712ed41f6f97e1f1c 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.hpp"
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(AbsNode)
 
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.hpp
index 5fb6af8f0f96e36127e62101c13c575ae600ea47..351a7e859f312e6370e6e355e53ce4d5ec74d502 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/absolute_value.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/absolute_value.hpp
  *  @brief Class describing the absolute value operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.cpp
index 2c166a95a0906c9e3881d6166de98f8fad62b389..64d35f78214c217a479c379c0fe486b37dde6fc2 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(AbsParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.hpp
index c16a85039533c13a09362b257cde7e87f473d09c..ad57c33c5541fabfdd29131c5f0329d85c26b01e 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/abs/parameterized_absolute_value.hpp
  *  @brief Class describing the parameterized absolute value operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.cpp
index b92ed4902a51786505d9b8d525fddadcaf2a8147..b9b166a3c4c0020b94fd3badf306f829d7470af0 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.hpp"
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.hpp"
 
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.hpp
index b125a367eda4eda35bace8dcd53155f497e99a26..11e97a4ee844a4853fc27055ef11455a8198f15d 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/absolute_difference.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/absolute_difference.hpp
  *  @brief Class describing the absolute difference operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.cpp
index 970bdddb3b3cf2bf37f0fde7af308641c6b72bb2..00202f838d048d5daaf8f8ca1a252dd9d69ecffb 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(AbsDiffParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.hpp
index adfc9b2526f1d649facd22d5a66dbafe3601473f..cf57e8066fb00a34edb57e252c07e0df17f1f314 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/abs_diff/parameterized_absolute_difference.hpp
  *  @brief Class describing the parameterized absolute difference operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.cpp
index 6d832484697bcab4f8c12caef124bfca0d63c5f2..26cbac554c16cdc1b807a1a80dc444ea90ec4405 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.hpp"
 
 void generateAddNode(std::vector<node_ptr>& feat_list, const node_ptr feat_1, const node_ptr feat_2, unsigned long int& feat_ind, const double l_bound, const double u_bound)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.hpp
index 7e1096f48c4498c3b82b50262f18b529ea6754f7..f6607fdef9e84e47884c26380d20982deb358fb5 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/add.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/add.hpp
  *  @brief Class describing the addition operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.cpp
index 9352a5342dce50402b94ad320f384f5cbade2847..17f1416a56fb5d99d6aeec6b7ed26261c4c31ebf 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(AddParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.hpp
index 36b463157ad284bc7624df7233af22483d377921..f5c550794db1e5d0246a981e74861ef9348de703 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/add/parameterized_add.hpp
  *  @brief Class describing the parameterized addition operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.cpp
index 394c6e0c7bea2fb3a9b4cafdc32af346098cc6cc..accb7af08a58338e214034da9d5de6d0fa65b91f 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.hpp"
 
 void generateCbNode(
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.hpp
index 132a8259ce6e5d12ded2c566dc45136250394fb3..723352c4ea8e5d5c5b2cee5b9c49fa9e6985e85d 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/cube.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/cube.hpp
  *  @brief Class describing the cube operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.cpp
index 2aeb18d079e54793f6156ec5b69d39f2444b5969..b87b83ca76cd716c1c7815741e7172983f698b74 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(CbParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.hpp
index 1ce23ecefca402bd687bd58c44de7f40cd22b1fd..3a359eb3c5b2c8f732a2563d8b9f4662640078f7 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/cb/parameterized_cube.hpp
  *  @brief Class describing the parameterized cube operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.cpp
index 420dc6c8fcd05998ff2cc657d5680abcf9d4fcdb..6f31375a1d5136cc826bfe05020b20231543b6af 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.hpp"
 
 void generateCbrtNode(
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.hpp
index bf6e419fe9493f1f1d17db4051e9243b95d3547c..4b99727a75b7521694550e7c957b98751403aca3 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/cube_root.hpp
  *  @brief Class describing the cube root operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.cpp
index e4762873228db8002c252ed934f5434efde298d0..c6d43bd7fc7cbd8c69781b6e4bdd61efbcf93b5c 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(CbrtParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.hpp
index b9c4c4111fc34105744ca4c27713bebc991e4a6f..1591315dfdabc93bcb4c55789b5325d069c78769 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/parameterized_cube_root.hpp
  *  @brief Class describing the parameterized cube root operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.cpp
index a7a9d70e8b1ec81c3bbfe5d8f66ca7db60a6622e..f8e18fff9c9d957f349492cc18a3354df4aadf62 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.hpp"
 
 void generateCosNode(
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.hpp
index b5ff54cd81adb2bc5227e39379c2640d5b447f7f..2c28fef021a8b03c24e89312428bc5fee20701a6 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/cos.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/cos.hpp
  *  @brief Class describing the cosine operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.cpp
index 57b4d8ae1c1d6c62c5332fe956521cf16a7229f3..bd32784b0f114e89dff85bb3a85e1543f3c23142 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(CosParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.hpp
index 46f2115caaf8effa18568a1d6de1587e067df47a..0af15870fbcdb663144dd9aa606f8a32c93cc679 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/cos/parameterized_cos.hpp
  *  @brief Class describing the parameterized cos operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.cpp
index 5fd36ead02300c6683fb7b3e8732435294a846c5..bbc0e16f281b85a10724f6b794757a23ce8d991d 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.hpp"
 
 void generateDivNode(std::vector<node_ptr>& feat_list, const node_ptr feat_1, const node_ptr feat_2, unsigned long int& feat_ind, const double l_bound, const double u_bound)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.hpp
index 93d78546dfafd1b19aa9b46b720866b281012cd3..12e7bd0651108a9ec288ee3375554dff0c623097 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/divide.hpp
  *  @brief Class describing the division operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.cpp
index 2d6d45feda000b7ef42133f094441bf40e87e744..af5bb92279424a311f4e68658730442ede953e52 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(DivParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.hpp
index 56387c9cb75a04641afa1acce6c00eec3ab78ac3..cf39a991dba5535cf1dd0867402d7fa08ce9c410 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_divide.hpp
  *  @brief Class describing the parameterized addition operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.cpp
index 7a071ebc526f6883e51170ee21d67f80439b710e..27b3943013861d6ca77a2e87b9ceebd05f6b9ad4 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.hpp"
 
 void generateExpNode(
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.hpp
index 6a220215fc9382bdc12b42f1dbb391924eb2a09e..ec55988688dd8ae59e7779f1a2961b3d4f91a56b 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/exponential.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/exponential.hpp
  *  @brief Class describing the exponential operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.cpp
index bda774478d705a775ba7f12353f6f774dc451fe4..c4bfd7a20a6b46b8f156ac1bd31b4d9b4ed3e46d 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(ExpParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.hpp
index f53fc3fbfed36287becfafb4fdd0a737d9fb30d6..251f354f780e2bede4449ede55d9e7557a43aeb9 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponential.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/exp/parameterized_exponetial.hpp
  *  @brief Class describing the parameterized exp operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.cpp
index 7d52017f8de46c529f54b41282fc8d6ab2bb9fab..08f6cc3479777cd227589a2e07cfc3da4cbf2ec8 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.hpp"
 
 void generateInvNode(
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.hpp
index d3445f6cf1aae9a479294944287cb3ac5b474ae5..719ca95d3d2fd4d56116dcd395210f544c271182 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/inverse.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/inverse.hpp
  *  @brief Class describing the logarithm operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.cpp
index 9126df9a68256b76cc1fd02ebe38be0d4e0dfd08..b5b5213b295f80a4ca7b1625b60a1dd9fdd5677a 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(InvParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.hpp
index f98d7fedbbabf48f35daab03919392a6ec27b2eb..4736b9bedec25ba4ec646107b91c50a0390d772b 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/inv/parameterized_inverse.hpp
  *  @brief Class describing the parameterized inverse operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.cpp
index f11e1c7e2e18d854a4a6990e33e48dc2d5c6401d..fafd589c52e804c4f944016cf74e782aba9c31ee 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.hpp"
 
 void generateLogNode(
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.hpp
index 6456f4f95676a291e7d64ad246ac8135535baed4..746e9f5217831a665499e96f95a1619ff63d2543 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/log.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/log.hpp
  *  @brief Class describing the logarithm operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.cpp
index 0e331371b959869c45fc216ac49c1fc43b4fffc5..85a052b3e10a0152bd258fc507c542f12e7cdbc1 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(LogParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.hpp
index cc3b1bad4cf3b7e7c80f8caec7838454ba0c1530..343f349e46c1f109fc03a50a65bcaef80b32a970 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/log/parameterized_log.hpp
  *  @brief Class describing the parameterized log operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.cpp
index a3433c364ddc242e52e20db0549691a4a4dc2c81..956b1a0c6e78e6a3a2b82a65d598fdfc15ab698b 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.hpp"
 
 void generateMultNode(std::vector<node_ptr>& feat_list, const node_ptr feat_1, const node_ptr feat_2, unsigned long int& feat_ind, const double l_bound, const double u_bound)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.hpp
index e799f8ebab79eb87f43c8f60d9232de20f5a7101..a42d3384b71987536a11ee82bb8616dcae208c17 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/multiply.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/multiply.hpp
  *  @brief Class describing the multiplication operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.cpp
index a3c838180c2433a82e56519fb3335766339e94dd..4779f677397c95968f976113ee70a0a2fe441cbe 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(MultParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.hpp
index 14254b6865aabc41c221f56be1a0af5a3a4d138e..4c4fe9c660a8f096958eb509ca1c8cb79c199cf0 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/mult/parameterized_multiply.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/div/parameterized_multiply.hpp
  *  @brief Class describing the parameterized addition operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.cpp
index d704e9cacdcd4363b00c2593af262f184ce0abca..dca7dd72113aad5389b21e1520487dc96e3d6ef6 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.hpp"
 
 void generateNegExpNode(
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.hpp
index a959996d72368c88979664e7ca368c2b6a8275cf..8b76ec6024a053bd826d104f56e9874df93291f9 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/negative_exponential.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/negative_exponential.hpp
  *  @brief Class describing the negative exponential operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.cpp
index 039b3e90ab6ba7bcab30819918f28db4d2691937..ddb14e040c1185538e73458150c021586991e956 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(NegExpParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.hpp
index 24211df7d9bb1ac16f7d18f9e93172d1204c1534..3be3ff80fad8229729c590ac25999a4c5535501b 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponential.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/neg_exp/parameterized_negative_exponetial.hpp
  *  @brief Class describing the parameterized neg_exp operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.cpp
index 0d480eaf2fdda30d59b8b32eec4764895cf0b3f2..b63e6a0e2b540dc9c4945dab02e8ecd71e4324a5 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(SinParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.hpp
index 8cd929bef06dfa493e2ad82a8189e82ef7e3c2c2..aa9b7f5d8abef8524aa45c69e6f44e473e380772 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/sin/parameterized_sin.hpp
  *  @brief Class describing the parameterized sin operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.cpp
index 8d99ebc5076024b7d5c1d6dedaa819757acf2782..c28335a7689cc60fdc6e82bbe988e9c36f4f1795 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.hpp"
 
 void generateSinNode(
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.hpp
index 4a0a4508a32b150aef1e4ee31aa08ca238d63df4..db9205ed5d097c05ab6d5c6b9886faba4a1a462a 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sin/sin.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/sin.hpp
  *  @brief Class describing the sine operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.cpp
index 54fa1ce3442356862f83fd57a8fb08a36d7fb683..f20b6f95dfb9b3dc071ee841309d6309f96c23dc 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(SixPowParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.hpp
index b99c5e6b667136978c529ae8d1ee60e6b1561a47..065e4614ba462bd45bd56ac910c283cf55db3f38 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_power.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/parameterized_sixth_pow.hpp
  *  @brief Class describing the parameterized sixth power operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.cpp
index b6f0999ec628e0873704039b467c94c9ec36c7cc..e7fca0fdd51835c13abbc60586946c5b7f82704a 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.hpp"
 
 void generateSixPowNode(
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.hpp
index f1b4fd7559ccc9d7da140bfe2e8473bc92ad2715..3acfb5191fc463768cee34d60c8c5f482b5e757b 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/six_pow/sixth_power.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/sixth_power.hpp
  *  @brief Class describing the sixth power operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.cpp
index a967cd9864d57ec34fca5b723447d0ee9940d57b..bbb9bf624385edea14932f99073213379f4fa230 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(SqParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.hpp
index 1a66c53cda148616907ec7abd4b2732154fe2595..5dc864d71fcfe17e14f00a6d93059076080d843c 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/sq/parameterized_square.hpp
  *  @brief Class describing the parameterized square operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.cpp
index a4f8a0453db9fe4a1490f129863af6a9c712e762..bd71819bcac3727f353d99e9bb2517d11500e6e9 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.hpp"
 
 void generateSqNode(
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.hpp
index e02e0920c0c441fe079812e7614e37f44c86095e..a9ece0d47cf14f72e75685a085334a1959677aa1 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sq/square.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/square.hpp
  *  @brief Class describing the square operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.cpp
index 6a20267a2da3bf6e764c5c61b41774f97f7f20f0..d3a91c083af4bdd2e20a192b7a6b15c63f48d77e 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(SqrtParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.hpp
index f3e4e22ec8682172568fb85bfe064e61377e5979..c431bf64cc873ccb91511e5b349a1c145db9e83e 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/parameterized_square_root.hpp
  *  @brief Class describing the parameterized square root operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.cpp
index ddfbc9ee6eb42a8654d84dceea5ce19e84de8e21..36206adbb69a171876c062e2b8debb3a5afaf145 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.hpp"
 
 void generateSqrtNode(
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.hpp
index fcbe0e767d0fd931ba9ff708bd785541bb3b7380..6f2e29b85feeb733919f5e85d382f6da93cea55b 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sqrt/square_root.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/square_root.hpp
  *  @brief Class describing the square root operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.cpp
index 2ee7ed05cb65089e83c8a7e1424d32aacd2db0a4..b04171ff39a5547e61e3554300d9234490696ac6 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.hpp"
 
 BOOST_SERIALIZATION_ASSUME_ABSTRACT(SubParamNode)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.hpp
index 075b18ab67ed7111ab25ac6409e6a30a717f872b..4eba42062168913761dda881d4c0cce9774f731a 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/sub/parameterized_subtract.hpp
  *  @brief Class describing the parameterized addition operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.cpp
index 4fe5575343b1062402eea4a59623989eebc13b97..66c2992b3730dbdb078d45e01531ed1da41a24e5 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.hpp"
 
 void generateSubNode(std::vector<node_ptr>& feat_list, const node_ptr feat_1, const node_ptr feat_2, unsigned long int& feat_ind, const double l_bound, const double u_bound)
diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.hpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.hpp
index 982c81d9dc32c3e37b4d719a6c76564d7ce320b8..f61ad247c431e385fe44b3d71bb78a1c316fcea5 100644
--- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/sub/subtract.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_operator_nodes/subtract.hpp
  *  @brief Class describing the subtraction operator
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_ops.cpp b/src/feature_creation/node/operator_nodes/allowed_ops.cpp
index 2fea7d7d941c3dba6088b4a26295b8f831d15c50..e3bb58257112d728ac9bbc3f8e71c86104c0533e 100644
--- a/src/feature_creation/node/operator_nodes/allowed_ops.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_ops.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_ops.hpp"
 
 std::map<std::string, un_op_node_gen> allowed_op_maps::unary_operator_map;
diff --git a/src/feature_creation/node/operator_nodes/allowed_ops.hpp b/src/feature_creation/node/operator_nodes/allowed_ops.hpp
index f98a5f577532de29c3526a50a47aa7d0bb0a37d7..0bc0b1dba10b4fee9641e663eed941e445150e96 100644
--- a/src/feature_creation/node/operator_nodes/allowed_ops.hpp
+++ b/src/feature_creation/node/operator_nodes/allowed_ops.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/allowed_ops.hpp
  *  @brief Definition of the map that converts the string representation of an operation to the correct OperatorNode constructor
  *
diff --git a/src/feature_creation/node/operator_nodes/allowed_parameter_ops.cpp b/src/feature_creation/node/operator_nodes/allowed_parameter_ops.cpp
index 719d6318888876aed4cbe7227630f198bce3da96..efae75cd689336bb2988fb9d48c58265646eb945 100644
--- a/src/feature_creation/node/operator_nodes/allowed_parameter_ops.cpp
+++ b/src/feature_creation/node/operator_nodes/allowed_parameter_ops.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/operator_nodes/allowed_ops.hpp"
 
 std::map<std::string, un_param_op_node_gen> allowed_op_maps::unary_param_operator_map;
diff --git a/src/feature_creation/node/operator_nodes/functions.hpp b/src/feature_creation/node/operator_nodes/functions.hpp
index 64446a548d4ac769a4290134852eb31a72e2942f..bd087f4db554a3ac6e9c66ddc34959d5b9d0571c 100644
--- a/src/feature_creation/node/operator_nodes/functions.hpp
+++ b/src/feature_creation/node/operator_nodes/functions.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/operator_nodes/functions.hpp
  *  @brief Definition of all allowed functions OperatorNodes can have
  *
diff --git a/src/feature_creation/node/utils.cpp b/src/feature_creation/node/utils.cpp
index 05cab976007e660e63792afce0fd444a3e34f263..35b539b3b6922e74cdd6a613b43a33ec2b90dca6 100644
--- a/src/feature_creation/node/utils.cpp
+++ b/src/feature_creation/node/utils.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/utils.hpp"
 
 #ifdef PARAMETERIZE
diff --git a/src/feature_creation/node/utils.hpp b/src/feature_creation/node/utils.hpp
index b807a77884740453fd3b6ccde5e9be474ef39e5c..4ea80518dbac9b62bb827203a464c2504a2ee903 100644
--- a/src/feature_creation/node/utils.hpp
+++ b/src/feature_creation/node/utils.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/utils.hpp
  *  @brief utility functions to build node_ptrs from strings
  *
diff --git a/src/feature_creation/node/value_storage/nodes_value_containers.cpp b/src/feature_creation/node/value_storage/nodes_value_containers.cpp
index cd903ff7b6d0f326766e5534cf0116cd6cb0f54d..3f410cea963b46f4ad4570ce91f82afd7f2d3ac5 100644
--- a/src/feature_creation/node/value_storage/nodes_value_containers.cpp
+++ b/src/feature_creation/node/value_storage/nodes_value_containers.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/value_storage/nodes_value_containers.hpp"
 
 int node_value_arrs::N_SELECTED = 0;
diff --git a/src/feature_creation/node/value_storage/nodes_value_containers.hpp b/src/feature_creation/node/value_storage/nodes_value_containers.hpp
index d05d673720d9a5508aacf6b2655f0e3b4c13f56c..2376700c1b07647fdaa7be3fa0f3dfb02d1b7381 100644
--- a/src/feature_creation/node/value_storage/nodes_value_containers.hpp
+++ b/src/feature_creation/node/value_storage/nodes_value_containers.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/node/value_storage/node_value_containers.hpp
  *  @brief Centeral storage area for all descriptor matrix data
  *
diff --git a/src/feature_creation/units/Unit.cpp b/src/feature_creation/units/Unit.cpp
index 72a822e0a6ec2e6e6cfd4a77b88aa8855562cd17..4eaeee982effbc9b40916dc3fb8c38c22d8fea50 100644
--- a/src/feature_creation/units/Unit.cpp
+++ b/src/feature_creation/units/Unit.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/units/Unit.hpp"
 
 Unit::Unit() :
diff --git a/src/feature_creation/units/Unit.hpp b/src/feature_creation/units/Unit.hpp
index 852a28533beaeb980b45214c83160c4612823077..aa8e50cd571c1b7040c37145e117086f6cc4f5fb 100644
--- a/src/feature_creation/units/Unit.hpp
+++ b/src/feature_creation/units/Unit.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/unit/Unit.hpp
  *  @brief A representation of the units for each feature
  *
diff --git a/src/inputs/InputParser.cpp b/src/inputs/InputParser.cpp
index bfe1e331454fc4fce22d42fd5a8cc55150a9fc0e..f2768ed5c3132ede7b7d135485f683816bc61d47 100644
--- a/src/inputs/InputParser.cpp
+++ b/src/inputs/InputParser.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "inputs/InputParser.hpp"
 
 InputParser::InputParser(pt::ptree IP, std::string fn, std::shared_ptr<MPI_Interface> comm) :
diff --git a/src/inputs/InputParser.hpp b/src/inputs/InputParser.hpp
index b2eafb410891ea2ca572b179cd954df63ecb9758..78a22d778e45234ed7b546299b2ae5bd279f7fd2 100644
--- a/src/inputs/InputParser.hpp
+++ b/src/inputs/InputParser.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file inputs/InputParser.hpp
  *  @brief Define the class that parses the input file
  *
diff --git a/src/loss_function/LossFunction.cpp b/src/loss_function/LossFunction.cpp
index 46e3169728bbd947ed71d594905ccddf3382db2a..aa71442a1fd34d10961eac00d5e09f4a24d1d40a 100644
--- a/src/loss_function/LossFunction.cpp
+++ b/src/loss_function/LossFunction.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "loss_function/LossFunction.hpp"
 
 LossFunction::LossFunction(
diff --git a/src/loss_function/LossFunction.hpp b/src/loss_function/LossFunction.hpp
index 4d569fb296eb33aa583b2f8dba46089cc96dd335..6417e2fbb674e662a63d0a6c3940d446eeb6b665 100644
--- a/src/loss_function/LossFunction.hpp
+++ b/src/loss_function/LossFunction.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file loss_function/LossFunction.hpp
  *  @brief A class used to calculate the projection score and l0-regularization error
  *
diff --git a/src/loss_function/LossFunctionConvexHull.cpp b/src/loss_function/LossFunctionConvexHull.cpp
index 8240c9287a2382a1de78c1da250406e5ca4f361f..83ea26a44c81c020c0d9c2c0684f6c93acbb9bd0 100644
--- a/src/loss_function/LossFunctionConvexHull.cpp
+++ b/src/loss_function/LossFunctionConvexHull.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "loss_function/LossFunctionConvexHull.hpp"
 
 LossFunctionConvexHull::LossFunctionConvexHull(
diff --git a/src/loss_function/LossFunctionConvexHull.hpp b/src/loss_function/LossFunctionConvexHull.hpp
index 6024987c6524c58a5c2d04d4e1846359bbcb8ad4..ab816f30f1f4f59c029bfec8198b5100fdd2960f 100644
--- a/src/loss_function/LossFunctionConvexHull.hpp
+++ b/src/loss_function/LossFunctionConvexHull.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file loss_function/LossFunctionConvexHull.hpp
  *  @brief A class used to calculate the projection score and l0-regularization error
  *
diff --git a/src/loss_function/LossFunctionLogPearsonRMSE.cpp b/src/loss_function/LossFunctionLogPearsonRMSE.cpp
index cc2e933d03a11cdacad40b33093538bdb889cf7f..72911c2eb4a2f3f6614a422d5f399a6bc0bd665c 100644
--- a/src/loss_function/LossFunctionLogPearsonRMSE.cpp
+++ b/src/loss_function/LossFunctionLogPearsonRMSE.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "loss_function/LossFunctionLogPearsonRMSE.hpp"
 
 LossFunctionLogPearsonRMSE::LossFunctionLogPearsonRMSE(
diff --git a/src/loss_function/LossFunctionLogPearsonRMSE.hpp b/src/loss_function/LossFunctionLogPearsonRMSE.hpp
index bfb6225c2bf4e68b124f5e25119da6e8d05ae53f..cd99613d244590d5b1639acf9dc2fe34d3b5febd 100644
--- a/src/loss_function/LossFunctionLogPearsonRMSE.hpp
+++ b/src/loss_function/LossFunctionLogPearsonRMSE.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file loss_function/LossFunctionLogPearsonRMSE.hpp
  *  @brief A class used to calculate the projection score and l0-regularization error
  *
diff --git a/src/loss_function/LossFunctionPearsonRMSE.cpp b/src/loss_function/LossFunctionPearsonRMSE.cpp
index a9442432ae08ebcfa6ebfb373e23ee7941a3e26a..d8da1384d163fbb9b9d23a667d3cb927e8b36b38 100644
--- a/src/loss_function/LossFunctionPearsonRMSE.cpp
+++ b/src/loss_function/LossFunctionPearsonRMSE.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "loss_function/LossFunctionPearsonRMSE.hpp"
 
 LossFunctionPearsonRMSE::LossFunctionPearsonRMSE(
diff --git a/src/loss_function/LossFunctionPearsonRMSE.hpp b/src/loss_function/LossFunctionPearsonRMSE.hpp
index 76035fbd7c10412a6768cdd1f57c466c52226dcd..1a9140edafa965f56ab0e6ef1ee0eef24368b2f5 100644
--- a/src/loss_function/LossFunctionPearsonRMSE.hpp
+++ b/src/loss_function/LossFunctionPearsonRMSE.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file loss_function/LossFunctionPearsonRMSE.hpp
  *  @brief A class used to calculate the projection score and l0-regularization error
  *
diff --git a/src/loss_function/utils.cpp b/src/loss_function/utils.cpp
index c17fb3b00bcd79eef1b9e16b229b4f36cdb4d693..323498512d3f569be4e7c01ad6ef9a6be215d759 100644
--- a/src/loss_function/utils.cpp
+++ b/src/loss_function/utils.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "loss_function/utils.hpp"
 std::shared_ptr<LossFunction> loss_function_util::get_loss_function(
     std::string type,
diff --git a/src/loss_function/utils.hpp b/src/loss_function/utils.hpp
index 34e72f3fb811a11f717a03d91f752f4c7588a0c1..524637f006bbc4fa2a460b8d31ba0835b78cbf7e 100644
--- a/src/loss_function/utils.hpp
+++ b/src/loss_function/utils.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file loss_function/utils.hpp
  *  @brief utilities for generating loss_functions
  *
diff --git a/src/main.cpp b/src/main.cpp
index 8cee6abd1e5757e4ffcf8d8cdfb768da6c413f33..6224468daf80112c25d8a3706cdfaf5400b390a6 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "inputs/InputParser.hpp"
 #include "descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp"
 #include "descriptor_identifier/SISSO_DI/SISSOClassifier.hpp"
diff --git a/src/mpi_interface/MPI_Interface.cpp b/src/mpi_interface/MPI_Interface.cpp
index 96b7b3af8f6009cd9caa7ee8846d6a2953b46a0b..afe607dc3a42b2d85faac06efb01a25896312deb 100644
--- a/src/mpi_interface/MPI_Interface.cpp
+++ b/src/mpi_interface/MPI_Interface.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "mpi_interface/MPI_Interface.hpp"
 
 MPI_Interface::MPI_Interface() : boost::mpi::communicator()
diff --git a/src/mpi_interface/MPI_Interface.hpp b/src/mpi_interface/MPI_Interface.hpp
index 1fd61694e4bd5f3a016a808199053b63777c04f4..ce1f38899fb28adfd01b57379c632068e068f320 100644
--- a/src/mpi_interface/MPI_Interface.hpp
+++ b/src/mpi_interface/MPI_Interface.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file mpi_interface/MPI_Interface.hpp
  *  @brief Define MPI interface for the calculation
  *
diff --git a/src/mpi_interface/MPI_ops.cpp b/src/mpi_interface/MPI_ops.cpp
index 543cbc48dc25ae7202137de3c675377dbbc151b5..f2584746fd1027f120d5e2bd62317c5473d643c4 100644
--- a/src/mpi_interface/MPI_ops.cpp
+++ b/src/mpi_interface/MPI_ops.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "mpi_interface/MPI_ops.hpp"
 
 // MPI_Op top_feats;
diff --git a/src/mpi_interface/MPI_ops.hpp b/src/mpi_interface/MPI_ops.hpp
index 8ddc9d268b17388c135b678925df7f3badba9db9..801747b54dacffc64df79f041c57aca5e374e181 100644
--- a/src/mpi_interface/MPI_ops.hpp
+++ b/src/mpi_interface/MPI_ops.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file mpi_interface/MPI_Ops.hpp
  *  @brief Define MPI reduce all operator to facilitate a distributed sorting algorithm
  *
diff --git a/src/mpi_interface/serialize_tuple.h b/src/mpi_interface/serialize_tuple.h
index cc3cfe742abcddb80406b3aab6308dd8704abf1b..8645f40fef2d1e274ec87a5d79dcf70f277c4a08 100644
--- a/src/mpi_interface/serialize_tuple.h
+++ b/src/mpi_interface/serialize_tuple.h
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /*
 Copyright 2011 Christopher Allen Ogden. All rights reserved.
 Redistribution and use in source and binary forms, with or without modification, are
diff --git a/src/nl_opt/NLOptWrapper.cpp b/src/nl_opt/NLOptWrapper.cpp
index 3850ffd7ad4e8560c9362605b98614f34f741b25..78a879533dd99a9afc63d6c9e8853f9a2943d09b 100644
--- a/src/nl_opt/NLOptWrapper.cpp
+++ b/src/nl_opt/NLOptWrapper.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "nl_opt/NLOptWrapper.hpp"
 
 int nlopt_wrapper::MAX_PARAM_DEPTH = -1;
diff --git a/src/nl_opt/NLOptWrapper.hpp b/src/nl_opt/NLOptWrapper.hpp
index 2cb2465386dcd333b7079390b878187dc0a03d63..41d71dd82a756975a7bff1e357e21c60890d7929 100644
--- a/src/nl_opt/NLOptWrapper.hpp
+++ b/src/nl_opt/NLOptWrapper.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file feature_creation/parameterization/NLOptWrapper.hpp
  *  @brief Wrapper and functions to use libnlopt to find parameterizations for features
  *
diff --git a/src/python/py_binding_cpp_def/_sisso.cpp b/src/python/py_binding_cpp_def/_sisso.cpp
index 1fb8a9255f8a4c7213bb59a37fb43fd4629d7fdc..e26653d2f401a5a477d77ce86ee69c02c0fd2382 100644
--- a/src/python/py_binding_cpp_def/_sisso.cpp
+++ b/src/python/py_binding_cpp_def/_sisso.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include <boost/python/suite/indexing/map_indexing_suite.hpp>
 #include <boost/python/numpy.hpp>
 
diff --git a/src/python/py_binding_cpp_def/bindings_docstring_keyed.cpp b/src/python/py_binding_cpp_def/bindings_docstring_keyed.cpp
index 070cb73f208e8e889d1b6afc21e7ce4d03c8487f..45930efd008ad7ad7b052b40f8aee4b21684b3d2 100644
--- a/src/python/py_binding_cpp_def/bindings_docstring_keyed.cpp
+++ b/src/python/py_binding_cpp_def/bindings_docstring_keyed.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "python/py_binding_cpp_def/bindings.hpp"
 
 using namespace boost::python;
diff --git a/src/python/py_binding_cpp_def/bindings_docstring_keyed.hpp b/src/python/py_binding_cpp_def/bindings_docstring_keyed.hpp
index c1aa6c9821f1f0de3f39589197ac0710f6294889..ac94035b9cbf69bbe424158c2f1cdb2429431e52 100644
--- a/src/python/py_binding_cpp_def/bindings_docstring_keyed.hpp
+++ b/src/python/py_binding_cpp_def/bindings_docstring_keyed.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file python/bindings.hpp
  *  @brief Definitions to convert C++ classes into python classes
  *
diff --git a/src/python/py_binding_cpp_def/conversion_utils.hpp b/src/python/py_binding_cpp_def/conversion_utils.hpp
index afd6a5f561371194614b5d5dbf6ba0f896f4963b..28699c5be119ad327b94add943f9ca0ef7ae3052 100644
--- a/src/python/py_binding_cpp_def/conversion_utils.hpp
+++ b/src/python/py_binding_cpp_def/conversion_utils.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file python/py_binding_cpp_def/conversion_utils.hpp
  *  @brief A set of functions to convert std::vectors to and from python objects
  *
diff --git a/src/python/py_binding_cpp_def/descriptor_identifier/Model.cpp b/src/python/py_binding_cpp_def/descriptor_identifier/Model.cpp
index d1778521b8bbea83543336ee22c0fdcd3f3564e5..0bce0176d13c4e8f691ee4afca048ce963ece20f 100644
--- a/src/python/py_binding_cpp_def/descriptor_identifier/Model.cpp
+++ b/src/python/py_binding_cpp_def/descriptor_identifier/Model.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "descriptor_identifier/Model/Model.hpp"
 
 np::ndarray Model::eval_many_py(np::ndarray x_in) const
diff --git a/src/python/py_binding_cpp_def/descriptor_identifier/ModelClassifier.cpp b/src/python/py_binding_cpp_def/descriptor_identifier/ModelClassifier.cpp
index e10ea34c7f721ede6d67fde6f7eea68849f3d363..e467b410f85742022673323265cb3798d945f6a2 100644
--- a/src/python/py_binding_cpp_def/descriptor_identifier/ModelClassifier.cpp
+++ b/src/python/py_binding_cpp_def/descriptor_identifier/ModelClassifier.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "descriptor_identifier/Model/ModelClassifier.hpp"
 
 ModelClassifier::ModelClassifier(const ModelClassifier& o, py::list new_coefs, np::ndarray prop_train_est, np::ndarray prop_test_est) :
diff --git a/src/python/py_binding_cpp_def/descriptor_identifier/SISSOClassifier.cpp b/src/python/py_binding_cpp_def/descriptor_identifier/SISSOClassifier.cpp
index 09d9456077126c06c305915d80dda267041afe64..1263dacd1aaec71a1bb55f8fc73055aead10e35f 100644
--- a/src/python/py_binding_cpp_def/descriptor_identifier/SISSOClassifier.cpp
+++ b/src/python/py_binding_cpp_def/descriptor_identifier/SISSOClassifier.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "descriptor_identifier/SISSO_DI/SISSOClassifier.hpp"
 
 SISSOClassifier::SISSOClassifier(
diff --git a/src/python/py_binding_cpp_def/descriptor_identifier/SISSOLogRegressor.cpp b/src/python/py_binding_cpp_def/descriptor_identifier/SISSOLogRegressor.cpp
index 056989dad95f0411ca08a7490c671735c10e041f..52ddb012a9ac714d493a31a443157ff40b4b45fd 100644
--- a/src/python/py_binding_cpp_def/descriptor_identifier/SISSOLogRegressor.cpp
+++ b/src/python/py_binding_cpp_def/descriptor_identifier/SISSOLogRegressor.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "descriptor_identifier/SISSO_DI/SISSOLogRegressor.hpp"
 
 SISSOLogRegressor::SISSOLogRegressor(
diff --git a/src/python/py_binding_cpp_def/descriptor_identifier/SISSORegressor.cpp b/src/python/py_binding_cpp_def/descriptor_identifier/SISSORegressor.cpp
index 530af82be3fa6d01395a4bc46d7453c9a46803c4..49362e684624d0d75bb03b64fdf002a121d556bc 100644
--- a/src/python/py_binding_cpp_def/descriptor_identifier/SISSORegressor.cpp
+++ b/src/python/py_binding_cpp_def/descriptor_identifier/SISSORegressor.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "descriptor_identifier/SISSO_DI/SISSORegressor.hpp"
 
 SISSORegressor::SISSORegressor(
diff --git a/src/python/py_binding_cpp_def/descriptor_identifier/SISSO_DI.cpp b/src/python/py_binding_cpp_def/descriptor_identifier/SISSO_DI.cpp
index 4c55ba915d6dfdfb66d95ac8966a81cafd112cb7..9a0b3d588f931af480a7937fdcc9b48e276093c8 100644
--- a/src/python/py_binding_cpp_def/descriptor_identifier/SISSO_DI.cpp
+++ b/src/python/py_binding_cpp_def/descriptor_identifier/SISSO_DI.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "descriptor_identifier/SISSO_DI/SISSO_DI.hpp"
 
 SISSO_DI::SISSO_DI(
diff --git a/src/python/py_binding_cpp_def/feature_creation/FeatureNode.cpp b/src/python/py_binding_cpp_def/feature_creation/FeatureNode.cpp
index f11a8c0cd37613bb800c02ac3c7f7653eef8ba74..27a2861f16f3d886b9a4cef49abf84217a770a5c 100644
--- a/src/python/py_binding_cpp_def/feature_creation/FeatureNode.cpp
+++ b/src/python/py_binding_cpp_def/feature_creation/FeatureNode.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/FeatureNode.hpp"
 
 FeatureNode::FeatureNode(unsigned long int feat_ind, std::string expr, np::ndarray value, np::ndarray test_value, Unit unit) :
diff --git a/src/python/py_binding_cpp_def/feature_creation/FeatureSpace.cpp b/src/python/py_binding_cpp_def/feature_creation/FeatureSpace.cpp
index c0e9b7e765eb6f915dd8e7472a7476e00702dffa..4946e6f126b678ad9b87b776a61943a2d7c6886d 100644
--- a/src/python/py_binding_cpp_def/feature_creation/FeatureSpace.cpp
+++ b/src/python/py_binding_cpp_def/feature_creation/FeatureSpace.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/feature_space/FeatureSpace.hpp"
 
 #ifdef PARAMETERIZE
diff --git a/src/python/py_binding_cpp_def/feature_creation/ModelNode.cpp b/src/python/py_binding_cpp_def/feature_creation/ModelNode.cpp
index 561ce00be967391b86b912dc67d7aea01d126879..258323fa6a5f0571a50e846a7743c3a0cbcba2b2 100644
--- a/src/python/py_binding_cpp_def/feature_creation/ModelNode.cpp
+++ b/src/python/py_binding_cpp_def/feature_creation/ModelNode.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "feature_creation/node/ModelNode.hpp"
 
 ModelNode::ModelNode(
diff --git a/src/python/py_binding_cpp_def/feature_creation/node_utils.cpp b/src/python/py_binding_cpp_def/feature_creation/node_utils.cpp
index aa7126866f94cab908dd93daae748b444efe33c7..798d1f4ba09f18e0bb8ec02a920d845efa9e0e68 100644
--- a/src/python/py_binding_cpp_def/feature_creation/node_utils.cpp
+++ b/src/python/py_binding_cpp_def/feature_creation/node_utils.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "python/py_binding_cpp_def/feature_creation/node_utils.hpp"
 
 py::list str2node::phi_selected_from_file_py(std::string filename, py::list phi_0)
diff --git a/src/python/py_binding_cpp_def/feature_creation/node_utils.hpp b/src/python/py_binding_cpp_def/feature_creation/node_utils.hpp
index 1adb9ec30e17f82d7ac671a59e7e844cc50a329f..25b8a205ed89503deec608c48e99e7ecc4677bcc 100644
--- a/src/python/py_binding_cpp_def/feature_creation/node_utils.hpp
+++ b/src/python/py_binding_cpp_def/feature_creation/node_utils.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file python/feature_creation/node_utils.hpp
  *  @brief python binding functions for node utilities
  *
diff --git a/src/utils/compare_features.cpp b/src/utils/compare_features.cpp
index 3418e5474f81b3a9268bf3d11c998feab3736e42..1a556924cc4e8d34a245c9f95598552b3e501c01 100644
--- a/src/utils/compare_features.cpp
+++ b/src/utils/compare_features.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "utils/compare_features.hpp"
 #include <iomanip>
 std::vector<double> comp_feats::CORR_CHECK;
diff --git a/src/utils/compare_features.hpp b/src/utils/compare_features.hpp
index 955fa39755d7f2364888bce92892c4f46d3efdcd..a20946dc8b007068cc4878ef33e3779c00c44c38 100644
--- a/src/utils/compare_features.hpp
+++ b/src/utils/compare_features.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file utils/compare_features.hpp
  *  @brief A set of functions to project features onto a second vector
  *
diff --git a/src/utils/enum.hpp b/src/utils/enum.hpp
index cc24940a55d0889718b199a3d8a2193068653712..f11fe02b5e5a924830df1be03e63dc61c7998a3d 100644
--- a/src/utils/enum.hpp
+++ b/src/utils/enum.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file utils/enum.hpp
  *  @brief Define node type enum
  *
diff --git a/src/utils/math_funcs.cpp b/src/utils/math_funcs.cpp
index 1efd66c153d61364b612c10cf6fb19841dc5a597..976ffe39888beb78f24e9806df4d8df914a66c40 100644
--- a/src/utils/math_funcs.cpp
+++ b/src/utils/math_funcs.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "utils/math_funcs.hpp"
 
 bool util_funcs::iterate(std::vector<int>& inds, int size, int incriment)
diff --git a/src/utils/math_funcs.hpp b/src/utils/math_funcs.hpp
index f89feeed77f185b237d70e4551221d11825b7d6a..2f4b5064ece38684d510aca620fafe4f0c3f4c2b 100644
--- a/src/utils/math_funcs.hpp
+++ b/src/utils/math_funcs.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file utils/math_funcs.hpp
  *  @brief A set of functions to get standardized mathematical operations on
  *
diff --git a/src/utils/mkl_interface.hpp b/src/utils/mkl_interface.hpp
index 0ce0dcb79422aeeb2e10e697847aba37f1b6b44b..5164ff658cd05f037712e7366ac82afec92d9edf 100644
--- a/src/utils/mkl_interface.hpp
+++ b/src/utils/mkl_interface.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file utils/mkl_interface.hpp
  *  @brief wrapper functions to a mkl blas functionality
  *
diff --git a/src/utils/project.cpp b/src/utils/project.cpp
index 96b48335e08d3830495f2238ed85f9e67362fb47..497d2d72b36325c1564f0893a7c1b423d2b18bc7 100644
--- a/src/utils/project.cpp
+++ b/src/utils/project.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "utils/project.hpp"
 
 void project_funcs::project_r(
diff --git a/src/utils/project.hpp b/src/utils/project.hpp
index a12b44089f182c0402ce51024c9492fa4245fa1c..32b951bf271ff510b3e4dbf7c79f34af6eb56154 100644
--- a/src/utils/project.hpp
+++ b/src/utils/project.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file utils/project.hpp
  *  @brief A set of functions to project features onto a second vector
  *
diff --git a/src/utils/string_utils.cpp b/src/utils/string_utils.cpp
index 366c250c98e9f241bf7900bb302c217d774be9dd..288d8cd3310435f43a64194a4866fcb2ae884944 100644
--- a/src/utils/string_utils.cpp
+++ b/src/utils/string_utils.cpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 #include "utils/string_utils.hpp"
 
 std::vector<std::string> str_utils::split_string_trim(const std::string str, const std::string split_tokens)
diff --git a/src/utils/string_utils.hpp b/src/utils/string_utils.hpp
index 5a3b45838b7d43a1cd099f4d3f7741d77f9e2dfb..66f80132fd0091d2b6f7f4a97baca287e0a64ca7 100644
--- a/src/utils/string_utils.hpp
+++ b/src/utils/string_utils.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file utils/string_utils.hpp
  *  @brief A set of functions to manipulate strings
  *
diff --git a/src/utils/vector_utils.hpp b/src/utils/vector_utils.hpp
index c60771e2835bf6af86c16a1ae9f835f608761d02..9d4ba87f5fe3ee14fdb257d974e71793a8816973 100644
--- a/src/utils/vector_utils.hpp
+++ b/src/utils/vector_utils.hpp
@@ -1,3 +1,16 @@
+// Copyright 2021 Thomas A. R. Purcell
+
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+
+//     http://www.apache.org/licenses/LICENSE-2.0
+
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 /** @file utils/vector_utils.hpp
  *  @brief A set of functions to manipulate vectors
  *