I hate this pattern...