added weighted average