many of eli's suggestions