adding lots of great improvements