private func encodeSnakeCased(_ key: String, in encoder: URLEncoder.Encoder) throws {
            var container = encoder.keyContainer()

            try container.encode(key
                .splitByUppercasedCharacters()