the function void forward_propagation() `for (cnn_size_t sample = 0, sample_count = in_data.size(); sample < sample_count; ++sample)` should be `for (cnn_size_t sample = 0, sample_count = in_data[0]->size(); sample < sample_count; ++sample)` ?