static now uses once to solve race conditions