public override void Compile(Size input_size, bool console = false) { z_offset = input_size[0]; base.Compile(input_size, console); memory_layer.Compile(layers.Last().output_size); layers[0].Compile(new Size(input_size[0] + memory_layer.output_size[0], Math.Max(input_size[1], memory_layer.output_size[1]), Math.Max(input_size[2], memory_layer.output_size[2]))); cached_output = doubleArrayExtensions.CreateArray(memory_layer.output_size); cached_last_layer = doubleArrayExtensions.CreateArray(memory_layer.input_size); }