slight simplification + resilience to GC induced pauses