add alternate constructor to optionally provide a count