diff --git a/_posts/2020-06-24-twrp-3.4.0-0-released.markdown b/_posts/2020-06-24-twrp-3.4.0-0-released.markdown
index 90acdd1..9a0e97e 100644
--- a/_posts/2020-06-24-twrp-3.4.0-0-released.markdown
+++ b/_posts/2020-06-24-twrp-3.4.0-0-released.markdown
@@ -9,112 +9,112 @@
 TWRP {{ page.version }} is out now for most currently supported devices.
 
 What's new in {{ page.version }}:
-        System As Root (SAR)
-           - Fix backup and restore using SAR - dianlujitao
-           - System mount point - Chaosmaster
-           - ORS - Chaosmaster
-           - Zip install - Chaosmaster
-           - system_root bind mount to /system - Chaosmaster
-           - Autodetection of SAR - Chaosmaster
+# System As Root (SAR)
+- Fix backup and restore using SAR - dianlujitao
+- System mount point - Chaosmaster
+- ORS - Chaosmaster
+- Zip install - Chaosmaster
+- system_root bind mount to /system - Chaosmaster
+- Autodetection of SAR - Chaosmaster
 
-        Digest - fix creation of digests for sub-partitions (was bugfix applied to many devices since last year) - Bigbiff
+# Digest - fix creation of digests for sub-partitions (was bugfix applied to many devices since last year) - Bigbiff
 
-        Encryption
-           - ext4Crypt Wrapped Key Update - Peter Cai
-           - Fix upgrading encryption key if export fails - Peter Cai
-           - Fix wrapped key support for devices without metadata partition - mauronofrio
-           - Don't skip decryption when using block map file in order to write to /data in ORS - CaptainThrowback
-           - FDE - Decrypt master key first - AndroidableDroid
-           - vold_decrypt - set Android version and patch level automatically - CaptainThrowback
-           - Set wrapped decrypt support by twrp flag - Peter Cai
-           - Don't try wrapped support unless needed - mauronofrio
-           - restore ext4 policy on /data/cache - Bigbiff
-           - multiuser decryption - Noah Jacobson
-           - FDE retry - AndroidableDroid
+# Encryption
+- ext4Crypt Wrapped Key Update - Peter Cai
+- Fix upgrading encryption key if export fails - Peter Cai
+- Fix wrapped key support for devices without metadata partition - mauronofrio
+- Don't skip decryption when using block map file in order to write to /data in ORS - CaptainThrowback
+- FDE - Decrypt master key first - AndroidableDroid
+- vold_decrypt - set Android version and patch level automatically - CaptainThrowback
+- Set wrapped decrypt support by twrp flag - Peter Cai
+- Don't try wrapped support unless needed - mauronofrio
+- restore ext4 policy on /data/cache - Bigbiff
+- multiuser decryption - Noah Jacobson
+- FDE retry - AndroidableDroid
 
-        TWRP App - unmount system after checking for app - Bigbiff
+# TWRP App - unmount system after checking for app - Bigbiff
 
-        Fix Dependency requirements - Dees_Troy
+# Fix Dependency requirements - Dees_Troy
 
-        Fix Symbolic links for BB and Toolbox - Dees_Troy
+# Fix Symbolic links for BB and Toolbox - Dees_Troy
 
-        FB2PNG compilation errors - Bigbiff
+# FB2PNG compilation errors - Bigbiff
 
-        Localisation of Backup_Tar: Ian Macdonald
+# Localisation of Backup_Tar: Ian Macdonald
 
-        Prebuilt updates -
-           - android.hardware.confirmationui@1.0 - cryptomilk
+# Prebuilt updates -
+- android.hardware.confirmationui@1.0 - cryptomilk
 
-        Compilation Fixes:
-           - TW_EXFAT_FUSE compilation fixes - Bigbiff
-           - libuuid - cryptomilk
-           - 'system/etc/ld.config.txt' not found error - Martin Dünkelmann
+# Compilation Fixes:
+- TW_EXFAT_FUSE compilation fixes - Bigbiff
+- libuuid - cryptomilk
+- 'system/etc/ld.config.txt' not found error - Martin Dünkelmann
 
-        Compress Persistent Logs - Bigbiff
+# Compress Persistent Logs - Bigbiff
 
-        Language Updates:
-           - Portugal - Vasco Machado
-           - Dutch -  Ian Macdonald
-           - Turkish - Fatih Fırıncı
+# Language Updates:
+- Portugal - Vasco Machado
+- Dutch -  Ian Macdonald
+- Turkish - Fatih Fırıncı
 
-        ld.config.txt
-           - updates for 8.x trees - CaptainThrowback
-           - fix search path for /sbin - CaptainThrowback
-           - /sbin should come first in search path - Ian Macdonald
+# ld.config.txt
+- updates for 8.x trees - CaptainThrowback
+- fix search path for /sbin - CaptainThrowback
+- /sbin should come first in search path - Ian Macdonald
 
-        Fix persistent log storage - SyberHexen
+# Fix persistent log storage - SyberHexen
 
-        Cleanup -
-            - Typo fix in comment - VDavid003
-            - newlines in ext4crypt - CaptainThrowback
-            - TW_OEM_BUILD compilation issue - Patrick Zacharias
+# Cleanup -
+- Typo fix in comment - VDavid003
+- newlines in ext4crypt - CaptainThrowback
+- TW_OEM_BUILD compilation issue - Patrick Zacharias
 
-        Bootloader Message
-            - cleanup - Alessandro Astone
-            - add configurable offsets
+# Bootloader Message
+- cleanup - Alessandro Astone
+- add configurable offsets
 
-        Error Cleanup
-           - uevent errors and decryption error - mauronofrio
-           - using copy_file to copy files from /etc - CaptainThrowback
-           - ueventd access to /acct - early directory creation in init - cryptomilk
+# Error Cleanup
+- uevent errors and decryption error - mauronofrio
+- using copy_file to copy files from /etc - CaptainThrowback
+- ueventd access to /acct - early directory creation in init - cryptomilk
 
-        Haptics
-           - TSP Driver - LameMonster82
-           - QTI Input - AndroidableDroid
+# Haptics
+- TSP Driver - LameMonster82
+- QTI Input - AndroidableDroid
 
-        exclude per_boot from backups - Darth9
+# exclude per_boot from backups - Darth9
 
-        update_engine
-            - read all asserts - Hernán Castañón
+# update_engine
+- read all asserts - Hernán Castañón
 
-        Unmount all directories that point to same block device - AndroidableDroid
+# Unmount all directories that point to same block device - AndroidableDroid
 
-        Resetprop
-           - Add Resetprop from Magisk - CaptainThrowback & mauronofrio
-           - compile from source - Chaosmaster
-           - fix for android-7 and earlier - Chaosmaster
-           - cleanup for spaces in properties - AndroidableDroid
+# Resetprop
+- Add Resetprop from Magisk - CaptainThrowback & mauronofrio
+- compile from source - Chaosmaster
+- fix for android-7 and earlier - Chaosmaster
+- cleanup for spaces in properties - AndroidableDroid
 
-        Add Property override - Chaosmaster
+# Add Property override - Chaosmaster
 
-        Backuptool - mount system and vendor for A/B installs for backuptool - Chaosmaster
+# Backuptool - mount system and vendor for A/B installs for backuptool - Chaosmaster
 
-        twrpTar - fix backup freezes when pigz and openaes are used - Fabrice Bellet
+# twrpTar - fix backup freezes when pigz and openaes are used - Fabrice Bellet
 
-        Zip Installs
-           - Info for A/B zip installing to inactive slot - Chaosmaster
-           - Reboot to system button now allows to be rebooted to different partitions after zip install
-           - progressbar rework - Chaosmaster
+# Zip Installs
+- Info for A/B zip installing to inactive slot - Chaosmaster
+- Reboot to system button now allows to be rebooted to different partitions after zip install
+- progressbar rework - Chaosmaster
 
-        Toolbox is default on android-9+ - mauronofrio
+# Toolbox is default on android-9+ - mauronofrio
 
-        Blank screen fixes - Sean hoyt
+# Blank screen fixes - Sean hoyt
 
-        Magisk updates - AndroidableDroid
+# Magisk updates - AndroidableDroid
 
-        OZIP Encryption Support - mauronofrio
+# OZIP Encryption Support - mauronofrio
 
-        Support for more extensions in File Selector - mauronofrio
+# Support for more extensions in File Selector - mauronofrio
 
 Want to get notifications when we release new versions of TWRP? [Install the TWRP app and select your device!](https://twrp.me/app)
 
