Merge pull request #336 from apache/4.0-cleanup

4.0 cleanup
diff --git a/NOTICE b/NOTICE
index ca56c4f..90fb13c 100644
--- a/NOTICE
+++ b/NOTICE
@@ -1,5 +1,5 @@
 Apache DataSketches C++ and Python
-Copyright 2022 The Apache Software Foundation
+Copyright 2023 The Apache Software Foundation
 
 Copyright 2015-2018 Yahoo Inc.
 Copyright 2019-2020 Verizon Media
diff --git a/cpc/include/cpc_compressor_impl.hpp b/cpc/include/cpc_compressor_impl.hpp
index ef0ce61..7f323be 100644
--- a/cpc/include/cpc_compressor_impl.hpp
+++ b/cpc/include/cpc_compressor_impl.hpp
@@ -449,7 +449,7 @@
     if (lg_k < 4) throw std::logic_error("lgK < 4");
     const size_t tmp = c >> (lg_k - 4);
     const uint8_t phase = tmp & 15;
-    if (phase < 0 || phase >= 16) throw std::out_of_range("wrong phase");
+    if (phase >= 16) throw std::out_of_range("wrong phase");
     return phase;
   }
 }
diff --git a/python/src/vector_of_kll.cpp b/python/src/vector_of_kll.cpp
index db30af6..68e418c 100644
--- a/python/src/vector_of_kll.cpp
+++ b/python/src/vector_of_kll.cpp
@@ -72,7 +72,7 @@
     std::string to_string(bool print_levels = false, bool print_items = false) const;
 
     // binary output/input
-    py::list serialize(py::array_t<uint32_t>& isk);
+    py::list serialize(const py::array_t<int>& isk);
     // note: deserialize() replaces the sketch at the specified
     //       index. Not a static method.
     void deserialize(const py::bytes& sk_bytes, uint32_t idx);
@@ -404,7 +404,7 @@
 }
 
 template<typename T, typename C>
-py::list vector_of_kll_sketches<T, C>::serialize(py::array_t<uint32_t>& isk) {
+py::list vector_of_kll_sketches<T, C>::serialize(const py::array_t<int>& isk) {
   std::vector<uint32_t> inds = get_indices(isk);
   const size_t num_sketches = inds.size();