This needs lots of work. This sketch is not accurate.