added shitton of stuff that has been added over time