added duration calculation and list integration