okay @Kaveh_Motamed , this logic is based on the observation that we have two lists we need to combine. The first list contains the values factor multiplier and the second list we create by adding all the columns in a singlelist via the functionList()
Once we have the two list we make them talk by taking each time the Nth() value in the list. You see here Nth(CurrentValue) The CurrentValue is a position in that that list, so the first, the second, the third and so on as many values you have in the list. This number we generate via the combi of Sequence() and Formulamap() The first generates a virtual index and the FormulaMap() makes sure that every item in both list is evaluated (or calculated). Once we have all values, we Sum()
I understand that this could feel complex, in this regard you might benefit from this article in this: