Updating counter to match interface changes, and properly use the array counter