code: func validKey(key string) bool {
  	// UUIDv4's are 36 chars (16 bytes not including dashes)
  	if len(key) != 36 {
  		return false
  	}
  
  	// 0 indexed dash positions
  	dashPos := []int{8, 13, 18, 23}
  	for i := 0; i < len(key); i++ {
  		atDashPos := false
  		for _, pos := range dashPos {
  			if i == pos {
  				atDashPos = true
  				break
  			}
  		}
  
  		if atDashPos == true {
  			if key[i] != '-' {
  				return false
  			}
  			// continue the loop if dash is found
  			continue
  		}
  
  		// if not a dash, make sure char is a-f or 0-9
  		// 48 == '0', 57 == '9', 97 == 'a', 102 == 'f'
  		if key[i] < 48 || (key[i] > 57 && key[i] < 97) || key[i] > 102 {
  			return false
  		}
  	}
  
  	return true
  }
docs: // validKey returns true if the session key is a valid UUIDv4 format:
  // 8chars-4chars-4chars-4chars-12chars (chars are a-f 0-9)
  // Example: a668b3bb-0cf1-4627-8cd4-7f62d09ebad6