code: def test_round_implementation_bounds(self):
      # See also: analogous test for Timedelta
      result = Timestamp.min.ceil("s")
      expected = Timestamp(1677, 9, 21, 0, 12, 44)
      assert result == expected
  
      result = Timestamp.max.floor("s")
      expected = Timestamp.max - Timedelta(854775807)
      assert result == expected
  
      msg = (
          "Cannot round 1677-09-21 00:12:43.145224193 to freq=<Second>"
      )
      with pytest.raises(OutOfBoundsDatetime, match=msg):
          Timestamp.min.floor("s")
  
      with pytest.raises(OutOfBoundsDatetime, match=msg):
          Timestamp.min.round("s")
  
      msg = (
          "Cannot round 2262-04-11 23:47:16.854775807 to freq=<Second>"
      )
      with pytest.raises(OutOfBoundsDatetime, match=msg):
          Timestamp.max.ceil("s")
  
      with pytest.raises(OutOfBoundsDatetime, match=msg):
          Timestamp.max.round("s")
  
imports: from hypothesis import given, strategies
  import numpy
  import pytest
  import pytz
  from pandas._libs import lib
  from pandas._libs.tslibs import NaT, OutOfBoundsDatetime, Timedelta, Timestamp, iNaT, to_offset
  from pandas._libs.tslibs.dtypes import NpyDatetimeUnit
  from pandas._libs.tslibs.period import INVALID_FREQ_ERR_MSG
  import pandas._testing
label_desc: Use image node_id 15 for calling the TestTimestampRound obj's underlying member method code with example usage: obj.test_round_implementation_bounds() without return types