better array and dictonary support