Added capacity limitations and error if exceeded