Skip to content

Commit dc03c07

Browse files
committed
all broken again asoifqäüowieangqeaäoqa4reigäonoggg
1 parent d45d195 commit dc03c07

File tree

2 files changed

+14
-17
lines changed

2 files changed

+14
-17
lines changed

NewHope/cpapke.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ void cpapke_keypair(unsigned char *pk,
112112
// poly_sample(&shat, noiseseed, 0);
113113

114114
///DEBUG
115-
poly shat = {{12289, 12286, 12295, 12290, 12288, 12288, 12292, 12290, 12286, 12286, 12291, 12291, 12293, 12290, 12287, 12288, 12292, 12287, 12290, 12288, 12288, 12290, 12290, 12289, 12288, 12288, 12291, 12286, 12291, 12290, 12289, 12290, 12288, 12288, 12293, 12292, 12286, 12288, 12291, 12286, 12292, 12290, 12293, 12294, 12289, 12293, 12291, 12291, 12287, 12285, 12289, 12291, 12289, 12292, 12287, 12284, 12286, 12292, 12290, 12289, 12292, 12289, 12288, 12290, 12289, 12289, 12291, 12290, 12290, 12288, 12289, 12292, 12286, 12289, 12291, 12287, 12292, 12288, 12290, 12289, 12290, 12291, 12290, 12290, 12288, 12292, 12290, 12289, 12290, 12292, 12287, 12287, 12287, 12288, 12287, 12287, 12291, 12286, 12289, 12288, 12290, 12291, 12290, 12289, 12287, 12290, 12287, 12288, 12292, 12286, 12289, 12288, 12289, 12291, 12288, 12285, 12285, 12287, 12289, 12290, 12288, 12286, 12291, 12291, 12289, 12285, 12291, 12288, 12290, 12286, 12290, 12291, 12287, 12286, 12291, 12287, 12289, 12291, 12292, 12291, 12290, 12289, 12289, 12290, 12289, 12288, 12287, 12289, 12290, 12289, 12288, 12292, 12291, 12288, 12292, 12288, 12289, 12291, 12293, 12285, 12291, 12291, 12292, 12292, 12290, 12290, 12288, 12293, 12288, 12294, 12292, 12288, 12293, 12289, 12285, 12287, 12289, 12288, 12287, 12287, 12289, 12289, 12289, 12292, 12284, 12291, 12292, 12290, 12286, 12287, 12287, 12288, 12289, 12290, 12287, 12283, 12288, 12289, 12291, 12293, 12288, 12290, 12291, 12288, 12289, 12287, 12290, 12289, 12288, 12287, 12288, 12290, 12292, 12287, 12290, 12291, 12291, 12290, 12288, 12292, 12289, 12290, 12291, 12288, 12290, 12291, 12291, 12287, 12289, 12292, 12289, 12289, 12289, 12286, 12291, 12289, 12290, 12287, 12291, 12291, 12294, 12292, 12285, 12290, 12286, 12289, 12290, 12290, 12286, 12291, 12291, 12288, 12287, 12289, 12290, 12292, 12287, 12291, 12291, 12289, 12288, 12292, 12291, 12292, 12292, 12288, 12287, 12292, 12291, 12291, 12284, 12289, 12291, 12291, 12289, 12288, 12288, 12289, 12290, 12290, 12292, 12290, 12287, 12291, 12290, 12287, 12292, 12290, 12291, 12289, 12289, 12285, 12294, 12289, 12288, 12289, 12286, 12286, 12296, 12286, 12288, 12288, 12287, 12290, 12288, 12288, 12290, 12293, 12288, 12293, 12286, 12290, 12289, 12291, 12290, 12286, 12288, 12288, 12290, 12286, 12287, 12294, 12292, 12289, 12288, 12287, 12289, 12288, 12291, 12291, 12288, 12288, 12288, 12287, 12285, 12289, 12292, 12292, 12288, 12292, 12288, 12287, 12287, 12285, 12290, 12289, 12288, 12291, 12290, 12291, 12292, 12289, 12293, 12292, 12287, 12290, 12286, 12291, 12291, 12288, 12292, 12291, 12293, 12290, 12288, 12289, 12285, 12291, 12285, 12289, 12293, 12288, 12288, 12292, 12288, 12289, 12287, 12291, 12291, 12288, 12290, 12289, 12290, 12288, 12286, 12290, 12291, 12293, 12287, 12287, 12287, 12289, 12287, 12288, 12288, 12288, 12289, 12291, 12287, 12288, 12290, 12290, 12290, 12288, 12288, 12289, 12287, 12291, 12287, 12291, 12291, 12288, 12289, 12288, 12292, 12288, 12288, 12287, 12288, 12290, 12292, 12291, 12291, 12290, 12288, 12290, 12289, 12290, 12292, 12287, 12288, 12292, 12291, 12286, 12290, 12285, 12291, 12292, 12292, 12288, 12287, 12288, 12288, 12287, 12287, 12292, 12288, 12292, 12289, 12287, 12285, 12290, 12290, 12290, 12291, 12288, 12289, 12290, 12290, 12286, 12289, 12288, 12286, 12289, 12288, 12289, 12289, 12290, 12290, 12288, 12290, 12289, 12287, 12285, 12290, 12288, 12291, 12291, 12293, 12289, 12289, 12289, 12288, 12287, 12293, 12291, 12286, 12281, 12290, 12288, 12292, 12290, 12291, 12293, 12285, 12288, 12289, 12293, 12290, 12289, 12288, 12290, 12289, 12290, 12288, 12287, 12290, 12290, 12290, 12287, 12286, 12286, 12288, 12288, 12291, 12291, 12289, 12290, 12286, 12287, 12290, 12292, 12288, 12289, 12287, 12290, 12292, 12286, 12288, 12288, 12288, 12290, 12288, 12289, 12287, 12290, 12289, 12289, 12290, 12290, 12290, 12291, 12289, 12290, 12290, 12287, 12292, 12291, 12286, 12289, 12289, 12292, 12290, 12293, 12293, 12287, 12289, 12288, 12292, 12290, 12291, 12284, 12291, 12290, 12292, 12289, 12284, 12289, 12289, 12292, 12288, 12290, 12287, 12286, 12291, 12293, 12291, 12286, 12289, 12290, 12293, 12291, 12287, 12288, 12289, 12290, 12288, 12288, 12291, 12288, 12288, 12290, 12290, 12290, 12289, 12288, 12291, 12293, 12289, 12290, 12288, 12287, 12289, 12289, 12288, 12290, 12291, 12290, 12290, 12294, 12287, 12286, 12287, 12284, 12286, 12290, 12290, 12290, 12292, 12289, 12292, 12291, 12292, 12291, 12287, 12285, 12287, 12288, 12293, 12290, 12290, 12289, 12290, 12288, 12287, 12288, 12287, 12289, 12287, 12289, 12287, 12285, 12291, 12287, 12290, 12286, 12289, 12291, 12289, 12289, 12292, 12286, 12286, 12288, 12287, 12289, 12287, 12288, 12289, 12291, 12289, 12290, 12286, 12287, 12286, 12290, 12288, 12289, 12290, 12296, 12291, 12287, 12288, 12289, 12291, 12286, 12293, 12288, 12291, 12287, 12290, 12292, 12294, 12289, 12285, 12289, 12289, 12289, 12290, 12285, 12290, 12287, 12291, 12292, 12288, 12293, 12289, 12289, 12286, 12285, 12290, 12289, 12287, 12291, 12287, 12288, 12290, 12286, 12290, 12287, 12290, 12286, 12290, 12287, 12291, 12287, 12291, 12290, 12290, 12288, 12290, 12288, 12293, 12288, 12286, 12289, 12286, 12290, 12286, 12288, 12288, 12288, 12294, 12290, 12291, 12289, 12287, 12289, 12289, 12286, 12289, 12289, 12291, 12291, 12288, 12289, 12289, 12285, 12287, 12289, 12288, 12287, 12288, 12290, 12292, 12289, 12290, 12287, 12286, 12290, 12290, 12286, 12288, 12292, 12288, 12289, 12293, 12285, 12290, 12287, 12290, 12287, 12288, 12285, 12289, 12290, 12289, 12291, 12292, 12293, 12289, 12290, 12290, 12290, 12288, 12290, 12291, 12291, 12293, 12291, 12287, 12288, 12291, 12291, 12292, 12287, 12288, 12290, 12291, 12291, 12291, 12291, 12287, 12289, 12288, 12288, 12284, 12289, 12287, 12290, 12290, 12290, 12287, 12289, 12287, 12292, 12287, 12290, 12290, 12292, 12290, 12287, 12289, 12289, 12289, 12285, 12290, 12290, 12288, 12291, 12287, 12289, 12288, 12289, 12289, 12288, 12289, 12289, 12292, 12289, 12293, 12290, 12290, 12288, 12292, 12285, 12289, 12290, 12291, 12292, 12291, 12287, 12292, 12288, 12290, 12288, 12293, 12290, 12289, 12289, 12288, 12288, 12290, 12289, 12292, 12290, 12287, 12293, 12286, 12290, 12286, 12290, 12292, 12287, 12284, 12288, 12289, 12289, 12289, 12291, 12294, 12288, 12289, 12288, 12292, 12289, 12290, 12288, 12289, 12285, 12289, 12289, 12290, 12291, 12289, 12288, 12289, 12290, 12287, 12287, 12291, 12288, 12291, 12291, 12290, 12291, 12291, 12289, 12290, 12287, 12289, 12288, 12292, 12290, 12288, 12289, 12288, 12287, 12287, 12289, 12289, 12287, 12287, 12289, 12291, 12289, 12286, 12286, 12285, 12291, 12291, 12284, 12288, 12289, 12291, 12287, 12286, 12290, 12284, 12291, 12291, 12288, 12289, 12290, 12288, 12291, 12289, 12288, 12289, 12291, 12286, 12290, 12290, 12288, 12290, 12290, 12287, 12288, 12288, 12288, 12288, 12287, 12292, 12287, 12293, 12285, 12288, 12287, 12289, 12286, 12289, 12287, 12289, 12290, 12288, 12290, 12289, 12288, 12288, 12290, 12288, 12289, 12290, 12290, 12292, 12291, 12289, 12291, 12294, 12287, 12285, 12289, 12287, 12291, 12289, 12285, 12289, 12292, 12292, 12288, 12292, 12291, 12292, 12291, 12290, 12288, 12287, 12288, 12291, 12288, 12291, 12287, 12290, 12288, 12288, 12285, 12289, 12287, 12287, 12289, 12290, 12294, 12295, 12293}};
115+
poly shat = {{12289, 12286, 12295, 12296, 12294, 12297, 12296, 12297, 12286, 12286, 12291, 12291, 12293, 12290, 12287, 12288, 12292, 12287, 12290, 12288, 12288, 12290, 12290, 12289, 12288, 12288, 12291, 12286, 12291, 12290, 12289, 12290, 12288, 12288, 12293, 12292, 12286, 12288, 12291, 12286, 12292, 12290, 12293, 12294, 12289, 12293, 12291, 12291, 12287, 12285, 12289, 12291, 12289, 12292, 12287, 12284, 12286, 12292, 12290, 12289, 12292, 12289, 12288, 12290, 12289, 12289, 12291, 12290, 12290, 12288, 12289, 12292, 12286, 12289, 12291, 12287, 12292, 12288, 12290, 12289, 12290, 12291, 12290, 12290, 12288, 12292, 12290, 12289, 12290, 12292, 12287, 12287, 12287, 12288, 12287, 12287, 12291, 12286, 12289, 12288, 12290, 12291, 12290, 12289, 12287, 12290, 12287, 12288, 12292, 12286, 12289, 12288, 12289, 12291, 12288, 12285, 12285, 12287, 12289, 12290, 12288, 12286, 12291, 12291, 12289, 12285, 12291, 12288, 12290, 12286, 12290, 12291, 12287, 12286, 12291, 12287, 12289, 12291, 12292, 12291, 12290, 12289, 12289, 12290, 12289, 12288, 12287, 12289, 12290, 12289, 12288, 12292, 12291, 12288, 12292, 12288, 12289, 12291, 12293, 12285, 12291, 12291, 12292, 12292, 12290, 12290, 12288, 12293, 12288, 12294, 12292, 12288, 12293, 12289, 12285, 12287, 12289, 12288, 12287, 12287, 12289, 12289, 12289, 12292, 12284, 12291, 12292, 12290, 12286, 12287, 12287, 12288, 12289, 12290, 12287, 12283, 12288, 12289, 12291, 12293, 12288, 12290, 12291, 12288, 12289, 12287, 12290, 12289, 12288, 12287, 12288, 12290, 12292, 12287, 12290, 12291, 12291, 12290, 12288, 12292, 12289, 12290, 12291, 12288, 12290, 12291, 12291, 12287, 12289, 12292, 12289, 12289, 12289, 12286, 12291, 12289, 12290, 12287, 12291, 12291, 12294, 12292, 12285, 12290, 12286, 12289, 12290, 12290, 12286, 12291, 12291, 12288, 12287, 12289, 12290, 12292, 12287, 12291, 12291, 12289, 12288, 12292, 12291, 12292, 12292, 12288, 12287, 12292, 12291, 12291, 12284, 12289, 12291, 12291, 12289, 12288, 12288, 12289, 12290, 12290, 12292, 12290, 12287, 12291, 12290, 12287, 12292, 12290, 12291, 12289, 12289, 12285, 12294, 12289, 12288, 12289, 12286, 12286, 12296, 12286, 12288, 12288, 12287, 12290, 12288, 12288, 12290, 12293, 12288, 12293, 12286, 12290, 12289, 12291, 12290, 12286, 12288, 12288, 12290, 12286, 12287, 12294, 12292, 12289, 12288, 12287, 12289, 12288, 12291, 12291, 12288, 12288, 12288, 12287, 12285, 12289, 12292, 12292, 12288, 12292, 12288, 12287, 12287, 12285, 12290, 12289, 12288, 12291, 12290, 12291, 12292, 12289, 12293, 12292, 12287, 12290, 12286, 12291, 12291, 12288, 12292, 12291, 12293, 12290, 12288, 12289, 12285, 12291, 12285, 12289, 12293, 12288, 12288, 12292, 12288, 12289, 12287, 12291, 12291, 12288, 12290, 12289, 12290, 12288, 12286, 12290, 12291, 12293, 12287, 12287, 12287, 12289, 12287, 12288, 12288, 12288, 12289, 12291, 12287, 12288, 12290, 12290, 12290, 12288, 12288, 12289, 12287, 12291, 12287, 12291, 12291, 12288, 12289, 12288, 12292, 12288, 12288, 12287, 12288, 12290, 12292, 12291, 12291, 12290, 12288, 12290, 12289, 12290, 12292, 12287, 12288, 12292, 12291, 12286, 12290, 12285, 12291, 12292, 12292, 12288, 12287, 12288, 12288, 12287, 12287, 12292, 12288, 12292, 12289, 12287, 12285, 12290, 12290, 12290, 12291, 12288, 12289, 12290, 12290, 12286, 12289, 12288, 12286, 12289, 12288, 12289, 12289, 12290, 12290, 12288, 12290, 12289, 12287, 12285, 12290, 12288, 12291, 12291, 12293, 12289, 12289, 12289, 12288, 12287, 12293, 12291, 12286, 12281, 12290, 12288, 12292, 12290, 12291, 12293, 12285, 12288, 12289, 12293, 12290, 12289, 12288, 12290, 12289, 12290, 12288, 12287, 12290, 12290, 12290, 12287, 12286, 12286, 12288, 12288, 12291, 12291, 12289, 12290, 12286, 12287, 12290, 12292, 12288, 12289, 12287, 12290, 12292, 12286, 12288, 12288, 12288, 12290, 12288, 12289, 12287, 12290, 12289, 12289, 12290, 12290, 12290, 12291, 12289, 12290, 12290, 12287, 12292, 12291, 12286, 12289, 12289, 12292, 12290, 12293, 12293, 12287, 12289, 12288, 12292, 12290, 12291, 12284, 12291, 12290, 12292, 12289, 12284, 12289, 12289, 12292, 12288, 12290, 12287, 12286, 12291, 12293, 12291, 12286, 12289, 12290, 12293, 12291, 12287, 12288, 12289, 12290, 12288, 12288, 12291, 12288, 12288, 12290, 12290, 12290, 12289, 12288, 12291, 12293, 12289, 12290, 12288, 12287, 12289, 12289, 12288, 12290, 12291, 12290, 12290, 12294, 12287, 12286, 12287, 12284, 12286, 12290, 12290, 12290, 12292, 12289, 12292, 12291, 12292, 12291, 12287, 12285, 12287, 12288, 12293, 12290, 12290, 12289, 12290, 12288, 12287, 12288, 12287, 12289, 12287, 12289, 12287, 12285, 12291, 12287, 12290, 12286, 12289, 12291, 12289, 12289, 12292, 12286, 12286, 12288, 12287, 12289, 12287, 12288, 12289, 12291, 12289, 12290, 12286, 12287, 12286, 12290, 12288, 12289, 12290, 12296, 12291, 12287, 12288, 12289, 12291, 12286, 12293, 12288, 12291, 12287, 12290, 12292, 12294, 12289, 12285, 12289, 12289, 12289, 12290, 12285, 12290, 12287, 12291, 12292, 12288, 12293, 12289, 12289, 12286, 12285, 12290, 12289, 12287, 12291, 12287, 12288, 12290, 12286, 12290, 12287, 12290, 12286, 12290, 12287, 12291, 12287, 12291, 12290, 12290, 12288, 12290, 12288, 12293, 12288, 12286, 12289, 12286, 12290, 12286, 12288, 12288, 12288, 12294, 12290, 12291, 12289, 12287, 12289, 12289, 12286, 12289, 12289, 12291, 12291, 12288, 12289, 12289, 12285, 12287, 12289, 12288, 12287, 12288, 12290, 12292, 12289, 12290, 12287, 12286, 12290, 12290, 12286, 12288, 12292, 12288, 12289, 12293, 12285, 12290, 12287, 12290, 12287, 12288, 12285, 12289, 12290, 12289, 12291, 12292, 12293, 12289, 12290, 12290, 12290, 12288, 12290, 12291, 12291, 12293, 12291, 12287, 12288, 12291, 12291, 12292, 12287, 12288, 12290, 12291, 12291, 12291, 12291, 12287, 12289, 12288, 12288, 12284, 12289, 12287, 12290, 12290, 12290, 12287, 12289, 12287, 12292, 12287, 12290, 12290, 12292, 12290, 12287, 12289, 12289, 12289, 12285, 12290, 12290, 12288, 12291, 12287, 12289, 12288, 12289, 12289, 12288, 12289, 12289, 12292, 12289, 12293, 12290, 12290, 12288, 12292, 12285, 12289, 12290, 12291, 12292, 12291, 12287, 12292, 12288, 12290, 12288, 12293, 12290, 12289, 12289, 12288, 12288, 12290, 12289, 12292, 12290, 12287, 12293, 12286, 12290, 12286, 12290, 12292, 12287, 12284, 12288, 12289, 12289, 12289, 12291, 12294, 12288, 12289, 12288, 12292, 12289, 12290, 12288, 12289, 12285, 12289, 12289, 12290, 12291, 12289, 12288, 12289, 12290, 12287, 12287, 12291, 12288, 12291, 12291, 12290, 12291, 12291, 12289, 12290, 12287, 12289, 12288, 12292, 12290, 12288, 12289, 12288, 12287, 12287, 12289, 12289, 12287, 12287, 12289, 12291, 12289, 12286, 12286, 12285, 12291, 12291, 12284, 12288, 12289, 12291, 12287, 12286, 12290, 12284, 12291, 12291, 12288, 12289, 12290, 12288, 12291, 12289, 12288, 12289, 12291, 12286, 12290, 12290, 12288, 12290, 12290, 12287, 12288, 12288, 12288, 12288, 12287, 12292, 12287, 12293, 12285, 12288, 12287, 12289, 12286, 12289, 12287, 12289, 12290, 12288, 12290, 12289, 12288, 12288, 12290, 12288, 12289, 12290, 12290, 12292, 12291, 12289, 12291, 12294, 12287, 12285, 12289, 12287, 12291, 12289, 12285, 12289, 12292, 12292, 12288, 12292, 12291, 12292, 12291, 12290, 12288, 12287, 12288, 12291, 12288, 12291, 12287, 12290, 12288, 12288, 12285, 12289, 12287, 12287, 12289, 12290, 12294, 12295, 12293}};
116116
printf("\n s: ");
117117
for (int i = 0; i < 1024; ++i) {
118118
printf("%d, ", shat.coeffs[i]);

cpaAttack.c

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -327,8 +327,8 @@ int sum_recover(poly *s_so_far, unsigned char *sk, uint16_t *not_recovered) {
327327
}
328328
attacker_key_hypotesis.key[0] = 1;
329329

330-
for (int i = 0; i < SS_BITS * 4; ++i) {
331-
// for (int i = 1021; i < 1024; ++i) {
330+
// for (int i = 0; i < SS_BITS * 4; ++i) {
331+
for (int i = 3; i < 4; ++i) {
332332
if (s_so_far->coeffs[i] != NOT_FOUND) {
333333
continue;
334334
}
@@ -345,12 +345,12 @@ int sum_recover(poly *s_so_far, unsigned char *sk, uint16_t *not_recovered) {
345345

346346
poly Uhat;
347347
quadruplet_t l;
348-
genfakeU(&Uhat, i % SS_BITS, S / 2);
348+
genfakeU(&Uhat, i % SS_BITS, S /2 );
349349

350350
printf("----------------- Try to get index %d -------------- \n", i);
351351

352352
//First test for -7, 5 and 6 so set v-8 = 0
353-
creat_v_sum(&l, s_so_far, -1, i);
353+
creat_v_sum(&l, s_so_far, -2, i);
354354

355355
for (int16_t l_0 = -4; l_0 < 4; l_0++) {
356356
l.l[i / SS_BITS] = l_0;
@@ -406,8 +406,8 @@ void creat_v_sum(quadruplet_t *l, poly *s, int16_t target_sum, int target_index)
406406
//start with 0
407407
l->l[0] = 0;
408408
l->l[1] = 0;
409-
l->l[2] = 0;
410-
l->l[3] = 0;
409+
l->l[2] = 2;
410+
l->l[3] = -2;
411411
float l_j[4] = {0,0,0,0};
412412
int16_t s_c[4] = {0,0,0,0};
413413

@@ -426,23 +426,20 @@ void creat_v_sum(quadruplet_t *l, poly *s, int16_t target_sum, int target_index)
426426
sub_sum -= v;
427427

428428
for (int i = 0; i < 4; ++i) {
429-
if (i == sub_index) continue; //we only what to use the other 3 ones
430-
431-
if(sub_sum > 0){
432-
// getting sign from s_j invert sign select the most feasible value within all constrains (l_j[i] <= 4 ; -4 <= l[i] <=3; and sum <- 0
433-
l->l[i] = ((s_c[i] >> 15) | 1) * -1 * (int16_t) MIN3(4.f - l_j[i], sub_sum + 0.5, 3.f);
434-
//update sums
435-
sub_sum -= (float) abs(l->l[i]);
436-
l_j[i] = fabs((float) l->l[i] - ((float)get_secret_coeffs_value_around_zero(s->coeffs[main_index + i * SS_BITS]) / 2.0f));
437-
}
429+
// if (i == sub_index) continue; //we only what to use the other 3 ones
430+
// // getting sign from s_j invert sign select the most feasible value within all constrains (l_j[i] <= 4 ; -4 <= l[i] <=3; and sum <- 0
431+
// l->l[i] = ((s_c[i] >> 15) | 1) * -1 * (int16_t) MIN3(4.f - l_j[i], sub_sum + 0.5, 3.f);
432+
// //update sums
433+
// sub_sum -= (float) abs(l->l[i]);
434+
// l_j[i] = fabs((float) l->l[i] - ((float)get_secret_coeffs_value_around_zero(s->coeffs[main_index + i * SS_BITS]) / 2.0f));
438435
}
439436
printf("l: [ %d, %d , %d, %d ]\n", l->l[0], l->l[1], l->l[2], l->l[3]);
440437

441438
///DEBUG
442439
printf("s: (%d ,%d,%d, %d)\n", s_c[0], s_c[1], s_c[2], s_c[3]);
443440
v = l_j[0] + l_j[1] + l_j[2] +l_j[3];
444441
printf("|l_j - s_j/2|: %f , %f, %f, %f\n", l_j[0] , l_j[1] , l_j[2] ,l_j[3]);
445-
printf("v-8: %d\n", ((int)v - 8));
442+
printf("v-8.f: %f v-8:%d\n", (v - 8.f), (int)v - 8);
446443
}
447444

448445
/**

0 commit comments

Comments
 (0)