code: @Nonnull
    @Override
    public Seq<E> rotated(final int amount) {
      final Object[] array = new Object[size()];
      if (amount == 0) {
        return this;
      }
      if (amount < 0) {
        return leftRotated(-amount);
      }
      for (int i = 0; i < size(); i += 1) {
        array[(i + amount) % size()] = get(i);
      }
      return ofArrayZeroCopyInternal(array);
    }
docs: Rotates the list by amount positions.
  <p>
  Positive values rotate items to the right, negative values to the left.
  
  <code>Seq.of(1, 2, 3).rotated(1).equals(Seq.of(3, 1, 2))</code>
  <code>Seq.of(1, 2, 3).rotated(-1).equals(Seq.of(2, 3, 1))</code>
  
  @param amount The amount of positions to rotate, positive values to the right, negative values to the left.
  @return The rotated sequence.