implemented scopes and generic validation of jumps between them