implement cumulative page