code: package io.paradoxical.cassieq.discoverable.auth;
  
  import com.google.common.collect.ImmutableCollection;
  import io.paradoxical.cassieq.model.accounts.AccountKey;
  import io.paradoxical.cassieq.model.time.Clock;
  import lombok.NonNull;
  import lombok.Value;
  import org.joda.time.Duration;
  
  import javax.validation.constraints.NotNull;
  
  @Value
  public class CredentialsVerificationContext {
  
      @NotNull
      @NonNull
      private final ImmutableCollection<AccountKey> keys;
  
      @NotNull
      @NonNull
      private final Clock clock;
  
      @NotNull
      @NonNull
      private final Duration allowedClockSkew;
  }
  