can reuse checkSize