diff --git a/sing_parse/build.rs b/sing_parse/build.rs
index 23c7d3f..a916d4b 100644
--- a/sing_parse/build.rs
+++ b/sing_parse/build.rs
@@ -1,3 +1,20 @@
+// Copyright 2022 Daniel Mowitz
+//
+// This file is part of sing.
+//
+// sing is free software: you can redistribute it and/or modify it
+// under the terms of the GNU Affero General Public License
+// as published by the Free Software Foundation,
+// either version 3 of the License, or (at your option) any later version.
+//
+// sing is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty
+// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// See the GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with sing. If not, see .
+
extern crate lalrpop;
fn main() {
diff --git a/sing_parse/src/callobj.rs b/sing_parse/src/callobj.rs
index 95d4161..a91fc84 100644
--- a/sing_parse/src/callobj.rs
+++ b/sing_parse/src/callobj.rs
@@ -1,3 +1,20 @@
+// Copyright 2022 Daniel Mowitz
+//
+// This file is part of sing.
+//
+// sing is free software: you can redistribute it and/or modify it
+// under the terms of the GNU Affero General Public License
+// as published by the Free Software Foundation,
+// either version 3 of the License, or (at your option) any later version.
+//
+// sing is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty
+// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// See the GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with sing. If not, see .
+
use std::fmt;
use sing_util::TraitCallMessage;
use serde::{Serialize, Deserialize};
diff --git a/sing_parse/src/fun_parser.lalrpop b/sing_parse/src/fun_parser.lalrpop
index 1ecd659..d89584d 100644
--- a/sing_parse/src/fun_parser.lalrpop
+++ b/sing_parse/src/fun_parser.lalrpop
@@ -1,3 +1,20 @@
+// Copyright 2022 Daniel Mowitz
+//
+// This file is part of sing.
+//
+// sing is free software: you can redistribute it and/or modify it
+// under the terms of the GNU Affero General Public License
+// as published by the Free Software Foundation,
+// either version 3 of the License, or (at your option) any later version.
+//
+// sing is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty
+// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// See the GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with sing. If not, see .
+
use std::str::FromStr;
use crate::callobj::CallObj;
diff --git a/sing_parse/src/lib.rs b/sing_parse/src/lib.rs
index 7081755..dbd243f 100644
--- a/sing_parse/src/lib.rs
+++ b/sing_parse/src/lib.rs
@@ -1,3 +1,20 @@
+// Copyright 2022 Daniel Mowitz
+//
+// This file is part of sing.
+//
+// sing is free software: you can redistribute it and/or modify it
+// under the terms of the GNU Affero General Public License
+// as published by the Free Software Foundation,
+// either version 3 of the License, or (at your option) any later version.
+//
+// sing is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty
+// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// See the GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with sing. If not, see .
+
use std::{error::Error};
pub use callobj::CallObj;
diff --git a/sing_util/src/lib.rs b/sing_util/src/lib.rs
index cf33ad8..5204850 100644
--- a/sing_util/src/lib.rs
+++ b/sing_util/src/lib.rs
@@ -1,3 +1,20 @@
+// Copyright 2022 Daniel Mowitz
+//
+// This file is part of sing.
+//
+// sing is free software: you can redistribute it and/or modify it
+// under the terms of the GNU Affero General Public License
+// as published by the Free Software Foundation,
+// either version 3 of the License, or (at your option) any later version.
+//
+// sing is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty
+// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// See the GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with sing. If not, see .
+
use core::fmt::Debug;
use std::{error::Error, collections::HashMap};
diff --git a/sing_util/src/serde_wrapper.rs b/sing_util/src/serde_wrapper.rs
index 51fe722..97b919a 100644
--- a/sing_util/src/serde_wrapper.rs
+++ b/sing_util/src/serde_wrapper.rs
@@ -1,3 +1,20 @@
+// Copyright 2022 Daniel Mowitz
+//
+// This file is part of sing.
+//
+// sing is free software: you can redistribute it and/or modify it
+// under the terms of the GNU Affero General Public License
+// as published by the Free Software Foundation,
+// either version 3 of the License, or (at your option) any later version.
+//
+// sing is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty
+// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// See the GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with sing. If not, see .
+
use std::{str::FromStr, error::Error};
use proc_macro2::TokenStream;
diff --git a/src/lib.rs b/src/lib.rs
index 69210a0..3dbbbdd 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -1,3 +1,20 @@
+// Copyright 2022 Daniel Mowitz
+//
+// This file is part of sing.
+//
+// sing is free software: you can redistribute it and/or modify it
+// under the terms of the GNU Affero General Public License
+// as published by the Free Software Foundation,
+// either version 3 of the License, or (at your option) any later version.
+//
+// sing is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty
+// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// See the GNU Affero General Public License for more details.
+//
+// You should have received a copy of the GNU Affero General Public License
+// along with sing. If not, see .
+
pub use sing_macros::*;
pub use sing_parse::*;
-pub use sing_util::TraitCallMessage;
+pub use sing_util::TraitCallMessage;
\ No newline at end of file