first pass at what i want this to do