# binary5d > Apply a binary callback to elements in two five-dimensional nested input arrays and assign results to elements in a five-dimensional nested output array.
## Usage ```javascript var binary5d = require( '@stdlib/array/base/binary5d' ); ``` #### binary5d( arrays, shape, fcn ) Applies a binary callback to elements in two five-dimensional nested input arrays and assigns results to elements in a five-dimensional nested output array. ```javascript var add = require( '@stdlib/number/float64/base/add' ); var zeros5d = require( '@stdlib/array/base/zeros5d' ); var x = [ [ [ [ [ 1.0, 2.0 ], [ 3.0, 4.0 ] ] ] ] ]; var z = zeros5d( [ 1, 1, 1, 2, 2 ] ); var shape = [ 1, 1, 1, 2, 2 ]; binary5d( [ x, x, z ], shape, add ); // z => [ [ [ [ [ 2.0, 4.0 ], [ 6.0, 8.0 ] ] ] ] ] ``` The function accepts the following arguments: - **arrays**: array-like object containing two input nested arrays and one output nested array. - **shape**: array shape. - **fcn**: binary function to apply.
## Notes - The function assumes that the input and output arrays have the same shape.
## Examples ```javascript var discreteUniform = require( '@stdlib/random/base/discrete-uniform' ).factory; var filled5dBy = require( '@stdlib/array/base/filled5d-by' ); var zeros5d = require( '@stdlib/array/base/zeros5d' ); var add = require( '@stdlib/number/float64/base/add' ); var binary5d = require( '@stdlib/array/base/binary5d' ); var shape = [ 1, 2, 2, 3, 3 ]; var x = filled5dBy( shape, discreteUniform( -100, 100 ) ); console.log( x ); var y = filled5dBy( shape, discreteUniform( -100, 100 ) ); console.log( y ); var z = zeros5d( shape ); console.log( z ); binary5d( [ x, y, z ], shape, add ); console.log( z ); ```