code: func (p *PolicyAuthorizer) EventRead(name string) bool {
  	// Longest-prefix match on event names
  	if rule, ok := getPolicy(name, p.eventRules); ok {
  		if allow, recurse := enforce(rule.(string), PolicyRead); !recurse {
  			return allow
  		}
  	}
  
  	// No matching rule, use the parent.
  	return p.parent.EventRead(name)
  }
docs: // EventRead is used to determine if the policy allows for a
  // specific user event to be read.