Second pass: to be finalized