question: private static int [ ] [ ] compileDerivativesIndirection ( final int parameters , final int order , final DSCompiler valueCompiler , final DSCompiler derivativeCompiler ) { if ( parameters == 0 || order == 0 ) { return new int [ 1 ] [ parameters ] ; } final int vSize = valueCompiler . derivativesIndirection . length ; final int dSize = derivativeCompiler . derivativesIndirection . length ; final int [ ] [ ] derivativesIndirection = new int [ vSize + dSize ] [ parameters ] ; for ( int i = 0 ; i < vSize ; ++ i ) { System . arraycopy ( valueCompiler . derivativesIndirection [ i ] , 0 , derivativesIndirection [ i ] , 0 , parameters - 1 ) ; } for ( int i = 0 ; i < dSize ; ++ i ) { System . arraycopy ( derivativeCompiler . derivativesIndirection [ i ] , 0 , derivativesIndirection [ vSize + i ] , 0 , parameters ) ; derivativesIndirection [ vSize + i ] [ parameters - 1 ] ++ ; } return derivativesIndirection ; }
target:  Compile the derivatives indirection array.