for backup
calculate L