docs: public static WaveletDescription<WlCoef_F32> biorthogonal_F32( int J ,
  																   BorderType borderType ) {
  		if( J != 5 ) {
  			throw new IllegalArgumentException("Only 5 is currently supported");
  		}
  
  		WlCoef_F32 forward = new WlCoef_F32();
  
  		forward.offsetScaling = -2;
  		forward.offsetWavelet = 0;
  
  		forward.scaling = new float[5];
  		forward.wavelet = new float[3];
  
  		forward.scaling[0] = (float)(-1.0/8.0);
  		forward.scaling[1] = (float)(2.0/8.0);
  		forward.scaling[2] = (float)(6.0/8.0);
  		forward.scaling[3] = (float)(2.0/8.0);
  		forward.scaling[4] = (float)(-1.0/8.0);
  
  		forward.wavelet[0] = -1.0f/2.0f;
  		forward.wavelet[1] = 1;
  		forward.wavelet[2] = -1.0f/2.0f;
  
  		BorderIndex1D border;
  		WlBorderCoef<WlCoef_F32> inverse;
  
  		if( borderType == BorderType.REFLECT ) {
  			WlCoef_F32 inner = computeInnerInverseBiorthogonal(forward);
  			border = new BorderIndex1D_Reflect();
  			inverse = computeBorderCoefficients(border,forward,inner);
  		} else if( borderType == BorderType.WRAP ) {
  			WlCoef_F32 inner = computeInnerInverseBiorthogonal(forward);
  			inverse = new WlBorderCoefStandard<>(inner);
  			border = new BorderIndex1D_Wrap();
  		} else {
  			throw new IllegalArgumentException("Unsupported border type: "+borderType);
  		}
  		return new WaveletDescription<>(border, forward, inverse);
  
  	}