Copyright (c) 2017-2022 npm, Inc., Isaac Z. Schlueter, and Contributors