start compartmentalizing a bit