Updated with better array constructors