This drawing code is kind of messy. This drawing code will be abstracted away in the future...