elements will be created now if they don't exist