diff --git a/ql-qlf-plugin/Makefile b/ql-qlf-plugin/Makefile
index d51c146..30200bf 100644
--- a/ql-qlf-plugin/Makefile
+++ b/ql-qlf-plugin/Makefile
@@ -1,10 +1,18 @@
-# Copyright (C) 2019-2022 The SymbiFlow Authors
+# Copyright 2020-2022 F4PGA Authors
 #
-# Use of this source code is governed by a ISC-style
-# license that can be found in the LICENSE file or at
-# https://opensource.org/licenses/ISC
+# 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
 #
-# SPDX-License-Identifier: ISC
+#     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.
+#
+# SPDX-License-Identifier: Apache-2.0
 
 NAME = ql-qlf
 SOURCES = synth_quicklogic.cc \
diff --git a/ql-qlf-plugin/common/cells_sim.v b/ql-qlf-plugin/common/cells_sim.v
index 6967a09..95bc86b 100644
--- a/ql-qlf-plugin/common/cells_sim.v
+++ b/ql-qlf-plugin/common/cells_sim.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 
 module inv (
diff --git a/ql-qlf-plugin/pp3/abc9_map.v b/ql-qlf-plugin/pp3/abc9_map.v
index 86e14d7..8b342f6 100644
--- a/ql-qlf-plugin/pp3/abc9_map.v
+++ b/ql-qlf-plugin/pp3/abc9_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 // This file exists to map purely-synchronous flops to ABC9 flops, while 
 // mapping flops with asynchronous-set/clear as boxes, this is because ABC9 
diff --git a/ql-qlf-plugin/pp3/abc9_model.v b/ql-qlf-plugin/pp3/abc9_model.v
index 9d2b198..a8b03e7 100644
--- a/ql-qlf-plugin/pp3/abc9_model.v
+++ b/ql-qlf-plugin/pp3/abc9_model.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 (* abc9_flop, lib_whitebox *)
 module $__PP3_DFFEPC_SYNCONLY (
diff --git a/ql-qlf-plugin/pp3/abc9_unmap.v b/ql-qlf-plugin/pp3/abc9_unmap.v
index f9262b8..29a1adf 100644
--- a/ql-qlf-plugin/pp3/abc9_unmap.v
+++ b/ql-qlf-plugin/pp3/abc9_unmap.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 module $__PP3_DFFEPC_SYNCONLY (
   output Q,
   input D,
diff --git a/ql-qlf-plugin/pp3/brams_map.v b/ql-qlf-plugin/pp3/brams_map.v
index 07b65b7..c0ebb39 100644
--- a/ql-qlf-plugin/pp3/brams_map.v
+++ b/ql-qlf-plugin/pp3/brams_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module \$__QUICKLOGIC_RAMB16K (
     CLK2,
diff --git a/ql-qlf-plugin/pp3/brams_sim.v b/ql-qlf-plugin/pp3/brams_sim.v
index 0981c7a..1b15256 100644
--- a/ql-qlf-plugin/pp3/brams_sim.v
+++ b/ql-qlf-plugin/pp3/brams_sim.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 `timescale 1ns / 10ps
 module fifo_controller_model (
diff --git a/ql-qlf-plugin/pp3/cells_map.v b/ql-qlf-plugin/pp3/cells_map.v
index 625b2c5..bd3d36e 100644
--- a/ql-qlf-plugin/pp3/cells_map.v
+++ b/ql-qlf-plugin/pp3/cells_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module \$_MUX8_ (
     A,
diff --git a/ql-qlf-plugin/pp3/cells_sim.v b/ql-qlf-plugin/pp3/cells_sim.v
index 71c98c6..cb56a52 100644
--- a/ql-qlf-plugin/pp3/cells_sim.v
+++ b/ql-qlf-plugin/pp3/cells_sim.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module inv (
     output Q,
diff --git a/ql-qlf-plugin/pp3/ffs_map.v b/ql-qlf-plugin/pp3/ffs_map.v
index c023fc1..b26e6a6 100644
--- a/ql-qlf-plugin/pp3/ffs_map.v
+++ b/ql-qlf-plugin/pp3/ffs_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module \$_DFFSRE_PPPP_ (
     input  C,
diff --git a/ql-qlf-plugin/pp3/latches_map.v b/ql-qlf-plugin/pp3/latches_map.v
index e7825a7..514d9cd 100644
--- a/ql-qlf-plugin/pp3/latches_map.v
+++ b/ql-qlf-plugin/pp3/latches_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module \$_DLATCH_P_ (E, D, Q);
   wire [1023:0] _TECHMAP_DO_ = "simplemap; opt";
diff --git a/ql-qlf-plugin/pp3/lut_map.v b/ql-qlf-plugin/pp3/lut_map.v
index 867a963..a7b2a7c 100644
--- a/ql-qlf-plugin/pp3/lut_map.v
+++ b/ql-qlf-plugin/pp3/lut_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module \$lut (
     A,
diff --git a/ql-qlf-plugin/pp3/mult_sim.v b/ql-qlf-plugin/pp3/mult_sim.v
index 432e485..d46ddc0 100644
--- a/ql-qlf-plugin/pp3/mult_sim.v
+++ b/ql-qlf-plugin/pp3/mult_sim.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 (* blackbox *)
 module qlal4s3_mult_32x32_cell (
diff --git a/ql-qlf-plugin/pp3/qlal3_sim.v b/ql-qlf-plugin/pp3/qlal3_sim.v
index e801df7..c1380e5 100644
--- a/ql-qlf-plugin/pp3/qlal3_sim.v
+++ b/ql-qlf-plugin/pp3/qlal3_sim.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 (* blackbox *)
 (* keep *)
diff --git a/ql-qlf-plugin/pp3/qlal4s3b_sim.v b/ql-qlf-plugin/pp3/qlal4s3b_sim.v
index 68a37fc..39184a8 100644
--- a/ql-qlf-plugin/pp3/qlal4s3b_sim.v
+++ b/ql-qlf-plugin/pp3/qlal4s3b_sim.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 `timescale 1ns / 10ps
 module ahb_gen_bfm (
diff --git a/ql-qlf-plugin/pp3_braminit.cc b/ql-qlf-plugin/pp3_braminit.cc
index 0c9b860..459f3cf 100644
--- a/ql-qlf-plugin/pp3_braminit.cc
+++ b/ql-qlf-plugin/pp3_braminit.cc
@@ -1,11 +1,19 @@
 /*
- * Copyright (C) 2019-2022 The SymbiFlow Authors
+ * Copyright 2020-2022 F4PGA Authors
  *
- * Use of this source code is governed by a ISC-style
- * license that can be found in the LICENSE file or at
- * https://opensource.org/licenses/ISC
+ * 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
  *
- * SPDX-License-Identifier: ISC
+ *     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.
+ *
+ * SPDX-License-Identifier: Apache-2.0
  *
  */
 
diff --git a/ql-qlf-plugin/ql-dsp-simd.cc b/ql-qlf-plugin/ql-dsp-simd.cc
index d70e2a6..ba40c07 100644
--- a/ql-qlf-plugin/ql-dsp-simd.cc
+++ b/ql-qlf-plugin/ql-dsp-simd.cc
@@ -1,11 +1,19 @@
 /*
- * Copyright (C) 2019-2022 The SymbiFlow Authors.
+ * Copyright 2020-2022 F4PGA Authors
  *
- * Use of this source code is governed by a ISC-style
- * license that can be found in the LICENSE file or at
- * https://opensource.org/licenses/ISC
+ * 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
  *
- * SPDX-License-Identifier:ISC
+ *     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.
+ *
+ * SPDX-License-Identifier: Apache-2.0
  */
 
 #include "kernel/log.h"
diff --git a/ql-qlf-plugin/ql-dsp.cc b/ql-qlf-plugin/ql-dsp.cc
index fe5a986..4e8e2c6 100644
--- a/ql-qlf-plugin/ql-dsp.cc
+++ b/ql-qlf-plugin/ql-dsp.cc
@@ -1,11 +1,19 @@
 /*
- * Copyright (C) 2019-2022 The SymbiFlow Authors
+ * Copyright 2020-2022 F4PGA Authors
  *
- * Use of this source code is governed by a ISC-style
- * license that can be found in the LICENSE file or at
- * https://opensource.org/licenses/ISC
+ * 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
  *
- * SPDX-License-Identifier: ISC
+ *     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.
+ *
+ * SPDX-License-Identifier: Apache-2.0
  *
  */
 
diff --git a/ql-qlf-plugin/ql-edif.cc b/ql-qlf-plugin/ql-edif.cc
index a6bed4c..4633a10 100644
--- a/ql-qlf-plugin/ql-edif.cc
+++ b/ql-qlf-plugin/ql-edif.cc
@@ -1,11 +1,19 @@
 /*
- * Copyright (C) 2019-2022 The SymbiFlow Authors
+ * Copyright 2020-2022 F4PGA Authors
  *
- * Use of this source code is governed by a ISC-style
- * license that can be found in the LICENSE file or at
- * https://opensource.org/licenses/ISC
+ * 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
  *
- * SPDX-License-Identifier: ISC
+ *     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.
+ *
+ * SPDX-License-Identifier: Apache-2.0
  *
  */
 
diff --git a/ql-qlf-plugin/qlf_k4n8/arith_map.v b/ql-qlf-plugin/qlf_k4n8/arith_map.v
index 6e3ee6d..564b721 100644
--- a/ql-qlf-plugin/qlf_k4n8/arith_map.v
+++ b/ql-qlf-plugin/qlf_k4n8/arith_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 (* techmap_celltype = "$alu" *)
 module _80_quicklogic_alu (A, B, CI, BI, X, Y, CO);
diff --git a/ql-qlf-plugin/qlf_k4n8/cells_sim.v b/ql-qlf-plugin/qlf_k4n8/cells_sim.v
index 96caadd..4ec10f2 100644
--- a/ql-qlf-plugin/qlf_k4n8/cells_sim.v
+++ b/ql-qlf-plugin/qlf_k4n8/cells_sim.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 (* abc9_box, lib_whitebox *)
 module adder_lut4(
diff --git a/ql-qlf-plugin/qlf_k4n8/ffs_map.v b/ql-qlf-plugin/qlf_k4n8/ffs_map.v
index cd8837b..61fab5f 100644
--- a/ql-qlf-plugin/qlf_k4n8/ffs_map.v
+++ b/ql-qlf-plugin/qlf_k4n8/ffs_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module \$_DFF_P_ (D, Q, C);
     input D;
diff --git a/ql-qlf-plugin/qlf_k6n10/arith_map.v b/ql-qlf-plugin/qlf_k6n10/arith_map.v
index d8d4665..092120f 100644
--- a/ql-qlf-plugin/qlf_k6n10/arith_map.v
+++ b/ql-qlf-plugin/qlf_k6n10/arith_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 //////////////////////////
 //      arithmetic      //
diff --git a/ql-qlf-plugin/qlf_k6n10/brams_map.v b/ql-qlf-plugin/qlf_k6n10/brams_map.v
index f363805..a22685c 100644
--- a/ql-qlf-plugin/qlf_k6n10/brams_map.v
+++ b/ql-qlf-plugin/qlf_k6n10/brams_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 
 module \$__QLF_RAM16K (
diff --git a/ql-qlf-plugin/qlf_k6n10/cells_sim.v b/ql-qlf-plugin/qlf_k6n10/cells_sim.v
index d015c8a..ab875f1 100644
--- a/ql-qlf-plugin/qlf_k6n10/cells_sim.v
+++ b/ql-qlf-plugin/qlf_k6n10/cells_sim.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 (* abc9_box, lib_whitebox *)
 module adder(
diff --git a/ql-qlf-plugin/qlf_k6n10/dsp_map.v b/ql-qlf-plugin/qlf_k6n10/dsp_map.v
index 49d5e23..aa98429 100644
--- a/ql-qlf-plugin/qlf_k6n10/dsp_map.v
+++ b/ql-qlf-plugin/qlf_k6n10/dsp_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module \$__MUL16X16 (input [15:0] A, input [15:0] B, output [31:0] Y);
 	parameter A_SIGNED = 0;
diff --git a/ql-qlf-plugin/qlf_k6n10/ffs_map.v b/ql-qlf-plugin/qlf_k6n10/ffs_map.v
index 500d21a..9182f37 100644
--- a/ql-qlf-plugin/qlf_k6n10/ffs_map.v
+++ b/ql-qlf-plugin/qlf_k6n10/ffs_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 // Basic DFF
 
diff --git a/ql-qlf-plugin/qlf_k6n10/lut_map.v b/ql-qlf-plugin/qlf_k6n10/lut_map.v
index 9687a90..9d24cba 100644
--- a/ql-qlf-plugin/qlf_k6n10/lut_map.v
+++ b/ql-qlf-plugin/qlf_k6n10/lut_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 `ifndef NO_LUT
 module \$lut (A, Y);
diff --git a/ql-qlf-plugin/qlf_k6n10f/TDP18Kx18_FIFO.v b/ql-qlf-plugin/qlf_k6n10f/TDP18Kx18_FIFO.v
index c9d0b8a..a68e88e 100644
--- a/ql-qlf-plugin/qlf_k6n10f/TDP18Kx18_FIFO.v
+++ b/ql-qlf-plugin/qlf_k6n10f/TDP18Kx18_FIFO.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module TDP18K_FIFO (
 	RMODE_A,
diff --git a/ql-qlf-plugin/qlf_k6n10f/arith_map.v b/ql-qlf-plugin/qlf_k6n10f/arith_map.v
index 35bd691..908b171 100644
--- a/ql-qlf-plugin/qlf_k6n10f/arith_map.v
+++ b/ql-qlf-plugin/qlf_k6n10f/arith_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 (* techmap_celltype = "$alu" *)
 module _80_quicklogic_alu (A, B, CI, BI, X, Y, CO);
 	parameter A_SIGNED = 0;
diff --git a/ql-qlf-plugin/qlf_k6n10f/brams_map.v b/ql-qlf-plugin/qlf_k6n10f/brams_map.v
index e1b7f27..4df5ec2 100644
--- a/ql-qlf-plugin/qlf_k6n10f/brams_map.v
+++ b/ql-qlf-plugin/qlf_k6n10f/brams_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 `define MODE_36 3'b111	// 36 or 32-bit
 `define MODE_18 3'b110	// 18 or 16-bit
diff --git a/ql-qlf-plugin/qlf_k6n10f/cells_sim.v b/ql-qlf-plugin/qlf_k6n10f/cells_sim.v
index f382797..dff4af3 100644
--- a/ql-qlf-plugin/qlf_k6n10f/cells_sim.v
+++ b/ql-qlf-plugin/qlf_k6n10f/cells_sim.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 (* abc9_flop, lib_whitebox *)
 module sh_dff(
diff --git a/ql-qlf-plugin/qlf_k6n10f/dsp_final_map.v b/ql-qlf-plugin/qlf_k6n10f/dsp_final_map.v
index 79c2f52..6967a44 100644
--- a/ql-qlf-plugin/qlf_k6n10f/dsp_final_map.v
+++ b/ql-qlf-plugin/qlf_k6n10f/dsp_final_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module dsp_t1_20x18x64 (
     input  [19:0] a_i,
diff --git a/ql-qlf-plugin/qlf_k6n10f/dsp_map.v b/ql-qlf-plugin/qlf_k6n10f/dsp_map.v
index 681d113..fbde7fd 100644
--- a/ql-qlf-plugin/qlf_k6n10f/dsp_map.v
+++ b/ql-qlf-plugin/qlf_k6n10f/dsp_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module \$__QL_MUL20X18 (input [19:0] A, input [17:0] B, output [37:0] Y);
     parameter A_SIGNED = 0;
diff --git a/ql-qlf-plugin/qlf_k6n10f/ffs_map.v b/ql-qlf-plugin/qlf_k6n10f/ffs_map.v
index 8e30585..273f28e 100644
--- a/ql-qlf-plugin/qlf_k6n10f/ffs_map.v
+++ b/ql-qlf-plugin/qlf_k6n10f/ffs_map.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 // Basic DFF
 
diff --git a/ql-qlf-plugin/qlf_k6n10f/sram1024x18.v b/ql-qlf-plugin/qlf_k6n10f/sram1024x18.v
index 88a571d..60cd586 100644
--- a/ql-qlf-plugin/qlf_k6n10f/sram1024x18.v
+++ b/ql-qlf-plugin/qlf_k6n10f/sram1024x18.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module sram1024x18 (
 	clk_a,
diff --git a/ql-qlf-plugin/qlf_k6n10f/ufifo_ctl.v b/ql-qlf-plugin/qlf_k6n10f/ufifo_ctl.v
index b1f7164..0c1dcc0 100644
--- a/ql-qlf-plugin/qlf_k6n10f/ufifo_ctl.v
+++ b/ql-qlf-plugin/qlf_k6n10f/ufifo_ctl.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module fifo_ctl (
 	raddr,
diff --git a/ql-qlf-plugin/quicklogic_eqn.cc b/ql-qlf-plugin/quicklogic_eqn.cc
index 4419432..b82a1b2 100644
--- a/ql-qlf-plugin/quicklogic_eqn.cc
+++ b/ql-qlf-plugin/quicklogic_eqn.cc
@@ -1,11 +1,19 @@
 /*
- * Copyright (C) 2019-2022 The SymbiFlow Authors
+ * Copyright 2020-2022 F4PGA Authors
  *
- * Use of this source code is governed by a ISC-style
- * license that can be found in the LICENSE file or at
- * https://opensource.org/licenses/ISC
+ * 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
  *
- * SPDX-License-Identifier: ISC
+ *     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.
+ *
+ * SPDX-License-Identifier: Apache-2.0
  *
  */
 
diff --git a/ql-qlf-plugin/synth_quicklogic.cc b/ql-qlf-plugin/synth_quicklogic.cc
index a44c9e4..acfeb24 100644
--- a/ql-qlf-plugin/synth_quicklogic.cc
+++ b/ql-qlf-plugin/synth_quicklogic.cc
@@ -1,11 +1,19 @@
 /*
- * Copyright (C) 2019-2022 The SymbiFlow Authors
+ * Copyright 2020-2022 F4PGA Authors
  *
- * Use of this source code is governed by a ISC-style
- * license that can be found in the LICENSE file or at
- * https://opensource.org/licenses/ISC
+ * 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
  *
- * SPDX-License-Identifier: ISC
+ *     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.
+ *
+ * SPDX-License-Identifier: Apache-2.0
  *
  */
 #include "kernel/celltypes.h"
diff --git a/ql-qlf-plugin/tests/Makefile b/ql-qlf-plugin/tests/Makefile
index 37654a5..ad507f6 100644
--- a/ql-qlf-plugin/tests/Makefile
+++ b/ql-qlf-plugin/tests/Makefile
@@ -1,10 +1,18 @@
-# Copyright (C) 2019-2022 The SymbiFlow Authors
+# Copyright 2020-2022 F4PGA Authors
 #
-# Use of this source code is governed by a ISC-style
-# license that can be found in the LICENSE file or at
-# https://opensource.org/licenses/ISC
+# 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
 #
-# SPDX-License-Identifier: ISC
+#     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.
+#
+# SPDX-License-Identifier: Apache-2.0
 
 # The bram test will be enable in a future PR after it's been fixed.
 
diff --git a/ql-qlf-plugin/tests/consts/consts.v b/ql-qlf-plugin/tests/consts/consts.v
index 884e4c1..59e411c 100644
--- a/ql-qlf-plugin/tests/consts/consts.v
+++ b/ql-qlf-plugin/tests/consts/consts.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 (* keep_hierarchy *)
 module my_lut (
diff --git a/ql-qlf-plugin/tests/dffs/dffs.v b/ql-qlf-plugin/tests/dffs/dffs.v
index 60c1780..1963344 100644
--- a/ql-qlf-plugin/tests/dffs/dffs.v
+++ b/ql-qlf-plugin/tests/dffs/dffs.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module my_dff (
     input d,
diff --git a/ql-qlf-plugin/tests/fsm/fsm.v b/ql-qlf-plugin/tests/fsm/fsm.v
index 5b276aa..beea38a 100644
--- a/ql-qlf-plugin/tests/fsm/fsm.v
+++ b/ql-qlf-plugin/tests/fsm/fsm.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module fsm (
     clock,
diff --git a/ql-qlf-plugin/tests/full_adder/full_adder.v b/ql-qlf-plugin/tests/full_adder/full_adder.v
index 8bbbce7..dad4163 100644
--- a/ql-qlf-plugin/tests/full_adder/full_adder.v
+++ b/ql-qlf-plugin/tests/full_adder/full_adder.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module full_adder (
     input  wire [`WIDTH-1:0] A,
diff --git a/ql-qlf-plugin/tests/iob_no_flatten/iob_no_flatten.v b/ql-qlf-plugin/tests/iob_no_flatten/iob_no_flatten.v
index 47e85f7..2b64567 100644
--- a/ql-qlf-plugin/tests/iob_no_flatten/iob_no_flatten.v
+++ b/ql-qlf-plugin/tests/iob_no_flatten/iob_no_flatten.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module my_dff (
     input d,
diff --git a/ql-qlf-plugin/tests/latches/latches.v b/ql-qlf-plugin/tests/latches/latches.v
index 13b76d6..4d691b3 100644
--- a/ql-qlf-plugin/tests/latches/latches.v
+++ b/ql-qlf-plugin/tests/latches/latches.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module latchp (
     input d,
diff --git a/ql-qlf-plugin/tests/logic/logic.v b/ql-qlf-plugin/tests/logic/logic.v
index cc05402..cdf1fca 100644
--- a/ql-qlf-plugin/tests/logic/logic.v
+++ b/ql-qlf-plugin/tests/logic/logic.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module top (
     input [0:7] in,
diff --git a/ql-qlf-plugin/tests/mac_unit/mac_unit.v b/ql-qlf-plugin/tests/mac_unit/mac_unit.v
index 6152c61..7644ef7 100644
--- a/ql-qlf-plugin/tests/mac_unit/mac_unit.v
+++ b/ql-qlf-plugin/tests/mac_unit/mac_unit.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module mac_unit (
     a,
diff --git a/ql-qlf-plugin/tests/multiplier/multiplier.v b/ql-qlf-plugin/tests/multiplier/multiplier.v
index 5523a0a..a552265 100644
--- a/ql-qlf-plugin/tests/multiplier/multiplier.v
+++ b/ql-qlf-plugin/tests/multiplier/multiplier.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module mult16x16 (
     a,
diff --git a/ql-qlf-plugin/tests/mux/mux.v b/ql-qlf-plugin/tests/mux/mux.v
index b18f65f..6ec90d1 100644
--- a/ql-qlf-plugin/tests/mux/mux.v
+++ b/ql-qlf-plugin/tests/mux/mux.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module mux2 (
     S,
diff --git a/ql-qlf-plugin/tests/pp3_bram/pp3_bram.v b/ql-qlf-plugin/tests/pp3_bram/pp3_bram.v
index 784f67d..9adf5cf 100644
--- a/ql-qlf-plugin/tests/pp3_bram/pp3_bram.v
+++ b/ql-qlf-plugin/tests/pp3_bram/pp3_bram.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module my_ram (
     CLK,
diff --git a/ql-qlf-plugin/tests/qlf_k6n10_bram/bram.v b/ql-qlf-plugin/tests/qlf_k6n10_bram/bram.v
index f19c3ce..f8b0587 100644
--- a/ql-qlf-plugin/tests/qlf_k6n10_bram/bram.v
+++ b/ql-qlf-plugin/tests/qlf_k6n10_bram/bram.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module BRAM #(parameter AWIDTH = 9,
               parameter DWIDTH = 32)
diff --git a/ql-qlf-plugin/tests/qlf_k6n10f/bram_sdp/bram_sdp.v b/ql-qlf-plugin/tests/qlf_k6n10f/bram_sdp/bram_sdp.v
index 8ac8977..3670335 100644
--- a/ql-qlf-plugin/tests/qlf_k6n10f/bram_sdp/bram_sdp.v
+++ b/ql-qlf-plugin/tests/qlf_k6n10f/bram_sdp/bram_sdp.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module BRAM_SDP #(parameter AWIDTH = 9,
 parameter DWIDTH = 32)(
diff --git a/ql-qlf-plugin/tests/qlf_k6n10f/bram_sdp/sim/Makefile b/ql-qlf-plugin/tests/qlf_k6n10f/bram_sdp/sim/Makefile
index 23c78ad..e0b9c16 100644
--- a/ql-qlf-plugin/tests/qlf_k6n10f/bram_sdp/sim/Makefile
+++ b/ql-qlf-plugin/tests/qlf_k6n10f/bram_sdp/sim/Makefile
@@ -1,10 +1,18 @@
-# Copyright (C) 2019-2022 The SymbiFlow Authors
+# Copyright 2020-2022 F4PGA Authors
 #
-# Use of this source code is governed by a ISC-style
-# license that can be found in the LICENSE file or at
-# https://opensource.org/licenses/ISC
+# 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
 #
-# SPDX-License-Identifier: ISC
+#     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.
+#
+# SPDX-License-Identifier: Apache-2.0
 
 TESTBENCH = bram_sdp_tb.v
 POST_SYNTH = bram_sdp_32x512_post_synth bram_sdp_16x1024_post_synth bram_sdp_8x2048_post_synth bram_sdp_4x4096_post_synth
diff --git a/ql-qlf-plugin/tests/qlf_k6n10f/bram_sdp/sim/bram_sdp_tb.v b/ql-qlf-plugin/tests/qlf_k6n10f/bram_sdp/sim/bram_sdp_tb.v
index 3641f1f..900ddc0 100644
--- a/ql-qlf-plugin/tests/qlf_k6n10f/bram_sdp/sim/bram_sdp_tb.v
+++ b/ql-qlf-plugin/tests/qlf_k6n10f/bram_sdp/sim/bram_sdp_tb.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 `timescale 1ns/1ps
 
diff --git a/ql-qlf-plugin/tests/qlf_k6n10f/bram_tdp/bram_tdp.v b/ql-qlf-plugin/tests/qlf_k6n10f/bram_tdp/bram_tdp.v
index 96218f6..63e1efb 100644
--- a/ql-qlf-plugin/tests/qlf_k6n10f/bram_tdp/bram_tdp.v
+++ b/ql-qlf-plugin/tests/qlf_k6n10f/bram_tdp/bram_tdp.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module BRAM_TDP #(parameter AWIDTH = 9,
 parameter DWIDTH = 32)(
diff --git a/ql-qlf-plugin/tests/qlf_k6n10f/bram_tdp/sim/Makefile b/ql-qlf-plugin/tests/qlf_k6n10f/bram_tdp/sim/Makefile
index 48de42d..daa8326 100644
--- a/ql-qlf-plugin/tests/qlf_k6n10f/bram_tdp/sim/Makefile
+++ b/ql-qlf-plugin/tests/qlf_k6n10f/bram_tdp/sim/Makefile
@@ -1,10 +1,18 @@
-# Copyright (C) 2019-2022 The SymbiFlow Authors
+# Copyright 2020-2022 F4PGA Authors
 #
-# Use of this source code is governed by a ISC-style
-# license that can be found in the LICENSE file or at
-# https://opensource.org/licenses/ISC
+# 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
 #
-# SPDX-License-Identifier: ISC
+#     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.
+#
+# SPDX-License-Identifier: Apache-2.0
 
 TESTBENCH = bram_tdp_tb.v
 POST_SYNTH = bram_tdp_32x512_post_synth bram_tdp_16x1024_post_synth bram_tdp_8x2048_post_synth bram_tdp_4x4096_post_synth
diff --git a/ql-qlf-plugin/tests/qlf_k6n10f/bram_tdp/sim/bram_tdp_tb.v b/ql-qlf-plugin/tests/qlf_k6n10f/bram_tdp/sim/bram_tdp_tb.v
index 77b3f46..c729462 100644
--- a/ql-qlf-plugin/tests/qlf_k6n10f/bram_tdp/sim/bram_tdp_tb.v
+++ b/ql-qlf-plugin/tests/qlf_k6n10f/bram_tdp/sim/bram_tdp_tb.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 `timescale 1ns/1ps
 
diff --git a/ql-qlf-plugin/tests/qlf_k6n10f/dsp_macc/dsp_macc.v b/ql-qlf-plugin/tests/qlf_k6n10f/dsp_macc/dsp_macc.v
index 6933e90..dd9549a 100644
--- a/ql-qlf-plugin/tests/qlf_k6n10f/dsp_macc/dsp_macc.v
+++ b/ql-qlf-plugin/tests/qlf_k6n10f/dsp_macc/dsp_macc.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module macc_simple (
     input  wire        clk,
diff --git a/ql-qlf-plugin/tests/qlf_k6n10f/dsp_mult/dsp_mult.v b/ql-qlf-plugin/tests/qlf_k6n10f/dsp_mult/dsp_mult.v
index f8b25e6..1318c3b 100644
--- a/ql-qlf-plugin/tests/qlf_k6n10f/dsp_mult/dsp_mult.v
+++ b/ql-qlf-plugin/tests/qlf_k6n10f/dsp_mult/dsp_mult.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module mult_16x16 (
     input  wire [15:0] A,
diff --git a/ql-qlf-plugin/tests/qlf_k6n10f/dsp_simd/dsp_simd.v b/ql-qlf-plugin/tests/qlf_k6n10f/dsp_simd/dsp_simd.v
index 08cd994..b684903 100644
--- a/ql-qlf-plugin/tests/qlf_k6n10f/dsp_simd/dsp_simd.v
+++ b/ql-qlf-plugin/tests/qlf_k6n10f/dsp_simd/dsp_simd.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module simd_mult (
     input  wire         clk,
diff --git a/ql-qlf-plugin/tests/qlf_k6n10f/sim_dsp_fir/sim_dsp_fir.v b/ql-qlf-plugin/tests/qlf_k6n10f/sim_dsp_fir/sim_dsp_fir.v
index 5565ddb..cf32147 100644
--- a/ql-qlf-plugin/tests/qlf_k6n10f/sim_dsp_fir/sim_dsp_fir.v
+++ b/ql-qlf-plugin/tests/qlf_k6n10f/sim_dsp_fir/sim_dsp_fir.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 `include "qlf_k6n10f/cells_sim.v"
 
diff --git a/ql-qlf-plugin/tests/qlf_k6n10f/sim_dsp_mult/sim_dsp_mult.v b/ql-qlf-plugin/tests/qlf_k6n10f/sim_dsp_mult/sim_dsp_mult.v
index 22ba57d..55784b9 100644
--- a/ql-qlf-plugin/tests/qlf_k6n10f/sim_dsp_mult/sim_dsp_mult.v
+++ b/ql-qlf-plugin/tests/qlf_k6n10f/sim_dsp_mult/sim_dsp_mult.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 `include "qlf_k6n10f/cells_sim.v"
 `timescale 1ns/1ps
diff --git a/ql-qlf-plugin/tests/qlf_k6n10f/sim_dsp_mult_r/sim_dsp_mult_r.v b/ql-qlf-plugin/tests/qlf_k6n10f/sim_dsp_mult_r/sim_dsp_mult_r.v
index eae3589..cdd0a66 100644
--- a/ql-qlf-plugin/tests/qlf_k6n10f/sim_dsp_mult_r/sim_dsp_mult_r.v
+++ b/ql-qlf-plugin/tests/qlf_k6n10f/sim_dsp_mult_r/sim_dsp_mult_r.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 `include "qlf_k6n10f/cells_sim.v"
 
diff --git a/ql-qlf-plugin/tests/shreg/shreg.v b/ql-qlf-plugin/tests/shreg/shreg.v
index ff1712f..7e8f471 100644
--- a/ql-qlf-plugin/tests/shreg/shreg.v
+++ b/ql-qlf-plugin/tests/shreg/shreg.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module top (
     input  wire I,
diff --git a/ql-qlf-plugin/tests/tribuf/tribuf.v b/ql-qlf-plugin/tests/tribuf/tribuf.v
index 95a9f8e..b94b103 100644
--- a/ql-qlf-plugin/tests/tribuf/tribuf.v
+++ b/ql-qlf-plugin/tests/tribuf/tribuf.v
@@ -1,10 +1,18 @@
-// Copyright (C) 2019-2022 The SymbiFlow Authors
+// Copyright 2020-2022 F4PGA Authors
 //
-// Use of this source code is governed by a ISC-style
-// license that can be found in the LICENSE file or at
-// https://opensource.org/licenses/ISC
+// 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
 //
-// SPDX-License-Identifier: ISC
+//     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.
+//
+// SPDX-License-Identifier: Apache-2.0
 
 module tristate (
     en,
