First draft by /u/SingularityLoop