inheritance, oscillating projectiles, solid refactors