eek this challenge might take awhile lol