{
  "default_value": false,
  "definition_period": "month",
  "documentation": "\nComplémentaire à la bourse sur critères sociaux, pour les étudiants\nayant eu mention très bien au baccalauréat.\n\nNon modélisé :\n- L'étudiant respecte les conditions d'inscription pédagogique, d'assiduité\net de présentation aux examens (non applicable si nouveau bachelier)\nou redouble pour raisons médicales.\n\n- Un étudiant ne peut bénéficier de plus de 3 fois de l'aide au mérite.\n",
  "dtype": "bool_",
  "entity": "individu",
  "file_path": "openfisca_france/model/prestations/enseignement_superieur/aide_merite.py",
  "formulas": {
    "0001-01-01": {
      "ast": {
        "args": {
          "args": [
            {
              "arg": "individu",
              "ast_class": "arg",
              "col_offset": 12,
              "end_col_offset": 20,
              "end_lineno": 1,
              "lineno": 1
            },
            {
              "arg": "period",
              "ast_class": "arg",
              "col_offset": 22,
              "end_col_offset": 28,
              "end_lineno": 1,
              "lineno": 1
            }
          ],
          "ast_class": "arguments",
          "defaults": [],
          "kw_defaults": [],
          "kwonlyargs": [],
          "posonlyargs": []
        },
        "ast_class": "FunctionDef",
        "body": [
          {
            "args": {
              "args": [
                {
                  "arg": "mois_calcul",
                  "ast_class": "arg",
                  "col_offset": 48,
                  "end_col_offset": 59,
                  "end_lineno": 3,
                  "lineno": 3
                }
              ],
              "ast_class": "arguments",
              "defaults": [],
              "kw_defaults": [],
              "kwonlyargs": [],
              "posonlyargs": []
            },
            "ast_class": "FunctionDef",
            "body": [
              {
                "ast_class": "Assign",
                "col_offset": 8,
                "end_col_offset": 94,
                "end_lineno": 4,
                "lineno": 4,
                "targets": [
                  {
                    "ast_class": "Name",
                    "col_offset": 8,
                    "ctx": {
                      "ast_class": "Store"
                    },
                    "end_col_offset": 30,
                    "end_lineno": 4,
                    "id": "nb_mois_annee_courante",
                    "lineno": 4
                  }
                ],
                "value": {
                  "ast_class": "BinOp",
                  "col_offset": 33,
                  "end_col_offset": 94,
                  "end_lineno": 4,
                  "left": {
                    "ast_class": "BinOp",
                    "col_offset": 33,
                    "end_col_offset": 90,
                    "end_lineno": 4,
                    "left": {
                      "ast_class": "Attribute",
                      "attr": "month",
                      "col_offset": 33,
                      "ctx": {
                        "ast_class": "Load"
                      },
                      "end_col_offset": 55,
                      "end_lineno": 4,
                      "lineno": 4,
                      "value": {
                        "ast_class": "Attribute",
                        "attr": "date",
                        "col_offset": 33,
                        "ctx": {
                          "ast_class": "Load"
                        },
                        "end_col_offset": 49,
                        "end_lineno": 4,
                        "lineno": 4,
                        "value": {
                          "ast_class": "Name",
                          "col_offset": 33,
                          "ctx": {
                            "ast_class": "Load"
                          },
                          "end_col_offset": 44,
                          "end_lineno": 4,
                          "id": "mois_calcul",
                          "lineno": 4
                        }
                      }
                    },
                    "lineno": 4,
                    "op": {
                      "ast_class": "Sub"
                    },
                    "right": {
                      "ast_class": "Attribute",
                      "attr": "month",
                      "col_offset": 58,
                      "ctx": {
                        "ast_class": "Load"
                      },
                      "end_col_offset": 90,
                      "end_lineno": 4,
                      "lineno": 4,
                      "value": {
                        "ast_class": "Attribute",
                        "attr": "date",
                        "col_offset": 58,
                        "ctx": {
                          "ast_class": "Load"
                        },
                        "end_col_offset": 84,
                        "end_lineno": 4,
                        "lineno": 4,
                        "value": {
                          "ast_class": "Attribute",
                          "attr": "this_year",
                          "col_offset": 58,
                          "ctx": {
                            "ast_class": "Load"
                          },
                          "end_col_offset": 79,
                          "end_lineno": 4,
                          "lineno": 4,
                          "value": {
                            "ast_class": "Name",
                            "col_offset": 58,
                            "ctx": {
                              "ast_class": "Load"
                            },
                            "end_col_offset": 69,
                            "end_lineno": 4,
                            "id": "mois_calcul",
                            "lineno": 4
                          }
                        }
                      }
                    }
                  },
                  "lineno": 4,
                  "op": {
                    "ast_class": "Add"
                  },
                  "right": {
                    "ast_class": "Constant",
                    "col_offset": 93,
                    "end_col_offset": 94,
                    "end_lineno": 4,
                    "lineno": 4,
                    "value": 1
                  }
                }
              },
              {
                "ast_class": "If",
                "body": [
                  {
                    "ast_class": "Assign",
                    "col_offset": 12,
                    "end_col_offset": 61,
                    "end_lineno": 8,
                    "lineno": 8,
                    "targets": [
                      {
                        "ast_class": "Name",
                        "col_offset": 12,
                        "ctx": {
                          "ast_class": "Store"
                        },
                        "end_col_offset": 37,
                        "end_lineno": 8,
                        "id": "annee_de_rentree_courante",
                        "lineno": 8
                      }
                    ],
                    "value": {
                      "ast_class": "Attribute",
                      "attr": "last_year",
                      "col_offset": 40,
                      "ctx": {
                        "ast_class": "Load"
                      },
                      "end_col_offset": 61,
                      "end_lineno": 8,
                      "lineno": 8,
                      "value": {
                        "ast_class": "Name",
                        "col_offset": 40,
                        "ctx": {
                          "ast_class": "Load"
                        },
                        "end_col_offset": 51,
                        "end_lineno": 8,
                        "id": "mois_calcul",
                        "lineno": 8
                      }
                    }
                  }
                ],
                "col_offset": 8,
                "end_col_offset": 61,
                "end_lineno": 10,
                "lineno": 7,
                "orelse": [
                  {
                    "ast_class": "Assign",
                    "col_offset": 12,
                    "end_col_offset": 61,
                    "end_lineno": 10,
                    "lineno": 10,
                    "targets": [
                      {
                        "ast_class": "Name",
                        "col_offset": 12,
                        "ctx": {
                          "ast_class": "Store"
                        },
                        "end_col_offset": 37,
                        "end_lineno": 10,
                        "id": "annee_de_rentree_courante",
                        "lineno": 10
                      }
                    ],
                    "value": {
                      "ast_class": "Attribute",
                      "attr": "this_year",
                      "col_offset": 40,
                      "ctx": {
                        "ast_class": "Load"
                      },
                      "end_col_offset": 61,
                      "end_lineno": 10,
                      "lineno": 10,
                      "value": {
                        "ast_class": "Name",
                        "col_offset": 40,
                        "ctx": {
                          "ast_class": "Load"
                        },
                        "end_col_offset": 51,
                        "end_lineno": 10,
                        "id": "mois_calcul",
                        "lineno": 10
                      }
                    }
                  }
                ],
                "test": {
                  "ast_class": "Compare",
                  "col_offset": 11,
                  "comparators": [
                    {
                      "ast_class": "Constant",
                      "col_offset": 36,
                      "end_col_offset": 37,
                      "end_lineno": 7,
                      "lineno": 7,
                      "value": 9
                    }
                  ],
                  "end_col_offset": 37,
                  "end_lineno": 7,
                  "left": {
                    "ast_class": "Name",
                    "col_offset": 11,
                    "ctx": {
                      "ast_class": "Load"
                    },
                    "end_col_offset": 33,
                    "end_lineno": 7,
                    "id": "nb_mois_annee_courante",
                    "lineno": 7
                  },
                  "lineno": 7,
                  "ops": [
                    {
                      "ast_class": "Lt"
                    }
                  ]
                }
              },
              {
                "ast_class": "Assign",
                "col_offset": 8,
                "end_col_offset": 77,
                "end_lineno": 12,
                "lineno": 12,
                "targets": [
                  {
                    "ast_class": "Name",
                    "col_offset": 8,
                    "ctx": {
                      "ast_class": "Store"
                    },
                    "end_col_offset": 25,
                    "end_lineno": 12,
                    "id": "septembre_dernier",
                    "lineno": 12
                  }
                ],
                "value": {
                  "ast_class": "Attribute",
                  "attr": "start",
                  "col_offset": 28,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 77,
                  "end_lineno": 12,
                  "lineno": 12,
                  "value": {
                    "args": [
                      {
                        "ast_class": "UnaryOp",
                        "col_offset": 61,
                        "end_col_offset": 63,
                        "end_lineno": 12,
                        "lineno": 12,
                        "op": {
                          "ast_class": "USub"
                        },
                        "operand": {
                          "ast_class": "Constant",
                          "col_offset": 62,
                          "end_col_offset": 63,
                          "end_lineno": 12,
                          "lineno": 12,
                          "value": 4
                        }
                      },
                      {
                        "ast_class": "Name",
                        "col_offset": 65,
                        "ctx": {
                          "ast_class": "Load"
                        },
                        "end_col_offset": 70,
                        "end_lineno": 12,
                        "id": "MONTH",
                        "lineno": 12
                      }
                    ],
                    "ast_class": "Call",
                    "col_offset": 28,
                    "end_col_offset": 71,
                    "end_lineno": 12,
                    "func": {
                      "ast_class": "Attribute",
                      "attr": "offset",
                      "col_offset": 28,
                      "ctx": {
                        "ast_class": "Load"
                      },
                      "end_col_offset": 60,
                      "end_lineno": 12,
                      "lineno": 12,
                      "value": {
                        "ast_class": "Name",
                        "col_offset": 28,
                        "ctx": {
                          "ast_class": "Load"
                        },
                        "end_col_offset": 53,
                        "end_lineno": 12,
                        "id": "annee_de_rentree_courante",
                        "lineno": 12
                      }
                    },
                    "keywords": [],
                    "lineno": 12
                  }
                }
              },
              {
                "ast_class": "Return",
                "col_offset": 8,
                "end_col_offset": 53,
                "end_lineno": 13,
                "lineno": 13,
                "value": {
                  "args": [
                    {
                      "ast_class": "Tuple",
                      "col_offset": 22,
                      "ctx": {
                        "ast_class": "Load"
                      },
                      "elts": [
                        {
                          "ast_class": "Name",
                          "col_offset": 23,
                          "ctx": {
                            "ast_class": "Load"
                          },
                          "end_col_offset": 28,
                          "end_lineno": 13,
                          "id": "MONTH",
                          "lineno": 13
                        },
                        {
                          "ast_class": "Name",
                          "col_offset": 30,
                          "ctx": {
                            "ast_class": "Load"
                          },
                          "end_col_offset": 47,
                          "end_lineno": 13,
                          "id": "septembre_dernier",
                          "lineno": 13
                        },
                        {
                          "ast_class": "Constant",
                          "col_offset": 49,
                          "end_col_offset": 51,
                          "end_lineno": 13,
                          "lineno": 13,
                          "value": 10
                        }
                      ],
                      "end_col_offset": 52,
                      "end_lineno": 13,
                      "lineno": 13
                    }
                  ],
                  "ast_class": "Call",
                  "col_offset": 15,
                  "end_col_offset": 53,
                  "end_lineno": 13,
                  "func": {
                    "ast_class": "Name",
                    "col_offset": 15,
                    "ctx": {
                      "ast_class": "Load"
                    },
                    "end_col_offset": 21,
                    "end_lineno": 13,
                    "id": "Period",
                    "lineno": 13
                  },
                  "keywords": [],
                  "lineno": 13
                }
              }
            ],
            "col_offset": 4,
            "decorator_list": [],
            "end_col_offset": 53,
            "end_lineno": 13,
            "lineno": 3,
            "name": "calcul_periode_universitaire_precedente"
          },
          {
            "ast_class": "Assign",
            "col_offset": 4,
            "end_col_offset": 43,
            "end_lineno": 16,
            "lineno": 16,
            "targets": [
              {
                "ast_class": "Name",
                "col_offset": 4,
                "ctx": {
                  "ast_class": "Store"
                },
                "end_col_offset": 12,
                "end_lineno": 16,
                "id": "etudiant",
                "lineno": 16
              }
            ],
            "value": {
              "args": [
                {
                  "ast_class": "Constant",
                  "col_offset": 24,
                  "end_col_offset": 34,
                  "end_lineno": 16,
                  "lineno": 16,
                  "value": "etudiant"
                },
                {
                  "ast_class": "Name",
                  "col_offset": 36,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 42,
                  "end_lineno": 16,
                  "id": "period",
                  "lineno": 16
                }
              ],
              "ast_class": "Call",
              "col_offset": 15,
              "end_col_offset": 43,
              "end_lineno": 16,
              "func": {
                "ast_class": "Name",
                "col_offset": 15,
                "ctx": {
                  "ast_class": "Load"
                },
                "end_col_offset": 23,
                "end_lineno": 16,
                "id": "individu",
                "lineno": 16
              },
              "keywords": [],
              "lineno": 16
            }
          },
          {
            "ast_class": "Assign",
            "col_offset": 4,
            "end_col_offset": 73,
            "end_lineno": 18,
            "lineno": 18,
            "targets": [
              {
                "ast_class": "Name",
                "col_offset": 4,
                "ctx": {
                  "ast_class": "Store"
                },
                "end_col_offset": 27,
                "end_lineno": 18,
                "id": "bourse_criteres_sociaux",
                "lineno": 18
              }
            ],
            "value": {
              "args": [
                {
                  "ast_class": "Constant",
                  "col_offset": 39,
                  "end_col_offset": 64,
                  "end_lineno": 18,
                  "lineno": 18,
                  "value": "bourse_criteres_sociaux"
                },
                {
                  "ast_class": "Name",
                  "col_offset": 66,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 72,
                  "end_lineno": 18,
                  "id": "period",
                  "lineno": 18
                }
              ],
              "ast_class": "Call",
              "col_offset": 30,
              "end_col_offset": 73,
              "end_lineno": 18,
              "func": {
                "ast_class": "Name",
                "col_offset": 30,
                "ctx": {
                  "ast_class": "Load"
                },
                "end_col_offset": 38,
                "end_lineno": 18,
                "id": "individu",
                "lineno": 18
              },
              "keywords": [],
              "lineno": 18
            }
          },
          {
            "ast_class": "Assign",
            "col_offset": 4,
            "end_col_offset": 83,
            "end_lineno": 19,
            "lineno": 19,
            "targets": [
              {
                "ast_class": "Name",
                "col_offset": 4,
                "ctx": {
                  "ast_class": "Store"
                },
                "end_col_offset": 32,
                "end_lineno": 19,
                "id": "allocation_annuelle_etudiant",
                "lineno": 19
              }
            ],
            "value": {
              "args": [
                {
                  "ast_class": "Constant",
                  "col_offset": 44,
                  "end_col_offset": 74,
                  "end_lineno": 19,
                  "lineno": 19,
                  "value": "allocation_annuelle_etudiant"
                },
                {
                  "ast_class": "Name",
                  "col_offset": 76,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 82,
                  "end_lineno": 19,
                  "id": "period",
                  "lineno": 19
                }
              ],
              "ast_class": "Call",
              "col_offset": 35,
              "end_col_offset": 83,
              "end_lineno": 19,
              "func": {
                "ast_class": "Name",
                "col_offset": 35,
                "ctx": {
                  "ast_class": "Load"
                },
                "end_col_offset": 43,
                "end_lineno": 19,
                "id": "individu",
                "lineno": 19
              },
              "keywords": [],
              "lineno": 19
            }
          },
          {
            "ast_class": "Assign",
            "col_offset": 4,
            "end_col_offset": 87,
            "end_lineno": 20,
            "lineno": 20,
            "targets": [
              {
                "ast_class": "Name",
                "col_offset": 4,
                "ctx": {
                  "ast_class": "Store"
                },
                "end_col_offset": 24,
                "end_lineno": 20,
                "id": "condition_ressources",
                "lineno": 20
              }
            ],
            "value": {
              "ast_class": "Compare",
              "col_offset": 27,
              "comparators": [
                {
                  "ast_class": "Constant",
                  "col_offset": 86,
                  "end_col_offset": 87,
                  "end_lineno": 20,
                  "lineno": 20,
                  "value": 0
                }
              ],
              "end_col_offset": 87,
              "end_lineno": 20,
              "left": {
                "ast_class": "BinOp",
                "col_offset": 28,
                "end_col_offset": 82,
                "end_lineno": 20,
                "left": {
                  "ast_class": "Name",
                  "col_offset": 28,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 51,
                  "end_lineno": 20,
                  "id": "bourse_criteres_sociaux",
                  "lineno": 20
                },
                "lineno": 20,
                "op": {
                  "ast_class": "Add"
                },
                "right": {
                  "ast_class": "Name",
                  "col_offset": 54,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 82,
                  "end_lineno": 20,
                  "id": "allocation_annuelle_etudiant",
                  "lineno": 20
                }
              },
              "lineno": 20,
              "ops": [
                {
                  "ast_class": "Gt"
                }
              ]
            }
          },
          {
            "ast_class": "Assign",
            "col_offset": 4,
            "end_col_offset": 67,
            "end_lineno": 22,
            "lineno": 22,
            "targets": [
              {
                "ast_class": "Name",
                "col_offset": 4,
                "ctx": {
                  "ast_class": "Store"
                },
                "end_col_offset": 24,
                "end_lineno": 22,
                "id": "mention_baccalaureat",
                "lineno": 22
              }
            ],
            "value": {
              "args": [
                {
                  "ast_class": "Constant",
                  "col_offset": 36,
                  "end_col_offset": 58,
                  "end_lineno": 22,
                  "lineno": 22,
                  "value": "mention_baccalaureat"
                },
                {
                  "ast_class": "Name",
                  "col_offset": 60,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 66,
                  "end_lineno": 22,
                  "id": "period",
                  "lineno": 22
                }
              ],
              "ast_class": "Call",
              "col_offset": 27,
              "end_col_offset": 67,
              "end_lineno": 22,
              "func": {
                "ast_class": "Name",
                "col_offset": 27,
                "ctx": {
                  "ast_class": "Load"
                },
                "end_col_offset": 35,
                "end_lineno": 22,
                "id": "individu",
                "lineno": 22
              },
              "keywords": [],
              "lineno": 22
            }
          },
          {
            "ast_class": "Assign",
            "col_offset": 4,
            "end_col_offset": 9,
            "end_lineno": 26,
            "lineno": 23,
            "targets": [
              {
                "ast_class": "Name",
                "col_offset": 4,
                "ctx": {
                  "ast_class": "Store"
                },
                "end_col_offset": 21,
                "end_lineno": 23,
                "id": "condition_mention",
                "lineno": 23
              }
            ],
            "value": {
              "ast_class": "BinOp",
              "col_offset": 8,
              "end_col_offset": 85,
              "end_lineno": 25,
              "left": {
                "ast_class": "Compare",
                "col_offset": 9,
                "comparators": [
                  {
                    "ast_class": "Attribute",
                    "attr": "mention_tres_bien",
                    "col_offset": 33,
                    "ctx": {
                      "ast_class": "Load"
                    },
                    "end_col_offset": 63,
                    "end_lineno": 24,
                    "lineno": 24,
                    "value": {
                      "ast_class": "Name",
                      "col_offset": 33,
                      "ctx": {
                        "ast_class": "Load"
                      },
                      "end_col_offset": 45,
                      "end_lineno": 24,
                      "id": "TypesMention",
                      "lineno": 24
                    }
                  }
                ],
                "end_col_offset": 63,
                "end_lineno": 24,
                "left": {
                  "ast_class": "Name",
                  "col_offset": 9,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 29,
                  "end_lineno": 24,
                  "id": "mention_baccalaureat",
                  "lineno": 24
                },
                "lineno": 24,
                "ops": [
                  {
                    "ast_class": "Eq"
                  }
                ]
              },
              "lineno": 24,
              "op": {
                "ast_class": "Add"
              },
              "right": {
                "ast_class": "Compare",
                "col_offset": 11,
                "comparators": [
                  {
                    "ast_class": "Attribute",
                    "attr": "mention_tres_bien_felicitations_jury",
                    "col_offset": 35,
                    "ctx": {
                      "ast_class": "Load"
                    },
                    "end_col_offset": 84,
                    "end_lineno": 25,
                    "lineno": 25,
                    "value": {
                      "ast_class": "Name",
                      "col_offset": 35,
                      "ctx": {
                        "ast_class": "Load"
                      },
                      "end_col_offset": 47,
                      "end_lineno": 25,
                      "id": "TypesMention",
                      "lineno": 25
                    }
                  }
                ],
                "end_col_offset": 84,
                "end_lineno": 25,
                "left": {
                  "ast_class": "Name",
                  "col_offset": 11,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 31,
                  "end_lineno": 25,
                  "id": "mention_baccalaureat",
                  "lineno": 25
                },
                "lineno": 25,
                "ops": [
                  {
                    "ast_class": "Eq"
                  }
                ]
              }
            }
          },
          {
            "ast_class": "Assign",
            "col_offset": 4,
            "end_col_offset": 86,
            "end_lineno": 29,
            "lineno": 29,
            "targets": [
              {
                "ast_class": "Name",
                "col_offset": 4,
                "ctx": {
                  "ast_class": "Store"
                },
                "end_col_offset": 36,
                "end_lineno": 29,
                "id": "periode_universitaire_precedente",
                "lineno": 29
              }
            ],
            "value": {
              "args": [
                {
                  "ast_class": "Name",
                  "col_offset": 79,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 85,
                  "end_lineno": 29,
                  "id": "period",
                  "lineno": 29
                }
              ],
              "ast_class": "Call",
              "col_offset": 39,
              "end_col_offset": 86,
              "end_lineno": 29,
              "func": {
                "ast_class": "Name",
                "col_offset": 39,
                "ctx": {
                  "ast_class": "Load"
                },
                "end_col_offset": 78,
                "end_lineno": 29,
                "id": "calcul_periode_universitaire_precedente",
                "lineno": 29
              },
              "keywords": [],
              "lineno": 29
            }
          },
          {
            "ast_class": "Assign",
            "col_offset": 4,
            "end_col_offset": 9,
            "end_lineno": 34,
            "lineno": 30,
            "targets": [
              {
                "ast_class": "Name",
                "col_offset": 4,
                "ctx": {
                  "ast_class": "Store"
                },
                "end_col_offset": 38,
                "end_lineno": 30,
                "id": "aide_merite_eligibilite_an_dernier",
                "lineno": 30
              }
            ],
            "value": {
              "args": [
                {
                  "ast_class": "Constant",
                  "col_offset": 8,
                  "end_col_offset": 33,
                  "end_lineno": 31,
                  "lineno": 31,
                  "value": "aide_merite_eligibilite"
                },
                {
                  "ast_class": "Name",
                  "col_offset": 8,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 40,
                  "end_lineno": 32,
                  "id": "periode_universitaire_precedente",
                  "lineno": 32
                }
              ],
              "ast_class": "Call",
              "col_offset": 41,
              "end_col_offset": 9,
              "end_lineno": 34,
              "func": {
                "ast_class": "Name",
                "col_offset": 41,
                "ctx": {
                  "ast_class": "Load"
                },
                "end_col_offset": 49,
                "end_lineno": 30,
                "id": "individu",
                "lineno": 30
              },
              "keywords": [
                {
                  "arg": "options",
                  "ast_class": "keyword",
                  "col_offset": 8,
                  "end_col_offset": 23,
                  "end_lineno": 33,
                  "lineno": 33,
                  "value": {
                    "ast_class": "List",
                    "col_offset": 18,
                    "ctx": {
                      "ast_class": "Load"
                    },
                    "elts": [
                      {
                        "ast_class": "Name",
                        "col_offset": 19,
                        "ctx": {
                          "ast_class": "Load"
                        },
                        "end_col_offset": 22,
                        "end_lineno": 33,
                        "id": "ADD",
                        "lineno": 33
                      }
                    ],
                    "end_col_offset": 23,
                    "end_lineno": 33,
                    "lineno": 33
                  }
                }
              ],
              "lineno": 30
            }
          },
          {
            "ast_class": "Assign",
            "col_offset": 4,
            "end_col_offset": 113,
            "end_lineno": 37,
            "lineno": 37,
            "targets": [
              {
                "ast_class": "Name",
                "col_offset": 4,
                "ctx": {
                  "ast_class": "Store"
                },
                "end_col_offset": 32,
                "end_lineno": 37,
                "id": "service_civique_annee_passee",
                "lineno": 37
              }
            ],
            "value": {
              "args": [
                {
                  "ast_class": "Constant",
                  "col_offset": 44,
                  "end_col_offset": 61,
                  "end_lineno": 37,
                  "lineno": 37,
                  "value": "service_civique"
                },
                {
                  "ast_class": "Name",
                  "col_offset": 63,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 95,
                  "end_lineno": 37,
                  "id": "periode_universitaire_precedente",
                  "lineno": 37
                }
              ],
              "ast_class": "Call",
              "col_offset": 35,
              "end_col_offset": 113,
              "end_lineno": 37,
              "func": {
                "ast_class": "Name",
                "col_offset": 35,
                "ctx": {
                  "ast_class": "Load"
                },
                "end_col_offset": 43,
                "end_lineno": 37,
                "id": "individu",
                "lineno": 37
              },
              "keywords": [
                {
                  "arg": "options",
                  "ast_class": "keyword",
                  "col_offset": 97,
                  "end_col_offset": 112,
                  "end_lineno": 37,
                  "lineno": 37,
                  "value": {
                    "ast_class": "List",
                    "col_offset": 107,
                    "ctx": {
                      "ast_class": "Load"
                    },
                    "elts": [
                      {
                        "ast_class": "Name",
                        "col_offset": 108,
                        "ctx": {
                          "ast_class": "Load"
                        },
                        "end_col_offset": 111,
                        "end_lineno": 37,
                        "id": "ADD",
                        "lineno": 37
                      }
                    ],
                    "end_col_offset": 112,
                    "end_lineno": 37,
                    "lineno": 37
                  }
                }
              ],
              "lineno": 37
            }
          },
          {
            "ast_class": "Assign",
            "col_offset": 4,
            "end_col_offset": 91,
            "end_lineno": 38,
            "lineno": 38,
            "targets": [
              {
                "ast_class": "Name",
                "col_offset": 4,
                "ctx": {
                  "ast_class": "Store"
                },
                "end_col_offset": 37,
                "end_lineno": 38,
                "id": "periode_universitaire_2_ans_avant",
                "lineno": 38
              }
            ],
            "value": {
              "args": [
                {
                  "ast_class": "UnaryOp",
                  "col_offset": 80,
                  "end_col_offset": 83,
                  "end_lineno": 38,
                  "lineno": 38,
                  "op": {
                    "ast_class": "USub"
                  },
                  "operand": {
                    "ast_class": "Constant",
                    "col_offset": 81,
                    "end_col_offset": 83,
                    "end_lineno": 38,
                    "lineno": 38,
                    "value": 12
                  }
                },
                {
                  "ast_class": "Name",
                  "col_offset": 85,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 90,
                  "end_lineno": 38,
                  "id": "MONTH",
                  "lineno": 38
                }
              ],
              "ast_class": "Call",
              "col_offset": 40,
              "end_col_offset": 91,
              "end_lineno": 38,
              "func": {
                "ast_class": "Attribute",
                "attr": "offset",
                "col_offset": 40,
                "ctx": {
                  "ast_class": "Load"
                },
                "end_col_offset": 79,
                "end_lineno": 38,
                "lineno": 38,
                "value": {
                  "ast_class": "Name",
                  "col_offset": 40,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 72,
                  "end_lineno": 38,
                  "id": "periode_universitaire_precedente",
                  "lineno": 38
                }
              },
              "keywords": [],
              "lineno": 38
            }
          },
          {
            "ast_class": "Assign",
            "col_offset": 4,
            "end_col_offset": 24,
            "end_lineno": 41,
            "lineno": 39,
            "targets": [
              {
                "ast_class": "Name",
                "col_offset": 4,
                "ctx": {
                  "ast_class": "Store"
                },
                "end_col_offset": 42,
                "end_lineno": 39,
                "id": "aide_merite_eligibilite_deux_ans_avant",
                "lineno": 39
              }
            ],
            "value": {
              "args": [
                {
                  "ast_class": "Constant",
                  "col_offset": 54,
                  "end_col_offset": 79,
                  "end_lineno": 39,
                  "lineno": 39,
                  "value": "aide_merite_eligibilite"
                },
                {
                  "ast_class": "Name",
                  "col_offset": 8,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 41,
                  "end_lineno": 40,
                  "id": "periode_universitaire_2_ans_avant",
                  "lineno": 40
                }
              ],
              "ast_class": "Call",
              "col_offset": 45,
              "end_col_offset": 24,
              "end_lineno": 41,
              "func": {
                "ast_class": "Name",
                "col_offset": 45,
                "ctx": {
                  "ast_class": "Load"
                },
                "end_col_offset": 53,
                "end_lineno": 39,
                "id": "individu",
                "lineno": 39
              },
              "keywords": [
                {
                  "arg": "options",
                  "ast_class": "keyword",
                  "col_offset": 8,
                  "end_col_offset": 23,
                  "end_lineno": 41,
                  "lineno": 41,
                  "value": {
                    "ast_class": "List",
                    "col_offset": 18,
                    "ctx": {
                      "ast_class": "Load"
                    },
                    "elts": [
                      {
                        "ast_class": "Name",
                        "col_offset": 19,
                        "ctx": {
                          "ast_class": "Load"
                        },
                        "end_col_offset": 22,
                        "end_lineno": 41,
                        "id": "ADD",
                        "lineno": 41
                      }
                    ],
                    "end_col_offset": 23,
                    "end_lineno": 41,
                    "lineno": 41
                  }
                }
              ],
              "lineno": 39
            }
          },
          {
            "ast_class": "Assign",
            "col_offset": 4,
            "end_col_offset": 79,
            "end_lineno": 43,
            "lineno": 42,
            "targets": [
              {
                "ast_class": "Name",
                "col_offset": 4,
                "ctx": {
                  "ast_class": "Store"
                },
                "end_col_offset": 59,
                "end_lineno": 42,
                "id": "aide_merite_eligibile_mais_service_civique_annee_passee",
                "lineno": 42
              }
            ],
            "value": {
              "ast_class": "BinOp",
              "col_offset": 63,
              "end_col_offset": 78,
              "end_lineno": 43,
              "left": {
                "ast_class": "Name",
                "col_offset": 63,
                "ctx": {
                  "ast_class": "Load"
                },
                "end_col_offset": 101,
                "end_lineno": 42,
                "id": "aide_merite_eligibilite_deux_ans_avant",
                "lineno": 42
              },
              "lineno": 42,
              "op": {
                "ast_class": "Mult"
              },
              "right": {
                "ast_class": "Name",
                "col_offset": 50,
                "ctx": {
                  "ast_class": "Load"
                },
                "end_col_offset": 78,
                "end_lineno": 43,
                "id": "service_civique_annee_passee",
                "lineno": 43
              }
            }
          },
          {
            "ast_class": "Return",
            "col_offset": 4,
            "end_col_offset": 9,
            "end_lineno": 49,
            "lineno": 45,
            "value": {
              "ast_class": "BinOp",
              "col_offset": 11,
              "end_col_offset": 9,
              "end_lineno": 49,
              "left": {
                "ast_class": "BinOp",
                "col_offset": 11,
                "end_col_offset": 42,
                "end_lineno": 45,
                "left": {
                  "ast_class": "Name",
                  "col_offset": 11,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 19,
                  "end_lineno": 45,
                  "id": "etudiant",
                  "lineno": 45
                },
                "lineno": 45,
                "op": {
                  "ast_class": "Mult"
                },
                "right": {
                  "ast_class": "Name",
                  "col_offset": 22,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 42,
                  "end_lineno": 45,
                  "id": "condition_ressources",
                  "lineno": 45
                }
              },
              "lineno": 45,
              "op": {
                "ast_class": "Mult"
              },
              "right": {
                "ast_class": "BinOp",
                "col_offset": 8,
                "end_col_offset": 65,
                "end_lineno": 48,
                "left": {
                  "ast_class": "BinOp",
                  "col_offset": 8,
                  "end_col_offset": 44,
                  "end_lineno": 47,
                  "left": {
                    "ast_class": "Name",
                    "col_offset": 8,
                    "ctx": {
                      "ast_class": "Load"
                    },
                    "end_col_offset": 25,
                    "end_lineno": 46,
                    "id": "condition_mention",
                    "lineno": 46
                  },
                  "lineno": 46,
                  "op": {
                    "ast_class": "Add"
                  },
                  "right": {
                    "ast_class": "Name",
                    "col_offset": 10,
                    "ctx": {
                      "ast_class": "Load"
                    },
                    "end_col_offset": 44,
                    "end_lineno": 47,
                    "id": "aide_merite_eligibilite_an_dernier",
                    "lineno": 47
                  }
                },
                "lineno": 46,
                "op": {
                  "ast_class": "Add"
                },
                "right": {
                  "ast_class": "Name",
                  "col_offset": 10,
                  "ctx": {
                    "ast_class": "Load"
                  },
                  "end_col_offset": 65,
                  "end_lineno": 48,
                  "id": "aide_merite_eligibile_mais_service_civique_annee_passee",
                  "lineno": 48
                }
              }
            }
          }
        ],
        "col_offset": 0,
        "decorator_list": [],
        "end_col_offset": 9,
        "end_lineno": 49,
        "lineno": 1,
        "name": "formula"
      },
      "file_path": "openfisca_france/model/prestations/enseignement_superieur/aide_merite.py",
      "source_code": "def formula(individu, period):\n\n    def calcul_periode_universitaire_precedente(mois_calcul):\n        nb_mois_annee_courante = mois_calcul.date.month - mois_calcul.this_year.date.month + 1\n\n        # https://www.campusfrance.org/fr/node/2176\n        if nb_mois_annee_courante < 9:\n            annee_de_rentree_courante = mois_calcul.last_year\n        else:\n            annee_de_rentree_courante = mois_calcul.this_year\n\n        septembre_dernier = annee_de_rentree_courante.offset(-4, MONTH).start\n        return Period((MONTH, septembre_dernier, 10))\n\n    # l'individu intègre un établissement supérieur à la rentrée\n    etudiant = individu('etudiant', period)\n\n    bourse_criteres_sociaux = individu('bourse_criteres_sociaux', period)\n    allocation_annuelle_etudiant = individu('allocation_annuelle_etudiant', period)\n    condition_ressources = (bourse_criteres_sociaux + allocation_annuelle_etudiant) > 0\n\n    mention_baccalaureat = individu('mention_baccalaureat', period)\n    condition_mention = (\n        (mention_baccalaureat == TypesMention.mention_tres_bien)\n        + (mention_baccalaureat == TypesMention.mention_tres_bien_felicitations_jury)\n        )\n\n    # a déjà perçu l'aide l'année [universitaire] précédente\n    periode_universitaire_precedente = calcul_periode_universitaire_precedente(period)\n    aide_merite_eligibilite_an_dernier = individu(\n        'aide_merite_eligibilite',\n        periode_universitaire_precedente,\n        options = [ADD]\n        )\n\n    # éligible accordée en N-2, année N-1 en Service Civique\n    service_civique_annee_passee = individu('service_civique', periode_universitaire_precedente, options = [ADD])\n    periode_universitaire_2_ans_avant = periode_universitaire_precedente.offset(-12, MONTH)\n    aide_merite_eligibilite_deux_ans_avant = individu('aide_merite_eligibilite',\n        periode_universitaire_2_ans_avant,\n        options = [ADD])\n    aide_merite_eligibile_mais_service_civique_annee_passee = (aide_merite_eligibilite_deux_ans_avant\n                                                * service_civique_annee_passee)\n\n    return etudiant * condition_ressources * (\n        condition_mention\n        + aide_merite_eligibilite_an_dernier\n        + aide_merite_eligibile_mais_service_civique_annee_passee\n        )\n",
      "start_line_number": 28,
      "stop_line_number": 77,
      "variables": [
        "aide_merite_eligibilite",
        "allocation_annuelle_etudiant",
        "bourse_criteres_sociaux",
        "etudiant",
        "mention_baccalaureat",
        "service_civique"
      ]
    }
  },
  "is_period_size_independent": true,
  "json_type": "boolean",
  "label": "Éligibilité à l'aide au mérite",
  "name": "aide_merite_eligibilite",
  "reference": {
    "0001-01-01": [
      {
        "href": "https://www.etudiant.gouv.fr/fr/aide-au-merite-1291"
      },
      {
        "href": "https://www.service-public.fr/particuliers/vosdroits/F1010"
      },
      {
        "href": "https://www.legifrance.gouv.fr/codes/id/LEGISCTA000030722211/"
      }
    ]
  },
  "referring_variables": [
    "aide_merite_eligibilite",
    "aide_merite_montant"
  ],
  "set_input": "set_input_dispatch_by_period",
  "start_line_number": 5,
  "stop_line_number": 77,
  "value_type": "bool"
}
