code: def __init__(self, pool_length, stride, padding, **kwargs):
      super(Pool1D, self).__init__(**kwargs)
      if hasattr(pool_length, "__iter__"):
          assert len(pool_length) == 1
          pool_length = pool_length[0]
      self.pool_length = pool_length
      if hasattr(stride, "__iter__"):
          assert len(stride) == 1
          stride = stride[0]
      self.stride = stride
      self.padding = padding
  
imports: from __future__ import division
  from __future__ import print_function
  from __future__ import absolute_import
  from .core import *
  from .helper_functions import conv1d_transpose_via_conv2d
  from .convolutional import PaddingMode, DataFormat
  from .None import helper_functions
  import tensorflow
  from tensorflow.python.ops import nn_grad
label_desc: Use image node_id 1 to create a new Pool1D object from inherited base classes: SingleInputMixin, Node with example: obj = Pool1D(pool_length, stride, padding)