docs: func findScopes(tokens []tagInfo) [][]tagInfo {
  	level := 0
  	scope := []tagInfo{}
  	scopes := [][]tagInfo{}
  	for _, token := range tokens {
  		// we will clear empty tagged tokens from the array
  		txt := strings.TrimSpace(token.txt)
  		tag := strings.TrimSpace(token.tag)
  		if len(txt) == 0 && len(tag) == 0 {
  			continue
  		}
  
  		scope = append(scope, token)
  
  		// If it is a closing tag then we check what level
  		// we are on. If it is 0, then that means we have found a
  		// scoped block.
  		if token.closingTag {
  			level--
  			if level == 0 {
  				scopes = append(scopes, scope)
  				scope = []tagInfo{}
  			}
  			// Check opening tags and increment the level
  		} else if token.txt == "" {
  			level++
  		}
  	}
  	// In this case, we did not run into a closing tag. This would mean
  	// we have plaintext for documentation.
  	if len(scopes) == 0 {
  		scopes = append(scopes, scope)
  	}
  	return scopes
  }