this is a mess but I kind of like it