calcualte length