more generic ln syntax