diff --git a/advanced_expert/vulnerabilities/overflow.md b/advanced_expert/vulnerabilities/overflow.md
new file mode 100644
index 0000000..04a107f
--- /dev/null
+++ b/advanced_expert/vulnerabilities/overflow.md
@@ -0,0 +1,54 @@
+## overflow of numbers
+
+
+
+
+
+
+----
+
+### unchecked math
+
+
+
+* overflow and underflow of numbers in solidity 0.8 throw an error. this can be disabled with `unchecked`.
+* disabling overflow / underflow check saves gas.
+
+
+
+```
+contract UncheckedMath {
+ function add(uint x, uint y) external pure returns (uint) {
+ // 22291 gas
+ // return x + y;
+
+ // 22103 gas
+ unchecked {
+ return x + y;
+ }
+ }
+
+ function sub(uint x, uint y) external pure returns (uint) {
+ // 22329 gas
+ // return x - y;
+
+ // 22147 gas
+ unchecked {
+ return x - y;
+ }
+ }
+
+ function sumOfCubes(uint x, uint y) external pure returns (uint) {
+ // Wrap complex math logic inside unchecked
+ unchecked {
+ uint x3 = x * x * x;
+ uint y3 = y * y * y;
+
+ return x3 + y3;
+ }
+ }
+}
+
+```
+
+