added bunch of stuff