explanation of * and +