Messing around with some patterns. Should probably consult with burak about design