code: public static function get($key, $default = null) {
          if (!isset($_COOKIE[$key])) {
              // The cookie does not exist
              return $default;
          }
  
          // Get the cookie value
          $cookie = $_COOKIE[$key];;
  
          // Find the position of the split between salt and contents
          $split = strlen(static::salt($key, null));
  
          if (isset($cookie[$split]) && $cookie[$split] === '~') {
              // Separate the salt and the value
              list ($hash, $value) = explode('~', $cookie, 2);
  
              if (static::salt($key, $value) === $hash) {
                  // Cookie signature is valid
                  return $value;
              }
  
              // The cookie signature is invalid, delete it
              static::delete($key);
          }
  
          return $default;
      }
docs: Gets the value of a signed cookie. Cookies without signatures will not
  be returned. If the cookie signature is present, but invalid, the cookie
  will be deleted.
  
  // Get the "theme" cookie, or use "blue" if the cookie does not exist
  $theme = Cookie::get('theme', 'blue');
  
  @param   string $key cookie name
  @param   mixed $default default value to return
  @return  string