constructor changes to allow long array to be passed as well