private function loadTokensAndTimestamp()
    {
        $microtime = $this->storage->getMicrotime();
        
        // Drop overflowing tokens
        $minMicrotime = $this->tokenConverter->convertTokensToMicrotime($this->capacity);
        if ($minMicrotime > $microtime) {
            $microtime = $minMicrotime;
        }
        
        $tokens = $this->tokenConverter->convertMicrotimeToTokens($microtime);
        return [
            "tokens" => $tokens,
            "microtime" => $microtime
        ];
    }