updated playlist logic