code: protected Pair<INDArray, INDArray> preOutput4d(boolean training, boolean forBackprop, LayerWorkspaceMgr workspaceMgr) {
          return preOutput(training, forBackprop, workspaceMgr);
      }
docs: preOutput4d: Used so that ConvolutionLayer subclasses (such as Convolution1DLayer) can maintain their standard
  non-4d preOutput method, while overriding this to return 4d activations (for use in backprop) without modifying
  the public API