pub fn poseidon2_decrypt<let L: u32>( ciphertext: [Field; (((L + 2) / 3) * 3) + 1], shared_secret: EmbeddedCurvePoint, encryption_nonce: Field, ) -> Option<[Field; L]>