Using global variables to lazily initialize things may get complicated. Specially if we're going to use multithreading. You could create a init function here and call it from `main`.