non static assignment
calculation is working. correctly or not I don't know
calculation works. maybe not correct.