Program: 58647
Project: 58647
Buggy source:
/** 
 * D1. Domiciliation ¾ Si le compte du bénéficiaire est un compte de résident : Désignation en clair de la banque et du guichet domiciliataires. Informations figurant sur le RIB du bénéficiaire. Cette information est optionnelle, mais lorsque la zone est utilisée elle doit être cadrée à gauche. ¾ Si le compte du bénéficiaire est un compte de non résident : ♦ Pour les Virements de Salaires, Pensions et Prestations Assimilées, la zone D1 se décompose de la façon suivante : D1-1. (20 caractères) positions 55 à 74 pour indiquer la domiciliation D1-2. (4 caractères) positions 75 à 78 • 1 caractère : Code nature économique pouvant prendre les valeurs, 5 = salaires transférés par des employeurs du secteur officiel 6 = salaires transférés par des employeurs privés 7 = autres rémunérations du travail 8 = pensions, retraites et prestations sociales • 3 caractères : identification géographique du pays de résidence du bénéficiaire du Virement. Code géonomenclature de la CEE (liste de codes pays fournie par la Banque de France) ♦ Pour la Déclaration à la Balance des Paiements, cette zone D1 se décompose de la façon suivante : D1-1. (9 caractères) positions 55 à 63 numéro SIREN du résident D1-2. (15 caractères) positions 64 à 78 : pour indiquer la domiciliation la zone D2 se décompose en 4 sous zones : D2-1. (1 caractère) position 79, code type de déclaration D2-2. (3 caractères) positions 80 à 82, code nature économique D2-3. (3 caractères) positions 83 à 85, code pays D2-4. (1 caractère) position 86, zone réservée
 * @return
 */
protected String getDetailD1Area(BankOrderLine bankOrderLine){
  return bankOrderLine.getReceiverBankDetails().getBankAddress();
}

Fixed version (ground truth):
/** 
 * D1. Domiciliation ¾ Si le compte du bénéficiaire est un compte de résident : Désignation en clair de la banque et du guichet domiciliataires. Informations figurant sur le RIB du bénéficiaire. Cette information est optionnelle, mais lorsque la zone est utilisée elle doit être cadrée à gauche. ¾ Si le compte du bénéficiaire est un compte de non résident : ♦ Pour les Virements de Salaires, Pensions et Prestations Assimilées, la zone D1 se décompose de la façon suivante : D1-1. (20 caractères) positions 55 à 74 pour indiquer la domiciliation D1-2. (4 caractères) positions 75 à 78 • 1 caractère : Code nature économique pouvant prendre les valeurs, 5 = salaires transférés par des employeurs du secteur officiel 6 = salaires transférés par des employeurs privés 7 = autres rémunérations du travail 8 = pensions, retraites et prestations sociales • 3 caractères : identification géographique du pays de résidence du bénéficiaire du Virement. Code géonomenclature de la CEE (liste de codes pays fournie par la Banque de France) ♦ Pour la Déclaration à la Balance des Paiements, cette zone D1 se décompose de la façon suivante : D1-1. (9 caractères) positions 55 à 63 numéro SIREN du résident D1-2. (15 caractères) positions 64 à 78 : pour indiquer la domiciliation la zone D2 se décompose en 4 sous zones : D2-1. (1 caractère) position 79, code type de déclaration D2-2. (3 caractères) positions 80 à 82, code nature économique D2-3. (3 caractères) positions 83 à 85, code pays D2-4. (1 caractère) position 86, zone réservée
 * @return
 */
protected String getDetailD1Area(BankOrderLine bankOrderLine){
  return bankOrderLine.getReceiverBankDetails().getBank().getBankAddress();
}