copied lots of stuff