diff --git a/src/main/java/azgracompress/io/loader/BasicLoader.java b/src/main/java/azgracompress/io/loader/BasicLoader.java
index 1be1240ae0f1bd1f0dd35a0d8fad55711e090646..0f8d8fd740b8c3e92f5154bfabeb3bc46dbd323d 100644
--- a/src/main/java/azgracompress/io/loader/BasicLoader.java
+++ b/src/main/java/azgracompress/io/loader/BasicLoader.java
@@ -33,7 +33,8 @@ public abstract class BasicLoader {
 
     protected int[][] loadRowVectorsImplByLoadPlaneData(final int vectorSize, final Range<Integer> planeRange) throws IOException {
         final int rowVectorCount = (int) Math.ceil((double) dims.getX() / (double) vectorSize);
-        final int vectorCount = dims.getZ() * dims.getY() * rowVectorCount;
+        final int planeCount = planeRange.getTo() - planeRange.getFrom();
+        final int vectorCount = planeCount * dims.getY() * rowVectorCount;
 
         int[][] rowVectors = new int[vectorCount][vectorSize];