feel like there's a better way....