---
# System prepended metadata

title: The PSE MPC/FHE Summer Residency 2024

---

# The PSE MPC/FHE Summer Residency 2024

# What happened last summer?

The PSE MPC/FHE Summer Residency 2024 in Tokyo is a gathering of PSE members and external experts whom have had close collaboration with PSE in the past months/years. We worked on the following goals, roughly:
- Knowledge Sharing on Foundation of MPC/FHE, where ZK people learn about MPC/FHE, MPC people learn from FHE people and vice versa;
- Demystifying myths around MPC/FHE: what are the bottlenecks of each technique? how are ZK, MPC, FHE related? how can ZK applications benefit from these new techniques? what are the appropriate usecases of MPC/FHE inside/outside blockchain? what are the fundamental requirements when deploying these new techniques?
- Sharing and demonstration of existing MPC/FHE technology/applications;
- Proposal and prelimenary results on new technology/applications;
- And last but not least, to get people to know each other to foster potential future collaboration even in another subject.

In what follow I will try my best to make a summary about what happened during the residency.

***Authorship, Acknowledgement and Disclaimers** aaa*

***Note:** Take the description in this note with a tiny grain of salt, as (slight) imprecisions are intentionally introduced for the sake of ease of reading and understanding. The whole purpose of this note is to help understanding the notion of generic MPC/FHE, its construction and the existing MPC/FHE software ecosystem. MPC/FHE is a great tool to build privacy-preserving decentralized multiparty protocol such as private Machine Learning Model Training and Inference.*

***Spoiler Alert***
![image](https://hackmd.io/_uploads/Hyu6PH3qR.png)

# Foundation of MPC and FHE

## MPC as a Technique: Garbled Circuit and Secret Sharing MPC

The first topic discussed is the basics of MPC as a Technique: Garbled Circuit and Secret Sharing MPC.

When MPC is discussed among the crowd it is usually generic MPC technique in which we can employ two approaches each with different pros and cons, namely Secret Sharing and Garble Circuit, to implement two generic operations: ADD/XOR and MUL/AND.
![Screenshot 2024-08-16 at 09.53.33](https://hackmd.io/_uploads/H1LHJShqR.png)
![Screenshot 2024-08-16 at 09.54.07](https://hackmd.io/_uploads/SJsDyHhcC.png)

**Secret Sharing** MPC allows the participants to split the secret inputs into shares and send them to the other parties. The assumption on the secrecy of the input depends on whether the sharing scheme is additive (n out of n) or threshold (t out of n). Then the parties can perform computation on the shares. While addition and multiplication by a scalar is free (i.e. can be done locally), multiplication of two secret-shared values requires interaction (1 round), hence the multiplicative depth which scales based on network latency is the complexity of a circuit in this approach.
![Screenshot 2024-08-16 at 09.54.48](https://hackmd.io/_uploads/rkE6kSnqC.png)
![Screenshot 2024-08-16 at 09.55.42](https://hackmd.io/_uploads/HyV6kr3qC.png)

**Garble Circuit** MPC consists of two parties called Garbler (G) and Evaluator (E). In GC-based MPC the Garbler G will encrypt (garble) the circuit and send the encrypted circuit C along with its decryption keys (that correspond to G's private inputs but look random to the Evaluator E) and let the Evaluator E obtain its decryption keys (via Oblivious Transfer, that correspond to the Evaluator E's private input but without the Garbler G learning which keys are obtained). Then the Evaluator E can decrypt the garbled circuit C to obtain the final result (and send it back to the Garbler G if necessary). GC-based MPC is constant round so network latency is not an important factor here. The bottleneck in this approach is the size of the garbled circuit C and thus network bandwidth is key to scalability of GC-based MPC.
![Screenshot 2024-08-16 at 10.01.33](https://hackmd.io/_uploads/S1GQbBhqA.png)

> For more information also see an in-depth description of Garbled Circuit: [Primer to GC and Optimizations](https://hackmd.io/frMushaeSESma2OEdNseRQ) + [(Generalized) Half-Gate Optimization](https://hackmd.io/h7Tcx6ZkQzKNyQO5uUeqjw).

> Find out more about this talk during the residency: [Slides](https://docs.google.com/presentation/d/1x1F0HmM32WX7WKurz8wln3WqVHSvTeJGcN2B-pJsiTI) (see the first part) and [Videos]()

## Mathematical Foundation and Recent advances in FHE

The second discussed topic is FHE: its foundation and recent advances;

### Foundation of FHE

Fully Homomorphic Encryption (FHE) is a cryptographic primitive that allows one to perform arbitrary operation (hence called "Fully") on the FHE ciphertexts without decrypting them (i.e. no decryption key is required during these ciphertext operations). There are different FHE schemes that support different set of operations and also to different extent.
![image](https://hackmd.io/_uploads/SkBqYbii0.png)

FHE is based on [Lattice](https://en.wikipedia.org/wiki/Lattice-based_cryptography), in particular the [(Ring) Learning with Errors (RLWE)](https://en.wikipedia.org/wiki/Ring_learning_with_errors),
![image](https://hackmd.io/_uploads/Hk9O5-oi0.png)

During the residency we exemplified FHE construction from RLWE with the BFV scheme in this [note](https://drive.google.com/file/d/1aclzfdki3PEKyLFHUHTmIutzPL9fM8eZ/view?usp=sharing).
![image](https://hackmd.io/_uploads/S1A3q-ssC.png)

The key to FHE is to understand the notion of noise growth after each multiplication ![image](https://hackmd.io/_uploads/H1NKtBhoA.png)
and the boostrapping process after some multiplications which removes the noise accumulation ![image](https://hackmd.io/_uploads/HJrmYBhoR.png)

The bottleneck of FHE, as opposed to network latency of Secret-Sharing and network bandwith of Garbled-Circuit-MPC, is that FHE requires high computational power. The scalability of FHE relies on development of CPU, GPU and parallelization of computation. 

> Find out more: [Slides](https://docs.google.com/presentation/d/1fBUs1snPV9gyw5vrvo0-WptsjlwxnGqld9snVs_aoGU/edit?usp=sharing), [Notes](https://drive.google.com/file/d/1aclzfdki3PEKyLFHUHTmIutzPL9fM8eZ/view?usp=sharing) and [Videos]()

> You can also check out this [Slides](https://drive.google.com/file/d/1NYeUNnmQooY7Ty53nYuSNo9PhSGgkc15/view?usp=sharing) for some additional FHE constructions.

### Recent advances in FHE

We are at the 3rd generation of FHE and going forward rapidly:
![image](https://hackmd.io/_uploads/BJJjiZsj0.png)

Actually, very rapidly:
![image](https://hackmd.io/_uploads/B1rpjWso0.png)

Development of FHE requires solving different challenges (both technical and social aspect); yet we are still strong and moving forward, with challenges being addressed in a timely manner (also ):
![image](https://hackmd.io/_uploads/SyBm3bjoR.png)

Here is another rough benchmark of the state of the art FHE (HEaaN) on real numbers:
![image](https://hackmd.io/_uploads/SkyYh-jjA.png)
 
> Further information of this talk is available: [Slides](https://drive.google.com/file/d/1NYeUNnmQooY7Ty53nYuSNo9PhSGgkc15/view?usp=sharing) and [Videos]()

## MPC as a Paradigm: MPC(GC/SS) + FHE and more ...

But MPC is beyond the discussed generic technique (Garbled-Circuit and Secret-Sharing) ...

Secure Multiparty Computation (MPC), as it is defined, allows mutually distrustful parties to jointly compute a functionality while keeping the inputs of the participants private.
![Screenshot 2024-08-16 at 10.10.38](https://hackmd.io/_uploads/rkkIQSn5A.png)

An MPC protocol can be either application-specific or generic:
![Screenshot 2024-08-16 at 10.12.02](https://hackmd.io/_uploads/H1y27B3cR.png)
While it is clear that Threshold Signature exemplifies application-specific MPC, one can think of generic MPC as an efficient MPC protocol for a Virtual Machine (VM) functionality that takes the joint function as a common program and the private inputs as parameters to the program and the secure execution of the program is within the said VM.

*For readers who are familiar with Zero-Knowledge Proof (ZKP), MPC is a generalization of ZKP in which the MPC consists of two parties namely the Prover and the Verifier where only the Prover has secret input which is the witness.*
![Screenshot 2024-08-16 at 10.11.21](https://hackmd.io/_uploads/rk0PQS3cA.png)

<!-- *MPC can indeed capture the definition of many existing cryptographic primitives such as encryption (ENC), commitment (COM), and as mentioned above, ZKP. Yet, MPC is typically beyond that. It is more in general used to capture the definition of the cryptographic protocols that are much more complicated.* -->

And yes, Fully Homomorphic Encryption is among techniques (along side Garbled-Circuit and Secret-Sharing) that can be used for MPC construction in the most straightforward mental model:
![Screenshot 2024-08-16 at 10.16.50](https://hackmd.io/_uploads/HyLhVBnqC.png)

That said, MPC is not a primitive but a [collective of techniques](https://mpc.cs.berkeley.edu/) to achieve the above purpose. Efficient MPC protocols exist for specific functionalities from simple statistical aggregation such as mean aggregation (for ads), set intersection (PSI) to complex ones such as RAM (called [Oblivious-RAM](https://en.wikipedia.org/wiki/Oblivious_RAM)) and even Machine Learning (ML).
![Screenshot 2024-08-16 at 10.14.05](https://hackmd.io/_uploads/H1GG4H29C.png)

As each technique GC/SS/FHE and specialized MPC has its own advantage, it is typical to combine them into one's privacy preserving protocol for efficiency:
![Screenshot 2024-08-16 at 10.19.01](https://hackmd.io/_uploads/SJ0VBH3qR.png)

### How MPC/FHE interplay with Blockchain/dApps?

With respect to ZK, MPC and FHE are useful in the sense that they enable truly multiparty private applications:
![Screenshot 2024-08-16 at 10.17.52](https://hackmd.io/_uploads/rkvHBr3cR.png)

> Find out more about MPC as a paradigm: [Slides](https://docs.google.com/presentation/d/1x1F0HmM32WX7WKurz8wln3WqVHSvTeJGcN2B-pJsiTI) (see the 2nd part) and [Videos]()

## When to Which: A practioner's guide to MPC(GC/SS)/FHE

First off, we need to understand what are we talking about when we say resource requirement in a cryptographic protocol, they are: computational power; network bandwidth, latency; and last but not least, the liveness requirement of the participants:
![image](https://hackmd.io/_uploads/HykqWzooA.png)

In terms of resource availability, FHE truly shines when we have access to high computational power such as GPUs (many of them), FHE is non-interactive meaning there is (almost) no communication requirements (such as network bandwidth and latency) when deploying FHE (liveness is high due to the operations can be done by any public entity). FHE is very suitable for building highly scalable consumer facing applications where high computational power is available at a central party (i.e. the service provider).
![image](https://hackmd.io/_uploads/BJIWGzjiA.png)
> For readers from the cybersecurity world, FHE protects data in compute (as opposed to data at rest and in transit).

It is only tricky when we have to answer the question "Who has the decryption key?". Multiparty FHE solves this by sharing the decryption key among a committee and assume honest majority for liveness and privacy. ![image](https://hackmd.io/_uploads/r1YWRS2iA.png)

On the other hand, Secret Sharing based MPC shines when network latency is not an issue (i.e. low latency network is available to the participants). Secret Sharing based MPC requires very low computational overhead but liveness is a bit of the problem as everyone has to stay online during the MPC computation.
![image](https://hackmd.io/_uploads/SJFfzGjiA.png)

Luckily, clients (if we have many of them) can delegate their secrecy to a set of committee and assume honest majority for liveness and privacy (as in "Who has the decryption key?" of FHE). ![image](https://hackmd.io/_uploads/HkIx0S2jC.png)

Last but not least, Garbled Circuit is a middle ground between SS and FHE. Garbled Circuit requires high computational power (not as high as FHE) but its concrete computational complexity is low due to its usage of symmetric cryptographic primitives such as fixed-key AES which is supported by most modern CPUs natively (AES-NI). Garbled Circuit requires a constant number of rounds hence latency is not a deployment requirement. As such GC also offers high liveness. However, Garbled Circuit based MPC transmit an abundant amount of data therefore a high bandwidth network is very much desirable.
![image](https://hackmd.io/_uploads/BJFNzGijA.png)

> To conclude, FHE is more suitable for replacing the high scale execution of a central party in clear with ciphertext operations for privacy. In such case the central party is assumed to have access to high computational power and privacy relies on honest majority of the key committee. Secret-sharing MPC is more or less in the same situation, it is less costly but not as scalable as FHE due to capping on network latency is hard to break (while FHE relies on significant advances in computational power, i.e. Moore's Law). Finally Garbled Circuit MPC is more relaxed on computational power and network latency requirement, but is capped by network bandwidth and can be considered as a middle point between FHE and SS-MPC.

> Find out more and learn when to which GC/SS/FHE: [Slides](https://docs.google.com/presentation/d/1RBXYtFJiY2_l_s2lkkbONxOpvkLGDLK8vVDYBRhM6a0/edit?usp=sharing) and [Videos]()

# Existing MPC/FHE and some miscs

## The curious case of Iris Matching (Realworld MPC)

The [MPC Iris Matching](https://github.com/TaceoLabs/worldcoin-experiments) project aims to build a Decentralized (Unique) Iris Database using MPC: its two key functionalities are (1) Iris Storage and (2) Similarity Check upon new Iris Registration.
![image](https://hackmd.io/_uploads/ryYZuGsiR.png)

The project employed Secret-Sharing MPC and encountered difficult technical issues to overcome, namely mixed operations, large data sizes and communication overhead:
![image](https://hackmd.io/_uploads/BJRgFGsoC.png)

The project relies on Replicated Secret Sharing and Shamir Secret Sharing techniques each with its own advantages for different purpose (doing arithmetic computation or doing comparison or just to save storage and commnunication or for some security requirement).
![image](https://hackmd.io/_uploads/Skph_fioC.png)

The experimental results show feasibility and scalability especially when one considering using Secret Sharing technique with GPU and gives it direct access to network to remove the CPU as a bottleneck.
![image](https://hackmd.io/_uploads/S1VXKfiiC.png)

> Find out more: [Slides](https://drive.google.com/file/d/1b_UUqJP7KQBvaPfn9gU5Ek5HvTimIUiV/view?usp=sharing) and [Videos]()

## Privacy Preserving Statistics with MPC-Stats

MPC-Stats is building a platform where a client can query for statistics concerning two or more private datasets without the data owner losing their data privacy (which could be valuable to them).
![image](https://hackmd.io/_uploads/Sk1ALMssC.png)

The project started with [ZK-Stats](https://github.com/ZKStats/zk-stats-lib) using EZKL
![image](https://hackmd.io/_uploads/BJDQwGoo0.png)

And eventually became [MPC-Stats](https://github.com/ZKStats/MP-SPDZ) using MP-SPDZ (Secret-Sharing MPC) (and going forward to be FHE-Stats in the next explorative step)
![image](https://hackmd.io/_uploads/r1cLvGjoR.png)

> Learn more about MPC-Stats: [Slide](https://docs.google.com/presentation/d/1D4ocUAwjiajSXv8PqRQ3v_H6nlGxYPQfQhlbtPJ750A/edit#slide=id.p) and [Videos]()

## TLSNotary and its MPC tooling: mpz and mpz-play

[TLSNotary](https://tlsnotary.org/) is an open-source protocol that can verify the authenticity of TLS data while protecting privacy.
![image](https://hackmd.io/_uploads/S1LvrGisA.png)

TLSNotary has a long history of development (including heavy revamps):
![image](https://hackmd.io/_uploads/ryxRSzjiC.png)

TLSNotary greatly exemplifies the usage of semi-honest Garbled Circuit in realworld application: TLDR and roughly; the Prover and Verifier split the TLS key into two parts and use GC for TLS operations:
![image](https://hackmd.io/_uploads/rkGNLzjiA.png)

Behind the scene, TLSNotary uses [mpz](https://github.com/privacy-scaling-explorations/mpz) which is also a PSE in-house Garbled Circuit library.
> If you are interesting in having a taste, you can try out mpz with [mpz-play](https://github.com/th4s/mpz-play).

> Find out more: [Slide](https://docs.google.com/presentation/d/1ke_x2rB1B30U3ixON4vW3rTt5Qy_WhcPSJ3n1iNExB0/edit) and [Video]().

**TODO** PADO?

## Play with the Max Pick Challenge

> Yes, **M**ax **P**ick **C**hallenge is an intended pun (MPC).

The Max Pick Challenge is an on-chain guessing game served as a demonstration of [co-circom](https://github.com/TaceoLabs/collaborative-circom), a collaborative zk-SNARKs tooling effort using circom as a DSL and Secret-Sharing MPC as the backend.
![image](https://hackmd.io/_uploads/H1UjiMssA.png)

co-circom chooses circom DSL for its popularity and easy usage:
![image](https://hackmd.io/_uploads/rklA9fss0.png)

The workflow of co-circom consists of two main parts, namely (1) witness-generation with MPC (Secret-Sharing, also Rep3 and Shamir) and (2) co-zkSnarks generation using the extended witness generated in the first part:
![image](https://hackmd.io/_uploads/SkmyiMsoA.png)

> Find out more: [Slides](https://drive.google.com/file/d/1oydBUkmrWZY93jmLpfeAPY47xe2ebBBg/view?usp=drive_link) and [Videos]().
> Another potential co-circom usecase is [Encrypted Scholarship](https://docs.google.com/presentation/d/1mP0TV3DjZsD4ZCuJ6CmEYEoSsoSmQq3aZej_Vz0NHxM/).

## FHE-based Oblivious Message Retrieval

Oblivious Message Retrieval (OMR) is a cryptographic protocol that allows a service provider to compress the list of messages intended for a client from a larger list of messages (i.e. generating a digest) without learning anything. The state-of-the-art OMR relies on FHE: ![image](https://hackmd.io/_uploads/r1L-fL2sA.png)

OMR is particularly useful in privacy-preservation payment network such as zcash:
![image](https://hackmd.io/_uploads/H1JeX83oR.png)
![image](https://hackmd.io/_uploads/BkDlmI2oR.png)

During the residency we also got some good preliminary result that shows feasibility:
![image](https://hackmd.io/_uploads/BJEGmUhs0.png)

> Find out more: [Slides](https://docs.google.com/presentation/d/11Y2tlx4mJ7bAYDuAaAYLOM6GyhJlcPxU2I4l_eEhQ7g/edit#slide=id.g279baeaa4e1_2_124) and [Videos]()

# New Proposals and Challenges: MPC/FHE to the Moon

## On MPC-fying MACI

Minimal Anti-Collusion Infrastructure ([MACI](https://github.com/privacy-scaling-explorations/maci)) is an on-chain voting protocol which protects privacy and minimizes the risk of collusion and bribery. Further information about MACI is available on its [website](https://maci.pse.dev/).

MACI faces some weaknesses one of which is the central coordinator and the goal of [MPC-MACI](https://morgana-proofs.github.io/mpc-maci/master/chapter-1-overview/protocol-overview.html) is to replace this central coordinator with an MPC protocol: ![image](https://hackmd.io/_uploads/HkF6m82sR.png)

MPC-MACI relies on several specialized components (ZK and Secret-Sharing MPC)
![image](https://hackmd.io/_uploads/SkKFNI2sC.png)
![image](https://hackmd.io/_uploads/Byb5E82jA.png)
![image](https://hackmd.io/_uploads/ryxjELhsA.png)

Other than that MPC-MACI introduced the notion of keychain that is useful for preventing coercion ![image](https://hackmd.io/_uploads/S1f8VL2i0.png)

> Find out more: [Slides](https://hackmd.io/@2mDPfxK_RFCL6oIPDjRrfQ/ry38h4juC); [most recent keychain/MPC-MACI](https://hackmd.io/@levs57/HJuoxFGT3)

## Approximation/Greedy Algorithms in MPC-Optimization 

Approximation/Greedy Algorithms are often replacements of exact algorithms when one design MPC protocol to solve complex problem due to their flexibility is scalability, i.e. approximation/greedy algorithms focus on adjusting the initial feasible solution to a more optimal solution after each iteration, and the number of iterations can be a parameter for MPC efficiency (computation can be cutoff in the middle based on running time constraint yet we still have somewhat optimal solution).

One prominent example of MPC-Optimization is Distributed Block building via Secure Knapsack Auctions:
![image](https://hackmd.io/_uploads/r17vUL3iA.png)

The technique of choice is Secret-Sharing MPC
![image](https://hackmd.io/_uploads/Byn3I83iR.png)

The latest benchmark shows some feasibility:
![image](https://hackmd.io/_uploads/ryrqIUniR.png)

> We have available the [Slides](https://docs.google.com/presentation/d/1JQPeLZG-cLMpMZDXRNB2zZcIciKGEsVg37E5lN6m3x4/edit?usp=sharing) and also an [extended version](https://collective.flashbots.net/t/frp-10-distributed-blockbuilding-networks-via-secure-knapsack-auctions/1955).

<!-- ### The GridLock Project -->

## New MPC Tooling and Better Programmability: MPC-VM

Besides [co-circom](https://github.com/TaceoLabs/collaborative-circom), there have been other MPC tooling effort introduced at the residency, one of them is [CircuitScript](https://github.com/voltrevo/CircuitScript), a language for collaboratively "summoning" computations (The circuits generated by Summon are intended for MPC. When performing MPC, you use cryptography to collaboratively compute the output of a function without anyone seeing each other's inputs or any of the intermediary calculations. It's like summoning the result with magic.).

> You can learn more about CircuitScript from the [Videos] and [some exercises](https://github.com/voltrevo/CircuitScript/tree/main/examples/exercises)

More than a langauge, there is a collaborative effort formed during the residency for building MPC-VM. The fundamental difference when building a VM is to escape the circuit model of computation and enter the realm of RAM computation which is more natural for general purpose machine, but of course building an MPC RAM Machine is harder than one for circuit:
![image](https://hackmd.io/_uploads/HkgMKUhsA.png)

There are different approaches in the past that we can learn from (inside and outside of cryptography, also in compiler and programming language or even hardware design)
![image](https://hackmd.io/_uploads/BJKjtUniR.png)

> See more in [Slides on MPC-VM](https://docs.google.com/presentation/d/1RvtM-dAEAVAxyK19Ew5k8W3x2JUeucRB1_rx5AKTAxw/edit#slide=id.p) and [Videos]()

<!-- ## MPC/FHE Dark Pools Viability -->

## Categorical Theory and Proof of Construction/Protocol Correctness

Categorical Theory and in particular the Yoneda Lemma allows abstraction of FHE (and potentially other cryptographic algorithmic categories) into a generic one with which we can modularly capture and reason about the correctness of the newly constructed protocol:
![image](https://hackmd.io/_uploads/BkDWoL3iR.png)
![image](https://hackmd.io/_uploads/S1y3nInoC.png)

The Yoneda Lemma is on homomorphism ![image](https://hackmd.io/_uploads/BJPl6I3oA.png)
and in the case of FHE it captures the following homomorphism ![image](https://hackmd.io/_uploads/r1gyTL3iC.png)


> Find out more: [Slides](https://drive.google.com/file/d/1oJdpAAyJ35BgKQFofllouuBQSITj8fYe/view?usp=drive_link)

## NFC + MPC/FHE

[Cursive](https://github.com/cursive-team/ring.backpocket.me/tree/main), during the residency, performed a demonstration of NFC social applications of MPC, using [jiff](https://github.com/cursive-team/ring.backpocket.me).

The application allows a participant to register an identity (stored inside the NFC ring) to the Cursive [website](https://ring.backpocket.me) and then participating in interesting activities such as contacts matching using [2PC-PSI](https://github.com/cursive-team/2P-PSI) and Fruit Racing.

Screenshots of applications:
![photo_5_2024-09-09_15-23-40](https://hackmd.io/_uploads/B14TeEhnR.jpg)
![photo_1_2024-09-09_15-23-40](https://hackmd.io/_uploads/BkETxE33C.jpg)
![photo_2_2024-09-09_15-23-40](https://hackmd.io/_uploads/SJE6g433R.jpg)
![photo_3_2024-09-09_15-23-40](https://hackmd.io/_uploads/S1ETe4nhC.jpg)
![photo_4_2024-09-09_15-23-40](https://hackmd.io/_uploads/B1ETeN22C.jpg)


## Lattice-based Proof System and Verifiable FHE

FHE is a great technique for building privacy preserving consumer facing apps, yet FHE currently falls short to verifiability. It is of urgent need to develop Verifiable FHE which allows clients to encrypt their private inputs, got them sent to the service provider, and got returned a result ciphertexts along side with some verifiable proof. As FHE is based on Lattice, it is natural to choose Lattice-based Proof System for Verifiable FHE:
![image](https://hackmd.io/_uploads/SkJMnzss0.png)
![image](https://hackmd.io/_uploads/HkCV3fijA.png)
![image](https://hackmd.io/_uploads/BybN2zjoC.png)

> Find out more: [Slides](https://drive.google.com/file/d/1wKVDfyG0FPo7ZtnlUyNc_r6pE027zXg-/view?usp=sharing) and [Videos]()

# Honorable Miscs

**HERE WE PUT SOME BULLET POINTS WITH SOME BRIEF DESC AND LINK**