#include <stdio.h>
#include <kernel>
#include <thread>

#include "bench.h"

coroutine GreatSuspender {};

void ?{}( GreatSuspender & this ) {
	prime(this);
}

void main( GreatSuspender & this ) {
	while( true ) {
		suspend();
	}
}

int main(int argc, char* argv[]) {
	GreatSuspender s;

	BENCH(
		for (size_t i = 0; i < n; i++) {
			resume( s );
		},
		result
	)

	printf("%llu\n", result);
}