broke out some things that vary