From 48f703132e884f3f0d86c86bb39ad0771256d45f Mon Sep 17 00:00:00 2001 From: joaquintides Date: Sat, 13 May 2023 19:29:41 +0200 Subject: [PATCH] added implementation description for cfoa --- doc/diagrams/cfoa.png | Bin 0 -> 9397 bytes doc/unordered/buckets.adoc | 48 +++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 doc/diagrams/cfoa.png diff --git a/doc/diagrams/cfoa.png b/doc/diagrams/cfoa.png new file mode 100644 index 0000000000000000000000000000000000000000..a72e3d535cd2e7b2ba5c541362f1f7c0ba9340e3 GIT binary patch literal 9397 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 jYN`wjOMkzw|1bYlqR7nXMdoh?1_lOCS3j3^P6