# Constants
DoubleVote denotes a slashable offense in which a validator cast two conflicting attestations within the same target epoch.
SurroundVote denotes a slashable offense in which a validator surrounded or was surrounded by a previous attestation created by the same validator.
# Structs
DetectionResult tells us the kind of slashable offense found from detecting on min-max spans + the slashable epoch for the offense.
Span defines the structure used for detecting surround and double votes.
# Type aliases
DetectionKind defines an enum type that gives us information on the type of slashable offense found when analyzing validator min-max spans.