diff --git a/compiler/dcalc/ast.ml b/compiler/dcalc/ast.ml index 572ed0d3..4ee91e7f 100644 --- a/compiler/dcalc/ast.ml +++ b/compiler/dcalc/ast.ml @@ -40,13 +40,12 @@ type enum_name = EnumName.t type typ = | TLit of typ_lit - | TTuple of typ Pos.marked list * (struct_name) option - | TEnum of typ Pos.marked list * (enum_name) + | TTuple of typ Pos.marked list * struct_name option + | TEnum of typ Pos.marked list * enum_name | TArrow of typ Pos.marked * typ Pos.marked | TArray of typ Pos.marked | TAny - type date = Runtime.date type duration = Runtime.duration @@ -94,25 +93,24 @@ type log_entry = VarDef of typ | BeginCall | EndCall | PosRecordIfTrueBool type unop = | Not | Minus of op_kind - | Log of log_entry * (Utils.Uid.MarkedString.info list) + | Log of log_entry * Utils.Uid.MarkedString.info list | Length | IntToRat | GetDay | GetMonth | GetYear - type operator = Ternop of ternop | Binop of binop | Unop of unop type expr = - | EVar of (expr Bindlib.var) Pos.marked - | ETuple of expr Pos.marked list * (struct_name) option - | ETupleAccess of expr Pos.marked * int * (struct_name) option * typ Pos.marked list - | EInj of expr Pos.marked * int * (enum_name) * typ Pos.marked list - | EMatch of expr Pos.marked * expr Pos.marked list * (enum_name) + | EVar of expr Bindlib.var Pos.marked + | ETuple of expr Pos.marked list * struct_name option + | ETupleAccess of expr Pos.marked * int * struct_name option * typ Pos.marked list + | EInj of expr Pos.marked * int * enum_name * typ Pos.marked list + | EMatch of expr Pos.marked * expr Pos.marked list * enum_name | EArray of expr Pos.marked list - | ELit of (lit) - | EAbs of ((expr, expr Pos.marked) Bindlib.mbinder) Pos.marked * typ Pos.marked list + | ELit of lit + | EAbs of (expr, expr Pos.marked) Bindlib.mbinder Pos.marked * typ Pos.marked list | EApp of expr Pos.marked * expr Pos.marked list | EAssert of expr Pos.marked | EOp of operator @@ -120,7 +118,6 @@ type expr = | EIfThenElse of expr Pos.marked * expr Pos.marked * expr Pos.marked | ErrorOnEmpty of expr Pos.marked - type struct_ctx = (StructFieldName.t * typ Pos.marked) list StructMap.t type enum_ctx = (EnumConstructor.t * typ Pos.marked) list EnumMap.t diff --git a/compiler/dcalc/ast.mli b/compiler/dcalc/ast.mli index f18731b7..85dc9eb4 100644 --- a/compiler/dcalc/ast.mli +++ b/compiler/dcalc/ast.mli @@ -42,7 +42,6 @@ type typ = | TArray of typ Pos.marked | TAny - type date = Runtime.date type duration = Runtime.duration @@ -126,7 +125,6 @@ type expr = | EIfThenElse of expr Pos.marked * expr Pos.marked * expr Pos.marked | ErrorOnEmpty of expr Pos.marked - type struct_ctx = (StructFieldName.t * typ Pos.marked) list StructMap.t type enum_ctx = (EnumConstructor.t * typ Pos.marked) list EnumMap.t diff --git a/compiler/lcalc/ast.ml b/compiler/lcalc/ast.ml index aff6e43e..cd14fac4 100644 --- a/compiler/lcalc/ast.ml +++ b/compiler/lcalc/ast.ml @@ -38,8 +38,7 @@ type expr = (** The [MarkedString.info] is the former enum case name *) | EArray of expr Pos.marked list | ELit of lit - | EAbs of - (expr, expr Pos.marked) Bindlib.mbinder Pos.marked * D.typ Pos.marked list + | EAbs of (expr, expr Pos.marked) Bindlib.mbinder Pos.marked * D.typ Pos.marked list | EApp of expr Pos.marked * expr Pos.marked list | EAssert of expr Pos.marked | EOp of D.operator @@ -47,7 +46,6 @@ type expr = | ERaise of except | ECatch of expr Pos.marked * except * expr Pos.marked - module Var = struct type t = expr Bindlib.var @@ -110,8 +108,9 @@ let make_some' (e : expr Pos.marked) : expr = EInj (e, 1, option_enum, []) (** [make_matchopt_with_abs_arms arg e_none e_some] build an expression [match arg with |None -> e_none | Some -> e_some] and requires e_some and e_none to be in the form [EAbs ...].*) -let make_matchopt_with_abs_arms (arg : expr Pos.marked Bindlib.box) (e_none : expr Pos.marked Bindlib.box) - (e_some : expr Pos.marked Bindlib.box) : expr Pos.marked Bindlib.box = +let make_matchopt_with_abs_arms (arg : expr Pos.marked Bindlib.box) + (e_none : expr Pos.marked Bindlib.box) (e_some : expr Pos.marked Bindlib.box) : + expr Pos.marked Bindlib.box = let pos = Pos.get_position @@ Bindlib.unbox arg in let mark : 'a -> 'a Pos.marked = Pos.mark pos in diff --git a/compiler/lcalc/ast.mli b/compiler/lcalc/ast.mli index 21df1cba..2d484a3d 100644 --- a/compiler/lcalc/ast.mli +++ b/compiler/lcalc/ast.mli @@ -45,8 +45,7 @@ type expr = (** The [MarkedString.info] is the former enum case name *) | EArray of expr Pos.marked list | ELit of lit - | EAbs of - (expr, expr Pos.marked) Bindlib.mbinder Pos.marked * Dcalc.Ast.typ Pos.marked list + | EAbs of (expr, expr Pos.marked) Bindlib.mbinder Pos.marked * Dcalc.Ast.typ Pos.marked list | EApp of expr Pos.marked * expr Pos.marked list | EAssert of expr Pos.marked | EOp of Dcalc.Ast.operator @@ -122,8 +121,8 @@ val make_matchopt : (** [e' = make_matchopt'' pos v e e_none e_some] Builds the term corresponding to [match e with | None -> fun () -> e_none |Some -> fun v -> e_some]. *) - val handle_default : Var.t + val handle_default_opt : Var.t type binder = (expr, expr Pos.marked) Bindlib.binder diff --git a/compiler/lcalc/compile_without_exceptions.ml b/compiler/lcalc/compile_without_exceptions.ml index 38c6b676..e11c7492 100644 --- a/compiler/lcalc/compile_without_exceptions.ml +++ b/compiler/lcalc/compile_without_exceptions.ml @@ -27,7 +27,8 @@ type cuts = D.expr Pos.marked A.VarMap.t type info = { expr : A.expr Pos.marked Bindlib.box; var : A.expr Bindlib.var; is_pure : bool } (** information about the Dcalc variable : what is the corresponding LCalc variable; an expression - build correctly using Bindlib, and a boolean `is_pure` indicating whenever the variable can be an EmptyError and hence should be matched (false) or if it never can be EmptyError (true). *) + build correctly using Bindlib, and a boolean `is_pure` indicating whenever the variable can be + an EmptyError and hence should be matched (false) or if it never can be EmptyError (true). *) type ctx = info D.VarMap.t (** information context about variables in the current scope *) @@ -45,10 +46,10 @@ let pp_ctx (fmt : Format.formatter) (ctx : ctx) = Format.fprintf fmt "@[<2>[%a]@]" pp_bindings (D.VarMap.bindings ctx) (** [find ~info n ctx] is a warpper to ocaml's Map.find that handle errors in a slightly better way. *) -let find ?(info: string = "none") (n: D.Var.t) (ctx: ctx) : info = +let find ?(info : string = "none") (n : D.Var.t) (ctx : ctx) : info = let _ = - Format.asprintf "Searching for variable %a inside context %a" - Dcalc.Print.format_var n pp_ctx ctx + Format.asprintf "Searching for variable %a inside context %a" Dcalc.Print.format_var n pp_ctx + ctx |> Cli.debug_print in try D.VarMap.find n ctx @@ -60,13 +61,12 @@ let find ?(info: string = "none") (n: D.Var.t) (ctx: ctx) : info = Dcalc.Print.format_var n info) Pos.no_pos -let add_var (pos: Pos.t) (var: D.Var.t) (is_pure: bool) (ctx: ctx) : ctx = +let add_var (pos : Pos.t) (var : D.Var.t) (is_pure : bool) (ctx : ctx) : ctx = let new_var = A.Var.make (Bindlib.name_of var, pos) in let expr = A.make_var (new_var, pos) in - Cli.debug_print @@ Format.asprintf "D.%a |-> A.%a" - Dcalc.Print.format_var var - Print.format_var new_var; + Cli.debug_print + @@ Format.asprintf "D.%a |-> A.%a" Dcalc.Print.format_var var Print.format_var new_var; D.VarMap.update var (fun _ -> Some { expr; var = new_var; is_pure }) ctx @@ -104,15 +104,18 @@ let rec translate_and_cut (ctx : ctx) (e : D.expr Pos.marked) : A.expr Pos.marke = let pos = Pos.get_position e in match Pos.unmark e with - (* empty-producing/using terms. We cut those. (D.EVar in some cases, EApp(D.EVar _, [ELit LUnit]), EDefault _, ELit LEmptyDefault) I'm unsure about assert. *) + (* empty-producing/using terms. We cut those. (D.EVar in some cases, EApp(D.EVar _, [ELit LUnit]), + EDefault _, ELit LEmptyDefault) I'm unsure about assert. *) | D.EVar v -> - (* todo: for now, every unpure (such that [is_pure] is [false] in the current context) is thunked, hence matched in the next case. This assumption can change in the future, and this case is here for this reason. *) + (* todo: for now, every unpure (such that [is_pure] is [false] in the current context) is + thunked, hence matched in the next case. This assumption can change in the future, and this + case is here for this reason. *) let v, pos_v = v in if not (find ~info:"search for a variable" v ctx).is_pure then begin let v' = A.Var.make (Bindlib.name_of v, pos_v) in Cli.debug_print - @@ Format.asprintf "Found an unpure variable %a, created a variable %a to replace it" Dcalc.Print.format_var - v Print.format_var v'; + @@ Format.asprintf "Found an unpure variable %a, created a variable %a to replace it" + Dcalc.Print.format_var v Print.format_var v'; (A.make_var (v', pos), A.VarMap.singleton v' e) end else ((find ~info:"should never happend" v ctx).expr, A.VarMap.empty) @@ -120,8 +123,8 @@ let rec translate_and_cut (ctx : ctx) (e : D.expr Pos.marked) : A.expr Pos.marke if not (find ~info:"search for a variable" v ctx).is_pure then begin let v' = A.Var.make (Bindlib.name_of v, pos_v) in Cli.debug_print - @@ Format.asprintf "Found an unpure variable %a, created a variable %a to replace it" Dcalc.Print.format_var - v Print.format_var v'; + @@ Format.asprintf "Found an unpure variable %a, created a variable %a to replace it" + Dcalc.Print.format_var v Print.format_var v'; (A.make_var (v', pos), A.VarMap.singleton v' (D.EVar (v, pos_v), p)) end else @@ -134,16 +137,14 @@ let rec translate_and_cut (ctx : ctx) (e : D.expr Pos.marked) : A.expr Pos.marke let v' = A.Var.make ("empty_litteral", pos) in (A.make_var (v', pos), A.VarMap.singleton v' e) | D.EAssert _ -> - (* as discuted, if the value in an assertion is empty, an error should the raised. This beavior is different from the ICFP paper. *) + (* as discuted, if the value in an assertion is empty, an error should the raised. This + beavior is different from the ICFP paper. *) let v' = A.Var.make ("assertion_value", pos) in (A.make_var (v', pos), A.VarMap.singleton v' e) - (* This one is a very special case. It transform an unpure expression environement to a pure expression. *) + (* This one is a very special case. It transform an unpure expression environement to a pure + expression. *) | ErrorOnEmpty arg -> - (* [ - match arg with - | None -> raise NoValueProvided - | Some v -> {{ v }} - ] *) + (* [ match arg with | None -> raise NoValueProvided | Some v -> {{ v }} ] *) let silent_var = A.Var.make ("_", pos) in let x = A.Var.make ("non_empty_argument", pos) in @@ -166,27 +167,26 @@ let rec translate_and_cut (ctx : ctx) (e : D.expr Pos.marked) : A.expr Pos.marke Bindlib.box_apply3 (fun e1' e2' e3' -> (A.EIfThenElse (e1', e2', e3'), pos)) e1' e2' e3' in - (*(* equivalent code : *) - let e' = - let+ e1' = e1' and+ e2' = e2' and+ e3' = e3' in - (A.EIfThenElse (e1', e2', e3'), pos) - in - *) + (*(* equivalent code : *) let e' = let+ e1' = e1' and+ e2' = e2' and+ e3' = e3' in + (A.EIfThenElse (e1', e2', e3'), pos) in *) (e', disjoint_union_maps pos [ c1; c2; c3 ]) | D.EAbs ((binder, pos_binder), ts) -> let vars, body = Bindlib.unmbind binder in let ctx, lc_vars = ArrayLabels.fold_right vars ~init:(ctx, []) ~f:(fun var (ctx, lc_vars) -> - (* we suppose the invariant that when applying a function, its arguments cannot be of the type "option". + (* we suppose the invariant that when applying a function, its arguments cannot be of + the type "option". - The code should behave correctly in the without this assumption if we put here an is_pure=false, but the types are more compilcated. (unimplemented for now) *) + The code should behave correctly in the without this assumption if we put here an + is_pure=false, but the types are more compilcated. (unimplemented for now) *) let ctx = add_var pos var true ctx in let lc_var = (find var ctx).var in (ctx, lc_var :: lc_vars)) in let lc_vars = Array.of_list lc_vars in - (* here we take the guess that if we cannot build the closure because one of the variable is empty, then we cannot build the function. *) + (* here we take the guess that if we cannot build the closure because one of the variable is + empty, then we cannot build the function. *) let new_body, cuts = translate_and_cut ctx body in let new_binder = Bindlib.bind_mvar lc_vars new_body in @@ -244,7 +244,9 @@ and translate_expr ?(append_esome = true) (ctx : ctx) (e : D.expr Pos.marked) : (* build the cuts *) Cli.debug_print - @@ Format.asprintf "cut for the expression: [%a]" (Format.pp_print_list Print.format_var) (List.map fst cs); + @@ Format.asprintf "cut for the expression: [%a]" + (Format.pp_print_list Print.format_var) + (List.map fst cs); ListLabels.fold_left cs ~init:(if append_esome then A.make_some e' else e') @@ -253,7 +255,8 @@ and translate_expr ?(append_esome = true) (ctx : ctx) (e : D.expr Pos.marked) : let c' : A.expr Pos.marked Bindlib.box = match c with - (* Here we have to handle only the cases appearing in cuts, as defined the [translate_and_cut] function. *) + (* Here we have to handle only the cases appearing in cuts, as defined the + [translate_and_cut] function. *) | D.EVar v -> (find ~info:"should never happend" (Pos.unmark v) ctx).expr | D.EDefault (excep, just, cons) -> let excep' = List.map (translate_expr ctx) excep in @@ -272,11 +275,7 @@ and translate_expr ?(append_esome = true) (ctx : ctx) (e : D.expr Pos.marked) : | D.EAssert arg -> let arg' = translate_expr ctx arg in - (* [ - match arg with - | None -> raise NoValueProvided - | Some v -> assert {{ v }} - ] *) + (* [ match arg with | None -> raise NoValueProvided | Some v -> assert {{ v }} ] *) let silent_var = A.Var.make ("_", pos_c) in let x = A.Var.make ("assertion_argument", pos_c) in @@ -292,12 +291,7 @@ and translate_expr ?(append_esome = true) (ctx : ctx) (e : D.expr Pos.marked) : "Internal Error: An term was found in a position where it should not be" pos_c in - (* [ - match {{ c' }} with - | None -> None - | Some {{ v }} -> {{ acc }} - end - ] *) + (* [ match {{ c' }} with | None -> None | Some {{ v }} -> {{ acc }} end ] *) Cli.debug_print @@ Format.asprintf "build matchopt using %a" Print.format_var v; A.make_matchopt pos_c v (D.TAny, pos_c) c' (A.make_none pos_c) acc) @@ -337,14 +331,16 @@ let translate_and_bind_lets (acc : scope_lets Bindlib.box) (scope_let : D.scope_ let pos = snd scope_let.D.scope_let_var in Cli.debug_print - @@ Format.asprintf "binding let %a. Variable occurs = %b" Dcalc.Print.format_var (fst scope_let.D.scope_let_var) + @@ Format.asprintf "binding let %a. Variable occurs = %b" Dcalc.Print.format_var + (fst scope_let.D.scope_let_var) (Bindlib.occur (fst scope_let.D.scope_let_var) acc); let binder = Bindlib.bind_var (fst scope_let.D.scope_let_var) acc in Bindlib.box_apply2 (fun expr binder -> Cli.debug_print - @@ Format.asprintf "free variables in expression: %a" (Format.pp_print_list Dcalc.Print.format_var) + @@ Format.asprintf "free variables in expression: %a" + (Format.pp_print_list Dcalc.Print.format_var) (D.free_vars expr); ScopeLet { @@ -435,7 +431,8 @@ let translate_program (prgm : D.program) : A.program = let scope_body = Bindlib.unbox (translate_and_bind scope_body) in Cli.debug_print - @@ Format.asprintf "global free variable : %a" (Format.pp_print_list Dcalc.Print.format_var) + @@ Format.asprintf "global free variable : %a" + (Format.pp_print_list Dcalc.Print.format_var) (free_vars_scope_body scope_body); let new_ctx = add_var Pos.no_pos n true ctx in diff --git a/compiler/lcalc/compile_without_exceptions.mli b/compiler/lcalc/compile_without_exceptions.mli index 664c6f92..61c6b725 100644 --- a/compiler/lcalc/compile_without_exceptions.mli +++ b/compiler/lcalc/compile_without_exceptions.mli @@ -1,6 +1,6 @@ (* This file is part of the Catala compiler, a specification language for tax and social benefits computation rules. Copyright (C) 2020 Inria, contributor: Alain Delaët-Tixeuil - + Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at diff --git a/compiler/lcalc/optimizations.ml b/compiler/lcalc/optimizations.ml index b8a04266..b5aae1e3 100644 --- a/compiler/lcalc/optimizations.ml +++ b/compiler/lcalc/optimizations.ml @@ -18,10 +18,8 @@ let ( let+ ) x f = Bindlib.box_apply f x let ( and+ ) x y = Bindlib.box_pair x y -let visitor_map - (t : 'a -> expr Pos.marked -> expr Pos.marked Bindlib.box) - (ctx : 'a) - (e : expr Pos.marked) : expr Pos.marked Bindlib.box = +let visitor_map (t : 'a -> expr Pos.marked -> expr Pos.marked Bindlib.box) (ctx : 'a) + (e : expr Pos.marked) : expr Pos.marked Bindlib.box = (* calls [t ctx] on every direct childs of [e], then rebuild an abstract syntax tree modified. Used in other transformations. *) let default_mark e' = Pos.same_pos_as e' e in @@ -67,43 +65,39 @@ let rec iota_expr (_ : unit) (e : expr Pos.marked) : expr Pos.marked Bindlib.box let default_mark e' = Pos.mark (Pos.get_position e) e' in match Pos.unmark e with | EMatch ((EInj (e1, i, n', _ts), _), cases, n) when Dcalc.Ast.EnumName.compare n n' = 0 -> - let+ e1 = visitor_map iota_expr () e1 and+ case = visitor_map iota_expr () (List.nth cases i) in + let+ e1 = visitor_map iota_expr () e1 + and+ case = visitor_map iota_expr () (List.nth cases i) in default_mark @@ EApp (case, [ e1 ]) - - | EMatch (e', cases, n) when begin - cases - |> List.mapi (fun i (case, _pos) -> - match case with - | EInj (_ei, i', n', _ts') -> - i = i' && (* n = n' *) (Dcalc.Ast.EnumName.compare n n' = 0) - | _ -> false - ) - |> List.for_all Fun.id - end -> - visitor_map iota_expr () e' - + | EMatch (e', cases, n) + when begin + cases + |> List.mapi (fun i (case, _pos) -> + match case with + | EInj (_ei, i', n', _ts') -> + i = i' && (* n = n' *) Dcalc.Ast.EnumName.compare n n' = 0 + | _ -> false) + |> List.for_all Fun.id + end -> + visitor_map iota_expr () e' | _ -> visitor_map iota_expr () e - -let rec beta_expr (_: unit) (e: expr Pos.marked): expr Pos.marked Bindlib.box = +let rec beta_expr (_ : unit) (e : expr Pos.marked) : expr Pos.marked Bindlib.box = let default_mark e' = Pos.same_pos_as e' e in match Pos.unmark e with - | EApp (e1, args) -> - let+ e1 = visitor_map beta_expr () e1 - and+ args = List.map (visitor_map beta_expr ()) args |> Bindlib.box_list in - begin match Pos.unmark e1 with - | EAbs ((binder, _pos_binder), _ts) -> - let _ : (_, _) Bindlib.mbinder = binder in - Bindlib.msubst binder (List.map fst args |> Array.of_list) - | _ -> - default_mark @@ EApp (e1, args) - end + | EApp (e1, args) -> ( + let+ e1 = visitor_map beta_expr () e1 + and+ args = List.map (visitor_map beta_expr ()) args |> Bindlib.box_list in + match Pos.unmark e1 with + | EAbs ((binder, _pos_binder), _ts) -> + let (_ : (_, _) Bindlib.mbinder) = binder in + Bindlib.msubst binder (List.map fst args |> Array.of_list) + | _ -> default_mark @@ EApp (e1, args)) | _ -> visitor_map beta_expr () e let iota_optimizations (p : program) : program = { p with scopes = List.map (fun (var, e) -> (var, Bindlib.unbox (iota_expr () e))) p.scopes } -let _beta_optimizations (p: program): program = +let _beta_optimizations (p : program) : program = { p with scopes = List.map (fun (var, e) -> (var, Bindlib.unbox (beta_expr () e))) p.scopes } let rec peephole_expr (_ : unit) (e : expr Pos.marked) : expr Pos.marked Bindlib.box = @@ -123,7 +117,4 @@ let rec peephole_expr (_ : unit) (e : expr Pos.marked) : expr Pos.marked Bindlib let peephole_optimizations (p : program) : program = { p with scopes = List.map (fun (var, e) -> (var, Bindlib.unbox (peephole_expr () e))) p.scopes } -let optimize_program (p : program) : program = - p - |> iota_optimizations - |> peephole_optimizations +let optimize_program (p : program) : program = p |> iota_optimizations |> peephole_optimizations diff --git a/compiler/lcalc/to_ocaml.ml b/compiler/lcalc/to_ocaml.ml index 6ec26082..35379492 100644 --- a/compiler/lcalc/to_ocaml.ml +++ b/compiler/lcalc/to_ocaml.ml @@ -22,7 +22,8 @@ let find_struct s ctx = with Not_found -> let s_name, pos = D.StructName.get_info s in Errors.raise_spanned_error - (Format.asprintf "Internal Error: Structure %s was not found in the current environment." s_name) + (Format.asprintf "Internal Error: Structure %s was not found in the current environment." + s_name) pos let find_enum en ctx = diff --git a/compiler/runtime.ml b/compiler/runtime.ml index 1409f672..2537b6b4 100644 --- a/compiler/runtime.ml +++ b/compiler/runtime.ml @@ -215,7 +215,8 @@ let handle_default : 'a. (unit -> 'a) array -> (unit -> bool) -> (unit -> 'a) -> in match except with Some x -> x | None -> if just () then cons () else raise EmptyError -let handle_default_opt (exceptions: 'a eoption array) (just: bool eoption) (cons: 'a eoption): 'a eoption = +let handle_default_opt (exceptions : 'a eoption array) (just : bool eoption) (cons : 'a eoption) : + 'a eoption = let except = Array.fold_left (fun acc except -> diff --git a/compiler/utils/dune b/compiler/utils/dune index 10ebee56..250d4142 100644 --- a/compiler/utils/dune +++ b/compiler/utils/dune @@ -2,7 +2,8 @@ (name utils) (public_name catala.utils) (libraries cmdliner ANSITerminal re) - (preprocess (pps ppx_deriving.show))) + (preprocess + (pps ppx_deriving.show))) (documentation (package catala) diff --git a/compiler/utils/pos.ml b/compiler/utils/pos.ml index d7d96823..e1e954d5 100644 --- a/compiler/utils/pos.ml +++ b/compiler/utils/pos.ml @@ -12,7 +12,7 @@ or implied. See the License for the specific language governing permissions and limitations under the License. *) -type t = { code_pos : Lexing.position * Lexing.position [@opaque]; law_pos : string list } +type t = { code_pos : Lexing.position * Lexing.position; [@opaque] law_pos : string list } [@@deriving show] let from_lpos (p : Lexing.position * Lexing.position) : t = { code_pos = p; law_pos = [] } @@ -168,8 +168,7 @@ let retrieve_loc_text (pos : t) : string = else Cli.print_with_style blue_style "%*s+-+ " (spaces + (2 * i) - 1) "")) with Sys_error _ -> "Location:" ^ to_string pos -type 'a marked = 'a * t -[@@deriving show] +type 'a marked = 'a * t [@@deriving show] let no_pos : t = let zero_pos = diff --git a/compiler/utils/pos.mli b/compiler/utils/pos.mli index 6864c788..198d1587 100644 --- a/compiler/utils/pos.mli +++ b/compiler/utils/pos.mli @@ -14,8 +14,7 @@ (** Source code position *) -type t -[@@deriving show] +type t [@@deriving show] (** A position in the source code is a file, as well as begin and end location of the form col:line *) (** Custom visitor for the [Pos.marked] type *) @@ -59,8 +58,7 @@ val retrieve_loc_text : t -> string (**{2 AST markings}*) -type 'a marked = 'a * t -[@@deriving show] +type 'a marked = 'a * t [@@deriving show] (** Everything related to the source code should keep its position stored, to improve error messages *) val no_pos : t diff --git a/french_law/js/french_law.js b/french_law/js/french_law.js index ec30f44d..a4e21be0 100644 --- a/french_law/js/french_law.js +++ b/french_law/js/french_law.js @@ -1,25 +1,30 @@ -// Generated by js_of_ocaml 3.11.0 -(function(B){"use strict";var -jq=214,jp=" is too large for shifting.",ll="Invalid_argument",jo="0.08",es="Map.bal",jn="@[",ky=640,x="Code de la s\xc3\xa9curit\xc3\xa9 sociale",mg="Article L521-1",kx=123,lk="577500",eF=152,lj="%ni",mf=43200.,gf="ml_z_overflow",me="EMFILE",_=86400.,aI=2020,kw=139,a1=0xff,li="ENOMEM",gp=-12,lh=-45,eE="Titre 5 : Dispositions particuli\xc3\xa8res \xc3\xa0 la Guadeloupe, \xc3\xa0 la Guyane, \xc3\xa0 la Martinique, \xc3\xa0 La R\xc3\xa9union, \xc3\xa0 Saint-Barth\xc3\xa9lemy et \xc3\xa0 Saint-Martin",md="559500",b5="Article 1",gE=122,jm="582700",mc=992015837,lg="EPROTONOSUPPORT",k="0",lf="ENETRESET",mb="EACCES",eK="date_courante",le="EINVAL",kv="0.5",ld="EDOM",ck=128,jl="Sys_blocked_io",ku="fd ",lc="EFBIG",jk=548,ge="Chapitre 2 : Champ d'application",jj="0.0588",O=248,ji="EXDEV",eT=">",bu=153,ma=1027,l$="EINPROGRESS",jh="montant_vers\xc3\xa9",kt="enfants_\xc3\xa0_charge",lb="562800",b4="Chapitre 5 : Prestations familiales et prestations assimil\xc3\xa9es",jg=246,la=555,je=598,jf="%u",k$="resetLog",l_=358,cS=2011,e="AllocationsFamiliales",k_=3268,jc=298,jd="EHOSTUNREACH",ks=633,jb="./securite_sociale_R.catala_fr",F="Livre 5 : Prestations familiales et prestations assimil\xc3\xa9es",kr=108,az="2",bd=127,dC=1024,ja="@{",Y="1",eJ=133,eS="e",gd="Montant de la base mensuelle des allocations familiales",i$=" : flags Open_rdonly and Open_wronly are not compatible",kq="ressources_m\xc3\xa9nage",i_="D\xc3\xa9cret n\xc2\xb0 2019-1387 du 18 d\xc3\xa9cembre 2019 portant rel\xc3\xa8vement du salaire minimum de croissance",aC="-",l9=505,b0=803994948,kp="EAGAIN",go=": Not a directory",i8=216,i9=" : file already exists",l8="smic",ko="Article D521-3",k9=184,bM=0xffffff,cK=2012,kn="EDESTADDRREQ",k8="EISCONN",l5=-43,l6=612,X="./securite_sociale_D.catala_fr",l7="EROFS",eD=86400,km="Out_of_memory",l4="inf",gn="index out of bounds",l3="EPIPE",i7="ENOEXEC",eC="_bigarr02",l2="Circulaire interminist\xc3\xa9rielle N\xc2\xb0 DSS/SD2B/2017/352 du 22 d\xc3\xa9cembre 2017 relative \xc3\xa0 la revalorisation au 1er janvier 2018 des plafonds de ressources d\xe2\x80\x99attribution de certaines prestations familiales servies en m\xc3\xa9tropole, en Guadeloupe, en Guyane, en Martinique, \xc3\xa0 la R\xc3\xa9union, \xc3\xa0 Saint-Barth\xc3\xa9lemy, \xc3\xa0 Saint-Martin et \xc3\xa0 Mayotte",kl=0xffffffff,gD=111,k6=2147483647,k7=208,l1=180,i6="Martinique",k5=", characters ",i5="EPFNOSUPPORT",bp=0xffff,kk="EBUSY",eB=417088404,kj="ENETUNREACH",l0="ENOLCK",i3="ENOTTY",i4=12520,gm=400,k4="ESHUTDOWN",lZ=619,i0=-46,i1="(Program not linked with -g, cannot print stack backtrace)\n",i2="ENXIO",aO=3600,ki=143,H="Chapitre 1er : Allocations familiales",gs="AllocationFamilialesAvril2008",lY="ERANGE",cE=2016,k3="retrieveLog",bo="\xc3\xa2ge_minimum_alin\xc3\xa9a_1_l521_3",lX="infinity",a8=1000,kh=142,o="",iZ="^",bZ=3600.,iY=86400000,kg=264,al="Partie l\xc3\xa9gislative",cD=0x3f,dz=124,a0="./epilogue.catala_fr",gl="Article L512-3",v="./decrets_divers.catala_fr",I="Titre 2 : Prestations g\xc3\xa9n\xc3\xa9rales d'entretien",gC=112,iX="Match_failure",k2=140,b1="Montant des plafonds de ressources",P="Annexe",lW="enfants",eA=135,lV="personne_charge_effective_permanente_est_parent",bm=2021,kf="enfant_le_plus_\xc3\xa2g\xc3\xa9",ez=252,ke="EPROTOTYPE",bn=".",dr="montant_initial_majoration",bI="+",kd="EINTR",iW="ESRCH",kc=0xf0,a_="12.",kb="Guadeloupe",lU="ESOCKTNOSUPPORT",gB=110,ac="PrestationsFamiliales",gk=116,iV="%li",j$=576,ka="EALREADY",cO=2015,ey=365,bL="prise_en_compte",dq="Smic",gA=-32,j_="avait_enfant_\xc3\xa0_charge_avant_1er_janvier_2012",bt=1023,j8=-1080,j9="EAFNOSUPPORT",am="./securite_sociale_L.catala_fr",q="./prologue.catala_fr",er=2299161,j7=969837588,gr="nan",lT=605,j6="ENFILE",iU=0xe0,j5=-1023,lS=117,k0="ECHILD",k1=0xdfff,dH="compl\xc3\xa9ment_d\xc3\xa9gressif",gj="Article L755-12",kZ="ETOOMANYREFS",br="/",lR="Assert_failure",eq=2400000.5,iT="ENAMETOOLONG",lQ="568400",j4=541,eI="ENOTDIR",lP="0.32",gq=1073741823,kY="ETIMEDOUT",lO=308,eR="r\xc3\xa9sidence",iS="EMSGSIZE",ep=250,dy=1582,kW=154,kX=513,lN="ENOTCONN",iQ=115,iR="ECONNREFUSED",kV="src/time_Zone.ml",lM=1e14,j3="Arr\xc3\xaat\xc3\xa9 du 14 d\xc3\xa9cembre 2020 relatif au montant des plafonds de ressources de certaines prestations familiales et aux tranches du bar\xc3\xa8me applicable au recouvrement des indus et \xc3\xa0 la saisie des prestations",ex='"',kT="Guyane",kU="EWOULDBLOCK",iP="allocations_familiales",gc=1255,gi="<",lL="Fatal error: exception %s\n",j1=196,j2=0x800,cN=255,j0="EPERM",aN=2019,gb="jsError",bl=0x8000,kS="Partie r\xc3\xa9glementaire - D\xc3\xa9crets en Conseil d'Etat",Z="droit_ouvert_majoration",dG=146097,cR=256,jZ=0.012,lK="Article L521-3",kR="End_of_file",jX="M\xc3\xa9tropole",jY=156,kQ="Failure",lI=367,lJ="ENOSPC",iO=129,iN="\n",jW=204,dx="conditions_hors_\xc3\xa2ge",kP=218,eQ="ENOENT",jV=534,L="Dispositions sp\xc3\xa9ciales relatives \xc3\xa0 Mayotte",jU=562,jT="([^/]+)",lH=315,kO="ENETDOWN",eP="EnfantLePlus\xc3\x82g\xc3\xa9",gh=0xf,lG="EOVERFLOW",eo=-48,kN=0xdc00,dw="montant_initial_m\xc3\xa9tropole_majoration",gz="ENOTEMPTY",iM="EBADF",aq="camlinternalFormat.ml",jS="Division_by_zero",gg=520,iL="EMLINK",kM="Sys_error",lE=647,lF="x",lD=335,cC=2017,cM="Article D521-2",eO="Article D755-5",ga="Titre 1 : Champ d'application - G\xc3\xa9n\xc3\xa9ralit\xc3\xa9s",bK=60.,f$="EEXIST",cJ=2014,gy="%d",kL="Printexc.handle_uncaught_exception",iK=32082,b3=1900,iJ=121,jR="EADDRNOTAVAIL",lC="buffer.ml",jQ=119,dv="montant_avec_garde_altern\xc3\xa9e_majoration",jP="version_avril_2008",bY=120,ew=127686388,cj=103,lB="ENOBUFS",f_="16",cH=2013,cI=102,f9=512,lA=527,cQ=113,iI=0x7ff0,t="D\xc3\xa9crets divers",ev=101,cL=132,iH="0x",iG="D\xc3\xa9cret n\xc2\xb0 2020-1598 du 16 d\xc3\xa9cembre 2020 portant rel\xc3\xa8vement du salaire minimum de croissance",ci=1e7,p="Prologue",du=254,aW=100,jN="ECONNABORTED",jO="EFAULT",dB="Article 7",kK="ENODEV",jM=" : flags Open_text and Open_binary are not compatible",kJ="%Li",jK="EIO",jL="EDEADLK",eN="3",W="Partie r\xc3\xa9glementaire - D\xc3\xa9crets simples",iF=105,ly="169.",lz=230,iE="Instruction interminist\xc3\xa9rielle n\xc2\xb0 DSS/SD2B/2018/279 du 17 d\xc3\xa9cembre 2018 relative \xc3\xa0 la revalorisation au 1er janvier 2019 des plafonds de ressources d\xe2\x80\x99attribution de certaines prestations familiales servies en m\xc3\xa9tropole, en Guadeloupe, en Guyane, en Martinique, \xc3\xa0 la R\xc3\xa9union, \xc3\xa0 Saint-Barth\xc3\xa9lemy, \xc3\xa0 Saint-Martin et \xc3\xa0 Mayotte",kI=591,b2=0.5,jJ=584,aV="Article D521-1",jI="Instruction interministerielle no DSS/SD2B/2019/261 du 18 d\xc3\xa9cembre 2019 relative \xc3\xa0 la revalorisation au 1er janvier 2020 des plafonds de ressources d\xe2\x80\x99attribution de certaines prestations familiales servies en m\xc3\xa9tropole, en Guadeloupe, en Guyane, en Martinique, \xc3\xa0 La R\xc3\xa9union, \xc3\xa0 Saint-Barth\xc3\xa9lemy, \xc3\xa0 Saint-Martin et \xc3\xa0 Mayotte",jH=188,bN="Livre 7 : R\xc3\xa9gimes divers - Dispositions diverses",ay="input",iD="str.ml",jG=160,iC="personne_charge_effective_permanente_remplit_titre_I",lx="prestations_familiales",dF="est_enfant_le_plus_\xc3\xa2g\xc3\xa9",jF="0.0463",iB="D\xc3\xa9cret n\xc2\xb0 2018-1173 du 19 d\xc3\xa9cembre 2018 portant rel\xc3\xa8vement du salaire minimum de croissance",eH="_z",lw="computeAllocationsFamiliales",dE="Unix.Unix_error",jD="0.55",jE="EHOSTDOWN",jC=109,dt="droit_ouvert",f8="mkdir",jB="ENOTSOCK",kH=136,lv="Stack_overflow",en=": No such file or directory",a9="Interface du programme",lu="/static/",dp="Titre 5 : D\xc3\xa9partements d'outre-mer",jA=-97,lt=253,ls="Not_found",ds=1461,aB="InterfaceAllocationsFamiliales",f7=151,K="D\xc3\xa9cret n\xc2\xb02002-423 du 29 mars 2002 relatif aux prestations familiales \xc3\xa0 Mayotte",cG="1.",kG=32044,eG=", ",iA=626,bq=2018,lr="Mayotte",jz="EOPNOTSUPP",iz="ENOPROTOOPT",gx=243,jy=2440588,gw="rmdir",kF="src/date.ml",lq=32752,jx="ECONNRESET",lp="ELOOP",eu=141,jw="ESPIPE",lo=280,aZ="\xc3\x89pilogue",kE="EADDRINUSE",ln=1026,bs="Article L521-2",kD="ENOSYS",eM="Invalid integer: ",et=2440587.5,jv="E2BIG",kC=359,ix="Pervasives.do_at_exit",iy="utf8",ju=155,kB=258,bJ=" ",gv="Fatal error: exception ",a$=0x80,kA="Undefined_recursive_module",aA="output",jt=569,f6=376,js=215,eL="src/calendar_builder.ml",iw="EISDIR",lm="_",cF="Montant du salaire minimum de croissance",gu="compare: functional value",f5="0.16",dA="droit_ouvert_forfaitaire",dD="0.",em=134,kz="%i",gt=114,cP=529348384,iv=176,jr=426;function -GC(d,b,e,c,f){if(c<=b)for(var +// Generated by js_of_ocaml 4.0.0 +(function(a){typeof +globalThis!=="object"&&(this?b():(a.defineProperty(a.prototype,"_T_",{configurable:true,get:b}),_T_));function +b(){var +b=this||self;b.globalThis=b;delete +a.prototype._T_}}(Object));(function(y){"use strict";var +IC=y,IF=typeof +module==="object"&&module.exports||y,jI=214,jH=" is too large for shifting.",lz="Invalid_argument",jG="0.08",ez="Map.bal",jF="@[",kQ=640,v="Code de la s\xc3\xa9curit\xc3\xa9 sociale",mw="Article L521-1",kP=123,ly="577500",eP=152,lx="%ni",mv=43200.,gr="ml_z_overflow",kO=159,mu="EMFILE",aa=86400.,aI=2020,gU=163,kN=139,aZ=0xff,lw="ENOMEM",gB=-12,lv=-45,eO="Titre 5 : Dispositions particuli\xc3\xa8res \xc3\xa0 la Guadeloupe, \xc3\xa0 la Guyane, \xc3\xa0 la Martinique, \xc3\xa0 La R\xc3\xa9union, \xc3\xa0 Saint-Barth\xc3\xa9lemy et \xc3\xa0 Saint-Martin",mt="559500",b7="Article 1",gT=122,jE="582700",ms=992015837,lu="EPROTONOSUPPORT",m="0",lt="ENETRESET",mr="EACCES",eW="date_courante",ls="EINVAL",kM="0.5",lr="EDOM",bN=128,jD="Sys_blocked_io",kL="fd ",lq="EFBIG",jC=548,ey="Chapitre 2 : Champ d'application",jB="0.0588",N=248,jA="EXDEV",e6=">",bt=153,mq=1027,mp="EINPROGRESS",jz="montant_vers\xc3\xa9",kK="enfants_\xc3\xa0_charge",lp="562800",b6="Chapitre 5 : Prestations familiales et prestations assimil\xc3\xa9es",jy=246,lo=555,jw=598,jx="%u",ln="resetLog",mo=358,cW=2011,g="AllocationsFamiliales",lm=3268,ju=298,jv="EHOSTUNREACH",kJ=633,bk="./securite_sociale_R.catala_fr",x="Livre 5 : Prestations familiales et prestations assimil\xc3\xa9es",kI=108,az="2",ba=127,dE=1024,jt="@{",eN=-2147483648,_="1",eV=133,e5="e",gq="Montant de la base mensuelle des allocations familiales",js=" : flags Open_rdonly and Open_wronly are not compatible",kH="ressources_m\xc3\xa9nage",jr="D\xc3\xa9cret n\xc2\xb0 2019-1387 du 18 d\xc3\xa9cembre 2019 portant rel\xc3\xa8vement du salaire minimum de croissance",aD="-",mn=505,b1=803994948,kG="EAGAIN",gA=": Not a directory",jp=216,jq=" : file already exists",mm="smic",kF="Article D521-3",eU=184,bL=0xffffff,cO=2012,kE="EDESTADDRREQ",ll="EISCONN",mj=-43,mk=612,S="./securite_sociale_D.catala_fr",ml="EROFS",eM=86400,kD="Out_of_memory",mi="inf",gz="index out of bounds",mh="EPIPE",jo="ENOEXEC",eL="_bigarr02",mg="Circulaire interminist\xc3\xa9rielle N\xc2\xb0 DSS/SD2B/2017/352 du 22 d\xc3\xa9cembre 2017 relative \xc3\xa0 la revalorisation au 1er janvier 2018 des plafonds de ressources d\xe2\x80\x99attribution de certaines prestations familiales servies en m\xc3\xa9tropole, en Guadeloupe, en Guyane, en Martinique, \xc3\xa0 la R\xc3\xa9union, \xc3\xa0 Saint-Barth\xc3\xa9lemy, \xc3\xa0 Saint-Martin et \xc3\xa0 Mayotte",kC=0xffffffff,gS=111,gG=2147483647,lk=208,mf=180,jn="Martinique",lj=", characters ",jm="EPFNOSUPPORT",bn=0xffff,kB="EBUSY",eK=417088404,kA="ENETUNREACH",me="ENOLCK",jk="ENOTTY",jl=12520,gy=400,li="ESHUTDOWN",md=619,ji=-46,jj="ENXIO",aP=3600,kz=143,B="Chapitre 1er : Allocations familiales",gF="AllocationFamilialesAvril2008",mc="ERANGE",cI=2016,lh="retrieveLog",bm="\xc3\xa2ge_minimum_alin\xc3\xa9a_1_l521_3",mb="infinity",a6=1000,eJ=142,k="",jh="^",b0=3600.,jg=86400000,ky=264,al="Partie l\xc3\xa9gislative",cH=0x3f,dC=124,Z="./epilogue.catala_fr",gR=385,eI="Article L512-3",w="./decrets_divers.catala_fr",C="Titre 2 : Prestations g\xc3\xa9n\xc3\xa9rales d'entretien",dK=112,jf="Match_failure",lg=140,b3="Montant des plafonds de ressources",O="Annexe",ma="enfants",eH=135,l$="personne_charge_effective_permanente_est_parent",bj=2021,kx="enfant_le_plus_\xc3\xa2g\xc3\xa9",eG=252,kw="EPROTOTYPE",bl=".",du="montant_initial_majoration",bH="+",kv="EINTR",je="ESRCH",ku=0xf0,a7="12.",kt="Guadeloupe",l_="ESOCKTNOSUPPORT",lf=187,gQ=110,af="PrestationsFamiliales",gx=116,jd="%li",kr=576,ks="EALREADY",cS=2015,eF=365,bK="prise_en_compte",dt="Smic",jc=178,gP=-32,kq="avait_enfant_\xc3\xa0_charge_avant_1er_janvier_2012",cl="R\xc3\xa8gles diverses",bs=1023,ko=-1080,kp="EAFNOSUPPORT",am="./securite_sociale_L.catala_fr",s="./prologue.catala_fr",ex=2299161,kn=969837588,gE="nan",l9=605,km="ENFILE",jb=0xe0,kl=-1023,l8=117,ld="ECHILD",le=0xdfff,dJ="compl\xc3\xa9ment_d\xc3\xa9gressif",gw="Article L755-12",lc="ETOOMANYREFS",bq="/",l7="Assert_failure",ew=2400000.5,ja="ENAMETOOLONG",l6="568400",kk=541,eT="ENOTDIR",l5="0.32",gD=1073741823,lb="ETIMEDOUT",l4=308,e4="r\xc3\xa9sidence",i$="EMSGSIZE",ev=250,dB=1582,eS=154,la=513,l3="ENOTCONN",i9=115,i_="ECONNREFUSED",k$="src/time_Zone.ml",l2=1e14,e3="Article R521-3",kj="Arr\xc3\xaat\xc3\xa9 du 14 d\xc3\xa9cembre 2020 relatif au montant des plafonds de ressources de certaines prestations familiales et aux tranches du bar\xc3\xa8me applicable au recouvrement des indus et \xc3\xa0 la saisie des prestations",eE='"',k9="Guyane",k_="EWOULDBLOCK",i8="allocations_familiales",gp=1255,gv="<",l1="Fatal error: exception %s\n",kh=196,ki=0x800,cR=255,kg="EPERM",aO=2019,gn="Article R521-1",go="jsError",bi=0x8000,$="droit_ouvert_majoration",bp="Partie r\xc3\xa9glementaire - D\xc3\xa9crets en Conseil d'Etat",dI=146097,cV=256,kf=0.012,l0="Article L521-3",k8="End_of_file",kd="M\xc3\xa9tropole",ke=156,gC="Failure",lY=367,lZ="ENOSPC",i7=129,i6="\n",kc=204,dA="conditions_hors_\xc3\xa2ge",k7=218,e2="ENOENT",kb=534,K="Dispositions sp\xc3\xa9ciales relatives \xc3\xa0 Mayotte",ka=562,lX=288,j$="([^/]+)",lW=315,i5=194,k6="ENETDOWN",e1="EnfantLePlus\xc3\x82g\xc3\xa9",gu=0xf,lV="EOVERFLOW",eu=-48,k5=0xdc00,dz="montant_initial_m\xc3\xa9tropole_majoration",gt=125,gO="ENOTEMPTY",i4="EBADF",ar="camlinternalFormat.ml",j_="Division_by_zero",gN=162,gs=520,i3="EMLINK",k4="Sys_error",lT=647,lU="x",lS=335,cG=2017,b2="Article D521-2",e0="Article D755-5",ds="Titre 1 : Champ d'application - G\xc3\xa9n\xc3\xa9ralit\xc3\xa9s",bJ=60.,gm="EEXIST",cN=2014,gM="%d",k3="Printexc.handle_uncaught_exception",i2=32082,b5=1900,i1=121,j9="EADDRNOTAVAIL",lR="buffer.ml",j8=119,dy="montant_avec_garde_altern\xc3\xa9e_majoration",j7="version_avril_2008",bZ=120,eD=127686388,cm=103,lQ="ENOBUFS",gl="16",cL=2013,cM=102,gk=512,lP=527,cU=113,i0=0x7ff0,p="D\xc3\xa9crets divers",eC=101,cQ=132,iZ="0x",iY="D\xc3\xa9cret n\xc2\xb0 2020-1598 du 16 d\xc3\xa9cembre 2020 portant rel\xc3\xa8vement du salaire minimum de croissance",ck=1e7,r="Prologue",dx=254,aW=100,j5="ECONNABORTED",j6="EFAULT",cP="Article 7",k2="ENODEV",j4=" : flags Open_text and Open_binary are not compatible",k1="%Li",j2="EIO",j3="EDEADLK",eZ="3",R="Partie r\xc3\xa9glementaire - D\xc3\xa9crets simples",iX=105,lN="169.",lO=230,iW="Instruction interminist\xc3\xa9rielle n\xc2\xb0 DSS/SD2B/2018/279 du 17 d\xc3\xa9cembre 2018 relative \xc3\xa0 la revalorisation au 1er janvier 2019 des plafonds de ressources d\xe2\x80\x99attribution de certaines prestations familiales servies en m\xc3\xa9tropole, en Guadeloupe, en Guyane, en Martinique, \xc3\xa0 la R\xc3\xa9union, \xc3\xa0 Saint-Barth\xc3\xa9lemy, \xc3\xa0 Saint-Martin et \xc3\xa0 Mayotte",k0=591,b4=0.5,j1=584,aJ="Article D521-1",j0="Instruction interministerielle no DSS/SD2B/2019/261 du 18 d\xc3\xa9cembre 2019 relative \xc3\xa0 la revalorisation au 1er janvier 2020 des plafonds de ressources d\xe2\x80\x99attribution de certaines prestations familiales servies en m\xc3\xa9tropole, en Guadeloupe, en Guyane, en Martinique, \xc3\xa0 La R\xc3\xa9union, \xc3\xa0 Saint-Barth\xc3\xa9lemy, \xc3\xa0 Saint-Martin et \xc3\xa0 Mayotte",jZ=188,bM="Livre 7 : R\xc3\xa9gimes divers - Dispositions diverses",ay="input",iV="str.ml",jY=160,lM=161,iU="personne_charge_effective_permanente_remplit_titre_I",lL="prestations_familiales",dH="est_enfant_le_plus_\xc3\xa2g\xc3\xa9",jX="0.0463",iT="D\xc3\xa9cret n\xc2\xb0 2018-1173 du 19 d\xc3\xa9cembre 2018 portant rel\xc3\xa8vement du salaire minimum de croissance",eR="_z",lK="computeAllocationsFamiliales",dG="Unix.Unix_error",jV="0.55",jW="EHOSTDOWN",jU=109,dw="droit_ouvert",gj="mkdir",jT="ENOTSOCK",kZ=136,lJ="Stack_overflow",et=": No such file or directory",aA="Interface du programme",lI="/static/",dr="Titre 5 : D\xc3\xa9partements d'outre-mer",jS=-97,lH=253,lG="Not_found",dv=1461,aC="InterfaceAllocationsFamiliales",gi=151,J="D\xc3\xa9cret n\xc2\xb02002-423 du 29 mars 2002 relatif aux prestations familiales \xc3\xa0 Mayotte",cK="1.",kY=32044,eQ=", ",iS=626,bo=2018,lF="Mayotte",jR="EOPNOTSUPP",iR="ENOPROTOOPT",gL=243,jQ=2440588,gK="rmdir",kX="src/date.ml",lE=32752,jP="ECONNRESET",lD="ELOOP",eB=141,jO="ESPIPE",lC=280,Y="\xc3\x89pilogue",kW="EADDRINUSE",lB=1026,br="Article L521-2",kV="ENOSYS",eY="Invalid integer: ",eA=2440587.5,jN="E2BIG",kU=359,iP="Pervasives.do_at_exit",iQ="utf8",jM=155,kT=258,bI=" ",gJ="Fatal error: exception ",a8=0x80,kS="Undefined_recursive_module",aB="output",jL=569,gh=376,jK=215,eX="src/calendar_builder.ml",iO="EISDIR",lA="_",cJ="Montant du salaire minimum de croissance",gI="compare: functional value",gg="0.16",dD="droit_ouvert_forfaitaire",dF="0.",es=134,kR="%i",gH=114,cT=529348384,iN=176,jJ=426;function +HH(d,b,e,c,f){if(c<=b)for(var a=1;a<=f;a++)e[c+a]=d[b+a];else for(var a=f;a>=1;a--)e[c+a]=d[b+a];return 0}function -GF(e,f,d){var +HK(e,f,d){var a=new Array(d+1);a[0]=0;for(var b=1,c=f+1;b<=d;b++,c++)a[b]=e[c];return a}function -e5(c,b,a){var +fg(c,b,a){var d=String.fromCharCode;if(b==0&&a<=4096&&a==c.length)return d.apply(null,c);var -e=o;for(;0=b.l||b.t==2&&c>=b.c.length)){b.c=d.t==4?e5(d.c,e,c):e==0&&d.c.length==c?d.c:d.c.substr(e,c);b.t=b.c.length==b.l?0:2}else -if(b.t==2&&f==b.c.length){b.c+=d.t==4?e5(d.c,e,c):e==0&&d.c.length==c?d.c:d.c.substr(e,c);b.t=b.c.length==b.l?0:2}else{if(b.t!=4)eU(b);var +b9(d,e,b,f,c){if(c==0)return 0;if(f==0&&(c>=b.l||b.t==2&&c>=b.c.length)){b.c=d.t==4?fg(d.c,e,c):e==0&&d.c.length==c?d.c:d.c.substr(e,c);b.t=b.c.length==b.l?0:2}else +if(b.t==2&&f==b.c.length){b.c+=d.t==4?fg(d.c,e,c):e==0&&d.c.length==c?d.c:d.c.substr(e,c);b.t=b.c.length==b.l?0:2}else{if(b.t!=4)e7(b);var g=d.c,h=b.c;if(d.t==4)if(f<=e)for(var a=0;a=0;a--)h[f+a]=g[e+a];else{var i=Math.min(c,g.length-e);for(var a=0;a>=1;if(b==0)return d;a+=a;c++;if(c==9)a.slice(0,1)}}function -b_(a){if(a.t==2)a.c+=cY(a.l-a.c.length,"\0");else -a.c=e5(a.c,0,a.c.length);a.t=0}function -mq(a,b){if(a===b)return 1;a.t&6&&b_(a);b.t&6&&b_(b);return a.c==b.c?1:0}function -Hn(b,a){throw[0,b,a]}function -mN(a){if(a.length<24){for(var -b=0;bbd)return false;return true}else +b_(a,b,c,d,e){b9(bO(a),b,c,d,e);return 0}function +c2(b,a){if(b==0)return k;if(a.repeat)return a.repeat(b);var +d=k,c=0;for(;;){if(b&1)d+=a;b>>=1;if(b==0)return d;a+=a;c++;if(c==9)a.slice(0,1)}}function +cn(a){if(a.t==2)a.c+=c2(a.l-a.c.length,"\0");else +a.c=fg(a.c,0,a.c.length);a.t=0}function +mG(a,b){if(a===b)return 1;a.t&6&&cn(a);b.t&6&&cn(b);return a.c==b.c?1:0}function +Ir(b,a){throw[0,b,a]}function +m2(a){if(a.length<24){for(var +b=0;bba)return false;return true}else return!/[^\x00-\x7f]/.test(a)}function -gY(e){for(var -j=o,c=o,g,f,h,a,b=0,i=e.length;bf9){c.substr(0,1);j+=c;c=o;j+=e.slice(b,d)}else -c+=e.slice(b,d);if(d==i)break;b=d}a=1;if(++b=0xd7ff&&a<0xe000)a=2}else{a=3;if(++b0x10ffff)a=3}}}}}if(a<4){b-=a;c+="\ufffd"}else -if(a>bp)c+=String.fromCharCode(0xd7c0+(a>>10),kN+(a&0x3FF));else -c+=String.fromCharCode(a);if(c.length>dC){c.substr(0,1);j+=c;c=o}}return j+c}function -bv(c,a,b){this.t=c;this.c=a;this.l=b}bv.prototype.toString=function(){switch(this.t){case -9:return this.c;default:b_(this);case -0:if(mN(this.c)){this.t=9;return this.c}this.t=8;case -8:return this.c}};bv.prototype.toUtf16=function(){var -a=this.toString();if(this.t==9)return a;return gY(a)};bv.prototype.slice=function(){var +hd(e){for(var +j=k,c=k,g,f,h,a,b=0,i=e.length;bgk){c.substr(0,1);j+=c;c=k;j+=e.slice(b,d)}else +c+=e.slice(b,d);if(d==i)break;b=d}a=1;if(++b=0xd7ff&&a<0xe000)a=2}else{a=3;if(++b0x10ffff)a=3}}}}}if(a<4){b-=a;c+="\ufffd"}else +if(a>bn)c+=String.fromCharCode(0xd7c0+(a>>10),k5+(a&0x3FF));else +c+=String.fromCharCode(a);if(c.length>dE){c.substr(0,1);j+=c;c=k}}return j+c}function +bu(c,a,b){this.t=c;this.c=a;this.l=b}bu.prototype.toString=function(){switch(this.t){case +9:return this.c;default:cn(this);case +0:if(m2(this.c)){this.t=9;return this.c}this.t=8;case +8:return this.c}};bu.prototype.toUtf16=function(){var +a=this.toString();if(this.t==9)return a;return hd(a)};bu.prototype.slice=function(){var a=this.t==4?this.c.slice():this.c;return new -bv(this.t,a,this.l)};function -mr(a){return new -bv(0,a,a.length)}function -a(a){return mr(a)}function -gU(c,b){Hn(c,a(b))}var -ag=[0];function -ah(a){gU(ag.Invalid_argument,a)}function -mo(){ah(gn)}function -dJ(a,b){switch(a.t&6){default:if(b>=a.c.length)return 0;case +bu(this.t,a,this.l)};function +mH(a){return new +bu(0,a,a.length)}function +a(a){return mH(a)}function +g$(c,b){Ir(c,a(b))}var +ab=[0];function +aj(a){g$(ab.Invalid_argument,a)}function +mE(){aj(gz)}function +dM(a,b){switch(a.t&6){default:if(b>=a.c.length)return 0;case 0:return a.c.charCodeAt(b);case 4:return a.c[b]}}function -b9(b,a){if(a>>>0>=b.l)mo();return dJ(b,a)}function -ad(a,c,b){b&=a1;if(a.t!=4){if(c==a.c.length){a.c+=String.fromCharCode(b);if(c+1==a.l)a.t=0;return 0}eU(a)}a.c[c]=b;return 0}function -ba(b,a,c){if(a>>>0>=b.l)mo();return ad(b,a,c)}function -be(c,a){if(c.fun)return be(c.fun,a);if(typeof +b$(b,a){if(a>>>0>=b.l)mE();return dM(b,a)}function +ag(a,c,b){b&=aZ;if(a.t!=4){if(c==a.c.length){a.c+=String.fromCharCode(b);if(c+1==a.l)a.t=0;return 0}e7(a)}a.c[c]=b;return 0}function +a9(b,a,c){if(a>>>0>=b.l)mE();return ag(b,a,c)}function +bb(c,a){if(c.fun)return bb(c.fun,a);if(typeof c!=="function")return c;var b=c.length|0;if(b===0)return c.apply(null,a);var e=a.length|0,d=b-e|0;if(d==0)return c.apply(null,a);else -if(d<0)return be(c.apply(null,a.slice(0,b)),a.slice(b));else +if(d<0)return bb(c.apply(null,a.slice(0,b)),a.slice(b));else return function(){var e=arguments.length==0?1:arguments.length,d=new Array(a.length+e);for(var b=0;b>>0>=a.length-1)dI();return a}function -GK(a){if(isFinite(a)){if(Math.abs(a)>=2.2250738585072014e-308)return 0;if(a!=0)return 1;return 2}return isNaN(a)?4:3}function -bf(a){if((a.t&6)!=0)b_(a);return a.c}var -HE=Math.log2&&Math.log2(1.1235582092889474E+307)==1020;function -HC(a){if(HE)return Math.floor(Math.log2(a));var +b=0;b>>0>=a.length-1)dL();return a}function +HP(a){if(isFinite(a)){if(Math.abs(a)>=2.2250738585072014e-308)return 0;if(a!=0)return 1;return 2}return isNaN(a)?4:3}function +bw(a){a.t&6&&cn(a);return a.c}var +II=Math.log2&&Math.log2(1.1235582092889474E+307)==1020;function +IG(a){if(II)return Math.floor(Math.log2(a));var b=0;if(a==0)return-Infinity;if(a>=1)while(a>=2){a/=2;b++}else while(a<1){a*=2;b--}return b}function -gL(c){var -a=new(B.Float32Array)(1);a[0]=c;var -b=new(B.Int32Array)(a.buffer);return b[0]|0}var -mC=Math.pow(2,-24);function -e3(a){throw a}function -cX(){e3(ag.Division_by_zero)}function -z(b,c,a){this.lo=b&bM;this.mi=c&bM;this.hi=a&bp}z.prototype.caml_custom="_j";z.prototype.copy=function(){return new -z(this.lo,this.mi,this.hi)};z.prototype.ucompare=function(a){if(this.hi>a.hi)return 1;if(this.hia.mi)return 1;if(this.mia.lo)return 1;if(this.loc)return 1;if(ba.mi)return 1;if(this.mia.lo)return 1;if(this.loa.hi)return 1;if(this.hia.mi)return 1;if(this.mia.lo)return 1;if(this.loc)return 1;if(ba.mi)return 1;if(this.mia.lo)return 1;if(this.lo>24),c=-this.hi+(b>>24);return new -z(a,b,c)};z.prototype.add=function(a){var +D(a,b,c)};D.prototype.add=function(a){var b=this.lo+a.lo,c=this.mi+a.mi+(b>>24),d=this.hi+a.hi+(c>>24);return new -z(b,c,d)};z.prototype.sub=function(a){var +D(b,c,d)};D.prototype.sub=function(a){var b=this.lo-a.lo,c=this.mi-a.mi+(b>>24),d=this.hi-a.hi+(c>>24);return new -z(b,c,d)};z.prototype.mul=function(a){var -b=this.lo*a.lo,c=(b*mC|0)+this.mi*a.lo+this.lo*a.mi,d=(c*mC|0)+this.hi*a.lo+this.mi*a.mi+this.lo*a.hi;return new -z(b,c,d)};z.prototype.isZero=function(){return(this.lo|this.mi|this.hi)==0};z.prototype.isNeg=function(){return this.hi<<16<0};z.prototype.and=function(a){return new -z(this.lo&a.lo,this.mi&a.mi,this.hi&a.hi)};z.prototype.or=function(a){return new -z(this.lo|a.lo,this.mi|a.mi,this.hi|a.hi)};z.prototype.xor=function(a){return new -z(this.lo^a.lo,this.mi^a.mi,this.hi^a.hi)};z.prototype.shift_left=function(a){a=a&63;if(a==0)return this;if(a<24)return new -z(this.lo<>24-a,this.hi<>24-a);if(a<48)return new -z(0,this.lo<>48-a);return new -z(0,0,this.lo<>a|this.mi<<24-a,this.mi>>a|this.hi<<24-a,this.hi>>a);if(a<48)return new -z(this.mi>>a-24|this.hi<<48-a,this.hi>>a-24,0);return new -z(this.hi>>a-48,0,0)};z.prototype.shift_right=function(a){a=a&63;if(a==0)return this;var +D(b,c,d)};D.prototype.mul=function(a){var +b=this.lo*a.lo,c=(b*mQ|0)+this.mi*a.lo+this.lo*a.mi,d=(c*mQ|0)+this.hi*a.lo+this.mi*a.mi+this.lo*a.hi;return new +D(b,c,d)};D.prototype.isZero=function(){return(this.lo|this.mi|this.hi)==0};D.prototype.isNeg=function(){return this.hi<<16<0};D.prototype.and=function(a){return new +D(this.lo&a.lo,this.mi&a.mi,this.hi&a.hi)};D.prototype.or=function(a){return new +D(this.lo|a.lo,this.mi|a.mi,this.hi|a.hi)};D.prototype.xor=function(a){return new +D(this.lo^a.lo,this.mi^a.mi,this.hi^a.hi)};D.prototype.shift_left=function(a){a=a&63;if(a==0)return this;if(a<24)return new +D(this.lo<>24-a,this.hi<>24-a);if(a<48)return new +D(0,this.lo<>48-a);return new +D(0,0,this.lo<>a|this.mi<<24-a,this.mi>>a|this.hi<<24-a,this.hi>>a);if(a<48)return new +D(this.mi>>a-24|this.hi<<48-a,this.hi>>a-24,0);return new +D(this.hi>>a-48,0,0)};D.prototype.shift_right=function(a){a=a&63;if(a==0)return this;var c=this.hi<<16>>16;if(a<24)return new -z(this.lo>>a|this.mi<<24-a,this.mi>>a|c<<24-a,this.hi<<16>>a>>>16);var +D(this.lo>>a|this.mi<<24-a,this.mi>>a|c<<24-a,this.hi<<16>>a>>>16);var b=this.hi<<16>>31;if(a<48)return new -z(this.mi>>a-24|this.hi<<48-a,this.hi<<16>>a-24>>16,b&bp);return new -z(this.hi<<16>>a-32,b,b)};z.prototype.lsl1=function(){this.hi=this.hi<<1|this.mi>>23;this.mi=(this.mi<<1|this.lo>>23)&bM;this.lo=this.lo<<1&bM};z.prototype.lsr1=function(){this.lo=(this.lo>>>1|this.mi<<23)&bM;this.mi=(this.mi>>>1|this.hi<<23)&bM;this.hi=this.hi>>>1};z.prototype.udivmod=function(e){var +D(this.mi>>a-24|this.hi<<48-a,this.hi<<16>>a-24>>16,b&bn);return new +D(this.hi<<16>>a-32,b,b)};D.prototype.lsl1=function(){this.hi=this.hi<<1|this.mi>>23;this.mi=(this.mi<<1|this.lo>>23)&bL;this.lo=this.lo<<1&bL};D.prototype.lsr1=function(){this.lo=(this.lo>>>1|this.mi<<23)&bL;this.mi=(this.mi>>>1|this.hi<<23)&bL;this.hi=this.hi>>>1};D.prototype.udivmod=function(e){var c=0,b=this.copy(),a=e.copy(),d=new -z(0,0,0);while(b.ucompare(a)>0){c++;a.lsl1()}while(c>=0){c--;d.lsl1();if(b.ucompare(a)>=0){d.lo++;b=b.sub(a)}a.lsr1()}return{quotient:d,modulus:b}};z.prototype.div=function(a){var -b=this;if(a.isZero())cX();var -d=b.hi^a.hi;if(b.hi&bl)b=b.neg();if(a.hi&bl)a=a.neg();var -c=b.udivmod(a).quotient;if(d&bl)c=c.neg();return c};z.prototype.mod=function(b){var -a=this;if(b.isZero())cX();var -d=a.hi;if(a.hi&bl)a=a.neg();if(b.hi&bl)b=b.neg();var -c=a.udivmod(b).modulus;if(d&bl)c=c.neg();return c};z.prototype.toInt=function(){return this.lo|this.mi<<24};z.prototype.toFloat=function(){return(this.hi<<16)*Math.pow(2,32)+this.mi*Math.pow(2,24)+this.lo};z.prototype.toArray=function(){return[this.hi>>8,this.hi&a1,this.mi>>16,this.mi>>8&a1,this.mi&a1,this.lo>>16,this.lo>>8&a1,this.lo&a1]};z.prototype.lo32=function(){return this.lo|(this.mi&a1)<<24};z.prototype.hi32=function(){return this.mi>>>8&bp|this.hi<<16};function -ca(b,c,a){return new -z(b,c,a)}function -eX(a){if(!isFinite(a)){if(isNaN(a))return ca(1,0,iI);return a>0?ca(0,0,iI):ca(0,0,0xfff0)}var -f=a==0&&1/a==-Infinity?bl:a>=0?0:bl;if(f)a=-a;var -b=HC(a)+bt;if(b<=0){b=0;a/=Math.pow(2,-ln)}else{a/=Math.pow(2,b-ma);if(a<16){a*=2;b-=1}if(b==0)a/=2}var +D(0,0,0);while(b.ucompare(a)>0){c++;a.lsl1()}while(c>=0){c--;d.lsl1();if(b.ucompare(a)>=0){d.lo++;b=b.sub(a)}a.lsr1()}return{quotient:d,modulus:b}};D.prototype.div=function(a){var +b=this;if(a.isZero())c1();var +d=b.hi^a.hi;if(b.hi&bi)b=b.neg();if(a.hi&bi)a=a.neg();var +c=b.udivmod(a).quotient;if(d&bi)c=c.neg();return c};D.prototype.mod=function(b){var +a=this;if(b.isZero())c1();var +d=a.hi;if(a.hi&bi)a=a.neg();if(b.hi&bi)b=b.neg();var +c=a.udivmod(b).modulus;if(d&bi)c=c.neg();return c};D.prototype.toInt=function(){return this.lo|this.mi<<24};D.prototype.toFloat=function(){return(this.hi<<16)*Math.pow(2,32)+this.mi*Math.pow(2,24)+this.lo};D.prototype.toArray=function(){return[this.hi>>8,this.hi&aZ,this.mi>>16,this.mi>>8&aZ,this.mi&aZ,this.lo>>16,this.lo>>8&aZ,this.lo&aZ]};D.prototype.lo32=function(){return this.lo|(this.mi&aZ)<<24};D.prototype.hi32=function(){return this.mi>>>8&bn|this.hi<<16};function +cb(b,c,a){return new +D(b,c,a)}function +e_(a){if(!isFinite(a)){if(isNaN(a))return cb(1,0,i0);return a>0?cb(0,0,i0):cb(0,0,0xfff0)}var +f=a==0&&1/a==-Infinity?bi:a>=0?0:bi;if(f)a=-a;var +b=IG(a)+bs;if(b<=0){b=0;a/=Math.pow(2,-lB)}else{a/=Math.pow(2,b-mq);if(a<16){a*=2;b-=1}if(b==0)a/=2}var d=Math.pow(2,24),c=a|0;a=(a-c)*d;var e=a|0;a=(a-e)*d;var -g=a|0;c=c&gh|f|b<<4;return ca(g,e,c)}function -dM(a){return a.toArray()}function -mn(c,b,g){c.write(32,b.dims.length);c.write(32,b.kind|b.layout<<8);if(b.caml_custom==eC)for(var -a=0;a>4;if(c==2047)return(f|g|b&gh)==0?b&bl?-Infinity:Infinity:NaN;var -e=Math.pow(2,-24),a=(f*e+g)*e+(b&gh);if(c>0){a+=16;a*=Math.pow(2,c-ma)}else -a*=Math.pow(2,-ln);if(b&bl)a=-a;return a}function -gF(b){var +a(e*mB(c));return d}function +g3(c){var +a=new(y.Int32Array)(1);a[0]=c;var +b=new(y.Float32Array)(a.buffer);return b[0]}function +dO(a){return new +D(a[7]<<0|a[6]<<8|a[5]<<16,a[4]<<0|a[3]<<8|a[2]<<16,a[1]<<0|a[0]<<8)}function +c0(d){var +f=d.lo,g=d.mi,b=d.hi,c=(b&0x7fff)>>4;if(c==2047)return(f|g|b&gu)==0?b&bi?-Infinity:Infinity:NaN;var +e=Math.pow(2,-24),a=(f*e+g)*e+(b&gu);if(c>0){a+=16;a*=Math.pow(2,c-mq)}else +a*=Math.pow(2,-lB);if(b&bi)a=-a;return a}function +gV(b){var d=b.length,c=1;for(var -a=0;a>>24&a1|(a&bp)<<8,a>>>16&bp)}function -gN(a){return a.hi32()}function -gO(a){return a.lo32()}var -GH=eC;function -b6(c,d,b,a){this.kind=c;this.layout=d;this.dims=b;this.data=a}b6.prototype.caml_custom=GH;b6.prototype.offset=function(b){var +a=0;a>>24&aZ|(a&bn)<<8,a>>>16&bn)}function +g4(a){return a.hi32()}function +g5(a){return a.lo32()}var +HM=eL;function +b8(c,d,b,a){this.kind=c;this.layout=d;this.dims=b;this.data=a}b8.prototype.caml_custom=HM;b8.prototype.offset=function(b){var c=0;if(typeof b==="number")b=[b];if(!(b instanceof -Array))ah("bigarray.js: invalid offset");if(this.dims.length!=b.length)ah("Bigarray.get/set: bad number of dimensions");if(this.layout==0)for(var -a=0;a=this.dims[a])dI();c=c*this.dims[a]+b[a]}else +Array))aj("bigarray.js: invalid offset");if(this.dims.length!=b.length)aj("Bigarray.get/set: bad number of dimensions");if(this.layout==0)for(var +a=0;a=this.dims[a])dL();c=c*this.dims[a]+b[a]}else for(var -a=this.dims.length-1;a>=0;a--){if(b[a]<1||b[a]>this.dims[a])dI();c=c*this.dims[a]+(b[a]-1)}return c};b6.prototype.get=function(a){switch(this.kind){case +a=this.dims.length-1;a>=0;a--){if(b[a]<1||b[a]>this.dims[a])dL();c=c*this.dims[a]+(b[a]-1)}return c};b8.prototype.get=function(a){switch(this.kind){case 7:var -d=this.data[a*2+0],b=this.data[a*2+1];return mB(d,b);case +d=this.data[a*2+0],b=this.data[a*2+1];return mP(d,b);case 10:case 11:var -e=this.data[a*2+0],c=this.data[a*2+1];return[du,e,c];default:return this.data[a]}};b6.prototype.set=function(a,b){switch(this.kind){case -7:this.data[a*2+0]=gO(b);this.data[a*2+1]=gN(b);break;case +e=this.data[a*2+0],c=this.data[a*2+1];return[dx,e,c];default:return this.data[a]}};b8.prototype.set=function(a,b){switch(this.kind){case +7:this.data[a*2+0]=g5(b);this.data[a*2+1]=g4(b);break;case 10:case -11:this.data[a*2+0]=b[1];this.data[a*2+1]=b[2];break;default:this.data[a]=b;break}return 0};b6.prototype.fill=function(b){switch(this.kind){case +11:this.data[a*2+0]=b[1];this.data[a*2+1]=b[2];break;default:this.data[a]=b;break}return 0};b8.prototype.fill=function(b){switch(this.kind){case 7:var -c=gO(b),e=gN(b);if(c==e)this.data.fill(c);else +c=g5(b),e=g4(b);if(c==e)this.data.fill(c);else for(var a=0;ab.data[a])return 1}break}return 0};function -cT(c,d,b,a){this.kind=c;this.layout=d;this.dims=b;this.data=a}cT.prototype=new -b6();cT.prototype.offset=function(a){if(typeof +cX(c,d,b,a){this.kind=c;this.layout=d;this.dims=b;this.data=a}cX.prototype=new +b8();cX.prototype.offset=function(a){if(typeof a!=="number")if(a instanceof Array&&a.length==1)a=a[0];else -ah("Ml_Bigarray_c_1_1.offset");if(a<0||a>=this.dims[0])dI();return a};cT.prototype.get=function(a){return this.data[a]};cT.prototype.set=function(a,b){this.data[a]=b;return 0};cT.prototype.fill=function(a){this.data.fill(a);return 0};function -mj(c,d,a,b){var -e=ml(c);if(gF(a)*e!=b.length)ah("length doesn't match dims");if(d==0&&a.length==1&&e==1)return new -cT(c,d,a,b);return new -b6(c,d,a,b)}function -b$(a){gU(ag.Failure,a)}function -mk(b,v,r){var -i=b.read32s();if(i<0||i>16)b$("input_value: wrong number of bigarray dimensions");var -p=b.read32s(),j=p&a1,o=p>>8&1,h=[];if(r==eC)for(var +aj("Ml_Bigarray_c_1_1.offset");if(a<0||a>=this.dims[0])dL();return a};cX.prototype.get=function(a){return this.data[a]};cX.prototype.set=function(a,b){this.data[a]=b;return 0};cX.prototype.fill=function(a){this.data.fill(a);return 0};function +mz(c,d,a,b){var +e=mB(c);if(gV(a)*e!=b.length)aj("length doesn't match dims");if(d==0&&a.length==1&&e==1)return new +cX(c,d,a,b);return new +b8(c,d,a,b)}function +ca(b){if(!ab.Failure)ab.Failure=[N,a(gC),-3];g$(ab.Failure,b)}function +mA(b,v,r){var +i=b.read32s();if(i<0||i>16)ca("input_value: wrong number of bigarray dimensions");var +p=b.read32s(),j=p&aZ,o=p>>8&1,h=[];if(r==eL)for(var a=0;a>>32-15;a=by(a,0x1b873593);b^=a;b=b<<13|b>>>32-13;return(b+(b<<2)|0)+(0xe6546b64|0)|0}function -GU(a,b){a=av(a,gO(b));a=av(a,gN(b));return a}function -gJ(a,b){return GU(a,eX(b))}function -mm(c){var -b=gF(c.dims),d=0;switch(c.kind){case +l=c0(dO(e));g.set(a,[dx,m,l])}break}v[0]=(4+i)*4;return mz(j,o,h,f)}function +my(a,b,c){return a.compare(b,c)}function +bc(a,b){return Math.imul(a,b)}function +av(b,a){a=bc(a,0xcc9e2d51|0);a=a<<15|a>>>32-15;a=bc(a,0x1b873593);b^=a;b=b<<13|b>>>32-13;return(b+(b<<2)|0)+(0xe6546b64|0)|0}function +HZ(a,b){a=av(a,g5(b));a=av(a,g4(b));return a}function +g0(a,b){return HZ(a,e_(b))}function +mC(c){var +b=gV(c.dims),d=0;switch(c.kind){case 2:case 3:case -12:if(b>cR)b=cR;var +12:if(b>cV)b=cV;var e=0,a=0;for(a=0;a+4<=c.data.length;a+=4){e=c.data[a+0]|c.data[a+1]<<8|c.data[a+2]<<16|c.data[a+3]<<24;d=av(d,e)}e=0;switch(b&3){case 3:e=c.data[a+2]<<16;case 2:e|=c.data[a+1]<<8;case 1:e|=c.data[a+0];d=av(d,e)}break;case 4:case -5:if(b>ck)b=ck;var +5:if(b>bN)b=bN;var e=0,a=0;for(a=0;a+2<=c.data.length;a+=2){e=c.data[a+0]|c.data[a+1]<<16;d=av(d,e)}if((b&1)!=0)d=av(d,c.data[a]);break;case 6:if(b>64)b=64;for(var a=0;a64)b=64;for(var -a=0;a32)b=32;for(var -a=0;a0?b(c,f,e):b(f,c,e);if(e&&a!=a)return d;if(+a!=+a)return+a;if((a|0)!=0)return a|0}return d}function -dN(a){return a +dQ(a){return a instanceof -bv}function -e0(a){return dN(a)}function -mu(a){if(typeof -a==="number")return a8;else -if(dN(a))return ez;else -if(e0(a))return 1252;else +bu}function +fb(a){return dQ(a)}function +mK(a){if(typeof +a==="number")return a6;else +if(dQ(a))return eG;else +if(fb(a))return 1252;else if(a instanceof -Array&&a[0]===a[0]>>>0&&a[0]<=cN){var -b=a[0]|0;return b==du?0:b}else +Array&&a[0]===a[0]>>>0&&a[0]<=cR){var +b=a[0]|0;return b==dx?0:b}else if(a instanceof -String)return i4;else +String)return jl;else if(typeof -a=="string")return i4;else +a=="string")return jl;else if(a instanceof -Number)return a8;else -if(a&&a.caml_custom)return gc;else +Number)return a6;else +if(a&&a.caml_custom)return gp;else if(a&&a.compare)return 1256;else if(typeof a=="function")return 1247;else if(typeof a=="symbol")return 1251;return 1001}function -eZ(a,b){if(ab.c?1:0}function -gW(a,b){return mp(a,b)}function -cU(a,b,d){var +fa(a,b){if(ab.c?1:0}function +hb(a,b){return mF(a,b)}function +cY(a,b,d){var e=[];for(;;){if(!(d&&a===b)){var -f=mu(a);if(f==ep){a=a[1];continue}var -g=mu(b);if(g==ep){b=b[1];continue}if(f!==g){if(f==a8){if(g==gc)return mt(a,b,-1,d);return-1}if(g==a8){if(f==gc)return mt(b,a,1,d);return 1}return fb)return 1;if(a!=b){if(!d)return NaN;if(a==a)return 1;if(b==b)return-1}break;case 1251:if(a!==b){if(!d)return NaN;return 1}break;case 1252:var -a=bf(a),b=bf(b);if(a!==b){if(ab)return 1}break;case +a=bw(a),b=bw(b);if(a!==b){if(ab)return 1}break;case 12520:var a=a.toString(),b=b.toString();if(a!==b){if(ab)return 1}break;case 246:case 254:default:if(a.length!=b.length)return a.length1)e.push(a,b,1);break}}if(e.length==0)return 0;var h=e.pop();b=e.pop();a=e.pop();if(h+10)if(c==0&&(b>=a.l||a.t==2&&b>=a.c.length))if(d==0){a.c=o;a.t=2}else{a.c=cY(b,String.fromCharCode(d));a.t=b==a.l?0:2}else{if(a.t!=4)eU(a);for(b+=c;c31)ah("format_int: format too long");var -a={justify:bI,signstyle:aC,filler:bJ,alternate:false,base:0,signedconv:false,width:0,uppercase:false,sign:1,prec:-1,conv:"f"};for(var +mI(a,b){return cY(a,b,true)}function +HQ(){return[0]}function +ai(a){if(a<0)aj("Bytes.create");return new +bu(a?2:9,k,a)}function +gX(b,a){if(a==0)c1();return b/a|0}function +E(a,b){return+(cY(a,b,false)==0)}function +HS(a,c,b,d){if(b>0)if(c==0&&(b>=a.l||a.t==2&&b>=a.c.length))if(d==0){a.c=k;a.t=2}else{a.c=c2(b,String.fromCharCode(d));a.t=b==a.l?0:2}else{if(a.t!=4)e7(a);for(b+=c;c31)aj("format_int: format too long");var +a={justify:bH,signstyle:aD,filler:bI,alternate:false,base:0,signedconv:false,width:0,uppercase:false,sign:1,prec:-1,conv:"f"};for(var c=0;c=0&&b<=9){a.width=a.width*10+b;c++}c--;break;case".":a.prec=0;c++;while(b=d.charCodeAt(c)-48,b>=0&&b<=9){a.prec=a.prec*10+b;c++}c--;case"d":case"i":a.signedconv=true;case"u":a.base=10;break;case"x":a.base=16;break;case"X":a.base=16;a.uppercase=true;break;case"o":a.base=8;break;case"e":case"f":case"g":a.signedconv=true;a.conv=b;break;case"E":case"F":case"G":a.signedconv=true;a.uppercase=true;a.conv=b.toLowerCase();break}}return a}function -gH(b,f){if(b.uppercase)f=f.toUpperCase();var -e=f.length;if(b.signedconv&&(b.sign<0||b.signstyle!=aC))e++;if(b.alternate){if(b.base==8)e+=1;if(b.base==16)e+=2}var -c=o;if(b.justify==bI&&b.filler==bJ)for(var -d=e;d=0&&b<=9){a.width=a.width*10+b;c++}c--;break;case".":a.prec=0;c++;while(b=d.charCodeAt(c)-48,b>=0&&b<=9){a.prec=a.prec*10+b;c++}c--;case"d":case"i":a.signedconv=true;case"u":a.base=10;break;case"x":a.base=16;break;case"X":a.base=16;a.uppercase=true;break;case"o":a.base=8;break;case"e":case"f":case"g":a.signedconv=true;a.conv=b;break;case"E":case"F":case"G":a.signedconv=true;a.uppercase=true;a.conv=b.toLowerCase();break}}return a}function +gY(b,f){if(b.uppercase)f=f.toUpperCase();var +e=f.length;if(b.signedconv&&(b.sign<0||b.signstyle!=aD))e++;if(b.alternate){if(b.base==8)e+=1;if(b.base==16)e+=2}var +c=k;if(b.justify==bH&&b.filler==bI)for(var +d=e;d20){c-=20;a/=Math.pow(10,c);a+=new -Array(c+1).join(k);if(b>0)a=a+bn+new -Array(b+1).join(k);return a}else +c=parseInt(a.toString().split(bH)[1]);if(c>20){c-=20;a/=Math.pow(10,c);a+=new +Array(c+1).join(m);if(b>0)a=a+bl+new +Array(b+1).join(m);return a}else return a.toFixed(b)}}var -a,e=gT(i),d=e.prec<0?6:e.prec;if(c<0||c==0&&1/c==-Infinity){e.sign=-1;c=-c}if(isNaN(c)){a=gr;e.filler=bJ}else -if(!isFinite(c)){a=l4;e.filler=bJ}else +a,e=g_(i),d=e.prec<0?6:e.prec;if(c<0||c==0&&1/c==-Infinity){e.sign=-1;c=-c}if(isNaN(c)){a=gE;e.filler=bI}else +if(!isFinite(c)){a=mi;e.filler=bI}else switch(e.conv){case"e":var -a=c.toExponential(d),b=a.length;if(a.charAt(b-3)==eS)a=a.slice(0,b-1)+k+a.slice(b-1);break;case"f":a=j(c,d);break;case"g":d=d?d:1;a=c.toExponential(d-1);var -h=a.indexOf(eS),g=+a.slice(h+1);if(g<-4||c>=1e21||c.toFixed(0).length>d){var -b=h-1;while(a.charAt(b)==k)b--;if(a.charAt(b)==bn)b--;a=a.slice(0,b+1)+a.slice(h);b=a.length;if(a.charAt(b-3)==eS)a=a.slice(0,b-1)+k+a.slice(b-1);break}else{var +a=c.toExponential(d),b=a.length;if(a.charAt(b-3)==e5)a=a.slice(0,b-1)+m+a.slice(b-1);break;case"f":a=j(c,d);break;case"g":d=d?d:1;a=c.toExponential(d-1);var +h=a.indexOf(e5),g=+a.slice(h+1);if(g<-4||c>=1e21||c.toFixed(0).length>d){var +b=h-1;while(a.charAt(b)==m)b--;if(a.charAt(b)==bl)b--;a=a.slice(0,b+1)+a.slice(h);b=a.length;if(a.charAt(b-3)==e5)a=a.slice(0,b-1)+m+a.slice(b-1);break}else{var f=d;if(g<0){f-=g+1;a=c.toFixed(f)}else while(a=c.toFixed(f),a.length>d+1)f--;if(f){var -b=a.length-1;while(a.charAt(b)==k)b--;if(a.charAt(b)==bn)b--;a=a.slice(0,b+1)}}break}return gH(e,a)}function -eV(e,c){if(bf(e)==gy)return a(o+c);var -b=gT(e);if(c<0)if(b.signedconv){b.sign=-1;c=-c}else +b=a.length-1;while(a.charAt(b)==m)b--;if(a.charAt(b)==bl)b--;a=a.slice(0,b+1)}}break}return gY(e,a)}function +e8(e,c){if(bw(e)==gM)return a(k+c);var +b=g_(e);if(c<0)if(b.signedconv){b.sign=-1;c=-c}else c>>>=0;var -d=c.toString(b.base);if(b.prec>=0){b.filler=bJ;var -f=b.prec-d.length;if(f>0)d=cY(f,k)+d}return gH(b,d)}var -mH=0;function -aj(){return mH++}function -a2(a){return a.toUtf16()}function -HF(){function -a(a){if(a.charAt(0)===br)return[o,a.substring(1)];return}function +d=c.toString(b.base);if(b.prec>=0){b.filler=bI;var +f=b.prec-d.length;if(f>0)d=c2(f,m)+d}return gY(b,d)}var +mW=0;function +aE(){return mW++}function +a0(a){return a.toUtf16()}function +dU(){return typeof +y.process!=="undefined"&&typeof +y.process.versions!=="undefined"&&typeof +y.process.versions.node!=="undefined"}function +IJ(){function +a(a){if(a.charAt(0)===bq)return[k,a.substring(1)];return}function b(c){var -g=/^([a-zA-Z]:|[\\/]{2}[^\\/]+[\\/]+[^\\/]+)?([\\/])?([\s\S]*?)$/,a=g.exec(c),b=a[1]||o,e=Boolean(b&&b.charAt(1)!==":");if(Boolean(a[2]||e)){var -d=a[1]||o,f=a[2]||o;return[d,c.substring(d.length+f.length)]}return}return B.process&&B.process.platform?B.process.platform==="win32"?b:a:a}var -g0=HF();function -mL(a){return a.slice(-1)!==br?a+br:a}if(B.process&&B.process.cwd)var -dK=B.process.cwd().replace(/\\/g,br);else +g=/^([a-zA-Z]:|[\\/]{2}[^\\/]+[\\/]+[^\\/]+)?([\\/])?([\s\S]*?)$/,a=g.exec(c),b=a[1]||k,e=Boolean(b&&b.charAt(1)!==":");if(Boolean(a[2]||e)){var +d=a[1]||k,f=a[2]||k;return[d,c.substring(d.length+f.length)]}return}return dU()&&y.process&&y.process.platform?y.process.platform==="win32"?b:a:a}var +hf=IJ();function +m0(a){return a.slice(-1)!==bq?a+bq:a}if(dU()&&y.process&&y.process.cwd)var +dN=y.process.cwd().replace(/\\/g,bq);else var -dK="/static";dK=mL(dK);function -Hb(a){a=a2(a);if(!g0(a))a=dK+a;var -e=g0(a),d=e[1].split(br),b=[];for(var +dN="/static";dN=m0(dN);function +If(a){a=a0(a);if(!hf(a))a=dN+a;var +e=hf(a),d=e[1].split(bq),b=[];for(var c=0;c1)b.pop();break;case".":break;default:b.push(d[c]);break}b.unshift(e[0]);b.orig=a;return b}function -Hx(e){for(var -f=o,b=f,a,h,c=0,g=e.length;cf9){b.substr(0,1);f+=b;b=o;f+=e.slice(c,d)}else -b+=e.slice(c,d);if(d==g)break;c=d}if(a>6);b+=String.fromCharCode(a$|a&cD)}else -if(a<0xd800||a>=k1)b+=String.fromCharCode(iU|a>>12,a$|a>>6&cD,a$|a&cD);else -if(a>=0xdbff||c+1==g||(h=e.charCodeAt(c+1))k1)b+="\xef\xbf\xbd";else{c++;a=(a<<10)+h-0x35fdc00;b+=String.fromCharCode(kc|a>>18,a$|a>>12&cD,a$|a>>6&cD,a$|a&cD)}if(b.length>dC){b.substr(0,1);f+=b;b=o}}return f+b}function -GJ(a){var -b=9;if(!mN(a))b=8,a=Hx(a);return new -bv(b,a,a.length)}function -aP(a){return GJ(a)}var -HR=[jv,mb,kp,iM,kk,k0,jL,ld,f$,jO,lc,kd,le,jK,iw,me,iL,iT,j6,kK,eQ,i7,l0,li,lJ,kD,eI,gz,i3,i2,j0,l3,lY,l7,jw,iW,ji,kU,l$,ka,jB,kn,iS,ke,iz,lg,lU,jz,i5,j9,kE,jR,kO,kj,lf,jN,jx,lB,k8,lN,k4,kZ,kY,iR,jE,jd,lp,lG];function -cp(d,f,e,a){var -b=HR.indexOf(d);if(b<0){if(a==null)a=-9999;b=[0,a]}var -c=[b,aP(f||o),aP(e||o)];return c}var -mF={};function -bQ(a){return mF[a]}function -co(b,a){throw[0,b].concat(a)}function -GI(a){return new -bv(4,a,a.length)}function -S(a){gU(ag.Sys_error,a)}function -Hl(a){a=bf(a);S(a+en)}function -a3(a){return a.l}function -mh(){}function +Iz(e){for(var +f=k,b=f,a,h,c=0,g=e.length;cgk){b.substr(0,1);f+=b;b=k;f+=e.slice(c,d)}else +b+=e.slice(c,d);if(d==g)break;c=d}if(a>6);b+=String.fromCharCode(a8|a&cH)}else +if(a<0xd800||a>=le)b+=String.fromCharCode(jb|a>>12,a8|a>>6&cH,a8|a&cH);else +if(a>=0xdbff||c+1==g||(h=e.charCodeAt(c+1))le)b+="\xef\xbf\xbd";else{c++;a=(a<<10)+h-0x35fdc00;b+=String.fromCharCode(ku|a>>18,a8|a>>12&cH,a8|a>>6&cH,a8|a&cH)}if(b.length>dE){b.substr(0,1);f+=b;b=k}}return f+b}function +HO(a){var +b=9;if(!m2(a))b=8,a=Iz(a);return new +bu(b,a,a.length)}function +aQ(a){return HO(a)}var +IY=[jN,mr,kG,i4,kB,ld,j3,lr,gm,j6,lq,kv,ls,j2,iO,mu,i3,ja,km,k2,e2,jo,me,lw,lZ,kV,eT,gO,jk,jj,kg,mh,mc,ml,jO,je,jA,k_,mp,ks,jT,kE,i$,kw,iR,lu,l_,jR,jm,kp,kW,j9,k6,kA,lt,j5,jP,lQ,ll,l3,li,lc,lb,i_,jW,jv,lD,lV];function +cs(d,f,e,a){var +b=IY.indexOf(d);if(b<0){if(a==null)a=-9999;b=[0,a]}var +c=[b,aQ(f||k),aQ(e||k)];return c}var +mU={};function +bQ(a){return mU[a]}function +cr(b,a){throw[0,b].concat(a)}function +HN(a){return new +bu(4,a,a.length)}function +T(a){g$(ab.Sys_error,a)}function +Ip(a){T(a+et)}function +a1(a){return a.l}function +mx(){}function at(a){this.data=a}at.prototype=new -mh();at.prototype.truncate=function(a){var -b=this.data;this.data=af(a|0);b7(b,0,this.data,0,a)};at.prototype.length=function(){return a3(this.data)};at.prototype.write=function(b,d,g,a){var +mx();at.prototype.truncate=function(a){var +b=this.data;this.data=ai(a|0);b9(b,0,this.data,0,a)};at.prototype.length=function(){return a1(this.data)};at.prototype.write=function(b,d,g,a){var c=this.length();if(b+a>=c){var -e=af(b+a),f=this.data;this.data=e;b7(f,0,this.data,0,c)}b8(d,g,this.data,b,a);return 0};at.prototype.read=function(c,a,d,b){var -e=this.length();b7(this.data,c,a,d,b);return 0};at.prototype.read_one=function(a){return b9(this.data,a)};at.prototype.close=function(){};at.prototype.constructor=at;function -aJ(b,a){this.content={};this.root=b;this.lookupFun=a}aJ.prototype.nm=function(a){return this.root+a};aJ.prototype.create_dir_if_needed=function(d){var -c=d.split(br),b=o;for(var -a=0;a>1|1;if(h=0)}function -gK(d,b){var +a=c}fd[d]=a+1;return h==b[a+1]?b[a]:0}function +mO(a,b){return+(cY(a,b,false)>=0)}function +g1(d,b){var e=b.length,a,c;for(a=0;a+4<=e;a+=4){c=b.charCodeAt(a)|b.charCodeAt(a+1)<<8|b.charCodeAt(a+2)<<16|b.charCodeAt(a+3)<<24;d=av(d,c)}c=0;switch(e&3){case 3:c=b.charCodeAt(a+2)<<16;case 2:c|=b.charCodeAt(a+1)<<8;case 1:c|=b.charCodeAt(a);d=av(d,c)}d^=e;return d}function -GV(a,b){return gK(a,bf(b))}function -GS(d,b){var +H0(a,b){return g1(a,bw(b))}function +HX(d,b){var e=b.length,a,c;for(a=0;a+4<=e;a+=4){c=b[a]|b[a+1]<<8|b[a+2]<<16|b[a+3]<<24;d=av(d,c)}c=0;switch(e&3){case 3:c=b[a+2]<<16;case 2:c|=b[a+1]<<8;case 1:c|=b[a];d=av(d,c)}d^=e;return d}function -GR(a,b){switch(b.t&6){default:b_(b);case -0:a=gK(a,b.c);break;case -2:a=GS(a,b.c)}return a}function -GT(a){a^=a>>>16;a=by(a,0x85ebca6b|0);a^=a>>>13;a=by(a,0xc2b2ae35|0);a^=a>>>16;return a}function -GQ(j,l,n,m){var -f,g,h,d,c,b,a,e,i;d=l;if(d<0||d>cR)d=cR;c=j;b=n;f=[m];g=0;h=1;while(g0){a=f[g++];if(a&&a.caml_custom){if(cV[a.caml_custom]&&cV[a.caml_custom].hash){var -k=cV[a.caml_custom].hash(a);b=av(b,k);c--}}else +mR(a){switch(a.t&6){default:cn(a);case +0:return a.c;case +4:return a.c}}function +HW(b,c){var +a=mR(c);return typeof +a==="string"?g1(b,a):HX(b,a)}function +HY(a){a^=a>>>16;a=bc(a,0x85ebca6b|0);a^=a>>>13;a=bc(a,0xc2b2ae35|0);a^=a>>>16;return a}function +HV(j,l,n,m){var +f,g,h,d,c,b,a,e,i;d=l;if(d<0||d>cV)d=cV;c=j;b=n;f=[m];g=0;h=1;while(g0){a=f[g++];if(a&&a.caml_custom){if(cZ[a.caml_custom]&&cZ[a.caml_custom].hash){var +k=cZ[a.caml_custom].hash(a);b=av(b,k);c--}}else if(a instanceof Array&&a[0]===(a[0]|0))switch(a[0]){case 248:b=av(b,a[2]);c--;break;case 250:f[--g]=a[1];break;default:var o=a.length-1<<10|a[0];b=av(b,o);for(e=1,i=a.length;e=d)break;f[h++]=a[e]}break}else -if(dN(a)){b=GR(b,a);c--}else -if(e0(a)){b=GV(b,a);c--}else +if(dQ(a)){b=HW(b,a);c--}else +if(fb(a)){b=H0(b,a);c--}else if(typeof -a==="string"){b=gK(b,a);c--}else +a==="string"){b=g1(b,a);c--}else if(a===(a|0)){b=av(b,a+a+1);c--}else -if(a===+a){b=gJ(b,a);c--}}b=GT(b);return b&0x3FFFFFFF}function -GW(a,c,l){if(!isFinite(a)){if(isNaN(a))return aP(gr);return aP(a>0?lX:"-infinity")}var +if(a===+a){b=g0(b,a);c--}}b=HY(b);return b&0x3FFFFFFF}function +H1(a,c,l){if(!isFinite(a)){if(isNaN(a))return aQ(gE);return aQ(a>0?mb:"-infinity")}var i=a==0&&1/a==-Infinity?1:a>=0?0:1;if(i)a=-a;var d=0;if(a==0);else if(a<1)while(a<1&&d>-1022){a*=2;d--}else while(a>=2){a/=2;d++}var -j=d<0?o:bI,e=o;if(i)e=aC;else +j=d<0?k:bH,e=k;if(i)e=aD;else switch(l){case -43:e=bI;break;case -32:e=bJ;break;default:break}if(c>=0&&c<13){var +43:e=bH;break;case +32:e=bI;break;default:break}if(c>=0&&c<13){var g=Math.pow(2,c*4);a=Math.round(a*g)/g}var b=a.toString(16);if(c>=0){var -h=b.indexOf(bn);if(h<0)b+=bn+cY(c,k);else{var -f=h+1+c;if(b.length>24&bM,a>>31&bp)}function -G7(a){return a.toInt()}function -G1(a){return+a.isNeg()}function -G4(a){return a.neg()}function -GZ(g,c){var -a=gT(g);if(a.signedconv&&G1(c)){a.sign=-1;c=G4(c)}var -b=o,h=G5(a.base),f="0123456789abcdef";do{var -e=c.udivmod(h);c=e.quotient;b=f.charAt(G7(e.modulus))+b}while(!G2(c));if(a.prec>=0){a.filler=bJ;var -d=a.prec-b.length;if(d>0)b=cY(d,k)+b}return gH(a,b)}function -G6(a,b){return a.or(b)}function -eY(a){return a.toFloat()}function -G_(){return typeof -module!=="undefined"&&module&&module.exports?module.exports:B}function -cl(a){return a.slice(1)}function -G$(c){var +h=b.indexOf(bl);if(h<0)b+=bl+c2(c,m);else{var +f=h+1+c;if(b.length>24&bL,a>>31&bn)}function +Ia(a){return a.toInt()}function +H6(a){return+a.isNeg()}function +H9(a){return a.neg()}function +H4(g,c){var +a=g_(g);if(a.signedconv&&H6(c)){a.sign=-1;c=H9(c)}var +b=k,h=H_(a.base),f="0123456789abcdef";do{var +e=c.udivmod(h);c=e.quotient;b=f.charAt(Ia(e.modulus))+b}while(!H7(c));if(a.prec>=0){a.filler=bI;var +d=a.prec-b.length;if(d>0)b=c2(d,m)+b}return gY(a,b)}function +H$(a,b){return a.or(b)}function +e$(a){return a.toFloat()}function +co(a){return a.slice(1)}function +Id(c){var d=c.length,b=new Array(d+1);b[0]=0;for(var a=0;a0){var c=new Array(b);for(var -a=0;abt){a-=bt;b*=Math.pow(2,bt);if(a>bt){a-=bt;b*=Math.pow(2,bt)}}if(a<-bt){a+=bt;b*=Math.pow(2,-bt)}b*=Math.pow(2,a);return b}function -Ha(a,b){return+(cU(a,b,false)<=0)}function -gR(a,b){return+(cU(a,b,false)<0)}function -bP(a,d){if(a<0)dI();var +a=0;abs){a-=bs;b*=Math.pow(2,bs);if(a>bs){a-=bs;b*=Math.pow(2,bs)}}if(a<-bs){a+=bs;b*=Math.pow(2,-bs)}b*=Math.pow(2,a);return b}function +Ie(a,b){return+(cY(a,b,false)<=0)}function +g8(a,b){return+(cY(a,b,false)<0)}function +bP(a,d){if(a<0)dL();var a=a+1|0,b=new Array(a);b[0]=0;for(var c=1;c>>32-b,c)}function g(c,b,d,e,h,f,g){return a(b&d|~b&e,c,b,h,f,g)}function @@ -713,42 +717,41 @@ h(d,b,e,c,h,f,g){return a(b&c|e&~c,d,b,h,f,g)}function i(c,b,d,e,h,f,g){return a(b^d^e,c,b,h,f,g)}function j(c,b,d,e,h,f,g){return a(d^(b|~e),c,b,h,f,g)}function k(f,n){var -e=n;f[e>>2]|=a$<<8*(e&3);for(e=(e&~0x3)+8;(e&0x3F)<60;e+=4)f[(e>>2)-1]=0;f[(e>>2)-1]=n<<3;f[e>>2]=n>>29&0x1FFFFFFF;var +e=n;f[e>>2]|=a8<<8*(e&3);for(e=(e&~0x3)+8;(e&0x3F)<60;e+=4)f[(e>>2)-1]=0;f[(e>>2)-1]=n<<3;f[e>>2]=n>>29&0x1FFFFFFF;var k=[0x67452301,0xEFCDAB89,0x98BADCFE,0x10325476];for(e=0;e>8*m&0xFF;return o}return function(h,g,f){var -e=[];switch(h.t&6){default:b_(h);case -0:var -d=h.c;for(var +m=0;m<4;m++)o[e*4+m]=k[e]>>8*m&0xFF;return o}return function(i,g,f){var +e=[],h=mR(i);if(typeof +h==="string"){var +d=h;for(var a=0;a>2]=d.charCodeAt(b)|d.charCodeAt(b+1)<<8|d.charCodeAt(b+2)<<16|d.charCodeAt(b+3)<<24}for(;a>2]|=d.charCodeAt(a+g)<<8*(a&3);break;case -4:var -c=h.c;for(var +b=a+g;e[a>>2]=d.charCodeAt(b)|d.charCodeAt(b+1)<<8|d.charCodeAt(b+2)<<16|d.charCodeAt(b+3)<<24}for(;a>2]|=d.charCodeAt(a+g)<<8*(a&3)}else{var +c=h;for(var a=0;a>2]=c[b]|c[b+1]<<8|c[b+2]<<16|c[b+3]<<24}for(;a>2]|=c[a+g]<<8*(a&3)}return Hr(k(e,f))}}();function -Hd(c,b,a){return Hc(bO(c),b,a)}function -He(){return 0}var +b=a+g;e[a>>2]=c[b]|c[b+1]<<8|c[b+2]<<16|c[b+3]<<24}for(;a>2]|=c[a+g]<<8*(a&3)}return Iv(k(e,f))}}();function +Ih(c,b,a){return Ig(bO(c),b,a)}function +Ii(){return 0}var bx=new Array();function -cm(c){var -a=bx[c];if(!a.opened)S("Cannot flush a closed channel");if(!a.buffer||a.buffer==o)return 0;if(a.fd&&ag.fds[a.fd]&&ag.fds[a.fd].output){var -b=ag.fds[a.fd].output;switch(b.length){case -2:b(c,a.buffer);break;default:b(a.buffer)}}a.buffer=o;return 0}function -mJ(e,f){var -b=bx[e],d=a(f),c=G(d);b.file.write(b.offset,d,0,c);b.offset+=c;return 0}function -HA(a){var -a=gY(a),b=B;if(b.process&&b.process.stdout&&b.process.stdout.write)b.process.stderr.write(a);else{if(a.charCodeAt(a.length-1)==10)a=a.substr(0,a.length-1);var +cp(c){var +a=bx[c];if(!a.opened)T("Cannot flush a closed channel");if(!a.buffer||a.buffer==k)return 0;if(a.fd&&ab.fds[a.fd]&&ab.fds[a.fd].output){var +b=ab.fds[a.fd].output;switch(b.length){case +2:b(c,a.buffer);break;default:b(a.buffer)}}a.buffer=k;return 0}function +mY(e,f){var +b=bx[e],d=a(f),c=I(d);b.file.write(b.offset,d,0,c);b.offset+=c;return 0}function +ID(a){var +a=hd(a),b=y;if(b.process&&b.process.stdout&&b.process.stdout.write)b.process.stderr.write(a);else{if(a.charCodeAt(a.length-1)==10)a=a.substr(0,a.length-1);var c=b.console;c&&c.error&&c.error(a)}}function -HB(a){var -a=gY(a),b=B;if(b.process&&b.process.stdout&&b.process.stdout.write)b.process.stdout.write(a);else{if(a.charCodeAt(a.length-1)==10)a=a.substr(0,a.length-1);var +IE(a){var +a=hd(a),b=y;if(b.process&&b.process.stdout&&b.process.stdout.write)b.process.stdout.write(a);else{if(a.charCodeAt(a.length-1)==10)a=a.substr(0,a.length-1);var c=b.console;c&&c.log&&c.log(a)}}function -e6(c,e,d,a){if(ag.fds===undefined)ag.fds=new +fh(c,e,d,a){if(ab.fds===undefined)ab.fds=new Array();a=a?a:{};var -b={};b.file=d;b.offset=a.append?d.length():0;b.flags=a;b.output=e;ag.fds[c]=b;if(!ag.fd_last_idx||c>ag.fd_last_idx)ag.fd_last_idx=c;return c}function -HT(c,b,g){var +b={};b.file=d;b.offset=a.append?d.length():0;b.flags=a;b.output=e;ab.fds[c]=b;if(!ab.fd_last_idx||c>ab.fd_last_idx)ab.fd_last_idx=c;return c}function +I0(c,b,g){var a={};while(b){switch(b[1]){case 0:a.rdonly=1;break;case 1:a.wronly=1;break;case @@ -758,141 +761,143 @@ a={};while(b){switch(b[1]){case 5:a.excl=1;break;case 6:a.binary=1;break;case 7:a.text=1;break;case -8:a.nonblock=1;break}b=b[2]}if(a.rdonly&&a.wronly)S(bf(c)+i$);if(a.text&&a.binary)S(bf(c)+jM);var -d=mS(c),e=d.device.open(d.rest,a),f=ag.fd_last_idx?ag.fd_last_idx:0;return e6(f+1,mJ,e,a)}e6(0,mJ,new -at(af(0)));e6(1,HB,new -at(af(0)));e6(2,HA,new -at(af(0)));function -Hf(a){var -c=ag.fds[a];if(c.flags.wronly)S(ku+a+" is writeonly");var -d=null;if(a==0&&mM()){var -e=require("fs");d=function(){return aP(e.readFileSync(0,iy))}}var +8:a.nonblock=1;break}b=b[2]}if(a.rdonly&&a.wronly)T(bw(c)+js);if(a.text&&a.binary)T(bw(c)+j4);var +d=m$(c),e=d.device.open(d.rest,a),f=ab.fd_last_idx?ab.fd_last_idx:0;return fh(f+1,mY,e,a)}fh(0,mY,new +at(ai(0)));fh(1,IE,new +at(ai(0)));fh(2,ID,new +at(ai(0)));function +Ij(a){var +c=ab.fds[a];if(c.flags.wronly)T(kL+a+" is writeonly");var +d=null;if(a==0&&dU()){var +e=require("fs");d=function(){return aQ(e.readFileSync(0,iQ))}}var b={file:c.file,offset:c.offset,fd:a,opened:true,out:false,refill:d};bx[b.fd]=b;return b.fd}function -mD(c){var -b=ag.fds[c];if(b.flags.rdonly)S(ku+c+" is readonly");var -a={file:b.file,offset:b.offset,fd:c,opened:true,out:true,buffer:o};bx[a.fd]=a;return a.fd}function -Hg(){var +mS(c){var +b=ab.fds[c];if(b.flags.rdonly)T(kL+c+" is readonly");var +a={file:b.file,offset:b.offset,fd:c,opened:true,out:true,buffer:k};bx[a.fd]=a;return a.fd}function +Ik(){var b=0;for(var a=0;a>>0)return a[0];else -if(dN(a))return ez;else -if(e0(a))return ez;else +if(dQ(a))return eG;else +if(fb(a))return eG;else if(a instanceof Function||typeof a=="function")return 247;else -if(a&&a.caml_custom)return cN;else -return a8}function -bb(b,c,a){if(a&&B.toplevelReloc)b=B.toplevelReloc(a);ag[b+1]=c;if(a)ag[a]=c}function -gV(a,b){mF[bf(a)]=b;return 0}function -Ho(a){a[2]=mH++;return a}function -gX(a,b){return mq(a,b)}function -Hq(){ah(gn)}function -E(b,a){if(a>>>0>=G(b))Hq();return cZ(b,a)}function -an(a,b){return 1-gX(a,b)}function -Hs(){return[0,a("js_of_ocaml")]}function -Ht(){return 0x7FFFFFFF/4|0}function -Hu(a){return 0}function -Hm(){e3(ag.Not_found)}function -mK(c){var -a=B,b=a2(c);if(a.process&&a.process.env&&a.process.env[b]!=undefined)return aP(a.process.env[b]);if(B.jsoo_static_env&&B.jsoo_static_env[b])return aP(B.jsoo_static_env[b]);Hm()}function -Hv(){var -a=new -Date().getTime(),b=a^kl*Math.random();return[0,b]}function -dQ(a){var +if(a&&a.caml_custom)return cR;else +return a6}function +a_(b,c,a){if(a&&y.toplevelReloc)b=y.toplevelReloc(a);ab[b+1]=c;if(a)ab[a]=c}function +ha(a,b){mU[bw(a)]=b;return 0}function +Is(a){a[2]=mW++;return a}function +hc(a,b){return mG(a,b)}function +Iu(){aj(gz)}function +H(b,a){if(a>>>0>=I(b))Iu();return c3(b,a)}function +ao(a,b){return 1-hc(a,b)}function +Iw(){return 0x7FFFFFFF/4|0}function +Iq(){fe(ab.Not_found)}function +mZ(c){var +a=y,b=a0(c);if(a.process&&a.process.env&&a.process.env[b]!=undefined)return aQ(a.process.env[b]);if(y.jsoo_static_env&&y.jsoo_static_env[b])return aQ(y.jsoo_static_env[b]);Iq()}function +Ix(){if(y.crypto)if(typeof +y.crypto.getRandomValues==="function"){var +a=new(y.Uint32Array)(1);y.crypto.getRandomValues(a);return[0,a[0]]}else +if(y.crypto.randomBytes==="function"){var +b=y.crypto.randomBytes(4),a=new(y.Uint32Array)(b);return[0,a[0]]}var +c=new +Date().getTime(),d=c^kC*Math.random();return[0,d]}function +dT(a){var b=1;while(a&&a.joo_tramp){a=a.joo_tramp.apply(null,a.joo_args);b++}return a}function -ao(b,a){return{joo_tramp:b,joo_args:a}}function -Hw(c,a){if(typeof +ap(b,a){return{joo_tramp:b,joo_args:a}}function +Iy(c,a){if(typeof a==="function"){c.fun=a;return 0}if(a.fun){c.fun=a.fun;return 0}var b=a.length;while(b--)c[b]=a[b];return 0}function -mI(a){return a}function +mX(a){return a}function d(a){if(a instanceof -Array)return a;if(B.RangeError&&a +Array)return a;if(y.RangeError&&a instanceof -B.RangeError&&a.message&&a.message.match(/maximum call stack/i))return mI(ag.Stack_overflow);if(B.InternalError&&a +y.RangeError&&a.message&&a.message.match(/maximum call stack/i))return mX(ab.Stack_overflow);if(y.InternalError&&a instanceof -B.InternalError&&a.message&&a.message.match(/too much recursion/i))return mI(ag.Stack_overflow);if(a +y.InternalError&&a.message&&a.message.match(/too much recursion/i))return mX(ab.Stack_overflow);if(a instanceof -B.Error&&bQ(gb))return[0,bQ(gb),a];return[0,ag.Failure,aP(String(a))]}var +y.Error&&bQ(go))return[0,bQ(go),a];return[0,ab.Failure,aQ(String(a))]}var u=function(A){"use strict";var -f=ci,ac=7,t=9007199254740992,J=q(t),O="0123456789abcdefghijklmnopqrstuvwxyz",g=B.BigInt,H=typeof +f=ck,ab=7,t=9007199254740992,I=q(t),N="0123456789abcdefghijklmnopqrstuvwxyz",g=IC.BigInt,G=typeof g==="function";function d(a,b,c,f){if(typeof a==="undefined")return d[0];if(typeof -b!=="undefined")return+b===10&&!c?e(a):ag(a,b,c,f);return e(a)}function -a(b,a){this.value=b;this.sign=a;this.isSmall=false;this.caml_custom=eH}a.prototype=Object.create(d.prototype);function -b(a){this.value=a;this.sign=a<0;this.isSmall=true;this.caml_custom=eH}b.prototype=Object.create(d.prototype);function -c(a){this.value=a;this.caml_custom=eH}c.prototype=Object.create(d.prototype);function -m(a){return-t0)return Math.floor(a);return Math.ceil(a)}function -P(g,h){var +O(g,h){var i=g.length,j=h.length,e=new Array(i),b=0,d=f,c,a;for(a=0;a=d?1:0;e[a]=c-b*d}while(a0)e.push(b);return e}function -v(a,b){if(a.length>=b.length)return P(a,b);return P(b,a)}function -C(g,a){var +v(a,b){if(a.length>=b.length)return O(a,b);return O(b,a)}function +B(g,a){var h=g.length,d=new Array(h),c=f,e,b;for(b=0;b0){d[b++]=a%c;a=Math.floor(a/c)}return d}a.prototype.add=function(f){var b=e(f);if(this.sign!==b.sign)return this.subtract(b.negate());var c=this.value,d=b.value;if(b.isSmall)return new -a(C(c,Math.abs(d)),this.sign);return new +a(B(c,Math.abs(d)),this.sign);return new a(v(c,d),this.sign)};a.prototype.plus=a.prototype.add;b.prototype.add=function(g){var f=e(g),c=this.value;if(c<0!==f.sign)return this.subtract(f.negate());var -d=f.value;if(f.isSmall){if(m(c+d))return new +d=f.value;if(f.isSmall){if(p(c+d))return new b(c+d);d=q(Math.abs(d))}return new -a(C(d,Math.abs(c)),c<0)};b.prototype.plus=b.prototype.add;c.prototype.add=function(a){return new +a(B(d,Math.abs(c)),c<0)};b.prototype.plus=b.prototype.add;c.prototype.add=function(a){return new c(this.value+e(a).value)};c.prototype.plus=c.prototype.add;function y(d,h){var g=d.length,i=h.length,c=new Array(g),e=0,j=f,a,b;for(a=0;a=0)c=y(e,f);else{c=y(f,e);d=!d}c=n(c);if(typeof +aj(e,f,d){var +c;if(o(e,f)>=0)c=y(e,f);else{c=y(f,e);d=!d}c=n(c);if(typeof c==="number"){if(d)c=-c;return new b(c)}return new a(c,d)}function -G(h,l,k){var +F(h,l,k){var j=h.length,c=new Array(j),i=-l,g=f,e,d;for(e=0;e=0)};b.prototype.minus=b.prototype.subtract;c.prototype.subtract=function(a){return new +b(a-d);return F(d,Math.abs(a),a>=0)};b.prototype.minus=b.prototype.subtract;c.prototype.subtract=function(a){return new c(this.value-e(a).value)};c.prototype.minus=c.prototype.subtract;a.prototype.negate=function(){return new a(this.value,!this.sign)};b.prototype.negate=function(){var c=this.sign,a=new @@ -901,58 +906,58 @@ c(-this.value)};a.prototype.abs=function(){return new a(this.value,false)};b.prototype.abs=function(){return new b(Math.abs(this.value))};c.prototype.abs=function(){return new c(this.value>=0?this.value:-this.value)};function -N(g,j){var -i=g.length,l=j.length,n=i+l,c=D(n),m=f,e,d,a,h,k;for(a=0;a0){e[b++]=a%c;a=Math.floor(a/c)}return e}function -Z(c,b){var +X(c,b){var a=[];while(b-->0)a.push(0);return a.concat(c)}function -E(b,c){var -a=Math.max(b.length,c.length);if(a<=30)return N(b,c);a=Math.ceil(a/2);var -f=b.slice(a),d=b.slice(0,a),i=c.slice(a),h=c.slice(0,a),e=E(d,h),g=E(f,i),k=E(v(d,f),v(h,i)),j=v(v(e,Z(y(y(k,e),g),a)),Z(g,2*a));r(j);return j}function -al(a,b){return-(jZ*a)-jZ*b+0.000015*a*b>0}a.prototype.multiply=function(j){var +D(b,c){var +a=Math.max(b.length,c.length);if(a<=30)return M(b,c);a=Math.ceil(a/2);var +f=b.slice(a),d=b.slice(0,a),i=c.slice(a),h=c.slice(0,a),e=D(d,h),g=D(f,i),k=D(v(d,f),v(h,i)),j=v(v(e,X(y(y(k,e),g),a)),X(g,2*a));r(j);return j}function +ak(a,b){return-(kf*a)-kf*b+0.000015*a*b>0}a.prototype.multiply=function(j){var h=e(j),c=this.value,b=h.value,i=this.sign!==h.sign,g;if(h.isSmall){if(b===0)return d[0];if(b===1)return this;if(b===-1)return this.negate();g=Math.abs(b);if(g=0;d--){j=g-1;if(b[d+h]!==l)j=Math.floor((b[d+h]*g+b[d+h-1])/l);c=0;e=0;m=i.length;for(a=0;ah)d=(d+1)*i;c=Math.ceil(d/m);do{j=w(b,c);if(p(j,a)<=0)break;c--}while(c);e.push(c);a=y(a,j)}e.reverse();return[n(e),n(a)]}function -Q(i,e){var -g=i.length,h=D(g),j=f,a,d,b,c;b=0;for(a=g-1;a>=0;--a){c=b*j+i[a];d=s(c/e);b=c-d*e;h[a]=d|0}return[h,b|0]}function +ac(q,k){var +r=q.length,h=k.length,g=f,s=C(k.length),l=k[h-1],o=Math.ceil(g/(2*l)),b=w(q,o),i=w(k,o),j,d,c,e,a,m,p;if(b.length<=r)b.push(0);i.push(0);l=i[h-1];for(d=r-h;d>=0;d--){j=g-1;if(b[d+h]!==l)j=Math.floor((b[d+h]*g+b[d+h-1])/l);c=0;e=0;m=i.length;for(a=0;ah)d=(d+1)*i;c=Math.ceil(d/m);do{j=w(b,c);if(o(j,a)<=0)break;c--}while(c);e.push(c);a=y(a,j)}e.reverse();return[n(e),n(a)]}function +P(i,e){var +g=i.length,h=C(g),j=f,a,d,b,c;b=0;for(a=g-1;a>=0;--a){c=b*j+i[a];d=s(c/e);b=c-d*e;h[a]=d|0}return[h,b|0]}function i(h,w){var -m,j=e(w);if(H)return[new +m,j=e(w);if(G)return[new c(h.value/j.value),new c(h.value%j.value)];var l=h.value,i=j.value,g;if(i===0)throw new Error("Cannot divide by zero");if(h.isSmall){if(j.isSmall)return[new b(s(l/i)),new b(l%i)];return[d[0],h]}if(j.isSmall){if(i===1)return[h,d[0]];if(i==-1)return[h.negate(),d[0]];var -r=Math.abs(i);if(rc.length?1:-1;for(var +o(b,c){if(b.length!==c.length)return b.length>c.length?1:-1;for(var a=b.length-1;a>=0;a--)if(b[a]!==c[a])return b[a]>c[a]?1:-1;return 0}a.prototype.compareAbs=function(d){var -a=e(d),b=this.value,c=a.value;if(a.isSmall)return 1;return p(b,c)};b.prototype.compareAbs=function(d){var +a=e(d),b=this.value,c=a.value;if(a.isSmall)return 1;return o(b,c)};b.prototype.compareAbs=function(d){var c=e(d),b=Math.abs(this.value),a=c.value;if(c.isSmall){a=Math.abs(a);return b===a?0:b>a?1:-1}return-1};c.prototype.compareAbs=function(c){var a=this.value,b=e(c).value;a=a>=0?a:-a;b=b>=0?b:-b;return a===b?0:a>b?1:-1};a.prototype.compare=function(b){if(b===Infinity)return-1;if(b===-Infinity)return 1;var -a=e(b),c=this.value,d=a.value;if(this.sign!==a.sign)return a.sign?1:-1;if(a.isSmall)return this.sign?-1:1;return p(c,d)*(this.sign?-1:1)};a.prototype.compareTo=a.prototype.compare;b.prototype.compare=function(c){if(c===Infinity)return-1;if(c===-Infinity)return 1;var +a=e(b),c=this.value,d=a.value;if(this.sign!==a.sign)return a.sign?1:-1;if(a.isSmall)return this.sign?-1:1;return o(c,d)*(this.sign?-1:1)};a.prototype.compareTo=a.prototype.compare;b.prototype.compare=function(c){if(c===Infinity)return-1;if(c===-Infinity)return 1;var b=e(c),a=this.value,d=b.value;if(b.isSmall)return a==d?0:a>d?1:-1;if(a<0!==b.sign)return a<0?-1:1;return a<0?1:-1};b.prototype.compareTo=b.prototype.compare;c.prototype.compare=function(a){if(a===Infinity)return-1;if(a===-Infinity)return 1;var b=this.value,c=e(a).value;return b===c?0:b>c?1:-1};c.prototype.compareTo=c.prototype.compare;a.prototype.equals=function(a){return this.compare(a)===0};c.prototype.eq=c.prototype.equals=b.prototype.eq=b.prototype.equals=a.prototype.eq=a.prototype.equals;a.prototype.notEquals=function(a){return this.compare(a)!==0};c.prototype.neq=c.prototype.notEquals=b.prototype.neq=b.prototype.notEquals=a.prototype.neq=a.prototype.notEquals;a.prototype.greater=function(a){return this.compare(a)>0};c.prototype.gt=c.prototype.greater=b.prototype.gt=b.prototype.greater=a.prototype.gt=a.prototype.greater;a.prototype.lesser=function(a){return this.compare(a)<0};c.prototype.lt=c.prototype.lesser=b.prototype.lt=b.prototype.lesser=a.prototype.lt=a.prototype.lesser;a.prototype.greaterOrEquals=function(a){return this.compare(a)>=0};c.prototype.geq=c.prototype.greaterOrEquals=b.prototype.geq=b.prototype.greaterOrEquals=a.prototype.geq=a.prototype.greaterOrEquals;a.prototype.lesserOrEquals=function(a){return this.compare(a)<=0};c.prototype.leq=c.prototype.lesserOrEquals=b.prototype.leq=b.prototype.lesserOrEquals=a.prototype.leq=a.prototype.lesserOrEquals;a.prototype.isEven=function(){return(this.value[0]&1)===0};b.prototype.isEven=function(){return(this.value&1)===0};c.prototype.isEven=function(){return(this.value&g(1))===g(0)};a.prototype.isOdd=function(){return(this.value[0]&1)===1};b.prototype.isOdd=function(){return(this.value&1)===1};c.prototype.isOdd=function(){return(this.value&g(1))===g(1)};a.prototype.isPositive=function(){return!this.sign};b.prototype.isPositive=function(){return this.value>0};c.prototype.isPositive=b.prototype.isPositive;a.prototype.isNegative=function(){return this.sign};b.prototype.isNegative=function(){return this.value<0};c.prototype.isNegative=b.prototype.isNegative;a.prototype.isUnit=function(){return false};b.prototype.isUnit=function(){return Math.abs(this.value)===1};c.prototype.isUnit=function(){return this.abs().value===g(1)};a.prototype.isZero=function(){return false};b.prototype.isZero=function(){return this.value===0};c.prototype.isZero=function(){return this.value===g(0)};a.prototype.isDivisibleBy=function(b){var a=e(b);if(a.isZero())return false;if(a.isUnit())return true;if(a.compareAbs(2)===0)return this.isEven();return this.mod(a).isZero()};c.prototype.isDivisibleBy=b.prototype.isDivisibleBy=a.prototype.isDivisibleBy;function -T(b){var +S(b){var a=b.abs();if(a.isUnit())return false;if(a.equals(2)||a.equals(3)||a.equals(5))return true;if(a.isEven()||a.isDivisibleBy(3)||a.isDivisibleBy(5))return false;if(a.lesser(49))return true}function -L(d,e){var +K(d,e){var g=d.prev(),c=g,h=0,f,i,b,a;while(c.isEven())c=c.divide(2),h++;next:for(b=0;b-t)return new b(c-1);return new -a(J,true)};c.prototype.prev=function(){return new +a(I,true)};c.prototype.prev=function(){return new c(this.value-g(1))};var h=[1];while(2*h[h.length-1]<=f)h.push(2*h[h.length-1]);var x=h.length,j=h[x-1];function -_(a){return Math.abs(a)<=f}a.prototype.shiftLeft=function(c){var -a=e(c).toJSNumber();if(!_(a))throw new -Error(String(a)+jp);if(a<0)return this.shiftRight(-a);var +Y(a){return Math.abs(a)<=f}a.prototype.shiftLeft=function(c){var +a=e(c).toJSNumber();if(!Y(a))throw new +Error(String(a)+jH);if(a<0)return this.shiftRight(-a);var b=this;if(b.isZero())return b;while(a>=x){b=b.multiply(j);a-=x-1}return b.multiply(h[a])};c.prototype.shiftLeft=b.prototype.shiftLeft=a.prototype.shiftLeft;a.prototype.shiftRight=function(d){var -a,b=e(d).toJSNumber();if(!_(b))throw new -Error(String(b)+jp);if(b<0)return this.shiftLeft(-b);var +a,b=e(d).toJSNumber();if(!Y(b))throw new +Error(String(b)+jH);if(b<0)return this.shiftLeft(-b);var c=this;while(b>=x){if(c.isZero()||c.isNegative()&&c.isUnit())return c;a=i(c,j);c=a[1].isNegative()?a[0].prev():a[0];b-=x-1}a=i(c,h[b]);return a[1].isNegative()?a[0].prev():a[0]};c.prototype.shiftRight=b.prototype.shiftRight=a.prototype.shiftRight;function -K(h,a,q){a=e(a);var +J(h,a,q){a=e(a);var m=h.isNegative(),p=a.isNegative(),l=m?h.not():h,o=p?a.not():a,b=0,c=0,k=null,n=null,f=[];while(!l.isZero()||!o.isZero()){k=i(l,j);b=k[1].toJSNumber();if(m)b=j-1-b;n=i(o,j);c=n[1].toJSNumber();if(p)c=j-1-c;l=k[0];o=n[0];f.push(q(b,c))}var g=q(m?1:0,p?1:0)!==0?u(-1):u(0);for(var -d=f.length-1;d>=0;d-=1)g=g.multiply(j).add(u(f[d]));return g}a.prototype.not=function(){return this.negate().prev()};c.prototype.not=b.prototype.not=a.prototype.not;a.prototype.and=function(a){return K(this,a,function(a,b){return a&b})};c.prototype.and=b.prototype.and=a.prototype.and;a.prototype.or=function(a){return K(this,a,function(a,b){return a|b})};c.prototype.or=b.prototype.or=a.prototype.or;a.prototype.xor=function(a){return K(this,a,function(a,b){return a^b})};c.prototype.xor=b.prototype.xor=a.prototype.xor;var -I=1<<30,ab=(f&-f)*(f&-f)|I;function -F(c){var +d=f.length-1;d>=0;d-=1)g=g.multiply(j).add(u(f[d]));return g}a.prototype.not=function(){return this.negate().prev()};c.prototype.not=b.prototype.not=a.prototype.not;a.prototype.and=function(a){return J(this,a,function(a,b){return a&b})};c.prototype.and=b.prototype.and=a.prototype.and;a.prototype.or=function(a){return J(this,a,function(a,b){return a|b})};c.prototype.or=b.prototype.or=a.prototype.or;a.prototype.xor=function(a){return J(this,a,function(a,b){return a^b})};c.prototype.xor=b.prototype.xor=a.prototype.xor;var +H=1<<30,aa=(f&-f)*(f&-f)|H;function +E(c){var a=c.value,b=typeof -a==="number"?a|I:typeof -a==="bigint"?a|g(I):a[0]+a[1]*f|ab;return b&-b}function -S(b,a){if(a.compareTo(b)<=0){var -f=S(b,a.square(a)),d=f.p,c=f.e,e=d.multiply(a);return e.compareTo(b)<=0?{p:e,e:c*2+1}:{p:d,e:c*2}}return{p:u(1),e:0}}a.prototype.bitLength=function(){var -a=this;if(a.compareTo(u(0))<0)a=a.negate().subtract(u(1));if(a.compareTo(u(0))===0)return u(0);return u(S(a,u(2)).e).add(u(1))};c.prototype.bitLength=b.prototype.bitLength=a.prototype.bitLength;function -U(a,b){a=e(a);b=e(b);return a.greater(b)?a:b}function -M(a,b){a=e(a);b=e(b);return a.lesser(b)?a:b}function -R(a,b){a=e(a).abs();b=e(b).abs();if(a.equals(b))return a;if(a.isZero())return b;if(b.isZero())return a;var -c=d[1],f,g;while(a.isEven()&&b.isEven()){f=M(F(a),F(b));a=a.divide(f);b=b.divide(f);c=c.multiply(f)}while(a.isEven())a=a.divide(F(a));do{while(b.isEven())b=b.divide(F(b));if(a.greater(b)){g=b;b=a;a=g}b=b.subtract(a)}while(!b.isZero());return c.isUnit()?a:a.multiply(c)}function -af(a,b){a=e(a).abs();b=e(b).abs();return a.divide(R(a,b)).multiply(b)}function -ai(a,b){a=e(a);b=e(b);var -g=M(a,b),n=U(a,b),h=n.subtract(g).add(1);if(h.isSmall)return g.add(Math.floor(Math.random()*h));var +a==="number"?a|H:typeof +a==="bigint"?a|g(H):a[0]+a[1]*f|aa;return b&-b}function +R(b,a){if(a.compareTo(b)<=0){var +f=R(b,a.square(a)),d=f.p,c=f.e,e=d.multiply(a);return e.compareTo(b)<=0?{p:e,e:c*2+1}:{p:d,e:c*2}}return{p:u(1),e:0}}a.prototype.bitLength=function(){var +a=this;if(a.compareTo(u(0))<0)a=a.negate().subtract(u(1));if(a.compareTo(u(0))===0)return u(0);return u(R(a,u(2)).e).add(u(1))};c.prototype.bitLength=b.prototype.bitLength=a.prototype.bitLength;function +T(a,b){a=e(a);b=e(b);return a.greater(b)?a:b}function +L(a,b){a=e(a);b=e(b);return a.lesser(b)?a:b}function +Q(a,b){a=e(a).abs();b=e(b).abs();if(a.equals(b))return a;if(a.isZero())return b;if(b.isZero())return a;var +c=d[1],f,g;while(a.isEven()&&b.isEven()){f=L(E(a),E(b));a=a.divide(f);b=b.divide(f);c=c.multiply(f)}while(a.isEven())a=a.divide(E(a));do{while(b.isEven())b=b.divide(E(b));if(a.greater(b)){g=b;b=a;a=g}b=b.subtract(a)}while(!b.isZero());return c.isUnit()?a:a.multiply(c)}function +ae(a,b){a=e(a).abs();b=e(b).abs();return a.divide(Q(a,b)).multiply(b)}function +ah(a,b){a=e(a);b=e(b);var +g=L(a,b),n=T(a,b),h=n.subtract(g).add(1);if(h.isSmall)return g.add(Math.floor(Math.random()*h));var j=z(h,f).value,l=[],k=true;for(var c=0;c=i){if(c===Y&&i===1)continue;throw new -Error(c+" is not a valid digit in base "+g+bn)}}g=e(g);var -h=[],j=b[0]===aC;for(a=j?1:0;a=i){if(c===_&&i===1)continue;throw new +Error(c+" is not a valid digit in base "+g+bl)}}g=e(g);var +h=[],j=b[0]===aD;for(a=j?1:0;a=0;a--){b=b.add(e[a].times(c));c=c.times(f)}return g?b.negate():b}function -aj(b,a){a=a||O;if(b=0){e=c.divmod(b);c=e.quotient;var d=e.remainder;if(d.isNegative()){d=b.minus(d).abs();c=c.next()}g.push(d.toJSNumber())}g.push(c.toJSNumber());return{value:g.reverse(),isNegative:f}}function -aa(d,c,b){var -a=z(d,c);return(a.isNegative?aC:o)+a.value.map(function(a){return aj(a,b)}).join(o)}a.prototype.toArray=function(a){return z(this,a)};b.prototype.toArray=function(a){return z(this,a)};c.prototype.toArray=function(a){return z(this,a)};a.prototype.toString=function(a,f){if(a===A)a=10;if(a!==10)return aa(this,a,f);var +$(d,c,b){var +a=z(d,c);return(a.isNegative?aD:k)+a.value.map(function(a){return ai(a,b)}).join(k)}a.prototype.toArray=function(a){return z(this,a)};b.prototype.toArray=function(a){return z(this,a)};c.prototype.toArray=function(a){return z(this,a)};a.prototype.toString=function(a,f){if(a===A)a=10;if(a!==10)return $(this,a,f);var d=this.value,c=d.length,e=String(d[--c]),h="0000000",b;while(--c>=0){b=String(d[c]);e+=h.slice(b.length)+b}var -g=this.sign?aC:o;return g+e};b.prototype.toString=function(a,b){if(a===A)a=10;if(a!=10)return aa(this,a,b);return String(this.value)};c.prototype.toString=b.prototype.toString;c.prototype.toJSON=a.prototype.toJSON=b.prototype.toJSON=function(){return this.toString()};a.prototype.valueOf=function(){return parseInt(this.toString(),10)};a.prototype.toJSNumber=a.prototype.valueOf;b.prototype.valueOf=function(){return this.value};b.prototype.toJSNumber=b.prototype.valueOf;c.prototype.valueOf=c.prototype.toJSNumber=function(){return parseInt(this.toString(),10)};function -X(d){if(m(+d)){var -n=+d;if(n===s(n))return H?new -c(g(n)):new -b(n);throw new -Error(eM+d)}var -q=d[0]===aC;if(q)d=d.slice(1);var +g=this.sign?aD:k;return g+e};b.prototype.toString=function(a,b){if(a===A)a=10;if(a!=10)return $(this,a,b);return String(this.value)};c.prototype.toString=b.prototype.toString;c.prototype.toJSON=a.prototype.toJSON=b.prototype.toJSON=function(){return this.toString()};a.prototype.valueOf=function(){return parseInt(this.toString(),10)};a.prototype.toJSNumber=a.prototype.valueOf;b.prototype.valueOf=function(){return this.value};b.prototype.toJSNumber=b.prototype.valueOf;c.prototype.valueOf=c.prototype.toJSNumber=function(){return parseInt(this.toString(),10)};function +W(d){if(p(+d)){var +l=+d;if(l===s(l))return G?new +c(g(l)):new +b(l);throw new +Error(eY+d)}var +q=d[0]===aD;if(q)d=d.slice(1);var h=d.split(/e/i);if(h.length>2)throw new -Error(eM+h.join(eS));if(h.length===2){var -e=h[1];if(e[0]===bI)e=e.slice(1);e=+e;if(e!==s(e)||!m(e))throw new -Error(eM+e+" is not a valid exponent.");var -f=h[0],i=f.indexOf(bn);if(i>=0){e-=f.length-i-1;f=f.slice(0,i)+f.slice(i+1)}if(e<0)throw new +Error(eY+h.join(e5));if(h.length===2){var +e=h[1];if(e[0]===bH)e=e.slice(1);e=+e;if(e!==s(e)||!p(e))throw new +Error(eY+e+" is not a valid exponent.");var +f=h[0],i=f.indexOf(bl);if(i>=0){e-=f.length-i-1;f=f.slice(0,i)+f.slice(i+1)}if(e<0)throw new Error("Cannot include negative exponent part for integers");f+=new -Array(e+1).join(k);d=f}var +Array(e+1).join(m);d=f}var t=/^([0-9][0-9]*)$/.test(d);if(!t)throw new -Error(eM+d);if(H)return new -c(g(q?aC+d:d));var -p=[],j=d.length,o=ac,l=j-o;while(j>0){p.push(+d.slice(l,j));l-=o;if(l<0)l=0;j-=o}r(p);return new -a(p,q)}function -ah(a){if(H)return new -c(g(a));if(m(a)){if(a!==s(a))throw new +Error(eY+d);if(G)return new +c(g(q?aD+d:d));var +o=[],j=d.length,n=ab,k=j-n;while(j>0){o.push(+d.slice(k,j));k-=n;if(k<0)k=0;j-=n}r(o);return new +a(o,q)}function +ag(a){if(G)return new +c(g(a));if(p(a)){if(a!==s(a))throw new Error(a+" is not an integer.");return new -b(a)}return X(a.toString())}function +b(a)}return W(a.toString())}function e(a){if(typeof -a==="number")return ah(a);if(typeof -a==="string")return X(a);if(typeof +a==="number")return ag(a);if(typeof +a==="string")return W(a);if(typeof a==="bigint")return new c(a);return a}for(var -l=0;l0)d[-l]=e(-l)}d.one=d[1];d.zero=d[0];d.minusOne=d[-1];d.max=U;d.min=M;d.gcd=R;d.lcm=af;d.isInstance=function(d){return d +l=0;l0)d[-l]=e(-l)}d.one=d[1];d.zero=d[0];d.minusOne=d[-1];d.max=T;d.min=L;d.gcd=Q;d.lcm=ae;d.isInstance=function(d){return d instanceof a||d instanceof b||d instanceof -c};d.randBetween=ai;d.fromArray=function(b,a,c){return W(b.map(e),e(a||10),c)};return d}();function -aK(a){var +c};d.randBetween=ah;d.fromArray=function(b,a,c){return V(b.map(e),e(a||10),c)};return d}();function +aL(a){var b=a.toJSNumber()|0;if(a.equals(u(b)))return b;return a}function -HG(a){return aK(u(a).abs())}function -N(a,b){return aK(u(a).add(u(b)))}function -cq(a,b){return u(a).compare(u(b))}function -mO(b,a){a=u(a);if(a.equals(u(0)))cX();return aK(u(b).divide(u(a)))}function -HO(b,a){a=u(a);if(a.equals(u(0)))cX();return aK(u(b).mod(a))}function -mP(a,b){return[0,mO(a,b),HO(a,b)]}function -mQ(a,b){return mO(a,b)}function -HH(a,b){return u(a).equals(u(b))}function -HJ(a,b){return aK(u.gcd(u(a),u(b)).abs())}function -Hy(c,e,g){e=u(e);var +m3(a){return aL(u(a).abs())}function +m4(a,b){return aL(u(a).add(u(b)))}function +ct(a,b){return u(a).compare(u(b))}function +m5(b,a){a=u(a);if(a.equals(u(0)))c1();return aL(u(b).divide(u(a)))}function +IU(b,a){a=u(a);if(a.equals(u(0)))c1();return aL(u(b).mod(a))}function +m6(a,b){return[0,m5(a,b),IU(a,b)]}function +m7(a,b){return m5(a,b)}function +IK(a,b){return u(a).equals(u(b))}function +IM(a,b){return aL(u.gcd(u(a),u(b)).abs())}function +IA(c,e,g){e=u(e);var a=e.toArray(Math.pow(2,32));c.write(8,a.isNegative?1:0);var f=a.value.length,d=f*4;c.write(32,d);for(var -b=f-1;b>=0;b--){c.write(8,a.value[b]>>>0&a1);c.write(8,a.value[b]>>>8&a1);c.write(8,a.value[b]>>>16&a1);c.write(8,a.value[b]>>>24&a1)}g[0]=4*(1+((d+3)/4|0));g[1]=8*(1+((d+7)/8|0))}function -Hz(b,g){var +b=f-1;b>=0;b--){c.write(8,a.value[b]>>>0&aZ);c.write(8,a.value[b]>>>8&aZ);c.write(8,a.value[b]>>>16&aZ);c.write(8,a.value[b]>>>24&aZ)}g[0]=4*(1+((d+3)/4|0));g[1]=8*(1+((d+7)/8|0))}function +IB(b,g){var e;switch(b.read8u()){case 1:e=true;break;case -0:e=false;break;default:b$("input_value: z (malformed input)")}var +0:e=false;break;default:ca("input_value: z (malformed input)")}var f=b.read32u(),c=u(0);for(var d=0;d>>0);c=a.shiftLeft(d*32).add(c)}if(e)c=c.negate();g[0]=f+4;return aK(c)}function -HK(d){var +a=u(b.read8u());a=a.add(b.read8u()<<8);a=a.add(b.read8u()<<16);a=a.add(b.read8u()<<24>>>0);c=a.shiftLeft(d*32).add(c)}if(e)c=c.negate();g[0]=f+4;return aL(c)}function +IN(d){var b=u(d).toArray(Math.pow(2,32)),a=0;for(var c=0;c=48&&a<=57)return a-48;if(a>=97&&a<=cI)return a-97+10;if(a>=65&&a<=70)return a-65+10}var -e=0;if(a[e]==aC)e++;for(;e=c)ah("Z.of_substring_base: invalid digit")}return aK(u(a,c))}function -cr(d,a,b,c){a=bf(a);if(b!=0||c!=a.length){if(a.length-b=0?1:0}function -e7(a){a=u(a);if(!HI(a))e3(bQ(gf));var -b=u(kl),d=a.and(b).toJSNumber(),c=a.shiftRight(32).and(b).toJSNumber(),e=mB(d,c);return e}function -e8(){return new -Date().getTime()/a8}function -c2(e){var +if(d==lU||d=="X")c=16;else +if(d=="b"||d=="B")c=2;if(c!=10){a=a.substring(b+1);if(g==-1)a=aD+a}}}}if(a[0]==bH)a=a.substring(1);a=a.replace(/^0+/,k);if(a==aD||a==k)a=m;function +h(a){if(a>=48&&a<=57)return a-48;if(a>=97&&a<=cM)return a-97+10;if(a>=65&&a<=70)return a-65+10}var +e=0;if(a[e]==aD)e++;for(;e=c)aj("Z.of_substring_base: invalid digit")}return aL(u(a,c))}function +cu(d,a,b,c){a=bw(a);if(b!=0||c!=a.length){if(a.length-b=0?1:0}function +fi(a){a=u(a);if(!IL(a))fe(bQ(gr));var +b=u(kC),d=a.and(b).toJSNumber(),c=a.shiftRight(32).and(b).toJSNumber(),e=mP(d,c);return e}function +fj(){return new +Date().getTime()/a6}function +c5(e){var a=new -Date(e*a8),b=a.getTime(),d=new -Date(Date.UTC(a.getUTCFullYear(),0,1)).getTime(),c=Math.floor((b-d)/iY);return[0,a.getUTCSeconds(),a.getUTCMinutes(),a.getUTCHours(),a.getUTCDate(),a.getUTCMonth(),a.getUTCFullYear()-b3,a.getUTCDay(),c,false|0]}function -e9(){return 0}function -HS(h){var +Date(e*a6),b=a.getTime(),d=new +Date(Date.UTC(a.getUTCFullYear(),0,1)).getTime(),c=Math.floor((b-d)/jg);return[0,a.getUTCSeconds(),a.getUTCMinutes(),a.getUTCHours(),a.getUTCDate(),a.getUTCMonth(),a.getUTCFullYear()-b5,a.getUTCDay(),c,false|0]}function +fk(){return 0}function +IZ(h){var a=new -Date(h*a8),b=a.getTime(),e=new -Date(a.getFullYear(),0,1).getTime(),c=Math.floor((b-e)/iY),d=new +Date(h*a6),b=a.getTime(),e=new +Date(a.getFullYear(),0,1).getTime(),c=Math.floor((b-e)/jg),d=new Date(a.getFullYear(),0,1),f=new -Date(a.getFullYear(),6,1),g=Math.max(d.getTimezoneOffset(),f.getTimezoneOffset());return[0,a.getSeconds(),a.getMinutes(),a.getHours(),a.getDate(),a.getMonth(),a.getFullYear()-b3,a.getDay(),c,a.getTimezoneOffset()f)a+=eG;var +d=f;df)a+=eQ;var c=e[d];if(typeof c=="number")a+=c.toString();else if(c instanceof -bv)a+=ex+c.toString()+ex;else +bu)a+=eE+c.toString()+eE;else if(typeof -c=="string")a+=ex+c.toString()+ex;else -a+=lm}a+=")"}else -if(b[0]==O)a+=b[1];return a}function -mx(a){if(a +c=="string")a+=eE+c.toString()+eE;else +a+=lA}a+=")"}else +if(b[0]==N)a+=b[1];return a}function +mL(a){if(a instanceof -Array&&(a[0]==0||a[0]==O)){var -c=bQ(kL);if(c)c(a,false);else{var -d=GN(a),b=bQ(ix);if(b)b(0);B.console.error(gv+d+iN)}}else +Array&&(a[0]==0||a[0]==N)){var +c=bQ(k3);if(c)c(a,false);else{var +d=HT(a),b=bQ(iP);if(b)b(0);y.console.error(gJ+d+i6)}}else throw a}function -Hp(){var -a=B;if(a.process&&a.process.on)a.process.on("uncaughtException",function(b,c){mx(b);a.process.exit(2)});else -if(a.addEventListener)a.addEventListener("error",function(a){if(a.error)mx(a.error)})}Hp();function -c(a,b){return a.length==1?a(b):be(a,[b])}function -h(a,b,c){return a.length==2?a(b,c):be(a,[b,c])}function -R(a,b,c,d){return a.length==3?a(b,c,d):be(a,[b,c,d])}function -f4(a,b,c,d,e,f){return a.length==5?a(b,c,d,e,f):be(a,[b,c,d,e,f])}function -GB(a,b,c,d,e,f,g,h){return a.length==7?a(b,c,d,e,f,g,h):be(a,[b,c,d,e,f,g,h])}GO();var -e$=[O,a(km),-1],g6=[O,a(kM),-2],dT=[O,a(kQ),-3],g2=[O,a(ll),-4],g7=[O,a(jS),-6],aL=[O,a(ls),-7],g4=[O,a(iX),-8],g5=[O,a(lv),-9],J=[O,a(lR),-11],g8=[O,a(kA),gp],ht=[0,cj],GA=[4,0,0,0,[12,45,[4,0,0,0,0]]],fl=[0,[11,a('File "'),[2,0,[11,a('", line '),[4,0,0,0,[11,a(k5),[4,0,0,0,[12,45,[4,0,0,0,[11,a(": "),[2,0,0]]]]]]]]]],a('File "%s", line %d, characters %d-%d: %s')],cA=[0,0,0],el=[0,a(k$),a(k3),a(lw)];bb(11,g8,kA);bb(10,J,lR);bb(9,[O,a(jl),-10],jl);bb(8,g5,lv);bb(7,g4,iX);bb(6,aL,ls);bb(5,g7,jS);bb(4,[O,a(kR),-5],kR);bb(3,g2,ll);bb(2,dT,kQ);bb(1,g6,kM);bb(0,e$,km);var -m8=a("output_substring"),m5=a("%.12g"),m4=a(bn),m2=a("true"),m3=a("false"),mT=a("Stdlib.Exit"),mV=ca(0,0,lq),mX=ca(0,0,65520),mZ=ca(1,0,lq),m_=a("\\\\"),m$=a("\\'"),na=a("\\b"),nb=a("\\t"),nc=a("\\n"),nd=a("\\r"),m9=a("Char.chr"),nf=a("hd"),ni=a("String.blit / Bytes.blit_string"),nh=a("Bytes.blit"),ng=a("String.sub / Bytes.sub"),nk=a("String.contains_from / Bytes.contains_from"),nn=a("Array.blit"),nm=a("Array.sub"),ns=a("Map.remove_min_elt"),nt=[0,0,0,0],nu=[0,a("map.ml"),gm,10],nv=[0,0,0],no=a(es),np=a(es),nq=a(es),nr=a(es),nw=a("Stdlib.Queue.Empty"),ny=a("CamlinternalLazy.Undefined"),nF=a("Buffer.add_substring/add_subbytes"),nE=a("Buffer.add: cannot grow buffer"),nD=[0,a(lC),93,2],nC=[0,a(lC),94,2],nO=a("%c"),nP=a("%s"),nQ=a(kz),nR=a(iV),nS=a(lj),nT=a(kJ),nU=a("%f"),nV=a("%B"),nW=a("%{"),nX=a("%}"),nY=a("%("),nZ=a("%)"),n0=a("%a"),n1=a("%t"),n2=a("%?"),n3=a("%r"),n4=a("%_r"),n5=[0,a(aq),850,23],oe=[0,a(aq),814,21],n8=[0,a(aq),815,21],of=[0,a(aq),818,21],n9=[0,a(aq),819,21],og=[0,a(aq),822,19],n_=[0,a(aq),823,19],oh=[0,a(aq),826,22],n$=[0,a(aq),827,22],oi=[0,a(aq),831,30],oa=[0,a(aq),832,30],oc=[0,a(aq),836,26],n6=[0,a(aq),837,26],od=[0,a(aq),846,28],n7=[0,a(aq),847,28],ob=[0,a(aq),851,23],pk=a(jf),pi=[0,a(aq),1558,4],pj=a("Printf: bad conversion %["),pl=[0,a(aq),1626,39],pm=[0,a(aq),1649,31],pn=[0,a(aq),1650,31],po=a("Printf: bad conversion %_"),pp=a(ja),pq=a(jn),pr=a(ja),ps=a(jn),pg=a(gr),pe=a("neg_infinity"),pf=a(lX),pd=a(bn),oZ=a("%+nd"),o0=a("% nd"),o2=a("%+ni"),o3=a("% ni"),o4=a("%nx"),o5=a("%#nx"),o6=a("%nX"),o7=a("%#nX"),o8=a("%no"),o9=a("%#no"),oY=a("%nd"),o1=a(lj),o_=a("%nu"),oM=a("%+ld"),oN=a("% ld"),oP=a("%+li"),oQ=a("% li"),oR=a("%lx"),oS=a("%#lx"),oT=a("%lX"),oU=a("%#lX"),oV=a("%lo"),oW=a("%#lo"),oL=a("%ld"),oO=a(iV),oX=a("%lu"),oz=a("%+Ld"),oA=a("% Ld"),oC=a("%+Li"),oD=a("% Li"),oE=a("%Lx"),oF=a("%#Lx"),oG=a("%LX"),oH=a("%#LX"),oI=a("%Lo"),oJ=a("%#Lo"),oy=a("%Ld"),oB=a(kJ),oK=a("%Lu"),om=a("%+d"),on=a("% d"),op=a("%+i"),oq=a("% i"),or=a("%x"),os=a("%#x"),ot=a("%X"),ou=a("%#X"),ov=a("%o"),ow=a("%#o"),ol=a(gy),oo=a(kz),ox=a(jf),nG=a("@]"),nH=a("@}"),nI=a("@?"),nJ=a("@\n"),nK=a("@."),nL=a("@@"),nM=a("@%"),nN=a("@"),oj=a("CamlinternalFormat.Type_mismatch"),pw=a(o),px=[0,[11,a(eG),[2,0,[2,0,0]]],a(", %s%s")],pX=[0,[11,a(gv),[2,0,[12,10,0]]],a(lL)],pY=[0,[11,a("Fatal error in uncaught exception handler: exception "),[2,0,[12,10,0]]],a("Fatal error in uncaught exception handler: exception %s\n")],pW=a("Fatal error: out of memory in uncaught exception handler"),pU=[0,[11,a(gv),[2,0,[12,10,0]]],a(lL)],pP=[0,[2,0,[12,10,0]],a("%s\n")],pQ=[0,[11,a(i1),0],a(i1)],pH=a("Raised at"),pI=a("Re-raised at"),pJ=a("Raised by primitive operation at"),pK=a("Called from"),pL=a(" (inlined)"),pN=a(o),pM=[0,[2,0,[12,32,[2,0,[11,a(' in file "'),[2,0,[12,34,[2,0,[11,a(", line "),[4,0,0,0,[11,a(k5),GA]]]]]]]]]],a('%s %s in file "%s"%s, line %d, characters %d-%d')],pO=[0,[2,0,[11,a(" unknown location"),0]],a("%s unknown location")],pC=a("Out of memory"),pD=a("Stack overflow"),pE=a("Pattern matching failed"),pF=a("Assertion failed"),pG=a("Undefined recursive module"),py=[0,[12,40,[2,0,[2,0,[12,41,0]]]],a("(%s%s)")],pz=a(o),pA=a(o),pB=[0,[12,40,[2,0,[12,41,0]]],a("(%s)")],pv=[0,[4,0,0,0,0],a(gy)],pt=[0,[3,0,0],a("%S")],pu=a(lm),pR=[0,a(o),a("(Cannot print locations:\n bytecode executable program file not found)"),a("(Cannot print locations:\n bytecode executable program file appears to be corrupt)"),a("(Cannot print locations:\n bytecode executable program file has wrong magic number)"),a("(Cannot print locations:\n bytecode executable program file cannot be opened;\n -- too many open files. Try running with OCAMLRUNPARAM=b=2)")],p1=a("Fun.Finally_raised: "),pZ=a("Stdlib.Fun.Finally_raised"),p2=a(lF),Gy=a("OCAMLRUNPARAM"),Gw=a("CAMLRUNPARAM"),p3=a(o),qn=[3,0,3],qo=a(bn),qi=a(eT),qj=a("<\/"),qk=a(o),qe=a(eT),qf=a(gi),qg=a(o),qc=a("\n"),qb=[0,a(o)],p9=a(o),p_=a(o),p$=a(o),qa=a(o),p8=[0,a(o),0,a(o)],p7=a(o),p6=a("Stdlib.Format.String_tag"),qB=a(o),qG=a(jv),qI=a(mb),qJ=a(kp),qK=a(iM),qL=a(kk),qM=a(k0),qN=a(jL),qO=a(ld),qP=a(f$),qQ=a(jO),qR=a(lc),qS=a(kd),qT=a(le),qU=a(jK),qV=a(iw),qW=a(me),qX=a(iL),qY=a(iT),qZ=a(j6),q0=a(kK),q1=a(eQ),q2=a(i7),q3=a(l0),q4=a(li),q5=a(lJ),q6=a(kD),q7=a(eI),q8=a(gz),q9=a(i3),q_=a(i2),q$=a(j0),ra=a(l3),rb=a(lY),rc=a(l7),rd=a(jw),re=a(iW),rf=a(ji),rg=a(kU),rh=a(l$),ri=a(ka),rj=a(jB),rk=a(kn),rl=a(iS),rm=a(ke),rn=a(iz),ro=a(lg),rp=a(lU),rq=a(jz),rr=a(i5),rs=a(j9),rt=a(kE),ru=a(jR),rv=a(kO),rw=a(kj),rx=a(lf),ry=a(jN),rz=a(jx),rA=a(lB),rB=a(k8),rC=a(lN),rD=a(k4),rE=a(kZ),rF=a(kY),rG=a(iR),rH=a(jE),rI=a(jd),rJ=a(lp),rK=a(lG),rL=[0,[11,a("EUNKNOWNERR "),[4,0,0,0,0]],a("EUNKNOWNERR %d")],qH=[0,[11,a("Unix.Unix_error(Unix."),[2,0,[11,a(eG),[3,0,[11,a(eG),[3,0,[12,41,0]]]]]]],a("Unix.Unix_error(Unix.%s, %S, %S)")],qC=a(dE),qD=a(o),qE=a(o),qF=a(dE),rM=a("0.0.0.0"),rN=a("127.0.0.1"),Gv=a("::"),Gu=a("::1"),r3=a(o),r4=a(o),r_=[0,92],sa=a("\\( group not closed by \\)"),r$=[0,a(iD),gg,10],sb=a("[ class not closed by ]"),sc=a("spurious \\) in regular expression"),r6=a("too many r* or r+ where r is nullable"),r7=a(o),r8=a(o),r5=[0,a(iD),213,11],si=[0,a(kV),52,4],sh=[0,a(kV),58,34],sg=a("Not a valid time zone"),uu=a("Not a month"),us=a("Not a day"),up=a("from_business: bad week"),uq=a("from_business: bad date"),tC=[0,a(kF),jQ,4],tB=[0,a(kF),gE,4],tu=[0,-4713,12,31],tv=[0,k_,1,23],tw=[0,dy,10,14],tx=[0,dy,10,5],ts=a("Date.Out_of_bounds"),tt=a("Date.Undefined"),tS=a("Date.Period.Not_computable"),t1=[0,31,59,90,bY,f7,181,212,gx,273,304,334,ey],uy=[0,a(eL),429,6],ux=[0,a(eL),lz,4],uw=[0,a(eL),167,6],uv=[0,a(eL),67,4],uC=a("[a-zA-Z]+"),uI=ca(1,0,0),uD=a("Z.Overflow"),uF=a(gf),uM=a(o),uN=a("+inf"),uO=a("-inf"),uP=a(l4),uQ=a("undef"),uS=[0,a("q.ml"),486,25],uR=a("Q.of_string: invalid digit"),uK=a("impossible case"),uT=a("Runtime.EmptyError"),uU=a("Runtime.AssertionFailed"),uW=a("Runtime.ConflictError"),uY=a("Runtime.ImpossibleDate"),u0=a("Runtime.NoValueProvided"),FE=[0,a(a0),96,20,96,64,[0,a(a9),[0,a(aZ),[0,a(t),0]]]],FD=[0,a(aB),[0,a("allocations_familiales.avait_enfant_\xc3\xa0_charge_avant_1er_janvier_2012"),0]],FC=[0,a(aB),[0,a("allocations_familiales.enfants_\xc3\xa0_charge"),0]],FB=[0,a(aB),[0,a("allocations_familiales.date_courante"),0]],FA=[0,a(aB),[0,a("allocations_familiales.r\xc3\xa9sidence"),0]],Fz=[0,a(aB),[0,a("allocations_familiales.ressources_m\xc3\xa9nage"),0]],Fy=[0,a(a0),93,20,93,72,[0,a(a9),[0,a(aZ),[0,a(t),0]]]],Fx=[0,a(aB),[0,a("allocations_familiales.personne_charge_effective_permanente_remplit_titre_I"),0]],Fw=[0,a(a0),90,20,90,67,[0,a(a9),[0,a(aZ),[0,a(t),0]]]],Fv=[0,a(aB),[0,a("allocations_familiales.personne_charge_effective_permanente_est_parent"),0]],Fr=[0,0],Fs=[1,0],Ft=[2,0],Fc=[0,a(a0),72,12,72,25,[0,a(a9),[0,a(aZ),[0,a(t),0]]]],Fd=[0,a(aB),[0,a(eK),0]],Fe=[0,a(a0),73,12,73,19,[0,a(a9),[0,a(aZ),[0,a(t),0]]]],Ff=[0,a(aB),[0,a(lW),0]],Fg=[0,a(a0),76,12,76,29,[0,a(a9),[0,a(aZ),[0,a(t),0]]]],Fh=[0,a(aB),[0,a(kq),0]],Fi=[0,a(a0),77,12,77,21,[0,a(a9),[0,a(aZ),[0,a(t),0]]]],Fj=[0,a(aB),[0,a(eR),0]],Fk=[0,a(a0),79,12,79,59,[0,a(a9),[0,a(aZ),[0,a(t),0]]]],Fl=[0,a(aB),[0,a(lV),0]],Fm=[0,a(a0),80,12,80,64,[0,a(a9),[0,a(aZ),[0,a(t),0]]]],Fn=[0,a(aB),[0,a(iC),0]],Fo=[0,a(a0),81,12,81,56,[0,a(a9),[0,a(aZ),[0,a(t),0]]]],Fp=[0,a(aB),[0,a(j_),0]],Fq=[0,a(a0),74,12,74,28,[0,a(a9),[0,a(aZ),[0,a(t),0]]]],Fu=[0,a(aB),[0,a(kt),0]],FF=[0,a(aB),[0,a(iP),[0,a(e),0]]],FG=[0,a(aB),[0,a(iP),[0,a(e),0]]],FH=[0,a(a0),78,12,78,25,[0,a(a9),[0,a(aZ),[0,a(t),0]]]],FI=[0,a(aB),[0,a(jh),0]],EH=[0,a(e),[0,a(dv),[0,a(ay),0]]],EI=[0,a(e),[0,a(dv),0]],EJ=[0,a(e),[0,a(dv),[0,a(aA),0]]],EK=[0,a(e),[0,a(dv),0]],Er=[0,a(e),[0,a(bL),[0,a(ay),0]]],Es=[0,a(e),[0,a(bL),0]],Et=[0,a(e),[0,a(bL),[0,a(aA),0]]],Eu=[0,a(e),[0,a(bL),0]],Ev=a(cG),EA=a(kv),EB=a(dD),Ew=[0,a(e),[0,a(dr),[0,a(ay),0]]],Ex=[0,a(e),[0,a(dr),0]],Ey=[0,a(e),[0,a(dr),[0,a(aA),0]]],Ez=[0,a(e),[0,a(dr),0]],Eq=[0,a(q),eA,12,eA,50,[0,a(p),0]],Eh=a(a_),Ei=[0,a(X),272,5,274,41,[0,a(cM),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],Ej=a(a_),Ek=a(cG),El=a(a_),Ec=a(a_),Ed=[0,a(X),262,5,kg,42,[0,a(cM),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],Ee=a(a_),Ef=a(cG),Eg=a(a_),Eb=[0,a(X),lo,14,lo,55,[0,a(cM),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],Ea=a(k),D2=[0,a(e),[0,a(Z),[0,a(ay),0]]],D3=[0,a(e),[0,a(Z),0]],D4=[0,a(e),[0,a(Z),[0,a(aA),0]]],D5=[0,a(e),[0,a(Z),0]],D6=a(Y),D7=a(f_),D8=[0,a(X),382,5,385,23,[0,a(eO),[0,a(b4),[0,a(dp),[0,a(bN),[0,a(W),[0,a(x),0]]]]]]],D9=a("0.0567"),DT=[0,a(e),[0,a(Z),[0,a(ay),0]]],DU=[0,a(e),[0,a(Z),0]],DV=[0,a(e),[0,a(Z),[0,a(aA),0]]],DW=[0,a(e),[0,a(Z),0]],DX=a(Y),DY=a("11"),DZ=a(f_),D0=[0,a(X),373,5,f6,42,[0,a(eO),[0,a(b4),[0,a(dp),[0,a(bN),[0,a(W),[0,a(x),0]]]]]]],D1=a("0.0369"),DS=[0,a(X),22,14,22,40,[0,a(aV),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],DO=[0,a(e),[0,a(dw),[0,a(ay),0]]],DP=[0,a(e),[0,a(dw),0]],DQ=[0,a(e),[0,a(dw),[0,a(aA),0]]],DR=[0,a(e),[0,a(dw),0]],DN=[0,a(q),em,12,em,38,[0,a(p),0]],DJ=[8,0],DK=[0,a(v),lD,5,lD,24,[0,a(dB),[0,a(K),[0,a(L),[0,a(t),0]]]]],DH=a(Y),DI=[0,a(X),350,5,351,69,[0,a(eO),[0,a(b4),[0,a(dp),[0,a(bN),[0,a(W),[0,a(x),0]]]]]]],DG=[0,a(X),18,14,18,34,[0,a(aV),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],Dz=[0,a(e),[0,a(dA),[0,a(ay),0]]],DA=[0,a(e),[0,a(dA),0]],DB=[0,a(e),[0,a(dA),[0,a(aA),0]]],DC=[0,a(e),[0,a(dA),0]],DD=a(Y),Dq=[0,a(e),[0,a(Z),[0,a(ay),0]]],Dr=[0,a(e),[0,a(Z),0]],Ds=[0,a(e),[0,a(Z),[0,a(aA),0]]],Dt=[0,a(e),[0,a(Z),0]],Du=[0,a(a0),27,5,27,44,[0,a("R\xc3\xa8gles diverses"),[0,a(aZ),[0,a(t),0]]]],Dv=a(k),Dk=[0,a(e),[0,a(Z),[0,a(ay),0]]],Dl=[0,a(e),[0,a(Z),0]],Dm=[0,a(e),[0,a(Z),[0,a(aA),0]]],Dn=[0,a(e),[0,a(Z),0]],Do=[0,a(X),cL,3,cL,41,[0,a(aV),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],Dp=a("0.04"),De=[0,a(e),[0,a(Z),[0,a(ay),0]]],Df=[0,a(e),[0,a(Z),0]],Dg=[0,a(e),[0,a(Z),[0,a(aA),0]]],Dh=[0,a(e),[0,a(Z),0]],Di=[0,a(X),95,3,96,44,[0,a(aV),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],Dj=a(jo),C_=[0,a(e),[0,a(Z),[0,a(ay),0]]],C$=[0,a(e),[0,a(Z),0]],Da=[0,a(e),[0,a(Z),[0,a(aA),0]]],Db=[0,a(e),[0,a(Z),0]],Dc=[0,a(X),55,3,55,41,[0,a(aV),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],Dd=a(f5),C9=[0,a(o),0,1,0,1,0],C8=[0,a(q),eJ,12,eJ,48,[0,a(p),0]],CY=[0,a(X),cQ,3,cQ,41,[0,a(aV),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],CZ=a(Y),C0=a(jo),C1=a(k),CU=[0,a(X),74,3,75,44,[0,a(aV),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],CV=a(Y),CW=a(f5),CX=a(k),CQ=[0,a(X),35,3,35,41,[0,a(aV),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],CR=a(Y),CS=a(lP),CT=a(k),CP=[0,a(o),0,1,0,1,0],CI=[0,a(X),cQ,3,cQ,41,[0,a(aV),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],CJ=a(az),CK=a(az),CL=a("0.1025"),CM=a(k),CD=[0,a(X),74,3,75,44,[0,a(aV),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],CE=a(az),CF=a(az),CG=a("0.205"),CH=a(k),Cy=[0,a(X),35,3,35,41,[0,a(aV),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],Cz=a(az),CA=a(az),CB=a("0.41"),CC=a(k),Cx=[0,a(o),0,1,0,1,0],Ct=[0,a(X),gx,5,gx,43,[0,a(cM),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],Cu=a("0.0559"),Cr=[0,a(X),229,5,lz,46,[0,a(cM),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],Cs=a("0.1117"),Cp=[0,a(X),js,5,js,43,[0,a(cM),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],Cq=a("0.20234"),Co=[0,a(o),0,1,0,1,0],Ch=a(a_),Ci=[0,a(X),170,5,171,68,[0,a(aV),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],Cj=a(a_),Ck=a(cG),Cl=a(a_),Cc=a(a_),Cd=[0,a(X),162,5,163,68,[0,a(aV),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],Ce=a(a_),Cf=a(cG),Cg=a(a_),Cb=[0,a(X),iv,14,iv,34,[0,a(aV),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],Ca=a(k),B$=[0,a(q),eu,12,eu,32,[0,a(p),0]],B4=[0,a(e),[0,a(bo),[0,a(ay),0]]],B5=[0,a(e),[0,a(bo),0]],B6=[0,a(e),[0,a(bo),[0,a(aA),0]]],B7=[0,a(e),[0,a(bo),0]],B8=[0,a(am),313,5,lH,58,[0,a(lK),[0,a(H),[0,a(I),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],BV=[0,a(e),[0,a(dF),[0,a(ay),0]]],BW=[0,a(e),[0,a(dF),0]],BX=[0,a(e),[0,a(dF),[0,a(aA),0]]],BY=[0,a(e),[0,a(dF),0]],BZ=[0,a(e),[0,a(bo),[0,a(ay),0]]],B0=[0,a(e),[0,a(bo),0]],B1=[0,a(e),[0,a(bo),[0,a(aA),0]]],B2=[0,a(e),[0,a(bo),0]],B3=[0,a(am),299,5,300,58,[0,a(lK),[0,a(H),[0,a(I),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],BU=[0,a(q),cL,12,cL,35,[0,a(p),0]],E4=[8,0],E5=a(Y),E6=[0,a(v),344,5,345,72,[0,a(dB),[0,a(K),[0,a(L),[0,a(t),0]]]]],E2=a(Y),E3=[0,a(am),406,5,407,72,[0,a(gj),[0,a(b4),[0,a(eE),[0,a(bN),[0,a(al),[0,a(x),0]]]]]]],E0=a(az),E1=[0,a(am),ev,5,ev,70,[0,a(mg),[0,a(H),[0,a(I),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],BG=[0,a(e),[0,a(bL),[0,a(ay),0]]],BH=[0,a(e),[0,a(bL),0]],BI=[0,a(e),[0,a(bL),[0,a(aA),0]]],BJ=[0,a(e),[0,a(bL),0]],BK=a(cG),BL=a(kv),BM=a(dD),Bx=[0,a(v),l9,5,l9,49,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],By=a(k),Bz=a("5728"),BA=a(k),Bt=[0,a(v),497,5,498,53,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],Bu=a(k),Bv=a("0.0717"),Bw=a(k),Bp=[0,a(v),489,5,490,53,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],Bq=a(k),Br=a("0.0847"),Bs=a(k),Bl=[0,a(v),481,5,482,53,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],Bm=a(k),Bn=a("0.0976"),Bo=a(k),Bh=[0,a(v),473,5,474,53,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],Bi=a(k),Bj=a("0.115"),Bk=a(k),Bd=[0,a(v),465,5,466,53,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],Be=a(k),Bf=a("0.1163"),Bg=a(k),A$=[0,a(v),457,5,458,53,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],Ba=a(k),Bb=a("0.122"),Bc=a(k),A7=[0,a(v),449,5,450,53,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],A8=a(k),A9=a("0.1278"),A_=a(k),A3=[0,a(v),441,5,442,53,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],A4=a(k),A5=a("0.1335"),A6=a(k),AZ=[0,a(v),433,5,434,53,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],A0=a(k),A1=a("0.1393"),A2=a(k),AV=[0,a(v),425,5,jr,53,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],AW=a(k),AX=a("0.145"),AY=a(k),AU=[0,a(v),l_,14,l_,57,[0,a(dB),[0,a(K),[0,a(L),[0,a(t),0]]]]],AR=a(k),AS=a(jj),AT=a(k),AL=[0,a(v),j$,5,j$,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],AM=a(Y),AN=a("0.3068"),AO=a(k),AH=[0,a(v),jt,5,jt,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],AI=a(Y),AJ=a("0.2936"),AK=a(k),AD=[0,a(v),jU,5,jU,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],AE=a(Y),AF=a("0.284"),AG=a(k),Az=[0,a(v),la,5,la,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],AA=a(Y),AB=a("0.2672"),AC=a(k),Av=[0,a(v),jk,5,jk,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],Aw=a(Y),Ax=a("0.273"),Ay=a(k),Ar=[0,a(v),j4,5,j4,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],As=a(Y),At=a("0.2555"),Au=a(k),An=[0,a(v),jV,5,jV,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],Ao=a(Y),Ap=a("0.2496"),Aq=a(k),Aj=[0,a(v),lA,5,lA,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],Ak=a(Y),Al=a("0.2437"),Am=a(k),Af=[0,a(v),gg,5,gg,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],Ag=a(Y),Ah=a("0.2379"),Ai=a(k),Ab=[0,a(v),kX,5,kX,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],Ac=a(Y),Ad=a("0.232"),Ae=a(k),Aa=[0,a(v),lI,14,lI,58,[0,a(dB),[0,a(K),[0,a(L),[0,a(t),0]]]]],z9=a(Y),z_=a(lP),z$=a(k),z3=[0,a(v),lE,5,lE,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],z4=a(az),z5=a("0.143"),z6=a(k),zZ=[0,a(v),ky,5,ky,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],z0=a(az),z1=a("0.1259"),z2=a(k),zV=[0,a(v),ks,5,ks,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],zW=a(az),zX=a("0.1089"),zY=a(k),zR=[0,a(v),iA,5,iA,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],zS=a(az),zT=a("0.0918"),zU=a(k),zN=[0,a(v),lZ,5,lZ,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],zO=a(az),zP=a("0.0842"),zQ=a(k),zJ=[0,a(v),l6,5,l6,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],zK=a(az),zL=a("0.0766"),zM=a(k),zF=[0,a(v),lT,5,lT,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],zG=a(az),zH=a("0.069"),zI=a(k),zB=[0,a(v),je,5,je,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],zC=a(az),zD=a("0.075"),zE=a(k),zx=[0,a(v),kI,5,kI,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],zy=a(az),zz=a("0.0539"),zA=a(k),zt=[0,a(v),jJ,5,jJ,69,[0,a(P),[0,a(K),[0,a(L),[0,a(t),0]]]]],zu=a(az),zv=a(jF),zw=a(k),zs=[0,a(v),f6,14,f6,59,[0,a(dB),[0,a(K),[0,a(L),[0,a(t),0]]]]],zp=a(az),zq=a(f5),zr=a(k),zg=a(Y),zh=[0,a(am),420,6,421,72,[0,a(gj),[0,a(b4),[0,a(eE),[0,a(bN),[0,a(al),[0,a(x),0]]]]]]],zb=[0,a(ac),[0,a(dx),[0,a(ay),0]]],zc=[0,a(ac),[0,a(dx),0]],zd=[0,a(ac),[0,a(dx),[0,a(aA),0]]],ze=[0,a(ac),[0,a(dx),0]],zf=[0,a(am),jQ,5,125,59,[0,a(mg),[0,a(H),[0,a(I),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],za=[0,a(q),bd,12,bd,36,[0,a(p),0]],y5=[0,a(v),l1,5,l1,69,[0,a(b5),[0,a(j3),[0,a(b1),[0,a(t),0]]]]],y6=a(jm),y7=a("5827900"),y2=[0,a(v),bu,5,bu,69,[0,a(jI),[0,a(b1),[0,a(t),0]]]],y3=a(lk),y4=a("5775900"),yZ=[0,a(v),bY,5,bY,69,[0,a(iE),[0,a(b1),[0,a(t),0]]]],y0=a(lQ),y1=a("5684900"),yW=[0,a(v),87,5,87,69,[0,a(l2),[0,a(b1),[0,a(t),0]]]],yX=a(lb),yY=a("5628600"),yV=[0,a(X),jc,14,jc,30,[0,a(ko),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],yT=a(md),yU=a("5595000"),yO=[0,a(v),j1,5,j1,69,[0,a(b5),[0,a(j3),[0,a(b1),[0,a(t),0]]]]],yP=a(jm),yQ=a("8155800"),yL=[0,a(v),jG,5,jG,69,[0,a(jI),[0,a(b1),[0,a(t),0]]]],yM=a(lk),yN=a("8083100"),yI=[0,a(v),bd,5,bd,69,[0,a(iE),[0,a(b1),[0,a(t),0]]]],yJ=a(lQ),yK=a("7955800"),yF=[0,a(v),94,5,94,69,[0,a(l2),[0,a(b1),[0,a(t),0]]]],yG=a(lb),yH=a("7877000"),yE=[0,a(X),lO,14,lO,31,[0,a(ko),[0,a(H),[0,a(I),[0,a(F),[0,a(W),[0,a(x),0]]]]]]],yC=a(md),yD=a("7830000"),yu=[0,a(ac),[0,a(dt),[0,a(ay),0]]],yv=[0,a(ac),[0,a(dt),0]],yw=[0,a(ac),[0,a(dt),[0,a(aA),0]]],yx=[0,a(ac),[0,a(dt),0]],yr=[0,a(jb),83,19,83,69,[0,a("Article R521-1"),[0,a(H),[0,a(I),[0,a(F),[0,a(kS),[0,a(x),0]]]]]]],yq=a("14"),yp=[0,a(q),eF,12,eF,39,[0,a(p),0]],yl=[0,a(e),[0,a("enfant_le_plus_\xc3\xa2g\xc3\xa9.enfants"),0]],yi=[0,a(e),[0,a("prestations_familiales.r\xc3\xa9sidence"),0]],yg=[1,0],yh=[0,a(e),[0,a("prestations_familiales.prestation_courante"),0]],yf=[0,a(e),[0,a("prestations_familiales.date_courante"),0]],x4=[0,a(am),269,5,270,48,[0,a(bs),[0,a(H),[0,a(I),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],x5=[0,0],x2=[0,a(am),kB,5,259,56,[0,a(bs),[0,a(H),[0,a(I),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],x3=[1,0],x0=[0,a(am),kP,5,kP,70,[0,a(bs),[0,a(H),[0,a(I),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],x1=[0,0],xY=[0,a(am),k7,5,k7,69,[0,a(bs),[0,a(H),[0,a(I),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],xZ=[0,0],xW=[0,a(am),jH,5,jH,60,[0,a(bs),[0,a(H),[0,a(I),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],xX=[0,0],xV=[0,a(o),0,1,0,1,0],xU=[0,a(q),cj,12,cj,21,[0,a(p),0]],xQ=[0,a(am),263,5,kg,48,[0,a(bs),[0,a(H),[0,a(I),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],xR=[0,0],xO=[0,a(am),lt,5,du,56,[0,a(bs),[0,a(H),[0,a(I),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],xP=[2,0],xM=[0,a(am),jq,5,jq,70,[0,a(bs),[0,a(H),[0,a(I),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],xN=[1,0],xK=[0,a(am),jW,5,jW,69,[0,a(bs),[0,a(H),[0,a(I),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],xL=[0,0],xI=[0,a(am),k9,5,k9,60,[0,a(bs),[0,a(H),[0,a(I),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],xJ=[0,0],xH=[0,a(o),0,1,0,1,0],xG=[0,a(q),cI,12,cI,27,[0,a(p),0]],xt=[0,a(q),90,12,90,59,[0,a(p),0]],xu=[0,a(e),[0,a(lV),0]],xv=[0,a(q),91,12,91,64,[0,a(p),0]],xw=[0,a(e),[0,a(iC),0]],xx=[0,a(q),92,12,92,29,[0,a(p),0]],xy=[0,a(e),[0,a(kq),0]],xz=[0,a(q),93,12,93,21,[0,a(p),0]],xA=[0,a(e),[0,a(eR),0]],xB=[0,a(q),96,12,96,25,[0,a(p),0]],xC=[0,a(e),[0,a(eK),0]],xD=[0,a(q),99,12,99,28,[0,a(p),0]],xE=[0,a(e),[0,a(kt),0]],xF=[0,a(q),cI,12,cI,27,[0,a(p),0]],xS=[0,a(e),[0,a(bL),0]],xT=[0,a(q),cj,12,cj,21,[0,a(p),0]],x6=[0,a(e),[0,a("versement"),0]],x7=[0,a(q),bY,12,bY,56,[0,a(p),0]],x8=[0,a(e),[0,a(j_),0]],x_=a(eN),x9=[0,a(q),f7,12,f7,33,[0,a(p),0]],x$=[0,a(e),[0,a("nombre_enfants_l521_1"),0]],yb=a(eN),ya=[0,a(q),bu,12,bu,42,[0,a(p),0]],yc=[0,a(e),[0,a("nombre_enfants_alin\xc3\xa9a_2_l521_3"),0]],yd=[0,a(e),[0,a(jP),[0,a(gs),0]]],ye=[0,a(e),[0,a(jP),[0,a(gs),0]]],yj=[0,a(e),[0,a(lx),[0,a(ac),0]]],yk=[0,a(e),[0,a(lx),[0,a(ac),0]]],ym=[0,a(e),[0,a(kf),[0,a(eP),0]]],yn=[0,a(e),[0,a(kf),[0,a(eP),0]]],yo=[0,a(q),eF,12,eF,39,[0,a(p),0]],ys=[0,a(e),[0,a(bo),0]],yt=[0,a(q),aW,12,aW,62,[0,a(p),0]],yy=[0,a(e),[0,a("enfants_\xc3\xa0_charge_droit_ouvert_prestation_familiale"),0]],yz=[0,a(q),kW,12,kW,34,[0,a(p),0]],yA=[0,a(e),[0,a(dF),0]],yB=[0,a(q),jY,12,jY,29,[0,a(p),0]],yR=[0,a(e),[0,a("plafond_II_d521_3"),0]],yS=[0,a(q),ju,12,ju,28,[0,a(p),0]],y8=[0,a(e),[0,a("plafond_I_d521_3"),0]],E$=a(Y),Fa=[0,a(am),jr,5,427,71,[0,a(gj),[0,a(b4),[0,a(eE),[0,a(bN),[0,a(al),[0,a(x),0]]]]]]],y9=[0,a(q),kw,12,kw,35,[0,a(p),0]],y_=[0,a(e),[0,a("droit_ouvert_compl\xc3\xa9ment"),0]],y$=[0,a(q),bd,12,bd,36,[0,a(p),0]],zi=[0,a(e),[0,a(dA),0]],zk=a(eN),zl=a(eN),zm=a(jF),E_=a(k),zj=[0,a(q),dz,12,dz,65,[0,a(p),0]],zn=[0,a(e),[0,a("montant_initial_base_quatri\xc3\xa8me_enfant_et_plus_mayotte"),0]],zo=[0,a(q),kx,12,kx,57,[0,a(p),0]],z7=[0,a(e),[0,a("montant_initial_base_troisi\xc3\xa8me_enfant_mayotte"),0]],z8=[0,a(q),gE,12,gE,56,[0,a(p),0]],AP=[0,a(e),[0,a("montant_initial_base_deuxi\xc3\xa8me_enfant_mayotte"),0]],AQ=[0,a(q),iJ,12,iJ,55,[0,a(p),0]],BB=[0,a(e),[0,a("montant_initial_base_premier_enfant_mayotte"),0]],BC=[0,a(q),iQ,12,iQ,32,[0,a(p),0]],BD=[0,a(e),[0,a("nombre_total_enfants"),0]],BF=a(dD),BE=[0,a(q),gt,12,gt,32,[0,a(p),0]],BN=[0,a(e),[0,a("nombre_moyen_enfants"),0]],E7=a(Y),E8=[0,a(X),kC,5,360,71,[0,a(eO),[0,a(b4),[0,a(dp),[0,a(bN),[0,a(W),[0,a(x),0]]]]]]],E9=a(jj),BP=a(k),BO=[0,a(q),gB,12,gB,47,[0,a(p),0]],BQ=[0,a(e),[0,a("montant_initial_base_premier_enfant"),0]],BR=[0,a(q),kr,12,kr,29,[0,a(p),0]],BS=[0,a(e),[0,a("droit_ouvert_base"),0]],BT=[0,a(q),cL,12,cL,35,[0,a(p),0]],B9=[0,a(e),[0,a(Z),0]],B_=[0,a(q),eu,12,eu,32,[0,a(p),0]],Cm=[0,a(e),[0,a(dH),0]],Cn=[0,a(q),ck,12,ck,48,[0,a(p),0]],Cv=[0,a(e),[0,a("montant_vers\xc3\xa9_forfaitaire_par_enfant"),0]],Cw=[0,a(q),gC,12,gC,57,[0,a(p),0]],CN=[0,a(e),[0,a("montant_initial_base_troisi\xc3\xa8me_enfant_et_plus"),0]],CO=[0,a(q),gD,12,gD,48,[0,a(p),0]],C2=[0,a(e),[0,a("montant_initial_base_deuxi\xc3\xa8me_enfant"),0]],C4=a(dD),C5=a(dD),C3=[0,a(q),cQ,12,cQ,39,[0,a(p),0]],C6=[0,a(e),[0,a("rapport_enfants_total_moyen"),0]],C7=[0,a(q),eJ,12,eJ,48,[0,a(p),0]],Dw=[0,a(e),[0,a(dw),0]],Dy=a(k),Dx=[0,a(q),iO,12,iO,37,[0,a(p),0]],DE=[0,a(e),[0,a("montant_vers\xc3\xa9_forfaitaire"),0]],DF=[0,a(q),jC,12,jC,32,[0,a(p),0]],DL=[0,a(e),[0,a("montant_initial_base"),0]],DM=[0,a(q),em,12,em,38,[0,a(p),0]],D_=[0,a(e),[0,a(dr),0]],D$=[0,a(q),ki,12,ki,53,[0,a(p),0]],Em=[0,a(e),[0,a("montant_vers\xc3\xa9_compl\xc3\xa9ment_pour_forfaitaire"),0]],En=[0,a(q),gk,12,gk,44,[0,a(p),0]],Eo=[0,a(e),[0,a("montant_avec_garde_altern\xc3\xa9e_base"),0]],Ep=[0,a(q),eA,12,eA,50,[0,a(p),0]],EC=[0,a(e),[0,a(dv),0]],EZ=a(k),ED=[0,a(q),lS,12,lS,30,[0,a(p),0]],EE=[0,a(e),[0,a("montant_vers\xc3\xa9_base"),0]],EG=a(k),EY=a(k),EF=[0,a(q),kH,12,kH,36,[0,a(p),0]],EL=[0,a(e),[0,a("montant_vers\xc3\xa9_majoration"),0]],EM=[0,a(q),k2,12,k2,59,[0,a(p),0]],EN=[0,a(e),[0,a("montant_base_compl\xc3\xa9ment_pour_base_et_majoration"),0]],EP=[0,a(e),[0,a(dH),[0,a(ay),0]]],EQ=[0,a(e),[0,a(dH),0]],ER=[0,a(e),[0,a(dH),[0,a(aA),0]]],ES=[0,a(e),[0,a(dH),0]],EX=a(k),EO=[0,a(q),kh,12,kh,60,[0,a(p),0]],ET=[0,a(e),[0,a("montant_vers\xc3\xa9_compl\xc3\xa9ment_pour_base_et_majoration"),0]],EW=a(k),EU=[0,a(q),iF,12,iF,25,[0,a(p),0]],EV=[0,a(e),[0,a(jh),0]],xg=[0,a(am),60,5,62,32,[0,a(gl),[0,a(ge),[0,a(ga),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],xf=[0,a(am),49,5,50,50,[0,a(gl),[0,a(ge),[0,a(ga),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],xe=[0,a(o),0,1,0,1,0],xd=[0,a(q),65,12,65,24,[0,a(p),0]],xa=[0,a(am),68,5,71,57,[0,a(gl),[0,a(ge),[0,a(ga),[0,a(F),[0,a(al),[0,a(x),0]]]]]]],w$=[0,a(q),66,12,66,31,[0,a(p),0]],w1=[0,a(ac),[0,a("smic.r\xc3\xa9sidence"),0]],w0=[0,a(ac),[0,a("smic.date_courante"),0]],wX=[0,a(v),60,5,61,34,[0,a("Instruction interminist\xc3\xa9rielle n\xc2\xb0DSS/2B/2021/65 du 19 mars 2021 relative \xc3\xa0 la revalorisation au 1er avril 2021 des prestations familiales servies en m\xc3\xa9tropole, en Guadeloupe, en Guyane, en Martinique, \xc3\xa0 la R\xc3\xa9union, \xc3\xa0 Saint-Barth\xc3\xa9lemy, \xc3\xa0 Saint-Martin et dans le d\xc3\xa9partement de Mayotte"),[0,a(gd),[0,a(t),0]]]],wY=a("41481"),wV=[0,a(v),44,5,45,34,[0,a("Instruction interminist\xc3\xa9rielle no DSS/SD2B/2020/33 du 18 f\xc3\xa9vrier 2020 relative \xc3\xa0 la revalorisation au 1er avril 2020 des prestations familiales servies en m\xc3\xa9tropole, en Guadeloupe, en Guyane, en Martinique, \xc3\xa0 La R\xc3\xa9union, \xc3\xa0 Saint-Barth\xc3\xa9lemy, \xc3\xa0 Saint-Martin et dans le d\xc3\xa9partement de Mayotte"),[0,a(gd),[0,a(t),0]]]],wW=a("41404"),wT=[0,a(v),24,5,25,34,[0,a("Instruction minist\xc3\xa9rielle N\xc2\xb0DSS/SD2B/2019/65 du 25 mars 2019 relative \xc3\xa0 la revalorisation au 1er avril 2019 des prestations familiales servies en m\xc3\xa9tropole"),[0,a(gd),[0,a(t),0]]]],wU=a("41316"),wS=[0,a(o),0,1,0,1,0],wJ=a("20"),wI=[0,a(q),68,12,68,24,[0,a(p),0]],wK=[0,a(ac),[0,a("\xc3\xa2ge_l512_3_2"),0]],wL=[0,a(q),70,12,70,25,[0,a(p),0]],wM=[0,a(ac),[0,a(eK),0]],wN=[0,a(q),71,12,71,31,[0,a(p),0]],wO=[0,a(ac),[0,a("prestation_courante"),0]],wP=[0,a(q),72,12,72,21,[0,a(p),0]],wQ=[0,a(ac),[0,a(eR),0]],wR=[0,a(q),74,12,74,26,[0,a(p),0]],wZ=[0,a(ac),[0,a("base_mensuelle"),0]],w2=[0,a(ac),[0,a(l8),[0,a(dq),0]]],w3=[0,a(ac),[0,a(l8),[0,a(dq),0]]],xl=[0,0],xn=[1,0],xo=[2,0],xp=[3,0],xq=[4,0],xr=[5,0],xm=[0,a(am),354,5,kC,30,[0,a("Article L751-1"),[0,a("Chapitre 1er : G\xc3\xa9n\xc3\xa9ralit\xc3\xa9s"),[0,a(eE),[0,a(bN),[0,a(al),[0,a(x),0]]]]]]],w4=[0,a(q),69,12,69,35,[0,a(p),0]],w5=[0,a(ac),[0,a("r\xc3\xa9gime_outre_mer_l751_1"),0]],xi=[0,a(jb),i8,18,i8,41,[0,a("Article R755-0-2"),[0,a(b4),[0,a(dp),[0,a(bN),[0,a(kS),[0,a(x),0]]]]]]],xj=a(ly),xk=a(jD),w7=a(ly),w8=a(jD),w6=[0,a(q),67,12,67,28,[0,a(p),0]],w9=[0,a(ac),[0,a("plafond_l512_3_2"),0]],w_=[0,a(q),66,12,66,31,[0,a(p),0]],xb=[0,a(ac),[0,a(dx),0]],xc=[0,a(q),65,12,65,24,[0,a(p),0]],xh=[0,a(ac),[0,a(dt),0]],wy=[0,a(q),84,12,84,19,[0,a(p),0]],wz=[0,a(eP),[0,a(lW),0]],wB=[2,0],wC=a(k),wD=a(k),wE=[1,0],wF=a(Y),wA=[0,a(q),85,12,85,23,[0,a(p),0]],wG=[0,a(eP),[0,a("le_plus_\xc3\xa2g\xc3\xa9"),0]],wv=a(f_),wu=[0,a(q),81,12,81,39,[0,a(p),0]],ww=[0,a(gs),[0,a(bo),0]],wp=[8,0],wq=[0,a(v),lH,5,317,6,[0,a(b5),[0,a(iG),[0,a(cF),[0,a(t),0]]]]],wr=a("774"),wf=[6,0],wi=[0,0],wj=[1,0],wk=[2,0],wl=[3,0],wm=[4,0],wn=[5,0],wo=[7,0],wg=[0,a(v),297,5,306,6,[0,a(b5),[0,a(iG),[0,a(cF),[0,a(t),0]]]]],wh=a("1025"),wc=[8,0],wd=[0,a(v),276,5,278,6,[0,a(b5),[0,a(i_),[0,a(cF),[0,a(t),0]]]]],we=a("766"),v4=[6,0],v7=[0,0],v8=[1,0],v9=[2,0],v_=[3,0],v$=[4,0],wa=[5,0],wb=[7,0],v5=[0,a(v),kB,5,267,6,[0,a(b5),[0,a(i_),[0,a(cF),[0,a(t),0]]]]],v6=a("1015"),v1=[8,0],v2=[0,a(v),237,5,239,6,[0,a(b5),[0,a(iB),[0,a(cF),[0,a(t),0]]]]],v3=a("757"),vR=[6,0],vU=[0,0],vV=[1,0],vW=[2,0],vX=[3,0],vY=[4,0],vZ=[5,0],v0=[7,0],vS=[0,a(v),219,5,228,6,[0,a(b5),[0,a(iB),[0,a(cF),[0,a(t),0]]]]],vT=a("1003"),vQ=[0,a(o),0,1,0,1,0],vL=[0,a(q),41,12,41,25,[0,a(p),0]],vM=[0,a(dq),[0,a(eK),0]],vN=[0,a(q),42,12,42,21,[0,a(p),0]],vO=[0,a(dq),[0,a(eR),0]],vP=[0,a(q),43,12,43,24,[0,a(p),0]],ws=[0,a(dq),[0,a("brut_horaire"),0]],vC=a("a_d\xc3\xa9j\xc3\xa0_ouvert_droit_aux_allocations_familiales"),vD=a("prise_en_charge"),vE=a("\xc3\xa2ge"),vF=a("date_de_naissance"),vG=a("r\xc3\xa9muneration_mensuelle"),vH=a("obligation_scolaire"),vI=a("identifiant"),vJ=[0,a("Enfant"),0],vw=a("d_a_d\xc3\xa9j\xc3\xa0_ouvert_droit_aux_allocations_familiales"),vx=a("d_prise_en_charge"),vy=a("d_date_de_naissance"),vz=a("d_r\xc3\xa9muneration_mensuelle"),vA=a("d_identifiant"),vB=[0,a("EnfantEntr\xc3\xa9e"),0],vm=a("PrestationAccueilJeuneEnfant"),vo=a(e),vp=a("Compl\xc3\xa9mentFamilial"),vq=a("AllocationLogement"),vr=a("Allocation\xc3\x89ducationEnfantHandicap\xc3\xa9"),vs=a("AllocationSoutienFamilial"),vt=a("AllocationRentr\xc3\xa9eScolaire"),vu=a("AllocationJournali\xc3\xa8rePresenceParentale"),vn=[0,a("\xc3\x89l\xc3\xa9mentPrestationsFamiliales"),0],vc=a(kb),ve=a(kT),vf=a(i6),vg=a("LaR\xc3\xa9union"),vh=a("SaintBarth\xc3\xa9lemy"),vi=a("SaintMartin"),vj=a(jX),vk=a("SaintPierreEtMiquelon"),vl=a(lr),vd=[0,a("Collectivit\xc3\xa9"),0],u_=a("Avant"),va=a("Pendant"),vb=a("Apr\xc3\xa8s"),u$=[0,a("SituationObligationScolaire"),0],u4=a("GardeAltern\xc3\xa9ePartageAllocations"),u6=a("GardeAltern\xc3\xa9eAllocataireUnique"),u7=a("EffectiveEtPermanente"),u8=a("ServicesSociauxAllocationVers\xc3\xa9e\xc3\x80LaFamille"),u9=a("ServicesSociauxAllocationVers\xc3\xa9eAuxServicesSociaux"),u5=[0,a("PriseEnCharge"),0],FN=a("Js_of_ocaml__Js.Error"),FO=a(gb),Go=a("Begin call"),Gp=a("End call"),Gq=a("Variable definition"),Gr=a("Decision taken"),Gc=a("Confi\xc3\xa9 aux service sociaux, allocation vers\xc3\xa9e aux services sociaux"),Gd=a("Confi\xc3\xa9 aux service sociaux, allocation vers\xc3\xa9e \xc3\xa0 la famille"),Ge=a("Effective et permanente"),Gf=a("Garde altern\xc3\xa9e, allocataire unique"),Gg=a("Garde altern\xc3\xa9e, partage des allocations"),Gi=[0,0],Gj=[1,0],Gk=[2,0],Gl=[3,0],Gm=[4,0],Gh=a("Unknown prise en charge"),FV=a(kb),FW=a(kT),FX=a("La R\xc3\xa9union"),FY=a(i6),FZ=a(lr),F0=a(jX),F1=a("Saint Barth\xc3\xa9lemy"),F2=a("Saint Martin"),F3=a("Saint Pierre et Miquelon"),F5=[7,0],F6=[5,0],F7=[4,0],F8=[6,0],F9=[8,0],F_=[2,0],F$=[3,0],Ga=[1,0],Gb=[0,0],F4=a("unknown collectivite!"),FT=a(o),FR=[0,[4,0,0,0,[12,68,[4,0,0,0,[12,77,[4,0,0,0,[12,89,0]]]]]],a("%dD%dM%dY")],FQ=[0,a(k3),a(k$),a(lw)];function -$(a){if(typeof +It(){var +a=y;if(a.process&&a.process.on)a.process.on("uncaughtException",function(b,c){mL(b);a.process.exit(2)});else +if(a.addEventListener)a.addEventListener("error",function(a){if(a.error)mL(a.error)})}It();function +c(a,b){return a.length==1?a(b):bb(a,[b])}function +i(a,b,c){return a.length==2?a(b,c):bb(a,[b,c])}function +Q(a,b,c,d){return a.length==3?a(b,c,d):bb(a,[b,c,d])}function +gf(a,b,c,d,e,f){return a.length==5?a(b,c,d,e,f):bb(a,[b,c,d,e,f])}function +HG(a,b,c,d,e,f,g,h){return a.length==7?a(b,c,d,e,f,g,h):bb(a,[b,c,d,e,f,g,h])}HU();var +fm=[N,a(kD),-1],hl=[N,a(k4),-2],dV=[N,a(gC),-3],hh=[N,a(lz),-4],hm=[N,a(j_),-6],aM=[N,a(lG),-7],hj=[N,a(jf),-8],hk=[N,a(lJ),-9],L=[N,a(l7),-11],hn=[N,a(kS),gB],HF=[4,0,0,0,[12,45,[4,0,0,0,0]]],fx=[0,[11,a('File "'),[2,0,[11,a('", line '),[4,0,0,0,[11,a(lj),[4,0,0,0,[12,45,[4,0,0,0,[11,a(": "),[2,0,0]]]]]]]]]],a('File "%s", line %d, characters %d-%d: %s')],cD=[0,0,0],er=[0,a(ln),a(lh),a(lK)];a_(11,hn,kS);a_(10,L,l7);a_(9,[N,a(jD),-10],jD);a_(8,hk,lJ);a_(7,hj,jf);a_(6,aM,lG);a_(5,hm,j_);a_(4,[N,a(k8),-5],k8);a_(3,hh,lz);a_(2,dV,gC);a_(1,hl,k4);a_(0,fm,kD);var +np=a("output_substring"),nm=a("%.12g"),nl=a(bl),nj=a("true"),nk=a("false"),na=a("Stdlib.Exit"),nc=cb(0,0,lE),ne=cb(0,0,65520),ng=cb(1,0,lE),ns=a("\\\\"),nt=a("\\'"),nu=a("\\b"),nv=a("\\t"),nw=a("\\n"),nx=a("\\r"),nr=a("Char.chr"),ny=a("hd"),nB=a("String.blit / Bytes.blit_string"),nA=a("Bytes.blit"),nz=a("String.sub / Bytes.sub"),nD=a("String.contains_from / Bytes.contains_from"),nG=a("Array.blit"),nF=a("Array.sub"),nL=a("Map.remove_min_elt"),nM=[0,0,0,0],nN=[0,a("map.ml"),gy,10],nO=[0,0,0],nH=a(ez),nI=a(ez),nJ=a(ez),nK=a(ez),nP=a("Stdlib.Queue.Empty"),nR=a("CamlinternalLazy.Undefined"),nY=a("Buffer.add_substring/add_subbytes"),nX=a("Buffer.add: cannot grow buffer"),nW=[0,a(lR),93,2],nV=[0,a(lR),94,2],n7=a("%c"),n8=a("%s"),n9=a(kR),n_=a(jd),n$=a(lx),oa=a(k1),ob=a("%f"),oc=a("%B"),od=a("%{"),oe=a("%}"),of=a("%("),og=a("%)"),oh=a("%a"),oi=a("%t"),oj=a("%?"),ok=a("%r"),ol=a("%_r"),om=[0,a(ar),850,23],ox=[0,a(ar),814,21],op=[0,a(ar),815,21],oy=[0,a(ar),818,21],oq=[0,a(ar),819,21],oz=[0,a(ar),822,19],or=[0,a(ar),823,19],oA=[0,a(ar),826,22],os=[0,a(ar),827,22],oB=[0,a(ar),831,30],ot=[0,a(ar),832,30],ov=[0,a(ar),836,26],on=[0,a(ar),837,26],ow=[0,a(ar),846,28],oo=[0,a(ar),847,28],ou=[0,a(ar),851,23],pE=a(jx),pC=[0,a(ar),1558,4],pD=a("Printf: bad conversion %["),pF=[0,a(ar),1626,39],pG=[0,a(ar),1649,31],pH=[0,a(ar),1650,31],pI=a("Printf: bad conversion %_"),pJ=a(jt),pK=a(jF),pL=a(jt),pM=a(jF),pA=a(gE),py=a("neg_infinity"),pz=a(mb),px=a(bl),ps=[0,cm],pg=a("%+nd"),ph=a("% nd"),pj=a("%+ni"),pk=a("% ni"),pl=a("%nx"),pm=a("%#nx"),pn=a("%nX"),po=a("%#nX"),pp=a("%no"),pq=a("%#no"),pf=a("%nd"),pi=a(lx),pr=a("%nu"),o5=a("%+ld"),o6=a("% ld"),o8=a("%+li"),o9=a("% li"),o_=a("%lx"),o$=a("%#lx"),pa=a("%lX"),pb=a("%#lX"),pc=a("%lo"),pd=a("%#lo"),o4=a("%ld"),o7=a(jd),pe=a("%lu"),oS=a("%+Ld"),oT=a("% Ld"),oV=a("%+Li"),oW=a("% Li"),oX=a("%Lx"),oY=a("%#Lx"),oZ=a("%LX"),o0=a("%#LX"),o1=a("%Lo"),o2=a("%#Lo"),oR=a("%Ld"),oU=a(k1),o3=a("%Lu"),oF=a("%+d"),oG=a("% d"),oI=a("%+i"),oJ=a("% i"),oK=a("%x"),oL=a("%#x"),oM=a("%X"),oN=a("%#X"),oO=a("%o"),oP=a("%#o"),oE=a(gM),oH=a(kR),oQ=a(jx),nZ=a("@]"),n0=a("@}"),n1=a("@?"),n2=a("@\n"),n3=a("@."),n4=a("@@"),n5=a("@%"),n6=a("@"),oC=a("CamlinternalFormat.Type_mismatch"),pQ=a(k),pR=[0,[11,a(eQ),[2,0,[2,0,0]]],a(", %s%s")],qe=[0,[11,a(gJ),[2,0,[12,10,0]]],a(l1)],qf=[0,[11,a("Fatal error in uncaught exception handler: exception "),[2,0,[12,10,0]]],a("Fatal error in uncaught exception handler: exception %s\n")],qd=a("Fatal error: out of memory in uncaught exception handler"),qb=[0,[11,a(gJ),[2,0,[12,10,0]]],a(l1)],p9=[0,[2,0,[12,10,0]],a("%s\n")],p1=a("Raised at"),p2=a("Re-raised at"),p3=a("Raised by primitive operation at"),p4=a("Called from"),p5=a(" (inlined)"),p7=a(k),p6=[0,[2,0,[12,32,[2,0,[11,a(' in file "'),[2,0,[12,34,[2,0,[11,a(", line "),[4,0,0,0,[11,a(lj),HF]]]]]]]]]],a('%s %s in file "%s"%s, line %d, characters %d-%d')],p8=[0,[2,0,[11,a(" unknown location"),0]],a("%s unknown location")],pW=a("Out of memory"),pX=a("Stack overflow"),pY=a("Pattern matching failed"),pZ=a("Assertion failed"),p0=a("Undefined recursive module"),pS=[0,[12,40,[2,0,[2,0,[12,41,0]]]],a("(%s%s)")],pT=a(k),pU=a(k),pV=[0,[12,40,[2,0,[12,41,0]]],a("(%s)")],pP=[0,[4,0,0,0,0],a(gM)],pN=[0,[3,0,0],a("%S")],pO=a(lA),p_=[0,a(k),a("(Cannot print locations:\n bytecode executable program file not found)"),a("(Cannot print locations:\n bytecode executable program file appears to be corrupt)"),a("(Cannot print locations:\n bytecode executable program file has wrong magic number)"),a("(Cannot print locations:\n bytecode executable program file cannot be opened;\n -- too many open files. Try running with OCAMLRUNPARAM=b=2)")],qi=a("Fun.Finally_raised: "),qg=a("Stdlib.Fun.Finally_raised"),qj=a(lU),HD=a("OCAMLRUNPARAM"),HB=a("CAMLRUNPARAM"),qk=a(k),qH=[3,0,3],qI=a(bl),qC=a(e6),qD=a("<\/"),qE=a(k),qy=a(e6),qz=a(gv),qA=a(k),qw=a("\n"),qv=[0,a(k)],qr=a(k),qs=a(k),qt=a(k),qu=a(k),qp=[0,a(k),0,a(k)],qo=a(k),qn=a("Stdlib.Format.String_tag"),qV=a(k),q0=a(jN),q2=a(mr),q3=a(kG),q4=a(i4),q5=a(kB),q6=a(ld),q7=a(j3),q8=a(lr),q9=a(gm),q_=a(j6),q$=a(lq),ra=a(kv),rb=a(ls),rc=a(j2),rd=a(iO),re=a(mu),rf=a(i3),rg=a(ja),rh=a(km),ri=a(k2),rj=a(e2),rk=a(jo),rl=a(me),rm=a(lw),rn=a(lZ),ro=a(kV),rp=a(eT),rq=a(gO),rr=a(jk),rs=a(jj),rt=a(kg),ru=a(mh),rv=a(mc),rw=a(ml),rx=a(jO),ry=a(je),rz=a(jA),rA=a(k_),rB=a(mp),rC=a(ks),rD=a(jT),rE=a(kE),rF=a(i$),rG=a(kw),rH=a(iR),rI=a(lu),rJ=a(l_),rK=a(jR),rL=a(jm),rM=a(kp),rN=a(kW),rO=a(j9),rP=a(k6),rQ=a(kA),rR=a(lt),rS=a(j5),rT=a(jP),rU=a(lQ),rV=a(ll),rW=a(l3),rX=a(li),rY=a(lc),rZ=a(lb),r0=a(i_),r1=a(jW),r2=a(jv),r3=a(lD),r4=a(lV),r5=[0,[11,a("EUNKNOWNERR "),[4,0,0,0,0]],a("EUNKNOWNERR %d")],q1=[0,[11,a("Unix.Unix_error(Unix."),[2,0,[11,a(eQ),[3,0,[11,a(eQ),[3,0,[12,41,0]]]]]]],a("Unix.Unix_error(Unix.%s, %S, %S)")],qW=a(dG),qX=a(k),qY=a(k),qZ=a(dG),r6=a("0.0.0.0"),r7=a("127.0.0.1"),HA=a("::"),Hz=a("::1"),sl=a(k),sm=a(k),ss=[0,92],su=a("\\( group not closed by \\)"),st=[0,a(iV),gs,10],sv=a("[ class not closed by ]"),sw=a("spurious \\) in regular expression"),so=a("too many r* or r+ where r is nullable"),sp=a(k),sq=a(k),sn=[0,a(iV),213,11],sC=[0,a(k$),52,4],sB=[0,a(k$),58,34],sA=a("Not a valid time zone"),uO=a("Not a month"),uM=a("Not a day"),uJ=a("from_business: bad week"),uK=a("from_business: bad date"),tW=[0,a(kX),j8,4],tV=[0,a(kX),gT,4],tO=[0,-4713,12,31],tP=[0,lm,1,23],tQ=[0,dB,10,14],tR=[0,dB,10,5],tM=a("Date.Out_of_bounds"),tN=a("Date.Undefined"),ua=a("Date.Period.Not_computable"),uj=[0,31,59,90,bZ,gi,181,212,gL,273,304,334,eF],uS=[0,a(eX),429,6],uR=[0,a(eX),lO,4],uQ=[0,a(eX),167,6],uP=[0,a(eX),67,4],uW=a("[a-zA-Z]+"),u1=cb(1,0,0),uX=a("Z.Overflow"),uY=a(gr),u5=a(k),u6=a("+inf"),u7=a("-inf"),u8=a(mi),u9=a("undef"),u$=[0,a("q.ml"),486,25],u_=a("Q.of_string: invalid digit"),u3=a("impossible case"),va=a("Runtime.EmptyError"),vb=a("Runtime.AssertionFailed"),vd=a("Runtime.ConflictError"),vf=a("Runtime.ImpossibleDate"),vh=a("Runtime.NoValueProvided"),GM=[0,a(Z),88,14,88,27,[0,a(aA),[0,a(Y),[0,a(p),0]]]],GI=[0,a(Z),96,20,96,64,[0,a(aA),[0,a(Y),[0,a(p),0]]]],GH=[0,a(aC),[0,a("allocations_familiales.avait_enfant_\xc3\xa0_charge_avant_1er_janvier_2012"),0]],GF=[0,a(Z),85,14,85,53,[0,a(aA),[0,a(Y),[0,a(p),0]]]],GG=[0,a(aC),[0,a("allocations_familiales.enfants_\xc3\xa0_charge"),0]],GD=[0,a(Z),84,14,84,50,[0,a(aA),[0,a(Y),[0,a(p),0]]]],GE=[0,a(aC),[0,a("allocations_familiales.date_courante"),0]],GB=[0,a(Z),87,14,87,46,[0,a(aA),[0,a(Y),[0,a(p),0]]]],GC=[0,a(aC),[0,a("allocations_familiales.r\xc3\xa9sidence"),0]],Gz=[0,a(Z),86,14,86,54,[0,a(aA),[0,a(Y),[0,a(p),0]]]],GA=[0,a(aC),[0,a("allocations_familiales.ressources_m\xc3\xa9nage"),0]],Gy=[0,a(Z),93,20,93,72,[0,a(aA),[0,a(Y),[0,a(p),0]]]],Gx=[0,a(aC),[0,a("allocations_familiales.personne_charge_effective_permanente_remplit_titre_I"),0]],Gw=[0,a(Z),90,20,90,67,[0,a(aA),[0,a(Y),[0,a(p),0]]]],Gv=[0,a(aC),[0,a("allocations_familiales.personne_charge_effective_permanente_est_parent"),0]],Gt=[0,a(Z),dK,14,dK,30,[0,a("Article L131-1"),[0,a(aA),[0,a(Y),[0,a(p),0]]]]],Gq=[0,0],Gr=[1,0],Gs=[2,0],Gn=[0,a(k),0,1,0,1,0],Gk=[0,a(k),0,1,0,1,0],Gh=[0,a(k),0,1,0,1,0],Ge=[0,a(k),0,1,0,1,0],Gb=[0,a(k),0,1,0,1,0],F_=[0,a(k),0,1,0,1,0],F7=[0,a(k),0,1,0,1,0],F6=[0,a(Z),72,12,72,25,[0,a(aA),[0,a(Y),[0,a(p),0]]]],F8=[0,a(aC),[0,a(eW),0]],F9=[0,a(Z),73,12,73,19,[0,a(aA),[0,a(Y),[0,a(p),0]]]],F$=[0,a(aC),[0,a(ma),0]],Ga=[0,a(Z),76,12,76,29,[0,a(aA),[0,a(Y),[0,a(p),0]]]],Gc=[0,a(aC),[0,a(kH),0]],Gd=[0,a(Z),77,12,77,21,[0,a(aA),[0,a(Y),[0,a(p),0]]]],Gf=[0,a(aC),[0,a(e4),0]],Gg=[0,a(Z),79,12,79,59,[0,a(aA),[0,a(Y),[0,a(p),0]]]],Gi=[0,a(aC),[0,a(l$),0]],Gj=[0,a(Z),80,12,80,64,[0,a(aA),[0,a(Y),[0,a(p),0]]]],Gl=[0,a(aC),[0,a(iU),0]],Gm=[0,a(Z),81,12,81,56,[0,a(aA),[0,a(Y),[0,a(p),0]]]],Go=[0,a(aC),[0,a(kq),0]],Gp=[0,a(Z),74,12,74,28,[0,a(aA),[0,a(Y),[0,a(p),0]]]],Gu=[0,a(aC),[0,a(kK),0]],GJ=[0,a(aC),[0,a(i8),[0,a(g),0]]],GK=[0,a(aC),[0,a(i8),[0,a(g),0]]],GL=[0,a(Z),78,12,78,25,[0,a(aA),[0,a(Y),[0,a(p),0]]]],GN=[0,a(aC),[0,a(jz),0]],FR=[0,a(Z),44,14,44,27,[0,a(cl),[0,a(Y),[0,a(p),0]]]],FQ=a(m),FN=[0,a(S),jc,14,jc,62,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],FI=[0,a(g),[0,a(dJ),[0,a(ay),0]]],FJ=[0,a(g),[0,a(dJ),0]],FK=[0,a(g),[0,a(dJ),[0,a(aB),0]]],FL=[0,a(g),[0,a(dJ),0]],FM=a(m),FF=[0,a(S),eU,14,eU,61,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],FC=[0,a(Z),38,14,38,38,[0,a(cl),[0,a(Y),[0,a(p),0]]]],Fx=[0,a(g),[0,a(dy),[0,a(ay),0]]],Fy=[0,a(g),[0,a(dy),0]],Fz=[0,a(g),[0,a(dy),[0,a(aB),0]]],FA=[0,a(g),[0,a(dy),0]],Fw=a(m),FB=a(m),Ft=[0,a(Z),36,14,36,32,[0,a(cl),[0,a(Y),[0,a(p),0]]]],Fs=a(m),Fp=[0,a(bk),lf,5,lf,43,[0,a("Article R521-4"),[0,a(B),[0,a(C),[0,a(x),[0,a(bp),[0,a(v),0]]]]]]],Fe=[0,a(g),[0,a(bK),[0,a(ay),0]]],Ff=[0,a(g),[0,a(bK),0]],Fg=[0,a(g),[0,a(bK),[0,a(aB),0]]],Fh=[0,a(g),[0,a(bK),0]],Fi=a(cK),Fn=a(kM),Fo=a(dF),Fj=[0,a(g),[0,a(du),[0,a(ay),0]]],Fk=[0,a(g),[0,a(du),0]],Fl=[0,a(g),[0,a(du),[0,a(aB),0]]],Fm=[0,a(g),[0,a(du),0]],Fd=[0,a(s),eH,12,eH,50,[0,a(r),0]],Fa=[0,a(bk),gt,14,gt,46,[0,a(e3),[0,a(B),[0,a(C),[0,a(x),[0,a(bp),[0,a(v),0]]]]]]],E8=a(a7),E9=[0,a(S),272,5,274,41,[0,a(b2),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],E5=a(a7),E6=a(cK),E7=a(a7),E3=a(a7),E4=[0,a(S),262,5,ky,42,[0,a(b2),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],E0=a(a7),E1=a(cK),E2=a(a7),EZ=[0,a(S),lC,14,lC,55,[0,a(b2),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],EY=a(m),EP=[0,a(g),[0,a($),[0,a(ay),0]]],EQ=[0,a(g),[0,a($),0]],ER=[0,a(g),[0,a($),[0,a(aB),0]]],ES=[0,a(g),[0,a($),0]],ET=a(_),EU=a(gl),EV=[0,a(S),382,5,gR,23,[0,a(e0),[0,a(b6),[0,a(dr),[0,a(bM),[0,a(R),[0,a(v),0]]]]]]],EO=a("0.0567"),EG=[0,a(g),[0,a($),[0,a(ay),0]]],EH=[0,a(g),[0,a($),0]],EI=[0,a(g),[0,a($),[0,a(aB),0]]],EJ=[0,a(g),[0,a($),0]],EK=a(_),EL=a("11"),EM=a(gl),EN=[0,a(S),373,5,gh,42,[0,a(e0),[0,a(b6),[0,a(dr),[0,a(bM),[0,a(R),[0,a(v),0]]]]]]],EF=a("0.0369"),EE=[0,a(S),22,14,22,40,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],EA=[0,a(g),[0,a(dz),[0,a(ay),0]]],EB=[0,a(g),[0,a(dz),0]],EC=[0,a(g),[0,a(dz),[0,a(aB),0]]],ED=[0,a(g),[0,a(dz),0]],Ez=[0,a(s),es,12,es,38,[0,a(r),0]],Ev=[8,0],Ew=[0,a(w),lS,5,lS,24,[0,a(cP),[0,a(J),[0,a(K),[0,a(p),0]]]]],Et=a(_),Eu=[0,a(S),350,5,351,69,[0,a(e0),[0,a(b6),[0,a(dr),[0,a(bM),[0,a(R),[0,a(v),0]]]]]]],Es=[0,a(S),18,14,18,34,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],Ep=[0,a(S),i5,14,i5,39,[0,a(b2),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],Ek=[0,a(g),[0,a(dD),[0,a(ay),0]]],El=[0,a(g),[0,a(dD),0]],Em=[0,a(g),[0,a(dD),[0,a(aB),0]]],En=[0,a(g),[0,a(dD),0]],Eo=a(_),Ej=a(m),Ec=[0,a(g),[0,a($),[0,a(ay),0]]],Ed=[0,a(g),[0,a($),0]],Ee=[0,a(g),[0,a($),[0,a(aB),0]]],Ef=[0,a(g),[0,a($),0]],Eg=[0,a(Z),27,5,27,44,[0,a(cl),[0,a(Y),[0,a(p),0]]]],Eb=a(m),D8=[0,a(g),[0,a($),[0,a(ay),0]]],D9=[0,a(g),[0,a($),0]],D_=[0,a(g),[0,a($),[0,a(aB),0]]],D$=[0,a(g),[0,a($),0]],Ea=[0,a(S),cQ,3,cQ,41,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],D7=a("0.04"),D2=[0,a(g),[0,a($),[0,a(ay),0]]],D3=[0,a(g),[0,a($),0]],D4=[0,a(g),[0,a($),[0,a(aB),0]]],D5=[0,a(g),[0,a($),0]],D6=[0,a(S),95,3,96,44,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],D1=a(jG),DW=[0,a(g),[0,a($),[0,a(ay),0]]],DX=[0,a(g),[0,a($),0]],DY=[0,a(g),[0,a($),[0,a(aB),0]]],DZ=[0,a(g),[0,a($),0]],D0=[0,a(S),55,3,55,41,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],DV=a(gg),DU=[0,a(k),0,1,0,1,0],DT=[0,a(s),eV,12,eV,48,[0,a(r),0]],DQ=[0,a(bk),bN,14,bN,41,[0,a(e3),[0,a(B),[0,a(C),[0,a(x),[0,a(bp),[0,a(v),0]]]]]]],DO=a(dF),DP=a(dF),DL=[0,a(S),cU,3,cU,41,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],DI=a(_),DJ=a(jG),DK=a(m),DH=[0,a(S),74,3,75,44,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],DE=a(_),DF=a(gg),DG=a(m),DD=[0,a(S),35,3,35,41,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],DA=a(_),DB=a(l5),DC=a(m),Dz=[0,a(k),0,1,0,1,0],Dw=[0,a(S),cU,3,cU,41,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],Ds=a(az),Dt=a(az),Du=a("0.1025"),Dv=a(m),Dr=[0,a(S),74,3,75,44,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],Dn=a(az),Do=a(az),Dp=a("0.205"),Dq=a(m),Dm=[0,a(S),35,3,35,41,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],Di=a(az),Dj=a(az),Dk=a("0.41"),Dl=a(m),Dh=[0,a(k),0,1,0,1,0],De=[0,a(S),gL,5,gL,43,[0,a(b2),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],Dd=a("0.0559"),Dc=[0,a(S),229,5,lO,46,[0,a(b2),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],Db=a("0.1117"),Da=[0,a(S),jK,5,jK,43,[0,a(b2),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],C$=a("0.20234"),C_=[0,a(k),0,1,0,1,0],C6=a(a7),C7=[0,a(S),170,5,171,68,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],C3=a(a7),C4=a(cK),C5=a(a7),C1=a(a7),C2=[0,a(S),gN,5,gU,68,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],CY=a(a7),CZ=a(cK),C0=a(a7),CX=[0,a(S),iN,14,iN,34,[0,a(aJ),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],CW=a(m),CV=[0,a(s),eB,12,eB,32,[0,a(r),0]],CO=[0,a(g),[0,a(bm),[0,a(ay),0]]],CP=[0,a(g),[0,a(bm),0]],CQ=[0,a(g),[0,a(bm),[0,a(aB),0]]],CR=[0,a(g),[0,a(bm),0]],CS=[0,a(am),313,5,lW,58,[0,a(l0),[0,a(B),[0,a(C),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],CF=[0,a(g),[0,a(dH),[0,a(ay),0]]],CG=[0,a(g),[0,a(dH),0]],CH=[0,a(g),[0,a(dH),[0,a(aB),0]]],CI=[0,a(g),[0,a(dH),0]],CJ=[0,a(g),[0,a(bm),[0,a(ay),0]]],CK=[0,a(g),[0,a(bm),0]],CL=[0,a(g),[0,a(bm),[0,a(aB),0]]],CM=[0,a(g),[0,a(bm),0]],CN=[0,a(am),299,5,300,58,[0,a(l0),[0,a(B),[0,a(C),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],CE=[0,a(s),cQ,12,cQ,35,[0,a(r),0]],FX=[8,0],FY=a(_),FZ=[0,a(w),344,5,345,72,[0,a(cP),[0,a(J),[0,a(K),[0,a(p),0]]]]],FV=a(_),FW=[0,a(am),406,5,407,72,[0,a(gw),[0,a(b6),[0,a(eO),[0,a(bM),[0,a(al),[0,a(v),0]]]]]]],FT=a(az),FU=[0,a(am),eC,5,eC,70,[0,a(mw),[0,a(B),[0,a(C),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],F1=a(_),F2=[0,a(S),kU,5,360,71,[0,a(e0),[0,a(b6),[0,a(dr),[0,a(bM),[0,a(R),[0,a(v),0]]]]]]],F0=a(jB),Cw=[0,a(bk),eJ,14,eJ,34,[0,a(e3),[0,a(B),[0,a(C),[0,a(x),[0,a(bp),[0,a(v),0]]]]]]],Cp=[0,a(g),[0,a(bK),[0,a(ay),0]]],Cq=[0,a(g),[0,a(bK),0]],Cr=[0,a(g),[0,a(bK),[0,a(aB),0]]],Cs=[0,a(g),[0,a(bK),0]],Ct=a(cK),Cu=a(kM),Cv=a(dF),Co=a(dF),Cl=[0,a(bk),gN,14,gN,34,[0,a(e3),[0,a(B),[0,a(C),[0,a(x),[0,a(bp),[0,a(v),0]]]]]]],Ci=[0,a(w),mn,5,mn,49,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],Cf=a(m),Cg=a("5728"),Ch=a(m),Ce=[0,a(w),497,5,498,53,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],Cb=a(m),Cc=a("0.0717"),Cd=a(m),Ca=[0,a(w),489,5,490,53,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],B9=a(m),B_=a("0.0847"),B$=a(m),B8=[0,a(w),481,5,482,53,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],B5=a(m),B6=a("0.0976"),B7=a(m),B4=[0,a(w),473,5,474,53,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],B1=a(m),B2=a("0.115"),B3=a(m),B0=[0,a(w),465,5,466,53,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],BX=a(m),BY=a("0.1163"),BZ=a(m),BW=[0,a(w),457,5,458,53,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],BT=a(m),BU=a("0.122"),BV=a(m),BS=[0,a(w),449,5,450,53,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],BP=a(m),BQ=a("0.1278"),BR=a(m),BO=[0,a(w),441,5,442,53,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],BL=a(m),BM=a("0.1335"),BN=a(m),BK=[0,a(w),433,5,434,53,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],BH=a(m),BI=a("0.1393"),BJ=a(m),BG=[0,a(w),425,5,jJ,53,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],BD=a(m),BE=a("0.145"),BF=a(m),BC=[0,a(w),mo,14,mo,57,[0,a(cP),[0,a(J),[0,a(K),[0,a(p),0]]]]],Bz=a(m),BA=a(jB),BB=a(m),Bw=[0,a(w),kr,5,kr,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],Bt=a(_),Bu=a("0.3068"),Bv=a(m),Bs=[0,a(w),jL,5,jL,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],Bp=a(_),Bq=a("0.2936"),Br=a(m),Bo=[0,a(w),ka,5,ka,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],Bl=a(_),Bm=a("0.284"),Bn=a(m),Bk=[0,a(w),lo,5,lo,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],Bh=a(_),Bi=a("0.2672"),Bj=a(m),Bg=[0,a(w),jC,5,jC,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],Bd=a(_),Be=a("0.273"),Bf=a(m),Bc=[0,a(w),kk,5,kk,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],A$=a(_),Ba=a("0.2555"),Bb=a(m),A_=[0,a(w),kb,5,kb,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],A7=a(_),A8=a("0.2496"),A9=a(m),A6=[0,a(w),lP,5,lP,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],A3=a(_),A4=a("0.2437"),A5=a(m),A2=[0,a(w),gs,5,gs,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],AZ=a(_),A0=a("0.2379"),A1=a(m),AY=[0,a(w),la,5,la,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],AV=a(_),AW=a("0.232"),AX=a(m),AU=[0,a(w),lY,14,lY,58,[0,a(cP),[0,a(J),[0,a(K),[0,a(p),0]]]]],AR=a(_),AS=a(l5),AT=a(m),AO=[0,a(w),lT,5,lT,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],AL=a(az),AM=a("0.143"),AN=a(m),AK=[0,a(w),kQ,5,kQ,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],AH=a(az),AI=a("0.1259"),AJ=a(m),AG=[0,a(w),kJ,5,kJ,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],AD=a(az),AE=a("0.1089"),AF=a(m),AC=[0,a(w),iS,5,iS,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],Az=a(az),AA=a("0.0918"),AB=a(m),Ay=[0,a(w),md,5,md,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],Av=a(az),Aw=a("0.0842"),Ax=a(m),Au=[0,a(w),mk,5,mk,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],Ar=a(az),As=a("0.0766"),At=a(m),Aq=[0,a(w),l9,5,l9,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],An=a(az),Ao=a("0.069"),Ap=a(m),Am=[0,a(w),jw,5,jw,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],Aj=a(az),Ak=a("0.075"),Al=a(m),Ai=[0,a(w),k0,5,k0,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],Af=a(az),Ag=a("0.0539"),Ah=a(m),Ae=[0,a(w),j1,5,j1,69,[0,a(O),[0,a(J),[0,a(K),[0,a(p),0]]]]],Ab=a(az),Ac=a(jX),Ad=a(m),Aa=[0,a(w),gh,14,gh,59,[0,a(cP),[0,a(J),[0,a(K),[0,a(p),0]]]]],z9=a(az),z_=a(gg),z$=a(m),z6=[0,a(w),gR,14,gR,67,[0,a(cP),[0,a(J),[0,a(K),[0,a(p),0]]]]],z2=a(eZ),z3=a(eZ),z4=a(jX),z5=a(m),zY=a(_),zZ=[0,a(am),420,6,421,72,[0,a(gw),[0,a(b6),[0,a(eO),[0,a(bM),[0,a(al),[0,a(v),0]]]]]]],zT=[0,a(af),[0,a(dA),[0,a(ay),0]]],zU=[0,a(af),[0,a(dA),0]],zV=[0,a(af),[0,a(dA),[0,a(aB),0]]],zW=[0,a(af),[0,a(dA),0]],zX=[0,a(am),j8,5,gt,59,[0,a(mw),[0,a(B),[0,a(C),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],zS=[0,a(s),ba,12,ba,36,[0,a(r),0]],F3=a(_),F4=[0,a(am),jJ,5,427,71,[0,a(gw),[0,a(b6),[0,a(eO),[0,a(bM),[0,a(al),[0,a(v),0]]]]]]],zN=[0,a(w),mf,5,mf,69,[0,a(b7),[0,a(kj),[0,a(b3),[0,a(p),0]]]]],zL=a(jE),zM=a("5827900"),zK=[0,a(w),bt,5,bt,69,[0,a(j0),[0,a(b3),[0,a(p),0]]]],zI=a(ly),zJ=a("5775900"),zH=[0,a(w),bZ,5,bZ,69,[0,a(iW),[0,a(b3),[0,a(p),0]]]],zF=a(l6),zG=a("5684900"),zE=[0,a(w),87,5,87,69,[0,a(mg),[0,a(b3),[0,a(p),0]]]],zC=a(lp),zD=a("5628600"),zB=[0,a(S),ju,14,ju,30,[0,a(kF),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],zz=a(mt),zA=a("5595000"),zw=[0,a(w),kh,5,kh,69,[0,a(b7),[0,a(kj),[0,a(b3),[0,a(p),0]]]]],zu=a(jE),zv=a("8155800"),zt=[0,a(w),jY,5,jY,69,[0,a(j0),[0,a(b3),[0,a(p),0]]]],zr=a(ly),zs=a("8083100"),zq=[0,a(w),ba,5,ba,69,[0,a(iW),[0,a(b3),[0,a(p),0]]]],zo=a(l6),zp=a("7955800"),zn=[0,a(w),94,5,94,69,[0,a(mg),[0,a(b3),[0,a(p),0]]]],zl=a(lp),zm=a("7877000"),zk=[0,a(S),l4,14,l4,31,[0,a(kF),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],zi=a(mt),zj=a("7830000"),zf=[0,a(Z),33,14,33,36,[0,a(cl),[0,a(Y),[0,a(p),0]]]],ze=[0,a(s),eS,12,eS,34,[0,a(r),0]],zb=[0,a(am),75,14,75,64,[0,a(eI),[0,a(ey),[0,a(ds),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],y9=[0,a(af),[0,a(dw),[0,a(ay),0]]],y_=[0,a(af),[0,a(dw),0]],y$=[0,a(af),[0,a(dw),[0,a(aB),0]]],za=[0,a(af),[0,a(dw),0]],y6=[0,a(bk),83,19,83,69,[0,a(gn),[0,a(B),[0,a(C),[0,a(x),[0,a(bp),[0,a(v),0]]]]]]],y5=a("14"),y4=[0,a(s),eP,12,eP,39,[0,a(r),0]],yZ=[0,a(Z),32,14,32,40,[0,a(cl),[0,a(Y),[0,a(p),0]]]],y0=[0,a(g),[0,a("enfant_le_plus_\xc3\xa2g\xc3\xa9.enfants"),0]],yV=[0,a(s),gU,14,gU,46,[0,a(r),0]],yW=[0,a(g),[0,a("prestations_familiales.r\xc3\xa9sidence"),0]],yT=[0,a(s),kO,14,kO,56,[0,a(r),0]],yS=[1,0],yU=[0,a(g),[0,a("prestations_familiales.prestation_courante"),0]],yQ=[0,a(s),lM,14,lM,50,[0,a(r),0]],yR=[0,a(g),[0,a("prestations_familiales.date_courante"),0]],yM=[0,a(bk),64,14,64,44,[0,a(gn),[0,a(B),[0,a(C),[0,a(x),[0,a(bp),[0,a(v),0]]]]]]],yL=a(eZ),yI=[0,a(S),lX,14,lX,35,[0,a(b2),[0,a(B),[0,a(C),[0,a(x),[0,a(R),[0,a(v),0]]]]]]],yH=a(eZ),yE=[0,a(k),0,1,0,1,0],yB=[0,a(am),269,5,270,48,[0,a(br),[0,a(B),[0,a(C),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],yA=[0,0],yz=[0,a(am),kT,5,259,56,[0,a(br),[0,a(B),[0,a(C),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],yy=[1,0],yx=[0,a(am),k7,5,k7,70,[0,a(br),[0,a(B),[0,a(C),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],yw=[0,0],yv=[0,a(am),lk,5,lk,69,[0,a(br),[0,a(B),[0,a(C),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],yu=[0,0],yt=[0,a(am),jZ,5,jZ,60,[0,a(br),[0,a(B),[0,a(C),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],ys=[0,0],yr=[0,a(k),0,1,0,1,0],yq=[0,a(s),cm,12,cm,21,[0,a(r),0]],yn=[0,a(am),263,5,ky,48,[0,a(br),[0,a(B),[0,a(C),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],ym=[0,0],yl=[0,a(am),lH,5,dx,56,[0,a(br),[0,a(B),[0,a(C),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],yk=[2,0],yj=[0,a(am),jI,5,jI,70,[0,a(br),[0,a(B),[0,a(C),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],yi=[1,0],yh=[0,a(am),kc,5,kc,69,[0,a(br),[0,a(B),[0,a(C),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],yg=[0,0],yf=[0,a(am),eU,5,eU,60,[0,a(br),[0,a(B),[0,a(C),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],ye=[0,0],yd=[0,a(k),0,1,0,1,0],yc=[0,a(s),cM,12,cM,27,[0,a(r),0]],x$=[0,a(k),0,1,0,1,0],x8=[0,a(k),0,1,0,1,0],x5=[0,a(k),0,1,0,1,0],x2=[0,a(k),0,1,0,1,0],xZ=[0,a(k),0,1,0,1,0],xW=[0,a(k),0,1,0,1,0],xV=[0,a(s),90,12,90,59,[0,a(r),0]],xX=[0,a(g),[0,a(l$),0]],xY=[0,a(s),91,12,91,64,[0,a(r),0]],x0=[0,a(g),[0,a(iU),0]],x1=[0,a(s),92,12,92,29,[0,a(r),0]],x3=[0,a(g),[0,a(kH),0]],x4=[0,a(s),93,12,93,21,[0,a(r),0]],x6=[0,a(g),[0,a(e4),0]],x7=[0,a(s),96,12,96,25,[0,a(r),0]],x9=[0,a(g),[0,a(eW),0]],x_=[0,a(s),99,12,99,28,[0,a(r),0]],ya=[0,a(g),[0,a(kK),0]],yb=[0,a(s),cM,12,cM,27,[0,a(r),0]],yo=[0,a(g),[0,a(bK),0]],yp=[0,a(s),cm,12,cm,21,[0,a(r),0]],yC=[0,a(g),[0,a("versement"),0]],yD=[0,a(s),bZ,12,bZ,56,[0,a(r),0]],yF=[0,a(g),[0,a(kq),0]],yG=[0,a(s),gi,12,gi,33,[0,a(r),0]],yJ=[0,a(g),[0,a("nombre_enfants_l521_1"),0]],yK=[0,a(s),bt,12,bt,42,[0,a(r),0]],yN=[0,a(g),[0,a("nombre_enfants_alin\xc3\xa9a_2_l521_3"),0]],yO=[0,a(g),[0,a(j7),[0,a(gF),0]]],yP=[0,a(g),[0,a(j7),[0,a(gF),0]]],yX=[0,a(g),[0,a(lL),[0,a(af),0]]],yY=[0,a(g),[0,a(lL),[0,a(af),0]]],y1=[0,a(g),[0,a(kx),[0,a(e1),0]]],y2=[0,a(g),[0,a(kx),[0,a(e1),0]]],y3=[0,a(s),eP,12,eP,39,[0,a(r),0]],y7=[0,a(g),[0,a(bm),0]],y8=[0,a(s),aW,12,aW,62,[0,a(r),0]],zc=[0,a(g),[0,a("enfants_\xc3\xa0_charge_droit_ouvert_prestation_familiale"),0]],zd=[0,a(s),eS,12,eS,34,[0,a(r),0]],zg=[0,a(g),[0,a(dH),0]],zh=[0,a(s),ke,12,ke,29,[0,a(r),0]],zx=[0,a(g),[0,a("plafond_II_d521_3"),0]],zy=[0,a(s),jM,12,jM,28,[0,a(r),0]],zO=[0,a(g),[0,a("plafond_I_d521_3"),0]],zP=[0,a(s),kN,12,kN,35,[0,a(r),0]],zQ=[0,a(g),[0,a("droit_ouvert_compl\xc3\xa9ment"),0]],zR=[0,a(s),ba,12,ba,36,[0,a(r),0]],z0=[0,a(g),[0,a(dD),0]],z1=[0,a(s),dC,12,dC,65,[0,a(r),0]],z7=[0,a(g),[0,a("montant_initial_base_quatri\xc3\xa8me_enfant_et_plus_mayotte"),0]],z8=[0,a(s),kP,12,kP,57,[0,a(r),0]],AP=[0,a(g),[0,a("montant_initial_base_troisi\xc3\xa8me_enfant_mayotte"),0]],AQ=[0,a(s),gT,12,gT,56,[0,a(r),0]],Bx=[0,a(g),[0,a("montant_initial_base_deuxi\xc3\xa8me_enfant_mayotte"),0]],By=[0,a(s),i1,12,i1,55,[0,a(r),0]],Cj=[0,a(g),[0,a("montant_initial_base_premier_enfant_mayotte"),0]],Ck=[0,a(s),i9,12,i9,32,[0,a(r),0]],Cm=[0,a(g),[0,a("nombre_total_enfants"),0]],Cn=[0,a(s),gH,12,gH,32,[0,a(r),0]],Cx=[0,a(g),[0,a("nombre_moyen_enfants"),0]],Cz=a(m),Cy=[0,a(s),gQ,12,gQ,47,[0,a(r),0]],CA=[0,a(g),[0,a("montant_initial_base_premier_enfant"),0]],CB=[0,a(s),kI,12,kI,29,[0,a(r),0]],CC=[0,a(g),[0,a("droit_ouvert_base"),0]],CD=[0,a(s),cQ,12,cQ,35,[0,a(r),0]],CT=[0,a(g),[0,a($),0]],CU=[0,a(s),eB,12,eB,32,[0,a(r),0]],C8=[0,a(g),[0,a(dJ),0]],C9=[0,a(s),bN,12,bN,48,[0,a(r),0]],Df=[0,a(g),[0,a("montant_vers\xc3\xa9_forfaitaire_par_enfant"),0]],Dg=[0,a(s),dK,12,dK,57,[0,a(r),0]],Dx=[0,a(g),[0,a("montant_initial_base_troisi\xc3\xa8me_enfant_et_plus"),0]],Dy=[0,a(s),gS,12,gS,48,[0,a(r),0]],DM=[0,a(g),[0,a("montant_initial_base_deuxi\xc3\xa8me_enfant"),0]],DN=[0,a(s),cU,12,cU,39,[0,a(r),0]],DR=[0,a(g),[0,a("rapport_enfants_total_moyen"),0]],DS=[0,a(s),eV,12,eV,48,[0,a(r),0]],Eh=[0,a(g),[0,a(dz),0]],Ei=[0,a(s),i7,12,i7,37,[0,a(r),0]],Eq=[0,a(g),[0,a("montant_vers\xc3\xa9_forfaitaire"),0]],Er=[0,a(s),jU,12,jU,32,[0,a(r),0]],Ex=[0,a(g),[0,a("montant_initial_base"),0]],Ey=[0,a(s),es,12,es,38,[0,a(r),0]],EW=[0,a(g),[0,a(du),0]],EX=[0,a(s),kz,12,kz,53,[0,a(r),0]],E_=[0,a(g),[0,a("montant_vers\xc3\xa9_compl\xc3\xa9ment_pour_forfaitaire"),0]],E$=[0,a(s),gx,12,gx,44,[0,a(r),0]],Fb=[0,a(g),[0,a("montant_avec_garde_altern\xc3\xa9e_base"),0]],Fc=[0,a(s),eH,12,eH,50,[0,a(r),0]],Fq=[0,a(g),[0,a(dy),0]],Fr=[0,a(s),l8,12,l8,30,[0,a(r),0]],Fu=[0,a(g),[0,a("montant_vers\xc3\xa9_base"),0]],Fv=[0,a(s),kZ,12,kZ,36,[0,a(r),0]],FD=[0,a(g),[0,a("montant_vers\xc3\xa9_majoration"),0]],FE=[0,a(s),lg,12,lg,59,[0,a(r),0]],FG=[0,a(g),[0,a("montant_base_compl\xc3\xa9ment_pour_base_et_majoration"),0]],FH=[0,a(s),eJ,12,eJ,60,[0,a(r),0]],FO=[0,a(g),[0,a("montant_vers\xc3\xa9_compl\xc3\xa9ment_pour_base_et_majoration"),0]],FP=[0,a(s),iX,12,iX,25,[0,a(r),0]],FS=[0,a(g),[0,a(jz),0]],xI=[0,a(am),60,5,62,32,[0,a(eI),[0,a(ey),[0,a(ds),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],xH=[0,a(am),49,5,50,50,[0,a(eI),[0,a(ey),[0,a(ds),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],xG=[0,a(k),0,1,0,1,0],xF=[0,a(s),65,12,65,24,[0,a(r),0]],xC=[0,a(am),68,5,71,57,[0,a(eI),[0,a(ey),[0,a(ds),[0,a(x),[0,a(al),[0,a(v),0]]]]]]],xB=[0,a(s),66,12,66,31,[0,a(r),0]],xM=[0,a(bk),jp,18,jp,41,[0,a("Article R755-0-2"),[0,a(b6),[0,a(dr),[0,a(bM),[0,a(bp),[0,a(v),0]]]]]]],xK=a(lN),xL=a(jV),xN=[0,0],xP=[1,0],xQ=[2,0],xR=[3,0],xS=[4,0],xT=[5,0],xO=[0,a(am),354,5,kU,30,[0,a("Article L751-1"),[0,a("Chapitre 1er : G\xc3\xa9n\xc3\xa9ralit\xc3\xa9s"),[0,a(eO),[0,a(bM),[0,a(al),[0,a(v),0]]]]]]],xq=[0,a(s),77,14,77,28,[0,a(r),0]],xr=[0,a(af),[0,a("smic.r\xc3\xa9sidence"),0]],xo=[0,a(s),78,14,78,32,[0,a(r),0]],xp=[0,a(af),[0,a("smic.date_courante"),0]],xm=[0,a(w),60,5,61,34,[0,a("Instruction interminist\xc3\xa9rielle n\xc2\xb0DSS/2B/2021/65 du 19 mars 2021 relative \xc3\xa0 la revalorisation au 1er avril 2021 des prestations familiales servies en m\xc3\xa9tropole, en Guadeloupe, en Guyane, en Martinique, \xc3\xa0 la R\xc3\xa9union, \xc3\xa0 Saint-Barth\xc3\xa9lemy, \xc3\xa0 Saint-Martin et dans le d\xc3\xa9partement de Mayotte"),[0,a(gq),[0,a(p),0]]]],xl=a("41481"),xk=[0,a(w),44,5,45,34,[0,a("Instruction interminist\xc3\xa9rielle no DSS/SD2B/2020/33 du 18 f\xc3\xa9vrier 2020 relative \xc3\xa0 la revalorisation au 1er avril 2020 des prestations familiales servies en m\xc3\xa9tropole, en Guadeloupe, en Guyane, en Martinique, \xc3\xa0 La R\xc3\xa9union, \xc3\xa0 Saint-Barth\xc3\xa9lemy, \xc3\xa0 Saint-Martin et dans le d\xc3\xa9partement de Mayotte"),[0,a(gq),[0,a(p),0]]]],xj=a("41404"),xi=[0,a(w),24,5,25,34,[0,a("Instruction minist\xc3\xa9rielle N\xc2\xb0DSS/SD2B/2019/65 du 25 mars 2019 relative \xc3\xa0 la revalorisation au 1er avril 2019 des prestations familiales servies en m\xc3\xa9tropole"),[0,a(gq),[0,a(p),0]]]],xh=a("41316"),xg=[0,a(k),0,1,0,1,0],xd=[0,a(k),0,1,0,1,0],xa=[0,a(k),0,1,0,1,0],w9=[0,a(k),0,1,0,1,0],w6=[0,a(bk),21,14,21,26,[0,a("Article R512-2"),[0,a("Chapitre 2 : Champ d'application."),[0,a(ds),[0,a(x),[0,a(bp),[0,a(v),0]]]]]]],w5=a("20"),w4=[0,a(s),68,12,68,24,[0,a(r),0]],w7=[0,a(af),[0,a("\xc3\xa2ge_l512_3_2"),0]],w8=[0,a(s),70,12,70,25,[0,a(r),0]],w_=[0,a(af),[0,a(eW),0]],w$=[0,a(s),71,12,71,31,[0,a(r),0]],xb=[0,a(af),[0,a("prestation_courante"),0]],xc=[0,a(s),72,12,72,21,[0,a(r),0]],xe=[0,a(af),[0,a(e4),0]],xf=[0,a(s),74,12,74,26,[0,a(r),0]],xn=[0,a(af),[0,a("base_mensuelle"),0]],xs=[0,a(af),[0,a(mm),[0,a(dt),0]]],xt=[0,a(af),[0,a(mm),[0,a(dt),0]]],xu=[0,a(s),69,12,69,35,[0,a(r),0]],xv=[0,a(af),[0,a("r\xc3\xa9gime_outre_mer_l751_1"),0]],xx=a(lN),xy=a(jV),xw=[0,a(s),67,12,67,28,[0,a(r),0]],xz=[0,a(af),[0,a("plafond_l512_3_2"),0]],xA=[0,a(s),66,12,66,31,[0,a(r),0]],xD=[0,a(af),[0,a(dA),0]],xE=[0,a(s),65,12,65,24,[0,a(r),0]],xJ=[0,a(af),[0,a(dw),0]],w1=[0,a(Z),12,14,12,25,[0,a(cl),[0,a(Y),[0,a(p),0]]]],wW=[2,0],wX=a(m),wY=a(m),wZ=[1,0],w0=a(_),wT=[0,a(k),0,1,0,1,0],wS=[0,a(s),84,12,84,19,[0,a(r),0]],wU=[0,a(e1),[0,a(ma),0]],wV=[0,a(s),85,12,85,23,[0,a(r),0]],w2=[0,a(e1),[0,a("le_plus_\xc3\xa2g\xc3\xa9"),0]],wP=[0,a(bk),78,14,78,41,[0,a(gn),[0,a(B),[0,a(C),[0,a(x),[0,a(bp),[0,a(v),0]]]]]]],wO=a(gl),wN=[0,a(s),81,12,81,39,[0,a(r),0]],wQ=[0,a(gF),[0,a(bm),0]],wJ=[8,0],wK=[0,a(w),lW,5,317,6,[0,a(b7),[0,a(iY),[0,a(cJ),[0,a(p),0]]]]],wI=a("774"),wz=[6,0],wB=[0,0],wC=[1,0],wD=[2,0],wE=[3,0],wF=[4,0],wG=[5,0],wH=[7,0],wA=[0,a(w),297,5,306,6,[0,a(b7),[0,a(iY),[0,a(cJ),[0,a(p),0]]]]],wy=a("1025"),ww=[8,0],wx=[0,a(w),276,5,278,6,[0,a(b7),[0,a(jr),[0,a(cJ),[0,a(p),0]]]]],wv=a("766"),wm=[6,0],wo=[0,0],wp=[1,0],wq=[2,0],wr=[3,0],ws=[4,0],wt=[5,0],wu=[7,0],wn=[0,a(w),kT,5,267,6,[0,a(b7),[0,a(jr),[0,a(cJ),[0,a(p),0]]]]],wl=a("1015"),wj=[8,0],wk=[0,a(w),237,5,239,6,[0,a(b7),[0,a(iT),[0,a(cJ),[0,a(p),0]]]]],wi=a("757"),v$=[6,0],wb=[0,0],wc=[1,0],wd=[2,0],we=[3,0],wf=[4,0],wg=[5,0],wh=[7,0],wa=[0,a(w),219,5,228,6,[0,a(b7),[0,a(iT),[0,a(cJ),[0,a(p),0]]]]],v_=a("1003"),v9=[0,a(k),0,1,0,1,0],v6=[0,a(k),0,1,0,1,0],v3=[0,a(k),0,1,0,1,0],v2=[0,a(s),41,12,41,25,[0,a(r),0]],v4=[0,a(dt),[0,a(eW),0]],v5=[0,a(s),42,12,42,21,[0,a(r),0]],v7=[0,a(dt),[0,a(e4),0]],v8=[0,a(s),43,12,43,24,[0,a(r),0]],wL=[0,a(dt),[0,a("brut_horaire"),0]],vT=a("a_d\xc3\xa9j\xc3\xa0_ouvert_droit_aux_allocations_familiales"),vU=a("prise_en_charge"),vV=a("\xc3\xa2ge"),vW=a("date_de_naissance"),vX=a("r\xc3\xa9muneration_mensuelle"),vY=a("obligation_scolaire"),vZ=a("identifiant"),v0=[0,a("Enfant"),0],vN=a("d_a_d\xc3\xa9j\xc3\xa0_ouvert_droit_aux_allocations_familiales"),vO=a("d_prise_en_charge"),vP=a("d_date_de_naissance"),vQ=a("d_r\xc3\xa9muneration_mensuelle"),vR=a("d_identifiant"),vS=[0,a("EnfantEntr\xc3\xa9e"),0],vD=a("PrestationAccueilJeuneEnfant"),vF=a(g),vG=a("Compl\xc3\xa9mentFamilial"),vH=a("AllocationLogement"),vI=a("Allocation\xc3\x89ducationEnfantHandicap\xc3\xa9"),vJ=a("AllocationSoutienFamilial"),vK=a("AllocationRentr\xc3\xa9eScolaire"),vL=a("AllocationJournali\xc3\xa8rePresenceParentale"),vE=[0,a("\xc3\x89l\xc3\xa9mentPrestationsFamiliales"),0],vt=a(kt),vv=a(k9),vw=a(jn),vx=a("LaR\xc3\xa9union"),vy=a("SaintBarth\xc3\xa9lemy"),vz=a("SaintMartin"),vA=a(kd),vB=a("SaintPierreEtMiquelon"),vC=a(lF),vu=[0,a("Collectivit\xc3\xa9"),0],vp=a("Avant"),vr=a("Pendant"),vs=a("Apr\xc3\xa8s"),vq=[0,a("SituationObligationScolaire"),0],vj=a("GardeAltern\xc3\xa9ePartageAllocations"),vl=a("GardeAltern\xc3\xa9eAllocataireUnique"),vm=a("EffectiveEtPermanente"),vn=a("ServicesSociauxAllocationVers\xc3\xa9e\xc3\x80LaFamille"),vo=a("ServicesSociauxAllocationVers\xc3\xa9eAuxServicesSociaux"),vk=[0,a("PriseEnCharge"),0],GO=a("Jsoo_runtime.Error.Exn"),GP=a(go),Ht=a("Begin call"),Hu=a("End call"),Hv=a("Variable definition"),Hw=a("Decision taken"),Hh=a("Confi\xc3\xa9 aux service sociaux, allocation vers\xc3\xa9e aux services sociaux"),Hi=a("Confi\xc3\xa9 aux service sociaux, allocation vers\xc3\xa9e \xc3\xa0 la famille"),Hj=a("Effective et permanente"),Hk=a("Garde altern\xc3\xa9e, allocataire unique"),Hl=a("Garde altern\xc3\xa9e, partage des allocations"),Hn=[0,0],Ho=[1,0],Hp=[2,0],Hq=[3,0],Hr=[4,0],Hm=a("Unknown prise en charge"),G0=a(kt),G1=a(k9),G2=a("La R\xc3\xa9union"),G3=a(jn),G4=a(lF),G5=a(kd),G6=a("Saint Barth\xc3\xa9lemy"),G7=a("Saint Martin"),G8=a("Saint Pierre et Miquelon"),G_=[7,0],G$=[5,0],Ha=[4,0],Hb=[6,0],Hc=[8,0],Hd=[2,0],He=[3,0],Hf=[1,0],Hg=[0,0],G9=a("unknown collectivite!"),GY=a(k),GW=[0,[4,0,0,0,[12,68,[4,0,0,0,[12,77,[4,0,0,0,[12,89,0]]]]]],a("%dD%dM%dY")],GV=[0,a(lh),a(ln),a(lK)];function +ac(a){if(typeof a==="number")return 0;else switch(a[0]){case -0:return[0,$(a[1])];case -1:return[1,$(a[1])];case -2:return[2,$(a[1])];case -3:return[3,$(a[1])];case -4:return[4,$(a[1])];case -5:return[5,$(a[1])];case -6:return[6,$(a[1])];case -7:return[7,$(a[1])];case +0:return[0,ac(a[1])];case +1:return[1,ac(a[1])];case +2:return[2,ac(a[1])];case +3:return[3,ac(a[1])];case +4:return[4,ac(a[1])];case +5:return[5,ac(a[1])];case +6:return[6,ac(a[1])];case +7:return[7,ac(a[1])];case 8:var -c=a[1];return[8,c,$(a[2])];case +c=a[1];return[8,c,ac(a[2])];case 9:var -b=a[1];return[9,b,b,$(a[3])];case -10:return[10,$(a[1])];case -11:return[11,$(a[1])];case -12:return[12,$(a[1])];case -13:return[13,$(a[1])];default:return[14,$(a[1])]}}function -aF(a,b){if(typeof +b=a[1];return[9,b,b,ac(a[3])];case +10:return[10,ac(a[1])];case +11:return[11,ac(a[1])];case +12:return[12,ac(a[1])];case +13:return[13,ac(a[1])];default:return[14,ac(a[1])]}}function +aG(a,b){if(typeof a==="number")return b;else switch(a[0]){case -0:return[0,aF(a[1],b)];case -1:return[1,aF(a[1],b)];case -2:return[2,aF(a[1],b)];case -3:return[3,aF(a[1],b)];case -4:return[4,aF(a[1],b)];case -5:return[5,aF(a[1],b)];case -6:return[6,aF(a[1],b)];case -7:return[7,aF(a[1],b)];case +0:return[0,aG(a[1],b)];case +1:return[1,aG(a[1],b)];case +2:return[2,aG(a[1],b)];case +3:return[3,aG(a[1],b)];case +4:return[4,aG(a[1],b)];case +5:return[5,aG(a[1],b)];case +6:return[6,aG(a[1],b)];case +7:return[7,aG(a[1],b)];case 8:var -c=a[1];return[8,c,aF(a[2],b)];case +c=a[1];return[8,c,aG(a[2],b)];case 9:var -d=a[2],e=a[1];return[9,e,d,aF(a[3],b)];case -10:return[10,aF(a[1],b)];case -11:return[11,aF(a[1],b)];case -12:return[12,aF(a[1],b)];case -13:return[13,aF(a[1],b)];default:return[14,aF(a[1],b)]}}function -U(a,b){if(typeof +d=a[2],e=a[1];return[9,e,d,aG(a[3],b)];case +10:return[10,aG(a[1],b)];case +11:return[11,aG(a[1],b)];case +12:return[12,aG(a[1],b)];case +13:return[13,aG(a[1],b)];default:return[14,aG(a[1],b)]}}function +W(a,b){if(typeof a==="number")return b;else switch(a[0]){case -0:return[0,U(a[1],b)];case -1:return[1,U(a[1],b)];case +0:return[0,W(a[1],b)];case +1:return[1,W(a[1],b)];case 2:var -c=a[1];return[2,c,U(a[2],b)];case +c=a[1];return[2,c,W(a[2],b)];case 3:var -d=a[1];return[3,d,U(a[2],b)];case +d=a[1];return[3,d,W(a[2],b)];case 4:var -e=a[3],f=a[2],g=a[1];return[4,g,f,e,U(a[4],b)];case +e=a[3],f=a[2],g=a[1];return[4,g,f,e,W(a[4],b)];case 5:var -h=a[3],i=a[2],j=a[1];return[5,j,i,h,U(a[4],b)];case +h=a[3],i=a[2],j=a[1];return[5,j,i,h,W(a[4],b)];case 6:var -k=a[3],l=a[2],m=a[1];return[6,m,l,k,U(a[4],b)];case +k=a[3],l=a[2],m=a[1];return[6,m,l,k,W(a[4],b)];case 7:var -n=a[3],o=a[2],p=a[1];return[7,p,o,n,U(a[4],b)];case +n=a[3],o=a[2],p=a[1];return[7,p,o,n,W(a[4],b)];case 8:var -q=a[3],r=a[2],s=a[1];return[8,s,r,q,U(a[4],b)];case +q=a[3],r=a[2],s=a[1];return[8,s,r,q,W(a[4],b)];case 9:var -t=a[1];return[9,t,U(a[2],b)];case -10:return[10,U(a[1],b)];case +t=a[1];return[9,t,W(a[2],b)];case +10:return[10,W(a[1],b)];case 11:var -u=a[1];return[11,u,U(a[2],b)];case +u=a[1];return[11,u,W(a[2],b)];case 12:var -v=a[1];return[12,v,U(a[2],b)];case +v=a[1];return[12,v,W(a[2],b)];case 13:var -w=a[2],x=a[1];return[13,x,w,U(a[3],b)];case +w=a[2],x=a[1];return[13,x,w,W(a[3],b)];case 14:var -y=a[2],z=a[1];return[14,z,y,U(a[3],b)];case -15:return[15,U(a[1],b)];case -16:return[16,U(a[1],b)];case +y=a[2],z=a[1];return[14,z,y,W(a[3],b)];case +15:return[15,W(a[1],b)];case +16:return[16,W(a[1],b)];case 17:var -A=a[1];return[17,A,U(a[2],b)];case +A=a[1];return[17,A,W(a[2],b)];case 18:var -B=a[1];return[18,B,U(a[2],b)];case -19:return[19,U(a[1],b)];case +B=a[1];return[18,B,W(a[2],b)];case +19:return[19,W(a[1],b)];case 20:var -C=a[2],D=a[1];return[20,D,C,U(a[3],b)];case +C=a[2],D=a[1];return[20,D,C,W(a[3],b)];case 21:var -E=a[1];return[21,E,U(a[2],b)];case -22:return[22,U(a[1],b)];case +E=a[1];return[21,E,W(a[2],b)];case +22:return[22,W(a[1],b)];case 23:var -F=a[1];return[23,F,U(a[2],b)];default:var -G=a[2],H=a[1];return[24,H,G,U(a[3],b)]}}function -e_(a,c,b){return a[1]===c?(a[1]=b,1):0}function -bB(a){throw[0,dT,a]}function -ai(a){throw[0,g2,a]}var -g3=[O,mT,aj(0)];function -dU(b,a){return mA(b,a)?b:a}function -c3(a){return 0<=a?a:-a|0}var -mU=k6,mW=cW(mV),mY=cW(mX),m0=cW(mZ);function -bc(d,c){var -a=G(d),e=G(c),b=af(a+e|0);b8(d,0,b,0,a);b8(c,0,b,a,e);return aD(b)}function -m1(a){return a?m2:m3}Hf(0);var -m6=mD(1),bg=mD(2);function -m7(b){function +F=a[1];return[23,F,W(a[2],b)];default:var +G=a[2],H=a[1];return[24,H,G,W(a[3],b)]}}function +fl(a,c,b){return a[1]===c?(a[1]=b,1):0}function +bz(a){throw[0,dV,a]}function +ak(a){throw[0,hh,a]}var +hi=[N,na,aE(0)];function +dW(b,a){return mO(b,a)?b:a}function +c6(a){return 0<=a?a:-a|0}var +nb=gG,nd=c0(nc),nf=c0(ne),nh=c0(ng);function +a$(d,c){var +a=I(d),e=I(c),b=ai(a+e|0);b_(d,0,b,0,a);b_(c,0,b,a,e);return aF(b)}function +ni(a){return a?nj:nk}Ij(0);var +nn=mS(1),bd=mS(2);function +no(b){function a(b){var a=b;for(;;){if(a){var -c=a[2],e=a[1];try{cm(e)}catch(a){a=d(a);if(a[1]!==g6)throw a;var +c=a[2],e=a[1];try{cp(e)}catch(a){a=d(a);if(a[1]!==hl)throw a;var f=a}var -a=c;continue}return 0}}return a(Hg(0))}function -c4(b,a){return gS(b,a,0,G(a))}function -g9(a){c4(bg,a);mE(bg,10);return cm(bg)}var -fa=[0,m7];function -g_(d){for(;;){var -a=fa[1],e=[0,1],b=1-e_(fa,a,function(a,b){return function(e){if(e_(a,1,0))c(d,0);return c(b,0)}}(e,a));if(b)continue;return b}}function -fb(a){return c(fa[1],0)}gV(a(ix),fb);if(Hu(0))g_(function(a){return GP(a)});function -cs(a){if(0<=a&&!(cN>>0){if(!(25<(b+bd|0)>>>0))c=1}else +a=c;continue}return 0}}return a(Ik(0))}function +c7(b,a){return g9(b,a,0,I(a))}function +ho(a){c7(bd,a);mT(bd,10);return cp(bd)}var +fn=[0,no];function +nq(d){for(;;){var +a=fn[1],e=[0,1],b=1-fl(fn,a,function(a,b){return function(e){if(fl(a,1,0))c(d,0);return c(b,0)}}(e,a));if(b)continue;return b}}function +fo(a){return c(fn[1],0)}ha(a(iP),fo);function +cv(a){if(0<=a&&!(cR>>0){if(!(25>>0))c=1}else if(23!==b)c=1;return c?a+32|0:a}var -ha=Ht(0),c5=(4*ha|0)-1|0;aj(0);var -ne=Hs(0);function -hb(c){var +hq=Iw(0),c8=(4*hq|0)-1|0;function +hr(c){var b=0,a=c;for(;;){if(a){var b=b+1|0,a=a[2];continue}return b}}function -hc(a){return a?a[1]:bB(nf)}function -dV(d){var +hs(a){return a?a[1]:bz(ny)}function +dX(d){var a=d,b=0;for(;;){if(a){var -c=[0,a[1],b],a=a[2],b=c;continue}return b}}typeof -ne==="number";function +c=[0,a[1],b],a=a[2],b=c;continue}return b}}function cc(b,a){if(a){var d=a[2],e=c(b,a[1]);return[0,e,cc(b,d)]}return 0}function -bh(a,c){var -b=af(a);GM(b,0,a,c);return b}function -hd(a){var -b=a3(a),c=af(b);b7(a,0,c,0,b);return c}function -dW(a){return aD(hd(a))}function -he(c,b,a){if(0<=b&&0<=a&&!((a3(c)-a|0)>>0))e=1}else +f=0;if(1>>0))e=1}else if(65<=d)e=1}else{var -f=0;if(32!==d)if(43<=d)switch(d+l5|0){case +f=0;if(32!==d)if(43<=d)switch(d+mj|0){case 5:if(a<(c+2|0)&&1>>0){if(33<(n-61|0)>>>0)p=1}else +n=c3(k,j)+gP|0,p=0;if(59>>0){if(33>>0)p=1}else if(2===n)p=1;if(!p){var j=j+1|0;continue}var -e=bO(k),a=[0,0],r=a3(e)-1|0,w=0;if(!(r<0)){var +e=bO(k),a=[0,0],r=a1(e)-1|0,w=0;if(!(r<0)){var i=w;for(;;){var -f=dJ(e,i),g=0;if(32<=f){var +f=dM(e,i),g=0;if(32<=f){var l=f-34|0,q=0;if(58>>0){if(93<=l)q=1}else -if(56<(l-1|0)>>>0){g=1;q=1}if(!q){var +if(56>>0){g=1;q=1}if(!q){var m=1;g=2}}else if(11<=f){if(13===f)g=1}else if(8<=f)g=1;switch(g){case @@ -2077,40 +2081,40 @@ m=4;break;case 1:var m=2;break}a[1]=a[1]+m|0;var z=i+1|0;if(r!==i){var -i=z;continue}break}}if(a[1]===a3(e))var -t=hd(e);else{var -b=af(a[1]);a[1]=0;var -s=a3(e)-1|0,x=0;if(!(s<0)){var +i=z;continue}break}}if(a[1]===a1(e))var +t=ht(e);else{var +b=ai(a[1]);a[1]=0;var +s=a1(e)-1|0,x=0;if(!(s<0)){var h=x;for(;;){var -c=dJ(e,h),d=0;if(35<=c)if(92===c)d=2;else -if(bd<=c)d=1;else +c=dM(e,h),d=0;if(35<=c)if(92===c)d=2;else +if(ba<=c)d=1;else d=3;else if(32<=c)if(34<=c)d=2;else d=3;else if(14<=c)d=1;else switch(c){case -8:ad(b,a[1],92);a[1]++;ad(b,a[1],98);break;case -9:ad(b,a[1],92);a[1]++;ad(b,a[1],gk);break;case -10:ad(b,a[1],92);a[1]++;ad(b,a[1],gB);break;case -13:ad(b,a[1],92);a[1]++;ad(b,a[1],gt);break;default:d=1}switch(d){case -1:ad(b,a[1],92);a[1]++;ad(b,a[1],48+(c/aW|0)|0);a[1]++;ad(b,a[1],48+((c/10|0)%10|0)|0);a[1]++;ad(b,a[1],48+(c%10|0)|0);break;case -2:ad(b,a[1],92);a[1]++;ad(b,a[1],c);break;case -3:ad(b,a[1],c);break}a[1]++;var +8:ag(b,a[1],92);a[1]++;ag(b,a[1],98);break;case +9:ag(b,a[1],92);a[1]++;ag(b,a[1],gx);break;case +10:ag(b,a[1],92);a[1]++;ag(b,a[1],gQ);break;case +13:ag(b,a[1],92);a[1]++;ag(b,a[1],gH);break;default:d=1}switch(d){case +1:ag(b,a[1],92);a[1]++;ag(b,a[1],48+(c/aW|0)|0);a[1]++;ag(b,a[1],48+((c/10|0)%10|0)|0);a[1]++;ag(b,a[1],48+(c%10|0)|0);break;case +2:ag(b,a[1],92);a[1]++;ag(b,a[1],c);break;case +3:ag(b,a[1],c);break}a[1]++;var y=h+1|0;if(s!==h){var h=y;continue}break}}var t=b}var -o=aD(t)}var -u=G(o),v=bh(u+2|0,34);b8(o,0,v,1,u);return aD(v)}}function -hs(d,f){var -g=c3(f),e=ht?ht[1]:70;switch(d[2]){case +o=aF(t)}var +u=I(o),v=be(u+2|0,34);b_(o,0,v,1,u);return aF(v)}}function +hI(d,f){var +g=c6(f),e=ps[1];switch(d[2]){case 0:var -b=cI;break;case +b=cM;break;case 1:var -b=ev;break;case +b=eC;break;case 2:var b=69;break;case 3:var -b=cj;break;case +b=cm;break;case 4:var b=71;break;case 5:var @@ -2120,160 +2124,160 @@ b=104;break;case 7:var b=72;break;default:var b=70}var -c=ho(16);cx(c,37);switch(d[1]){case +c=hE(16);cA(c,37);switch(d[1]){case 0:break;case -1:cx(c,43);break;default:cx(c,32)}if(8<=d[2])cx(c,35);cx(c,46);aw(c,a(o+g));cx(c,b);return hq(c)}function -d0(m,a){if(13<=m){var -g=[0,0],h=G(a)-1|0,n=0;if(!(h<0)){var -c=n;for(;;){if(!(9<(cZ(a,c)+eo|0)>>>0))g[1]++;var +1:cA(c,43);break;default:cA(c,32)}if(8<=d[2])cA(c,35);cA(c,46);aw(c,a(k+g));cA(c,b);return hG(c)}function +d2(m,a){if(13<=m){var +g=[0,0],h=I(a)-1|0,n=0;if(!(h<0)){var +c=n;for(;;){if(!(9>>0))g[1]++;var q=c+1|0;if(h!==c){var c=q;continue}break}}var -i=g[1],j=af(G(a)+((i-1|0)/3|0)|0),k=[0,0],d=function(a){ba(j,k[1],a);k[1]++;return 0},e=[0,((i-1|0)%3|0)+1|0],l=G(a)-1|0,o=0;if(!(l<0)){var +i=g[1],j=ai(I(a)+((i-1|0)/3|0)|0),k=[0,0],d=function(a){a9(j,k[1],a);k[1]++;return 0},e=[0,((i-1|0)%3|0)+1|0],l=I(a)-1|0,o=0;if(!(l<0)){var b=o;for(;;){var -f=cZ(a,b);if(9<(f+eo|0)>>>0)d(f);else{if(0===e[1]){d(95);e[1]=3}e[1]+=-1;d(f)}var +f=c3(a,b);if(9>>0)d(f);else{if(0===e[1]){d(95);e[1]=3}e[1]+=-1;d(f)}var p=b+1|0;if(l!==b){var -b=p;continue}break}}return aD(j)}return a}function -o$(b,c){switch(b){case +b=p;continue}break}}return aF(j)}return a}function +pt(b,c){switch(b){case 1:var -a=om;break;case -2:var -a=on;break;case -4:var -a=op;break;case -5:var -a=oq;break;case -6:var -a=or;break;case -7:var -a=os;break;case -8:var -a=ot;break;case -9:var -a=ou;break;case -10:var -a=ov;break;case -11:var -a=ow;break;case -0:case -13:var -a=ol;break;case -3:case -14:var -a=oo;break;default:var -a=ox}return d0(b,eV(a,c))}function -pa(b,c){switch(b){case -1:var -a=oM;break;case -2:var -a=oN;break;case -4:var -a=oP;break;case -5:var -a=oQ;break;case -6:var -a=oR;break;case -7:var -a=oS;break;case -8:var -a=oT;break;case -9:var -a=oU;break;case -10:var -a=oV;break;case -11:var -a=oW;break;case -0:case -13:var -a=oL;break;case -3:case -14:var -a=oO;break;default:var -a=oX}return d0(b,eV(a,c))}function -pb(b,c){switch(b){case -1:var -a=oZ;break;case -2:var -a=o0;break;case -4:var -a=o2;break;case -5:var -a=o3;break;case -6:var -a=o4;break;case -7:var -a=o5;break;case -8:var -a=o6;break;case -9:var -a=o7;break;case -10:var -a=o8;break;case -11:var -a=o9;break;case -0:case -13:var -a=oY;break;case -3:case -14:var -a=o1;break;default:var -a=o_}return d0(b,eV(a,c))}function -pc(b,c){switch(b){case -1:var -a=oz;break;case -2:var -a=oA;break;case -4:var -a=oC;break;case -5:var -a=oD;break;case -6:var -a=oE;break;case -7:var a=oF;break;case -8:var +2:var a=oG;break;case -9:var -a=oH;break;case -10:var +4:var a=oI;break;case -11:var +5:var a=oJ;break;case +6:var +a=oK;break;case +7:var +a=oL;break;case +8:var +a=oM;break;case +9:var +a=oN;break;case +10:var +a=oO;break;case +11:var +a=oP;break;case 0:case 13:var -a=oy;break;case +a=oE;break;case 3:case 14:var -a=oB;break;default:var -a=oK}return d0(b,GZ(a,c))}function -bD(c,i,b){function +a=oH;break;default:var +a=oQ}return d2(b,e8(a,c))}function +pu(b,c){switch(b){case +1:var +a=o5;break;case +2:var +a=o6;break;case +4:var +a=o8;break;case +5:var +a=o9;break;case +6:var +a=o_;break;case +7:var +a=o$;break;case +8:var +a=pa;break;case +9:var +a=pb;break;case +10:var +a=pc;break;case +11:var +a=pd;break;case +0:case +13:var +a=o4;break;case +3:case +14:var +a=o7;break;default:var +a=pe}return d2(b,e8(a,c))}function +pv(b,c){switch(b){case +1:var +a=pg;break;case +2:var +a=ph;break;case +4:var +a=pj;break;case +5:var +a=pk;break;case +6:var +a=pl;break;case +7:var +a=pm;break;case +8:var +a=pn;break;case +9:var +a=po;break;case +10:var +a=pp;break;case +11:var +a=pq;break;case +0:case +13:var +a=pf;break;case +3:case +14:var +a=pi;break;default:var +a=pr}return d2(b,e8(a,c))}function +pw(b,c){switch(b){case +1:var +a=oS;break;case +2:var +a=oT;break;case +4:var +a=oV;break;case +5:var +a=oW;break;case +6:var +a=oX;break;case +7:var +a=oY;break;case +8:var +a=oZ;break;case +9:var +a=o0;break;case +10:var +a=o1;break;case +11:var +a=o2;break;case +0:case +13:var +a=oR;break;case +3:case +14:var +a=oU;break;default:var +a=o3}return d2(b,H4(a,c))}function +bB(c,i,b){function j(d){switch(c[1]){case 0:var a=45;break;case 1:var a=43;break;default:var -a=32}return GW(b,i,a)}function +a=32}return H1(b,i,a)}function q(c){var -a=GK(b);return 3===a?b<0.?pe:pf:4<=a?pg:c}switch(c[2]){case +a=HP(b);return 3===a?b<0.?py:pz:4<=a?pA:c}switch(c[2]){case 5:var -e=gI(hs(c,i),b),d=0,u=G(e);for(;;){if(d===u)var +e=gZ(hI(c,i),b),d=0,u=I(e);for(;;){if(d===u)var p=0;else{var -k=E(e,d)+i0|0,l=0;if(23>>0){if(55===k)l=1}else -if(21<(k-1|0)>>>0)l=1;if(!l){var +k=H(e,d)+ji|0,l=0;if(23>>0){if(55===k)l=1}else +if(21>>0)l=1;if(!l){var d=d+1|0;continue}var p=1}var -v=p?e:bc(e,pd);return q(v)}case +v=p?e:a$(e,px);return q(v)}case 6:return j(0);case 7:var -h=bO(j(0)),f=a3(h);if(0===f)var +h=bO(j(0)),f=a1(h);if(0===f)var o=h;else{var -m=af(f),n=f-1|0,r=0;if(!(n<0)){var +m=ai(f),n=f-1|0,r=0;if(!(n<0)){var a=r;for(;;){var -g=dJ(h,a),s=25<(g+jA|0)>>>0?g:g+gA|0;ad(m,a,s);var +g=dM(h,a),s=25>>0?g:g+gP|0;ag(m,a,s);var t=a+1|0;if(n!==a){var a=t;continue}break}}var -o=m}return aD(o);case -8:return q(j(0));default:return gI(hs(c,i),b)}}function -dn(e,y,x,w){var +o=m}return aF(o);case +8:return q(j(0));default:return gZ(hI(c,i),b)}}function +dq(e,y,x,w){var b=y,a=x,d=w;for(;;)if(typeof d==="number")return c(b,a);else switch(d[0]){case @@ -2282,48 +2286,48 @@ z=d[1];return function(c){return M(b,[5,a,c],z)};case 1:var A=d[1];return function(c){var e=0;if(40<=c)if(92===c)var -d=m_;else -if(bd<=c)e=1;else +d=ns;else +if(ba<=c)e=1;else e=2;else if(32<=c)if(39<=c)var -d=m$;else +d=nt;else e=2;else if(14<=c)e=1;else switch(c){case 8:var -d=na;break;case +d=nu;break;case 9:var -d=nb;break;case +d=nv;break;case 10:var -d=nc;break;case +d=nw;break;case 13:var -d=nd;break;default:e=1}switch(e){case +d=nx;break;default:e=1}switch(e){case 1:var -f=af(4);ad(f,0,92);ad(f,1,48+(c/aW|0)|0);ad(f,2,48+((c/10|0)%10|0)|0);ad(f,3,48+(c%10|0)|0);var -d=aD(f);break;case +f=ai(4);ag(f,0,92);ag(f,1,48+(c/aW|0)|0);ag(f,2,48+((c/10|0)%10|0)|0);ag(f,3,48+(c%10|0)|0);var +d=aF(f);break;case 2:var -g=af(1);ad(g,0,c);var -d=aD(g);break}var -h=G(d),i=bh(h+2|0,39);b8(d,0,i,1,h);return M(b,[4,a,aD(i)],A)};case +g=ai(1);ag(g,0,c);var +d=aF(g);break}var +h=I(d),i=be(h+2|0,39);b_(d,0,i,1,h);return M(b,[4,a,aF(i)],A)};case 2:var -B=d[2],C=d[1];return fh(b,a,B,C,function(a){return a});case -3:return fh(b,a,d[2],d[1],ok);case -4:return d1(b,a,d[4],d[2],d[3],o$,d[1]);case -5:return d1(b,a,d[4],d[2],d[3],pa,d[1]);case -6:return d1(b,a,d[4],d[2],d[3],pb,d[1]);case -7:return d1(b,a,d[4],d[2],d[3],pc,d[1]);case +B=d[2],C=d[1];return fu(b,a,B,C,function(a){return a});case +3:return fu(b,a,d[2],d[1],oD);case +4:return d3(b,a,d[4],d[2],d[3],pt,d[1]);case +5:return d3(b,a,d[4],d[2],d[3],pu,d[1]);case +6:return d3(b,a,d[4],d[2],d[3],pv,d[1]);case +7:return d3(b,a,d[4],d[2],d[3],pw,d[1]);case 8:var -i=d[4],j=d[3],k=d[2],g=d[1];if(typeof +h=d[4],j=d[3],k=d[2],g=d[1];if(typeof k==="number"){if(typeof -j==="number")return j?function(d,c){return M(b,[4,a,bD(g,d,c)],i)}:function(c){return M(b,[4,a,bD(g,ff(g),c)],i)};var -Z=j[1];return function(c){return M(b,[4,a,bD(g,Z,c)],i)}}else{if(0===k[0]){var +j==="number")return j?function(d,c){return M(b,[4,a,bB(g,d,c)],h)}:function(c){return M(b,[4,a,bB(g,fs(g),c)],h)};var +Z=j[1];return function(c){return M(b,[4,a,bB(g,Z,c)],h)}}else{if(0===k[0]){var n=k[2],o=k[1];if(typeof -j==="number")return j?function(d,c){return M(b,[4,a,aR(o,n,bD(g,d,c))],i)}:function(c){return M(b,[4,a,aR(o,n,bD(g,ff(g),c))],i)};var -_=j[1];return function(c){return M(b,[4,a,aR(o,n,bD(g,_,c))],i)}}var +j==="number")return j?function(d,c){return M(b,[4,a,aS(o,n,bB(g,d,c))],h)}:function(c){return M(b,[4,a,aS(o,n,bB(g,fs(g),c))],h)};var +_=j[1];return function(c){return M(b,[4,a,aS(o,n,bB(g,_,c))],h)}}var p=k[1];if(typeof -j==="number")return j?function(e,d,c){return M(b,[4,a,aR(p,e,bD(g,d,c))],i)}:function(d,c){return M(b,[4,a,aR(p,d,bD(g,ff(g),c))],i)};var -aa=j[1];return function(d,c){return M(b,[4,a,aR(p,d,bD(g,aa,c))],i)}}case -9:return fh(b,a,d[2],d[1],m1);case +j==="number")return j?function(e,d,c){return M(b,[4,a,aS(p,e,bB(g,d,c))],h)}:function(d,c){return M(b,[4,a,aS(p,d,bB(g,fs(g),c))],h)};var +$=j[1];return function(d,c){return M(b,[4,a,aS(p,d,bB(g,$,c))],h)}}case +9:return fu(b,a,d[2],d[1],ni);case 10:var a=[7,a],d=d[1];continue;case 11:var @@ -2331,51 +2335,51 @@ a=[2,a,d[1]],d=d[2];continue;case 12:var a=[3,a,d[1]],d=d[2];continue;case 13:var -D=d[3],E=d[2],q=ho(16);fg(q,E);var -v=hq(q);return function(c){return M(b,[4,a,v],D)};case +D=d[3],E=d[2],q=hE(16);ft(q,E);var +v=hG(q);return function(c){return M(b,[4,a,v],D)};case 14:var -F=d[3],H=d[2];return function(d){var -e=d[1],c=T(e,$(ak(H)));if(typeof -c[2]==="number")return M(b,a,U(c[1],F));throw ar};case +F=d[3],G=d[2];return function(d){var +e=d[1],c=U(e,ac(an(G)));if(typeof +c[2]==="number")return M(b,a,W(c[1],F));throw as};case 15:var -I=d[1];return function(d,c){return M(b,[6,a,function(a){return h(d,a,c)}],I)};case +H=d[1];return function(d,c){return M(b,[6,a,function(a){return i(d,a,c)}],H)};case 16:var -K=d[1];return function(c){return M(b,[6,a,c],K)};case +J=d[1];return function(c){return M(b,[6,a,c],J)};case 17:var a=[0,a,d[1]],d=d[2];continue;case 18:var m=d[1];if(0===m[0]){var -L=d[2],N=m[1][1],O=0,b=function(b,c,d){return function(a){return M(c,[1,b,[0,a]],d)}}(a,b,L),a=O,d=N;continue}var -P=d[2],R=m[1][1],S=0,b=function(b,c,d){return function(a){return M(c,[1,b,[1,a]],d)}}(a,b,P),a=S,d=R;continue;case -19:throw[0,J,pi];case +K=d[2],N=m[1][1],O=0,b=function(b,c,d){return function(a){return M(c,[1,b,[0,a]],d)}}(a,b,K),a=O,d=N;continue}var +Q=d[2],R=m[1][1],S=0,b=function(b,c,d){return function(a){return M(c,[1,b,[1,a]],d)}}(a,b,Q),a=S,d=R;continue;case +19:throw[0,L,pC];case 20:var -V=d[3],W=[8,a,pj];return function(a){return M(b,W,V)};case +T=d[3],V=[8,a,pD];return function(a){return M(b,V,T)};case 21:var -X=d[2];return function(c){return M(b,[4,a,eV(pk,c)],X)};case +X=d[2];return function(c){return M(b,[4,a,e8(pE,c)],X)};case 22:var Y=d[1];return function(c){return M(b,[5,a,c],Y)};case 23:var f=d[2],l=d[1];if(typeof l==="number")switch(l){case -0:return e<50?Q(e+1|0,b,a,f):ao(Q,[0,b,a,f]);case -1:return e<50?Q(e+1|0,b,a,f):ao(Q,[0,b,a,f]);case -2:throw[0,J,pl];default:return e<50?Q(e+1|0,b,a,f):ao(Q,[0,b,a,f])}else +0:return e<50?P(e+1|0,b,a,f):ap(P,[0,b,a,f]);case +1:return e<50?P(e+1|0,b,a,f):ap(P,[0,b,a,f]);case +2:throw[0,L,pF];default:return e<50?P(e+1|0,b,a,f):ap(P,[0,b,a,f])}else switch(l[0]){case -0:return e<50?Q(e+1|0,b,a,f):ao(Q,[0,b,a,f]);case -1:return e<50?Q(e+1|0,b,a,f):ao(Q,[0,b,a,f]);case -2:return e<50?Q(e+1|0,b,a,f):ao(Q,[0,b,a,f]);case -3:return e<50?Q(e+1|0,b,a,f):ao(Q,[0,b,a,f]);case -4:return e<50?Q(e+1|0,b,a,f):ao(Q,[0,b,a,f]);case -5:return e<50?Q(e+1|0,b,a,f):ao(Q,[0,b,a,f]);case -6:return e<50?Q(e+1|0,b,a,f):ao(Q,[0,b,a,f]);case -7:return e<50?Q(e+1|0,b,a,f):ao(Q,[0,b,a,f]);case -8:return e<50?Q(e+1|0,b,a,f):ao(Q,[0,b,a,f]);case +0:return e<50?P(e+1|0,b,a,f):ap(P,[0,b,a,f]);case +1:return e<50?P(e+1|0,b,a,f):ap(P,[0,b,a,f]);case +2:return e<50?P(e+1|0,b,a,f):ap(P,[0,b,a,f]);case +3:return e<50?P(e+1|0,b,a,f):ap(P,[0,b,a,f]);case +4:return e<50?P(e+1|0,b,a,f):ap(P,[0,b,a,f]);case +5:return e<50?P(e+1|0,b,a,f):ap(P,[0,b,a,f]);case +6:return e<50?P(e+1|0,b,a,f):ap(P,[0,b,a,f]);case +7:return e<50?P(e+1|0,b,a,f):ap(P,[0,b,a,f]);case +8:return e<50?P(e+1|0,b,a,f):ap(P,[0,b,a,f]);case 9:var -u=l[2];return e<50?f1(e+1|0,b,a,u,f):ao(f1,[0,b,a,u,f]);case -10:return e<50?Q(e+1|0,b,a,f):ao(Q,[0,b,a,f]);default:return e<50?Q(e+1|0,b,a,f):ao(Q,[0,b,a,f])}default:var -r=d[3],s=d[1],t=c(d[2],0);return e<50?f0(e+1|0,b,a,r,s,t):ao(f0,[0,b,a,r,s,t])}}function -f1(e,d,c,a,b){if(typeof -a==="number")return e<50?Q(e+1|0,d,c,b):ao(Q,[0,d,c,b]);else +u=l[2];return e<50?gc(e+1|0,b,a,u,f):ap(gc,[0,b,a,u,f]);case +10:return e<50?P(e+1|0,b,a,f):ap(P,[0,b,a,f]);default:return e<50?P(e+1|0,b,a,f):ap(P,[0,b,a,f])}default:var +r=d[3],s=d[1],t=c(d[2],0);return e<50?gb(e+1|0,b,a,r,s,t):ap(gb,[0,b,a,r,s,t])}}function +gc(e,d,c,a,b){if(typeof +a==="number")return e<50?P(e+1|0,d,c,b):ap(P,[0,d,c,b]);else switch(a[0]){case 0:var f=a[1];return function(a){return aX(d,c,f,b)};case @@ -2396,516 +2400,513 @@ m=a[1];return function(a){return aX(d,c,m,b)};case 8:var n=a[2];return function(a){return aX(d,c,n,b)};case 9:var -o=a[3],p=a[2],q=ap(ak(a[1]),p);return function(a){return aX(d,c,aF(q,o),b)};case +o=a[3],p=a[2],q=aq(an(a[1]),p);return function(a){return aX(d,c,aG(q,o),b)};case 10:var r=a[1];return function(e,a){return aX(d,c,r,b)};case 11:var s=a[1];return function(a){return aX(d,c,s,b)};case 12:var t=a[1];return function(a){return aX(d,c,t,b)};case -13:throw[0,J,pm];default:throw[0,J,pn]}}function -Q(d,b,e,a){var -c=[8,e,po];return d<50?dn(d+1|0,b,c,a):ao(dn,[0,b,c,a])}function -f0(h,b,f,a,e,d){if(e){var -i=e[1];return function(e){return ph(b,f,a,i,c(d,e))}}var -g=[4,f,d];return h<50?dn(h+1|0,b,g,a):ao(dn,[0,b,g,a])}function -M(a,b,c){return dQ(dn(0,a,b,c))}function -aX(a,b,c,d){return dQ(f1(0,a,b,c,d))}function -ph(a,b,c,d,e){return dQ(f0(0,a,b,c,d,e))}function -fh(f,e,d,a,b){if(typeof +13:throw[0,L,pG];default:throw[0,L,pH]}}function +P(d,b,e,a){var +c=[8,e,pI];return d<50?dq(d+1|0,b,c,a):ap(dq,[0,b,c,a])}function +gb(h,b,f,a,e,d){if(e){var +i=e[1];return function(e){return pB(b,f,a,i,c(d,e))}}var +g=[4,f,d];return h<50?dq(h+1|0,b,g,a):ap(dq,[0,b,g,a])}function +M(a,b,c){return dT(dq(0,a,b,c))}function +aX(a,b,c,d){return dT(gc(0,a,b,c,d))}function +pB(a,b,c,d,e){return dT(gb(0,a,b,c,d,e))}function +fu(f,e,d,a,b){if(typeof a==="number")return function(a){return M(f,[4,e,c(b,a)],d)};else{if(0===a[0]){var -g=a[2],h=a[1];return function(a){return M(f,[4,e,aR(h,g,c(b,a))],d)}}var -i=a[1];return function(g,a){return M(f,[4,e,aR(i,g,c(b,a))],d)}}}function -d1(f,e,d,g,c,b,a){if(typeof +g=a[2],h=a[1];return function(a){return M(f,[4,e,aS(h,g,c(b,a))],d)}}var +i=a[1];return function(g,a){return M(f,[4,e,aS(i,g,c(b,a))],d)}}}function +d3(f,e,d,g,c,b,a){if(typeof g==="number"){if(typeof -c==="number")return c?function(g,c){return M(f,[4,e,cy(g,h(b,a,c))],d)}:function(c){return M(f,[4,e,h(b,a,c)],d)};var -l=c[1];return function(c){return M(f,[4,e,cy(l,h(b,a,c))],d)}}else{if(0===g[0]){var -i=g[2],j=g[1];if(typeof -c==="number")return c?function(g,c){return M(f,[4,e,aR(j,i,cy(g,h(b,a,c)))],d)}:function(c){return M(f,[4,e,aR(j,i,h(b,a,c))],d)};var -m=c[1];return function(c){return M(f,[4,e,aR(j,i,cy(m,h(b,a,c)))],d)}}var +c==="number")return c?function(g,c){return M(f,[4,e,cB(g,i(b,a,c))],d)}:function(c){return M(f,[4,e,i(b,a,c)],d)};var +l=c[1];return function(c){return M(f,[4,e,cB(l,i(b,a,c))],d)}}else{if(0===g[0]){var +h=g[2],j=g[1];if(typeof +c==="number")return c?function(g,c){return M(f,[4,e,aS(j,h,cB(g,i(b,a,c)))],d)}:function(c){return M(f,[4,e,aS(j,h,i(b,a,c))],d)};var +m=c[1];return function(c){return M(f,[4,e,aS(j,h,cB(m,i(b,a,c)))],d)}}var k=g[1];if(typeof -c==="number")return c?function(i,g,c){return M(f,[4,e,aR(k,i,cy(g,h(b,a,c)))],d)}:function(g,c){return M(f,[4,e,aR(k,g,h(b,a,c))],d)};var -n=c[1];return function(g,c){return M(f,[4,e,aR(k,g,cy(n,h(b,a,c)))],d)}}}function -bE(b,f){var +c==="number")return c?function(h,g,c){return M(f,[4,e,aS(k,h,cB(g,i(b,a,c)))],d)}:function(g,c){return M(f,[4,e,aS(k,g,i(b,a,c))],d)};var +n=c[1];return function(g,c){return M(f,[4,e,aS(k,g,cB(n,i(b,a,c)))],d)}}}function +bC(b,f){var a=f;for(;;)if(typeof a==="number")return 0;else switch(a[0]){case 0:var -g=a[1],h=hr(a[2]);bE(b,g);return c4(b,h);case +g=a[1],h=hH(a[2]);bC(b,g);return c7(b,h);case 1:var d=a[2],e=a[1];if(0===d[0]){var -i=d[1];bE(b,e);c4(b,pp);var +i=d[1];bC(b,e);c7(b,pJ);var a=i;continue}var -j=d[1];bE(b,e);c4(b,pq);var +j=d[1];bC(b,e);c7(b,pK);var a=j;continue;case 6:var -m=a[2];bE(b,a[1]);return c(m,b);case -7:bE(b,a[1]);return cm(b);case +m=a[2];bC(b,a[1]);return c(m,b);case +7:bC(b,a[1]);return cp(b);case 8:var -n=a[2];bE(b,a[1]);return ai(n);case +n=a[2];bC(b,a[1]);return ak(n);case 2:case 4:var -k=a[2];bE(b,a[1]);return c4(b,k);default:var -l=a[2];bE(b,a[1]);return mE(b,l)}}function +k=a[2];bC(b,a[1]);return c7(b,k);default:var +l=a[2];bC(b,a[1]);return mT(b,l)}}function bR(b,f){var a=f;for(;;)if(typeof a==="number")return 0;else switch(a[0]){case 0:var -g=a[1],h=hr(a[2]);bR(b,g);return c9(b,h);case +g=a[1],h=hH(a[2]);bR(b,g);return da(b,h);case 1:var d=a[2],e=a[1];if(0===d[0]){var -i=d[1];bR(b,e);c9(b,pr);var +i=d[1];bR(b,e);da(b,pL);var a=i;continue}var -j=d[1];bR(b,e);c9(b,ps);var +j=d[1];bR(b,e);da(b,pM);var a=j;continue;case 6:var -m=a[2];bR(b,a[1]);return c9(b,c(m,0));case +m=a[2];bR(b,a[1]);return da(b,c(m,0));case 7:var a=a[1];continue;case 8:var -n=a[2];bR(b,a[1]);return ai(n);case +n=a[2];bR(b,a[1]);return ak(n);case 2:case 4:var -k=a[2];bR(b,a[1]);return c9(b,k);default:var -l=a[2];bR(b,a[1]);return hn(b,l)}}function -fi(d,c){var -a=c[1],b=0;return M(function(a){bE(d,a);return 0},b,a)}function -fj(a){return fi(bg,a)}function +k=a[2];bR(b,a[1]);return da(b,k);default:var +l=a[2];bR(b,a[1]);return hD(b,l)}}function +hJ(d,c){var +a=c[1],b=0;return M(function(a){bC(d,a);return 0},b,a)}function +fv(a){return hJ(bd,a)}function aY(b){var a=b[1];return M(function(b){var -a=fd(64);bR(a,b);return hm(a)},0,a)}var -fk=[0,0];function -fm(i,h){var +a=fq(64);bR(a,b);return hC(a)},0,a)}var +fw=[0,0];function +fy(i,h){var a=i[1+h];if(1-(typeof -a==="number"?1:0)){if(dP(a)===ez)return c(aY(pt),a);if(dP(a)===lt){var -d=gI(m5,a),b=0,g=G(d);for(;;){if(g<=b)return bc(d,m4);var -e=E(d,b),f=0;if(48<=e){if(!(58<=e))f=1}else +a==="number"?1:0)){if(dS(a)===eG)return c(aY(pN),a);if(dS(a)===lH){var +d=gZ(nm,a),b=0,g=I(d);for(;;){if(g<=b)return a$(d,nl);var +e=H(d,b),f=0;if(48<=e){if(!(58<=e))f=1}else if(45===e)f=1;if(f){var -b=b+1|0;continue}return d}}return pu}return c(aY(pv),a)}function -hu(b,a){if(b.length-1<=a)return pw;var -c=hu(b,a+1|0),d=fm(b,a);return h(aY(px),d,c)}function -d2(a){function +b=b+1|0;continue}return d}}return pO}return c(aY(pP),a)}function +hK(b,a){if(b.length-1<=a)return pQ;var +c=hK(b,a+1|0),d=fy(b,a);return i(aY(pR),d,c)}function +d4(a){function p(f){var b=f;for(;;){if(b){var g=b[2],h=b[1];try{var e=0,d=c(h,a);e=1}catch(a){}if(e&&d)return[0,d[1]];var b=g;continue}return 0}}var -i=p(fk[1]);if(i)return i[1];if(a===e$)return pC;if(a===g5)return pD;if(a[1]===g4){var -d=a[2],j=d[3],q=d[2],r=d[1];return f4(aY(fl),r,q,j,j+5|0,pE)}if(a[1]===J){var -e=a[2],k=e[3],s=e[2],t=e[1];return f4(aY(fl),t,s,k,k+6|0,pF)}if(a[1]===g8){var -f=a[2],l=f[3],u=f[2],v=f[1];return f4(aY(fl),v,u,l,l+6|0,pG)}if(0===dP(a)){var +h=p(fw[1]);if(h)return h[1];if(a===fm)return pW;if(a===hk)return pX;if(a[1]===hj){var +d=a[2],j=d[3],q=d[2],r=d[1];return gf(aY(fx),r,q,j,j+5|0,pY)}if(a[1]===L){var +e=a[2],k=e[3],s=e[2],t=e[1];return gf(aY(fx),t,s,k,k+6|0,pZ)}if(a[1]===hn){var +f=a[2],l=f[3],u=f[2],v=f[1];return gf(aY(fx),v,u,l,l+6|0,p0)}if(0===dS(a)){var g=a.length-1,w=a[1][1];if(2>>0)var -m=hu(a,2),n=fm(a,1),b=h(aY(py),n,m);else +m=hK(a,2),n=fy(a,1),b=i(aY(pS),n,m);else switch(g){case 0:var -b=pz;break;case +b=pT;break;case 1:var -b=pA;break;default:var -o=fm(a,1),b=c(aY(pB),o)}return bc(w,b)}return a[1]}function -fn(h,t){var -e=GL(t);if([0,e]){var -g=e.length-1-1|0,q=0;if(!(g<0)){var -b=q;for(;;){var -a=ae(e,b)[1+b],f=function(a){return function(b){return b?0===a?pH:pI:0===a?pJ:pK}}(b);if(0===a[0])var -i=a[5],j=a[4],k=a[3],l=a[6]?pL:pN,m=a[2],n=a[7],o=f(a[1]),d=[0,GB(aY(pM),o,n,m,l,k,j,i)];else +b=pU;break;default:var +o=fy(a,1),b=c(aY(pV),o)}return a$(w,b)}return a[1]}function +fz(t,s){var +e=HQ(s),g=e.length-1-1|0,p=0;if(!(g<0)){var +b=p;for(;;){var +a=ah(e,b)[1+b],f=function(a){return function(b){return b?0===a?p1:p2:0===a?p3:p4}}(b);if(0===a[0])var +h=a[5],i=a[4],j=a[3],k=a[6]?p5:p7,l=a[2],m=a[7],n=f(a[1]),d=[0,HG(aY(p6),n,m,l,k,j,i,h)];else if(a[1])var d=0;else var -p=f(0),d=[0,c(aY(pO),p)];if(d){var -r=d[1];c(fi(h,pP),r)}var -s=b+1|0;if(g!==b){var -b=s;continue}break}}return 0}return fi(h,pQ)}function -d3(c){for(;;){var -a=fk[1],b=1-e_(fk,a,[0,c,a]);if(b)continue;return b}}var -pS=pR.slice();function -pT(e,d){var -f=d2(e);c(fj(pU),f);fn(bg,d);var -a=He(0);if(a<0){var -b=c3(a);g9(ae(pS,b)[1+b])}return cm(bg)}var -pV=[0];gV(a(kL),function(f,j){try{try{var -b=j?pV:my(0);try{fb(0)}catch(a){}try{var -a=pT(f,b),e=a}catch(a){a=d(a);var -h=d2(f);c(fj(pX),h);fn(bg,b);var -i=d2(a);c(fj(pY),i);fn(bg,my(0));var -e=cm(bg)}var -g=e}catch(a){a=d(a);if(a!==e$)throw a;var -g=g9(pW)}return g}catch(a){return 0}});var -p0=[O,pZ,aj(0)];d3(function(a){return a[1]===p0?[0,bc(p1,d2(a[2]))]:0});try{var -Gz=mK(Gy),hw=Gz}catch(a){a=d(a);if(a!==aL)throw a;try{var -Gx=mK(Gw),hv=Gx}catch(a){a=d(a);if(a!==aL)throw a;var -hv=p3}var -hw=hv}var -p4=nl(hw,82),d4=[jg,function(x){var -m=Hv(0),c=[0,bP(55,0),0],i=0===m.length-1?[0,0]:m,j=i.length-1,b=0;for(;;){ae(c[1],b)[1+b]=b;var +o=f(0),d=[0,c(aY(p8),o)];if(d){var +q=d[1];c(hJ(t,p9),q)}var +r=b+1|0;if(g!==b){var +b=r;continue}break}}return 0}function +d5(c){for(;;){var +a=fw[1],b=1-fl(fw,a,[0,c,a]);if(b)continue;return b}}var +p$=p_.slice();function +qa(e,d){var +f=d4(e);c(fv(qb),f);fz(bd,d);var +a=Ii(0);if(a<0){var +b=c6(a);ho(ah(p$,b)[1+b])}return cp(bd)}var +qc=[0];ha(a(k3),function(f,j){try{try{var +b=j?qc:mM(0);try{fo(0)}catch(a){}try{var +a=qa(f,b),e=a}catch(a){a=d(a);var +h=d4(f);c(fv(qe),h);fz(bd,b);var +i=d4(a);c(fv(qf),i);fz(bd,mM(0));var +e=cp(bd)}var +g=e}catch(a){a=d(a);if(a!==fm)throw a;var +g=ho(qd)}return g}catch(a){return 0}});var +qh=[N,qg,aE(0)];d5(function(a){return a[1]===qh?[0,a$(qi,d4(a[2]))]:0});try{var +HE=mZ(HD),hM=HE}catch(a){a=d(a);if(a!==aM)throw a;try{var +HC=mZ(HB),hL=HC}catch(a){a=d(a);if(a!==aM)throw a;var +hL=qk}var +hM=hL}var +ql=nE(hM,82),d6=[jy,function(x){var +n=Ix(0),c=[0,bP(55,0),0],i=0===n.length-1?[0,0]:n,j=i.length-1,b=0;for(;;){ah(c[1],b)[1+b]=b;var w=b+1|0;if(54!==b){var b=w;continue}var -g=[0,p2],k=54+dU(55,j)|0,s=0;if(!(k<0)){var +g=[0,qj],l=54+dW(55,j)|0,s=0;if(!(l<0)){var d=s;for(;;){var -e=d%55|0,l=Hi(d,j),t=ae(i,l)[1+l],h=bc(g[1],a(o+t));g[1]=Hd(h,0,G(h));var -f=g[1],n=E(f,3)<<24,p=E(f,2)<<16,q=E(f,1)<<8,r=((E(f,0)+q|0)+p|0)+n|0,u=(ae(c[1],e)[1+e]^r)&gq;ae(c[1],e)[1+e]=u;var -v=d+1|0;if(k!==d){var +e=d%55|0,m=Im(d,j),t=ah(i,m)[1+m],h=a$(g[1],a(k+t));g[1]=Ih(h,0,I(h));var +f=g[1],o=H(f,3)<<24,p=H(f,2)<<16,q=H(f,1)<<8,r=((H(f,0)+q|0)+p|0)+o|0,u=(ah(c[1],e)[1+e]^r)&gD;ah(c[1],e)[1+e]=u;var +v=d+1|0;if(l!==d){var d=v;continue}break}}c[2]=0;return c}}];function -p5(h,k){var -l=h?h[1]:p4,b=16;for(;;){if(!(k<=b)&&!(ha<(b*2|0))){var +qm(h,k){var +l=h?h[1]:ql,b=16;for(;;){if(!(k<=b)&&!(hq<(b*2|0))){var b=b*2|0;continue}if(l){var -i=dP(d4),a=ep===i?d4[1]:jg===i?nB(d4):d4;a[2]=(a[2]+1|0)%55|0;var -c=a[2],d=ae(a[1],c)[1+c],e=(a[2]+24|0)%55|0,f=(ae(a[1],e)[1+e]+(d^(d>>>25|0)&31)|0)&gq,g=a[2];ae(a[1],g)[1+g]=f;var +i=dS(d6),a=ev===i?d6[1]:jy===i?nU(d6):d6;a[2]=(a[2]+1|0)%55|0;var +c=a[2],d=ah(a[1],c)[1+c],e=(a[2]+24|0)%55|0,f=(ah(a[1],e)[1+e]+(d^(d>>>25|0)&31)|0)&gD,g=a[2];ah(a[1],g)[1+g]=f;var j=f}else var j=0;return[0,0,bP(b,0),j,b]}}function -bi(a){return GQ(10,aW,0,a)}var -hz=[O,p6,aj(0)],hx=0,hy=-1;function -d5(a,b){a[13]=a[13]+b[3]|0;return hl(b,a[28])}var -hA=1000000010;function -fo(b,a){return R(b[17],a,0,G(a))}function -fp(a){return c(a[19],0)}function -hB(a,c,b){a[9]=a[9]-c|0;fo(a,b);a[11]=0;return 0}function -d6(c,a){var -b=an(a,p7);return b?hB(c,G(a),a):b}function -cz(a,b,f){var -g=b[3],h=b[2];d6(a,b[1]);fp(a);a[11]=1;var -d=(a[6]-f|0)+h|0,e=a[8],i=Ha(e,d)?e:d;a[10]=i;a[9]=a[6]-a[10]|0;c(a[21],a[10]);return d6(a,g)}function -hC(b,a){return cz(b,p8,a)}function -c$(a,b){var -d=b[2],e=b[3];d6(a,b[1]);a[9]=a[9]-d|0;c(a[20],d);return d6(a,e)}function -hD(a){for(;;){var -r=a[28][2],O=r?[0,r[1]]:0;if(O){var -p=O[1],q=p[1],b=p[2],ac=0<=q?1:0,aa=p[3],ab=a[13]-a[12]|0,P=ac||(a[9]<=ab?1:0);if(P){var -g=a[28],m=g[2];if(m){if(m[2]){var -Q=m[2];g[1]=g[1]-1|0;g[2]=Q}else -fc(g);var -l=0<=q?q:hA;if(typeof +bf(a){return HV(10,aW,0,a)}var +hP=[N,qn,aE(0)],hN=0,hO=-1;function +d7(a,b){a[13]=a[13]+b[3]|0;return hB(b,a[28])}var +hQ=1000000010;function +fA(b,a){return Q(b[17],a,0,I(a))}function +fB(a){return c(a[19],0)}function +hR(a,c,b){a[9]=a[9]-c|0;fA(a,b);a[11]=0;return 0}function +d8(c,a){var +b=ao(a,qo);return b?hR(c,I(a),a):b}function +ce(a,b,f){var +g=b[3],h=b[2];d8(a,b[1]);fB(a);a[11]=1;var +d=(a[6]-f|0)+h|0,e=a[8],i=Ie(e,d)?e:d;a[10]=i;a[9]=a[6]-a[10]|0;c(a[21],a[10]);return d8(a,g)}function +hS(b,a){return ce(b,qp,a)}function +cC(a,b){var +d=b[2],e=b[3];d8(a,b[1]);a[9]=a[9]-d|0;c(a[20],d);return d8(a,e)}function +qq(a,j,b){if(typeof b==="number")switch(b){case 0:var -x=cw(a[3]);if(x){var -y=x[1][1],z=function(b,a){if(a){var -c=a[1],d=a[2];return gR(b,c)?[0,b,a]:[0,c,z(b,d)]}return[0,b,0]};y[1]=z(a[6]-a[9]|0,y[1])}break;case -1:cv(a[2]);break;case -2:cv(a[3]);break;case +s=cz(a[3]);if(s){var +t=s[1][1],u=function(b,a){if(a){var +c=a[1],d=a[2];return g8(b,c)?[0,b,a]:[0,c,u(b,d)]}return[0,b,0]};t[1]=u(a[6]-a[9]|0,t[1]);return 0}return 0;case +1:cy(a[2]);return 0;case +2:cy(a[3]);return 0;case 3:var -A=cw(a[2]);if(A)hC(a,A[1][2]);else -fp(a);break;case -4:if(a[10]!==(a[6]-a[9]|0)){var -e=a[28],h=e[2];if(h){var -s=h[1];if(h[2]){var -R=h[2];e[1]=e[1]-1|0;e[2]=R;var -i=[0,s]}else{fc(e);var -i=[0,s]}}else +v=cz(a[2]);return v?hS(a,v[1][2]):fB(a);case +4:var +w=a[10]!==(a[6]-a[9]|0)?1:0;if(w){var +f=a[28],h=f[2];if(h){var +n=h[1];if(h[2]){var +K=h[2];f[1]=f[1]-1|0;f[2]=K;var +i=[0,n]}else{fp(f);var +i=[0,n]}}else var i=0;if(i){var -w=i[1],T=w[1];a[12]=a[12]-w[3]|0;a[9]=a[9]+T|0}}break;default:var -B=cv(a[5]);if(B)fo(a,c(a[25],B[1]))}else +r=i[1],M=r[1];a[12]=a[12]-r[3]|0;a[9]=a[9]+M|0;return 0}return 0}return w;default:var +x=cy(a[5]);return x?fA(a,c(a[25],x[1])):0}else switch(b[0]){case -0:hB(a,l,b[1]);break;case +0:return hR(a,j,b[1]);case 1:var -d=b[2],j=b[1],C=d[1],U=d[2],D=cw(a[2]);if(D){var -E=D[1],f=E[2];switch(E[1]){case -0:c$(a,j);break;case -1:cz(a,d,f);break;case -2:cz(a,d,f);break;case -3:if(a[9]<(l+G(C)|0))cz(a,d,f);else -c$(a,j);break;case -4:if(a[11]||!(a[9]<(l+G(C)|0)||((a[6]-f|0)+U|0)>>0))hC(a,v)}else -fp(a)}var -_=a[9]-Z|0,$=1===M?1:a[9]>>0))hS(a,q)}else +fB(a)}var +T=a[9]-S|0,U=1===H?1:a[9]>>3|0,cs(b9(b,a>>>3|0)|1<<(a&7)))}function -d_(b){var -a=fv(0);da(a,b);return a}function -d$(c){var -b=af(32),a=0;for(;;){ba(b,a,cs(b9(c,a)^cN));var +h=d[1],a=c(aY(r5),h);return[0,Q(aY(q1),a,g,f)]}return 0});fk(r6);fk(r7);try{fk(HA)}catch(a){a=d(a);if(a[1]!==dV)throw a}try{fk(Hz)}catch(a){a=d(a);if(a[1]!==dV)throw a}qm(0,7);function +r8(b,a){return dZ(b,0,a)}function +r9(b,a){return dZ(b,a,I(b)-a|0)}var +bD=be(32,cR);function +fH(a){return be(32,0)}function +dc(b,a){return a9(b,a>>>3|0,cv(b$(b,a>>>3|0)|1<<(a&7)))}function +ea(b){var +a=fH(0);dc(a,b);return a}function +eb(c){var +b=ai(32),a=0;for(;;){a9(b,a,cv(b$(c,a)^cR));var d=a+1|0;if(31!==a){var a=d;continue}return b}}function -fw(d,c){var -b=af(32),a=0;for(;;){var -e=b9(c,a);ba(b,a,cs(b9(d,a)|e));var +fI(d,c){var +b=ai(32),a=0;for(;;){var +e=b$(c,a);a9(b,a,cv(b$(d,a)|e));var f=a+1|0;if(31!==a){var a=f;continue}return b}}function -rQ(c,b){try{var +r_(c,b){try{var a=0;for(;;){var -f=b9(b,a);if(0!==(b9(c,a)&f))throw g3;var +f=b$(b,a);if(0!==(b$(c,a)&f))throw hi;var g=a+1|0;if(31!==a){var a=g;continue}var -e=1;return e}}catch(a){a=d(a);if(a===g3)return 0;throw a}}function -hP(f,e){var +e=1;return e}}catch(a){a=d(a);if(a===hi)return 0;throw a}}function +h5(f,e){var a=0;for(;;){var -d=b9(e,a);if(0!==d){var -b=0;for(;;){if(0!==(d&1<>>0){if(!(25<(b+bd|0)>>>0))d=1}else +c=fH(0);h5(function(a){dc(c,hp(a));var +b=a-224|0,d=0;if(30>>0){if(!(25>>0))d=1}else if(23!==b)d=1;var -e=d?a+gA|0:a;return da(c,e)},b);var +e=d?a+gP|0:a;return dc(c,e)},b);var d=c}else var d=b;var -h=f?d$(d):d;return dW(h)}throw[0,J,r5]}var -hT=af(cR),dm=0;for(;;){ba(hT,dm,g$(cs(dm)));var -Gt=dm+1|0;if(cN!==dm){var -dm=Gt;continue}dW(hT);var -ec=dY([0,gW]),hU=function(a){var -b=hm(a[1]);a[1][2]=0;var -c=G(b);if(0===c)return 0;if(1===c){var -d=a[2];a[2]=[0,[0,E(b,0)],d];return 0}a[2]=[0,[1,b],a[2]];return 0},r9=d$(d_(10)),fB=A,fC=ms,sd=function(b){var -f=G(b),z=[0,1];function +h=f?eb(d):d;return dY(h)}throw[0,L,sn]}var +h9=ai(cV),dp=0;for(;;){a9(h9,dp,hp(cv(dp)));var +Hy=dp+1|0;if(cR!==dp){var +dp=Hy;continue}dY(h9);var +ee=d0([0,hb]),h_=function(a){var +b=hC(a[1]);a[1][2]=0;var +c=I(b);if(0===c)return 0;if(1===c){var +d=a[2];a[2]=[0,[0,H(b,0)],d];return 0}a[2]=[0,[1,b],a[2]];return 0},sr=eb(ea(10)),fN=E,fO=mI,sx=function(b){var +f=I(b),z=[0,1];function C(g){var -d=fv(0),a=g;for(;;){if(f<=a)bB(sb);if(93===E(b,a)&&g>>0)if(9<=r)var -j=[0,[9,k+eo|0],g+1|0];else +j=[0,[9,k+eu|0],g+1|0];else l=1;else if(r)l=2;else{var -H=z[1];z[1]++;var -t=A(g+1|0),o=t[2],y=0,I=t[1];if((o+1|0)>>0)){if(q){var +q=H(b,d)-42|0;if(!(1>>0)){if(q){var c=[6,c],d=d+1|0;continue}var c=[5,c],d=d+1|0;continue}if(21===q){var c=[7,c],d=d+1|0;continue}}var B=0;if(typeof -c!=="number"&&0===c[0]){hn(h[1],c[1]);B=1}if(!B){hU(h);h[2]=[0,c,h[2]]}var -a=d;continue a}}}hU(h);return[0,[3,dV(h[2])],a]}}function +c!=="number"&&0===c[0]){hD(h[1],c[1]);B=1}if(!B){h_(h);h[2]=[0,c,h[2]]}var +a=d;continue a}}}h_(h);return[0,[3,dX(h[2])],a]}}function A(g){var -d=B(g),c=d[1],a=d[2];for(;;){if((a+2|0)<=f&&92===E(b,a)&&dz===E(b,a+1|0)){var +d=B(g),c=d[1],a=d[2];for(;;){if((a+2|0)<=f&&92===H(b,a)&&dC===H(b,a+1|0)){var e=B(a+2|0),c=[4,c,e[1]],a=e[2];continue}return[0,c,a]}}var -D=A(0),O=D[1],F=D[2]===f?O:bB(sc),g=[0,bP(32,0)],c=[0,0],m=[0,ec[1]],n=[0,0],j=[0,1],o=[0,0],r=0;function +D=A(0),O=D[1],E=D[2]===f?O:bz(sw),g=[0,bP(32,0)],c=[0,0],m=[0,ee[1]],n=[0,0],j=[0,1],o=[0,0],r=0;function a(f,e){if(g[1].length-1<=c[1]){var a=[0,g[1].length-1];for(;;){if(a[1]<=c[1]){a[1]=a[1]*2|0;continue}var -b=bP(a[1],0);hk(g[1],0,b,0,g[1].length-1);g[1]=b;break}}var -h=hS(f,e),d=c[1];ae(g[1],d)[1+d]=h;c[1]++;return 0}function +b=bP(a[1],0);hA(g[1],0,b,0,g[1].length-1);g[1]=b;break}}var +h=h8(f,e),d=c[1];ah(g[1],d)[1+d]=h;c[1]++;return 0}function k(d){var -b=c[1];a(ea,0);return b}function +b=c[1];a(ec,0);return b}function l(a,c,b){var -d=hS(c,fy(b,a));ae(g[1],a)[1+a]=d;return 0}function -i(b){try{var -a=h(ec[28],b,m[1]);return a}catch(a){a=d(a);if(a===aL){var -c=n[1];m[1]=R(ec[4],b,c,m[1]);n[1]++;return c}throw a}}function -t(b){if(fz(b)){var -a=o[1];if(64<=a)bB(r6);o[1]++;return a}return-1}function -p(b,a){return rQ(b,a)}function +d=h8(c,fK(b,a));ah(g[1],a)[1+a]=d;return 0}function +h(b){try{var +a=i(ee[28],b,m[1]);return a}catch(a){a=d(a);if(a===aM){var +c=n[1];m[1]=Q(ee[4],b,c,m[1]);n[1]++;return c}throw a}}function +t(b){if(fL(b)){var +a=o[1];if(64<=a)bz(so);o[1]++;return a}return-1}function +p(b,a){return r_(b,a)}function e(b){if(typeof b==="number")switch(b){case -0:return a(rT,0);case -1:return a(rU,0);default:return a(rV,0)}else +0:return a(sb,0);case +1:return a(sc,0);default:return a(sd,0)}else switch(b[0]){case -0:return a(ea,b[1]);case +0:return a(ec,b[1]);case 1:var -f=b[1],n=G(f);if(0===n)return 0;if(1===n)return a(ea,E(f,0));try{var -o=hj(f,0);e([1,rO(f,o)]);a(ea,0);var -v=e([1,rP(f,o+1|0)]);return v}catch(b){b=d(b);if(b===aL)return a(rR,i(f));throw b}case +f=b[1],n=I(f);if(0===n)return 0;if(1===n)return a(ec,H(f,0));try{var +o=hz(f,0);e([1,r8(f,o)]);a(ec,0);var +v=e([1,r9(f,o+1|0)]);return v}catch(b){b=d(b);if(b===aM)return a(r$,h(f));throw b}case 2:var -p=b[1],w=b[2]?d$(p):p;return a(rS,i(dW(w)));case -3:return I(b[1]);case +p=b[1],w=b[2]?eb(p):p;return a(sa,h(dY(w)));case +3:return G(b[1]);case 4:var x=b[2],y=b[1],z=k(0);e(y);var A=k(0),B=c[1];e(x);var -C=c[1];l(z,eb,B);return l(A,fx,C);case +C=c[1];l(z,ed,B);return l(A,fJ,C);case 5:var -q=b[1],g=t(q),r=k(0);if(0<=g)a(hQ,g);e(q);if(0<=g)a(hR,g);a(fx,fy(r,c[1]));return l(r,eb,c[1]);case +q=b[1],g=t(q),r=k(0);if(0<=g)a(h6,g);e(q);if(0<=g)a(h7,g);a(fJ,fK(r,c[1]));return l(r,ed,c[1]);case 6:var -s=b[1],h=t(s),D=c[1];e(s);if(0<=h)a(hR,h);var -F=k(0);if(0<=h)a(hQ,h);a(fx,fy(D,c[1]));return l(F,eb,c[1]);case +s=b[1],i=t(s),D=c[1];e(s);if(0<=i)a(h7,i);var +E=k(0);if(0<=i)a(h6,i);a(fJ,fK(D,c[1]));return l(E,ed,c[1]);case 7:var -H=b[1],J=k(0);e(H);return l(J,eb,c[1]);case +F=b[1],J=k(0);e(F);return l(J,ed,c[1]);case 8:var -m=b[1],K=b[2];a(rW,m);e(K);a(rX,m);j[1]=dU(j[1],m+1|0);return 0;default:var -u=b[1];a(rY,u);j[1]=dU(j[1],u+1|0);return 0}}function -I(o){var +m=b[1],K=b[2];a(se,m);e(K);a(sf,m);j[1]=dW(j[1],m+1|0);return 0;default:var +u=b[1];a(sg,u);j[1]=dW(j[1],u+1|0);return 0}}function +G(o){var b=o;for(;;){if(b){var c=b[1];if(typeof c!=="number")switch(c[0]){case @@ -3079,15 +3080,15 @@ d==="number")l=1;else switch(d[0]){case 0:case 2:var -h=b[2],s=db(h);if(p(bS(d),s)){a(r1,i(fA(r,d)));var -b=h;continue}break;default:l=1}break;case +i=b[2],s=dd(i);if(p(bS(d),s)){a(sj,h(fM(r,d)));var +b=i;continue}break;default:l=1}break;case 6:var f=c[1],m=0;if(typeof f==="number")m=1;else switch(f[0]){case 0:case 2:var -j=b[2],t=db(j);if(p(bS(f),t)){a(r2,i(fA(r,f)));var +j=b[2],t=dd(j);if(p(bS(f),t)){a(sk,h(fM(r,f)));var b=j;continue}break;default:m=1}break;case 7:var g=c[1],n=0;if(typeof @@ -3095,147 +3096,147 @@ g==="number")n=1;else switch(g[0]){case 0:case 2:var -k=b[2],u=db(k);if(p(bS(g),u)){a(r0,i(fA(r,g)));var +k=b[2],u=dd(k);if(p(bS(g),u)){a(si,h(fM(r,g)));var b=k;continue}break;default:n=1}break}var q=b[2];e(c);var -b=q;continue}return 0}}e(F);a(rZ,0);var -u=bS(F);if(mq(u,bF))var +b=q;continue}return 0}}e(E);a(sh,0);var +u=bS(E);if(mG(u,bD))var v=-1;else{var -s=bh(cR,0);hP(function(a){return ba(s,a,1)},u);var -v=i(dW(s))}var -w=bP(n[1],r7),K=m[1];function -L(b,a){ae(w,a)[1+a]=b;return 0}h(ec[12],L,K);var -q=c[1],x=g[1],H=0,M=o[1],N=j[1];if(0<=q&&!((x.length-1-q|0)<0)){var -y=GF(x,0,q);H=1}if(!H)var -y=ai(nm);return[0,y,w,r8,N,M,v]},ed=function(b,a){return Math.abs(b-a)<0.001?1:0},fD=function(b,a){return ed(b,a)?0:b>a===b?c:m9(b,a)}return m9(b,a)},iz=function(a){return typeof +a==="number"?a:IX(a)},bF=0,f0=1,uZ=-1,iA=function(a){return cu(0,a,0,I(a))},u0=function(b,a){return cu(b,a,0,I(a))},f1=function(a){if(typeof a==="number")return a;var -d=gZ(a);if(63>>0))switch(b){case +e=he(a);if(63>g;f=1}if(!f)var +c=IV(a,b);var +i=IK(a,cF(c,b)),d=fi(c),h=i?d:H$(d,u1);return g7(e$(h),b)}return e$(fi(a))},dl=function(a,b){if(a!==0&&b!==1){var +c=IM(a,b);if(c===1)return[0,a,b];var +d=iy(b,c);return[0,iy(a,c),d]}return[0,a,f0]},iB=function(b,a){var +c=by(a);if(0===c)return[0,by(b),bF];if(0>>0))switch(b){case 0:return 2;case -1:break;default:return 1}return 3}return a[1]===aG?0:4},uJ=function(a){return[0,dR(a[1]),a[2]]},fR=function(b,a){if(b[2]!==aG&&a[2]!==aG)return dj(cb(b[1],a[1]),cb(b[2],a[2]));return[0,aE(by(bz(b[1]),bz(a[1]))),aG]},fS=function(a){switch(a){case +1:break;default:return 1}return 3}return a[1]===0?0:4},u2=function(a){var +b=a[2];return[0,cE(a[1]),b]},f4=function(b,a){if(b[2]!==0&&a[2]!==0){var +c=bY(b[2],a[2]);return dl(bY(b[1],a[1]),c)}return[0,bc(by(b[1]),by(a[1])),bF]},f5=function(a){switch(a){case 0:return 2;case 1:return 8;case -2:return 10;default:return 16}},fT=function(f,e,d,b){var -a=e;for(;;){if(d<=a)return 0;if(c(b,E(f,a)))return[0,a];var -a=a+1|0;continue}},uL=function(a){if(an(a,uM)){if(an(a,uN)){if(!an(a,uO))return il;if(an(a,uP)){if(an(a,uQ))try{var -l=hj(a,47),Z=cr(0,a,l+1|0,(G(a)-l|0)-1|0),_=ii(cr(0,a,0,l),Z);return _}catch(l){l=d(l);if(l===aL){var -j=G(a),x=0;if(j<1)var +2:return 10;default:return 16}},f6=function(f,e,d,b){var +a=e;for(;;){if(d<=a)return 0;if(c(b,H(f,a)))return[0,a];var +a=a+1|0;continue}},b=[N,va,aE(0)],o=[N,vh,aE(0)],u4=function(a){if(ao(a,u5)){if(ao(a,u6)){if(!ao(a,u7))return iE;if(ao(a,u8)){if(ao(a,u9))try{var +l=hz(a,47),Z=cu(0,a,l+1|0,(I(a)-l|0)-1|0),_=iB(cu(0,a,0,l),Z);return _}catch(l){l=d(l);if(l===aM){var +j=I(a),x=0;if(j<1)var s=[0,0,x];else{var -P=E(a,0)+l5|0,S=0;if(!(2

>>0)){var +P=H(a,0)+mj|0,S=0;if(!(2

>>0)){var T=0;switch(P){case 0:var R=[0,0,1];break;case @@ -3490,10 +3511,10 @@ Q=[0,0,x];var s=Q}var c=s[2];if(j<(c+2|0))var t=[0,2,c];else{var -Y=E(a,c),h=E(a,c+1|0),r=0;if(48===Y){var +Y=H(a,c),h=H(a,c+1|0),r=0;if(48===Y){var i=0;if(89<=h){if(98===h)i=2;else -if(gD===h)i=1;else -if(bY!==h){r=1;i=3}}else +if(gS===h)i=1;else +if(bZ!==h){r=1;i=3}}else if(66===h)i=2;else if(79===h)i=1;else if(!(88<=h)){r=1;i=3}switch(i){case @@ -3506,586 +3527,640 @@ q=[0,0,c+2|0]}}else r=1;if(r)var q=[0,2,c];var t=q}var -e=t[2],b=t[1],U=2===b?function(a){if(69!==a&&ev!==a)return 0;return 1}:3<=b?function(a){if(80!==a&&gC!==a)return 0;return 1}:function(a){return 0},y=fT(a,e,j,U);if(y)var -z=y[1],A=z+1|0,f=z,B=dS(cr(10,a,A,j-A|0));else +e=t[2],b=t[1],U=2===b?function(a){if(69!==a&&eC!==a)return 0;return 1}:3<=b?function(a){if(80!==a&&dK!==a)return 0;return 1}:function(a){return 0},y=f6(a,e,j,U);if(y)var +z=y[1],A=z+1|0,f=z,B=iz(cu(10,a,A,j-A|0));else var f=j,B=0;if(2<=b){var -C=fT(a,e,f,function(a){return 46===a?1:0});if(C){var +C=f6(a,e,f,function(a){return 46===a?1:0});if(C){var u=C[1];if(2===b)var -D=1;else{if(!(3<=b))throw[0,J,uS];var +D=1;else{if(!(3<=b))throw[0,L,u$];var D=4}var -H=u+1|0,I=f-1|0,F=0;if(I date = smic_in_3233.date_courante_in in - let residence_3235_ : unit -> collectivite = smic_in_3233.residence_in in - let brut_horaire_3236_ : unit -> money = smic_in_3233.brut_horaire_in in - let date_courante_3237_ : date = +let smic (smic_in : smic_in) = + let date_courante_3728_ : unit -> date = smic_in.date_courante_in in + let residence_3729_ : unit -> collectivite = smic_in.residence_in in + let brut_horaire_3730_ : unit -> money = smic_in.brut_horaire_in in + let date_courante_3731_ : date = log_variable_definition [ "Smic"; "date_courante" ] embed_date (try - try date_courante_3234_ () + try date_courante_3728_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - false - then raise EmptyError - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + false) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -585,24 +585,24 @@ let smic_1356 (smic_in_3233 : smic_in) = law_headings = [ "Prologue" ]; })) in - let residence_3238_ : collectivite = + let residence_3734_ : collectivite = log_variable_definition [ "Smic"; "résidence" ] embed_collectivite (try - try residence_3235_ () + try residence_3729_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - false - then raise EmptyError - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + false) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -615,168 +615,168 @@ let smic_1356 (smic_in_3233 : smic_in) = law_headings = [ "Prologue" ]; })) in - let brut_horaire_3239_ : money = + let brut_horaire_3737_ : money = log_variable_definition [ "Smic"; "brut_horaire" ] embed_money (try - try brut_horaire_3236_ () + try brut_horaire_3730_ () with EmptyError -> - handle_default_1_ + handle_default [| - (fun (__3240_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 315; - start_column = 5; - end_line = 317; - end_column = 6; - law_headings = - [ - "Article 1"; - "Décret n° 2020-1598 du 16 décembre 2020 portant relèvement du salaire \ - minimum de croissance"; - "Montant du salaire minimum de croissance"; - "Décrets divers"; - ]; - } - (date_courante_3237_ >=@ date_of_numbers 2021 1 1 - && date_courante_3237_ <=@ date_of_numbers 2021 12 31 - && residence_3238_ = Mayotte ()) - then money_of_cents_string "774" - else raise EmptyError); - (fun (__3241_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 297; - start_column = 5; - end_line = 306; - end_column = 6; - law_headings = - [ - "Article 1"; - "Décret n° 2020-1598 du 16 décembre 2020 portant relèvement du salaire \ - minimum de croissance"; - "Montant du salaire minimum de croissance"; - "Décrets divers"; - ]; - } - (date_courante_3237_ >=@ date_of_numbers 2021 1 1 - && date_courante_3237_ <=@ date_of_numbers 2021 12 31 - && (residence_3238_ = Metropole () || residence_3238_ = Guadeloupe () - || residence_3238_ = Guyane () || residence_3238_ = Martinique () - || residence_3238_ = LaReunion () - || residence_3238_ = SaintBarthelemy () - || residence_3238_ = SaintMartin () - || residence_3238_ = SaintPierreEtMiquelon ())) - then money_of_cents_string "1025" - else raise EmptyError); - (fun (__3242_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 276; - start_column = 5; - end_line = 278; - end_column = 6; - law_headings = - [ - "Article 1"; - "Décret n° 2019-1387 du 18 décembre 2019 portant relèvement du salaire \ - minimum de croissance"; - "Montant du salaire minimum de croissance"; - "Décrets divers"; - ]; - } - (date_courante_3237_ >=@ date_of_numbers 2020 1 1 - && date_courante_3237_ <=@ date_of_numbers 2020 12 31 - && residence_3238_ = Mayotte ()) - then money_of_cents_string "766" - else raise EmptyError); - (fun (__3243_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 258; - start_column = 5; - end_line = 267; - end_column = 6; - law_headings = - [ - "Article 1"; - "Décret n° 2019-1387 du 18 décembre 2019 portant relèvement du salaire \ - minimum de croissance"; - "Montant du salaire minimum de croissance"; - "Décrets divers"; - ]; - } - (date_courante_3237_ >=@ date_of_numbers 2020 1 1 - && date_courante_3237_ <=@ date_of_numbers 2020 12 31 - && (residence_3238_ = Metropole () || residence_3238_ = Guadeloupe () - || residence_3238_ = Guyane () || residence_3238_ = Martinique () - || residence_3238_ = LaReunion () - || residence_3238_ = SaintBarthelemy () - || residence_3238_ = SaintMartin () - || residence_3238_ = SaintPierreEtMiquelon ())) - then money_of_cents_string "1015" - else raise EmptyError); - (fun (__3244_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 237; - start_column = 5; - end_line = 239; - end_column = 6; - law_headings = - [ - "Article 1"; - "Décret n° 2018-1173 du 19 décembre 2018 portant relèvement du salaire \ - minimum de croissance"; - "Montant du salaire minimum de croissance"; - "Décrets divers"; - ]; - } - (date_courante_3237_ >=@ date_of_numbers 2019 1 1 - && date_courante_3237_ <=@ date_of_numbers 2019 12 31 - && residence_3238_ = Mayotte ()) - then money_of_cents_string "757" - else raise EmptyError); - (fun (__3245_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 219; - start_column = 5; - end_line = 228; - end_column = 6; - law_headings = - [ - "Article 1"; - "Décret n° 2018-1173 du 19 décembre 2018 portant relèvement du salaire \ - minimum de croissance"; - "Montant du salaire minimum de croissance"; - "Décrets divers"; - ]; - } - (date_courante_3237_ >=@ date_of_numbers 2019 1 1 - && date_courante_3237_ <=@ date_of_numbers 2019 12 31 - && (residence_3238_ = Metropole () || residence_3238_ = Guadeloupe () - || residence_3238_ = Guyane () || residence_3238_ = Martinique () - || residence_3238_ = LaReunion () - || residence_3238_ = SaintBarthelemy () - || residence_3238_ = SaintMartin () - || residence_3238_ = SaintPierreEtMiquelon ())) - then money_of_cents_string "1003" - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 315; + start_column = 5; + end_line = 317; + end_column = 6; + law_headings = + [ + "Article 1"; + "Décret n° 2020-1598 du 16 décembre 2020 portant relèvement du \ + salaire minimum de croissance"; + "Montant du salaire minimum de croissance"; + "Décrets divers"; + ]; + } + (date_courante_3731_ >=@ date_of_numbers 2021 1 1 + && date_courante_3731_ <=@ date_of_numbers 2021 12 31 + && residence_3734_ = Mayotte ())) + (fun (_ : _) -> money_of_cents_string "774")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 297; + start_column = 5; + end_line = 306; + end_column = 6; + law_headings = + [ + "Article 1"; + "Décret n° 2020-1598 du 16 décembre 2020 portant relèvement du \ + salaire minimum de croissance"; + "Montant du salaire minimum de croissance"; + "Décrets divers"; + ]; + } + (date_courante_3731_ >=@ date_of_numbers 2021 1 1 + && date_courante_3731_ <=@ date_of_numbers 2021 12 31 + && (residence_3734_ = Metropole () || residence_3734_ = Guadeloupe () + || residence_3734_ = Guyane () || residence_3734_ = Martinique () + || residence_3734_ = LaReunion () + || residence_3734_ = SaintBarthelemy () + || residence_3734_ = SaintMartin () + || residence_3734_ = SaintPierreEtMiquelon ()))) + (fun (_ : _) -> money_of_cents_string "1025")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 276; + start_column = 5; + end_line = 278; + end_column = 6; + law_headings = + [ + "Article 1"; + "Décret n° 2019-1387 du 18 décembre 2019 portant relèvement du \ + salaire minimum de croissance"; + "Montant du salaire minimum de croissance"; + "Décrets divers"; + ]; + } + (date_courante_3731_ >=@ date_of_numbers 2020 1 1 + && date_courante_3731_ <=@ date_of_numbers 2020 12 31 + && residence_3734_ = Mayotte ())) + (fun (_ : _) -> money_of_cents_string "766")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 258; + start_column = 5; + end_line = 267; + end_column = 6; + law_headings = + [ + "Article 1"; + "Décret n° 2019-1387 du 18 décembre 2019 portant relèvement du \ + salaire minimum de croissance"; + "Montant du salaire minimum de croissance"; + "Décrets divers"; + ]; + } + (date_courante_3731_ >=@ date_of_numbers 2020 1 1 + && date_courante_3731_ <=@ date_of_numbers 2020 12 31 + && (residence_3734_ = Metropole () || residence_3734_ = Guadeloupe () + || residence_3734_ = Guyane () || residence_3734_ = Martinique () + || residence_3734_ = LaReunion () + || residence_3734_ = SaintBarthelemy () + || residence_3734_ = SaintMartin () + || residence_3734_ = SaintPierreEtMiquelon ()))) + (fun (_ : _) -> money_of_cents_string "1015")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 237; + start_column = 5; + end_line = 239; + end_column = 6; + law_headings = + [ + "Article 1"; + "Décret n° 2018-1173 du 19 décembre 2018 portant relèvement du \ + salaire minimum de croissance"; + "Montant du salaire minimum de croissance"; + "Décrets divers"; + ]; + } + (date_courante_3731_ >=@ date_of_numbers 2019 1 1 + && date_courante_3731_ <=@ date_of_numbers 2019 12 31 + && residence_3734_ = Mayotte ())) + (fun (_ : _) -> money_of_cents_string "757")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 219; + start_column = 5; + end_line = 228; + end_column = 6; + law_headings = + [ + "Article 1"; + "Décret n° 2018-1173 du 19 décembre 2018 portant relèvement du \ + salaire minimum de croissance"; + "Montant du salaire minimum de croissance"; + "Décrets divers"; + ]; + } + (date_courante_3731_ >=@ date_of_numbers 2019 1 1 + && date_courante_3731_ <=@ date_of_numbers 2019 12 31 + && (residence_3734_ = Metropole () || residence_3734_ = Guadeloupe () + || residence_3734_ = Guyane () || residence_3734_ = Martinique () + || residence_3734_ = LaReunion () + || residence_3734_ = SaintBarthelemy () + || residence_3734_ = SaintMartin () + || residence_3734_ = SaintPierreEtMiquelon ()))) + (fun (_ : _) -> money_of_cents_string "1003")); |] - (fun (__3246_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = ""; @@ -787,7 +787,7 @@ let smic_1356 (smic_in_3233 : smic_in) = law_headings = []; } false) - (fun (__3247_ : _) -> raise EmptyError) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -801,23 +801,46 @@ let smic_1356 (smic_in_3233 : smic_in) = })) in { - date_courante_out = date_courante_3237_; - residence_out = residence_3238_; - brut_horaire_out = brut_horaire_3239_; + date_courante_out = date_courante_3731_; + residence_out = residence_3734_; + brut_horaire_out = brut_horaire_3737_; } -let allocation_familiales_avril2008_1379 - (allocation_familiales_avril2008_in_3248 : allocation_familiales_avril2008_in) = - let age_minimum_alinea_1_l521_3_3249_ : unit -> integer = - allocation_familiales_avril2008_in_3248.age_minimum_alinea_1_l521_3_in +let allocation_familiales_avril2008 + (allocation_familiales_avril2008_in : allocation_familiales_avril2008_in) = + let age_minimum_alinea_1_l521_3_3759_ : unit -> integer = + allocation_familiales_avril2008_in.age_minimum_alinea_1_l521_3_in in - let age_minimum_alinea_1_l521_3_3250_ : integer = + let age_minimum_alinea_1_l521_3_3760_ : integer = log_variable_definition [ "AllocationFamilialesAvril2008"; "âge_minimum_alinéa_1_l521_3" ] embed_integer (try - try age_minimum_alinea_1_l521_3_3249_ () - with EmptyError -> ( try integer_of_string "16" with EmptyError -> raise EmptyError) + try age_minimum_alinea_1_l521_3_3759_ () + with EmptyError -> ( + try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_R.catala_fr"; + start_line = 78; + start_column = 14; + end_line = 78; + end_column = 41; + law_headings = + [ + "Article R521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets en Conseil d'Etat"; + "Code de la sécurité sociale"; + ]; + } + true) + (fun (_ : _) -> integer_of_string "16") + with EmptyError -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -830,31 +853,31 @@ let allocation_familiales_avril2008_1379 law_headings = [ "Prologue" ]; })) in - { age_minimum_alinea_1_l521_3_out = age_minimum_alinea_1_l521_3_3250_ } + { age_minimum_alinea_1_l521_3_out = age_minimum_alinea_1_l521_3_3760_ } -let enfant_le_plus_age_1386 (enfant_le_plus_age_in_3251 : enfant_le_plus_age_in) = - let enfants_3252_ : unit -> enfant array = enfant_le_plus_age_in_3251.enfants_in in - let le_plus_age_3253_ : unit -> enfant = enfant_le_plus_age_in_3251.le_plus_age_in in - let enfants_3254_ : enfant array = +let enfant_le_plus_age (enfant_le_plus_age_in : enfant_le_plus_age_in) = + let enfants_3764_ : unit -> enfant array = enfant_le_plus_age_in.enfants_in in + let le_plus_age_3765_ : unit -> enfant = enfant_le_plus_age_in.le_plus_age_in in + let enfants_3766_ : enfant array = log_variable_definition [ "EnfantLePlusÂgé"; "enfants" ] (embed_array embed_enfant) (try - try enfants_3252_ () + try enfants_3764_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - false - then raise EmptyError - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + false) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -867,31 +890,44 @@ let enfant_le_plus_age_1386 (enfant_le_plus_age_in_3251 : enfant_le_plus_age_in) law_headings = [ "Prologue" ]; })) in - let le_plus_age_3255_ : enfant = + let le_plus_age_3769_ : enfant = log_variable_definition [ "EnfantLePlusÂgé"; "le_plus_âgé" ] embed_enfant (try - try le_plus_age_3253_ () + try le_plus_age_3765_ () with EmptyError -> ( try - let predicate_3256_ : _ = - fun (potentiel_plus_age_3257_ : _) -> potentiel_plus_age_3257_.age - in - Array.fold_left - (fun (acc_3258_ : _) (item_3259_ : _) -> - if predicate_3256_ acc_3258_ >! predicate_3256_ item_3259_ then acc_3258_ - else item_3259_) - { - identifiant = ~-!(integer_of_string "1"); - obligation_scolaire = Pendant (); - remuneration_mensuelle = money_of_cents_string "0"; - date_de_naissance = date_of_numbers 1900 1 1; - age = integer_of_string "0"; - prise_en_charge = EffectiveEtPermanente (); - a_deja_ouvert_droit_aux_allocations_familiales = false; - } - enfants_3254_ + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 12; + start_column = 14; + end_line = 12; + end_column = 25; + law_headings = [ "Règles diverses"; "Épilogue"; "Décrets divers" ]; + } + true) + (fun (_ : _) -> + let predicate_3772_ : _ = + fun (potentiel_plus_age_3773_ : _) -> potentiel_plus_age_3773_.age + in + Array.fold_left + (fun (acc_3774_ : _) (item_3775_ : _) -> + if predicate_3772_ acc_3774_ >! predicate_3772_ item_3775_ then acc_3774_ + else item_3775_) + { + identifiant = ~-!(integer_of_string "1"); + obligation_scolaire = Pendant (); + remuneration_mensuelle = money_of_cents_string "0"; + date_de_naissance = date_of_numbers 1900 1 1; + age = integer_of_string "0"; + prise_en_charge = EffectiveEtPermanente (); + a_deja_ouvert_droit_aux_allocations_familiales = false; + } + enfants_3766_) with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -905,33 +941,54 @@ let enfant_le_plus_age_1386 (enfant_le_plus_age_in_3251 : enfant_le_plus_age_in) law_headings = [ "Prologue" ]; })) in - { enfants_out = enfants_3254_; le_plus_age_out = le_plus_age_3255_ } + { enfants_out = enfants_3766_; le_plus_age_out = le_plus_age_3769_ } -let prestations_familiales_1405 (prestations_familiales_in_3260 : prestations_familiales_in) = - let droit_ouvert_3261_ : unit -> enfant -> bool = - prestations_familiales_in_3260.droit_ouvert_in +let prestations_familiales (prestations_familiales_in : prestations_familiales_in) = + let droit_ouvert_3777_ : unit -> enfant -> bool = prestations_familiales_in.droit_ouvert_in in + let conditions_hors_age_3778_ : unit -> enfant -> bool = + prestations_familiales_in.conditions_hors_age_in in - let conditions_hors_age_3262_ : unit -> enfant -> bool = - prestations_familiales_in_3260.conditions_hors_age_in + let plafond_l512_3_2_3779_ : unit -> money = prestations_familiales_in.plafond_l512_3_2_in in + let age_l512_3_2_3780_ : unit -> integer = prestations_familiales_in.age_l512_3_2_in in + let regime_outre_mer_l751_1_3781_ : unit -> bool = + prestations_familiales_in.regime_outre_mer_l751_1_in in - let plafond_l512_3_2_3263_ : unit -> money = prestations_familiales_in_3260.plafond_l512_3_2_in in - let age_l512_3_2_3264_ : unit -> integer = prestations_familiales_in_3260.age_l512_3_2_in in - let regime_outre_mer_l751_1_3265_ : unit -> bool = - prestations_familiales_in_3260.regime_outre_mer_l751_1_in + let date_courante_3782_ : unit -> date = prestations_familiales_in.date_courante_in in + let prestation_courante_3783_ : unit -> element_prestations_familiales = + prestations_familiales_in.prestation_courante_in in - let date_courante_3266_ : unit -> date = prestations_familiales_in_3260.date_courante_in in - let prestation_courante_3267_ : unit -> element_prestations_familiales = - prestations_familiales_in_3260.prestation_courante_in - in - let residence_3268_ : unit -> collectivite = prestations_familiales_in_3260.residence_in in - let base_mensuelle_3269_ : unit -> money = prestations_familiales_in_3260.base_mensuelle_in in - let age_l512_3_2_3270_ : integer = + let residence_3784_ : unit -> collectivite = prestations_familiales_in.residence_in in + let base_mensuelle_3785_ : unit -> money = prestations_familiales_in.base_mensuelle_in in + let age_l512_3_2_3786_ : integer = log_variable_definition [ "PrestationsFamiliales"; "âge_l512_3_2" ] embed_integer (try - try age_l512_3_2_3264_ () - with EmptyError -> ( try integer_of_string "20" with EmptyError -> raise EmptyError) + try age_l512_3_2_3780_ () + with EmptyError -> ( + try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_R.catala_fr"; + start_line = 21; + start_column = 14; + end_line = 21; + end_column = 26; + law_headings = + [ + "Article R512-2"; + "Chapitre 2 : Champ d'application."; + "Titre 1 : Champ d'application - Généralités"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets en Conseil d'Etat"; + "Code de la sécurité sociale"; + ]; + } + true) + (fun (_ : _) -> integer_of_string "20") + with EmptyError -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -944,26 +1001,26 @@ let prestations_familiales_1405 (prestations_familiales_in_3260 : prestations_fa law_headings = [ "Prologue" ]; })) in - let date_courante_3271_ : date = + let date_courante_3789_ : date = log_variable_definition [ "PrestationsFamiliales"; "date_courante" ] embed_date (try - try date_courante_3266_ () + try date_courante_3782_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - false - then raise EmptyError - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + false) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -976,26 +1033,26 @@ let prestations_familiales_1405 (prestations_familiales_in_3260 : prestations_fa law_headings = [ "Prologue" ]; })) in - let prestation_courante_3272_ : element_prestations_familiales = + let prestation_courante_3792_ : element_prestations_familiales = log_variable_definition [ "PrestationsFamiliales"; "prestation_courante" ] embed_element_prestations_familiales (try - try prestation_courante_3267_ () + try prestation_courante_3783_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - false - then raise EmptyError - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + false) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -1008,26 +1065,26 @@ let prestations_familiales_1405 (prestations_familiales_in_3260 : prestations_fa law_headings = [ "Prologue" ]; })) in - let residence_3273_ : collectivite = + let residence_3795_ : collectivite = log_variable_definition [ "PrestationsFamiliales"; "résidence" ] embed_collectivite (try - try residence_3268_ () + try residence_3784_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - false - then raise EmptyError - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + false) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -1040,87 +1097,87 @@ let prestations_familiales_1405 (prestations_familiales_in_3260 : prestations_fa law_headings = [ "Prologue" ]; })) in - let base_mensuelle_3274_ : money = + let base_mensuelle_3798_ : money = log_variable_definition [ "PrestationsFamiliales"; "base_mensuelle" ] embed_money (try - try base_mensuelle_3269_ () + try base_mensuelle_3785_ () with EmptyError -> - handle_default_1_ + handle_default [| - (fun (__3275_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 60; - start_column = 5; - end_line = 61; - end_column = 34; - law_headings = - [ - "Instruction interministérielle n°DSS/2B/2021/65 du 19 mars 2021 \ - relative à la revalorisation au 1er avril 2021 des prestations \ - familiales servies en métropole, en Guadeloupe, en Guyane, en \ - Martinique, à la Réunion, à Saint-Barthélemy, à Saint-Martin et dans \ - le département de Mayotte"; - "Montant de la base mensuelle des allocations familiales"; - "Décrets divers"; - ]; - } - (date_courante_3271_ >=@ date_of_numbers 2021 4 1 - && date_courante_3271_ <@ date_of_numbers 2022 4 1) - then money_of_cents_string "41481" - else raise EmptyError); - (fun (__3276_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 44; - start_column = 5; - end_line = 45; - end_column = 34; - law_headings = - [ - "Instruction interministérielle no DSS/SD2B/2020/33 du 18 février 2020 \ - relative à la revalorisation au 1er avril 2020 des prestations \ - familiales servies en métropole, en Guadeloupe, en Guyane, en \ - Martinique, à La Réunion, à Saint-Barthélemy, à Saint-Martin et dans \ - le département de Mayotte"; - "Montant de la base mensuelle des allocations familiales"; - "Décrets divers"; - ]; - } - (date_courante_3271_ >=@ date_of_numbers 2020 4 1 - && date_courante_3271_ <@ date_of_numbers 2021 4 1) - then money_of_cents_string "41404" - else raise EmptyError); - (fun (__3277_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 24; - start_column = 5; - end_line = 25; - end_column = 34; - law_headings = - [ - "Instruction ministérielle N°DSS/SD2B/2019/65 du 25 mars 2019 relative \ - à la revalorisation au 1er avril 2019 des prestations familiales \ - servies en métropole"; - "Montant de la base mensuelle des allocations familiales"; - "Décrets divers"; - ]; - } - (date_courante_3271_ >=@ date_of_numbers 2019 4 1 - && date_courante_3271_ <@ date_of_numbers 2020 4 1) - then money_of_cents_string "41316" - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 60; + start_column = 5; + end_line = 61; + end_column = 34; + law_headings = + [ + "Instruction interministérielle n°DSS/2B/2021/65 du 19 mars 2021 \ + relative à la revalorisation au 1er avril 2021 des prestations \ + familiales servies en métropole, en Guadeloupe, en Guyane, en \ + Martinique, à la Réunion, à Saint-Barthélemy, à Saint-Martin et dans \ + le département de Mayotte"; + "Montant de la base mensuelle des allocations familiales"; + "Décrets divers"; + ]; + } + (date_courante_3789_ >=@ date_of_numbers 2021 4 1 + && date_courante_3789_ <@ date_of_numbers 2022 4 1)) + (fun (_ : _) -> money_of_cents_string "41481")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 44; + start_column = 5; + end_line = 45; + end_column = 34; + law_headings = + [ + "Instruction interministérielle no DSS/SD2B/2020/33 du 18 février \ + 2020 relative à la revalorisation au 1er avril 2020 des prestations \ + familiales servies en métropole, en Guadeloupe, en Guyane, en \ + Martinique, à La Réunion, à Saint-Barthélemy, à Saint-Martin et dans \ + le département de Mayotte"; + "Montant de la base mensuelle des allocations familiales"; + "Décrets divers"; + ]; + } + (date_courante_3789_ >=@ date_of_numbers 2020 4 1 + && date_courante_3789_ <@ date_of_numbers 2021 4 1)) + (fun (_ : _) -> money_of_cents_string "41404")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 24; + start_column = 5; + end_line = 25; + end_column = 34; + law_headings = + [ + "Instruction ministérielle N°DSS/SD2B/2019/65 du 25 mars 2019 \ + relative à la revalorisation au 1er avril 2019 des prestations \ + familiales servies en métropole"; + "Montant de la base mensuelle des allocations familiales"; + "Décrets divers"; + ]; + } + (date_courante_3789_ >=@ date_of_numbers 2019 4 1 + && date_courante_3789_ <@ date_of_numbers 2020 4 1)) + (fun (_ : _) -> money_of_cents_string "41316")); |] - (fun (__3278_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = ""; @@ -1131,7 +1188,7 @@ let prestations_familiales_1405 (prestations_familiales_in_3260 : prestations_fa law_headings = []; } false) - (fun (__3279_ : _) -> raise EmptyError) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -1144,68 +1201,96 @@ let prestations_familiales_1405 (prestations_familiales_in_3260 : prestations_fa law_headings = [ "Prologue" ]; })) in - let smic_dot_date_courante_3280_ : unit -> date = - fun (__3281_ : unit) -> + let smic_dot_date_courante_3810_ : unit -> date = + fun (_ : unit) -> log_variable_definition [ "PrestationsFamiliales"; "smic.date_courante" ] embed_date - (try date_courante_3271_ with EmptyError -> raise EmptyError) + (try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./prologue.catala_fr"; + start_line = 78; + start_column = 14; + end_line = 78; + end_column = 32; + law_headings = [ "Prologue" ]; + } + true) + (fun (_ : _) -> date_courante_3789_) + with EmptyError -> raise EmptyError) in - let smic_dot_residence_3282_ : unit -> collectivite = - fun (__3283_ : unit) -> + let smic_dot_residence_3814_ : unit -> collectivite = + fun (_ : unit) -> log_variable_definition [ "PrestationsFamiliales"; "smic.résidence" ] embed_collectivite - (try residence_3273_ with EmptyError -> raise EmptyError) + (try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./prologue.catala_fr"; + start_line = 77; + start_column = 14; + end_line = 77; + end_column = 28; + law_headings = [ "Prologue" ]; + } + true) + (fun (_ : _) -> residence_3795_) + with EmptyError -> raise EmptyError) in - let result_3284_ : smic_out = + let result_3818_ : smic_out = log_end_call [ "PrestationsFamiliales"; "smic"; "Smic" ] (log_begin_call [ "PrestationsFamiliales"; "smic"; "Smic" ] - smic_1356 + smic { - date_courante_in = smic_dot_date_courante_3280_; - residence_in = smic_dot_residence_3282_; - brut_horaire_in = (fun (__3285_ : unit) -> raise EmptyError); + date_courante_in = smic_dot_date_courante_3810_; + residence_in = smic_dot_residence_3814_; + brut_horaire_in = (fun (_ : unit) -> raise EmptyError); }) in - let smic_dot_date_courante_3286_ : date = result_3284_.date_courante_out in - let smic_dot_residence_3287_ : collectivite = result_3284_.residence_out in - let smic_dot_brut_horaire_3288_ : money = result_3284_.brut_horaire_out in - let regime_outre_mer_l751_1_3289_ : bool = + let smic_dot_date_courante_3820_ : date = result_3818_.date_courante_out in + let smic_dot_residence_3821_ : collectivite = result_3818_.residence_out in + let smic_dot_brut_horaire_3822_ : money = result_3818_.brut_horaire_out in + let regime_outre_mer_l751_1_3823_ : bool = log_variable_definition [ "PrestationsFamiliales"; "régime_outre_mer_l751_1" ] embed_bool (try - try regime_outre_mer_l751_1_3265_ () + try regime_outre_mer_l751_1_3781_ () with EmptyError -> ( try - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 354; - start_column = 5; - end_line = 359; - end_column = 30; - law_headings = - [ - "Article L751-1"; - "Chapitre 1er : Généralités"; - "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, à la \ - Martinique, à La Réunion, à Saint-Barthélemy et à Saint-Martin"; - "Livre 7 : Régimes divers - Dispositions diverses"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (residence_3273_ = Guadeloupe () || residence_3273_ = Guyane () - || residence_3273_ = Martinique () || residence_3273_ = LaReunion () - || residence_3273_ = SaintBarthelemy () - || residence_3273_ = SaintMartin ()) - then true - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 354; + start_column = 5; + end_line = 359; + end_column = 30; + law_headings = + [ + "Article L751-1"; + "Chapitre 1er : Généralités"; + "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, à la \ + Martinique, à La Réunion, à Saint-Barthélemy et à Saint-Martin"; + "Livre 7 : Régimes divers - Dispositions diverses"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (residence_3795_ = Guadeloupe () || residence_3795_ = Guyane () + || residence_3795_ = Martinique () || residence_3795_ = LaReunion () + || residence_3795_ = SaintBarthelemy () + || residence_3795_ = SaintMartin ())) + (fun (_ : _) -> true) with EmptyError -> false) with EmptyError -> raise @@ -1219,39 +1304,40 @@ let prestations_familiales_1405 (prestations_familiales_in_3260 : prestations_fa law_headings = [ "Prologue" ]; })) in - let plafond_l512_3_2_3290_ : money = + let plafond_l512_3_2_3826_ : money = log_variable_definition [ "PrestationsFamiliales"; "plafond_l512_3_2" ] embed_money (try - try plafond_l512_3_2_3263_ () + try plafond_l512_3_2_3779_ () with EmptyError -> ( try try - if - log_decision_taken - { - filename = "./securite_sociale_R.catala_fr"; - start_line = 216; - start_column = 18; - end_line = 216; - end_column = 41; - law_headings = - [ - "Article R755-0-2"; - "Chapitre 5 : Prestations familiales et prestations assimilées"; - "Titre 5 : Départements d'outre-mer"; - "Livre 7 : Régimes divers - Dispositions diverses"; - "Partie réglementaire - Décrets en Conseil d'Etat"; - "Code de la sécurité sociale"; - ]; - } - regime_outre_mer_l751_1_3289_ - then - smic_dot_brut_horaire_3288_ *$ decimal_of_string "0.55" *$ decimal_of_string "169." - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_R.catala_fr"; + start_line = 216; + start_column = 18; + end_line = 216; + end_column = 41; + law_headings = + [ + "Article R755-0-2"; + "Chapitre 5 : Prestations familiales et prestations assimilées"; + "Titre 5 : Départements d'outre-mer"; + "Livre 7 : Régimes divers - Dispositions diverses"; + "Partie réglementaire - Décrets en Conseil d'Etat"; + "Code de la sécurité sociale"; + ]; + } + regime_outre_mer_l751_1_3823_) + (fun (_ : _) -> + smic_dot_brut_horaire_3822_ *$ decimal_of_string "0.55" + *$ decimal_of_string "169.") with EmptyError -> - smic_dot_brut_horaire_3288_ *$ decimal_of_string "0.55" *$ decimal_of_string "169." + smic_dot_brut_horaire_3822_ *$ decimal_of_string "0.55" *$ decimal_of_string "169." with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -1265,49 +1351,50 @@ let prestations_familiales_1405 (prestations_familiales_in_3260 : prestations_fa law_headings = [ "Prologue" ]; })) in - let conditions_hors_age_3291_ : enfant -> bool = + let conditions_hors_age_3829_ : enfant -> bool = log_variable_definition [ "PrestationsFamiliales"; "conditions_hors_âge" ] unembeddable (try - try conditions_hors_age_3262_ () + try conditions_hors_age_3778_ () with EmptyError -> ( - fun (param_3292_ : enfant) -> + fun (param_3830_ : enfant) -> try try - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 68; - start_column = 5; - end_line = 71; - end_column = 57; - law_headings = - [ - "Article L512-3"; - "Chapitre 2 : Champ d'application"; - "Titre 1 : Champ d'application - Généralités"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - ((match param_3292_.obligation_scolaire with - | Avant __3293_ -> true - | Pendant __3294_ -> false - | Apres __3295_ -> false) - || (match param_3292_.obligation_scolaire with - | Avant __3296_ -> false - | Pendant __3297_ -> true - | Apres __3298_ -> false) - || (match param_3292_.obligation_scolaire with - | Avant __3299_ -> false - | Pendant __3300_ -> false - | Apres __3301_ -> true) - && param_3292_.remuneration_mensuelle <=$ plafond_l512_3_2_3290_) - then true - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 68; + start_column = 5; + end_line = 71; + end_column = 57; + law_headings = + [ + "Article L512-3"; + "Chapitre 2 : Champ d'application"; + "Titre 1 : Champ d'application - Généralités"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (((match param_3830_.obligation_scolaire with + | Avant _ -> true + | Pendant _ -> false + | Apres _ -> false) + || (match param_3830_.obligation_scolaire with + | Avant _ -> false + | Pendant _ -> true + | Apres _ -> false) + || + match param_3830_.obligation_scolaire with + | Avant _ -> false + | Pendant _ -> false + | Apres _ -> true) + && param_3830_.remuneration_mensuelle <=$ plafond_l512_3_2_3826_)) + (fun (_ : _) -> true) with EmptyError -> false with EmptyError -> raise @@ -1332,76 +1419,76 @@ let prestations_familiales_1405 (prestations_familiales_in_3260 : prestations_fa law_headings = [ "Prologue" ]; })) in - let droit_ouvert_3302_ : enfant -> bool = + let droit_ouvert_3842_ : enfant -> bool = log_variable_definition [ "PrestationsFamiliales"; "droit_ouvert" ] unembeddable (try - try droit_ouvert_3261_ () + try droit_ouvert_3777_ () with EmptyError -> ( - fun (param_3303_ : enfant) -> + fun (param_3843_ : enfant) -> try - handle_default_1_ + handle_default [| - (fun (__3304_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 60; - start_column = 5; - end_line = 62; - end_column = 32; - law_headings = - [ - "Article L512-3"; - "Chapitre 2 : Champ d'application"; - "Titre 1 : Champ d'application - Généralités"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - ((match param_3303_.obligation_scolaire with - | Avant __3305_ -> false - | Pendant __3306_ -> false - | Apres __3307_ -> true) - && param_3303_.remuneration_mensuelle <=$ plafond_l512_3_2_3290_ - && param_3303_.age - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 49; - start_column = 5; - end_line = 50; - end_column = 50; - law_headings = - [ - "Article L512-3"; - "Chapitre 2 : Champ d'application"; - "Titre 1 : Champ d'application - Généralités"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - ((match param_3303_.obligation_scolaire with - | Avant __3309_ -> true - | Pendant __3310_ -> false - | Apres __3311_ -> false) - || - match param_3303_.obligation_scolaire with - | Avant __3312_ -> false - | Pendant __3313_ -> true - | Apres __3314_ -> false) - then true - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 60; + start_column = 5; + end_line = 62; + end_column = 32; + law_headings = + [ + "Article L512-3"; + "Chapitre 2 : Champ d'application"; + "Titre 1 : Champ d'application - Généralités"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + ((match param_3843_.obligation_scolaire with + | Avant _ -> false + | Pendant _ -> false + | Apres _ -> true) + && param_3843_.remuneration_mensuelle <=$ plafond_l512_3_2_3826_ + && param_3843_.age true)); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 49; + start_column = 5; + end_line = 50; + end_column = 50; + law_headings = + [ + "Article L512-3"; + "Chapitre 2 : Champ d'application"; + "Titre 1 : Champ d'application - Généralités"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + ((match param_3843_.obligation_scolaire with + | Avant _ -> true + | Pendant _ -> false + | Apres _ -> false) + || + match param_3843_.obligation_scolaire with + | Avant _ -> false + | Pendant _ -> true + | Apres _ -> false)) + (fun (_ : _) -> true)); |] - (fun (__3315_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = ""; @@ -1412,7 +1499,7 @@ let prestations_familiales_1405 (prestations_familiales_in_3260 : prestations_fa law_headings = []; } true) - (fun (__3316_ : _) -> false) + (fun (_ : _) -> false) with EmptyError -> raise (NoValueProvided @@ -1437,164 +1524,154 @@ let prestations_familiales_1405 (prestations_familiales_in_3260 : prestations_fa })) in { - droit_ouvert_out = droit_ouvert_3302_; - conditions_hors_age_out = conditions_hors_age_3291_; - plafond_l512_3_2_out = plafond_l512_3_2_3290_; - age_l512_3_2_out = age_l512_3_2_3270_; - regime_outre_mer_l751_1_out = regime_outre_mer_l751_1_3289_; - date_courante_out = date_courante_3271_; - prestation_courante_out = prestation_courante_3272_; - residence_out = residence_3273_; - base_mensuelle_out = base_mensuelle_3274_; + droit_ouvert_out = droit_ouvert_3842_; + conditions_hors_age_out = conditions_hors_age_3829_; + plafond_l512_3_2_out = plafond_l512_3_2_3826_; + age_l512_3_2_out = age_l512_3_2_3786_; + regime_outre_mer_l751_1_out = regime_outre_mer_l751_1_3823_; + date_courante_out = date_courante_3789_; + prestation_courante_out = prestation_courante_3792_; + residence_out = residence_3795_; + base_mensuelle_out = base_mensuelle_3798_; } -let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_familiales_in) = - let personne_charge_effective_permanente_est_parent_3318_ : unit -> bool = - allocations_familiales_in_3317.personne_charge_effective_permanente_est_parent_in +let allocations_familiales (allocations_familiales_in : allocations_familiales_in) = + let personne_charge_effective_permanente_est_parent_3862_ : unit -> bool = + allocations_familiales_in.personne_charge_effective_permanente_est_parent_in in - let personne_charge_effective_permanente_remplit_titre__i_3319_ : unit -> bool = - allocations_familiales_in_3317.personne_charge_effective_permanente_remplit_titre_I_in + let personne_charge_effective_permanente_remplit_titre__i_3863_ : unit -> bool = + allocations_familiales_in.personne_charge_effective_permanente_remplit_titre_I_in in - let ressources_menage_3320_ : unit -> money = - allocations_familiales_in_3317.ressources_menage_in + let ressources_menage_3864_ : unit -> money = allocations_familiales_in.ressources_menage_in in + let residence_3865_ : unit -> collectivite = allocations_familiales_in.residence_in in + let date_courante_3866_ : unit -> date = allocations_familiales_in.date_courante_in in + let enfants_a_charge_3867_ : unit -> enfant array = + allocations_familiales_in.enfants_a_charge_in in - let residence_3321_ : unit -> collectivite = allocations_familiales_in_3317.residence_in in - let date_courante_3322_ : unit -> date = allocations_familiales_in_3317.date_courante_in in - let enfants_a_charge_3323_ : unit -> enfant array = - allocations_familiales_in_3317.enfants_a_charge_in + let enfants_a_charge_droit_ouvert_prestation_familiale_3868_ : unit -> enfant array = + allocations_familiales_in.enfants_a_charge_droit_ouvert_prestation_familiale_in in - let enfants_a_charge_droit_ouvert_prestation_familiale_3324_ : unit -> enfant array = - allocations_familiales_in_3317.enfants_a_charge_droit_ouvert_prestation_familiale_in + let prise_en_compte_3869_ : unit -> enfant -> prise_en_compte = + allocations_familiales_in.prise_en_compte_in in - let prise_en_compte_3325_ : unit -> enfant -> prise_en_compte = - allocations_familiales_in_3317.prise_en_compte_in + let versement_3870_ : unit -> enfant -> versement_allocations = + allocations_familiales_in.versement_in in - let versement_3326_ : unit -> enfant -> versement_allocations = - allocations_familiales_in_3317.versement_in + let montant_verse_3871_ : unit -> money = allocations_familiales_in.montant_verse_in in + let droit_ouvert_base_3872_ : unit -> bool = allocations_familiales_in.droit_ouvert_base_in in + let montant_initial_base_3873_ : unit -> money = + allocations_familiales_in.montant_initial_base_in in - let montant_verse_3327_ : unit -> money = allocations_familiales_in_3317.montant_verse_in in - let droit_ouvert_base_3328_ : unit -> bool = - allocations_familiales_in_3317.droit_ouvert_base_in + let montant_initial_base_premier_enfant_3874_ : unit -> money = + allocations_familiales_in.montant_initial_base_premier_enfant_in in - let montant_initial_base_3329_ : unit -> money = - allocations_familiales_in_3317.montant_initial_base_in + let montant_initial_base_deuxieme_enfant_3875_ : unit -> money = + allocations_familiales_in.montant_initial_base_deuxieme_enfant_in in - let montant_initial_base_premier_enfant_3330_ : unit -> money = - allocations_familiales_in_3317.montant_initial_base_premier_enfant_in + let montant_initial_base_troisieme_enfant_et_plus_3876_ : unit -> money = + allocations_familiales_in.montant_initial_base_troisieme_enfant_et_plus_in in - let montant_initial_base_deuxieme_enfant_3331_ : unit -> money = - allocations_familiales_in_3317.montant_initial_base_deuxieme_enfant_in + let rapport_enfants_total_moyen_3877_ : unit -> decimal = + allocations_familiales_in.rapport_enfants_total_moyen_in in - let montant_initial_base_troisieme_enfant_et_plus_3332_ : unit -> money = - allocations_familiales_in_3317.montant_initial_base_troisieme_enfant_et_plus_in + let nombre_moyen_enfants_3878_ : unit -> decimal = + allocations_familiales_in.nombre_moyen_enfants_in in - let rapport_enfants_total_moyen_3333_ : unit -> decimal = - allocations_familiales_in_3317.rapport_enfants_total_moyen_in + let nombre_total_enfants_3879_ : unit -> decimal = + allocations_familiales_in.nombre_total_enfants_in in - let nombre_moyen_enfants_3334_ : unit -> decimal = - allocations_familiales_in_3317.nombre_moyen_enfants_in + let montant_avec_garde_alternee_base_3880_ : unit -> money = + allocations_familiales_in.montant_avec_garde_alternee_base_in in - let nombre_total_enfants_3335_ : unit -> decimal = - allocations_familiales_in_3317.nombre_total_enfants_in + let montant_verse_base_3881_ : unit -> money = allocations_familiales_in.montant_verse_base_in in + let avait_enfant_a_charge_avant_1er_janvier_2012_3882_ : unit -> bool = + allocations_familiales_in.avait_enfant_a_charge_avant_1er_janvier_2012_in in - let montant_avec_garde_alternee_base_3336_ : unit -> money = - allocations_familiales_in_3317.montant_avec_garde_alternee_base_in + let montant_initial_base_premier_enfant_mayotte_3883_ : unit -> money = + allocations_familiales_in.montant_initial_base_premier_enfant_mayotte_in in - let montant_verse_base_3337_ : unit -> money = - allocations_familiales_in_3317.montant_verse_base_in + let montant_initial_base_deuxieme_enfant_mayotte_3884_ : unit -> money = + allocations_familiales_in.montant_initial_base_deuxieme_enfant_mayotte_in in - let avait_enfant_a_charge_avant_1er_janvier_2012_3338_ : unit -> bool = - allocations_familiales_in_3317.avait_enfant_a_charge_avant_1er_janvier_2012_in + let montant_initial_base_troisieme_enfant_mayotte_3885_ : unit -> money = + allocations_familiales_in.montant_initial_base_troisieme_enfant_mayotte_in in - let montant_initial_base_premier_enfant_mayotte_3339_ : unit -> money = - allocations_familiales_in_3317.montant_initial_base_premier_enfant_mayotte_in + let montant_initial_base_quatrieme_enfant_et_plus_mayotte_3886_ : unit -> money = + allocations_familiales_in.montant_initial_base_quatrieme_enfant_et_plus_mayotte_in in - let montant_initial_base_deuxieme_enfant_mayotte_3340_ : unit -> money = - allocations_familiales_in_3317.montant_initial_base_deuxieme_enfant_mayotte_in + let droit_ouvert_forfaitaire_3887_ : unit -> enfant -> bool = + allocations_familiales_in.droit_ouvert_forfaitaire_in in - let montant_initial_base_troisieme_enfant_mayotte_3341_ : unit -> money = - allocations_familiales_in_3317.montant_initial_base_troisieme_enfant_mayotte_in + let montant_verse_forfaitaire_par_enfant_3888_ : unit -> money = + allocations_familiales_in.montant_verse_forfaitaire_par_enfant_in in - let montant_initial_base_quatrieme_enfant_et_plus_mayotte_3342_ : unit -> money = - allocations_familiales_in_3317.montant_initial_base_quatrieme_enfant_et_plus_mayotte_in + let montant_verse_forfaitaire_3889_ : unit -> money = + allocations_familiales_in.montant_verse_forfaitaire_in in - let droit_ouvert_forfaitaire_3343_ : unit -> enfant -> bool = - allocations_familiales_in_3317.droit_ouvert_forfaitaire_in + let droit_ouvert_majoration_3890_ : unit -> enfant -> bool = + allocations_familiales_in.droit_ouvert_majoration_in in - let montant_verse_forfaitaire_par_enfant_3344_ : unit -> money = - allocations_familiales_in_3317.montant_verse_forfaitaire_par_enfant_in + let montant_initial_metropole_majoration_3891_ : unit -> enfant -> money = + allocations_familiales_in.montant_initial_metropole_majoration_in in - let montant_verse_forfaitaire_3345_ : unit -> money = - allocations_familiales_in_3317.montant_verse_forfaitaire_in + let montant_initial_majoration_3892_ : unit -> enfant -> money = + allocations_familiales_in.montant_initial_majoration_in in - let droit_ouvert_majoration_3346_ : unit -> enfant -> bool = - allocations_familiales_in_3317.droit_ouvert_majoration_in + let montant_avec_garde_alternee_majoration_3893_ : unit -> enfant -> money = + allocations_familiales_in.montant_avec_garde_alternee_majoration_in in - let montant_initial_metropole_majoration_3347_ : unit -> enfant -> money = - allocations_familiales_in_3317.montant_initial_metropole_majoration_in + let montant_verse_majoration_3894_ : unit -> money = + allocations_familiales_in.montant_verse_majoration_in in - let montant_initial_majoration_3348_ : unit -> enfant -> money = - allocations_familiales_in_3317.montant_initial_majoration_in + let droit_ouvert_complement_3895_ : unit -> bool = + allocations_familiales_in.droit_ouvert_complement_in in - let montant_avec_garde_alternee_majoration_3349_ : unit -> enfant -> money = - allocations_familiales_in_3317.montant_avec_garde_alternee_majoration_in + let montant_base_complement_pour_base_et_majoration_3896_ : unit -> money = + allocations_familiales_in.montant_base_complement_pour_base_et_majoration_in in - let montant_verse_majoration_3350_ : unit -> money = - allocations_familiales_in_3317.montant_verse_majoration_in + let complement_degressif_3897_ : unit -> money -> money = + allocations_familiales_in.complement_degressif_in in - let droit_ouvert_complement_3351_ : unit -> bool = - allocations_familiales_in_3317.droit_ouvert_complement_in + let montant_verse_complement_pour_base_et_majoration_3898_ : unit -> money = + allocations_familiales_in.montant_verse_complement_pour_base_et_majoration_in in - let montant_base_complement_pour_base_et_majoration_3352_ : unit -> money = - allocations_familiales_in_3317.montant_base_complement_pour_base_et_majoration_in + let montant_verse_complement_pour_forfaitaire_3899_ : unit -> money = + allocations_familiales_in.montant_verse_complement_pour_forfaitaire_in in - let complement_degressif_3353_ : unit -> money -> money = - allocations_familiales_in_3317.complement_degressif_in + let nombre_enfants_l521_1_3900_ : unit -> integer = + allocations_familiales_in.nombre_enfants_l521_1_in in - let montant_verse_complement_pour_base_et_majoration_3354_ : unit -> money = - allocations_familiales_in_3317.montant_verse_complement_pour_base_et_majoration_in + let age_minimum_alinea_1_l521_3_3901_ : unit -> enfant -> integer = + allocations_familiales_in.age_minimum_alinea_1_l521_3_in in - let montant_verse_complement_pour_forfaitaire_3355_ : unit -> money = - allocations_familiales_in_3317.montant_verse_complement_pour_forfaitaire_in + let nombre_enfants_alinea_2_l521_3_3902_ : unit -> integer = + allocations_familiales_in.nombre_enfants_alinea_2_l521_3_in in - let nombre_enfants_l521_1_3356_ : unit -> integer = - allocations_familiales_in_3317.nombre_enfants_l521_1_in + let est_enfant_le_plus_age_3903_ : unit -> enfant -> bool = + allocations_familiales_in.est_enfant_le_plus_age_in in - let age_minimum_alinea_1_l521_3_3357_ : unit -> enfant -> integer = - allocations_familiales_in_3317.age_minimum_alinea_1_l521_3_in - in - let nombre_enfants_alinea_2_l521_3_3358_ : unit -> integer = - allocations_familiales_in_3317.nombre_enfants_alinea_2_l521_3_in - in - let est_enfant_le_plus_age_3359_ : unit -> enfant -> bool = - allocations_familiales_in_3317.est_enfant_le_plus_age_in - in - let plafond__i_d521_3_3360_ : unit -> money = - allocations_familiales_in_3317.plafond_I_d521_3_in - in - let plafond__i_i_d521_3_3361_ : unit -> money = - allocations_familiales_in_3317.plafond_II_d521_3_in - in - let personne_charge_effective_permanente_est_parent_3362_ : bool = + let plafond__i_d521_3_3904_ : unit -> money = allocations_familiales_in.plafond_I_d521_3_in in + let plafond__i_i_d521_3_3905_ : unit -> money = allocations_familiales_in.plafond_II_d521_3_in in + let personne_charge_effective_permanente_est_parent_3906_ : bool = log_variable_definition [ "AllocationsFamiliales"; "personne_charge_effective_permanente_est_parent" ] embed_bool (try - try personne_charge_effective_permanente_est_parent_3318_ () + try personne_charge_effective_permanente_est_parent_3862_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - true - then false - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + true) + (fun (_ : _) -> false) with EmptyError -> raise (NoValueProvided @@ -1607,26 +1684,26 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let personne_charge_effective_permanente_remplit_titre__i_3363_ : bool = + let personne_charge_effective_permanente_remplit_titre__i_3909_ : bool = log_variable_definition [ "AllocationsFamiliales"; "personne_charge_effective_permanente_remplit_titre_I" ] embed_bool (try - try personne_charge_effective_permanente_remplit_titre__i_3319_ () + try personne_charge_effective_permanente_remplit_titre__i_3863_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - true - then false - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + true) + (fun (_ : _) -> false) with EmptyError -> raise (NoValueProvided @@ -1639,26 +1716,26 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let ressources_menage_3364_ : money = + let ressources_menage_3912_ : money = log_variable_definition [ "AllocationsFamiliales"; "ressources_ménage" ] embed_money (try - try ressources_menage_3320_ () + try ressources_menage_3864_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - false - then raise EmptyError - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + false) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -1671,26 +1748,26 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let residence_3365_ : collectivite = + let residence_3915_ : collectivite = log_variable_definition [ "AllocationsFamiliales"; "résidence" ] embed_collectivite (try - try residence_3321_ () + try residence_3865_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - false - then raise EmptyError - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + false) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -1703,26 +1780,26 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let date_courante_3366_ : date = + let date_courante_3918_ : date = log_variable_definition [ "AllocationsFamiliales"; "date_courante" ] embed_date (try - try date_courante_3322_ () + try date_courante_3866_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - false - then raise EmptyError - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + false) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -1735,26 +1812,26 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let enfants_a_charge_3367_ : enfant array = + let enfants_a_charge_3921_ : enfant array = log_variable_definition [ "AllocationsFamiliales"; "enfants_à_charge" ] (embed_array embed_enfant) (try - try enfants_a_charge_3323_ () + try enfants_a_charge_3867_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - false - then raise EmptyError - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + false) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -1767,154 +1844,154 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let prise_en_compte_3368_ : enfant -> prise_en_compte = + let prise_en_compte_3924_ : enfant -> prise_en_compte = log_variable_definition [ "AllocationsFamiliales"; "prise_en_compte" ] unembeddable (try - try prise_en_compte_3325_ () + try prise_en_compte_3869_ () with EmptyError -> ( - fun (param_3369_ : enfant) -> + fun (param_3925_ : enfant) -> try - handle_default_1_ + handle_default [| - (fun (__3370_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 263; - start_column = 5; - end_line = 264; - end_column = 48; - law_headings = - [ - "Article L521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (match param_3369_.prise_en_charge with - | GardeAlterneePartageAllocations __3371_ -> false - | GardeAlterneeAllocataireUnique __3372_ -> false - | EffectiveEtPermanente __3373_ -> false - | ServicesSociauxAllocationVerseeALaFamille __3374_ -> true - | ServicesSociauxAllocationVerseeAuxServicesSociaux __3375_ -> false) - then Complete () - else raise EmptyError); - (fun (__3376_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 253; - start_column = 5; - end_line = 254; - end_column = 56; - law_headings = - [ - "Article L521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (match param_3369_.prise_en_charge with - | GardeAlterneePartageAllocations __3377_ -> false - | GardeAlterneeAllocataireUnique __3378_ -> false - | EffectiveEtPermanente __3379_ -> false - | ServicesSociauxAllocationVerseeALaFamille __3380_ -> false - | ServicesSociauxAllocationVerseeAuxServicesSociaux __3381_ -> true) - then Zero () - else raise EmptyError); - (fun (__3382_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 214; - start_column = 5; - end_line = 214; - end_column = 70; - law_headings = - [ - "Article L521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (match param_3369_.prise_en_charge with - | GardeAlterneePartageAllocations __3383_ -> true - | GardeAlterneeAllocataireUnique __3384_ -> false - | EffectiveEtPermanente __3385_ -> false - | ServicesSociauxAllocationVerseeALaFamille __3386_ -> false - | ServicesSociauxAllocationVerseeAuxServicesSociaux __3387_ -> false) - then Partagee () - else raise EmptyError); - (fun (__3388_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 204; - start_column = 5; - end_line = 204; - end_column = 69; - law_headings = - [ - "Article L521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (match param_3369_.prise_en_charge with - | GardeAlterneePartageAllocations __3389_ -> false - | GardeAlterneeAllocataireUnique __3390_ -> true - | EffectiveEtPermanente __3391_ -> false - | ServicesSociauxAllocationVerseeALaFamille __3392_ -> false - | ServicesSociauxAllocationVerseeAuxServicesSociaux __3393_ -> false) - then Complete () - else raise EmptyError); - (fun (__3394_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 184; - start_column = 5; - end_line = 184; - end_column = 60; - law_headings = - [ - "Article L521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (match param_3369_.prise_en_charge with - | GardeAlterneePartageAllocations __3395_ -> false - | GardeAlterneeAllocataireUnique __3396_ -> false - | EffectiveEtPermanente __3397_ -> true - | ServicesSociauxAllocationVerseeALaFamille __3398_ -> false - | ServicesSociauxAllocationVerseeAuxServicesSociaux __3399_ -> false) - then Complete () - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 263; + start_column = 5; + end_line = 264; + end_column = 48; + law_headings = + [ + "Article L521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (match param_3925_.prise_en_charge with + | GardeAlterneePartageAllocations _ -> false + | GardeAlterneeAllocataireUnique _ -> false + | EffectiveEtPermanente _ -> false + | ServicesSociauxAllocationVerseeALaFamille _ -> true + | ServicesSociauxAllocationVerseeAuxServicesSociaux _ -> false)) + (fun (_ : _) -> Complete ())); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 253; + start_column = 5; + end_line = 254; + end_column = 56; + law_headings = + [ + "Article L521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (match param_3925_.prise_en_charge with + | GardeAlterneePartageAllocations _ -> false + | GardeAlterneeAllocataireUnique _ -> false + | EffectiveEtPermanente _ -> false + | ServicesSociauxAllocationVerseeALaFamille _ -> false + | ServicesSociauxAllocationVerseeAuxServicesSociaux _ -> true)) + (fun (_ : _) -> Zero ())); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 214; + start_column = 5; + end_line = 214; + end_column = 70; + law_headings = + [ + "Article L521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (match param_3925_.prise_en_charge with + | GardeAlterneePartageAllocations _ -> true + | GardeAlterneeAllocataireUnique _ -> false + | EffectiveEtPermanente _ -> false + | ServicesSociauxAllocationVerseeALaFamille _ -> false + | ServicesSociauxAllocationVerseeAuxServicesSociaux _ -> false)) + (fun (_ : _) -> Partagee ())); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 204; + start_column = 5; + end_line = 204; + end_column = 69; + law_headings = + [ + "Article L521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (match param_3925_.prise_en_charge with + | GardeAlterneePartageAllocations _ -> false + | GardeAlterneeAllocataireUnique _ -> true + | EffectiveEtPermanente _ -> false + | ServicesSociauxAllocationVerseeALaFamille _ -> false + | ServicesSociauxAllocationVerseeAuxServicesSociaux _ -> false)) + (fun (_ : _) -> Complete ())); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 184; + start_column = 5; + end_line = 184; + end_column = 60; + law_headings = + [ + "Article L521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (match param_3925_.prise_en_charge with + | GardeAlterneePartageAllocations _ -> false + | GardeAlterneeAllocataireUnique _ -> false + | EffectiveEtPermanente _ -> true + | ServicesSociauxAllocationVerseeALaFamille _ -> false + | ServicesSociauxAllocationVerseeAuxServicesSociaux _ -> false)) + (fun (_ : _) -> Complete ())); |] - (fun (__3400_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = ""; @@ -1925,7 +2002,7 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = []; } false) - (fun (__3401_ : _) -> raise EmptyError) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -1949,154 +2026,154 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let versement_3402_ : enfant -> versement_allocations = + let versement_3968_ : enfant -> versement_allocations = log_variable_definition [ "AllocationsFamiliales"; "versement" ] unembeddable (try - try versement_3326_ () + try versement_3870_ () with EmptyError -> ( - fun (param_3403_ : enfant) -> + fun (param_3969_ : enfant) -> try - handle_default_1_ + handle_default [| - (fun (__3404_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 269; - start_column = 5; - end_line = 270; - end_column = 48; - law_headings = - [ - "Article L521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (match param_3403_.prise_en_charge with - | GardeAlterneePartageAllocations __3405_ -> false - | GardeAlterneeAllocataireUnique __3406_ -> false - | EffectiveEtPermanente __3407_ -> false - | ServicesSociauxAllocationVerseeALaFamille __3408_ -> true - | ServicesSociauxAllocationVerseeAuxServicesSociaux __3409_ -> false) - then Normal () - else raise EmptyError); - (fun (__3410_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 258; - start_column = 5; - end_line = 259; - end_column = 56; - law_headings = - [ - "Article L521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (match param_3403_.prise_en_charge with - | GardeAlterneePartageAllocations __3411_ -> false - | GardeAlterneeAllocataireUnique __3412_ -> false - | EffectiveEtPermanente __3413_ -> false - | ServicesSociauxAllocationVerseeALaFamille __3414_ -> false - | ServicesSociauxAllocationVerseeAuxServicesSociaux __3415_ -> true) - then AllocationVerseeAuxServicesSociaux () - else raise EmptyError); - (fun (__3416_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 218; - start_column = 5; - end_line = 218; - end_column = 70; - law_headings = - [ - "Article L521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (match param_3403_.prise_en_charge with - | GardeAlterneePartageAllocations __3417_ -> true - | GardeAlterneeAllocataireUnique __3418_ -> false - | EffectiveEtPermanente __3419_ -> false - | ServicesSociauxAllocationVerseeALaFamille __3420_ -> false - | ServicesSociauxAllocationVerseeAuxServicesSociaux __3421_ -> false) - then Normal () - else raise EmptyError); - (fun (__3422_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 208; - start_column = 5; - end_line = 208; - end_column = 69; - law_headings = - [ - "Article L521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (match param_3403_.prise_en_charge with - | GardeAlterneePartageAllocations __3423_ -> false - | GardeAlterneeAllocataireUnique __3424_ -> true - | EffectiveEtPermanente __3425_ -> false - | ServicesSociauxAllocationVerseeALaFamille __3426_ -> false - | ServicesSociauxAllocationVerseeAuxServicesSociaux __3427_ -> false) - then Normal () - else raise EmptyError); - (fun (__3428_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 188; - start_column = 5; - end_line = 188; - end_column = 60; - law_headings = - [ - "Article L521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (match param_3403_.prise_en_charge with - | GardeAlterneePartageAllocations __3429_ -> false - | GardeAlterneeAllocataireUnique __3430_ -> false - | EffectiveEtPermanente __3431_ -> true - | ServicesSociauxAllocationVerseeALaFamille __3432_ -> false - | ServicesSociauxAllocationVerseeAuxServicesSociaux __3433_ -> false) - then Normal () - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 269; + start_column = 5; + end_line = 270; + end_column = 48; + law_headings = + [ + "Article L521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (match param_3969_.prise_en_charge with + | GardeAlterneePartageAllocations _ -> false + | GardeAlterneeAllocataireUnique _ -> false + | EffectiveEtPermanente _ -> false + | ServicesSociauxAllocationVerseeALaFamille _ -> true + | ServicesSociauxAllocationVerseeAuxServicesSociaux _ -> false)) + (fun (_ : _) -> Normal ())); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 258; + start_column = 5; + end_line = 259; + end_column = 56; + law_headings = + [ + "Article L521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (match param_3969_.prise_en_charge with + | GardeAlterneePartageAllocations _ -> false + | GardeAlterneeAllocataireUnique _ -> false + | EffectiveEtPermanente _ -> false + | ServicesSociauxAllocationVerseeALaFamille _ -> false + | ServicesSociauxAllocationVerseeAuxServicesSociaux _ -> true)) + (fun (_ : _) -> AllocationVerseeAuxServicesSociaux ())); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 218; + start_column = 5; + end_line = 218; + end_column = 70; + law_headings = + [ + "Article L521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (match param_3969_.prise_en_charge with + | GardeAlterneePartageAllocations _ -> true + | GardeAlterneeAllocataireUnique _ -> false + | EffectiveEtPermanente _ -> false + | ServicesSociauxAllocationVerseeALaFamille _ -> false + | ServicesSociauxAllocationVerseeAuxServicesSociaux _ -> false)) + (fun (_ : _) -> Normal ())); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 208; + start_column = 5; + end_line = 208; + end_column = 69; + law_headings = + [ + "Article L521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (match param_3969_.prise_en_charge with + | GardeAlterneePartageAllocations _ -> false + | GardeAlterneeAllocataireUnique _ -> true + | EffectiveEtPermanente _ -> false + | ServicesSociauxAllocationVerseeALaFamille _ -> false + | ServicesSociauxAllocationVerseeAuxServicesSociaux _ -> false)) + (fun (_ : _) -> Normal ())); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 188; + start_column = 5; + end_line = 188; + end_column = 60; + law_headings = + [ + "Article L521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (match param_3969_.prise_en_charge with + | GardeAlterneePartageAllocations _ -> false + | GardeAlterneeAllocataireUnique _ -> false + | EffectiveEtPermanente _ -> true + | ServicesSociauxAllocationVerseeALaFamille _ -> false + | ServicesSociauxAllocationVerseeAuxServicesSociaux _ -> false)) + (fun (_ : _) -> Normal ())); |] - (fun (__3434_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = ""; @@ -2107,7 +2184,7 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = []; } false) - (fun (__3435_ : _) -> raise EmptyError) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -2131,26 +2208,26 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let avait_enfant_a_charge_avant_1er_janvier_2012_3436_ : bool = + let avait_enfant_a_charge_avant_1er_janvier_2012_4012_ : bool = log_variable_definition [ "AllocationsFamiliales"; "avait_enfant_à_charge_avant_1er_janvier_2012" ] embed_bool (try - try avait_enfant_a_charge_avant_1er_janvier_2012_3338_ () + try avait_enfant_a_charge_avant_1er_janvier_2012_3882_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - true - then false - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + true) + (fun (_ : _) -> false) with EmptyError -> raise (NoValueProvided @@ -2163,13 +2240,36 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let nombre_enfants_l521_1_3437_ : integer = + let nombre_enfants_l521_1_4015_ : integer = log_variable_definition [ "AllocationsFamiliales"; "nombre_enfants_l521_1" ] embed_integer (try - try nombre_enfants_l521_1_3356_ () - with EmptyError -> ( try integer_of_string "3" with EmptyError -> raise EmptyError) + try nombre_enfants_l521_1_3900_ () + with EmptyError -> ( + try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 288; + start_column = 14; + end_line = 288; + end_column = 35; + law_headings = + [ + "Article D521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + true) + (fun (_ : _) -> integer_of_string "3") + with EmptyError -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -2182,13 +2282,36 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let nombre_enfants_alinea_2_l521_3_3438_ : integer = + let nombre_enfants_alinea_2_l521_3_4018_ : integer = log_variable_definition [ "AllocationsFamiliales"; "nombre_enfants_alinéa_2_l521_3" ] embed_integer (try - try nombre_enfants_alinea_2_l521_3_3358_ () - with EmptyError -> ( try integer_of_string "3" with EmptyError -> raise EmptyError) + try nombre_enfants_alinea_2_l521_3_3902_ () + with EmptyError -> ( + try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_R.catala_fr"; + start_line = 64; + start_column = 14; + end_line = 64; + end_column = 44; + law_headings = + [ + "Article R521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets en Conseil d'Etat"; + "Code de la sécurité sociale"; + ]; + } + true) + (fun (_ : _) -> integer_of_string "3") + with EmptyError -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -2201,129 +2324,185 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let result_3439_ : allocation_familiales_avril2008_out = + let result_4021_ : allocation_familiales_avril2008_out = log_end_call [ "AllocationsFamiliales"; "version_avril_2008"; "AllocationFamilialesAvril2008" ] (log_begin_call [ "AllocationsFamiliales"; "version_avril_2008"; "AllocationFamilialesAvril2008" ] - allocation_familiales_avril2008_1379 - { age_minimum_alinea_1_l521_3_in = (fun (__3440_ : unit) -> raise EmptyError) }) + allocation_familiales_avril2008 + { age_minimum_alinea_1_l521_3_in = (fun (_ : unit) -> raise EmptyError) }) in - let version_avril_2008_dot_age_minimum_alinea_1_l521_3_3441_ : integer = - result_3439_.age_minimum_alinea_1_l521_3_out + let version_avril_2008_dot_age_minimum_alinea_1_l521_3_4023_ : integer = + result_4021_.age_minimum_alinea_1_l521_3_out in - let prestations_familiales_dot_date_courante_3442_ : unit -> date = - fun (__3443_ : unit) -> + let prestations_familiales_dot_date_courante_4024_ : unit -> date = + fun (_ : unit) -> log_variable_definition [ "AllocationsFamiliales"; "prestations_familiales.date_courante" ] embed_date - (try date_courante_3366_ with EmptyError -> raise EmptyError) + (try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./prologue.catala_fr"; + start_line = 161; + start_column = 14; + end_line = 161; + end_column = 50; + law_headings = [ "Prologue" ]; + } + true) + (fun (_ : _) -> date_courante_3918_) + with EmptyError -> raise EmptyError) in - let prestations_familiales_dot_prestation_courante_3444_ : unit -> element_prestations_familiales + let prestations_familiales_dot_prestation_courante_4028_ : unit -> element_prestations_familiales = - fun (__3445_ : unit) -> + fun (_ : unit) -> log_variable_definition [ "AllocationsFamiliales"; "prestations_familiales.prestation_courante" ] embed_element_prestations_familiales - (try AllocationsFamiliales () with EmptyError -> raise EmptyError) + (try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./prologue.catala_fr"; + start_line = 159; + start_column = 14; + end_line = 159; + end_column = 56; + law_headings = [ "Prologue" ]; + } + true) + (fun (_ : _) -> AllocationsFamiliales ()) + with EmptyError -> raise EmptyError) in - let prestations_familiales_dot_residence_3446_ : unit -> collectivite = - fun (__3447_ : unit) -> + let prestations_familiales_dot_residence_4032_ : unit -> collectivite = + fun (_ : unit) -> log_variable_definition [ "AllocationsFamiliales"; "prestations_familiales.résidence" ] embed_collectivite - (try residence_3365_ with EmptyError -> raise EmptyError) + (try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./prologue.catala_fr"; + start_line = 163; + start_column = 14; + end_line = 163; + end_column = 46; + law_headings = [ "Prologue" ]; + } + true) + (fun (_ : _) -> residence_3915_) + with EmptyError -> raise EmptyError) in - let result_3448_ : prestations_familiales_out = + let result_4036_ : prestations_familiales_out = log_end_call [ "AllocationsFamiliales"; "prestations_familiales"; "PrestationsFamiliales" ] (log_begin_call [ "AllocationsFamiliales"; "prestations_familiales"; "PrestationsFamiliales" ] - prestations_familiales_1405 + prestations_familiales { - droit_ouvert_in = (fun (__3449_ : unit) -> raise EmptyError); - conditions_hors_age_in = (fun (__3450_ : unit) -> raise EmptyError); - plafond_l512_3_2_in = (fun (__3451_ : unit) -> raise EmptyError); - age_l512_3_2_in = (fun (__3452_ : unit) -> raise EmptyError); - regime_outre_mer_l751_1_in = (fun (__3453_ : unit) -> raise EmptyError); - date_courante_in = prestations_familiales_dot_date_courante_3442_; - prestation_courante_in = prestations_familiales_dot_prestation_courante_3444_; - residence_in = prestations_familiales_dot_residence_3446_; - base_mensuelle_in = (fun (__3454_ : unit) -> raise EmptyError); + droit_ouvert_in = (fun (_ : unit) -> raise EmptyError); + conditions_hors_age_in = (fun (_ : unit) -> raise EmptyError); + plafond_l512_3_2_in = (fun (_ : unit) -> raise EmptyError); + age_l512_3_2_in = (fun (_ : unit) -> raise EmptyError); + regime_outre_mer_l751_1_in = (fun (_ : unit) -> raise EmptyError); + date_courante_in = prestations_familiales_dot_date_courante_4024_; + prestation_courante_in = prestations_familiales_dot_prestation_courante_4028_; + residence_in = prestations_familiales_dot_residence_4032_; + base_mensuelle_in = (fun (_ : unit) -> raise EmptyError); }) in - let prestations_familiales_dot_droit_ouvert_3455_ : enfant -> bool = - result_3448_.droit_ouvert_out + let prestations_familiales_dot_droit_ouvert_4043_ : enfant -> bool = + result_4036_.droit_ouvert_out in - let prestations_familiales_dot_conditions_hors_age_3456_ : enfant -> bool = - result_3448_.conditions_hors_age_out + let prestations_familiales_dot_conditions_hors_age_4044_ : enfant -> bool = + result_4036_.conditions_hors_age_out in - let prestations_familiales_dot_plafond_l512_3_2_3457_ : money = - result_3448_.plafond_l512_3_2_out + let prestations_familiales_dot_plafond_l512_3_2_4045_ : money = + result_4036_.plafond_l512_3_2_out in - let prestations_familiales_dot_age_l512_3_2_3458_ : integer = result_3448_.age_l512_3_2_out in - let prestations_familiales_dot_regime_outre_mer_l751_1_3459_ : bool = - result_3448_.regime_outre_mer_l751_1_out + let prestations_familiales_dot_age_l512_3_2_4046_ : integer = result_4036_.age_l512_3_2_out in + let prestations_familiales_dot_regime_outre_mer_l751_1_4047_ : bool = + result_4036_.regime_outre_mer_l751_1_out in - let prestations_familiales_dot_date_courante_3460_ : date = result_3448_.date_courante_out in - let prestations_familiales_dot_prestation_courante_3461_ : element_prestations_familiales = - result_3448_.prestation_courante_out + let prestations_familiales_dot_date_courante_4048_ : date = result_4036_.date_courante_out in + let prestations_familiales_dot_prestation_courante_4049_ : element_prestations_familiales = + result_4036_.prestation_courante_out in - let prestations_familiales_dot_residence_3462_ : collectivite = result_3448_.residence_out in - let prestations_familiales_dot_base_mensuelle_3463_ : money = result_3448_.base_mensuelle_out in - let enfant_le_plus_age_dot_enfants_3464_ : unit -> enfant array = - fun (__3465_ : unit) -> + let prestations_familiales_dot_residence_4050_ : collectivite = result_4036_.residence_out in + let prestations_familiales_dot_base_mensuelle_4051_ : money = result_4036_.base_mensuelle_out in + let enfant_le_plus_age_dot_enfants_4052_ : unit -> enfant array = + fun (_ : unit) -> log_variable_definition [ "AllocationsFamiliales"; "enfant_le_plus_âgé.enfants" ] (embed_array embed_enfant) - (try enfants_a_charge_3367_ with EmptyError -> raise EmptyError) + (try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 32; + start_column = 14; + end_line = 32; + end_column = 40; + law_headings = [ "Règles diverses"; "Épilogue"; "Décrets divers" ]; + } + true) + (fun (_ : _) -> enfants_a_charge_3921_) + with EmptyError -> raise EmptyError) in - let result_3466_ : enfant_le_plus_age_out = + let result_4056_ : enfant_le_plus_age_out = log_end_call [ "AllocationsFamiliales"; "enfant_le_plus_âgé"; "EnfantLePlusÂgé" ] (log_begin_call [ "AllocationsFamiliales"; "enfant_le_plus_âgé"; "EnfantLePlusÂgé" ] - enfant_le_plus_age_1386 + enfant_le_plus_age { - enfants_in = enfant_le_plus_age_dot_enfants_3464_; - le_plus_age_in = (fun (__3467_ : unit) -> raise EmptyError); + enfants_in = enfant_le_plus_age_dot_enfants_4052_; + le_plus_age_in = (fun (_ : unit) -> raise EmptyError); }) in - let enfant_le_plus_age_dot_enfants_3468_ : enfant array = result_3466_.enfants_out in - let enfant_le_plus_age_dot_le_plus_age_3469_ : enfant = result_3466_.le_plus_age_out in - let age_minimum_alinea_1_l521_3_3470_ : enfant -> integer = + let enfant_le_plus_age_dot_enfants_4058_ : enfant array = result_4056_.enfants_out in + let enfant_le_plus_age_dot_le_plus_age_4059_ : enfant = result_4056_.le_plus_age_out in + let age_minimum_alinea_1_l521_3_4060_ : enfant -> integer = log_variable_definition [ "AllocationsFamiliales"; "âge_minimum_alinéa_1_l521_3" ] unembeddable (try - try age_minimum_alinea_1_l521_3_3357_ () + try age_minimum_alinea_1_l521_3_3901_ () with EmptyError -> ( - fun (param_3471_ : enfant) -> + fun (param_4061_ : enfant) -> try try try - if - log_decision_taken - { - filename = "./securite_sociale_R.catala_fr"; - start_line = 83; - start_column = 19; - end_line = 83; - end_column = 69; - law_headings = - [ - "Article R521-1"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets en Conseil d'Etat"; - "Code de la sécurité sociale"; - ]; - } - (param_3471_.date_de_naissance +@ duration_of_numbers 11 0 0 - <=@ date_of_numbers 2008 4 30) - then version_avril_2008_dot_age_minimum_alinea_1_l521_3_3441_ - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_R.catala_fr"; + start_line = 83; + start_column = 19; + end_line = 83; + end_column = 69; + law_headings = + [ + "Article R521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets en Conseil d'Etat"; + "Code de la sécurité sociale"; + ]; + } + (param_4061_.date_de_naissance +@ duration_of_numbers 11 0 0 + <=@ date_of_numbers 2008 4 30)) + (fun (_ : _) -> version_avril_2008_dot_age_minimum_alinea_1_l521_3_4023_) with EmptyError -> integer_of_string "14" with EmptyError -> raise EmptyError with EmptyError -> @@ -2349,28 +2528,49 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let enfants_a_charge_droit_ouvert_prestation_familiale_3472_ : enfant array = + let enfants_a_charge_droit_ouvert_prestation_familiale_4064_ : enfant array = log_variable_definition [ "AllocationsFamiliales"; "enfants_à_charge_droit_ouvert_prestation_familiale" ] (embed_array embed_enfant) (try - try enfants_a_charge_droit_ouvert_prestation_familiale_3324_ () + try enfants_a_charge_droit_ouvert_prestation_familiale_3868_ () with EmptyError -> ( try - array_filter - (fun (enfant_3473_ : _) -> - log_end_call - [ "PrestationsFamiliales"; "droit_ouvert" ] - (log_variable_definition - [ "PrestationsFamiliales"; "droit_ouvert"; "output" ] - unembeddable - (log_begin_call - [ "PrestationsFamiliales"; "droit_ouvert" ] - prestations_familiales_dot_droit_ouvert_3455_ - (log_variable_definition - [ "PrestationsFamiliales"; "droit_ouvert"; "input" ] - unembeddable enfant_3473_)))) - enfants_a_charge_3367_ + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 75; + start_column = 14; + end_line = 75; + end_column = 64; + law_headings = + [ + "Article L512-3"; + "Chapitre 2 : Champ d'application"; + "Titre 1 : Champ d'application - Généralités"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + true) + (fun (_ : _) -> + array_filter + (fun (enfant_4067_ : _) -> + log_end_call + [ "PrestationsFamiliales"; "droit_ouvert" ] + (log_variable_definition + [ "PrestationsFamiliales"; "droit_ouvert"; "output" ] + unembeddable + (log_begin_call + [ "PrestationsFamiliales"; "droit_ouvert" ] + prestations_familiales_dot_droit_ouvert_4043_ + (log_variable_definition + [ "PrestationsFamiliales"; "droit_ouvert"; "input" ] + unembeddable enfant_4067_)))) + enfants_a_charge_3921_) with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -2384,16 +2584,29 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let est_enfant_le_plus_age_3474_ : enfant -> bool = + let est_enfant_le_plus_age_4068_ : enfant -> bool = log_variable_definition [ "AllocationsFamiliales"; "est_enfant_le_plus_âgé" ] unembeddable (try - try est_enfant_le_plus_age_3359_ () + try est_enfant_le_plus_age_3903_ () with EmptyError -> ( - fun (param_3475_ : enfant) -> + fun (param_4069_ : enfant) -> try - try enfant_le_plus_age_dot_le_plus_age_3469_ = param_3475_ + try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 33; + start_column = 14; + end_line = 33; + end_column = 36; + law_headings = [ "Règles diverses"; "Épilogue"; "Décrets divers" ]; + } + true) + (fun (_ : _) -> enfant_le_plus_age_dot_le_plus_age_4059_ = param_4069_) with EmptyError -> raise EmptyError with EmptyError -> raise @@ -2418,130 +2631,134 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let plafond__i_i_d521_3_3476_ : money = + let plafond__i_i_d521_3_4072_ : money = log_variable_definition [ "AllocationsFamiliales"; "plafond_II_d521_3" ] embed_money (try - try plafond__i_i_d521_3_3361_ () + try plafond__i_i_d521_3_3905_ () with EmptyError -> ( try - handle_default_1_ + handle_default [| - (fun (__3477_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 196; - start_column = 5; - end_line = 196; - end_column = 69; - law_headings = - [ - "Article 1"; - "Arrêté du 14 décembre 2020 relatif au montant des plafonds de \ - ressources de certaines prestations familiales et aux tranches du \ - barème applicable au recouvrement des indus et à la saisie des \ - prestations"; - "Montant des plafonds de ressources"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2021 1 1 - && date_courante_3366_ <=@ date_of_numbers 2021 12 31) - then - money_of_cents_string "8155800" - +$ money_of_cents_string "582700" - *$ decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_) - else raise EmptyError); - (fun (__3478_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 160; - start_column = 5; - end_line = 160; - end_column = 69; - law_headings = - [ - "Instruction interministerielle no DSS/SD2B/2019/261 du 18 décembre \ - 2019 relative à la revalorisation au 1er janvier 2020 des plafonds \ - de ressources d’attribution de certaines prestations familiales \ - servies en métropole, en Guadeloupe, en Guyane, en Martinique, à La \ - Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte"; - "Montant des plafonds de ressources"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2020 1 1 - && date_courante_3366_ <=@ date_of_numbers 2020 12 31) - then - money_of_cents_string "8083100" - +$ money_of_cents_string "577500" - *$ decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_) - else raise EmptyError); - (fun (__3479_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 127; - start_column = 5; - end_line = 127; - end_column = 69; - law_headings = - [ - "Instruction interministérielle n° DSS/SD2B/2018/279 du 17 décembre \ - 2018 relative à la revalorisation au 1er janvier 2019 des plafonds \ - de ressources d’attribution de certaines prestations familiales \ - servies en métropole, en Guadeloupe, en Guyane, en Martinique, à la \ - Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte"; - "Montant des plafonds de ressources"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2019 1 1 - && date_courante_3366_ <=@ date_of_numbers 2019 12 31) - then - money_of_cents_string "7955800" - +$ money_of_cents_string "568400" - *$ decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_) - else raise EmptyError); - (fun (__3480_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 94; - start_column = 5; - end_line = 94; - end_column = 69; - law_headings = - [ - "Circulaire interministérielle N° DSS/SD2B/2017/352 du 22 décembre \ - 2017 relative à la revalorisation au 1er janvier 2018 des plafonds \ - de ressources d’attribution de certaines prestations familiales \ - servies en métropole, en Guadeloupe, en Guyane, en Martinique, à la \ - Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte"; - "Montant des plafonds de ressources"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2018 1 1 - && date_courante_3366_ <=@ date_of_numbers 2018 12 31) - then - money_of_cents_string "7877000" - +$ money_of_cents_string "562800" - *$ decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_) - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 196; + start_column = 5; + end_line = 196; + end_column = 69; + law_headings = + [ + "Article 1"; + "Arrêté du 14 décembre 2020 relatif au montant des plafonds de \ + ressources de certaines prestations familiales et aux tranches du \ + barème applicable au recouvrement des indus et à la saisie des \ + prestations"; + "Montant des plafonds de ressources"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2021 1 1 + && date_courante_3918_ <=@ date_of_numbers 2021 12 31)) + (fun (_ : _) -> + money_of_cents_string "8155800" + +$ money_of_cents_string "582700" + *$ decimal_of_integer + (array_length + enfants_a_charge_droit_ouvert_prestation_familiale_4064_))); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 160; + start_column = 5; + end_line = 160; + end_column = 69; + law_headings = + [ + "Instruction interministerielle no DSS/SD2B/2019/261 du 18 décembre \ + 2019 relative à la revalorisation au 1er janvier 2020 des plafonds \ + de ressources d’attribution de certaines prestations familiales \ + servies en métropole, en Guadeloupe, en Guyane, en Martinique, à \ + La Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte"; + "Montant des plafonds de ressources"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2020 1 1 + && date_courante_3918_ <=@ date_of_numbers 2020 12 31)) + (fun (_ : _) -> + money_of_cents_string "8083100" + +$ money_of_cents_string "577500" + *$ decimal_of_integer + (array_length + enfants_a_charge_droit_ouvert_prestation_familiale_4064_))); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 127; + start_column = 5; + end_line = 127; + end_column = 69; + law_headings = + [ + "Instruction interministérielle n° DSS/SD2B/2018/279 du 17 décembre \ + 2018 relative à la revalorisation au 1er janvier 2019 des plafonds \ + de ressources d’attribution de certaines prestations familiales \ + servies en métropole, en Guadeloupe, en Guyane, en Martinique, à \ + la Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte"; + "Montant des plafonds de ressources"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2019 1 1 + && date_courante_3918_ <=@ date_of_numbers 2019 12 31)) + (fun (_ : _) -> + money_of_cents_string "7955800" + +$ money_of_cents_string "568400" + *$ decimal_of_integer + (array_length + enfants_a_charge_droit_ouvert_prestation_familiale_4064_))); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 94; + start_column = 5; + end_line = 94; + end_column = 69; + law_headings = + [ + "Circulaire interministérielle N° DSS/SD2B/2017/352 du 22 décembre \ + 2017 relative à la revalorisation au 1er janvier 2018 des plafonds \ + de ressources d’attribution de certaines prestations familiales \ + servies en métropole, en Guadeloupe, en Guyane, en Martinique, à \ + la Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte"; + "Montant des plafonds de ressources"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2018 1 1 + && date_courante_3918_ <=@ date_of_numbers 2018 12 31)) + (fun (_ : _) -> + money_of_cents_string "7877000" + +$ money_of_cents_string "562800" + *$ decimal_of_integer + (array_length + enfants_a_charge_droit_ouvert_prestation_familiale_4064_))); |] - (fun (__3481_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = "./securite_sociale_D.catala_fr"; @@ -2560,11 +2777,11 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa ]; } true) - (fun (__3482_ : _) -> + (fun (_ : _) -> money_of_cents_string "7830000" +$ money_of_cents_string "559500" *$ decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_)) + (array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_)) with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -2578,130 +2795,134 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let plafond__i_d521_3_3483_ : money = + let plafond__i_d521_3_4087_ : money = log_variable_definition [ "AllocationsFamiliales"; "plafond_I_d521_3" ] embed_money (try - try plafond__i_d521_3_3360_ () + try plafond__i_d521_3_3904_ () with EmptyError -> ( try - handle_default_1_ + handle_default [| - (fun (__3484_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 180; - start_column = 5; - end_line = 180; - end_column = 69; - law_headings = - [ - "Article 1"; - "Arrêté du 14 décembre 2020 relatif au montant des plafonds de \ - ressources de certaines prestations familiales et aux tranches du \ - barème applicable au recouvrement des indus et à la saisie des \ - prestations"; - "Montant des plafonds de ressources"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2021 1 1 - && date_courante_3366_ <=@ date_of_numbers 2021 12 31) - then - money_of_cents_string "5827900" - +$ money_of_cents_string "582700" - *$ decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_) - else raise EmptyError); - (fun (__3485_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 153; - start_column = 5; - end_line = 153; - end_column = 69; - law_headings = - [ - "Instruction interministerielle no DSS/SD2B/2019/261 du 18 décembre \ - 2019 relative à la revalorisation au 1er janvier 2020 des plafonds \ - de ressources d’attribution de certaines prestations familiales \ - servies en métropole, en Guadeloupe, en Guyane, en Martinique, à La \ - Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte"; - "Montant des plafonds de ressources"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2020 1 1 - && date_courante_3366_ <=@ date_of_numbers 2020 12 31) - then - money_of_cents_string "5775900" - +$ money_of_cents_string "577500" - *$ decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_) - else raise EmptyError); - (fun (__3486_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 120; - start_column = 5; - end_line = 120; - end_column = 69; - law_headings = - [ - "Instruction interministérielle n° DSS/SD2B/2018/279 du 17 décembre \ - 2018 relative à la revalorisation au 1er janvier 2019 des plafonds \ - de ressources d’attribution de certaines prestations familiales \ - servies en métropole, en Guadeloupe, en Guyane, en Martinique, à la \ - Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte"; - "Montant des plafonds de ressources"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2019 1 1 - && date_courante_3366_ <=@ date_of_numbers 2019 12 31) - then - money_of_cents_string "5684900" - +$ money_of_cents_string "568400" - *$ decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_) - else raise EmptyError); - (fun (__3487_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 87; - start_column = 5; - end_line = 87; - end_column = 69; - law_headings = - [ - "Circulaire interministérielle N° DSS/SD2B/2017/352 du 22 décembre \ - 2017 relative à la revalorisation au 1er janvier 2018 des plafonds \ - de ressources d’attribution de certaines prestations familiales \ - servies en métropole, en Guadeloupe, en Guyane, en Martinique, à la \ - Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte"; - "Montant des plafonds de ressources"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2018 1 1 - && date_courante_3366_ <=@ date_of_numbers 2018 12 31) - then - money_of_cents_string "5628600" - +$ money_of_cents_string "562800" - *$ decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_) - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 180; + start_column = 5; + end_line = 180; + end_column = 69; + law_headings = + [ + "Article 1"; + "Arrêté du 14 décembre 2020 relatif au montant des plafonds de \ + ressources de certaines prestations familiales et aux tranches du \ + barème applicable au recouvrement des indus et à la saisie des \ + prestations"; + "Montant des plafonds de ressources"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2021 1 1 + && date_courante_3918_ <=@ date_of_numbers 2021 12 31)) + (fun (_ : _) -> + money_of_cents_string "5827900" + +$ money_of_cents_string "582700" + *$ decimal_of_integer + (array_length + enfants_a_charge_droit_ouvert_prestation_familiale_4064_))); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 153; + start_column = 5; + end_line = 153; + end_column = 69; + law_headings = + [ + "Instruction interministerielle no DSS/SD2B/2019/261 du 18 décembre \ + 2019 relative à la revalorisation au 1er janvier 2020 des plafonds \ + de ressources d’attribution de certaines prestations familiales \ + servies en métropole, en Guadeloupe, en Guyane, en Martinique, à \ + La Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte"; + "Montant des plafonds de ressources"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2020 1 1 + && date_courante_3918_ <=@ date_of_numbers 2020 12 31)) + (fun (_ : _) -> + money_of_cents_string "5775900" + +$ money_of_cents_string "577500" + *$ decimal_of_integer + (array_length + enfants_a_charge_droit_ouvert_prestation_familiale_4064_))); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 120; + start_column = 5; + end_line = 120; + end_column = 69; + law_headings = + [ + "Instruction interministérielle n° DSS/SD2B/2018/279 du 17 décembre \ + 2018 relative à la revalorisation au 1er janvier 2019 des plafonds \ + de ressources d’attribution de certaines prestations familiales \ + servies en métropole, en Guadeloupe, en Guyane, en Martinique, à \ + la Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte"; + "Montant des plafonds de ressources"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2019 1 1 + && date_courante_3918_ <=@ date_of_numbers 2019 12 31)) + (fun (_ : _) -> + money_of_cents_string "5684900" + +$ money_of_cents_string "568400" + *$ decimal_of_integer + (array_length + enfants_a_charge_droit_ouvert_prestation_familiale_4064_))); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 87; + start_column = 5; + end_line = 87; + end_column = 69; + law_headings = + [ + "Circulaire interministérielle N° DSS/SD2B/2017/352 du 22 décembre \ + 2017 relative à la revalorisation au 1er janvier 2018 des plafonds \ + de ressources d’attribution de certaines prestations familiales \ + servies en métropole, en Guadeloupe, en Guyane, en Martinique, à \ + la Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte"; + "Montant des plafonds de ressources"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2018 1 1 + && date_courante_3918_ <=@ date_of_numbers 2018 12 31)) + (fun (_ : _) -> + money_of_cents_string "5628600" + +$ money_of_cents_string "562800" + *$ decimal_of_integer + (array_length + enfants_a_charge_droit_ouvert_prestation_familiale_4064_))); |] - (fun (__3488_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = "./securite_sociale_D.catala_fr"; @@ -2720,11 +2941,11 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa ]; } true) - (fun (__3489_ : _) -> + (fun (_ : _) -> money_of_cents_string "5595000" +$ money_of_cents_string "559500" *$ decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_)) + (array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_)) with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -2738,39 +2959,39 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let droit_ouvert_complement_3490_ : bool = + let droit_ouvert_complement_4102_ : bool = log_variable_definition [ "AllocationsFamiliales"; "droit_ouvert_complément" ] embed_bool (try - try droit_ouvert_complement_3351_ () + try droit_ouvert_complement_3895_ () with EmptyError -> ( try try - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 426; - start_column = 5; - end_line = 427; - end_column = 71; - law_headings = - [ - "Article L755-12"; - "Chapitre 5 : Prestations familiales et prestations assimilées"; - "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, à la \ - Martinique, à La Réunion, à Saint-Barthélemy et à Saint-Martin"; - "Livre 7 : Régimes divers - Dispositions diverses"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (prestations_familiales_dot_regime_outre_mer_l751_1_3459_ - && array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - = integer_of_string "1") - then false - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 426; + start_column = 5; + end_line = 427; + end_column = 71; + law_headings = + [ + "Article L755-12"; + "Chapitre 5 : Prestations familiales et prestations assimilées"; + "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, à \ + la Martinique, à La Réunion, à Saint-Barthélemy et à Saint-Martin"; + "Livre 7 : Régimes divers - Dispositions diverses"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (prestations_familiales_dot_regime_outre_mer_l751_1_4047_ + && array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + = integer_of_string "1")) + (fun (_ : _) -> false) with EmptyError -> true with EmptyError -> false) with EmptyError -> @@ -2785,41 +3006,42 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let droit_ouvert_forfaitaire_3491_ : enfant -> bool = + let droit_ouvert_forfaitaire_4105_ : enfant -> bool = log_variable_definition [ "AllocationsFamiliales"; "droit_ouvert_forfaitaire" ] unembeddable (try - try droit_ouvert_forfaitaire_3343_ () + try droit_ouvert_forfaitaire_3887_ () with EmptyError -> ( - fun (param_3492_ : enfant) -> + fun (param_4106_ : enfant) -> try try try - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 420; - start_column = 6; - end_line = 421; - end_column = 72; - law_headings = - [ - "Article L755-12"; - "Chapitre 5 : Prestations familiales et prestations assimilées"; - "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, à \ - la Martinique, à La Réunion, à Saint-Barthélemy et à Saint-Martin"; - "Livre 7 : Régimes divers - Dispositions diverses"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (prestations_familiales_dot_regime_outre_mer_l751_1_3459_ - && array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - = integer_of_string "1") - then false - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 420; + start_column = 6; + end_line = 421; + end_column = 72; + law_headings = + [ + "Article L755-12"; + "Chapitre 5 : Prestations familiales et prestations assimilées"; + "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, \ + à la Martinique, à La Réunion, à Saint-Barthélemy et à \ + Saint-Martin"; + "Livre 7 : Régimes divers - Dispositions diverses"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (prestations_familiales_dot_regime_outre_mer_l751_1_4047_ + && array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + = integer_of_string "1")) + (fun (_ : _) -> false) with EmptyError -> if log_decision_taken @@ -2839,9 +3061,9 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa "Code de la sécurité sociale"; ]; } - (array_length enfants_a_charge_3367_ >=! nombre_enfants_alinea_2_l521_3_3438_ - && param_3492_.age = prestations_familiales_dot_age_l512_3_2_3458_ - && param_3492_.a_deja_ouvert_droit_aux_allocations_familiales + (array_length enfants_a_charge_3921_ >=! nombre_enfants_alinea_2_l521_3_4018_ + && param_4106_.age = prestations_familiales_dot_age_l512_3_2_4046_ + && param_4106_.a_deja_ouvert_droit_aux_allocations_familiales && log_end_call [ "PrestationsFamiliales"; "conditions_hors_âge" ] (log_variable_definition @@ -2849,10 +3071,10 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa unembeddable (log_begin_call [ "PrestationsFamiliales"; "conditions_hors_âge" ] - prestations_familiales_dot_conditions_hors_age_3456_ + prestations_familiales_dot_conditions_hors_age_4044_ (log_variable_definition [ "PrestationsFamiliales"; "conditions_hors_âge"; "input" ] - unembeddable param_3492_)))) + unembeddable param_4106_)))) then true else raise EmptyError with EmptyError -> false @@ -2879,23 +3101,43 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_initial_base_quatrieme_enfant_et_plus_mayotte_3493_ : money = + let montant_initial_base_quatrieme_enfant_et_plus_mayotte_4109_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_initial_base_quatrième_enfant_et_plus_mayotte" ] embed_money (try - try montant_initial_base_quatrieme_enfant_et_plus_mayotte_3342_ () + try montant_initial_base_quatrieme_enfant_et_plus_mayotte_3886_ () with EmptyError -> ( try - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "3" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.0463" - *$ decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - -! integer_of_string "3") - else money_of_cents_string "0" + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 385; + start_column = 14; + end_line = 385; + end_column = 67; + law_headings = + [ + "Article 7"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à \ + Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + true) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "3" + then + prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.0463" + *$ decimal_of_integer + (array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + -! integer_of_string "3") + else money_of_cents_string "0") with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -2909,298 +3151,308 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_initial_base_troisieme_enfant_mayotte_3494_ : money = + let montant_initial_base_troisieme_enfant_mayotte_4112_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_initial_base_troisième_enfant_mayotte" ] embed_money (try - try montant_initial_base_troisieme_enfant_mayotte_3341_ () + try montant_initial_base_troisieme_enfant_mayotte_3885_ () with EmptyError -> ( try - handle_default_1_ + handle_default [| - (fun (__3495_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 647; - start_column = 5; - end_line = 647; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2020 1 1 - && date_courante_3366_ <=@ date_of_numbers 2020 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "2" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.143" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3496_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 640; - start_column = 5; - end_line = 640; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2019 1 1 - && date_courante_3366_ <=@ date_of_numbers 2019 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "2" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.1259" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3497_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 633; - start_column = 5; - end_line = 633; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2018 1 1 - && date_courante_3366_ <=@ date_of_numbers 2018 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "2" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.1089" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3498_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 626; - start_column = 5; - end_line = 626; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2017 1 1 - && date_courante_3366_ <=@ date_of_numbers 2017 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "2" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.0918" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3499_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 619; - start_column = 5; - end_line = 619; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2016 1 1 - && date_courante_3366_ <=@ date_of_numbers 2016 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "2" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.0842" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3500_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 612; - start_column = 5; - end_line = 612; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2015 1 1 - && date_courante_3366_ <=@ date_of_numbers 2015 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "2" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.0766" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3501_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 605; - start_column = 5; - end_line = 605; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2014 1 1 - && date_courante_3366_ <=@ date_of_numbers 2014 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "2" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.069" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3502_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 598; - start_column = 5; - end_line = 598; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2013 1 1 - && date_courante_3366_ <=@ date_of_numbers 2013 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "2" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.075" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3503_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 591; - start_column = 5; - end_line = 591; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2012 1 1 - && date_courante_3366_ <=@ date_of_numbers 2012 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "2" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.0539" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3504_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 584; - start_column = 5; - end_line = 584; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2011 1 1 - && date_courante_3366_ <=@ date_of_numbers 2011 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "2" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.0463" - else money_of_cents_string "0" - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 647; + start_column = 5; + end_line = 647; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2020 1 1 + && date_courante_3918_ <=@ date_of_numbers 2020 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "2" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.143" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 640; + start_column = 5; + end_line = 640; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2019 1 1 + && date_courante_3918_ <=@ date_of_numbers 2019 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "2" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.1259" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 633; + start_column = 5; + end_line = 633; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2018 1 1 + && date_courante_3918_ <=@ date_of_numbers 2018 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "2" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.1089" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 626; + start_column = 5; + end_line = 626; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2017 1 1 + && date_courante_3918_ <=@ date_of_numbers 2017 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "2" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.0918" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 619; + start_column = 5; + end_line = 619; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2016 1 1 + && date_courante_3918_ <=@ date_of_numbers 2016 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "2" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.0842" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 612; + start_column = 5; + end_line = 612; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2015 1 1 + && date_courante_3918_ <=@ date_of_numbers 2015 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "2" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.0766" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 605; + start_column = 5; + end_line = 605; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2014 1 1 + && date_courante_3918_ <=@ date_of_numbers 2014 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "2" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.069" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 598; + start_column = 5; + end_line = 598; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2013 1 1 + && date_courante_3918_ <=@ date_of_numbers 2013 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "2" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.075" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 591; + start_column = 5; + end_line = 591; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2012 1 1 + && date_courante_3918_ <=@ date_of_numbers 2012 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "2" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.0539" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 584; + start_column = 5; + end_line = 584; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2011 1 1 + && date_courante_3918_ <=@ date_of_numbers 2011 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "2" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.0463" + else money_of_cents_string "0")); |] - (fun (__3505_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = "./decrets_divers.catala_fr"; @@ -3218,11 +3470,11 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa ]; } true) - (fun (__3506_ : _) -> + (fun (_ : _) -> if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ >! integer_of_string "2" - then prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.16" + then prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.16" else money_of_cents_string "0") with EmptyError -> raise EmptyError) with EmptyError -> @@ -3237,298 +3489,308 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_initial_base_deuxieme_enfant_mayotte_3507_ : money = + let montant_initial_base_deuxieme_enfant_mayotte_4145_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_initial_base_deuxième_enfant_mayotte" ] embed_money (try - try montant_initial_base_deuxieme_enfant_mayotte_3340_ () + try montant_initial_base_deuxieme_enfant_mayotte_3884_ () with EmptyError -> ( try - handle_default_1_ + handle_default [| - (fun (__3508_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 576; - start_column = 5; - end_line = 576; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2020 1 1 - && date_courante_3366_ <=@ date_of_numbers 2020 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "1" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.3068" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3509_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 569; - start_column = 5; - end_line = 569; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2019 1 1 - && date_courante_3366_ <=@ date_of_numbers 2019 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "1" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.2936" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3510_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 562; - start_column = 5; - end_line = 562; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2018 1 1 - && date_courante_3366_ <=@ date_of_numbers 2018 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "1" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.284" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3511_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 555; - start_column = 5; - end_line = 555; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2017 1 1 - && date_courante_3366_ <=@ date_of_numbers 2017 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "1" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.2672" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3512_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 548; - start_column = 5; - end_line = 548; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2016 1 1 - && date_courante_3366_ <=@ date_of_numbers 2016 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "1" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.273" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3513_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 541; - start_column = 5; - end_line = 541; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2015 1 1 - && date_courante_3366_ <=@ date_of_numbers 2015 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "1" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.2555" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3514_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 534; - start_column = 5; - end_line = 534; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2014 1 1 - && date_courante_3366_ <=@ date_of_numbers 2014 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "1" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.2496" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3515_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 527; - start_column = 5; - end_line = 527; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2013 1 1 - && date_courante_3366_ <=@ date_of_numbers 2013 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "1" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.2437" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3516_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 520; - start_column = 5; - end_line = 520; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2012 1 1 - && date_courante_3366_ <=@ date_of_numbers 2012 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "1" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.2379" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3517_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 513; - start_column = 5; - end_line = 513; - end_column = 69; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2011 1 1 - && date_courante_3366_ <=@ date_of_numbers 2011 12 31) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "1" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.232" - else money_of_cents_string "0" - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 576; + start_column = 5; + end_line = 576; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2020 1 1 + && date_courante_3918_ <=@ date_of_numbers 2020 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "1" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.3068" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 569; + start_column = 5; + end_line = 569; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2019 1 1 + && date_courante_3918_ <=@ date_of_numbers 2019 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "1" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.2936" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 562; + start_column = 5; + end_line = 562; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2018 1 1 + && date_courante_3918_ <=@ date_of_numbers 2018 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "1" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.284" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 555; + start_column = 5; + end_line = 555; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2017 1 1 + && date_courante_3918_ <=@ date_of_numbers 2017 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "1" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.2672" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 548; + start_column = 5; + end_line = 548; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2016 1 1 + && date_courante_3918_ <=@ date_of_numbers 2016 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "1" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.273" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 541; + start_column = 5; + end_line = 541; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2015 1 1 + && date_courante_3918_ <=@ date_of_numbers 2015 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "1" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.2555" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 534; + start_column = 5; + end_line = 534; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2014 1 1 + && date_courante_3918_ <=@ date_of_numbers 2014 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "1" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.2496" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 527; + start_column = 5; + end_line = 527; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2013 1 1 + && date_courante_3918_ <=@ date_of_numbers 2013 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "1" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.2437" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 520; + start_column = 5; + end_line = 520; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2012 1 1 + && date_courante_3918_ <=@ date_of_numbers 2012 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "1" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.2379" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 513; + start_column = 5; + end_line = 513; + end_column = 69; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2011 1 1 + && date_courante_3918_ <=@ date_of_numbers 2011 12 31)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "1" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.232" + else money_of_cents_string "0")); |] - (fun (__3518_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = "./decrets_divers.catala_fr"; @@ -3546,11 +3808,11 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa ]; } true) - (fun (__3519_ : _) -> + (fun (_ : _) -> if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ >! integer_of_string "1" - then prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.32" + then prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.32" else money_of_cents_string "0") with EmptyError -> raise EmptyError) with EmptyError -> @@ -3565,334 +3827,344 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_initial_base_premier_enfant_mayotte_3520_ : money = + let montant_initial_base_premier_enfant_mayotte_4178_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_initial_base_premier_enfant_mayotte" ] embed_money (try - try montant_initial_base_premier_enfant_mayotte_3339_ () + try montant_initial_base_premier_enfant_mayotte_3883_ () with EmptyError -> ( try - handle_default_1_ + handle_default [| - (fun (__3521_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 505; - start_column = 5; - end_line = 505; - end_column = 49; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - avait_enfant_a_charge_avant_1er_janvier_2012_3436_ - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "0" - then money_of_cents_string "5728" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3522_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 497; - start_column = 5; - end_line = 498; - end_column = 53; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2020 1 1 - && date_courante_3366_ <=@ date_of_numbers 2020 12 31 - && not avait_enfant_a_charge_avant_1er_janvier_2012_3436_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "0" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.0717" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3523_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 489; - start_column = 5; - end_line = 490; - end_column = 53; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2019 1 1 - && date_courante_3366_ <=@ date_of_numbers 2019 12 31 - && not avait_enfant_a_charge_avant_1er_janvier_2012_3436_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "0" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.0847" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3524_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 481; - start_column = 5; - end_line = 482; - end_column = 53; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2018 1 1 - && date_courante_3366_ <=@ date_of_numbers 2018 12 31 - && not avait_enfant_a_charge_avant_1er_janvier_2012_3436_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "0" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.0976" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3525_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 473; - start_column = 5; - end_line = 474; - end_column = 53; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2017 1 1 - && date_courante_3366_ <=@ date_of_numbers 2017 12 31 - && not avait_enfant_a_charge_avant_1er_janvier_2012_3436_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "0" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.115" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3526_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 465; - start_column = 5; - end_line = 466; - end_column = 53; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2016 1 1 - && date_courante_3366_ <=@ date_of_numbers 2016 12 31 - && not avait_enfant_a_charge_avant_1er_janvier_2012_3436_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "0" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.1163" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3527_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 457; - start_column = 5; - end_line = 458; - end_column = 53; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2015 1 1 - && date_courante_3366_ <=@ date_of_numbers 2015 12 31 - && not avait_enfant_a_charge_avant_1er_janvier_2012_3436_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "0" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.122" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3528_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 449; - start_column = 5; - end_line = 450; - end_column = 53; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2014 1 1 - && date_courante_3366_ <=@ date_of_numbers 2014 12 31 - && not avait_enfant_a_charge_avant_1er_janvier_2012_3436_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "0" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.1278" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3529_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 441; - start_column = 5; - end_line = 442; - end_column = 53; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2013 1 1 - && date_courante_3366_ <=@ date_of_numbers 2013 12 31 - && not avait_enfant_a_charge_avant_1er_janvier_2012_3436_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "0" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.1335" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3530_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 433; - start_column = 5; - end_line = 434; - end_column = 53; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2012 1 1 - && date_courante_3366_ <=@ date_of_numbers 2012 12 31 - && not avait_enfant_a_charge_avant_1er_janvier_2012_3436_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "0" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.1393" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3531_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 425; - start_column = 5; - end_line = 426; - end_column = 53; - law_headings = - [ - "Annexe"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (date_courante_3366_ >=@ date_of_numbers 2011 1 1 - && date_courante_3366_ <=@ date_of_numbers 2011 12 31 - && not avait_enfant_a_charge_avant_1er_janvier_2012_3436_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "0" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.145" - else money_of_cents_string "0" - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 505; + start_column = 5; + end_line = 505; + end_column = 49; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + avait_enfant_a_charge_avant_1er_janvier_2012_4012_) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "0" + then money_of_cents_string "5728" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 497; + start_column = 5; + end_line = 498; + end_column = 53; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2020 1 1 + && date_courante_3918_ <=@ date_of_numbers 2020 12 31 + && not avait_enfant_a_charge_avant_1er_janvier_2012_4012_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "0" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.0717" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 489; + start_column = 5; + end_line = 490; + end_column = 53; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2019 1 1 + && date_courante_3918_ <=@ date_of_numbers 2019 12 31 + && not avait_enfant_a_charge_avant_1er_janvier_2012_4012_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "0" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.0847" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 481; + start_column = 5; + end_line = 482; + end_column = 53; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2018 1 1 + && date_courante_3918_ <=@ date_of_numbers 2018 12 31 + && not avait_enfant_a_charge_avant_1er_janvier_2012_4012_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "0" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.0976" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 473; + start_column = 5; + end_line = 474; + end_column = 53; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2017 1 1 + && date_courante_3918_ <=@ date_of_numbers 2017 12 31 + && not avait_enfant_a_charge_avant_1er_janvier_2012_4012_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "0" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.115" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 465; + start_column = 5; + end_line = 466; + end_column = 53; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2016 1 1 + && date_courante_3918_ <=@ date_of_numbers 2016 12 31 + && not avait_enfant_a_charge_avant_1er_janvier_2012_4012_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "0" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.1163" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 457; + start_column = 5; + end_line = 458; + end_column = 53; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2015 1 1 + && date_courante_3918_ <=@ date_of_numbers 2015 12 31 + && not avait_enfant_a_charge_avant_1er_janvier_2012_4012_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "0" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.122" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 449; + start_column = 5; + end_line = 450; + end_column = 53; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2014 1 1 + && date_courante_3918_ <=@ date_of_numbers 2014 12 31 + && not avait_enfant_a_charge_avant_1er_janvier_2012_4012_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "0" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.1278" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 441; + start_column = 5; + end_line = 442; + end_column = 53; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2013 1 1 + && date_courante_3918_ <=@ date_of_numbers 2013 12 31 + && not avait_enfant_a_charge_avant_1er_janvier_2012_4012_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "0" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.1335" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 433; + start_column = 5; + end_line = 434; + end_column = 53; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2012 1 1 + && date_courante_3918_ <=@ date_of_numbers 2012 12 31 + && not avait_enfant_a_charge_avant_1er_janvier_2012_4012_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "0" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.1393" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 425; + start_column = 5; + end_line = 426; + end_column = 53; + law_headings = + [ + "Annexe"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (date_courante_3918_ >=@ date_of_numbers 2011 1 1 + && date_courante_3918_ <=@ date_of_numbers 2011 12 31 + && not avait_enfant_a_charge_avant_1er_janvier_2012_4012_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "0" + then + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.145" + else money_of_cents_string "0")); |] - (fun (__3532_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = "./decrets_divers.catala_fr"; @@ -3910,11 +4182,11 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa ]; } true) - (fun (__3533_ : _) -> + (fun (_ : _) -> if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ >! integer_of_string "0" - then prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.0588" + then prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.0588" else money_of_cents_string "0") with EmptyError -> raise EmptyError) with EmptyError -> @@ -3929,16 +4201,37 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let nombre_total_enfants_3534_ : decimal = + let nombre_total_enfants_4214_ : decimal = log_variable_definition [ "AllocationsFamiliales"; "nombre_total_enfants" ] embed_decimal (try - try nombre_total_enfants_3335_ () + try nombre_total_enfants_3879_ () with EmptyError -> ( try - decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_) + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_R.catala_fr"; + start_line = 162; + start_column = 14; + end_line = 162; + end_column = 34; + law_headings = + [ + "Article R521-3"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets en Conseil d'Etat"; + "Code de la sécurité sociale"; + ]; + } + true) + (fun (_ : _) -> + decimal_of_integer + (array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_)) with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -3952,35 +4245,56 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let nombre_moyen_enfants_3535_ : decimal = + let nombre_moyen_enfants_4217_ : decimal = log_variable_definition [ "AllocationsFamiliales"; "nombre_moyen_enfants" ] embed_decimal (try - try nombre_moyen_enfants_3334_ () + try nombre_moyen_enfants_3878_ () with EmptyError -> ( try - Array.fold_left - (fun (acc_3536_ : decimal) (enfant_3537_ : _) -> - acc_3536_ - +& - match - log_end_call - [ "AllocationsFamiliales"; "prise_en_compte" ] - (log_variable_definition - [ "AllocationsFamiliales"; "prise_en_compte"; "output" ] - unembeddable - (log_begin_call - [ "AllocationsFamiliales"; "prise_en_compte" ] - prise_en_compte_3368_ - (log_variable_definition - [ "AllocationsFamiliales"; "prise_en_compte"; "input" ] - unembeddable enfant_3537_))) - with - | Complete __3538_ -> decimal_of_string "1." - | Partagee __3539_ -> decimal_of_string "0.5" - | Zero __3540_ -> decimal_of_string "0.") - (decimal_of_string "0.") enfants_a_charge_droit_ouvert_prestation_familiale_3472_ + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_R.catala_fr"; + start_line = 142; + start_column = 14; + end_line = 142; + end_column = 34; + law_headings = + [ + "Article R521-3"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets en Conseil d'Etat"; + "Code de la sécurité sociale"; + ]; + } + true) + (fun (_ : _) -> + Array.fold_left + (fun (acc_4220_ : decimal) (enfant_4221_ : _) -> + acc_4220_ + +& + match + log_end_call + [ "AllocationsFamiliales"; "prise_en_compte" ] + (log_variable_definition + [ "AllocationsFamiliales"; "prise_en_compte"; "output" ] + unembeddable + (log_begin_call + [ "AllocationsFamiliales"; "prise_en_compte" ] + prise_en_compte_3924_ + (log_variable_definition + [ "AllocationsFamiliales"; "prise_en_compte"; "input" ] + unembeddable enfant_4221_))) + with + | Complete _ -> decimal_of_string "1." + | Partagee _ -> decimal_of_string "0.5" + | Zero _ -> decimal_of_string "0.") + (decimal_of_string "0.") enfants_a_charge_droit_ouvert_prestation_familiale_4064_) with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -3994,38 +4308,39 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_initial_base_premier_enfant_3541_ : money = + let montant_initial_base_premier_enfant_4225_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_initial_base_premier_enfant" ] embed_money (try - try montant_initial_base_premier_enfant_3330_ () + try montant_initial_base_premier_enfant_3874_ () with EmptyError -> ( try try - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 359; - start_column = 5; - end_line = 360; - end_column = 71; - law_headings = - [ - "Article D755-5"; - "Chapitre 5 : Prestations familiales et prestations assimilées"; - "Titre 5 : Départements d'outre-mer"; - "Livre 7 : Régimes divers - Dispositions diverses"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (prestations_familiales_dot_regime_outre_mer_l751_1_3459_ - && array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - = integer_of_string "1") - then prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.0588" - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 359; + start_column = 5; + end_line = 360; + end_column = 71; + law_headings = + [ + "Article D755-5"; + "Chapitre 5 : Prestations familiales et prestations assimilées"; + "Titre 5 : Départements d'outre-mer"; + "Livre 7 : Régimes divers - Dispositions diverses"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (prestations_familiales_dot_regime_outre_mer_l751_1_4047_ + && array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + = integer_of_string "1")) + (fun (_ : _) -> + prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.0588") with EmptyError -> money_of_cents_string "0" with EmptyError -> raise EmptyError) with EmptyError -> @@ -4040,66 +4355,67 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let droit_ouvert_base_3542_ : bool = + let droit_ouvert_base_4228_ : bool = log_variable_definition [ "AllocationsFamiliales"; "droit_ouvert_base" ] embed_bool (try - try droit_ouvert_base_3328_ () + try droit_ouvert_base_3872_ () with EmptyError -> ( try - handle_default_1_ + handle_default [| - (fun (__3543_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 344; - start_column = 5; - end_line = 345; - end_column = 72; - law_headings = - [ - "Article 7"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (residence_3365_ = Mayotte () - && array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >=! integer_of_string "1") - then true - else raise EmptyError); - (fun (__3544_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 406; - start_column = 5; - end_line = 407; - end_column = 72; - law_headings = - [ - "Article L755-12"; - "Chapitre 5 : Prestations familiales et prestations assimilées"; - "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, à \ - la Martinique, à La Réunion, à Saint-Barthélemy et à Saint-Martin"; - "Livre 7 : Régimes divers - Dispositions diverses"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (prestations_familiales_dot_regime_outre_mer_l751_1_3459_ - && array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >=! integer_of_string "1") - then true - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 344; + start_column = 5; + end_line = 345; + end_column = 72; + law_headings = + [ + "Article 7"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (residence_3915_ = Mayotte () + && array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >=! integer_of_string "1")) + (fun (_ : _) -> true)); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 406; + start_column = 5; + end_line = 407; + end_column = 72; + law_headings = + [ + "Article L755-12"; + "Chapitre 5 : Prestations familiales et prestations assimilées"; + "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, \ + à la Martinique, à La Réunion, à Saint-Barthélemy et à \ + Saint-Martin"; + "Livre 7 : Régimes divers - Dispositions diverses"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (prestations_familiales_dot_regime_outre_mer_l751_1_4047_ + && array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >=! integer_of_string "1")) + (fun (_ : _) -> true)); |] - (fun (__3545_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = "./securite_sociale_L.catala_fr"; @@ -4117,9 +4433,9 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa "Code de la sécurité sociale"; ]; } - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ + (array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ >=! integer_of_string "2")) - (fun (__3546_ : _) -> true) + (fun (_ : _) -> true) with EmptyError -> false) with EmptyError -> raise @@ -4133,59 +4449,59 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let droit_ouvert_majoration_3547_ : enfant -> bool = + let droit_ouvert_majoration_4237_ : enfant -> bool = log_variable_definition [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] unembeddable (try - try droit_ouvert_majoration_3346_ () + try droit_ouvert_majoration_3890_ () with EmptyError -> ( - fun (param_3548_ : enfant) -> + fun (param_4238_ : enfant) -> try try try - if - log_decision_taken - { - filename = "./securite_sociale_L.catala_fr"; - start_line = 313; - start_column = 5; - end_line = 315; - end_column = 58; - law_headings = - [ - "Article L521-3"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie législative"; - "Code de la sécurité sociale"; - ]; - } - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >=! nombre_enfants_alinea_2_l521_3_3438_ - && param_3548_.age - >=! log_end_call - [ "AllocationsFamiliales"; "âge_minimum_alinéa_1_l521_3" ] - (log_variable_definition - [ - "AllocationsFamiliales"; - "âge_minimum_alinéa_1_l521_3"; - "output"; - ] - unembeddable - (log_begin_call - [ "AllocationsFamiliales"; "âge_minimum_alinéa_1_l521_3" ] - age_minimum_alinea_1_l521_3_3470_ - (log_variable_definition - [ - "AllocationsFamiliales"; - "âge_minimum_alinéa_1_l521_3"; - "input"; - ] - unembeddable param_3548_)))) - then true - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_L.catala_fr"; + start_line = 313; + start_column = 5; + end_line = 315; + end_column = 58; + law_headings = + [ + "Article L521-3"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie législative"; + "Code de la sécurité sociale"; + ]; + } + (array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >=! nombre_enfants_alinea_2_l521_3_4018_ + && param_4238_.age + >=! log_end_call + [ "AllocationsFamiliales"; "âge_minimum_alinéa_1_l521_3" ] + (log_variable_definition + [ + "AllocationsFamiliales"; + "âge_minimum_alinéa_1_l521_3"; + "output"; + ] + unembeddable + (log_begin_call + [ "AllocationsFamiliales"; "âge_minimum_alinéa_1_l521_3" ] + age_minimum_alinea_1_l521_3_4060_ + (log_variable_definition + [ + "AllocationsFamiliales"; + "âge_minimum_alinéa_1_l521_3"; + "input"; + ] + unembeddable param_4238_))))) + (fun (_ : _) -> true) with EmptyError -> if log_decision_taken @@ -4213,13 +4529,13 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa unembeddable (log_begin_call [ "AllocationsFamiliales"; "est_enfant_le_plus_âgé" ] - est_enfant_le_plus_age_3474_ + est_enfant_le_plus_age_4068_ (log_variable_definition [ "AllocationsFamiliales"; "est_enfant_le_plus_âgé"; "input"; ] - unembeddable param_3548_))))) - && param_3548_.age + unembeddable param_4238_))))) + && param_4238_.age >=! log_end_call [ "AllocationsFamiliales"; "âge_minimum_alinéa_1_l521_3" ] (log_variable_definition @@ -4231,14 +4547,14 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa unembeddable (log_begin_call [ "AllocationsFamiliales"; "âge_minimum_alinéa_1_l521_3" ] - age_minimum_alinea_1_l521_3_3470_ + age_minimum_alinea_1_l521_3_4060_ (log_variable_definition [ "AllocationsFamiliales"; "âge_minimum_alinéa_1_l521_3"; "input"; ] - unembeddable param_3548_)))) + unembeddable param_4238_)))) then true else raise EmptyError with EmptyError -> false @@ -4265,76 +4581,78 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let complement_degressif_3549_ : money -> money = + let complement_degressif_4241_ : money -> money = log_variable_definition [ "AllocationsFamiliales"; "complément_dégressif" ] unembeddable (try - try complement_degressif_3353_ () + try complement_degressif_3897_ () with EmptyError -> ( - fun (param_3550_ : money) -> + fun (param_4242_ : money) -> try try - handle_default_1_ + handle_default [| - (fun (__3551_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 170; - start_column = 5; - end_line = 171; - end_column = 68; - law_headings = - [ - "Article D521-1"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ >$ plafond__i_i_d521_3_3476_ - && ressources_menage_3364_ - <=$ plafond__i_i_d521_3_3476_ - +$ (param_3550_ *$ decimal_of_string "12.")) - then - (plafond__i_i_d521_3_3476_ - +$ ((param_3550_ *$ decimal_of_string "12.") -$ ressources_menage_3364_)) - *$ (decimal_of_string "1." /& decimal_of_string "12.") - else raise EmptyError); - (fun (__3552_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 162; - start_column = 5; - end_line = 163; - end_column = 68; - law_headings = - [ - "Article D521-1"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ >$ plafond__i_d521_3_3483_ - && ressources_menage_3364_ - <=$ plafond__i_d521_3_3483_ +$ (param_3550_ *$ decimal_of_string "12.") + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 170; + start_column = 5; + end_line = 171; + end_column = 68; + law_headings = + [ + "Article D521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ >$ plafond__i_i_d521_3_4072_ + && ressources_menage_3912_ + <=$ plafond__i_i_d521_3_4072_ + +$ (param_4242_ *$ decimal_of_string "12."))) + (fun (_ : _) -> + (plafond__i_i_d521_3_4072_ + +$ ((param_4242_ *$ decimal_of_string "12.") -$ ressources_menage_3912_) ) - then - (plafond__i_d521_3_3483_ - +$ ((param_3550_ *$ decimal_of_string "12.") -$ ressources_menage_3364_)) - *$ (decimal_of_string "1." /& decimal_of_string "12.") - else raise EmptyError); + *$ (decimal_of_string "1." /& decimal_of_string "12."))); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 162; + start_column = 5; + end_line = 163; + end_column = 68; + law_headings = + [ + "Article D521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ >$ plafond__i_d521_3_4087_ + && ressources_menage_3912_ + <=$ plafond__i_d521_3_4087_ + +$ (param_4242_ *$ decimal_of_string "12."))) + (fun (_ : _) -> + (plafond__i_d521_3_4087_ + +$ ((param_4242_ *$ decimal_of_string "12.") -$ ressources_menage_3912_) + ) + *$ (decimal_of_string "1." /& decimal_of_string "12."))); |] - (fun (__3553_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = "./securite_sociale_D.catala_fr"; @@ -4353,7 +4671,7 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa ]; } true) - (fun (__3554_ : _) -> money_of_cents_string "0") + (fun (_ : _) -> money_of_cents_string "0") with EmptyError -> raise EmptyError with EmptyError -> raise @@ -4378,84 +4696,87 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_verse_forfaitaire_par_enfant_3555_ : money = + let montant_verse_forfaitaire_par_enfant_4251_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_versé_forfaitaire_par_enfant" ] embed_money (try - try montant_verse_forfaitaire_par_enfant_3344_ () + try montant_verse_forfaitaire_par_enfant_3888_ () with EmptyError -> - handle_default_1_ + handle_default [| - (fun (__3556_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 243; - start_column = 5; - end_line = 243; - end_column = 43; - law_headings = - [ - "Article D521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ >$ plafond__i_i_d521_3_3476_) - then prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.0559" - else raise EmptyError); - (fun (__3557_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 229; - start_column = 5; - end_line = 230; - end_column = 46; - law_headings = - [ - "Article D521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ >$ plafond__i_d521_3_3483_ - && ressources_menage_3364_ <=$ plafond__i_i_d521_3_3476_) - then prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.1117" - else raise EmptyError); - (fun (__3558_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 215; - start_column = 5; - end_line = 215; - end_column = 43; - law_headings = - [ - "Article D521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ <=$ plafond__i_d521_3_3483_) - then prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.20234" - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 243; + start_column = 5; + end_line = 243; + end_column = 43; + law_headings = + [ + "Article D521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ >$ plafond__i_i_d521_3_4072_)) + (fun (_ : _) -> + prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.0559")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 229; + start_column = 5; + end_line = 230; + end_column = 46; + law_headings = + [ + "Article D521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ >$ plafond__i_d521_3_4087_ + && ressources_menage_3912_ <=$ plafond__i_i_d521_3_4072_)) + (fun (_ : _) -> + prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.1117")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 215; + start_column = 5; + end_line = 215; + end_column = 43; + law_headings = + [ + "Article D521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ <=$ plafond__i_d521_3_4087_)) + (fun (_ : _) -> + prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.20234")); |] - (fun (__3559_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = ""; @@ -4466,7 +4787,7 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = []; } false) - (fun (__3560_ : _) -> raise EmptyError) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -4479,111 +4800,111 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_initial_base_troisieme_enfant_et_plus_3561_ : money = + let montant_initial_base_troisieme_enfant_et_plus_4263_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_initial_base_troisième_enfant_et_plus" ] embed_money (try - try montant_initial_base_troisieme_enfant_et_plus_3332_ () + try montant_initial_base_troisieme_enfant_et_plus_3876_ () with EmptyError -> - handle_default_1_ + handle_default [| - (fun (__3562_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 113; - start_column = 3; - end_line = 113; - end_column = 41; - law_headings = - [ - "Article D521-1"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ >$ plafond__i_i_d521_3_3476_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "2" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.1025" - *$ decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - -! integer_of_string "2") - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3563_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 74; - start_column = 3; - end_line = 75; - end_column = 44; - law_headings = - [ - "Article D521-1"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ >$ plafond__i_d521_3_3483_ - && ressources_menage_3364_ <=$ plafond__i_i_d521_3_3476_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "2" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.205" - *$ decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - -! integer_of_string "2") - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3564_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 35; - start_column = 3; - end_line = 35; - end_column = 41; - law_headings = - [ - "Article D521-1"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ <=$ plafond__i_d521_3_3483_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "2" - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.41" - *$ decimal_of_integer - (array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - -! integer_of_string "2") - else money_of_cents_string "0" - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 113; + start_column = 3; + end_line = 113; + end_column = 41; + law_headings = + [ + "Article D521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ >$ plafond__i_i_d521_3_4072_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "2" + then + prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.1025" + *$ decimal_of_integer + (array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + -! integer_of_string "2") + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 74; + start_column = 3; + end_line = 75; + end_column = 44; + law_headings = + [ + "Article D521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ >$ plafond__i_d521_3_4087_ + && ressources_menage_3912_ <=$ plafond__i_i_d521_3_4072_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "2" + then + prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.205" + *$ decimal_of_integer + (array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + -! integer_of_string "2") + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 35; + start_column = 3; + end_line = 35; + end_column = 41; + law_headings = + [ + "Article D521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ <=$ plafond__i_d521_3_4087_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "2" + then + prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.41" + *$ decimal_of_integer + (array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + -! integer_of_string "2") + else money_of_cents_string "0")); |] - (fun (__3565_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = ""; @@ -4594,7 +4915,7 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = []; } false) - (fun (__3566_ : _) -> raise EmptyError) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -4607,99 +4928,102 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_initial_base_deuxieme_enfant_3567_ : money = + let montant_initial_base_deuxieme_enfant_4275_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_initial_base_deuxième_enfant" ] embed_money (try - try montant_initial_base_deuxieme_enfant_3331_ () + try montant_initial_base_deuxieme_enfant_3875_ () with EmptyError -> - handle_default_1_ + handle_default [| - (fun (__3568_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 113; - start_column = 3; - end_line = 113; - end_column = 41; - law_headings = - [ - "Article D521-1"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ >$ plafond__i_i_d521_3_3476_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "1" - then prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.08" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3569_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 74; - start_column = 3; - end_line = 75; - end_column = 44; - law_headings = - [ - "Article D521-1"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ >$ plafond__i_d521_3_3483_ - && ressources_menage_3364_ <=$ plafond__i_i_d521_3_3476_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "1" - then prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.16" - else money_of_cents_string "0" - else raise EmptyError); - (fun (__3570_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 35; - start_column = 3; - end_line = 35; - end_column = 41; - law_headings = - [ - "Article D521-1"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ <=$ plafond__i_d521_3_3483_) - then - if - array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - >! integer_of_string "1" - then prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.32" - else money_of_cents_string "0" - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 113; + start_column = 3; + end_line = 113; + end_column = 41; + law_headings = + [ + "Article D521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ >$ plafond__i_i_d521_3_4072_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "1" + then + prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.08" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 74; + start_column = 3; + end_line = 75; + end_column = 44; + law_headings = + [ + "Article D521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ >$ plafond__i_d521_3_4087_ + && ressources_menage_3912_ <=$ plafond__i_i_d521_3_4072_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "1" + then + prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.16" + else money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 35; + start_column = 3; + end_line = 35; + end_column = 41; + law_headings = + [ + "Article D521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ <=$ plafond__i_d521_3_4087_)) + (fun (_ : _) -> + if + array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + >! integer_of_string "1" + then + prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.32" + else money_of_cents_string "0")); |] - (fun (__3571_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = ""; @@ -4710,7 +5034,7 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = []; } false) - (fun (__3572_ : _) -> raise EmptyError) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -4723,16 +5047,37 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let rapport_enfants_total_moyen_3573_ : decimal = + let rapport_enfants_total_moyen_4287_ : decimal = log_variable_definition [ "AllocationsFamiliales"; "rapport_enfants_total_moyen" ] embed_decimal (try - try rapport_enfants_total_moyen_3333_ () + try rapport_enfants_total_moyen_3877_ () with EmptyError -> ( try - if nombre_total_enfants_3534_ = decimal_of_string "0." then decimal_of_string "0." - else nombre_moyen_enfants_3535_ /& nombre_total_enfants_3534_ + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_R.catala_fr"; + start_line = 128; + start_column = 14; + end_line = 128; + end_column = 41; + law_headings = + [ + "Article R521-3"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets en Conseil d'Etat"; + "Code de la sécurité sociale"; + ]; + } + true) + (fun (_ : _) -> + if nombre_total_enfants_4214_ = decimal_of_string "0." then decimal_of_string "0." + else nombre_moyen_enfants_4217_ /& nombre_total_enfants_4214_) with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -4746,157 +5091,163 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_initial_metropole_majoration_3574_ : enfant -> money = + let montant_initial_metropole_majoration_4290_ : enfant -> money = log_variable_definition [ "AllocationsFamiliales"; "montant_initial_métropole_majoration" ] unembeddable (try - try montant_initial_metropole_majoration_3347_ () + try montant_initial_metropole_majoration_3891_ () with EmptyError -> ( - fun (param_3575_ : enfant) -> + fun (param_4291_ : enfant) -> try - handle_default_1_ + handle_default [| - (fun (__3576_ : _) -> - if - log_decision_taken - { - filename = "./epilogue.catala_fr"; - start_line = 27; - start_column = 5; - end_line = 27; - end_column = 44; - law_headings = [ "Règles diverses"; "Épilogue"; "Décrets divers" ]; - } - (not - (log_end_call - [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] - (log_variable_definition - [ "AllocationsFamiliales"; "droit_ouvert_majoration"; "output" ] - unembeddable - (log_begin_call - [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] - droit_ouvert_majoration_3547_ - (log_variable_definition - [ - "AllocationsFamiliales"; - "droit_ouvert_majoration"; - "input"; - ] - unembeddable param_3575_))))) - then money_of_cents_string "0" - else raise EmptyError); - (fun (__3577_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 132; - start_column = 3; - end_line = 132; - end_column = 41; - law_headings = - [ - "Article D521-1"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ >$ plafond__i_i_d521_3_3476_ - && log_end_call - [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] - (log_variable_definition - [ "AllocationsFamiliales"; "droit_ouvert_majoration"; "output" ] - unembeddable - (log_begin_call - [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] - droit_ouvert_majoration_3547_ - (log_variable_definition - [ - "AllocationsFamiliales"; "droit_ouvert_majoration"; "input"; - ] - unembeddable param_3575_)))) - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.04" - else raise EmptyError); - (fun (__3578_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 95; - start_column = 3; - end_line = 96; - end_column = 44; - law_headings = - [ - "Article D521-1"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - ((ressources_menage_3364_ >$ plafond__i_d521_3_3483_ - && ressources_menage_3364_ <=$ plafond__i_i_d521_3_3476_) - && log_end_call - [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] - (log_variable_definition - [ "AllocationsFamiliales"; "droit_ouvert_majoration"; "output" ] - unembeddable - (log_begin_call - [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] - droit_ouvert_majoration_3547_ - (log_variable_definition - [ - "AllocationsFamiliales"; "droit_ouvert_majoration"; "input"; - ] - unembeddable param_3575_)))) - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.08" - else raise EmptyError); - (fun (__3579_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 55; - start_column = 3; - end_line = 55; - end_column = 41; - law_headings = - [ - "Article D521-1"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ <=$ plafond__i_d521_3_3483_ - && log_end_call - [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] - (log_variable_definition - [ "AllocationsFamiliales"; "droit_ouvert_majoration"; "output" ] - unembeddable - (log_begin_call - [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] - droit_ouvert_majoration_3547_ - (log_variable_definition - [ - "AllocationsFamiliales"; "droit_ouvert_majoration"; "input"; - ] - unembeddable param_3575_)))) - then - prestations_familiales_dot_base_mensuelle_3463_ *$ decimal_of_string "0.16" - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 27; + start_column = 5; + end_line = 27; + end_column = 44; + law_headings = [ "Règles diverses"; "Épilogue"; "Décrets divers" ]; + } + (not + (log_end_call + [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] + (log_variable_definition + [ "AllocationsFamiliales"; "droit_ouvert_majoration"; "output" ] + unembeddable + (log_begin_call + [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] + droit_ouvert_majoration_4237_ + (log_variable_definition + [ + "AllocationsFamiliales"; + "droit_ouvert_majoration"; + "input"; + ] + unembeddable param_4291_)))))) + (fun (_ : _) -> money_of_cents_string "0")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 132; + start_column = 3; + end_line = 132; + end_column = 41; + law_headings = + [ + "Article D521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ >$ plafond__i_i_d521_3_4072_ + && log_end_call + [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] + (log_variable_definition + [ "AllocationsFamiliales"; "droit_ouvert_majoration"; "output" ] + unembeddable + (log_begin_call + [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] + droit_ouvert_majoration_4237_ + (log_variable_definition + [ + "AllocationsFamiliales"; + "droit_ouvert_majoration"; + "input"; + ] + unembeddable param_4291_))))) + (fun (_ : _) -> + prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.04")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 95; + start_column = 3; + end_line = 96; + end_column = 44; + law_headings = + [ + "Article D521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + ((ressources_menage_3912_ >$ plafond__i_d521_3_4087_ + && ressources_menage_3912_ <=$ plafond__i_i_d521_3_4072_) + && log_end_call + [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] + (log_variable_definition + [ "AllocationsFamiliales"; "droit_ouvert_majoration"; "output" ] + unembeddable + (log_begin_call + [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] + droit_ouvert_majoration_4237_ + (log_variable_definition + [ + "AllocationsFamiliales"; + "droit_ouvert_majoration"; + "input"; + ] + unembeddable param_4291_))))) + (fun (_ : _) -> + prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.08")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 55; + start_column = 3; + end_line = 55; + end_column = 41; + law_headings = + [ + "Article D521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ <=$ plafond__i_d521_3_4087_ + && log_end_call + [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] + (log_variable_definition + [ "AllocationsFamiliales"; "droit_ouvert_majoration"; "output" ] + unembeddable + (log_begin_call + [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] + droit_ouvert_majoration_4237_ + (log_variable_definition + [ + "AllocationsFamiliales"; + "droit_ouvert_majoration"; + "input"; + ] + unembeddable param_4291_))))) + (fun (_ : _) -> + prestations_familiales_dot_base_mensuelle_4051_ *$ decimal_of_string "0.16")); |] - (fun (__3580_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = ""; @@ -4907,7 +5258,7 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = []; } false) - (fun (__3581_ : _) -> raise EmptyError) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -4931,33 +5282,58 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_verse_forfaitaire_3582_ : money = + let montant_verse_forfaitaire_4306_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_versé_forfaitaire" ] embed_money (try - try montant_verse_forfaitaire_3345_ () + try montant_verse_forfaitaire_3889_ () with EmptyError -> ( try - montant_verse_forfaitaire_par_enfant_3555_ - *$ decimal_of_integer - (Array.fold_left - (fun (acc_3583_ : integer) (enfant_3584_ : _) -> - if - log_end_call - [ "AllocationsFamiliales"; "droit_ouvert_forfaitaire" ] - (log_variable_definition - [ "AllocationsFamiliales"; "droit_ouvert_forfaitaire"; "output" ] - unembeddable - (log_begin_call - [ "AllocationsFamiliales"; "droit_ouvert_forfaitaire" ] - droit_ouvert_forfaitaire_3491_ - (log_variable_definition - [ "AllocationsFamiliales"; "droit_ouvert_forfaitaire"; "input" ] - unembeddable enfant_3584_))) - then acc_3583_ +! integer_of_string "1" - else acc_3583_) - (integer_of_string "0") enfants_a_charge_3367_) + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 194; + start_column = 14; + end_line = 194; + end_column = 39; + law_headings = + [ + "Article D521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + true) + (fun (_ : _) -> + montant_verse_forfaitaire_par_enfant_4251_ + *$ decimal_of_integer + (Array.fold_left + (fun (acc_4309_ : integer) (enfant_4310_ : _) -> + if + log_end_call + [ "AllocationsFamiliales"; "droit_ouvert_forfaitaire" ] + (log_variable_definition + [ "AllocationsFamiliales"; "droit_ouvert_forfaitaire"; "output" ] + unembeddable + (log_begin_call + [ "AllocationsFamiliales"; "droit_ouvert_forfaitaire" ] + droit_ouvert_forfaitaire_4105_ + (log_variable_definition + [ + "AllocationsFamiliales"; + "droit_ouvert_forfaitaire"; + "input"; + ] + unembeddable enfant_4310_))) + then acc_4309_ +! integer_of_string "1" + else acc_4309_) + (integer_of_string "0") enfants_a_charge_3921_)) with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -4971,67 +5347,67 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_initial_base_3585_ : money = + let montant_initial_base_4311_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_initial_base" ] embed_money (try - try montant_initial_base_3329_ () + try montant_initial_base_3873_ () with EmptyError -> ( try - handle_default_1_ + handle_default [| - (fun (__3586_ : _) -> - if - log_decision_taken - { - filename = "./decrets_divers.catala_fr"; - start_line = 335; - start_column = 5; - end_line = 335; - end_column = 24; - law_headings = - [ - "Article 7"; - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales \ - à Mayotte"; - "Dispositions spéciales relatives à Mayotte"; - "Décrets divers"; - ]; - } - (residence_3365_ = Mayotte ()) - then - montant_initial_base_premier_enfant_mayotte_3520_ - +$ (montant_initial_base_deuxieme_enfant_mayotte_3507_ - +$ (montant_initial_base_troisieme_enfant_mayotte_3494_ - +$ montant_initial_base_quatrieme_enfant_et_plus_mayotte_3493_)) - else raise EmptyError); - (fun (__3587_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 350; - start_column = 5; - end_line = 351; - end_column = 69; - law_headings = - [ - "Article D755-5"; - "Chapitre 5 : Prestations familiales et prestations assimilées"; - "Titre 5 : Départements d'outre-mer"; - "Livre 7 : Régimes divers - Dispositions diverses"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (prestations_familiales_dot_regime_outre_mer_l751_1_3459_ - && array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - = integer_of_string "1") - then montant_initial_base_premier_enfant_3541_ - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./decrets_divers.catala_fr"; + start_line = 335; + start_column = 5; + end_line = 335; + end_column = 24; + law_headings = + [ + "Article 7"; + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations \ + familiales à Mayotte"; + "Dispositions spéciales relatives à Mayotte"; + "Décrets divers"; + ]; + } + (residence_3915_ = Mayotte ())) + (fun (_ : _) -> + montant_initial_base_premier_enfant_mayotte_4178_ + +$ (montant_initial_base_deuxieme_enfant_mayotte_4145_ + +$ (montant_initial_base_troisieme_enfant_mayotte_4112_ + +$ montant_initial_base_quatrieme_enfant_et_plus_mayotte_4109_)))); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 350; + start_column = 5; + end_line = 351; + end_column = 69; + law_headings = + [ + "Article D755-5"; + "Chapitre 5 : Prestations familiales et prestations assimilées"; + "Titre 5 : Départements d'outre-mer"; + "Livre 7 : Régimes divers - Dispositions diverses"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (prestations_familiales_dot_regime_outre_mer_l751_1_4047_ + && array_length enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + = integer_of_string "1")) + (fun (_ : _) -> montant_initial_base_premier_enfant_4225_)); |] - (fun (__3588_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = "./securite_sociale_D.catala_fr"; @@ -5050,9 +5426,9 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa ]; } true) - (fun (__3589_ : _) -> - montant_initial_base_deuxieme_enfant_3567_ - +$ montant_initial_base_troisieme_enfant_et_plus_3561_) + (fun (_ : _) -> + montant_initial_base_deuxieme_enfant_4275_ + +$ montant_initial_base_troisieme_enfant_et_plus_4263_) with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -5066,101 +5442,107 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_initial_majoration_3590_ : enfant -> money = + let montant_initial_majoration_4320_ : enfant -> money = log_variable_definition [ "AllocationsFamiliales"; "montant_initial_majoration" ] unembeddable (try - try montant_initial_majoration_3348_ () + try montant_initial_majoration_3892_ () with EmptyError -> ( - fun (param_3591_ : enfant) -> + fun (param_4321_ : enfant) -> try try - handle_default_1_ + handle_default [| - (fun (__3592_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 382; - start_column = 5; - end_line = 385; - end_column = 23; - law_headings = - [ - "Article D755-5"; - "Chapitre 5 : Prestations familiales et prestations assimilées"; - "Titre 5 : Départements d'outre-mer"; - "Livre 7 : Régimes divers - Dispositions diverses"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (log_end_call - [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] - (log_variable_definition - [ "AllocationsFamiliales"; "droit_ouvert_majoration"; "output" ] - unembeddable - (log_begin_call - [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] - droit_ouvert_majoration_3547_ - (log_variable_definition - [ - "AllocationsFamiliales"; "droit_ouvert_majoration"; "input"; - ] - unembeddable param_3591_))) - && prestations_familiales_dot_regime_outre_mer_l751_1_3459_ - && array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - = integer_of_string "1" - && param_3591_.age >=! integer_of_string "16") - then - prestations_familiales_dot_base_mensuelle_3463_ - *$ decimal_of_string "0.0567" - else raise EmptyError); - (fun (__3593_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 373; - start_column = 5; - end_line = 376; - end_column = 42; - law_headings = - [ - "Article D755-5"; - "Chapitre 5 : Prestations familiales et prestations assimilées"; - "Titre 5 : Départements d'outre-mer"; - "Livre 7 : Régimes divers - Dispositions diverses"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (log_end_call - [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] - (log_variable_definition - [ "AllocationsFamiliales"; "droit_ouvert_majoration"; "output" ] - unembeddable - (log_begin_call - [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] - droit_ouvert_majoration_3547_ - (log_variable_definition - [ - "AllocationsFamiliales"; "droit_ouvert_majoration"; "input"; - ] - unembeddable param_3591_))) - && prestations_familiales_dot_regime_outre_mer_l751_1_3459_ - && array_length enfants_a_charge_droit_ouvert_prestation_familiale_3472_ - = integer_of_string "1" - && param_3591_.age >=! integer_of_string "11" - && param_3591_.age + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 382; + start_column = 5; + end_line = 385; + end_column = 23; + law_headings = + [ + "Article D755-5"; + "Chapitre 5 : Prestations familiales et prestations assimilées"; + "Titre 5 : Départements d'outre-mer"; + "Livre 7 : Régimes divers - Dispositions diverses"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (log_end_call + [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] + (log_variable_definition + [ "AllocationsFamiliales"; "droit_ouvert_majoration"; "output" ] + unembeddable + (log_begin_call + [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] + droit_ouvert_majoration_4237_ + (log_variable_definition + [ + "AllocationsFamiliales"; + "droit_ouvert_majoration"; + "input"; + ] + unembeddable param_4321_))) + && prestations_familiales_dot_regime_outre_mer_l751_1_4047_ + && array_length + enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + = integer_of_string "1" + && param_4321_.age >=! integer_of_string "16")) + (fun (_ : _) -> + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.0567")); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 373; + start_column = 5; + end_line = 376; + end_column = 42; + law_headings = + [ + "Article D755-5"; + "Chapitre 5 : Prestations familiales et prestations assimilées"; + "Titre 5 : Départements d'outre-mer"; + "Livre 7 : Régimes divers - Dispositions diverses"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (log_end_call + [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] + (log_variable_definition + [ "AllocationsFamiliales"; "droit_ouvert_majoration"; "output" ] + unembeddable + (log_begin_call + [ "AllocationsFamiliales"; "droit_ouvert_majoration" ] + droit_ouvert_majoration_4237_ + (log_variable_definition + [ + "AllocationsFamiliales"; + "droit_ouvert_majoration"; + "input"; + ] + unembeddable param_4321_))) + && prestations_familiales_dot_regime_outre_mer_l751_1_4047_ + && array_length + enfants_a_charge_droit_ouvert_prestation_familiale_4064_ + = integer_of_string "1" + && param_4321_.age >=! integer_of_string "11" + && param_4321_.age + prestations_familiales_dot_base_mensuelle_4051_ + *$ decimal_of_string "0.0369")); |] - (fun (__3594_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = "./securite_sociale_D.catala_fr"; @@ -5179,7 +5561,7 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa ]; } true) - (fun (__3595_ : _) -> + (fun (_ : _) -> log_end_call [ "AllocationsFamiliales"; "montant_initial_métropole_majoration" ] (log_variable_definition @@ -5191,14 +5573,14 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa unembeddable (log_begin_call [ "AllocationsFamiliales"; "montant_initial_métropole_majoration" ] - montant_initial_metropole_majoration_3574_ + montant_initial_metropole_majoration_4290_ (log_variable_definition [ "AllocationsFamiliales"; "montant_initial_métropole_majoration"; "input"; ] - unembeddable param_3591_)))) + unembeddable param_4321_)))) with EmptyError -> raise EmptyError with EmptyError -> raise @@ -5223,76 +5605,76 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_verse_complement_pour_forfaitaire_3596_ : money = + let montant_verse_complement_pour_forfaitaire_4330_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_versé_complément_pour_forfaitaire" ] embed_money (try - try montant_verse_complement_pour_forfaitaire_3355_ () + try montant_verse_complement_pour_forfaitaire_3899_ () with EmptyError -> ( try - handle_default_1_ + handle_default [| - (fun (__3597_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 272; - start_column = 5; - end_line = 274; - end_column = 41; - law_headings = - [ - "Article D521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ >$ plafond__i_i_d521_3_3476_ - && ressources_menage_3364_ - <=$ plafond__i_i_d521_3_3476_ - +$ (montant_verse_forfaitaire_3582_ *$ decimal_of_string "12.")) - then - (plafond__i_i_d521_3_3476_ - +$ ((montant_verse_forfaitaire_3582_ *$ decimal_of_string "12.") - -$ ressources_menage_3364_)) - *$ (decimal_of_string "1." /& decimal_of_string "12.") - else raise EmptyError); - (fun (__3598_ : _) -> - if - log_decision_taken - { - filename = "./securite_sociale_D.catala_fr"; - start_line = 262; - start_column = 5; - end_line = 264; - end_column = 42; - law_headings = - [ - "Article D521-2"; - "Chapitre 1er : Allocations familiales"; - "Titre 2 : Prestations générales d'entretien"; - "Livre 5 : Prestations familiales et prestations assimilées"; - "Partie réglementaire - Décrets simples"; - "Code de la sécurité sociale"; - ]; - } - (ressources_menage_3364_ >$ plafond__i_d521_3_3483_ - && ressources_menage_3364_ - <=$ plafond__i_d521_3_3483_ - +$ (montant_verse_forfaitaire_3582_ *$ decimal_of_string "12.")) - then - (plafond__i_d521_3_3483_ - +$ ((montant_verse_forfaitaire_3582_ *$ decimal_of_string "12.") - -$ ressources_menage_3364_)) - *$ (decimal_of_string "1." /& decimal_of_string "12.") - else raise EmptyError); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 272; + start_column = 5; + end_line = 274; + end_column = 41; + law_headings = + [ + "Article D521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ >$ plafond__i_i_d521_3_4072_ + && ressources_menage_3912_ + <=$ plafond__i_i_d521_3_4072_ + +$ (montant_verse_forfaitaire_4306_ *$ decimal_of_string "12."))) + (fun (_ : _) -> + (plafond__i_i_d521_3_4072_ + +$ ((montant_verse_forfaitaire_4306_ *$ decimal_of_string "12.") + -$ ressources_menage_3912_)) + *$ (decimal_of_string "1." /& decimal_of_string "12."))); + (fun (_ : _) -> + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 262; + start_column = 5; + end_line = 264; + end_column = 42; + law_headings = + [ + "Article D521-2"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + (ressources_menage_3912_ >$ plafond__i_d521_3_4087_ + && ressources_menage_3912_ + <=$ plafond__i_d521_3_4087_ + +$ (montant_verse_forfaitaire_4306_ *$ decimal_of_string "12."))) + (fun (_ : _) -> + (plafond__i_d521_3_4087_ + +$ ((montant_verse_forfaitaire_4306_ *$ decimal_of_string "12.") + -$ ressources_menage_3912_)) + *$ (decimal_of_string "1." /& decimal_of_string "12."))); |] - (fun (__3599_ : _) -> + (fun (_ : _) -> log_decision_taken { filename = "./securite_sociale_D.catala_fr"; @@ -5311,7 +5693,7 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa ]; } true) - (fun (__3600_ : _) -> money_of_cents_string "0") + (fun (_ : _) -> money_of_cents_string "0") with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -5325,14 +5707,35 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_avec_garde_alternee_base_3601_ : money = + let montant_avec_garde_alternee_base_4339_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_avec_garde_alternée_base" ] embed_money (try - try montant_avec_garde_alternee_base_3336_ () + try montant_avec_garde_alternee_base_3880_ () with EmptyError -> ( - try montant_initial_base_3585_ *$ rapport_enfants_total_moyen_3573_ + try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_R.catala_fr"; + start_line = 125; + start_column = 14; + end_line = 125; + end_column = 46; + law_headings = + [ + "Article R521-3"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets en Conseil d'Etat"; + "Code de la sécurité sociale"; + ]; + } + true) + (fun (_ : _) -> montant_initial_base_4311_ *$ rapport_enfants_total_moyen_4287_) with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -5346,44 +5749,65 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_avec_garde_alternee_majoration_3602_ : enfant -> money = + let montant_avec_garde_alternee_majoration_4342_ : enfant -> money = log_variable_definition [ "AllocationsFamiliales"; "montant_avec_garde_alternée_majoration" ] unembeddable (try - try montant_avec_garde_alternee_majoration_3349_ () + try montant_avec_garde_alternee_majoration_3893_ () with EmptyError -> ( - fun (param_3603_ : enfant) -> + fun (param_4343_ : enfant) -> try try - log_end_call - [ "AllocationsFamiliales"; "montant_initial_majoration" ] - (log_variable_definition - [ "AllocationsFamiliales"; "montant_initial_majoration"; "output" ] - unembeddable - (log_begin_call - [ "AllocationsFamiliales"; "montant_initial_majoration" ] - montant_initial_majoration_3590_ + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_R.catala_fr"; + start_line = 187; + start_column = 5; + end_line = 187; + end_column = 43; + law_headings = + [ + "Article R521-4"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets en Conseil d'Etat"; + "Code de la sécurité sociale"; + ]; + } + true) + (fun (_ : _) -> + log_end_call + [ "AllocationsFamiliales"; "montant_initial_majoration" ] + (log_variable_definition + [ "AllocationsFamiliales"; "montant_initial_majoration"; "output" ] + unembeddable + (log_begin_call + [ "AllocationsFamiliales"; "montant_initial_majoration" ] + montant_initial_majoration_4320_ + (log_variable_definition + [ "AllocationsFamiliales"; "montant_initial_majoration"; "input" ] + unembeddable param_4343_))) + *$ + match + log_end_call + [ "AllocationsFamiliales"; "prise_en_compte" ] (log_variable_definition - [ "AllocationsFamiliales"; "montant_initial_majoration"; "input" ] - unembeddable param_3603_))) - *$ - match - log_end_call - [ "AllocationsFamiliales"; "prise_en_compte" ] - (log_variable_definition - [ "AllocationsFamiliales"; "prise_en_compte"; "output" ] - unembeddable - (log_begin_call - [ "AllocationsFamiliales"; "prise_en_compte" ] - prise_en_compte_3368_ - (log_variable_definition - [ "AllocationsFamiliales"; "prise_en_compte"; "input" ] - unembeddable param_3603_))) - with - | Complete __3604_ -> decimal_of_string "1." - | Partagee __3605_ -> decimal_of_string "0.5" - | Zero __3606_ -> decimal_of_string "0." + [ "AllocationsFamiliales"; "prise_en_compte"; "output" ] + unembeddable + (log_begin_call + [ "AllocationsFamiliales"; "prise_en_compte" ] + prise_en_compte_3924_ + (log_variable_definition + [ "AllocationsFamiliales"; "prise_en_compte"; "input" ] + unembeddable param_4343_))) + with + | Complete _ -> decimal_of_string "1." + | Partagee _ -> decimal_of_string "0.5" + | Zero _ -> decimal_of_string "0.") with EmptyError -> raise EmptyError with EmptyError -> raise @@ -5408,16 +5832,29 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_verse_base_3607_ : money = + let montant_verse_base_4349_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_versé_base" ] embed_money (try - try montant_verse_base_3337_ () + try montant_verse_base_3881_ () with EmptyError -> ( try - if droit_ouvert_base_3542_ then montant_avec_garde_alternee_base_3601_ - else money_of_cents_string "0" + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 36; + start_column = 14; + end_line = 36; + end_column = 32; + law_headings = [ "Règles diverses"; "Épilogue"; "Décrets divers" ]; + } + true) + (fun (_ : _) -> + if droit_ouvert_base_4228_ then montant_avec_garde_alternee_base_4339_ + else money_of_cents_string "0") with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -5431,39 +5868,55 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_verse_majoration_3608_ : money = + let montant_verse_majoration_4352_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_versé_majoration" ] embed_money (try - try montant_verse_majoration_3350_ () + try montant_verse_majoration_3894_ () with EmptyError -> ( try - if droit_ouvert_base_3542_ then - Array.fold_left - (fun (acc_3609_ : money) (enfant_3610_ : _) -> - acc_3609_ - +$ log_end_call - [ "AllocationsFamiliales"; "montant_avec_garde_alternée_majoration" ] - (log_variable_definition - [ - "AllocationsFamiliales"; - "montant_avec_garde_alternée_majoration"; - "output"; - ] - unembeddable - (log_begin_call - [ "AllocationsFamiliales"; "montant_avec_garde_alternée_majoration" ] - montant_avec_garde_alternee_majoration_3602_ - (log_variable_definition - [ - "AllocationsFamiliales"; - "montant_avec_garde_alternée_majoration"; - "input"; - ] - unembeddable enfant_3610_)))) - (money_of_cents_string "0") enfants_a_charge_3367_ - else money_of_cents_string "0" + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 38; + start_column = 14; + end_line = 38; + end_column = 38; + law_headings = [ "Règles diverses"; "Épilogue"; "Décrets divers" ]; + } + true) + (fun (_ : _) -> + if droit_ouvert_base_4228_ then + Array.fold_left + (fun (acc_4355_ : money) (enfant_4356_ : _) -> + acc_4355_ + +$ log_end_call + [ "AllocationsFamiliales"; "montant_avec_garde_alternée_majoration" ] + (log_variable_definition + [ + "AllocationsFamiliales"; + "montant_avec_garde_alternée_majoration"; + "output"; + ] + unembeddable + (log_begin_call + [ + "AllocationsFamiliales"; + "montant_avec_garde_alternée_majoration"; + ] + montant_avec_garde_alternee_majoration_4342_ + (log_variable_definition + [ + "AllocationsFamiliales"; + "montant_avec_garde_alternée_majoration"; + "input"; + ] + unembeddable enfant_4356_)))) + (money_of_cents_string "0") enfants_a_charge_3921_ + else money_of_cents_string "0") with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -5477,14 +5930,35 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_base_complement_pour_base_et_majoration_3611_ : money = + let montant_base_complement_pour_base_et_majoration_4357_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_base_complément_pour_base_et_majoration" ] embed_money (try - try montant_base_complement_pour_base_et_majoration_3352_ () + try montant_base_complement_pour_base_et_majoration_3896_ () with EmptyError -> ( - try montant_verse_base_3607_ +$ montant_verse_majoration_3608_ + try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 184; + start_column = 14; + end_line = 184; + end_column = 61; + law_headings = + [ + "Article D521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + true) + (fun (_ : _) -> montant_verse_base_4349_ +$ montant_verse_majoration_4352_) with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -5498,27 +5972,48 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_verse_complement_pour_base_et_majoration_3612_ : money = + let montant_verse_complement_pour_base_et_majoration_4360_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_versé_complément_pour_base_et_majoration" ] embed_money (try - try montant_verse_complement_pour_base_et_majoration_3354_ () + try montant_verse_complement_pour_base_et_majoration_3898_ () with EmptyError -> ( try - if droit_ouvert_complement_3490_ then - log_end_call - [ "AllocationsFamiliales"; "complément_dégressif" ] - (log_variable_definition - [ "AllocationsFamiliales"; "complément_dégressif"; "output" ] - unembeddable - (log_begin_call - [ "AllocationsFamiliales"; "complément_dégressif" ] - complement_degressif_3549_ - (log_variable_definition - [ "AllocationsFamiliales"; "complément_dégressif"; "input" ] - unembeddable montant_base_complement_pour_base_et_majoration_3611_))) - else money_of_cents_string "0" + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./securite_sociale_D.catala_fr"; + start_line = 178; + start_column = 14; + end_line = 178; + end_column = 62; + law_headings = + [ + "Article D521-1"; + "Chapitre 1er : Allocations familiales"; + "Titre 2 : Prestations générales d'entretien"; + "Livre 5 : Prestations familiales et prestations assimilées"; + "Partie réglementaire - Décrets simples"; + "Code de la sécurité sociale"; + ]; + } + true) + (fun (_ : _) -> + if droit_ouvert_complement_4102_ then + log_end_call + [ "AllocationsFamiliales"; "complément_dégressif" ] + (log_variable_definition + [ "AllocationsFamiliales"; "complément_dégressif"; "output" ] + unembeddable + (log_begin_call + [ "AllocationsFamiliales"; "complément_dégressif" ] + complement_degressif_4241_ + (log_variable_definition + [ "AllocationsFamiliales"; "complément_dégressif"; "input" ] + unembeddable montant_base_complement_pour_base_et_majoration_4357_))) + else money_of_cents_string "0") with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -5532,21 +6027,34 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let montant_verse_3613_ : money = + let montant_verse_4363_ : money = log_variable_definition [ "AllocationsFamiliales"; "montant_versé" ] embed_money (try - try montant_verse_3327_ () + try montant_verse_3871_ () with EmptyError -> ( try - if droit_ouvert_base_3542_ then - montant_verse_base_3607_ - +$ (montant_verse_majoration_3608_ - +$ (montant_verse_forfaitaire_3582_ - +$ (montant_verse_complement_pour_base_et_majoration_3612_ - +$ montant_verse_complement_pour_forfaitaire_3596_))) - else money_of_cents_string "0" + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 44; + start_column = 14; + end_line = 44; + end_column = 27; + law_headings = [ "Règles diverses"; "Épilogue"; "Décrets divers" ]; + } + true) + (fun (_ : _) -> + if droit_ouvert_base_4228_ then + montant_verse_base_4349_ + +$ (montant_verse_majoration_4352_ + +$ (montant_verse_forfaitaire_4306_ + +$ (montant_verse_complement_pour_base_et_majoration_4360_ + +$ montant_verse_complement_pour_forfaitaire_4330_))) + else money_of_cents_string "0") with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -5560,121 +6068,115 @@ let allocations_familiales_1511 (allocations_familiales_in_3317 : allocations_fa law_headings = [ "Prologue" ]; })) in - let __3614_ : unit = + let (_ : unit) = if - personne_charge_effective_permanente_est_parent_3362_ - || (not personne_charge_effective_permanente_est_parent_3362_) - && personne_charge_effective_permanente_remplit_titre__i_3363_ + personne_charge_effective_permanente_est_parent_3906_ + || (not personne_charge_effective_permanente_est_parent_3906_) + && personne_charge_effective_permanente_remplit_titre__i_3909_ then () else raise AssertionFailed in { personne_charge_effective_permanente_est_parent_out = - personne_charge_effective_permanente_est_parent_3362_; + personne_charge_effective_permanente_est_parent_3906_; personne_charge_effective_permanente_remplit_titre_I_out = - personne_charge_effective_permanente_remplit_titre__i_3363_; - ressources_menage_out = ressources_menage_3364_; - residence_out = residence_3365_; - date_courante_out = date_courante_3366_; - enfants_a_charge_out = enfants_a_charge_3367_; + personne_charge_effective_permanente_remplit_titre__i_3909_; + ressources_menage_out = ressources_menage_3912_; + residence_out = residence_3915_; + date_courante_out = date_courante_3918_; + enfants_a_charge_out = enfants_a_charge_3921_; enfants_a_charge_droit_ouvert_prestation_familiale_out = - enfants_a_charge_droit_ouvert_prestation_familiale_3472_; - prise_en_compte_out = prise_en_compte_3368_; - versement_out = versement_3402_; - montant_verse_out = montant_verse_3613_; - droit_ouvert_base_out = droit_ouvert_base_3542_; - montant_initial_base_out = montant_initial_base_3585_; - montant_initial_base_premier_enfant_out = montant_initial_base_premier_enfant_3541_; - montant_initial_base_deuxieme_enfant_out = montant_initial_base_deuxieme_enfant_3567_; + enfants_a_charge_droit_ouvert_prestation_familiale_4064_; + prise_en_compte_out = prise_en_compte_3924_; + versement_out = versement_3968_; + montant_verse_out = montant_verse_4363_; + droit_ouvert_base_out = droit_ouvert_base_4228_; + montant_initial_base_out = montant_initial_base_4311_; + montant_initial_base_premier_enfant_out = montant_initial_base_premier_enfant_4225_; + montant_initial_base_deuxieme_enfant_out = montant_initial_base_deuxieme_enfant_4275_; montant_initial_base_troisieme_enfant_et_plus_out = - montant_initial_base_troisieme_enfant_et_plus_3561_; - rapport_enfants_total_moyen_out = rapport_enfants_total_moyen_3573_; - nombre_moyen_enfants_out = nombre_moyen_enfants_3535_; - nombre_total_enfants_out = nombre_total_enfants_3534_; - montant_avec_garde_alternee_base_out = montant_avec_garde_alternee_base_3601_; - montant_verse_base_out = montant_verse_base_3607_; + montant_initial_base_troisieme_enfant_et_plus_4263_; + rapport_enfants_total_moyen_out = rapport_enfants_total_moyen_4287_; + nombre_moyen_enfants_out = nombre_moyen_enfants_4217_; + nombre_total_enfants_out = nombre_total_enfants_4214_; + montant_avec_garde_alternee_base_out = montant_avec_garde_alternee_base_4339_; + montant_verse_base_out = montant_verse_base_4349_; avait_enfant_a_charge_avant_1er_janvier_2012_out = - avait_enfant_a_charge_avant_1er_janvier_2012_3436_; + avait_enfant_a_charge_avant_1er_janvier_2012_4012_; montant_initial_base_premier_enfant_mayotte_out = - montant_initial_base_premier_enfant_mayotte_3520_; + montant_initial_base_premier_enfant_mayotte_4178_; montant_initial_base_deuxieme_enfant_mayotte_out = - montant_initial_base_deuxieme_enfant_mayotte_3507_; + montant_initial_base_deuxieme_enfant_mayotte_4145_; montant_initial_base_troisieme_enfant_mayotte_out = - montant_initial_base_troisieme_enfant_mayotte_3494_; + montant_initial_base_troisieme_enfant_mayotte_4112_; montant_initial_base_quatrieme_enfant_et_plus_mayotte_out = - montant_initial_base_quatrieme_enfant_et_plus_mayotte_3493_; - droit_ouvert_forfaitaire_out = droit_ouvert_forfaitaire_3491_; - montant_verse_forfaitaire_par_enfant_out = montant_verse_forfaitaire_par_enfant_3555_; - montant_verse_forfaitaire_out = montant_verse_forfaitaire_3582_; - droit_ouvert_majoration_out = droit_ouvert_majoration_3547_; - montant_initial_metropole_majoration_out = montant_initial_metropole_majoration_3574_; - montant_initial_majoration_out = montant_initial_majoration_3590_; - montant_avec_garde_alternee_majoration_out = montant_avec_garde_alternee_majoration_3602_; - montant_verse_majoration_out = montant_verse_majoration_3608_; - droit_ouvert_complement_out = droit_ouvert_complement_3490_; + montant_initial_base_quatrieme_enfant_et_plus_mayotte_4109_; + droit_ouvert_forfaitaire_out = droit_ouvert_forfaitaire_4105_; + montant_verse_forfaitaire_par_enfant_out = montant_verse_forfaitaire_par_enfant_4251_; + montant_verse_forfaitaire_out = montant_verse_forfaitaire_4306_; + droit_ouvert_majoration_out = droit_ouvert_majoration_4237_; + montant_initial_metropole_majoration_out = montant_initial_metropole_majoration_4290_; + montant_initial_majoration_out = montant_initial_majoration_4320_; + montant_avec_garde_alternee_majoration_out = montant_avec_garde_alternee_majoration_4342_; + montant_verse_majoration_out = montant_verse_majoration_4352_; + droit_ouvert_complement_out = droit_ouvert_complement_4102_; montant_base_complement_pour_base_et_majoration_out = - montant_base_complement_pour_base_et_majoration_3611_; - complement_degressif_out = complement_degressif_3549_; + montant_base_complement_pour_base_et_majoration_4357_; + complement_degressif_out = complement_degressif_4241_; montant_verse_complement_pour_base_et_majoration_out = - montant_verse_complement_pour_base_et_majoration_3612_; - montant_verse_complement_pour_forfaitaire_out = montant_verse_complement_pour_forfaitaire_3596_; - nombre_enfants_l521_1_out = nombre_enfants_l521_1_3437_; - age_minimum_alinea_1_l521_3_out = age_minimum_alinea_1_l521_3_3470_; - nombre_enfants_alinea_2_l521_3_out = nombre_enfants_alinea_2_l521_3_3438_; - est_enfant_le_plus_age_out = est_enfant_le_plus_age_3474_; - plafond_I_d521_3_out = plafond__i_d521_3_3483_; - plafond_II_d521_3_out = plafond__i_i_d521_3_3476_; + montant_verse_complement_pour_base_et_majoration_4360_; + montant_verse_complement_pour_forfaitaire_out = montant_verse_complement_pour_forfaitaire_4330_; + nombre_enfants_l521_1_out = nombre_enfants_l521_1_4015_; + age_minimum_alinea_1_l521_3_out = age_minimum_alinea_1_l521_3_4060_; + nombre_enfants_alinea_2_l521_3_out = nombre_enfants_alinea_2_l521_3_4018_; + est_enfant_le_plus_age_out = est_enfant_le_plus_age_4068_; + plafond_I_d521_3_out = plafond__i_d521_3_4087_; + plafond_II_d521_3_out = plafond__i_i_d521_3_4072_; } -let interface_allocations_familiales_2004 - (interface_allocations_familiales_in_3615 : interface_allocations_familiales_in) = - let date_courante_3616_ : unit -> date = - interface_allocations_familiales_in_3615.date_courante_in +let interface_allocations_familiales + (interface_allocations_familiales_in : interface_allocations_familiales_in) = + let date_courante_4368_ : unit -> date = interface_allocations_familiales_in.date_courante_in in + let enfants_4369_ : unit -> enfant_entree array = + interface_allocations_familiales_in.enfants_in in - let enfants_3617_ : unit -> enfant_entree array = - interface_allocations_familiales_in_3615.enfants_in + let enfants_a_charge_4370_ : unit -> enfant array = + interface_allocations_familiales_in.enfants_a_charge_in in - let enfants_a_charge_3618_ : unit -> enfant array = - interface_allocations_familiales_in_3615.enfants_a_charge_in + let ressources_menage_4371_ : unit -> money = + interface_allocations_familiales_in.ressources_menage_in in - let ressources_menage_3619_ : unit -> money = - interface_allocations_familiales_in_3615.ressources_menage_in + let residence_4372_ : unit -> collectivite = interface_allocations_familiales_in.residence_in in + let montant_verse_4373_ : unit -> money = interface_allocations_familiales_in.montant_verse_in in + let personne_charge_effective_permanente_est_parent_4374_ : unit -> bool = + interface_allocations_familiales_in.personne_charge_effective_permanente_est_parent_in in - let residence_3620_ : unit -> collectivite = - interface_allocations_familiales_in_3615.residence_in + let personne_charge_effective_permanente_remplit_titre__i_4375_ : unit -> bool = + interface_allocations_familiales_in.personne_charge_effective_permanente_remplit_titre_I_in in - let montant_verse_3621_ : unit -> money = - interface_allocations_familiales_in_3615.montant_verse_in + let avait_enfant_a_charge_avant_1er_janvier_2012_4376_ : unit -> bool = + interface_allocations_familiales_in.avait_enfant_a_charge_avant_1er_janvier_2012_in in - let personne_charge_effective_permanente_est_parent_3622_ : unit -> bool = - interface_allocations_familiales_in_3615.personne_charge_effective_permanente_est_parent_in - in - let personne_charge_effective_permanente_remplit_titre__i_3623_ : unit -> bool = - interface_allocations_familiales_in_3615.personne_charge_effective_permanente_remplit_titre_I_in - in - let avait_enfant_a_charge_avant_1er_janvier_2012_3624_ : unit -> bool = - interface_allocations_familiales_in_3615.avait_enfant_a_charge_avant_1er_janvier_2012_in - in - let date_courante_3625_ : date = + let date_courante_4377_ : date = log_variable_definition [ "InterfaceAllocationsFamiliales"; "date_courante" ] embed_date (try - try date_courante_3616_ () + try date_courante_4368_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - false - then raise EmptyError - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + false) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -5687,26 +6189,26 @@ let interface_allocations_familiales_2004 law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; })) in - let enfants_3626_ : enfant_entree array = + let enfants_4380_ : enfant_entree array = log_variable_definition [ "InterfaceAllocationsFamiliales"; "enfants" ] (embed_array embed_enfant_entree) (try - try enfants_3617_ () + try enfants_4369_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - false - then raise EmptyError - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + false) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -5719,26 +6221,26 @@ let interface_allocations_familiales_2004 law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; })) in - let ressources_menage_3627_ : money = + let ressources_menage_4383_ : money = log_variable_definition [ "InterfaceAllocationsFamiliales"; "ressources_ménage" ] embed_money (try - try ressources_menage_3619_ () + try ressources_menage_4371_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - false - then raise EmptyError - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + false) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -5751,26 +6253,26 @@ let interface_allocations_familiales_2004 law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; })) in - let residence_3628_ : collectivite = + let residence_4386_ : collectivite = log_variable_definition [ "InterfaceAllocationsFamiliales"; "résidence" ] embed_collectivite (try - try residence_3620_ () + try residence_4372_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - false - then raise EmptyError - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + false) + (fun (_ : _) -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -5783,26 +6285,26 @@ let interface_allocations_familiales_2004 law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; })) in - let personne_charge_effective_permanente_est_parent_3629_ : bool = + let personne_charge_effective_permanente_est_parent_4389_ : bool = log_variable_definition [ "InterfaceAllocationsFamiliales"; "personne_charge_effective_permanente_est_parent" ] embed_bool (try - try personne_charge_effective_permanente_est_parent_3622_ () + try personne_charge_effective_permanente_est_parent_4374_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - true - then false - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + true) + (fun (_ : _) -> false) with EmptyError -> raise (NoValueProvided @@ -5815,26 +6317,26 @@ let interface_allocations_familiales_2004 law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; })) in - let personne_charge_effective_permanente_remplit_titre__i_3630_ : bool = + let personne_charge_effective_permanente_remplit_titre__i_4392_ : bool = log_variable_definition [ "InterfaceAllocationsFamiliales"; "personne_charge_effective_permanente_remplit_titre_I" ] embed_bool (try - try personne_charge_effective_permanente_remplit_titre__i_3623_ () + try personne_charge_effective_permanente_remplit_titre__i_4375_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - true - then false - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + true) + (fun (_ : _) -> false) with EmptyError -> raise (NoValueProvided @@ -5847,26 +6349,26 @@ let interface_allocations_familiales_2004 law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; })) in - let avait_enfant_a_charge_avant_1er_janvier_2012_3631_ : bool = + let avait_enfant_a_charge_avant_1er_janvier_2012_4395_ : bool = log_variable_definition [ "InterfaceAllocationsFamiliales"; "avait_enfant_à_charge_avant_1er_janvier_2012" ] embed_bool (try - try avait_enfant_a_charge_avant_1er_janvier_2012_3624_ () + try avait_enfant_a_charge_avant_1er_janvier_2012_4376_ () with EmptyError -> - if - log_decision_taken - { - filename = ""; - start_line = 0; - start_column = 1; - end_line = 0; - end_column = 1; - law_headings = []; - } - true - then false - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = ""; + start_line = 0; + start_column = 1; + end_line = 0; + end_column = 1; + law_headings = []; + } + true) + (fun (_ : _) -> false) with EmptyError -> raise (NoValueProvided @@ -5879,39 +6381,53 @@ let interface_allocations_familiales_2004 law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; })) in - let enfants_a_charge_3632_ : enfant array = + let enfants_a_charge_4398_ : enfant array = log_variable_definition [ "InterfaceAllocationsFamiliales"; "enfants_à_charge" ] (embed_array embed_enfant) (try - try enfants_a_charge_3618_ () + try enfants_a_charge_4370_ () with EmptyError -> ( try - Array.map - (fun (enfant_3633_ : _) -> - { - identifiant = enfant_3633_.d_identifiant; - obligation_scolaire = - (if - enfant_3633_.d_date_de_naissance +@ duration_of_numbers 3 0 0 - >=@ date_courante_3625_ - then Avant () - else if - enfant_3633_.d_date_de_naissance +@ duration_of_numbers 16 0 0 - >=@ date_courante_3625_ - then Pendant () - else Apres ()); - remuneration_mensuelle = enfant_3633_.d_remuneration_mensuelle; - date_de_naissance = enfant_3633_.d_date_de_naissance; - age = - year_of_date - (date_of_numbers 0 1 1 - +@ (date_courante_3625_ -@ enfant_3633_.d_date_de_naissance)); - prise_en_charge = enfant_3633_.d_prise_en_charge; - a_deja_ouvert_droit_aux_allocations_familiales = - enfant_3633_.d_a_deja_ouvert_droit_aux_allocations_familiales; - }) - enfants_3626_ + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 112; + start_column = 14; + end_line = 112; + end_column = 30; + law_headings = + [ "Article L131-1"; "Interface du programme"; "Épilogue"; "Décrets divers" ]; + } + true) + (fun (_ : _) -> + Array.map + (fun (enfant_4401_ : _) -> + { + identifiant = enfant_4401_.d_identifiant; + obligation_scolaire = + (if + enfant_4401_.d_date_de_naissance +@ duration_of_numbers 3 0 0 + >=@ date_courante_4377_ + then Avant () + else if + enfant_4401_.d_date_de_naissance +@ duration_of_numbers 16 0 0 + >=@ date_courante_4377_ + then Pendant () + else Apres ()); + remuneration_mensuelle = enfant_4401_.d_remuneration_mensuelle; + date_de_naissance = enfant_4401_.d_date_de_naissance; + age = + year_of_date + (date_of_numbers 0 1 1 + +@ (date_courante_4377_ -@ enfant_4401_.d_date_de_naissance)); + prise_en_charge = enfant_4401_.d_prise_en_charge; + a_deja_ouvert_droit_aux_allocations_familiales = + enfant_4401_.d_a_deja_ouvert_droit_aux_allocations_familiales; + }) + enfants_4380_) with EmptyError -> raise EmptyError) with EmptyError -> raise @@ -5925,9 +6441,9 @@ let interface_allocations_familiales_2004 law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; })) in - let allocations_familiales_dot_personne_charge_effective_permanente_est_parent_3634_ : + let allocations_familiales_dot_personne_charge_effective_permanente_est_parent_4402_ : unit -> bool = - fun (__3635_ : unit) -> + fun (_ : unit) -> log_variable_definition [ "InterfaceAllocationsFamiliales"; @@ -5935,24 +6451,24 @@ let interface_allocations_familiales_2004 ] embed_bool (try - if - log_decision_taken - { - filename = "./epilogue.catala_fr"; - start_line = 90; - start_column = 20; - end_line = 90; - end_column = 67; - law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; - } - personne_charge_effective_permanente_est_parent_3629_ - then true - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 90; + start_column = 20; + end_line = 90; + end_column = 67; + law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; + } + personne_charge_effective_permanente_est_parent_4389_) + (fun (_ : _) -> true) with EmptyError -> false) in - let allocations_familiales_dot_personne_charge_effective_permanente_remplit_titre__i_3636_ : + let allocations_familiales_dot_personne_charge_effective_permanente_remplit_titre__i_4406_ : unit -> bool = - fun (__3637_ : unit) -> + fun (_ : unit) -> log_variable_definition [ "InterfaceAllocationsFamiliales"; @@ -5960,51 +6476,107 @@ let interface_allocations_familiales_2004 ] embed_bool (try - if - log_decision_taken - { - filename = "./epilogue.catala_fr"; - start_line = 93; - start_column = 20; - end_line = 93; - end_column = 72; - law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; - } - personne_charge_effective_permanente_remplit_titre__i_3630_ - then true - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 93; + start_column = 20; + end_line = 93; + end_column = 72; + law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; + } + personne_charge_effective_permanente_remplit_titre__i_4392_) + (fun (_ : _) -> true) with EmptyError -> false) in - let allocations_familiales_dot_ressources_menage_3638_ : unit -> money = - fun (__3639_ : unit) -> + let allocations_familiales_dot_ressources_menage_4410_ : unit -> money = + fun (_ : unit) -> log_variable_definition [ "InterfaceAllocationsFamiliales"; "allocations_familiales.ressources_ménage" ] embed_money - (try ressources_menage_3627_ with EmptyError -> raise EmptyError) + (try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 86; + start_column = 14; + end_line = 86; + end_column = 54; + law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; + } + true) + (fun (_ : _) -> ressources_menage_4383_) + with EmptyError -> raise EmptyError) in - let allocations_familiales_dot_residence_3640_ : unit -> collectivite = - fun (__3641_ : unit) -> + let allocations_familiales_dot_residence_4414_ : unit -> collectivite = + fun (_ : unit) -> log_variable_definition [ "InterfaceAllocationsFamiliales"; "allocations_familiales.résidence" ] embed_collectivite - (try residence_3628_ with EmptyError -> raise EmptyError) + (try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 87; + start_column = 14; + end_line = 87; + end_column = 46; + law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; + } + true) + (fun (_ : _) -> residence_4386_) + with EmptyError -> raise EmptyError) in - let allocations_familiales_dot_date_courante_3642_ : unit -> date = - fun (__3643_ : unit) -> + let allocations_familiales_dot_date_courante_4418_ : unit -> date = + fun (_ : unit) -> log_variable_definition [ "InterfaceAllocationsFamiliales"; "allocations_familiales.date_courante" ] embed_date - (try date_courante_3625_ with EmptyError -> raise EmptyError) + (try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 84; + start_column = 14; + end_line = 84; + end_column = 50; + law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; + } + true) + (fun (_ : _) -> date_courante_4377_) + with EmptyError -> raise EmptyError) in - let allocations_familiales_dot_enfants_a_charge_3644_ : unit -> enfant array = - fun (__3645_ : unit) -> + let allocations_familiales_dot_enfants_a_charge_4422_ : unit -> enfant array = + fun (_ : unit) -> log_variable_definition [ "InterfaceAllocationsFamiliales"; "allocations_familiales.enfants_à_charge" ] (embed_array embed_enfant) - (try enfants_a_charge_3632_ with EmptyError -> raise EmptyError) + (try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 85; + start_column = 14; + end_line = 85; + end_column = 53; + law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; + } + true) + (fun (_ : _) -> enfants_a_charge_4398_) + with EmptyError -> raise EmptyError) in - let allocations_familiales_dot_avait_enfant_a_charge_avant_1er_janvier_2012_3646_ : unit -> bool = - fun (__3647_ : unit) -> + let allocations_familiales_dot_avait_enfant_a_charge_avant_1er_janvier_2012_4426_ : unit -> bool = + fun (_ : unit) -> log_variable_definition [ "InterfaceAllocationsFamiliales"; @@ -6012,222 +6584,231 @@ let interface_allocations_familiales_2004 ] embed_bool (try - if - log_decision_taken - { - filename = "./epilogue.catala_fr"; - start_line = 96; - start_column = 20; - end_line = 96; - end_column = 64; - law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; - } - avait_enfant_a_charge_avant_1er_janvier_2012_3631_ - then true - else raise EmptyError + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 96; + start_column = 20; + end_line = 96; + end_column = 64; + law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; + } + avait_enfant_a_charge_avant_1er_janvier_2012_4395_) + (fun (_ : _) -> true) with EmptyError -> false) in - let result_3648_ : allocations_familiales_out = + let result_4430_ : allocations_familiales_out = log_end_call [ "InterfaceAllocationsFamiliales"; "allocations_familiales"; "AllocationsFamiliales" ] (log_begin_call [ "InterfaceAllocationsFamiliales"; "allocations_familiales"; "AllocationsFamiliales" ] - allocations_familiales_1511 + allocations_familiales { personne_charge_effective_permanente_est_parent_in = - allocations_familiales_dot_personne_charge_effective_permanente_est_parent_3634_; + allocations_familiales_dot_personne_charge_effective_permanente_est_parent_4402_; personne_charge_effective_permanente_remplit_titre_I_in = - allocations_familiales_dot_personne_charge_effective_permanente_remplit_titre__i_3636_; - ressources_menage_in = allocations_familiales_dot_ressources_menage_3638_; - residence_in = allocations_familiales_dot_residence_3640_; - date_courante_in = allocations_familiales_dot_date_courante_3642_; - enfants_a_charge_in = allocations_familiales_dot_enfants_a_charge_3644_; + allocations_familiales_dot_personne_charge_effective_permanente_remplit_titre__i_4406_; + ressources_menage_in = allocations_familiales_dot_ressources_menage_4410_; + residence_in = allocations_familiales_dot_residence_4414_; + date_courante_in = allocations_familiales_dot_date_courante_4418_; + enfants_a_charge_in = allocations_familiales_dot_enfants_a_charge_4422_; enfants_a_charge_droit_ouvert_prestation_familiale_in = - (fun (__3649_ : unit) -> raise EmptyError); - prise_en_compte_in = (fun (__3650_ : unit) -> raise EmptyError); - versement_in = (fun (__3651_ : unit) -> raise EmptyError); - montant_verse_in = (fun (__3652_ : unit) -> raise EmptyError); - droit_ouvert_base_in = (fun (__3653_ : unit) -> raise EmptyError); - montant_initial_base_in = (fun (__3654_ : unit) -> raise EmptyError); - montant_initial_base_premier_enfant_in = (fun (__3655_ : unit) -> raise EmptyError); - montant_initial_base_deuxieme_enfant_in = (fun (__3656_ : unit) -> raise EmptyError); - montant_initial_base_troisieme_enfant_et_plus_in = - (fun (__3657_ : unit) -> raise EmptyError); - rapport_enfants_total_moyen_in = (fun (__3658_ : unit) -> raise EmptyError); - nombre_moyen_enfants_in = (fun (__3659_ : unit) -> raise EmptyError); - nombre_total_enfants_in = (fun (__3660_ : unit) -> raise EmptyError); - montant_avec_garde_alternee_base_in = (fun (__3661_ : unit) -> raise EmptyError); - montant_verse_base_in = (fun (__3662_ : unit) -> raise EmptyError); + (fun (_ : unit) -> raise EmptyError); + prise_en_compte_in = (fun (_ : unit) -> raise EmptyError); + versement_in = (fun (_ : unit) -> raise EmptyError); + montant_verse_in = (fun (_ : unit) -> raise EmptyError); + droit_ouvert_base_in = (fun (_ : unit) -> raise EmptyError); + montant_initial_base_in = (fun (_ : unit) -> raise EmptyError); + montant_initial_base_premier_enfant_in = (fun (_ : unit) -> raise EmptyError); + montant_initial_base_deuxieme_enfant_in = (fun (_ : unit) -> raise EmptyError); + montant_initial_base_troisieme_enfant_et_plus_in = (fun (_ : unit) -> raise EmptyError); + rapport_enfants_total_moyen_in = (fun (_ : unit) -> raise EmptyError); + nombre_moyen_enfants_in = (fun (_ : unit) -> raise EmptyError); + nombre_total_enfants_in = (fun (_ : unit) -> raise EmptyError); + montant_avec_garde_alternee_base_in = (fun (_ : unit) -> raise EmptyError); + montant_verse_base_in = (fun (_ : unit) -> raise EmptyError); avait_enfant_a_charge_avant_1er_janvier_2012_in = - allocations_familiales_dot_avait_enfant_a_charge_avant_1er_janvier_2012_3646_; - montant_initial_base_premier_enfant_mayotte_in = - (fun (__3663_ : unit) -> raise EmptyError); - montant_initial_base_deuxieme_enfant_mayotte_in = - (fun (__3664_ : unit) -> raise EmptyError); - montant_initial_base_troisieme_enfant_mayotte_in = - (fun (__3665_ : unit) -> raise EmptyError); + allocations_familiales_dot_avait_enfant_a_charge_avant_1er_janvier_2012_4426_; + montant_initial_base_premier_enfant_mayotte_in = (fun (_ : unit) -> raise EmptyError); + montant_initial_base_deuxieme_enfant_mayotte_in = (fun (_ : unit) -> raise EmptyError); + montant_initial_base_troisieme_enfant_mayotte_in = (fun (_ : unit) -> raise EmptyError); montant_initial_base_quatrieme_enfant_et_plus_mayotte_in = - (fun (__3666_ : unit) -> raise EmptyError); - droit_ouvert_forfaitaire_in = (fun (__3667_ : unit) -> raise EmptyError); - montant_verse_forfaitaire_par_enfant_in = (fun (__3668_ : unit) -> raise EmptyError); - montant_verse_forfaitaire_in = (fun (__3669_ : unit) -> raise EmptyError); - droit_ouvert_majoration_in = (fun (__3670_ : unit) -> raise EmptyError); - montant_initial_metropole_majoration_in = (fun (__3671_ : unit) -> raise EmptyError); - montant_initial_majoration_in = (fun (__3672_ : unit) -> raise EmptyError); - montant_avec_garde_alternee_majoration_in = (fun (__3673_ : unit) -> raise EmptyError); - montant_verse_majoration_in = (fun (__3674_ : unit) -> raise EmptyError); - droit_ouvert_complement_in = (fun (__3675_ : unit) -> raise EmptyError); - montant_base_complement_pour_base_et_majoration_in = - (fun (__3676_ : unit) -> raise EmptyError); - complement_degressif_in = (fun (__3677_ : unit) -> raise EmptyError); + (fun (_ : unit) -> raise EmptyError); + droit_ouvert_forfaitaire_in = (fun (_ : unit) -> raise EmptyError); + montant_verse_forfaitaire_par_enfant_in = (fun (_ : unit) -> raise EmptyError); + montant_verse_forfaitaire_in = (fun (_ : unit) -> raise EmptyError); + droit_ouvert_majoration_in = (fun (_ : unit) -> raise EmptyError); + montant_initial_metropole_majoration_in = (fun (_ : unit) -> raise EmptyError); + montant_initial_majoration_in = (fun (_ : unit) -> raise EmptyError); + montant_avec_garde_alternee_majoration_in = (fun (_ : unit) -> raise EmptyError); + montant_verse_majoration_in = (fun (_ : unit) -> raise EmptyError); + droit_ouvert_complement_in = (fun (_ : unit) -> raise EmptyError); + montant_base_complement_pour_base_et_majoration_in = (fun (_ : unit) -> raise EmptyError); + complement_degressif_in = (fun (_ : unit) -> raise EmptyError); montant_verse_complement_pour_base_et_majoration_in = - (fun (__3678_ : unit) -> raise EmptyError); - montant_verse_complement_pour_forfaitaire_in = (fun (__3679_ : unit) -> raise EmptyError); - nombre_enfants_l521_1_in = (fun (__3680_ : unit) -> raise EmptyError); - age_minimum_alinea_1_l521_3_in = (fun (__3681_ : unit) -> raise EmptyError); - nombre_enfants_alinea_2_l521_3_in = (fun (__3682_ : unit) -> raise EmptyError); - est_enfant_le_plus_age_in = (fun (__3683_ : unit) -> raise EmptyError); - plafond_I_d521_3_in = (fun (__3684_ : unit) -> raise EmptyError); - plafond_II_d521_3_in = (fun (__3685_ : unit) -> raise EmptyError); + (fun (_ : unit) -> raise EmptyError); + montant_verse_complement_pour_forfaitaire_in = (fun (_ : unit) -> raise EmptyError); + nombre_enfants_l521_1_in = (fun (_ : unit) -> raise EmptyError); + age_minimum_alinea_1_l521_3_in = (fun (_ : unit) -> raise EmptyError); + nombre_enfants_alinea_2_l521_3_in = (fun (_ : unit) -> raise EmptyError); + est_enfant_le_plus_age_in = (fun (_ : unit) -> raise EmptyError); + plafond_I_d521_3_in = (fun (_ : unit) -> raise EmptyError); + plafond_II_d521_3_in = (fun (_ : unit) -> raise EmptyError); }) in - let allocations_familiales_dot_personne_charge_effective_permanente_est_parent_3686_ : bool = - result_3648_.personne_charge_effective_permanente_est_parent_out + let allocations_familiales_dot_personne_charge_effective_permanente_est_parent_4468_ : bool = + result_4430_.personne_charge_effective_permanente_est_parent_out in - let allocations_familiales_dot_personne_charge_effective_permanente_remplit_titre__i_3687_ : bool + let allocations_familiales_dot_personne_charge_effective_permanente_remplit_titre__i_4469_ : bool = - result_3648_.personne_charge_effective_permanente_remplit_titre_I_out + result_4430_.personne_charge_effective_permanente_remplit_titre_I_out in - let allocations_familiales_dot_ressources_menage_3688_ : money = - result_3648_.ressources_menage_out + let allocations_familiales_dot_ressources_menage_4470_ : money = + result_4430_.ressources_menage_out in - let allocations_familiales_dot_residence_3689_ : collectivite = result_3648_.residence_out in - let allocations_familiales_dot_date_courante_3690_ : date = result_3648_.date_courante_out in - let allocations_familiales_dot_enfants_a_charge_3691_ : enfant array = - result_3648_.enfants_a_charge_out + let allocations_familiales_dot_residence_4471_ : collectivite = result_4430_.residence_out in + let allocations_familiales_dot_date_courante_4472_ : date = result_4430_.date_courante_out in + let allocations_familiales_dot_enfants_a_charge_4473_ : enfant array = + result_4430_.enfants_a_charge_out in - let allocations_familiales_dot_enfants_a_charge_droit_ouvert_prestation_familiale_3692_ : + let allocations_familiales_dot_enfants_a_charge_droit_ouvert_prestation_familiale_4474_ : enfant array = - result_3648_.enfants_a_charge_droit_ouvert_prestation_familiale_out + result_4430_.enfants_a_charge_droit_ouvert_prestation_familiale_out in - let allocations_familiales_dot_prise_en_compte_3693_ : enfant -> prise_en_compte = - result_3648_.prise_en_compte_out + let allocations_familiales_dot_prise_en_compte_4475_ : enfant -> prise_en_compte = + result_4430_.prise_en_compte_out in - let allocations_familiales_dot_versement_3694_ : enfant -> versement_allocations = - result_3648_.versement_out + let allocations_familiales_dot_versement_4476_ : enfant -> versement_allocations = + result_4430_.versement_out in - let allocations_familiales_dot_montant_verse_3695_ : money = result_3648_.montant_verse_out in - let allocations_familiales_dot_droit_ouvert_base_3696_ : bool = - result_3648_.droit_ouvert_base_out + let allocations_familiales_dot_montant_verse_4477_ : money = result_4430_.montant_verse_out in + let allocations_familiales_dot_droit_ouvert_base_4478_ : bool = + result_4430_.droit_ouvert_base_out in - let allocations_familiales_dot_montant_initial_base_3697_ : money = - result_3648_.montant_initial_base_out + let allocations_familiales_dot_montant_initial_base_4479_ : money = + result_4430_.montant_initial_base_out in - let allocations_familiales_dot_montant_initial_base_premier_enfant_3698_ : money = - result_3648_.montant_initial_base_premier_enfant_out + let allocations_familiales_dot_montant_initial_base_premier_enfant_4480_ : money = + result_4430_.montant_initial_base_premier_enfant_out in - let allocations_familiales_dot_montant_initial_base_deuxieme_enfant_3699_ : money = - result_3648_.montant_initial_base_deuxieme_enfant_out + let allocations_familiales_dot_montant_initial_base_deuxieme_enfant_4481_ : money = + result_4430_.montant_initial_base_deuxieme_enfant_out in - let allocations_familiales_dot_montant_initial_base_troisieme_enfant_et_plus_3700_ : money = - result_3648_.montant_initial_base_troisieme_enfant_et_plus_out + let allocations_familiales_dot_montant_initial_base_troisieme_enfant_et_plus_4482_ : money = + result_4430_.montant_initial_base_troisieme_enfant_et_plus_out in - let allocations_familiales_dot_rapport_enfants_total_moyen_3701_ : decimal = - result_3648_.rapport_enfants_total_moyen_out + let allocations_familiales_dot_rapport_enfants_total_moyen_4483_ : decimal = + result_4430_.rapport_enfants_total_moyen_out in - let allocations_familiales_dot_nombre_moyen_enfants_3702_ : decimal = - result_3648_.nombre_moyen_enfants_out + let allocations_familiales_dot_nombre_moyen_enfants_4484_ : decimal = + result_4430_.nombre_moyen_enfants_out in - let allocations_familiales_dot_nombre_total_enfants_3703_ : decimal = - result_3648_.nombre_total_enfants_out + let allocations_familiales_dot_nombre_total_enfants_4485_ : decimal = + result_4430_.nombre_total_enfants_out in - let allocations_familiales_dot_montant_avec_garde_alternee_base_3704_ : money = - result_3648_.montant_avec_garde_alternee_base_out + let allocations_familiales_dot_montant_avec_garde_alternee_base_4486_ : money = + result_4430_.montant_avec_garde_alternee_base_out in - let allocations_familiales_dot_montant_verse_base_3705_ : money = - result_3648_.montant_verse_base_out + let allocations_familiales_dot_montant_verse_base_4487_ : money = + result_4430_.montant_verse_base_out in - let allocations_familiales_dot_avait_enfant_a_charge_avant_1er_janvier_2012_3706_ : bool = - result_3648_.avait_enfant_a_charge_avant_1er_janvier_2012_out + let allocations_familiales_dot_avait_enfant_a_charge_avant_1er_janvier_2012_4488_ : bool = + result_4430_.avait_enfant_a_charge_avant_1er_janvier_2012_out in - let allocations_familiales_dot_montant_initial_base_premier_enfant_mayotte_3707_ : money = - result_3648_.montant_initial_base_premier_enfant_mayotte_out + let allocations_familiales_dot_montant_initial_base_premier_enfant_mayotte_4489_ : money = + result_4430_.montant_initial_base_premier_enfant_mayotte_out in - let allocations_familiales_dot_montant_initial_base_deuxieme_enfant_mayotte_3708_ : money = - result_3648_.montant_initial_base_deuxieme_enfant_mayotte_out + let allocations_familiales_dot_montant_initial_base_deuxieme_enfant_mayotte_4490_ : money = + result_4430_.montant_initial_base_deuxieme_enfant_mayotte_out in - let allocations_familiales_dot_montant_initial_base_troisieme_enfant_mayotte_3709_ : money = - result_3648_.montant_initial_base_troisieme_enfant_mayotte_out + let allocations_familiales_dot_montant_initial_base_troisieme_enfant_mayotte_4491_ : money = + result_4430_.montant_initial_base_troisieme_enfant_mayotte_out in - let allocations_familiales_dot_montant_initial_base_quatrieme_enfant_et_plus_mayotte_3710_ : money + let allocations_familiales_dot_montant_initial_base_quatrieme_enfant_et_plus_mayotte_4492_ : money = - result_3648_.montant_initial_base_quatrieme_enfant_et_plus_mayotte_out + result_4430_.montant_initial_base_quatrieme_enfant_et_plus_mayotte_out in - let allocations_familiales_dot_droit_ouvert_forfaitaire_3711_ : enfant -> bool = - result_3648_.droit_ouvert_forfaitaire_out + let allocations_familiales_dot_droit_ouvert_forfaitaire_4493_ : enfant -> bool = + result_4430_.droit_ouvert_forfaitaire_out in - let allocations_familiales_dot_montant_verse_forfaitaire_par_enfant_3712_ : money = - result_3648_.montant_verse_forfaitaire_par_enfant_out + let allocations_familiales_dot_montant_verse_forfaitaire_par_enfant_4494_ : money = + result_4430_.montant_verse_forfaitaire_par_enfant_out in - let allocations_familiales_dot_montant_verse_forfaitaire_3713_ : money = - result_3648_.montant_verse_forfaitaire_out + let allocations_familiales_dot_montant_verse_forfaitaire_4495_ : money = + result_4430_.montant_verse_forfaitaire_out in - let allocations_familiales_dot_droit_ouvert_majoration_3714_ : enfant -> bool = - result_3648_.droit_ouvert_majoration_out + let allocations_familiales_dot_droit_ouvert_majoration_4496_ : enfant -> bool = + result_4430_.droit_ouvert_majoration_out in - let allocations_familiales_dot_montant_initial_metropole_majoration_3715_ : enfant -> money = - result_3648_.montant_initial_metropole_majoration_out + let allocations_familiales_dot_montant_initial_metropole_majoration_4497_ : enfant -> money = + result_4430_.montant_initial_metropole_majoration_out in - let allocations_familiales_dot_montant_initial_majoration_3716_ : enfant -> money = - result_3648_.montant_initial_majoration_out + let allocations_familiales_dot_montant_initial_majoration_4498_ : enfant -> money = + result_4430_.montant_initial_majoration_out in - let allocations_familiales_dot_montant_avec_garde_alternee_majoration_3717_ : enfant -> money = - result_3648_.montant_avec_garde_alternee_majoration_out + let allocations_familiales_dot_montant_avec_garde_alternee_majoration_4499_ : enfant -> money = + result_4430_.montant_avec_garde_alternee_majoration_out in - let allocations_familiales_dot_montant_verse_majoration_3718_ : money = - result_3648_.montant_verse_majoration_out + let allocations_familiales_dot_montant_verse_majoration_4500_ : money = + result_4430_.montant_verse_majoration_out in - let allocations_familiales_dot_droit_ouvert_complement_3719_ : bool = - result_3648_.droit_ouvert_complement_out + let allocations_familiales_dot_droit_ouvert_complement_4501_ : bool = + result_4430_.droit_ouvert_complement_out in - let allocations_familiales_dot_montant_base_complement_pour_base_et_majoration_3720_ : money = - result_3648_.montant_base_complement_pour_base_et_majoration_out + let allocations_familiales_dot_montant_base_complement_pour_base_et_majoration_4502_ : money = + result_4430_.montant_base_complement_pour_base_et_majoration_out in - let allocations_familiales_dot_complement_degressif_3721_ : money -> money = - result_3648_.complement_degressif_out + let allocations_familiales_dot_complement_degressif_4503_ : money -> money = + result_4430_.complement_degressif_out in - let allocations_familiales_dot_montant_verse_complement_pour_base_et_majoration_3722_ : money = - result_3648_.montant_verse_complement_pour_base_et_majoration_out + let allocations_familiales_dot_montant_verse_complement_pour_base_et_majoration_4504_ : money = + result_4430_.montant_verse_complement_pour_base_et_majoration_out in - let allocations_familiales_dot_montant_verse_complement_pour_forfaitaire_3723_ : money = - result_3648_.montant_verse_complement_pour_forfaitaire_out + let allocations_familiales_dot_montant_verse_complement_pour_forfaitaire_4505_ : money = + result_4430_.montant_verse_complement_pour_forfaitaire_out in - let allocations_familiales_dot_nombre_enfants_l521_1_3724_ : integer = - result_3648_.nombre_enfants_l521_1_out + let allocations_familiales_dot_nombre_enfants_l521_1_4506_ : integer = + result_4430_.nombre_enfants_l521_1_out in - let allocations_familiales_dot_age_minimum_alinea_1_l521_3_3725_ : enfant -> integer = - result_3648_.age_minimum_alinea_1_l521_3_out + let allocations_familiales_dot_age_minimum_alinea_1_l521_3_4507_ : enfant -> integer = + result_4430_.age_minimum_alinea_1_l521_3_out in - let allocations_familiales_dot_nombre_enfants_alinea_2_l521_3_3726_ : integer = - result_3648_.nombre_enfants_alinea_2_l521_3_out + let allocations_familiales_dot_nombre_enfants_alinea_2_l521_3_4508_ : integer = + result_4430_.nombre_enfants_alinea_2_l521_3_out in - let allocations_familiales_dot_est_enfant_le_plus_age_3727_ : enfant -> bool = - result_3648_.est_enfant_le_plus_age_out + let allocations_familiales_dot_est_enfant_le_plus_age_4509_ : enfant -> bool = + result_4430_.est_enfant_le_plus_age_out in - let allocations_familiales_dot_plafond__i_d521_3_3728_ : money = - result_3648_.plafond_I_d521_3_out + let allocations_familiales_dot_plafond__i_d521_3_4510_ : money = + result_4430_.plafond_I_d521_3_out in - let allocations_familiales_dot_plafond__i_i_d521_3_3729_ : money = - result_3648_.plafond_II_d521_3_out + let allocations_familiales_dot_plafond__i_i_d521_3_4511_ : money = + result_4430_.plafond_II_d521_3_out in - let montant_verse_3730_ : money = + let montant_verse_4512_ : money = log_variable_definition [ "InterfaceAllocationsFamiliales"; "montant_versé" ] embed_money (try - try montant_verse_3621_ () + try montant_verse_4373_ () with EmptyError -> ( - try allocations_familiales_dot_montant_verse_3695_ with EmptyError -> raise EmptyError) + try + handle_default [||] + (fun (_ : _) -> + log_decision_taken + { + filename = "./epilogue.catala_fr"; + start_line = 88; + start_column = 14; + end_line = 88; + end_column = 27; + law_headings = [ "Interface du programme"; "Épilogue"; "Décrets divers" ]; + } + true) + (fun (_ : _) -> allocations_familiales_dot_montant_verse_4477_) + with EmptyError -> raise EmptyError) with EmptyError -> raise (NoValueProvided @@ -6241,16 +6822,16 @@ let interface_allocations_familiales_2004 })) in { - date_courante_out = date_courante_3625_; - enfants_out = enfants_3626_; - enfants_a_charge_out = enfants_a_charge_3632_; - ressources_menage_out = ressources_menage_3627_; - residence_out = residence_3628_; - montant_verse_out = montant_verse_3730_; + date_courante_out = date_courante_4377_; + enfants_out = enfants_4380_; + enfants_a_charge_out = enfants_a_charge_4398_; + ressources_menage_out = ressources_menage_4383_; + residence_out = residence_4386_; + montant_verse_out = montant_verse_4512_; personne_charge_effective_permanente_est_parent_out = - personne_charge_effective_permanente_est_parent_3629_; + personne_charge_effective_permanente_est_parent_4389_; personne_charge_effective_permanente_remplit_titre_I_out = - personne_charge_effective_permanente_remplit_titre__i_3630_; + personne_charge_effective_permanente_remplit_titre__i_4392_; avait_enfant_a_charge_avant_1er_janvier_2012_out = - avait_enfant_a_charge_avant_1er_janvier_2012_3631_; + avait_enfant_a_charge_avant_1er_janvier_2012_4395_; } diff --git a/french_law/python/src/allocations_familiales.py b/french_law/python/src/allocations_familiales.py index b162982f..20ff38e5 100644 --- a/french_law/python/src/allocations_familiales.py +++ b/french_law/python/src/allocations_familiales.py @@ -4,6 +4,7 @@ from .catala import * from typing import Any, List, Callable, Tuple from enum import Enum + class PriseEnCharge_Code(Enum): GardeAlterneePartageAllocations = 0 GardeAlterneeAllocataireUnique = 1 @@ -11,48 +12,48 @@ class PriseEnCharge_Code(Enum): ServicesSociauxAllocationVerseeALaFamille = 3 ServicesSociauxAllocationVerseeAuxServicesSociaux = 4 + class PriseEnCharge: - def __init__(self, code: PriseEnCharge_Code, value: Any) -> None: - self.code = code - self.value = value + def __init__(self, code: PriseEnCharge_Code, value: Any) -> None: + self.code = code + self.value = value + def __eq__(self, other: object) -> bool: + if isinstance(other, PriseEnCharge): + return self.code == other.code and self.value == other.value + else: + return False - def __eq__(self, other: object) -> bool: - if isinstance(other, PriseEnCharge): - return self.code == other.code and self.value == other.value - else: - return False + def __ne__(self, other: object) -> bool: + return not (self == other) + def __str__(self) -> str: + return "{}({})".format(self.code, self.value) - def __ne__(self, other: object) -> bool: - return not (self == other) - - def __str__(self) -> str: - return "{}({})".format(self.code, self.value) class SituationObligationScolaire_Code(Enum): Avant = 0 Pendant = 1 Apres = 2 + class SituationObligationScolaire: - def __init__(self, code: SituationObligationScolaire_Code, value: Any) -> None: - self.code = code - self.value = value + def __init__(self, code: SituationObligationScolaire_Code, value: Any) -> None: + self.code = code + self.value = value + def __eq__(self, other: object) -> bool: + if isinstance(other, SituationObligationScolaire): + return self.code == other.code and self.value == other.value + else: + return False - def __eq__(self, other: object) -> bool: - if isinstance(other, SituationObligationScolaire): - return self.code == other.code and self.value == other.value - else: - return False + def __ne__(self, other: object) -> bool: + return not (self == other) + def __str__(self) -> str: + return "{}({})".format(self.code, self.value) - def __ne__(self, other: object) -> bool: - return not (self == other) - - def __str__(self) -> str: - return "{}({})".format(self.code, self.value) class Collectivite_Code(Enum): Guadeloupe = 0 @@ -65,71 +66,71 @@ class Collectivite_Code(Enum): SaintPierreEtMiquelon = 7 Mayotte = 8 + class Collectivite: - def __init__(self, code: Collectivite_Code, value: Any) -> None: - self.code = code - self.value = value + def __init__(self, code: Collectivite_Code, value: Any) -> None: + self.code = code + self.value = value + def __eq__(self, other: object) -> bool: + if isinstance(other, Collectivite): + return self.code == other.code and self.value == other.value + else: + return False - def __eq__(self, other: object) -> bool: - if isinstance(other, Collectivite): - return self.code == other.code and self.value == other.value - else: - return False + def __ne__(self, other: object) -> bool: + return not (self == other) + def __str__(self) -> str: + return "{}({})".format(self.code, self.value) - def __ne__(self, other: object) -> bool: - return not (self == other) - - def __str__(self) -> str: - return "{}({})".format(self.code, self.value) class PriseEnCompte_Code(Enum): Complete = 0 Partagee = 1 Zero = 2 + class PriseEnCompte: - def __init__(self, code: PriseEnCompte_Code, value: Any) -> None: - self.code = code - self.value = value + def __init__(self, code: PriseEnCompte_Code, value: Any) -> None: + self.code = code + self.value = value + def __eq__(self, other: object) -> bool: + if isinstance(other, PriseEnCompte): + return self.code == other.code and self.value == other.value + else: + return False - def __eq__(self, other: object) -> bool: - if isinstance(other, PriseEnCompte): - return self.code == other.code and self.value == other.value - else: - return False + def __ne__(self, other: object) -> bool: + return not (self == other) + def __str__(self) -> str: + return "{}({})".format(self.code, self.value) - def __ne__(self, other: object) -> bool: - return not (self == other) - - def __str__(self) -> str: - return "{}({})".format(self.code, self.value) class VersementAllocations_Code(Enum): Normal = 0 AllocationVerseeAuxServicesSociaux = 1 + class VersementAllocations: - def __init__(self, code: VersementAllocations_Code, value: Any) -> None: - self.code = code - self.value = value + def __init__(self, code: VersementAllocations_Code, value: Any) -> None: + self.code = code + self.value = value + def __eq__(self, other: object) -> bool: + if isinstance(other, VersementAllocations): + return self.code == other.code and self.value == other.value + else: + return False - def __eq__(self, other: object) -> bool: - if isinstance(other, VersementAllocations): - return self.code == other.code and self.value == other.value - else: - return False + def __ne__(self, other: object) -> bool: + return not (self == other) + def __str__(self) -> str: + return "{}({})".format(self.code, self.value) - def __ne__(self, other: object) -> bool: - return not (self == other) - - def __str__(self) -> str: - return "{}({})".format(self.code, self.value) class ElementPrestationsFamiliales_Code(Enum): PrestationAccueilJeuneEnfant = 0 @@ -141,611 +142,623 @@ class ElementPrestationsFamiliales_Code(Enum): AllocationRentreeScolaire = 6 AllocationJournalierePresenceParentale = 7 + class ElementPrestationsFamiliales: - def __init__(self, code: ElementPrestationsFamiliales_Code, value: Any) -> None: - self.code = code - self.value = value + def __init__(self, code: ElementPrestationsFamiliales_Code, value: Any) -> None: + self.code = code + self.value = value + def __eq__(self, other: object) -> bool: + if isinstance(other, ElementPrestationsFamiliales): + return self.code == other.code and self.value == other.value + else: + return False - def __eq__(self, other: object) -> bool: - if isinstance(other, ElementPrestationsFamiliales): - return self.code == other.code and self.value == other.value - else: - return False + def __ne__(self, other: object) -> bool: + return not (self == other) + def __str__(self) -> str: + return "{}({})".format(self.code, self.value) - def __ne__(self, other: object) -> bool: - return not (self == other) - - def __str__(self) -> str: - return "{}({})".format(self.code, self.value) class EnfantEntree: - def __init__(self, d_identifiant: Integer, d_remuneration_mensuelle: Money, d_date_de_naissance: Date, d_prise_en_charge: PriseEnCharge, d_a_deja_ouvert_droit_aux_allocations_familiales: bool) -> None: - self.d_identifiant = d_identifiant - self.d_remuneration_mensuelle = d_remuneration_mensuelle - self.d_date_de_naissance = d_date_de_naissance - self.d_prise_en_charge = d_prise_en_charge - self.d_a_deja_ouvert_droit_aux_allocations_familiales = d_a_deja_ouvert_droit_aux_allocations_familiales + def __init__(self, d_identifiant: Integer, d_remuneration_mensuelle: Money, d_date_de_naissance: Date, d_prise_en_charge: PriseEnCharge, d_a_deja_ouvert_droit_aux_allocations_familiales: bool) -> None: + self.d_identifiant = d_identifiant + self.d_remuneration_mensuelle = d_remuneration_mensuelle + self.d_date_de_naissance = d_date_de_naissance + self.d_prise_en_charge = d_prise_en_charge + self.d_a_deja_ouvert_droit_aux_allocations_familiales = d_a_deja_ouvert_droit_aux_allocations_familiales - def __eq__(self, other: object) -> bool: - if isinstance(other, EnfantEntree): - return (self.d_identifiant == other.d_identifiant and - self.d_remuneration_mensuelle == other.d_remuneration_mensuelle and - self.d_date_de_naissance == other.d_date_de_naissance and - self.d_prise_en_charge == other.d_prise_en_charge and - self.d_a_deja_ouvert_droit_aux_allocations_familiales == other.d_a_deja_ouvert_droit_aux_allocations_familiales) - else: - return False + def __eq__(self, other: object) -> bool: + if isinstance(other, EnfantEntree): + return (self.d_identifiant == other.d_identifiant and + self.d_remuneration_mensuelle == other.d_remuneration_mensuelle and + self.d_date_de_naissance == other.d_date_de_naissance and + self.d_prise_en_charge == other.d_prise_en_charge and + self.d_a_deja_ouvert_droit_aux_allocations_familiales == other.d_a_deja_ouvert_droit_aux_allocations_familiales) + else: + return False - def __ne__(self, other: object) -> bool: - return not (self == other) + def __ne__(self, other: object) -> bool: + return not (self == other) + + def __str__(self) -> str: + return "EnfantEntree(d_identifiant={},d_remuneration_mensuelle={},d_date_de_naissance={},d_prise_en_charge={},d_a_deja_ouvert_droit_aux_allocations_familiales={})".format(self.d_identifiant, + self.d_remuneration_mensuelle, self.d_date_de_naissance, + self.d_prise_en_charge, + self.d_a_deja_ouvert_droit_aux_allocations_familiales) - def __str__(self) -> str: - return "EnfantEntree(d_identifiant={},d_remuneration_mensuelle={},d_date_de_naissance={},d_prise_en_charge={},d_a_deja_ouvert_droit_aux_allocations_familiales={})".format(self.d_identifiant, - self.d_remuneration_mensuelle, self.d_date_de_naissance, - self.d_prise_en_charge, - self.d_a_deja_ouvert_droit_aux_allocations_familiales) class Enfant: - def __init__(self, identifiant: Integer, obligation_scolaire: SituationObligationScolaire, remuneration_mensuelle: Money, date_de_naissance: Date, age: Integer, prise_en_charge: PriseEnCharge, a_deja_ouvert_droit_aux_allocations_familiales: bool) -> None: - self.identifiant = identifiant - self.obligation_scolaire = obligation_scolaire - self.remuneration_mensuelle = remuneration_mensuelle - self.date_de_naissance = date_de_naissance - self.age = age - self.prise_en_charge = prise_en_charge - self.a_deja_ouvert_droit_aux_allocations_familiales = a_deja_ouvert_droit_aux_allocations_familiales + def __init__(self, identifiant: Integer, obligation_scolaire: SituationObligationScolaire, remuneration_mensuelle: Money, date_de_naissance: Date, age: Integer, prise_en_charge: PriseEnCharge, a_deja_ouvert_droit_aux_allocations_familiales: bool) -> None: + self.identifiant = identifiant + self.obligation_scolaire = obligation_scolaire + self.remuneration_mensuelle = remuneration_mensuelle + self.date_de_naissance = date_de_naissance + self.age = age + self.prise_en_charge = prise_en_charge + self.a_deja_ouvert_droit_aux_allocations_familiales = a_deja_ouvert_droit_aux_allocations_familiales - def __eq__(self, other: object) -> bool: - if isinstance(other, Enfant): - return (self.identifiant == other.identifiant and - self.obligation_scolaire == other.obligation_scolaire and - self.remuneration_mensuelle == other.remuneration_mensuelle and - self.date_de_naissance == other.date_de_naissance and - self.age == other.age and - self.prise_en_charge == other.prise_en_charge and - self.a_deja_ouvert_droit_aux_allocations_familiales == other.a_deja_ouvert_droit_aux_allocations_familiales) - else: - return False + def __eq__(self, other: object) -> bool: + if isinstance(other, Enfant): + return (self.identifiant == other.identifiant and + self.obligation_scolaire == other.obligation_scolaire and + self.remuneration_mensuelle == other.remuneration_mensuelle and + self.date_de_naissance == other.date_de_naissance and + self.age == other.age and + self.prise_en_charge == other.prise_en_charge and + self.a_deja_ouvert_droit_aux_allocations_familiales == other.a_deja_ouvert_droit_aux_allocations_familiales) + else: + return False - def __ne__(self, other: object) -> bool: - return not (self == other) + def __ne__(self, other: object) -> bool: + return not (self == other) + + def __str__(self) -> str: + return "Enfant(identifiant={},obligation_scolaire={},remuneration_mensuelle={},date_de_naissance={},age={},prise_en_charge={},a_deja_ouvert_droit_aux_allocations_familiales={})".format(self.identifiant, + self.obligation_scolaire, self.remuneration_mensuelle, + self.date_de_naissance, self.age, self.prise_en_charge, + self.a_deja_ouvert_droit_aux_allocations_familiales) - def __str__(self) -> str: - return "Enfant(identifiant={},obligation_scolaire={},remuneration_mensuelle={},date_de_naissance={},age={},prise_en_charge={},a_deja_ouvert_droit_aux_allocations_familiales={})".format(self.identifiant, - self.obligation_scolaire, self.remuneration_mensuelle, - self.date_de_naissance, self.age, self.prise_en_charge, - self.a_deja_ouvert_droit_aux_allocations_familiales) class SmicOut: - def __init__(self, date_courante_out: Date, residence_out: Collectivite, brut_horaire_out: Money) -> None: - self.date_courante_out = date_courante_out - self.residence_out = residence_out - self.brut_horaire_out = brut_horaire_out + def __init__(self, date_courante_out: Date, residence_out: Collectivite, brut_horaire_out: Money) -> None: + self.date_courante_out = date_courante_out + self.residence_out = residence_out + self.brut_horaire_out = brut_horaire_out - def __eq__(self, other: object) -> bool: - if isinstance(other, SmicOut): - return (self.date_courante_out == other.date_courante_out and - self.residence_out == other.residence_out and - self.brut_horaire_out == other.brut_horaire_out) - else: - return False + def __eq__(self, other: object) -> bool: + if isinstance(other, SmicOut): + return (self.date_courante_out == other.date_courante_out and + self.residence_out == other.residence_out and + self.brut_horaire_out == other.brut_horaire_out) + else: + return False - def __ne__(self, other: object) -> bool: - return not (self == other) + def __ne__(self, other: object) -> bool: + return not (self == other) + + def __str__(self) -> str: + return "SmicOut(date_courante_out={},residence_out={},brut_horaire_out={})".format(self.date_courante_out, + self.residence_out, self.brut_horaire_out) - def __str__(self) -> str: - return "SmicOut(date_courante_out={},residence_out={},brut_horaire_out={})".format(self.date_courante_out, - self.residence_out, self.brut_horaire_out) class SmicIn: - def __init__(self, date_courante_in: Callable[[Unit], Date], residence_in: Callable[[Unit], Collectivite], brut_horaire_in: Callable[[Unit], Money]) -> None: - self.date_courante_in = date_courante_in - self.residence_in = residence_in - self.brut_horaire_in = brut_horaire_in + def __init__(self, date_courante_in: Callable[[Unit], Date], residence_in: Callable[[Unit], Collectivite], brut_horaire_in: Callable[[Unit], Money]) -> None: + self.date_courante_in = date_courante_in + self.residence_in = residence_in + self.brut_horaire_in = brut_horaire_in - def __eq__(self, other: object) -> bool: - if isinstance(other, SmicIn): - return (self.date_courante_in == other.date_courante_in and - self.residence_in == other.residence_in and - self.brut_horaire_in == other.brut_horaire_in) - else: - return False + def __eq__(self, other: object) -> bool: + if isinstance(other, SmicIn): + return (self.date_courante_in == other.date_courante_in and + self.residence_in == other.residence_in and + self.brut_horaire_in == other.brut_horaire_in) + else: + return False - def __ne__(self, other: object) -> bool: - return not (self == other) + def __ne__(self, other: object) -> bool: + return not (self == other) + + def __str__(self) -> str: + return "SmicIn(date_courante_in={},residence_in={},brut_horaire_in={})".format(self.date_courante_in, + self.residence_in, self.brut_horaire_in) - def __str__(self) -> str: - return "SmicIn(date_courante_in={},residence_in={},brut_horaire_in={})".format(self.date_courante_in, - self.residence_in, self.brut_horaire_in) class PrestationsFamilialesOut: - def __init__(self, droit_ouvert_out: Callable[[Enfant], bool], conditions_hors_age_out: Callable[[Enfant], bool], plafond_l512_3_2_out: Money, age_l512_3_2_out: Integer, regime_outre_mer_l751_1_out: bool, date_courante_out: Date, prestation_courante_out: ElementPrestationsFamiliales, residence_out: Collectivite, base_mensuelle_out: Money) -> None: - self.droit_ouvert_out = droit_ouvert_out - self.conditions_hors_age_out = conditions_hors_age_out - self.plafond_l512_3_2_out = plafond_l512_3_2_out - self.age_l512_3_2_out = age_l512_3_2_out - self.regime_outre_mer_l751_1_out = regime_outre_mer_l751_1_out - self.date_courante_out = date_courante_out - self.prestation_courante_out = prestation_courante_out - self.residence_out = residence_out - self.base_mensuelle_out = base_mensuelle_out + def __init__(self, droit_ouvert_out: Callable[[Enfant], bool], conditions_hors_age_out: Callable[[Enfant], bool], plafond_l512_3_2_out: Money, age_l512_3_2_out: Integer, regime_outre_mer_l751_1_out: bool, date_courante_out: Date, prestation_courante_out: ElementPrestationsFamiliales, residence_out: Collectivite, base_mensuelle_out: Money) -> None: + self.droit_ouvert_out = droit_ouvert_out + self.conditions_hors_age_out = conditions_hors_age_out + self.plafond_l512_3_2_out = plafond_l512_3_2_out + self.age_l512_3_2_out = age_l512_3_2_out + self.regime_outre_mer_l751_1_out = regime_outre_mer_l751_1_out + self.date_courante_out = date_courante_out + self.prestation_courante_out = prestation_courante_out + self.residence_out = residence_out + self.base_mensuelle_out = base_mensuelle_out - def __eq__(self, other: object) -> bool: - if isinstance(other, PrestationsFamilialesOut): - return (self.droit_ouvert_out == other.droit_ouvert_out and - self.conditions_hors_age_out == other.conditions_hors_age_out and - self.plafond_l512_3_2_out == other.plafond_l512_3_2_out and - self.age_l512_3_2_out == other.age_l512_3_2_out and - self.regime_outre_mer_l751_1_out == other.regime_outre_mer_l751_1_out and - self.date_courante_out == other.date_courante_out and - self.prestation_courante_out == other.prestation_courante_out and - self.residence_out == other.residence_out and - self.base_mensuelle_out == other.base_mensuelle_out) - else: - return False + def __eq__(self, other: object) -> bool: + if isinstance(other, PrestationsFamilialesOut): + return (self.droit_ouvert_out == other.droit_ouvert_out and + self.conditions_hors_age_out == other.conditions_hors_age_out and + self.plafond_l512_3_2_out == other.plafond_l512_3_2_out and + self.age_l512_3_2_out == other.age_l512_3_2_out and + self.regime_outre_mer_l751_1_out == other.regime_outre_mer_l751_1_out and + self.date_courante_out == other.date_courante_out and + self.prestation_courante_out == other.prestation_courante_out and + self.residence_out == other.residence_out and + self.base_mensuelle_out == other.base_mensuelle_out) + else: + return False - def __ne__(self, other: object) -> bool: - return not (self == other) + def __ne__(self, other: object) -> bool: + return not (self == other) + + def __str__(self) -> str: + return "PrestationsFamilialesOut(droit_ouvert_out={},conditions_hors_age_out={},plafond_l512_3_2_out={},age_l512_3_2_out={},regime_outre_mer_l751_1_out={},date_courante_out={},prestation_courante_out={},residence_out={},base_mensuelle_out={})".format(self.droit_ouvert_out, + self.conditions_hors_age_out, self.plafond_l512_3_2_out, + self.age_l512_3_2_out, self.regime_outre_mer_l751_1_out, + self.date_courante_out, self.prestation_courante_out, + self.residence_out, self.base_mensuelle_out) - def __str__(self) -> str: - return "PrestationsFamilialesOut(droit_ouvert_out={},conditions_hors_age_out={},plafond_l512_3_2_out={},age_l512_3_2_out={},regime_outre_mer_l751_1_out={},date_courante_out={},prestation_courante_out={},residence_out={},base_mensuelle_out={})".format(self.droit_ouvert_out, - self.conditions_hors_age_out, self.plafond_l512_3_2_out, - self.age_l512_3_2_out, self.regime_outre_mer_l751_1_out, - self.date_courante_out, self.prestation_courante_out, - self.residence_out, self.base_mensuelle_out) class PrestationsFamilialesIn: - def __init__(self, droit_ouvert_in: Callable[[Unit], (Callable[[Enfant], bool])], conditions_hors_age_in: Callable[[Unit], (Callable[[Enfant], bool])], plafond_l512_3_2_in: Callable[[Unit], Money], age_l512_3_2_in: Callable[[Unit], Integer], regime_outre_mer_l751_1_in: Callable[[Unit], bool], date_courante_in: Callable[[Unit], Date], prestation_courante_in: Callable[[Unit], ElementPrestationsFamiliales], residence_in: Callable[[Unit], Collectivite], base_mensuelle_in: Callable[[Unit], Money]) -> None: - self.droit_ouvert_in = droit_ouvert_in - self.conditions_hors_age_in = conditions_hors_age_in - self.plafond_l512_3_2_in = plafond_l512_3_2_in - self.age_l512_3_2_in = age_l512_3_2_in - self.regime_outre_mer_l751_1_in = regime_outre_mer_l751_1_in - self.date_courante_in = date_courante_in - self.prestation_courante_in = prestation_courante_in - self.residence_in = residence_in - self.base_mensuelle_in = base_mensuelle_in + def __init__(self, droit_ouvert_in: Callable[[Unit], (Callable[[Enfant], bool])], conditions_hors_age_in: Callable[[Unit], (Callable[[Enfant], bool])], plafond_l512_3_2_in: Callable[[Unit], Money], age_l512_3_2_in: Callable[[Unit], Integer], regime_outre_mer_l751_1_in: Callable[[Unit], bool], date_courante_in: Callable[[Unit], Date], prestation_courante_in: Callable[[Unit], ElementPrestationsFamiliales], residence_in: Callable[[Unit], Collectivite], base_mensuelle_in: Callable[[Unit], Money]) -> None: + self.droit_ouvert_in = droit_ouvert_in + self.conditions_hors_age_in = conditions_hors_age_in + self.plafond_l512_3_2_in = plafond_l512_3_2_in + self.age_l512_3_2_in = age_l512_3_2_in + self.regime_outre_mer_l751_1_in = regime_outre_mer_l751_1_in + self.date_courante_in = date_courante_in + self.prestation_courante_in = prestation_courante_in + self.residence_in = residence_in + self.base_mensuelle_in = base_mensuelle_in - def __eq__(self, other: object) -> bool: - if isinstance(other, PrestationsFamilialesIn): - return (self.droit_ouvert_in == other.droit_ouvert_in and - self.conditions_hors_age_in == other.conditions_hors_age_in and - self.plafond_l512_3_2_in == other.plafond_l512_3_2_in and - self.age_l512_3_2_in == other.age_l512_3_2_in and - self.regime_outre_mer_l751_1_in == other.regime_outre_mer_l751_1_in and - self.date_courante_in == other.date_courante_in and - self.prestation_courante_in == other.prestation_courante_in and - self.residence_in == other.residence_in and - self.base_mensuelle_in == other.base_mensuelle_in) - else: - return False + def __eq__(self, other: object) -> bool: + if isinstance(other, PrestationsFamilialesIn): + return (self.droit_ouvert_in == other.droit_ouvert_in and + self.conditions_hors_age_in == other.conditions_hors_age_in and + self.plafond_l512_3_2_in == other.plafond_l512_3_2_in and + self.age_l512_3_2_in == other.age_l512_3_2_in and + self.regime_outre_mer_l751_1_in == other.regime_outre_mer_l751_1_in and + self.date_courante_in == other.date_courante_in and + self.prestation_courante_in == other.prestation_courante_in and + self.residence_in == other.residence_in and + self.base_mensuelle_in == other.base_mensuelle_in) + else: + return False - def __ne__(self, other: object) -> bool: - return not (self == other) + def __ne__(self, other: object) -> bool: + return not (self == other) + + def __str__(self) -> str: + return "PrestationsFamilialesIn(droit_ouvert_in={},conditions_hors_age_in={},plafond_l512_3_2_in={},age_l512_3_2_in={},regime_outre_mer_l751_1_in={},date_courante_in={},prestation_courante_in={},residence_in={},base_mensuelle_in={})".format(self.droit_ouvert_in, + self.conditions_hors_age_in, self.plafond_l512_3_2_in, + self.age_l512_3_2_in, self.regime_outre_mer_l751_1_in, + self.date_courante_in, self.prestation_courante_in, self.residence_in, + self.base_mensuelle_in) - def __str__(self) -> str: - return "PrestationsFamilialesIn(droit_ouvert_in={},conditions_hors_age_in={},plafond_l512_3_2_in={},age_l512_3_2_in={},regime_outre_mer_l751_1_in={},date_courante_in={},prestation_courante_in={},residence_in={},base_mensuelle_in={})".format(self.droit_ouvert_in, - self.conditions_hors_age_in, self.plafond_l512_3_2_in, - self.age_l512_3_2_in, self.regime_outre_mer_l751_1_in, - self.date_courante_in, self.prestation_courante_in, self.residence_in, - self.base_mensuelle_in) class AllocationFamilialesAvril2008Out: - def __init__(self, age_minimum_alinea_1_l521_3_out: Integer) -> None: - self.age_minimum_alinea_1_l521_3_out = age_minimum_alinea_1_l521_3_out + def __init__(self, age_minimum_alinea_1_l521_3_out: Integer) -> None: + self.age_minimum_alinea_1_l521_3_out = age_minimum_alinea_1_l521_3_out - def __eq__(self, other: object) -> bool: - if isinstance(other, AllocationFamilialesAvril2008Out): - return (self.age_minimum_alinea_1_l521_3_out == other.age_minimum_alinea_1_l521_3_out) - else: - return False + def __eq__(self, other: object) -> bool: + if isinstance(other, AllocationFamilialesAvril2008Out): + return (self.age_minimum_alinea_1_l521_3_out == other.age_minimum_alinea_1_l521_3_out) + else: + return False - def __ne__(self, other: object) -> bool: - return not (self == other) + def __ne__(self, other: object) -> bool: + return not (self == other) + + def __str__(self) -> str: + return "AllocationFamilialesAvril2008Out(age_minimum_alinea_1_l521_3_out={})".format(self.age_minimum_alinea_1_l521_3_out) - def __str__(self) -> str: - return "AllocationFamilialesAvril2008Out(age_minimum_alinea_1_l521_3_out={})".format(self.age_minimum_alinea_1_l521_3_out) class AllocationFamilialesAvril2008In: - def __init__(self, age_minimum_alinea_1_l521_3_in: Callable[[Unit], Integer]) -> None: - self.age_minimum_alinea_1_l521_3_in = age_minimum_alinea_1_l521_3_in + def __init__(self, age_minimum_alinea_1_l521_3_in: Callable[[Unit], Integer]) -> None: + self.age_minimum_alinea_1_l521_3_in = age_minimum_alinea_1_l521_3_in - def __eq__(self, other: object) -> bool: - if isinstance(other, AllocationFamilialesAvril2008In): - return (self.age_minimum_alinea_1_l521_3_in == other.age_minimum_alinea_1_l521_3_in) - else: - return False + def __eq__(self, other: object) -> bool: + if isinstance(other, AllocationFamilialesAvril2008In): + return (self.age_minimum_alinea_1_l521_3_in == other.age_minimum_alinea_1_l521_3_in) + else: + return False - def __ne__(self, other: object) -> bool: - return not (self == other) + def __ne__(self, other: object) -> bool: + return not (self == other) + + def __str__(self) -> str: + return "AllocationFamilialesAvril2008In(age_minimum_alinea_1_l521_3_in={})".format(self.age_minimum_alinea_1_l521_3_in) - def __str__(self) -> str: - return "AllocationFamilialesAvril2008In(age_minimum_alinea_1_l521_3_in={})".format(self.age_minimum_alinea_1_l521_3_in) class EnfantLePlusAgeOut: - def __init__(self, enfants_out: List[Enfant], le_plus_age_out: Enfant) -> None: - self.enfants_out = enfants_out - self.le_plus_age_out = le_plus_age_out + def __init__(self, enfants_out: List[Enfant], le_plus_age_out: Enfant) -> None: + self.enfants_out = enfants_out + self.le_plus_age_out = le_plus_age_out - def __eq__(self, other: object) -> bool: - if isinstance(other, EnfantLePlusAgeOut): - return (self.enfants_out == other.enfants_out and - self.le_plus_age_out == other.le_plus_age_out) - else: - return False + def __eq__(self, other: object) -> bool: + if isinstance(other, EnfantLePlusAgeOut): + return (self.enfants_out == other.enfants_out and + self.le_plus_age_out == other.le_plus_age_out) + else: + return False - def __ne__(self, other: object) -> bool: - return not (self == other) + def __ne__(self, other: object) -> bool: + return not (self == other) + + def __str__(self) -> str: + return "EnfantLePlusAgeOut(enfants_out={},le_plus_age_out={})".format(self.enfants_out, + self.le_plus_age_out) - def __str__(self) -> str: - return "EnfantLePlusAgeOut(enfants_out={},le_plus_age_out={})".format(self.enfants_out, - self.le_plus_age_out) class EnfantLePlusAgeIn: - def __init__(self, enfants_in: Callable[[Unit], (List[Enfant])], le_plus_age_in: Callable[[Unit], Enfant]) -> None: - self.enfants_in = enfants_in - self.le_plus_age_in = le_plus_age_in + def __init__(self, enfants_in: Callable[[Unit], (List[Enfant])], le_plus_age_in: Callable[[Unit], Enfant]) -> None: + self.enfants_in = enfants_in + self.le_plus_age_in = le_plus_age_in - def __eq__(self, other: object) -> bool: - if isinstance(other, EnfantLePlusAgeIn): - return (self.enfants_in == other.enfants_in and - self.le_plus_age_in == other.le_plus_age_in) - else: - return False + def __eq__(self, other: object) -> bool: + if isinstance(other, EnfantLePlusAgeIn): + return (self.enfants_in == other.enfants_in and + self.le_plus_age_in == other.le_plus_age_in) + else: + return False - def __ne__(self, other: object) -> bool: - return not (self == other) + def __ne__(self, other: object) -> bool: + return not (self == other) + + def __str__(self) -> str: + return "EnfantLePlusAgeIn(enfants_in={},le_plus_age_in={})".format(self.enfants_in, + self.le_plus_age_in) - def __str__(self) -> str: - return "EnfantLePlusAgeIn(enfants_in={},le_plus_age_in={})".format(self.enfants_in, - self.le_plus_age_in) class AllocationsFamilialesOut: - def __init__(self, personne_charge_effective_permanente_est_parent_out: bool, personne_charge_effective_permanente_remplit_titre_I_out: bool, ressources_menage_out: Money, residence_out: Collectivite, date_courante_out: Date, enfants_a_charge_out: List[Enfant], enfants_a_charge_droit_ouvert_prestation_familiale_out: List[Enfant], prise_en_compte_out: Callable[[Enfant], PriseEnCompte], versement_out: Callable[[Enfant], VersementAllocations], montant_verse_out: Money, droit_ouvert_base_out: bool, montant_initial_base_out: Money, montant_initial_base_premier_enfant_out: Money, montant_initial_base_deuxieme_enfant_out: Money, montant_initial_base_troisieme_enfant_et_plus_out: Money, rapport_enfants_total_moyen_out: Decimal, nombre_moyen_enfants_out: Decimal, nombre_total_enfants_out: Decimal, montant_avec_garde_alternee_base_out: Money, montant_verse_base_out: Money, avait_enfant_a_charge_avant_1er_janvier_2012_out: bool, montant_initial_base_premier_enfant_mayotte_out: Money, montant_initial_base_deuxieme_enfant_mayotte_out: Money, montant_initial_base_troisieme_enfant_mayotte_out: Money, montant_initial_base_quatrieme_enfant_et_plus_mayotte_out: Money, droit_ouvert_forfaitaire_out: Callable[[Enfant], bool], montant_verse_forfaitaire_par_enfant_out: Money, montant_verse_forfaitaire_out: Money, droit_ouvert_majoration_out: Callable[[Enfant], bool], montant_initial_metropole_majoration_out: Callable[[Enfant], Money], montant_initial_majoration_out: Callable[[Enfant], Money], montant_avec_garde_alternee_majoration_out: Callable[[Enfant], Money], montant_verse_majoration_out: Money, droit_ouvert_complement_out: bool, montant_base_complement_pour_base_et_majoration_out: Money, complement_degressif_out: Callable[[Money], Money], montant_verse_complement_pour_base_et_majoration_out: Money, montant_verse_complement_pour_forfaitaire_out: Money, nombre_enfants_l521_1_out: Integer, age_minimum_alinea_1_l521_3_out: Callable[[Enfant], Integer], nombre_enfants_alinea_2_l521_3_out: Integer, est_enfant_le_plus_age_out: Callable[[Enfant], bool], plafond_I_d521_3_out: Money, plafond_II_d521_3_out: Money) -> None: - self.personne_charge_effective_permanente_est_parent_out = personne_charge_effective_permanente_est_parent_out - self.personne_charge_effective_permanente_remplit_titre_I_out = personne_charge_effective_permanente_remplit_titre_I_out - self.ressources_menage_out = ressources_menage_out - self.residence_out = residence_out - self.date_courante_out = date_courante_out - self.enfants_a_charge_out = enfants_a_charge_out - self.enfants_a_charge_droit_ouvert_prestation_familiale_out = enfants_a_charge_droit_ouvert_prestation_familiale_out - self.prise_en_compte_out = prise_en_compte_out - self.versement_out = versement_out - self.montant_verse_out = montant_verse_out - self.droit_ouvert_base_out = droit_ouvert_base_out - self.montant_initial_base_out = montant_initial_base_out - self.montant_initial_base_premier_enfant_out = montant_initial_base_premier_enfant_out - self.montant_initial_base_deuxieme_enfant_out = montant_initial_base_deuxieme_enfant_out - self.montant_initial_base_troisieme_enfant_et_plus_out = montant_initial_base_troisieme_enfant_et_plus_out - self.rapport_enfants_total_moyen_out = rapport_enfants_total_moyen_out - self.nombre_moyen_enfants_out = nombre_moyen_enfants_out - self.nombre_total_enfants_out = nombre_total_enfants_out - self.montant_avec_garde_alternee_base_out = montant_avec_garde_alternee_base_out - self.montant_verse_base_out = montant_verse_base_out - self.avait_enfant_a_charge_avant_1er_janvier_2012_out = avait_enfant_a_charge_avant_1er_janvier_2012_out - self.montant_initial_base_premier_enfant_mayotte_out = montant_initial_base_premier_enfant_mayotte_out - self.montant_initial_base_deuxieme_enfant_mayotte_out = montant_initial_base_deuxieme_enfant_mayotte_out - self.montant_initial_base_troisieme_enfant_mayotte_out = montant_initial_base_troisieme_enfant_mayotte_out - self.montant_initial_base_quatrieme_enfant_et_plus_mayotte_out = montant_initial_base_quatrieme_enfant_et_plus_mayotte_out - self.droit_ouvert_forfaitaire_out = droit_ouvert_forfaitaire_out - self.montant_verse_forfaitaire_par_enfant_out = montant_verse_forfaitaire_par_enfant_out - self.montant_verse_forfaitaire_out = montant_verse_forfaitaire_out - self.droit_ouvert_majoration_out = droit_ouvert_majoration_out - self.montant_initial_metropole_majoration_out = montant_initial_metropole_majoration_out - self.montant_initial_majoration_out = montant_initial_majoration_out - self.montant_avec_garde_alternee_majoration_out = montant_avec_garde_alternee_majoration_out - self.montant_verse_majoration_out = montant_verse_majoration_out - self.droit_ouvert_complement_out = droit_ouvert_complement_out - self.montant_base_complement_pour_base_et_majoration_out = montant_base_complement_pour_base_et_majoration_out - self.complement_degressif_out = complement_degressif_out - self.montant_verse_complement_pour_base_et_majoration_out = montant_verse_complement_pour_base_et_majoration_out - self.montant_verse_complement_pour_forfaitaire_out = montant_verse_complement_pour_forfaitaire_out - self.nombre_enfants_l521_1_out = nombre_enfants_l521_1_out - self.age_minimum_alinea_1_l521_3_out = age_minimum_alinea_1_l521_3_out - self.nombre_enfants_alinea_2_l521_3_out = nombre_enfants_alinea_2_l521_3_out - self.est_enfant_le_plus_age_out = est_enfant_le_plus_age_out - self.plafond_I_d521_3_out = plafond_I_d521_3_out - self.plafond_II_d521_3_out = plafond_II_d521_3_out + def __init__(self, personne_charge_effective_permanente_est_parent_out: bool, personne_charge_effective_permanente_remplit_titre_I_out: bool, ressources_menage_out: Money, residence_out: Collectivite, date_courante_out: Date, enfants_a_charge_out: List[Enfant], enfants_a_charge_droit_ouvert_prestation_familiale_out: List[Enfant], prise_en_compte_out: Callable[[Enfant], PriseEnCompte], versement_out: Callable[[Enfant], VersementAllocations], montant_verse_out: Money, droit_ouvert_base_out: bool, montant_initial_base_out: Money, montant_initial_base_premier_enfant_out: Money, montant_initial_base_deuxieme_enfant_out: Money, montant_initial_base_troisieme_enfant_et_plus_out: Money, rapport_enfants_total_moyen_out: Decimal, nombre_moyen_enfants_out: Decimal, nombre_total_enfants_out: Decimal, montant_avec_garde_alternee_base_out: Money, montant_verse_base_out: Money, avait_enfant_a_charge_avant_1er_janvier_2012_out: bool, montant_initial_base_premier_enfant_mayotte_out: Money, montant_initial_base_deuxieme_enfant_mayotte_out: Money, montant_initial_base_troisieme_enfant_mayotte_out: Money, montant_initial_base_quatrieme_enfant_et_plus_mayotte_out: Money, droit_ouvert_forfaitaire_out: Callable[[Enfant], bool], montant_verse_forfaitaire_par_enfant_out: Money, montant_verse_forfaitaire_out: Money, droit_ouvert_majoration_out: Callable[[Enfant], bool], montant_initial_metropole_majoration_out: Callable[[Enfant], Money], montant_initial_majoration_out: Callable[[Enfant], Money], montant_avec_garde_alternee_majoration_out: Callable[[Enfant], Money], montant_verse_majoration_out: Money, droit_ouvert_complement_out: bool, montant_base_complement_pour_base_et_majoration_out: Money, complement_degressif_out: Callable[[Money], Money], montant_verse_complement_pour_base_et_majoration_out: Money, montant_verse_complement_pour_forfaitaire_out: Money, nombre_enfants_l521_1_out: Integer, age_minimum_alinea_1_l521_3_out: Callable[[Enfant], Integer], nombre_enfants_alinea_2_l521_3_out: Integer, est_enfant_le_plus_age_out: Callable[[Enfant], bool], plafond_I_d521_3_out: Money, plafond_II_d521_3_out: Money) -> None: + self.personne_charge_effective_permanente_est_parent_out = personne_charge_effective_permanente_est_parent_out + self.personne_charge_effective_permanente_remplit_titre_I_out = personne_charge_effective_permanente_remplit_titre_I_out + self.ressources_menage_out = ressources_menage_out + self.residence_out = residence_out + self.date_courante_out = date_courante_out + self.enfants_a_charge_out = enfants_a_charge_out + self.enfants_a_charge_droit_ouvert_prestation_familiale_out = enfants_a_charge_droit_ouvert_prestation_familiale_out + self.prise_en_compte_out = prise_en_compte_out + self.versement_out = versement_out + self.montant_verse_out = montant_verse_out + self.droit_ouvert_base_out = droit_ouvert_base_out + self.montant_initial_base_out = montant_initial_base_out + self.montant_initial_base_premier_enfant_out = montant_initial_base_premier_enfant_out + self.montant_initial_base_deuxieme_enfant_out = montant_initial_base_deuxieme_enfant_out + self.montant_initial_base_troisieme_enfant_et_plus_out = montant_initial_base_troisieme_enfant_et_plus_out + self.rapport_enfants_total_moyen_out = rapport_enfants_total_moyen_out + self.nombre_moyen_enfants_out = nombre_moyen_enfants_out + self.nombre_total_enfants_out = nombre_total_enfants_out + self.montant_avec_garde_alternee_base_out = montant_avec_garde_alternee_base_out + self.montant_verse_base_out = montant_verse_base_out + self.avait_enfant_a_charge_avant_1er_janvier_2012_out = avait_enfant_a_charge_avant_1er_janvier_2012_out + self.montant_initial_base_premier_enfant_mayotte_out = montant_initial_base_premier_enfant_mayotte_out + self.montant_initial_base_deuxieme_enfant_mayotte_out = montant_initial_base_deuxieme_enfant_mayotte_out + self.montant_initial_base_troisieme_enfant_mayotte_out = montant_initial_base_troisieme_enfant_mayotte_out + self.montant_initial_base_quatrieme_enfant_et_plus_mayotte_out = montant_initial_base_quatrieme_enfant_et_plus_mayotte_out + self.droit_ouvert_forfaitaire_out = droit_ouvert_forfaitaire_out + self.montant_verse_forfaitaire_par_enfant_out = montant_verse_forfaitaire_par_enfant_out + self.montant_verse_forfaitaire_out = montant_verse_forfaitaire_out + self.droit_ouvert_majoration_out = droit_ouvert_majoration_out + self.montant_initial_metropole_majoration_out = montant_initial_metropole_majoration_out + self.montant_initial_majoration_out = montant_initial_majoration_out + self.montant_avec_garde_alternee_majoration_out = montant_avec_garde_alternee_majoration_out + self.montant_verse_majoration_out = montant_verse_majoration_out + self.droit_ouvert_complement_out = droit_ouvert_complement_out + self.montant_base_complement_pour_base_et_majoration_out = montant_base_complement_pour_base_et_majoration_out + self.complement_degressif_out = complement_degressif_out + self.montant_verse_complement_pour_base_et_majoration_out = montant_verse_complement_pour_base_et_majoration_out + self.montant_verse_complement_pour_forfaitaire_out = montant_verse_complement_pour_forfaitaire_out + self.nombre_enfants_l521_1_out = nombre_enfants_l521_1_out + self.age_minimum_alinea_1_l521_3_out = age_minimum_alinea_1_l521_3_out + self.nombre_enfants_alinea_2_l521_3_out = nombre_enfants_alinea_2_l521_3_out + self.est_enfant_le_plus_age_out = est_enfant_le_plus_age_out + self.plafond_I_d521_3_out = plafond_I_d521_3_out + self.plafond_II_d521_3_out = plafond_II_d521_3_out - def __eq__(self, other: object) -> bool: - if isinstance(other, AllocationsFamilialesOut): - return (self.personne_charge_effective_permanente_est_parent_out == other.personne_charge_effective_permanente_est_parent_out and - self.personne_charge_effective_permanente_remplit_titre_I_out == other.personne_charge_effective_permanente_remplit_titre_I_out and - self.ressources_menage_out == other.ressources_menage_out and - self.residence_out == other.residence_out and - self.date_courante_out == other.date_courante_out and - self.enfants_a_charge_out == other.enfants_a_charge_out and - self.enfants_a_charge_droit_ouvert_prestation_familiale_out == other.enfants_a_charge_droit_ouvert_prestation_familiale_out and - self.prise_en_compte_out == other.prise_en_compte_out and - self.versement_out == other.versement_out and - self.montant_verse_out == other.montant_verse_out and - self.droit_ouvert_base_out == other.droit_ouvert_base_out and - self.montant_initial_base_out == other.montant_initial_base_out and - self.montant_initial_base_premier_enfant_out == other.montant_initial_base_premier_enfant_out and - self.montant_initial_base_deuxieme_enfant_out == other.montant_initial_base_deuxieme_enfant_out and - self.montant_initial_base_troisieme_enfant_et_plus_out == other.montant_initial_base_troisieme_enfant_et_plus_out and - self.rapport_enfants_total_moyen_out == other.rapport_enfants_total_moyen_out and - self.nombre_moyen_enfants_out == other.nombre_moyen_enfants_out and - self.nombre_total_enfants_out == other.nombre_total_enfants_out and - self.montant_avec_garde_alternee_base_out == other.montant_avec_garde_alternee_base_out and - self.montant_verse_base_out == other.montant_verse_base_out and - self.avait_enfant_a_charge_avant_1er_janvier_2012_out == other.avait_enfant_a_charge_avant_1er_janvier_2012_out and - self.montant_initial_base_premier_enfant_mayotte_out == other.montant_initial_base_premier_enfant_mayotte_out and - self.montant_initial_base_deuxieme_enfant_mayotte_out == other.montant_initial_base_deuxieme_enfant_mayotte_out and - self.montant_initial_base_troisieme_enfant_mayotte_out == other.montant_initial_base_troisieme_enfant_mayotte_out and - self.montant_initial_base_quatrieme_enfant_et_plus_mayotte_out == other.montant_initial_base_quatrieme_enfant_et_plus_mayotte_out and - self.droit_ouvert_forfaitaire_out == other.droit_ouvert_forfaitaire_out and - self.montant_verse_forfaitaire_par_enfant_out == other.montant_verse_forfaitaire_par_enfant_out and - self.montant_verse_forfaitaire_out == other.montant_verse_forfaitaire_out and - self.droit_ouvert_majoration_out == other.droit_ouvert_majoration_out and - self.montant_initial_metropole_majoration_out == other.montant_initial_metropole_majoration_out and - self.montant_initial_majoration_out == other.montant_initial_majoration_out and - self.montant_avec_garde_alternee_majoration_out == other.montant_avec_garde_alternee_majoration_out and - self.montant_verse_majoration_out == other.montant_verse_majoration_out and - self.droit_ouvert_complement_out == other.droit_ouvert_complement_out and - self.montant_base_complement_pour_base_et_majoration_out == other.montant_base_complement_pour_base_et_majoration_out and - self.complement_degressif_out == other.complement_degressif_out and - self.montant_verse_complement_pour_base_et_majoration_out == other.montant_verse_complement_pour_base_et_majoration_out and - self.montant_verse_complement_pour_forfaitaire_out == other.montant_verse_complement_pour_forfaitaire_out and - self.nombre_enfants_l521_1_out == other.nombre_enfants_l521_1_out and - self.age_minimum_alinea_1_l521_3_out == other.age_minimum_alinea_1_l521_3_out and - self.nombre_enfants_alinea_2_l521_3_out == other.nombre_enfants_alinea_2_l521_3_out and - self.est_enfant_le_plus_age_out == other.est_enfant_le_plus_age_out and - self.plafond_I_d521_3_out == other.plafond_I_d521_3_out and - self.plafond_II_d521_3_out == other.plafond_II_d521_3_out) - else: - return False + def __eq__(self, other: object) -> bool: + if isinstance(other, AllocationsFamilialesOut): + return (self.personne_charge_effective_permanente_est_parent_out == other.personne_charge_effective_permanente_est_parent_out and + self.personne_charge_effective_permanente_remplit_titre_I_out == other.personne_charge_effective_permanente_remplit_titre_I_out and + self.ressources_menage_out == other.ressources_menage_out and + self.residence_out == other.residence_out and + self.date_courante_out == other.date_courante_out and + self.enfants_a_charge_out == other.enfants_a_charge_out and + self.enfants_a_charge_droit_ouvert_prestation_familiale_out == other.enfants_a_charge_droit_ouvert_prestation_familiale_out and + self.prise_en_compte_out == other.prise_en_compte_out and + self.versement_out == other.versement_out and + self.montant_verse_out == other.montant_verse_out and + self.droit_ouvert_base_out == other.droit_ouvert_base_out and + self.montant_initial_base_out == other.montant_initial_base_out and + self.montant_initial_base_premier_enfant_out == other.montant_initial_base_premier_enfant_out and + self.montant_initial_base_deuxieme_enfant_out == other.montant_initial_base_deuxieme_enfant_out and + self.montant_initial_base_troisieme_enfant_et_plus_out == other.montant_initial_base_troisieme_enfant_et_plus_out and + self.rapport_enfants_total_moyen_out == other.rapport_enfants_total_moyen_out and + self.nombre_moyen_enfants_out == other.nombre_moyen_enfants_out and + self.nombre_total_enfants_out == other.nombre_total_enfants_out and + self.montant_avec_garde_alternee_base_out == other.montant_avec_garde_alternee_base_out and + self.montant_verse_base_out == other.montant_verse_base_out and + self.avait_enfant_a_charge_avant_1er_janvier_2012_out == other.avait_enfant_a_charge_avant_1er_janvier_2012_out and + self.montant_initial_base_premier_enfant_mayotte_out == other.montant_initial_base_premier_enfant_mayotte_out and + self.montant_initial_base_deuxieme_enfant_mayotte_out == other.montant_initial_base_deuxieme_enfant_mayotte_out and + self.montant_initial_base_troisieme_enfant_mayotte_out == other.montant_initial_base_troisieme_enfant_mayotte_out and + self.montant_initial_base_quatrieme_enfant_et_plus_mayotte_out == other.montant_initial_base_quatrieme_enfant_et_plus_mayotte_out and + self.droit_ouvert_forfaitaire_out == other.droit_ouvert_forfaitaire_out and + self.montant_verse_forfaitaire_par_enfant_out == other.montant_verse_forfaitaire_par_enfant_out and + self.montant_verse_forfaitaire_out == other.montant_verse_forfaitaire_out and + self.droit_ouvert_majoration_out == other.droit_ouvert_majoration_out and + self.montant_initial_metropole_majoration_out == other.montant_initial_metropole_majoration_out and + self.montant_initial_majoration_out == other.montant_initial_majoration_out and + self.montant_avec_garde_alternee_majoration_out == other.montant_avec_garde_alternee_majoration_out and + self.montant_verse_majoration_out == other.montant_verse_majoration_out and + self.droit_ouvert_complement_out == other.droit_ouvert_complement_out and + self.montant_base_complement_pour_base_et_majoration_out == other.montant_base_complement_pour_base_et_majoration_out and + self.complement_degressif_out == other.complement_degressif_out and + self.montant_verse_complement_pour_base_et_majoration_out == other.montant_verse_complement_pour_base_et_majoration_out and + self.montant_verse_complement_pour_forfaitaire_out == other.montant_verse_complement_pour_forfaitaire_out and + self.nombre_enfants_l521_1_out == other.nombre_enfants_l521_1_out and + self.age_minimum_alinea_1_l521_3_out == other.age_minimum_alinea_1_l521_3_out and + self.nombre_enfants_alinea_2_l521_3_out == other.nombre_enfants_alinea_2_l521_3_out and + self.est_enfant_le_plus_age_out == other.est_enfant_le_plus_age_out and + self.plafond_I_d521_3_out == other.plafond_I_d521_3_out and + self.plafond_II_d521_3_out == other.plafond_II_d521_3_out) + else: + return False - def __ne__(self, other: object) -> bool: - return not (self == other) + def __ne__(self, other: object) -> bool: + return not (self == other) + + def __str__(self) -> str: + return "AllocationsFamilialesOut(personne_charge_effective_permanente_est_parent_out={},personne_charge_effective_permanente_remplit_titre_I_out={},ressources_menage_out={},residence_out={},date_courante_out={},enfants_a_charge_out={},enfants_a_charge_droit_ouvert_prestation_familiale_out={},prise_en_compte_out={},versement_out={},montant_verse_out={},droit_ouvert_base_out={},montant_initial_base_out={},montant_initial_base_premier_enfant_out={},montant_initial_base_deuxieme_enfant_out={},montant_initial_base_troisieme_enfant_et_plus_out={},rapport_enfants_total_moyen_out={},nombre_moyen_enfants_out={},nombre_total_enfants_out={},montant_avec_garde_alternee_base_out={},montant_verse_base_out={},avait_enfant_a_charge_avant_1er_janvier_2012_out={},montant_initial_base_premier_enfant_mayotte_out={},montant_initial_base_deuxieme_enfant_mayotte_out={},montant_initial_base_troisieme_enfant_mayotte_out={},montant_initial_base_quatrieme_enfant_et_plus_mayotte_out={},droit_ouvert_forfaitaire_out={},montant_verse_forfaitaire_par_enfant_out={},montant_verse_forfaitaire_out={},droit_ouvert_majoration_out={},montant_initial_metropole_majoration_out={},montant_initial_majoration_out={},montant_avec_garde_alternee_majoration_out={},montant_verse_majoration_out={},droit_ouvert_complement_out={},montant_base_complement_pour_base_et_majoration_out={},complement_degressif_out={},montant_verse_complement_pour_base_et_majoration_out={},montant_verse_complement_pour_forfaitaire_out={},nombre_enfants_l521_1_out={},age_minimum_alinea_1_l521_3_out={},nombre_enfants_alinea_2_l521_3_out={},est_enfant_le_plus_age_out={},plafond_I_d521_3_out={},plafond_II_d521_3_out={})".format(self.personne_charge_effective_permanente_est_parent_out, + self.personne_charge_effective_permanente_remplit_titre_I_out, + self.ressources_menage_out, self.residence_out, self.date_courante_out, + self.enfants_a_charge_out, + self.enfants_a_charge_droit_ouvert_prestation_familiale_out, + self.prise_en_compte_out, self.versement_out, self.montant_verse_out, + self.droit_ouvert_base_out, self.montant_initial_base_out, + self.montant_initial_base_premier_enfant_out, + self.montant_initial_base_deuxieme_enfant_out, + self.montant_initial_base_troisieme_enfant_et_plus_out, + self.rapport_enfants_total_moyen_out, self.nombre_moyen_enfants_out, + self.nombre_total_enfants_out, + self.montant_avec_garde_alternee_base_out, self.montant_verse_base_out, + self.avait_enfant_a_charge_avant_1er_janvier_2012_out, + self.montant_initial_base_premier_enfant_mayotte_out, + self.montant_initial_base_deuxieme_enfant_mayotte_out, + self.montant_initial_base_troisieme_enfant_mayotte_out, + self.montant_initial_base_quatrieme_enfant_et_plus_mayotte_out, + self.droit_ouvert_forfaitaire_out, + self.montant_verse_forfaitaire_par_enfant_out, + self.montant_verse_forfaitaire_out, self.droit_ouvert_majoration_out, + self.montant_initial_metropole_majoration_out, + self.montant_initial_majoration_out, + self.montant_avec_garde_alternee_majoration_out, + self.montant_verse_majoration_out, self.droit_ouvert_complement_out, + self.montant_base_complement_pour_base_et_majoration_out, + self.complement_degressif_out, + self.montant_verse_complement_pour_base_et_majoration_out, + self.montant_verse_complement_pour_forfaitaire_out, + self.nombre_enfants_l521_1_out, self.age_minimum_alinea_1_l521_3_out, + self.nombre_enfants_alinea_2_l521_3_out, + self.est_enfant_le_plus_age_out, self.plafond_I_d521_3_out, + self.plafond_II_d521_3_out) - def __str__(self) -> str: - return "AllocationsFamilialesOut(personne_charge_effective_permanente_est_parent_out={},personne_charge_effective_permanente_remplit_titre_I_out={},ressources_menage_out={},residence_out={},date_courante_out={},enfants_a_charge_out={},enfants_a_charge_droit_ouvert_prestation_familiale_out={},prise_en_compte_out={},versement_out={},montant_verse_out={},droit_ouvert_base_out={},montant_initial_base_out={},montant_initial_base_premier_enfant_out={},montant_initial_base_deuxieme_enfant_out={},montant_initial_base_troisieme_enfant_et_plus_out={},rapport_enfants_total_moyen_out={},nombre_moyen_enfants_out={},nombre_total_enfants_out={},montant_avec_garde_alternee_base_out={},montant_verse_base_out={},avait_enfant_a_charge_avant_1er_janvier_2012_out={},montant_initial_base_premier_enfant_mayotte_out={},montant_initial_base_deuxieme_enfant_mayotte_out={},montant_initial_base_troisieme_enfant_mayotte_out={},montant_initial_base_quatrieme_enfant_et_plus_mayotte_out={},droit_ouvert_forfaitaire_out={},montant_verse_forfaitaire_par_enfant_out={},montant_verse_forfaitaire_out={},droit_ouvert_majoration_out={},montant_initial_metropole_majoration_out={},montant_initial_majoration_out={},montant_avec_garde_alternee_majoration_out={},montant_verse_majoration_out={},droit_ouvert_complement_out={},montant_base_complement_pour_base_et_majoration_out={},complement_degressif_out={},montant_verse_complement_pour_base_et_majoration_out={},montant_verse_complement_pour_forfaitaire_out={},nombre_enfants_l521_1_out={},age_minimum_alinea_1_l521_3_out={},nombre_enfants_alinea_2_l521_3_out={},est_enfant_le_plus_age_out={},plafond_I_d521_3_out={},plafond_II_d521_3_out={})".format(self.personne_charge_effective_permanente_est_parent_out, - self.personne_charge_effective_permanente_remplit_titre_I_out, - self.ressources_menage_out, self.residence_out, self.date_courante_out, - self.enfants_a_charge_out, - self.enfants_a_charge_droit_ouvert_prestation_familiale_out, - self.prise_en_compte_out, self.versement_out, self.montant_verse_out, - self.droit_ouvert_base_out, self.montant_initial_base_out, - self.montant_initial_base_premier_enfant_out, - self.montant_initial_base_deuxieme_enfant_out, - self.montant_initial_base_troisieme_enfant_et_plus_out, - self.rapport_enfants_total_moyen_out, self.nombre_moyen_enfants_out, - self.nombre_total_enfants_out, - self.montant_avec_garde_alternee_base_out, self.montant_verse_base_out, - self.avait_enfant_a_charge_avant_1er_janvier_2012_out, - self.montant_initial_base_premier_enfant_mayotte_out, - self.montant_initial_base_deuxieme_enfant_mayotte_out, - self.montant_initial_base_troisieme_enfant_mayotte_out, - self.montant_initial_base_quatrieme_enfant_et_plus_mayotte_out, - self.droit_ouvert_forfaitaire_out, - self.montant_verse_forfaitaire_par_enfant_out, - self.montant_verse_forfaitaire_out, self.droit_ouvert_majoration_out, - self.montant_initial_metropole_majoration_out, - self.montant_initial_majoration_out, - self.montant_avec_garde_alternee_majoration_out, - self.montant_verse_majoration_out, self.droit_ouvert_complement_out, - self.montant_base_complement_pour_base_et_majoration_out, - self.complement_degressif_out, - self.montant_verse_complement_pour_base_et_majoration_out, - self.montant_verse_complement_pour_forfaitaire_out, - self.nombre_enfants_l521_1_out, self.age_minimum_alinea_1_l521_3_out, - self.nombre_enfants_alinea_2_l521_3_out, - self.est_enfant_le_plus_age_out, self.plafond_I_d521_3_out, - self.plafond_II_d521_3_out) class AllocationsFamilialesIn: - def __init__(self, personne_charge_effective_permanente_est_parent_in: Callable[[Unit], bool], personne_charge_effective_permanente_remplit_titre_I_in: Callable[[Unit], bool], ressources_menage_in: Callable[[Unit], Money], residence_in: Callable[[Unit], Collectivite], date_courante_in: Callable[[Unit], Date], enfants_a_charge_in: Callable[[Unit], (List[Enfant])], enfants_a_charge_droit_ouvert_prestation_familiale_in: Callable[[Unit], (List[Enfant])], prise_en_compte_in: Callable[[Unit], (Callable[[Enfant], PriseEnCompte])], versement_in: Callable[[Unit], (Callable[[Enfant], VersementAllocations])], montant_verse_in: Callable[[Unit], Money], droit_ouvert_base_in: Callable[[Unit], bool], montant_initial_base_in: Callable[[Unit], Money], montant_initial_base_premier_enfant_in: Callable[[Unit], Money], montant_initial_base_deuxieme_enfant_in: Callable[[Unit], Money], montant_initial_base_troisieme_enfant_et_plus_in: Callable[[Unit], Money], rapport_enfants_total_moyen_in: Callable[[Unit], Decimal], nombre_moyen_enfants_in: Callable[[Unit], Decimal], nombre_total_enfants_in: Callable[[Unit], Decimal], montant_avec_garde_alternee_base_in: Callable[[Unit], Money], montant_verse_base_in: Callable[[Unit], Money], avait_enfant_a_charge_avant_1er_janvier_2012_in: Callable[[Unit], bool], montant_initial_base_premier_enfant_mayotte_in: Callable[[Unit], Money], montant_initial_base_deuxieme_enfant_mayotte_in: Callable[[Unit], Money], montant_initial_base_troisieme_enfant_mayotte_in: Callable[[Unit], Money], montant_initial_base_quatrieme_enfant_et_plus_mayotte_in: Callable[[Unit], Money], droit_ouvert_forfaitaire_in: Callable[[Unit], (Callable[[Enfant], bool])], montant_verse_forfaitaire_par_enfant_in: Callable[[Unit], Money], montant_verse_forfaitaire_in: Callable[[Unit], Money], droit_ouvert_majoration_in: Callable[[Unit], (Callable[[Enfant], bool])], montant_initial_metropole_majoration_in: Callable[[Unit], (Callable[[Enfant], Money])], montant_initial_majoration_in: Callable[[Unit], (Callable[[Enfant], Money])], montant_avec_garde_alternee_majoration_in: Callable[[Unit], (Callable[[Enfant], Money])], montant_verse_majoration_in: Callable[[Unit], Money], droit_ouvert_complement_in: Callable[[Unit], bool], montant_base_complement_pour_base_et_majoration_in: Callable[[Unit], Money], complement_degressif_in: Callable[[Unit], (Callable[[Money], Money])], montant_verse_complement_pour_base_et_majoration_in: Callable[[Unit], Money], montant_verse_complement_pour_forfaitaire_in: Callable[[Unit], Money], nombre_enfants_l521_1_in: Callable[[Unit], Integer], age_minimum_alinea_1_l521_3_in: Callable[[Unit], (Callable[[Enfant], Integer])], nombre_enfants_alinea_2_l521_3_in: Callable[[Unit], Integer], est_enfant_le_plus_age_in: Callable[[Unit], (Callable[[Enfant], bool])], plafond_I_d521_3_in: Callable[[Unit], Money], plafond_II_d521_3_in: Callable[[Unit], Money]) -> None: - self.personne_charge_effective_permanente_est_parent_in = personne_charge_effective_permanente_est_parent_in - self.personne_charge_effective_permanente_remplit_titre_I_in = personne_charge_effective_permanente_remplit_titre_I_in - self.ressources_menage_in = ressources_menage_in - self.residence_in = residence_in - self.date_courante_in = date_courante_in - self.enfants_a_charge_in = enfants_a_charge_in - self.enfants_a_charge_droit_ouvert_prestation_familiale_in = enfants_a_charge_droit_ouvert_prestation_familiale_in - self.prise_en_compte_in = prise_en_compte_in - self.versement_in = versement_in - self.montant_verse_in = montant_verse_in - self.droit_ouvert_base_in = droit_ouvert_base_in - self.montant_initial_base_in = montant_initial_base_in - self.montant_initial_base_premier_enfant_in = montant_initial_base_premier_enfant_in - self.montant_initial_base_deuxieme_enfant_in = montant_initial_base_deuxieme_enfant_in - self.montant_initial_base_troisieme_enfant_et_plus_in = montant_initial_base_troisieme_enfant_et_plus_in - self.rapport_enfants_total_moyen_in = rapport_enfants_total_moyen_in - self.nombre_moyen_enfants_in = nombre_moyen_enfants_in - self.nombre_total_enfants_in = nombre_total_enfants_in - self.montant_avec_garde_alternee_base_in = montant_avec_garde_alternee_base_in - self.montant_verse_base_in = montant_verse_base_in - self.avait_enfant_a_charge_avant_1er_janvier_2012_in = avait_enfant_a_charge_avant_1er_janvier_2012_in - self.montant_initial_base_premier_enfant_mayotte_in = montant_initial_base_premier_enfant_mayotte_in - self.montant_initial_base_deuxieme_enfant_mayotte_in = montant_initial_base_deuxieme_enfant_mayotte_in - self.montant_initial_base_troisieme_enfant_mayotte_in = montant_initial_base_troisieme_enfant_mayotte_in - self.montant_initial_base_quatrieme_enfant_et_plus_mayotte_in = montant_initial_base_quatrieme_enfant_et_plus_mayotte_in - self.droit_ouvert_forfaitaire_in = droit_ouvert_forfaitaire_in - self.montant_verse_forfaitaire_par_enfant_in = montant_verse_forfaitaire_par_enfant_in - self.montant_verse_forfaitaire_in = montant_verse_forfaitaire_in - self.droit_ouvert_majoration_in = droit_ouvert_majoration_in - self.montant_initial_metropole_majoration_in = montant_initial_metropole_majoration_in - self.montant_initial_majoration_in = montant_initial_majoration_in - self.montant_avec_garde_alternee_majoration_in = montant_avec_garde_alternee_majoration_in - self.montant_verse_majoration_in = montant_verse_majoration_in - self.droit_ouvert_complement_in = droit_ouvert_complement_in - self.montant_base_complement_pour_base_et_majoration_in = montant_base_complement_pour_base_et_majoration_in - self.complement_degressif_in = complement_degressif_in - self.montant_verse_complement_pour_base_et_majoration_in = montant_verse_complement_pour_base_et_majoration_in - self.montant_verse_complement_pour_forfaitaire_in = montant_verse_complement_pour_forfaitaire_in - self.nombre_enfants_l521_1_in = nombre_enfants_l521_1_in - self.age_minimum_alinea_1_l521_3_in = age_minimum_alinea_1_l521_3_in - self.nombre_enfants_alinea_2_l521_3_in = nombre_enfants_alinea_2_l521_3_in - self.est_enfant_le_plus_age_in = est_enfant_le_plus_age_in - self.plafond_I_d521_3_in = plafond_I_d521_3_in - self.plafond_II_d521_3_in = plafond_II_d521_3_in + def __init__(self, personne_charge_effective_permanente_est_parent_in: Callable[[Unit], bool], personne_charge_effective_permanente_remplit_titre_I_in: Callable[[Unit], bool], ressources_menage_in: Callable[[Unit], Money], residence_in: Callable[[Unit], Collectivite], date_courante_in: Callable[[Unit], Date], enfants_a_charge_in: Callable[[Unit], (List[Enfant])], enfants_a_charge_droit_ouvert_prestation_familiale_in: Callable[[Unit], (List[Enfant])], prise_en_compte_in: Callable[[Unit], (Callable[[Enfant], PriseEnCompte])], versement_in: Callable[[Unit], (Callable[[Enfant], VersementAllocations])], montant_verse_in: Callable[[Unit], Money], droit_ouvert_base_in: Callable[[Unit], bool], montant_initial_base_in: Callable[[Unit], Money], montant_initial_base_premier_enfant_in: Callable[[Unit], Money], montant_initial_base_deuxieme_enfant_in: Callable[[Unit], Money], montant_initial_base_troisieme_enfant_et_plus_in: Callable[[Unit], Money], rapport_enfants_total_moyen_in: Callable[[Unit], Decimal], nombre_moyen_enfants_in: Callable[[Unit], Decimal], nombre_total_enfants_in: Callable[[Unit], Decimal], montant_avec_garde_alternee_base_in: Callable[[Unit], Money], montant_verse_base_in: Callable[[Unit], Money], avait_enfant_a_charge_avant_1er_janvier_2012_in: Callable[[Unit], bool], montant_initial_base_premier_enfant_mayotte_in: Callable[[Unit], Money], montant_initial_base_deuxieme_enfant_mayotte_in: Callable[[Unit], Money], montant_initial_base_troisieme_enfant_mayotte_in: Callable[[Unit], Money], montant_initial_base_quatrieme_enfant_et_plus_mayotte_in: Callable[[Unit], Money], droit_ouvert_forfaitaire_in: Callable[[Unit], (Callable[[Enfant], bool])], montant_verse_forfaitaire_par_enfant_in: Callable[[Unit], Money], montant_verse_forfaitaire_in: Callable[[Unit], Money], droit_ouvert_majoration_in: Callable[[Unit], (Callable[[Enfant], bool])], montant_initial_metropole_majoration_in: Callable[[Unit], (Callable[[Enfant], Money])], montant_initial_majoration_in: Callable[[Unit], (Callable[[Enfant], Money])], montant_avec_garde_alternee_majoration_in: Callable[[Unit], (Callable[[Enfant], Money])], montant_verse_majoration_in: Callable[[Unit], Money], droit_ouvert_complement_in: Callable[[Unit], bool], montant_base_complement_pour_base_et_majoration_in: Callable[[Unit], Money], complement_degressif_in: Callable[[Unit], (Callable[[Money], Money])], montant_verse_complement_pour_base_et_majoration_in: Callable[[Unit], Money], montant_verse_complement_pour_forfaitaire_in: Callable[[Unit], Money], nombre_enfants_l521_1_in: Callable[[Unit], Integer], age_minimum_alinea_1_l521_3_in: Callable[[Unit], (Callable[[Enfant], Integer])], nombre_enfants_alinea_2_l521_3_in: Callable[[Unit], Integer], est_enfant_le_plus_age_in: Callable[[Unit], (Callable[[Enfant], bool])], plafond_I_d521_3_in: Callable[[Unit], Money], plafond_II_d521_3_in: Callable[[Unit], Money]) -> None: + self.personne_charge_effective_permanente_est_parent_in = personne_charge_effective_permanente_est_parent_in + self.personne_charge_effective_permanente_remplit_titre_I_in = personne_charge_effective_permanente_remplit_titre_I_in + self.ressources_menage_in = ressources_menage_in + self.residence_in = residence_in + self.date_courante_in = date_courante_in + self.enfants_a_charge_in = enfants_a_charge_in + self.enfants_a_charge_droit_ouvert_prestation_familiale_in = enfants_a_charge_droit_ouvert_prestation_familiale_in + self.prise_en_compte_in = prise_en_compte_in + self.versement_in = versement_in + self.montant_verse_in = montant_verse_in + self.droit_ouvert_base_in = droit_ouvert_base_in + self.montant_initial_base_in = montant_initial_base_in + self.montant_initial_base_premier_enfant_in = montant_initial_base_premier_enfant_in + self.montant_initial_base_deuxieme_enfant_in = montant_initial_base_deuxieme_enfant_in + self.montant_initial_base_troisieme_enfant_et_plus_in = montant_initial_base_troisieme_enfant_et_plus_in + self.rapport_enfants_total_moyen_in = rapport_enfants_total_moyen_in + self.nombre_moyen_enfants_in = nombre_moyen_enfants_in + self.nombre_total_enfants_in = nombre_total_enfants_in + self.montant_avec_garde_alternee_base_in = montant_avec_garde_alternee_base_in + self.montant_verse_base_in = montant_verse_base_in + self.avait_enfant_a_charge_avant_1er_janvier_2012_in = avait_enfant_a_charge_avant_1er_janvier_2012_in + self.montant_initial_base_premier_enfant_mayotte_in = montant_initial_base_premier_enfant_mayotte_in + self.montant_initial_base_deuxieme_enfant_mayotte_in = montant_initial_base_deuxieme_enfant_mayotte_in + self.montant_initial_base_troisieme_enfant_mayotte_in = montant_initial_base_troisieme_enfant_mayotte_in + self.montant_initial_base_quatrieme_enfant_et_plus_mayotte_in = montant_initial_base_quatrieme_enfant_et_plus_mayotte_in + self.droit_ouvert_forfaitaire_in = droit_ouvert_forfaitaire_in + self.montant_verse_forfaitaire_par_enfant_in = montant_verse_forfaitaire_par_enfant_in + self.montant_verse_forfaitaire_in = montant_verse_forfaitaire_in + self.droit_ouvert_majoration_in = droit_ouvert_majoration_in + self.montant_initial_metropole_majoration_in = montant_initial_metropole_majoration_in + self.montant_initial_majoration_in = montant_initial_majoration_in + self.montant_avec_garde_alternee_majoration_in = montant_avec_garde_alternee_majoration_in + self.montant_verse_majoration_in = montant_verse_majoration_in + self.droit_ouvert_complement_in = droit_ouvert_complement_in + self.montant_base_complement_pour_base_et_majoration_in = montant_base_complement_pour_base_et_majoration_in + self.complement_degressif_in = complement_degressif_in + self.montant_verse_complement_pour_base_et_majoration_in = montant_verse_complement_pour_base_et_majoration_in + self.montant_verse_complement_pour_forfaitaire_in = montant_verse_complement_pour_forfaitaire_in + self.nombre_enfants_l521_1_in = nombre_enfants_l521_1_in + self.age_minimum_alinea_1_l521_3_in = age_minimum_alinea_1_l521_3_in + self.nombre_enfants_alinea_2_l521_3_in = nombre_enfants_alinea_2_l521_3_in + self.est_enfant_le_plus_age_in = est_enfant_le_plus_age_in + self.plafond_I_d521_3_in = plafond_I_d521_3_in + self.plafond_II_d521_3_in = plafond_II_d521_3_in - def __eq__(self, other: object) -> bool: - if isinstance(other, AllocationsFamilialesIn): - return (self.personne_charge_effective_permanente_est_parent_in == other.personne_charge_effective_permanente_est_parent_in and - self.personne_charge_effective_permanente_remplit_titre_I_in == other.personne_charge_effective_permanente_remplit_titre_I_in and - self.ressources_menage_in == other.ressources_menage_in and - self.residence_in == other.residence_in and - self.date_courante_in == other.date_courante_in and - self.enfants_a_charge_in == other.enfants_a_charge_in and - self.enfants_a_charge_droit_ouvert_prestation_familiale_in == other.enfants_a_charge_droit_ouvert_prestation_familiale_in and - self.prise_en_compte_in == other.prise_en_compte_in and - self.versement_in == other.versement_in and - self.montant_verse_in == other.montant_verse_in and - self.droit_ouvert_base_in == other.droit_ouvert_base_in and - self.montant_initial_base_in == other.montant_initial_base_in and - self.montant_initial_base_premier_enfant_in == other.montant_initial_base_premier_enfant_in and - self.montant_initial_base_deuxieme_enfant_in == other.montant_initial_base_deuxieme_enfant_in and - self.montant_initial_base_troisieme_enfant_et_plus_in == other.montant_initial_base_troisieme_enfant_et_plus_in and - self.rapport_enfants_total_moyen_in == other.rapport_enfants_total_moyen_in and - self.nombre_moyen_enfants_in == other.nombre_moyen_enfants_in and - self.nombre_total_enfants_in == other.nombre_total_enfants_in and - self.montant_avec_garde_alternee_base_in == other.montant_avec_garde_alternee_base_in and - self.montant_verse_base_in == other.montant_verse_base_in and - self.avait_enfant_a_charge_avant_1er_janvier_2012_in == other.avait_enfant_a_charge_avant_1er_janvier_2012_in and - self.montant_initial_base_premier_enfant_mayotte_in == other.montant_initial_base_premier_enfant_mayotte_in and - self.montant_initial_base_deuxieme_enfant_mayotte_in == other.montant_initial_base_deuxieme_enfant_mayotte_in and - self.montant_initial_base_troisieme_enfant_mayotte_in == other.montant_initial_base_troisieme_enfant_mayotte_in and - self.montant_initial_base_quatrieme_enfant_et_plus_mayotte_in == other.montant_initial_base_quatrieme_enfant_et_plus_mayotte_in and - self.droit_ouvert_forfaitaire_in == other.droit_ouvert_forfaitaire_in and - self.montant_verse_forfaitaire_par_enfant_in == other.montant_verse_forfaitaire_par_enfant_in and - self.montant_verse_forfaitaire_in == other.montant_verse_forfaitaire_in and - self.droit_ouvert_majoration_in == other.droit_ouvert_majoration_in and - self.montant_initial_metropole_majoration_in == other.montant_initial_metropole_majoration_in and - self.montant_initial_majoration_in == other.montant_initial_majoration_in and - self.montant_avec_garde_alternee_majoration_in == other.montant_avec_garde_alternee_majoration_in and - self.montant_verse_majoration_in == other.montant_verse_majoration_in and - self.droit_ouvert_complement_in == other.droit_ouvert_complement_in and - self.montant_base_complement_pour_base_et_majoration_in == other.montant_base_complement_pour_base_et_majoration_in and - self.complement_degressif_in == other.complement_degressif_in and - self.montant_verse_complement_pour_base_et_majoration_in == other.montant_verse_complement_pour_base_et_majoration_in and - self.montant_verse_complement_pour_forfaitaire_in == other.montant_verse_complement_pour_forfaitaire_in and - self.nombre_enfants_l521_1_in == other.nombre_enfants_l521_1_in and - self.age_minimum_alinea_1_l521_3_in == other.age_minimum_alinea_1_l521_3_in and - self.nombre_enfants_alinea_2_l521_3_in == other.nombre_enfants_alinea_2_l521_3_in and - self.est_enfant_le_plus_age_in == other.est_enfant_le_plus_age_in and - self.plafond_I_d521_3_in == other.plafond_I_d521_3_in and - self.plafond_II_d521_3_in == other.plafond_II_d521_3_in) - else: - return False + def __eq__(self, other: object) -> bool: + if isinstance(other, AllocationsFamilialesIn): + return (self.personne_charge_effective_permanente_est_parent_in == other.personne_charge_effective_permanente_est_parent_in and + self.personne_charge_effective_permanente_remplit_titre_I_in == other.personne_charge_effective_permanente_remplit_titre_I_in and + self.ressources_menage_in == other.ressources_menage_in and + self.residence_in == other.residence_in and + self.date_courante_in == other.date_courante_in and + self.enfants_a_charge_in == other.enfants_a_charge_in and + self.enfants_a_charge_droit_ouvert_prestation_familiale_in == other.enfants_a_charge_droit_ouvert_prestation_familiale_in and + self.prise_en_compte_in == other.prise_en_compte_in and + self.versement_in == other.versement_in and + self.montant_verse_in == other.montant_verse_in and + self.droit_ouvert_base_in == other.droit_ouvert_base_in and + self.montant_initial_base_in == other.montant_initial_base_in and + self.montant_initial_base_premier_enfant_in == other.montant_initial_base_premier_enfant_in and + self.montant_initial_base_deuxieme_enfant_in == other.montant_initial_base_deuxieme_enfant_in and + self.montant_initial_base_troisieme_enfant_et_plus_in == other.montant_initial_base_troisieme_enfant_et_plus_in and + self.rapport_enfants_total_moyen_in == other.rapport_enfants_total_moyen_in and + self.nombre_moyen_enfants_in == other.nombre_moyen_enfants_in and + self.nombre_total_enfants_in == other.nombre_total_enfants_in and + self.montant_avec_garde_alternee_base_in == other.montant_avec_garde_alternee_base_in and + self.montant_verse_base_in == other.montant_verse_base_in and + self.avait_enfant_a_charge_avant_1er_janvier_2012_in == other.avait_enfant_a_charge_avant_1er_janvier_2012_in and + self.montant_initial_base_premier_enfant_mayotte_in == other.montant_initial_base_premier_enfant_mayotte_in and + self.montant_initial_base_deuxieme_enfant_mayotte_in == other.montant_initial_base_deuxieme_enfant_mayotte_in and + self.montant_initial_base_troisieme_enfant_mayotte_in == other.montant_initial_base_troisieme_enfant_mayotte_in and + self.montant_initial_base_quatrieme_enfant_et_plus_mayotte_in == other.montant_initial_base_quatrieme_enfant_et_plus_mayotte_in and + self.droit_ouvert_forfaitaire_in == other.droit_ouvert_forfaitaire_in and + self.montant_verse_forfaitaire_par_enfant_in == other.montant_verse_forfaitaire_par_enfant_in and + self.montant_verse_forfaitaire_in == other.montant_verse_forfaitaire_in and + self.droit_ouvert_majoration_in == other.droit_ouvert_majoration_in and + self.montant_initial_metropole_majoration_in == other.montant_initial_metropole_majoration_in and + self.montant_initial_majoration_in == other.montant_initial_majoration_in and + self.montant_avec_garde_alternee_majoration_in == other.montant_avec_garde_alternee_majoration_in and + self.montant_verse_majoration_in == other.montant_verse_majoration_in and + self.droit_ouvert_complement_in == other.droit_ouvert_complement_in and + self.montant_base_complement_pour_base_et_majoration_in == other.montant_base_complement_pour_base_et_majoration_in and + self.complement_degressif_in == other.complement_degressif_in and + self.montant_verse_complement_pour_base_et_majoration_in == other.montant_verse_complement_pour_base_et_majoration_in and + self.montant_verse_complement_pour_forfaitaire_in == other.montant_verse_complement_pour_forfaitaire_in and + self.nombre_enfants_l521_1_in == other.nombre_enfants_l521_1_in and + self.age_minimum_alinea_1_l521_3_in == other.age_minimum_alinea_1_l521_3_in and + self.nombre_enfants_alinea_2_l521_3_in == other.nombre_enfants_alinea_2_l521_3_in and + self.est_enfant_le_plus_age_in == other.est_enfant_le_plus_age_in and + self.plafond_I_d521_3_in == other.plafond_I_d521_3_in and + self.plafond_II_d521_3_in == other.plafond_II_d521_3_in) + else: + return False - def __ne__(self, other: object) -> bool: - return not (self == other) + def __ne__(self, other: object) -> bool: + return not (self == other) + + def __str__(self) -> str: + return "AllocationsFamilialesIn(personne_charge_effective_permanente_est_parent_in={},personne_charge_effective_permanente_remplit_titre_I_in={},ressources_menage_in={},residence_in={},date_courante_in={},enfants_a_charge_in={},enfants_a_charge_droit_ouvert_prestation_familiale_in={},prise_en_compte_in={},versement_in={},montant_verse_in={},droit_ouvert_base_in={},montant_initial_base_in={},montant_initial_base_premier_enfant_in={},montant_initial_base_deuxieme_enfant_in={},montant_initial_base_troisieme_enfant_et_plus_in={},rapport_enfants_total_moyen_in={},nombre_moyen_enfants_in={},nombre_total_enfants_in={},montant_avec_garde_alternee_base_in={},montant_verse_base_in={},avait_enfant_a_charge_avant_1er_janvier_2012_in={},montant_initial_base_premier_enfant_mayotte_in={},montant_initial_base_deuxieme_enfant_mayotte_in={},montant_initial_base_troisieme_enfant_mayotte_in={},montant_initial_base_quatrieme_enfant_et_plus_mayotte_in={},droit_ouvert_forfaitaire_in={},montant_verse_forfaitaire_par_enfant_in={},montant_verse_forfaitaire_in={},droit_ouvert_majoration_in={},montant_initial_metropole_majoration_in={},montant_initial_majoration_in={},montant_avec_garde_alternee_majoration_in={},montant_verse_majoration_in={},droit_ouvert_complement_in={},montant_base_complement_pour_base_et_majoration_in={},complement_degressif_in={},montant_verse_complement_pour_base_et_majoration_in={},montant_verse_complement_pour_forfaitaire_in={},nombre_enfants_l521_1_in={},age_minimum_alinea_1_l521_3_in={},nombre_enfants_alinea_2_l521_3_in={},est_enfant_le_plus_age_in={},plafond_I_d521_3_in={},plafond_II_d521_3_in={})".format(self.personne_charge_effective_permanente_est_parent_in, + self.personne_charge_effective_permanente_remplit_titre_I_in, + self.ressources_menage_in, self.residence_in, self.date_courante_in, + self.enfants_a_charge_in, + self.enfants_a_charge_droit_ouvert_prestation_familiale_in, + self.prise_en_compte_in, self.versement_in, self.montant_verse_in, + self.droit_ouvert_base_in, self.montant_initial_base_in, + self.montant_initial_base_premier_enfant_in, + self.montant_initial_base_deuxieme_enfant_in, + self.montant_initial_base_troisieme_enfant_et_plus_in, + self.rapport_enfants_total_moyen_in, self.nombre_moyen_enfants_in, + self.nombre_total_enfants_in, self.montant_avec_garde_alternee_base_in, + self.montant_verse_base_in, + self.avait_enfant_a_charge_avant_1er_janvier_2012_in, + self.montant_initial_base_premier_enfant_mayotte_in, + self.montant_initial_base_deuxieme_enfant_mayotte_in, + self.montant_initial_base_troisieme_enfant_mayotte_in, + self.montant_initial_base_quatrieme_enfant_et_plus_mayotte_in, + self.droit_ouvert_forfaitaire_in, + self.montant_verse_forfaitaire_par_enfant_in, + self.montant_verse_forfaitaire_in, self.droit_ouvert_majoration_in, + self.montant_initial_metropole_majoration_in, + self.montant_initial_majoration_in, + self.montant_avec_garde_alternee_majoration_in, + self.montant_verse_majoration_in, self.droit_ouvert_complement_in, + self.montant_base_complement_pour_base_et_majoration_in, + self.complement_degressif_in, + self.montant_verse_complement_pour_base_et_majoration_in, + self.montant_verse_complement_pour_forfaitaire_in, + self.nombre_enfants_l521_1_in, self.age_minimum_alinea_1_l521_3_in, + self.nombre_enfants_alinea_2_l521_3_in, self.est_enfant_le_plus_age_in, + self.plafond_I_d521_3_in, self.plafond_II_d521_3_in) - def __str__(self) -> str: - return "AllocationsFamilialesIn(personne_charge_effective_permanente_est_parent_in={},personne_charge_effective_permanente_remplit_titre_I_in={},ressources_menage_in={},residence_in={},date_courante_in={},enfants_a_charge_in={},enfants_a_charge_droit_ouvert_prestation_familiale_in={},prise_en_compte_in={},versement_in={},montant_verse_in={},droit_ouvert_base_in={},montant_initial_base_in={},montant_initial_base_premier_enfant_in={},montant_initial_base_deuxieme_enfant_in={},montant_initial_base_troisieme_enfant_et_plus_in={},rapport_enfants_total_moyen_in={},nombre_moyen_enfants_in={},nombre_total_enfants_in={},montant_avec_garde_alternee_base_in={},montant_verse_base_in={},avait_enfant_a_charge_avant_1er_janvier_2012_in={},montant_initial_base_premier_enfant_mayotte_in={},montant_initial_base_deuxieme_enfant_mayotte_in={},montant_initial_base_troisieme_enfant_mayotte_in={},montant_initial_base_quatrieme_enfant_et_plus_mayotte_in={},droit_ouvert_forfaitaire_in={},montant_verse_forfaitaire_par_enfant_in={},montant_verse_forfaitaire_in={},droit_ouvert_majoration_in={},montant_initial_metropole_majoration_in={},montant_initial_majoration_in={},montant_avec_garde_alternee_majoration_in={},montant_verse_majoration_in={},droit_ouvert_complement_in={},montant_base_complement_pour_base_et_majoration_in={},complement_degressif_in={},montant_verse_complement_pour_base_et_majoration_in={},montant_verse_complement_pour_forfaitaire_in={},nombre_enfants_l521_1_in={},age_minimum_alinea_1_l521_3_in={},nombre_enfants_alinea_2_l521_3_in={},est_enfant_le_plus_age_in={},plafond_I_d521_3_in={},plafond_II_d521_3_in={})".format(self.personne_charge_effective_permanente_est_parent_in, - self.personne_charge_effective_permanente_remplit_titre_I_in, - self.ressources_menage_in, self.residence_in, self.date_courante_in, - self.enfants_a_charge_in, - self.enfants_a_charge_droit_ouvert_prestation_familiale_in, - self.prise_en_compte_in, self.versement_in, self.montant_verse_in, - self.droit_ouvert_base_in, self.montant_initial_base_in, - self.montant_initial_base_premier_enfant_in, - self.montant_initial_base_deuxieme_enfant_in, - self.montant_initial_base_troisieme_enfant_et_plus_in, - self.rapport_enfants_total_moyen_in, self.nombre_moyen_enfants_in, - self.nombre_total_enfants_in, self.montant_avec_garde_alternee_base_in, - self.montant_verse_base_in, - self.avait_enfant_a_charge_avant_1er_janvier_2012_in, - self.montant_initial_base_premier_enfant_mayotte_in, - self.montant_initial_base_deuxieme_enfant_mayotte_in, - self.montant_initial_base_troisieme_enfant_mayotte_in, - self.montant_initial_base_quatrieme_enfant_et_plus_mayotte_in, - self.droit_ouvert_forfaitaire_in, - self.montant_verse_forfaitaire_par_enfant_in, - self.montant_verse_forfaitaire_in, self.droit_ouvert_majoration_in, - self.montant_initial_metropole_majoration_in, - self.montant_initial_majoration_in, - self.montant_avec_garde_alternee_majoration_in, - self.montant_verse_majoration_in, self.droit_ouvert_complement_in, - self.montant_base_complement_pour_base_et_majoration_in, - self.complement_degressif_in, - self.montant_verse_complement_pour_base_et_majoration_in, - self.montant_verse_complement_pour_forfaitaire_in, - self.nombre_enfants_l521_1_in, self.age_minimum_alinea_1_l521_3_in, - self.nombre_enfants_alinea_2_l521_3_in, self.est_enfant_le_plus_age_in, - self.plafond_I_d521_3_in, self.plafond_II_d521_3_in) class InterfaceAllocationsFamilialesOut: - def __init__(self, date_courante_out: Date, enfants_out: List[EnfantEntree], enfants_a_charge_out: List[Enfant], ressources_menage_out: Money, residence_out: Collectivite, montant_verse_out: Money, personne_charge_effective_permanente_est_parent_out: bool, personne_charge_effective_permanente_remplit_titre_I_out: bool, avait_enfant_a_charge_avant_1er_janvier_2012_out: bool) -> None: - self.date_courante_out = date_courante_out - self.enfants_out = enfants_out - self.enfants_a_charge_out = enfants_a_charge_out - self.ressources_menage_out = ressources_menage_out - self.residence_out = residence_out - self.montant_verse_out = montant_verse_out - self.personne_charge_effective_permanente_est_parent_out = personne_charge_effective_permanente_est_parent_out - self.personne_charge_effective_permanente_remplit_titre_I_out = personne_charge_effective_permanente_remplit_titre_I_out - self.avait_enfant_a_charge_avant_1er_janvier_2012_out = avait_enfant_a_charge_avant_1er_janvier_2012_out + def __init__(self, date_courante_out: Date, enfants_out: List[EnfantEntree], enfants_a_charge_out: List[Enfant], ressources_menage_out: Money, residence_out: Collectivite, montant_verse_out: Money, personne_charge_effective_permanente_est_parent_out: bool, personne_charge_effective_permanente_remplit_titre_I_out: bool, avait_enfant_a_charge_avant_1er_janvier_2012_out: bool) -> None: + self.date_courante_out = date_courante_out + self.enfants_out = enfants_out + self.enfants_a_charge_out = enfants_a_charge_out + self.ressources_menage_out = ressources_menage_out + self.residence_out = residence_out + self.montant_verse_out = montant_verse_out + self.personne_charge_effective_permanente_est_parent_out = personne_charge_effective_permanente_est_parent_out + self.personne_charge_effective_permanente_remplit_titre_I_out = personne_charge_effective_permanente_remplit_titre_I_out + self.avait_enfant_a_charge_avant_1er_janvier_2012_out = avait_enfant_a_charge_avant_1er_janvier_2012_out - def __eq__(self, other: object) -> bool: - if isinstance(other, InterfaceAllocationsFamilialesOut): - return (self.date_courante_out == other.date_courante_out and - self.enfants_out == other.enfants_out and - self.enfants_a_charge_out == other.enfants_a_charge_out and - self.ressources_menage_out == other.ressources_menage_out and - self.residence_out == other.residence_out and - self.montant_verse_out == other.montant_verse_out and - self.personne_charge_effective_permanente_est_parent_out == other.personne_charge_effective_permanente_est_parent_out and - self.personne_charge_effective_permanente_remplit_titre_I_out == other.personne_charge_effective_permanente_remplit_titre_I_out and - self.avait_enfant_a_charge_avant_1er_janvier_2012_out == other.avait_enfant_a_charge_avant_1er_janvier_2012_out) - else: - return False + def __eq__(self, other: object) -> bool: + if isinstance(other, InterfaceAllocationsFamilialesOut): + return (self.date_courante_out == other.date_courante_out and + self.enfants_out == other.enfants_out and + self.enfants_a_charge_out == other.enfants_a_charge_out and + self.ressources_menage_out == other.ressources_menage_out and + self.residence_out == other.residence_out and + self.montant_verse_out == other.montant_verse_out and + self.personne_charge_effective_permanente_est_parent_out == other.personne_charge_effective_permanente_est_parent_out and + self.personne_charge_effective_permanente_remplit_titre_I_out == other.personne_charge_effective_permanente_remplit_titre_I_out and + self.avait_enfant_a_charge_avant_1er_janvier_2012_out == other.avait_enfant_a_charge_avant_1er_janvier_2012_out) + else: + return False - def __ne__(self, other: object) -> bool: - return not (self == other) + def __ne__(self, other: object) -> bool: + return not (self == other) + + def __str__(self) -> str: + return "InterfaceAllocationsFamilialesOut(date_courante_out={},enfants_out={},enfants_a_charge_out={},ressources_menage_out={},residence_out={},montant_verse_out={},personne_charge_effective_permanente_est_parent_out={},personne_charge_effective_permanente_remplit_titre_I_out={},avait_enfant_a_charge_avant_1er_janvier_2012_out={})".format(self.date_courante_out, + self.enfants_out, self.enfants_a_charge_out, + self.ressources_menage_out, self.residence_out, self.montant_verse_out, + self.personne_charge_effective_permanente_est_parent_out, + self.personne_charge_effective_permanente_remplit_titre_I_out, + self.avait_enfant_a_charge_avant_1er_janvier_2012_out) - def __str__(self) -> str: - return "InterfaceAllocationsFamilialesOut(date_courante_out={},enfants_out={},enfants_a_charge_out={},ressources_menage_out={},residence_out={},montant_verse_out={},personne_charge_effective_permanente_est_parent_out={},personne_charge_effective_permanente_remplit_titre_I_out={},avait_enfant_a_charge_avant_1er_janvier_2012_out={})".format(self.date_courante_out, - self.enfants_out, self.enfants_a_charge_out, - self.ressources_menage_out, self.residence_out, self.montant_verse_out, - self.personne_charge_effective_permanente_est_parent_out, - self.personne_charge_effective_permanente_remplit_titre_I_out, - self.avait_enfant_a_charge_avant_1er_janvier_2012_out) class InterfaceAllocationsFamilialesIn: - def __init__(self, date_courante_in: Callable[[Unit], Date], enfants_in: Callable[[Unit], (List[EnfantEntree])], enfants_a_charge_in: Callable[[Unit], (List[Enfant])], ressources_menage_in: Callable[[Unit], Money], residence_in: Callable[[Unit], Collectivite], montant_verse_in: Callable[[Unit], Money], personne_charge_effective_permanente_est_parent_in: Callable[[Unit], bool], personne_charge_effective_permanente_remplit_titre_I_in: Callable[[Unit], bool], avait_enfant_a_charge_avant_1er_janvier_2012_in: Callable[[Unit], bool]) -> None: - self.date_courante_in = date_courante_in - self.enfants_in = enfants_in - self.enfants_a_charge_in = enfants_a_charge_in - self.ressources_menage_in = ressources_menage_in - self.residence_in = residence_in - self.montant_verse_in = montant_verse_in - self.personne_charge_effective_permanente_est_parent_in = personne_charge_effective_permanente_est_parent_in - self.personne_charge_effective_permanente_remplit_titre_I_in = personne_charge_effective_permanente_remplit_titre_I_in - self.avait_enfant_a_charge_avant_1er_janvier_2012_in = avait_enfant_a_charge_avant_1er_janvier_2012_in + def __init__(self, date_courante_in: Callable[[Unit], Date], enfants_in: Callable[[Unit], (List[EnfantEntree])], enfants_a_charge_in: Callable[[Unit], (List[Enfant])], ressources_menage_in: Callable[[Unit], Money], residence_in: Callable[[Unit], Collectivite], montant_verse_in: Callable[[Unit], Money], personne_charge_effective_permanente_est_parent_in: Callable[[Unit], bool], personne_charge_effective_permanente_remplit_titre_I_in: Callable[[Unit], bool], avait_enfant_a_charge_avant_1er_janvier_2012_in: Callable[[Unit], bool]) -> None: + self.date_courante_in = date_courante_in + self.enfants_in = enfants_in + self.enfants_a_charge_in = enfants_a_charge_in + self.ressources_menage_in = ressources_menage_in + self.residence_in = residence_in + self.montant_verse_in = montant_verse_in + self.personne_charge_effective_permanente_est_parent_in = personne_charge_effective_permanente_est_parent_in + self.personne_charge_effective_permanente_remplit_titre_I_in = personne_charge_effective_permanente_remplit_titre_I_in + self.avait_enfant_a_charge_avant_1er_janvier_2012_in = avait_enfant_a_charge_avant_1er_janvier_2012_in - def __eq__(self, other: object) -> bool: - if isinstance(other, InterfaceAllocationsFamilialesIn): - return (self.date_courante_in == other.date_courante_in and - self.enfants_in == other.enfants_in and - self.enfants_a_charge_in == other.enfants_a_charge_in and - self.ressources_menage_in == other.ressources_menage_in and - self.residence_in == other.residence_in and - self.montant_verse_in == other.montant_verse_in and - self.personne_charge_effective_permanente_est_parent_in == other.personne_charge_effective_permanente_est_parent_in and - self.personne_charge_effective_permanente_remplit_titre_I_in == other.personne_charge_effective_permanente_remplit_titre_I_in and - self.avait_enfant_a_charge_avant_1er_janvier_2012_in == other.avait_enfant_a_charge_avant_1er_janvier_2012_in) - else: - return False + def __eq__(self, other: object) -> bool: + if isinstance(other, InterfaceAllocationsFamilialesIn): + return (self.date_courante_in == other.date_courante_in and + self.enfants_in == other.enfants_in and + self.enfants_a_charge_in == other.enfants_a_charge_in and + self.ressources_menage_in == other.ressources_menage_in and + self.residence_in == other.residence_in and + self.montant_verse_in == other.montant_verse_in and + self.personne_charge_effective_permanente_est_parent_in == other.personne_charge_effective_permanente_est_parent_in and + self.personne_charge_effective_permanente_remplit_titre_I_in == other.personne_charge_effective_permanente_remplit_titre_I_in and + self.avait_enfant_a_charge_avant_1er_janvier_2012_in == other.avait_enfant_a_charge_avant_1er_janvier_2012_in) + else: + return False - def __ne__(self, other: object) -> bool: - return not (self == other) + def __ne__(self, other: object) -> bool: + return not (self == other) - def __str__(self) -> str: - return "InterfaceAllocationsFamilialesIn(date_courante_in={},enfants_in={},enfants_a_charge_in={},ressources_menage_in={},residence_in={},montant_verse_in={},personne_charge_effective_permanente_est_parent_in={},personne_charge_effective_permanente_remplit_titre_I_in={},avait_enfant_a_charge_avant_1er_janvier_2012_in={})".format(self.date_courante_in, - self.enfants_in, self.enfants_a_charge_in, self.ressources_menage_in, - self.residence_in, self.montant_verse_in, - self.personne_charge_effective_permanente_est_parent_in, - self.personne_charge_effective_permanente_remplit_titre_I_in, - self.avait_enfant_a_charge_avant_1er_janvier_2012_in) + def __str__(self) -> str: + return "InterfaceAllocationsFamilialesIn(date_courante_in={},enfants_in={},enfants_a_charge_in={},ressources_menage_in={},residence_in={},montant_verse_in={},personne_charge_effective_permanente_est_parent_in={},personne_charge_effective_permanente_remplit_titre_I_in={},avait_enfant_a_charge_avant_1er_janvier_2012_in={})".format(self.date_courante_in, + self.enfants_in, self.enfants_a_charge_in, self.ressources_menage_in, + self.residence_in, self.montant_verse_in, + self.personne_charge_effective_permanente_est_parent_in, + self.personne_charge_effective_permanente_remplit_titre_I_in, + self.avait_enfant_a_charge_avant_1er_janvier_2012_in) - -def smic(smic_in_1:SmicIn): +def smic(smic_in_1: SmicIn): date_courante_2 = smic_in_1.date_courante_in residence_3 = smic_in_1.residence_in brut_horaire_4 = smic_in_1.brut_horaire_in @@ -753,1584 +766,1912 @@ def smic(smic_in_1:SmicIn): try: local_var_6 = date_courante_2(Unit()) except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), False): - raise EmptyError - else: + def local_var_7(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_9(_: Any): raise EmptyError + local_var_6 = handle_default([], local_var_7, local_var_9) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=41, start_column=12, end_line=41, end_column=25, - law_headings=["Prologue"])) + start_line=41, start_column=12, end_line=41, end_column=25, + law_headings=["Prologue"])) date_courante_5 = log_variable_definition(["Smic", "date_courante"], - local_var_6) + local_var_6) try: try: - local_var_8 = residence_3(Unit()) + local_var_12 = residence_3(Unit()) except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), False): - raise EmptyError - else: + def local_var_13(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_15(_: Any): raise EmptyError + local_var_12 = handle_default([], local_var_13, local_var_15) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=42, start_column=12, end_line=42, end_column=21, - law_headings=["Prologue"])) - residence_7 = log_variable_definition(["Smic", "résidence"], - local_var_8) + start_line=42, start_column=12, end_line=42, end_column=21, + law_headings=["Prologue"])) + residence_11 = log_variable_definition(["Smic", "résidence"], + local_var_12) try: try: - local_var_10 = brut_horaire_4(Unit()) + local_var_18 = brut_horaire_4(Unit()) except EmptyError: - def local_var_21(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=219, start_column=5, - end_line=228, end_column=6, law_headings=["Article 1", - "Décret n° 2018-1173 du 19 décembre 2018 portant relèvement du salaire minimum de croissance", - "Montant du salaire minimum de croissance", - "Décrets divers"]), ((date_courante_5 >= - date_of_numbers(2019,1,1)) and ((date_courante_5 <= - date_of_numbers(2019,12,31)) and ((residence_7 == - Collectivite(Collectivite_Code.Metropole, Unit())) or - ((residence_7 == - Collectivite(Collectivite_Code.Guadeloupe, Unit())) or - ((residence_7 == Collectivite(Collectivite_Code.Guyane, - Unit())) or ((residence_7 == - Collectivite(Collectivite_Code.Martinique, Unit())) or - ((residence_7 == - Collectivite(Collectivite_Code.LaReunion, Unit())) or - ((residence_7 == - Collectivite(Collectivite_Code.SaintBarthelemy, - Unit())) or ((residence_7 == - Collectivite(Collectivite_Code.SaintMartin, Unit())) or - (residence_7 == - Collectivite(Collectivite_Code.SaintPierreEtMiquelon, - Unit())))))))))))): + def local_var_49(_: Any): + def local_var_51(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=219, start_column=5, + end_line=228, end_column=6, + law_headings=["Article 1", + "Décret n° 2018-1173 du 19 décembre 2018 portant relèvement du salaire minimum de croissance", + "Montant du salaire minimum de croissance", + "Décrets divers"]), ((date_courante_5 >= + date_of_numbers(2019, 1, 1)) and ((date_courante_5 <= + date_of_numbers(2019, 12, 31)) and ((residence_11 == + Collectivite(Collectivite_Code.Metropole, Unit())) or + ((residence_11 == + Collectivite(Collectivite_Code.Guadeloupe, + Unit())) or ((residence_11 == + Collectivite(Collectivite_Code.Guyane, Unit())) or + ((residence_11 == + Collectivite(Collectivite_Code.Martinique, + Unit())) or ((residence_11 == + Collectivite(Collectivite_Code.LaReunion, Unit())) or + ((residence_11 == + Collectivite(Collectivite_Code.SaintBarthelemy, + Unit())) or ((residence_11 == + Collectivite(Collectivite_Code.SaintMartin, + Unit())) or (residence_11 == + Collectivite(Collectivite_Code.SaintPierreEtMiquelon, + Unit())))))))))))) + + def local_var_53(_: Any): return money_of_cents_string("1003") - else: - raise EmptyError - def local_var_19(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=237, start_column=5, - end_line=239, end_column=6, law_headings=["Article 1", - "Décret n° 2018-1173 du 19 décembre 2018 portant relèvement du salaire minimum de croissance", - "Montant du salaire minimum de croissance", - "Décrets divers"]), ((date_courante_5 >= - date_of_numbers(2019,1,1)) and ((date_courante_5 <= - date_of_numbers(2019,12,31)) and (residence_7 == - Collectivite(Collectivite_Code.Mayotte, - Unit()))))): + return handle_default([], local_var_51, local_var_53) + + def local_var_43(_: Any): + def local_var_45(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=237, start_column=5, + end_line=239, end_column=6, + law_headings=["Article 1", + "Décret n° 2018-1173 du 19 décembre 2018 portant relèvement du salaire minimum de croissance", + "Montant du salaire minimum de croissance", + "Décrets divers"]), ((date_courante_5 >= + date_of_numbers(2019, 1, 1)) and ((date_courante_5 <= + date_of_numbers(2019, 12, 31)) and (residence_11 == + Collectivite(Collectivite_Code.Mayotte, Unit()))))) + + def local_var_47(_: Any): return money_of_cents_string("757") - else: - raise EmptyError - def local_var_17(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=258, start_column=5, - end_line=267, end_column=6, law_headings=["Article 1", - "Décret n° 2019-1387 du 18 décembre 2019 portant relèvement du salaire minimum de croissance", - "Montant du salaire minimum de croissance", - "Décrets divers"]), ((date_courante_5 >= - date_of_numbers(2020,1,1)) and ((date_courante_5 <= - date_of_numbers(2020,12,31)) and ((residence_7 == - Collectivite(Collectivite_Code.Metropole, Unit())) or - ((residence_7 == - Collectivite(Collectivite_Code.Guadeloupe, Unit())) or - ((residence_7 == Collectivite(Collectivite_Code.Guyane, - Unit())) or ((residence_7 == - Collectivite(Collectivite_Code.Martinique, Unit())) or - ((residence_7 == - Collectivite(Collectivite_Code.LaReunion, Unit())) or - ((residence_7 == - Collectivite(Collectivite_Code.SaintBarthelemy, - Unit())) or ((residence_7 == - Collectivite(Collectivite_Code.SaintMartin, Unit())) or - (residence_7 == - Collectivite(Collectivite_Code.SaintPierreEtMiquelon, - Unit())))))))))))): + return handle_default([], local_var_45, local_var_47) + + def local_var_37(_: Any): + def local_var_39(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=258, start_column=5, + end_line=267, end_column=6, + law_headings=["Article 1", + "Décret n° 2019-1387 du 18 décembre 2019 portant relèvement du salaire minimum de croissance", + "Montant du salaire minimum de croissance", + "Décrets divers"]), ((date_courante_5 >= + date_of_numbers(2020, 1, 1)) and ((date_courante_5 <= + date_of_numbers(2020, 12, 31)) and ((residence_11 == + Collectivite(Collectivite_Code.Metropole, Unit())) or + ((residence_11 == + Collectivite(Collectivite_Code.Guadeloupe, + Unit())) or ((residence_11 == + Collectivite(Collectivite_Code.Guyane, Unit())) or + ((residence_11 == + Collectivite(Collectivite_Code.Martinique, + Unit())) or ((residence_11 == + Collectivite(Collectivite_Code.LaReunion, Unit())) or + ((residence_11 == + Collectivite(Collectivite_Code.SaintBarthelemy, + Unit())) or ((residence_11 == + Collectivite(Collectivite_Code.SaintMartin, + Unit())) or (residence_11 == + Collectivite(Collectivite_Code.SaintPierreEtMiquelon, + Unit())))))))))))) + + def local_var_41(_: Any): return money_of_cents_string("1015") - else: - raise EmptyError - def local_var_15(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=276, start_column=5, - end_line=278, end_column=6, law_headings=["Article 1", - "Décret n° 2019-1387 du 18 décembre 2019 portant relèvement du salaire minimum de croissance", - "Montant du salaire minimum de croissance", - "Décrets divers"]), ((date_courante_5 >= - date_of_numbers(2020,1,1)) and ((date_courante_5 <= - date_of_numbers(2020,12,31)) and (residence_7 == - Collectivite(Collectivite_Code.Mayotte, - Unit()))))): + return handle_default([], local_var_39, local_var_41) + + def local_var_31(_: Any): + def local_var_33(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=276, start_column=5, + end_line=278, end_column=6, + law_headings=["Article 1", + "Décret n° 2019-1387 du 18 décembre 2019 portant relèvement du salaire minimum de croissance", + "Montant du salaire minimum de croissance", + "Décrets divers"]), ((date_courante_5 >= + date_of_numbers(2020, 1, 1)) and ((date_courante_5 <= + date_of_numbers(2020, 12, 31)) and (residence_11 == + Collectivite(Collectivite_Code.Mayotte, Unit()))))) + + def local_var_35(_: Any): return money_of_cents_string("766") - else: - raise EmptyError - def local_var_13(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=297, start_column=5, - end_line=306, end_column=6, law_headings=["Article 1", - "Décret n° 2020-1598 du 16 décembre 2020 portant relèvement du salaire minimum de croissance", - "Montant du salaire minimum de croissance", - "Décrets divers"]), ((date_courante_5 >= - date_of_numbers(2021,1,1)) and ((date_courante_5 <= - date_of_numbers(2021,12,31)) and ((residence_7 == - Collectivite(Collectivite_Code.Metropole, Unit())) or - ((residence_7 == - Collectivite(Collectivite_Code.Guadeloupe, Unit())) or - ((residence_7 == Collectivite(Collectivite_Code.Guyane, - Unit())) or ((residence_7 == - Collectivite(Collectivite_Code.Martinique, Unit())) or - ((residence_7 == - Collectivite(Collectivite_Code.LaReunion, Unit())) or - ((residence_7 == - Collectivite(Collectivite_Code.SaintBarthelemy, - Unit())) or ((residence_7 == - Collectivite(Collectivite_Code.SaintMartin, Unit())) or - (residence_7 == - Collectivite(Collectivite_Code.SaintPierreEtMiquelon, - Unit())))))))))))): + return handle_default([], local_var_33, local_var_35) + + def local_var_25(_: Any): + def local_var_27(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=297, start_column=5, + end_line=306, end_column=6, + law_headings=["Article 1", + "Décret n° 2020-1598 du 16 décembre 2020 portant relèvement du salaire minimum de croissance", + "Montant du salaire minimum de croissance", + "Décrets divers"]), ((date_courante_5 >= + date_of_numbers(2021, 1, 1)) and ((date_courante_5 <= + date_of_numbers(2021, 12, 31)) and ((residence_11 == + Collectivite(Collectivite_Code.Metropole, Unit())) or + ((residence_11 == + Collectivite(Collectivite_Code.Guadeloupe, + Unit())) or ((residence_11 == + Collectivite(Collectivite_Code.Guyane, Unit())) or + ((residence_11 == + Collectivite(Collectivite_Code.Martinique, + Unit())) or ((residence_11 == + Collectivite(Collectivite_Code.LaReunion, Unit())) or + ((residence_11 == + Collectivite(Collectivite_Code.SaintBarthelemy, + Unit())) or ((residence_11 == + Collectivite(Collectivite_Code.SaintMartin, + Unit())) or (residence_11 == + Collectivite(Collectivite_Code.SaintPierreEtMiquelon, + Unit())))))))))))) + + def local_var_29(_: Any): return money_of_cents_string("1025") - else: - raise EmptyError - def local_var_11(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=315, start_column=5, - end_line=317, end_column=6, law_headings=["Article 1", - "Décret n° 2020-1598 du 16 décembre 2020 portant relèvement du salaire minimum de croissance", - "Montant du salaire minimum de croissance", - "Décrets divers"]), ((date_courante_5 >= - date_of_numbers(2021,1,1)) and ((date_courante_5 <= - date_of_numbers(2021,12,31)) and (residence_7 == - Collectivite(Collectivite_Code.Mayotte, - Unit()))))): + return handle_default([], local_var_27, local_var_29) + + def local_var_19(_: Any): + def local_var_21(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=315, start_column=5, + end_line=317, end_column=6, + law_headings=["Article 1", + "Décret n° 2020-1598 du 16 décembre 2020 portant relèvement du salaire minimum de croissance", + "Montant du salaire minimum de croissance", + "Décrets divers"]), ((date_courante_5 >= + date_of_numbers(2021, 1, 1)) and ((date_courante_5 <= + date_of_numbers(2021, 12, 31)) and (residence_11 == + Collectivite(Collectivite_Code.Mayotte, Unit()))))) + + def local_var_23(_: Any): return money_of_cents_string("774") - else: - raise EmptyError - def local_var_23(_:Any): + return handle_default([], local_var_21, local_var_23) + + def local_var_55(_: Any): return log_decision_taken(SourcePosition(filename="", - start_line=0, start_column=1, end_line=0, end_column=1, - law_headings=[]), False) - def local_var_25(_:Any): + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_57(_: Any): raise EmptyError - local_var_10 = handle_default([local_var_11, local_var_13, - local_var_15, local_var_17, local_var_19, local_var_21], - local_var_23, local_var_25) + local_var_18 = handle_default([local_var_19, local_var_25, + local_var_31, local_var_37, local_var_43, local_var_49], + local_var_55, local_var_57) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=43, start_column=12, end_line=43, end_column=24, - law_headings=["Prologue"])) - brut_horaire_9 = log_variable_definition(["Smic", "brut_horaire"], - local_var_10) - return SmicOut(date_courante_out = date_courante_5, - residence_out = residence_7, brut_horaire_out = brut_horaire_9) + start_line=43, start_column=12, end_line=43, end_column=24, + law_headings=["Prologue"])) + brut_horaire_17 = log_variable_definition(["Smic", "brut_horaire"], + local_var_18) + return SmicOut(date_courante_out=date_courante_5, + residence_out=residence_11, brut_horaire_out=brut_horaire_17) -def allocation_familiales_avril2008(allocation_familiales_avril2008_in_27:AllocationFamilialesAvril2008In): - age_minimum_alinea_1_l521_3_28 = allocation_familiales_avril2008_in_27.age_minimum_alinea_1_l521_3_in + +def allocation_familiales_avril2008(allocation_familiales_avril2008_in_59: AllocationFamilialesAvril2008In): + age_minimum_alinea_1_l521_3_60 = allocation_familiales_avril2008_in_59.age_minimum_alinea_1_l521_3_in try: try: - local_var_30 = age_minimum_alinea_1_l521_3_28(Unit()) + local_var_62 = age_minimum_alinea_1_l521_3_60(Unit()) except EmptyError: try: - local_var_30 = integer_of_string("16") + def local_var_63(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_R.catala_fr", + start_line=78, start_column=14, + end_line=78, end_column=41, + law_headings=["Article R521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets en Conseil d'Etat", + "Code de la sécurité sociale"]), True) + + def local_var_65(_: Any): + return integer_of_string("16") + local_var_62 = handle_default([], local_var_63, local_var_65) except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=81, start_column=12, end_line=81, end_column=39, - law_headings=["Prologue"])) - age_minimum_alinea_1_l521_3_29 = log_variable_definition(["AllocationFamilialesAvril2008", - "âge_minimum_alinéa_1_l521_3"], local_var_30) - return AllocationFamilialesAvril2008Out(age_minimum_alinea_1_l521_3_out = age_minimum_alinea_1_l521_3_29) + start_line=81, start_column=12, end_line=81, end_column=39, + law_headings=["Prologue"])) + age_minimum_alinea_1_l521_3_61 = log_variable_definition(["AllocationFamilialesAvril2008", + "âge_minimum_alinéa_1_l521_3"], local_var_62) + return AllocationFamilialesAvril2008Out(age_minimum_alinea_1_l521_3_out=age_minimum_alinea_1_l521_3_61) -def enfant_le_plus_age(enfant_le_plus_age_in_31:EnfantLePlusAgeIn): - enfants_32 = enfant_le_plus_age_in_31.enfants_in - le_plus_age_33 = enfant_le_plus_age_in_31.le_plus_age_in + +def enfant_le_plus_age(enfant_le_plus_age_in_67: EnfantLePlusAgeIn): + enfants_68 = enfant_le_plus_age_in_67.enfants_in + le_plus_age_69 = enfant_le_plus_age_in_67.le_plus_age_in try: try: - local_var_35 = enfants_32(Unit()) + local_var_71 = enfants_68(Unit()) except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), False): - raise EmptyError - else: + def local_var_72(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_74(_: Any): raise EmptyError + local_var_71 = handle_default([], local_var_72, local_var_74) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=84, start_column=12, end_line=84, end_column=19, - law_headings=["Prologue"])) - enfants_34 = log_variable_definition(["EnfantLePlusÂgé", "enfants"], - local_var_35) + start_line=84, start_column=12, end_line=84, end_column=19, + law_headings=["Prologue"])) + enfants_70 = log_variable_definition(["EnfantLePlusÂgé", "enfants"], + local_var_71) try: try: - local_var_37 = le_plus_age_33(Unit()) + local_var_77 = le_plus_age_69(Unit()) except EmptyError: try: - def local_var_39(potentiel_plus_age_40:Any): - return potentiel_plus_age_40.age - predicate_38 = local_var_39 - def local_var_41(acc_42:Any, item_43:Any): - if (predicate_38(acc_42) > - predicate_38(item_43)): - return acc_42 - else: - return item_43 - local_var_37 = list_fold_left(local_var_41, - Enfant(identifiant = - integer_of_string("1"), - obligation_scolaire = SituationObligationScolaire(SituationObligationScolaire_Code.Pendant, - Unit()), - remuneration_mensuelle = money_of_cents_string("0"), - date_de_naissance = date_of_numbers(1900,1,1), - age = integer_of_string("0"), - prise_en_charge = PriseEnCharge(PriseEnCharge_Code.EffectiveEtPermanente, - Unit()), - a_deja_ouvert_droit_aux_allocations_familiales = False), - enfants_34) + def local_var_78(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=12, start_column=14, + end_line=12, end_column=25, + law_headings=["Règles diverses", "Épilogue", + "Décrets divers"]), True) + + def local_var_80(_: Any): + def local_var_83(potentiel_plus_age_84: Any): + return potentiel_plus_age_84.age + predicate_82 = local_var_83 + + def local_var_85(acc_86: Any, item_87: Any): + if (predicate_82(acc_86) > + predicate_82(item_87)): + return acc_86 + else: + return item_87 + return list_fold_left(local_var_85, + Enfant(identifiant=- integer_of_string("1"), + obligation_scolaire=SituationObligationScolaire(SituationObligationScolaire_Code.Pendant, + Unit()), + remuneration_mensuelle=money_of_cents_string( + "0"), + date_de_naissance=date_of_numbers( + 1900, 1, 1), + age=integer_of_string("0"), + prise_en_charge=PriseEnCharge(PriseEnCharge_Code.EffectiveEtPermanente, + Unit()), + a_deja_ouvert_droit_aux_allocations_familiales=False), + enfants_70) + local_var_77 = handle_default([], local_var_78, local_var_80) except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=85, start_column=12, end_line=85, end_column=23, - law_headings=["Prologue"])) - le_plus_age_36 = log_variable_definition(["EnfantLePlusÂgé", - "le_plus_âgé"], local_var_37) - return EnfantLePlusAgeOut(enfants_out = enfants_34, - le_plus_age_out = le_plus_age_36) + start_line=85, start_column=12, end_line=85, end_column=23, + law_headings=["Prologue"])) + le_plus_age_76 = log_variable_definition(["EnfantLePlusÂgé", + "le_plus_âgé"], local_var_77) + return EnfantLePlusAgeOut(enfants_out=enfants_70, + le_plus_age_out=le_plus_age_76) -def prestations_familiales(prestations_familiales_in_44:PrestationsFamilialesIn): - droit_ouvert_45 = prestations_familiales_in_44.droit_ouvert_in - conditions_hors_age_46 = prestations_familiales_in_44.conditions_hors_age_in - plafond_l512_3_2_47 = prestations_familiales_in_44.plafond_l512_3_2_in - age_l512_3_2_48 = prestations_familiales_in_44.age_l512_3_2_in - regime_outre_mer_l751_1_49 = prestations_familiales_in_44.regime_outre_mer_l751_1_in - date_courante_50 = prestations_familiales_in_44.date_courante_in - prestation_courante_51 = prestations_familiales_in_44.prestation_courante_in - residence_52 = prestations_familiales_in_44.residence_in - base_mensuelle_53 = prestations_familiales_in_44.base_mensuelle_in + +def prestations_familiales(prestations_familiales_in_88: PrestationsFamilialesIn): + droit_ouvert_89 = prestations_familiales_in_88.droit_ouvert_in + conditions_hors_age_90 = prestations_familiales_in_88.conditions_hors_age_in + plafond_l512_3_2_91 = prestations_familiales_in_88.plafond_l512_3_2_in + age_l512_3_2_92 = prestations_familiales_in_88.age_l512_3_2_in + regime_outre_mer_l751_1_93 = prestations_familiales_in_88.regime_outre_mer_l751_1_in + date_courante_94 = prestations_familiales_in_88.date_courante_in + prestation_courante_95 = prestations_familiales_in_88.prestation_courante_in + residence_96 = prestations_familiales_in_88.residence_in + base_mensuelle_97 = prestations_familiales_in_88.base_mensuelle_in try: try: - local_var_55 = age_l512_3_2_48(Unit()) + local_var_99 = age_l512_3_2_92(Unit()) except EmptyError: try: - local_var_55 = integer_of_string("20") + def local_var_100(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_R.catala_fr", + start_line=21, start_column=14, + end_line=21, end_column=26, + law_headings=["Article R512-2", + "Chapitre 2 : Champ d'application.", + "Titre 1 : Champ d'application - Généralités", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets en Conseil d'Etat", + "Code de la sécurité sociale"]), True) + + def local_var_102(_: Any): + return integer_of_string("20") + local_var_99 = handle_default([], local_var_100, + local_var_102) except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=68, start_column=12, end_line=68, end_column=24, - law_headings=["Prologue"])) - age_l512_3_2_54 = log_variable_definition(["PrestationsFamiliales", - "âge_l512_3_2"], local_var_55) + start_line=68, start_column=12, end_line=68, end_column=24, + law_headings=["Prologue"])) + age_l512_3_2_98 = log_variable_definition(["PrestationsFamiliales", + "âge_l512_3_2"], local_var_99) try: try: - local_var_57 = date_courante_50(Unit()) + local_var_105 = date_courante_94(Unit()) except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), False): - raise EmptyError - else: + def local_var_106(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_108(_: Any): raise EmptyError + local_var_105 = handle_default([], local_var_106, local_var_108) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=70, start_column=12, end_line=70, end_column=25, - law_headings=["Prologue"])) - date_courante_56 = log_variable_definition(["PrestationsFamiliales", - "date_courante"], local_var_57) + start_line=70, start_column=12, end_line=70, end_column=25, + law_headings=["Prologue"])) + date_courante_104 = log_variable_definition(["PrestationsFamiliales", + "date_courante"], local_var_105) try: try: - local_var_59 = prestation_courante_51(Unit()) + local_var_111 = prestation_courante_95(Unit()) except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), False): - raise EmptyError - else: + def local_var_112(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_114(_: Any): raise EmptyError + local_var_111 = handle_default([], local_var_112, local_var_114) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=71, start_column=12, end_line=71, end_column=31, - law_headings=["Prologue"])) - prestation_courante_58 = log_variable_definition(["PrestationsFamiliales", - "prestation_courante"], local_var_59) + start_line=71, start_column=12, end_line=71, end_column=31, + law_headings=["Prologue"])) + prestation_courante_110 = log_variable_definition(["PrestationsFamiliales", + "prestation_courante"], local_var_111) try: try: - local_var_61 = residence_52(Unit()) + local_var_117 = residence_96(Unit()) except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), False): - raise EmptyError - else: + def local_var_118(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_120(_: Any): raise EmptyError + local_var_117 = handle_default([], local_var_118, local_var_120) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=72, start_column=12, end_line=72, end_column=21, - law_headings=["Prologue"])) - residence_60 = log_variable_definition(["PrestationsFamiliales", - "résidence"], local_var_61) + start_line=72, start_column=12, end_line=72, end_column=21, + law_headings=["Prologue"])) + residence_116 = log_variable_definition(["PrestationsFamiliales", + "résidence"], local_var_117) try: try: - local_var_63 = base_mensuelle_53(Unit()) + local_var_123 = base_mensuelle_97(Unit()) except EmptyError: - def local_var_68(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=24, start_column=5, - end_line=25, end_column=34, - law_headings=["Instruction ministérielle N°DSS/SD2B/2019/65 du 25 mars 2019 relative à la revalorisation au 1er avril 2019 des prestations familiales servies en métropole", - "Montant de la base mensuelle des allocations familiales", - "Décrets divers"]), ((date_courante_56 >= - date_of_numbers(2019,4,1)) and (date_courante_56 < - date_of_numbers(2020,4,1)))): + def local_var_136(_: Any): + def local_var_138(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=24, start_column=5, + end_line=25, end_column=34, + law_headings=["Instruction ministérielle N°DSS/SD2B/2019/65 du 25 mars 2019 relative à la revalorisation au 1er avril 2019 des prestations familiales servies en métropole", + "Montant de la base mensuelle des allocations familiales", + "Décrets divers"]), ((date_courante_104 >= + date_of_numbers(2019, 4, 1)) and (date_courante_104 < + date_of_numbers(2020, 4, 1)))) + + def local_var_140(_: Any): return money_of_cents_string("41316") - else: - raise EmptyError - def local_var_66(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=44, start_column=5, - end_line=45, end_column=34, - law_headings=["Instruction interministérielle no DSS/SD2B/2020/33 du 18 février 2020 relative à la revalorisation au 1er avril 2020 des prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à La Réunion, à Saint-Barthélemy, à Saint-Martin et dans le département de Mayotte", - "Montant de la base mensuelle des allocations familiales", - "Décrets divers"]), ((date_courante_56 >= - date_of_numbers(2020,4,1)) and (date_courante_56 < - date_of_numbers(2021,4,1)))): + return handle_default([], local_var_138, local_var_140) + + def local_var_130(_: Any): + def local_var_132(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=44, start_column=5, + end_line=45, end_column=34, + law_headings=["Instruction interministérielle no DSS/SD2B/2020/33 du 18 février 2020 relative à la revalorisation au 1er avril 2020 des prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à La Réunion, à Saint-Barthélemy, à Saint-Martin et dans le département de Mayotte", + "Montant de la base mensuelle des allocations familiales", + "Décrets divers"]), ((date_courante_104 >= + date_of_numbers(2020, 4, 1)) and (date_courante_104 < + date_of_numbers(2021, 4, 1)))) + + def local_var_134(_: Any): return money_of_cents_string("41404") - else: - raise EmptyError - def local_var_64(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=60, start_column=5, - end_line=61, end_column=34, - law_headings=["Instruction interministérielle n°DSS/2B/2021/65 du 19 mars 2021 relative à la revalorisation au 1er avril 2021 des prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à la Réunion, à Saint-Barthélemy, à Saint-Martin et dans le département de Mayotte", - "Montant de la base mensuelle des allocations familiales", - "Décrets divers"]), ((date_courante_56 >= - date_of_numbers(2021,4,1)) and (date_courante_56 < - date_of_numbers(2022,4,1)))): + return handle_default([], local_var_132, local_var_134) + + def local_var_124(_: Any): + def local_var_126(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=60, start_column=5, + end_line=61, end_column=34, + law_headings=["Instruction interministérielle n°DSS/2B/2021/65 du 19 mars 2021 relative à la revalorisation au 1er avril 2021 des prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à la Réunion, à Saint-Barthélemy, à Saint-Martin et dans le département de Mayotte", + "Montant de la base mensuelle des allocations familiales", + "Décrets divers"]), ((date_courante_104 >= + date_of_numbers(2021, 4, 1)) and (date_courante_104 < + date_of_numbers(2022, 4, 1)))) + + def local_var_128(_: Any): return money_of_cents_string("41481") - else: - raise EmptyError - def local_var_70(_:Any): + return handle_default([], local_var_126, local_var_128) + + def local_var_142(_: Any): return log_decision_taken(SourcePosition(filename="", - start_line=0, start_column=1, end_line=0, end_column=1, - law_headings=[]), False) - def local_var_72(_:Any): + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_144(_: Any): raise EmptyError - local_var_63 = handle_default([local_var_64, local_var_66, - local_var_68], local_var_70, local_var_72) + local_var_123 = handle_default([local_var_124, local_var_130, + local_var_136], local_var_142, local_var_144) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=74, start_column=12, end_line=74, end_column=26, - law_headings=["Prologue"])) - base_mensuelle_62 = log_variable_definition(["PrestationsFamiliales", - "base_mensuelle"], local_var_63) - def local_var_75(_:Unit): + start_line=74, start_column=12, end_line=74, end_column=26, + law_headings=["Prologue"])) + base_mensuelle_122 = log_variable_definition(["PrestationsFamiliales", + "base_mensuelle"], local_var_123) + + def local_var_147(_: Unit): try: - local_var_77 = date_courante_56 + def local_var_150(_: Any): + return log_decision_taken(SourcePosition(filename="./prologue.catala_fr", + start_line=78, start_column=14, + end_line=78, end_column=32, + law_headings=["Prologue"]), True) + + def local_var_152(_: Any): + return date_courante_104 + local_var_149 = handle_default([], local_var_150, local_var_152) except EmptyError: raise EmptyError return log_variable_definition(["PrestationsFamiliales", - "smic.date_courante"], local_var_77) - smic_dot_date_courante_74 = local_var_75 - def local_var_79(_:Unit): + "smic.date_courante"], local_var_149) + smic_dot_date_courante_146 = local_var_147 + + def local_var_155(_: Unit): try: - local_var_81 = residence_60 + def local_var_158(_: Any): + return log_decision_taken(SourcePosition(filename="./prologue.catala_fr", + start_line=77, start_column=14, + end_line=77, end_column=28, + law_headings=["Prologue"]), True) + + def local_var_160(_: Any): + return residence_116 + local_var_157 = handle_default([], local_var_158, local_var_160) except EmptyError: raise EmptyError return log_variable_definition(["PrestationsFamiliales", - "smic.résidence"], local_var_81) - smic_dot_residence_78 = local_var_79 - def local_var_83(_:Unit): + "smic.résidence"], local_var_157) + smic_dot_residence_154 = local_var_155 + + def local_var_163(_: Unit): raise EmptyError - result_82 = log_end_call(["PrestationsFamiliales", "smic", "Smic"], - log_begin_call(["PrestationsFamiliales", "smic", "Smic"], smic, - SmicIn(date_courante_in = smic_dot_date_courante_74, - residence_in = smic_dot_residence_78, - brut_horaire_in = local_var_83))) - smic_dot_date_courante_85 = result_82.date_courante_out - smic_dot_residence_86 = result_82.residence_out - smic_dot_brut_horaire_87 = result_82.brut_horaire_out + result_162 = log_end_call(["PrestationsFamiliales", "smic", "Smic"], + log_begin_call(["PrestationsFamiliales", "smic", "Smic"], smic, + SmicIn(date_courante_in=smic_dot_date_courante_146, + residence_in=smic_dot_residence_154, + brut_horaire_in=local_var_163))) + smic_dot_date_courante_165 = result_162.date_courante_out + smic_dot_residence_166 = result_162.residence_out + smic_dot_brut_horaire_167 = result_162.brut_horaire_out try: try: - local_var_89 = regime_outre_mer_l751_1_49(Unit()) + local_var_169 = regime_outre_mer_l751_1_93(Unit()) except EmptyError: try: - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=354, start_column=5, - end_line=359, end_column=30, - law_headings=["Article L751-1", - "Chapitre 1er : Généralités", - "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, à la Martinique, à La Réunion, à Saint-Barthélemy et à Saint-Martin", - "Livre 7 : Régimes divers - Dispositions diverses", - "Partie législative", - "Code de la sécurité sociale"]), ((residence_60 == - Collectivite(Collectivite_Code.Guadeloupe, Unit())) or - ((residence_60 == Collectivite(Collectivite_Code.Guyane, - Unit())) or ((residence_60 == - Collectivite(Collectivite_Code.Martinique, Unit())) or - ((residence_60 == - Collectivite(Collectivite_Code.LaReunion, Unit())) or - ((residence_60 == - Collectivite(Collectivite_Code.SaintBarthelemy, - Unit())) or (residence_60 == - Collectivite(Collectivite_Code.SaintMartin, - Unit())))))))): - local_var_89 = True - else: - raise EmptyError + def local_var_170(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=354, start_column=5, + end_line=359, end_column=30, + law_headings=["Article L751-1", + "Chapitre 1er : Généralités", + "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, à la Martinique, à La Réunion, à Saint-Barthélemy et à Saint-Martin", + "Livre 7 : Régimes divers - Dispositions diverses", + "Partie législative", + "Code de la sécurité sociale"]), ((residence_116 == + Collectivite(Collectivite_Code.Guadeloupe, + Unit())) or ((residence_116 == + Collectivite(Collectivite_Code.Guyane, Unit())) or + ((residence_116 == + Collectivite(Collectivite_Code.Martinique, + Unit())) or ((residence_116 == + Collectivite(Collectivite_Code.LaReunion, Unit())) or + ((residence_116 == + Collectivite(Collectivite_Code.SaintBarthelemy, + Unit())) or (residence_116 == + Collectivite(Collectivite_Code.SaintMartin, + Unit())))))))) + + def local_var_172(_: Any): + return True + local_var_169 = handle_default([], local_var_170, + local_var_172) except EmptyError: - local_var_89 = False + local_var_169 = False except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=69, start_column=12, end_line=69, end_column=35, - law_headings=["Prologue"])) - regime_outre_mer_l751_1_88 = log_variable_definition(["PrestationsFamiliales", - "régime_outre_mer_l751_1"], local_var_89) + start_line=69, start_column=12, end_line=69, end_column=35, + law_headings=["Prologue"])) + regime_outre_mer_l751_1_168 = log_variable_definition(["PrestationsFamiliales", + "régime_outre_mer_l751_1"], local_var_169) try: try: - local_var_91 = plafond_l512_3_2_47(Unit()) + local_var_175 = plafond_l512_3_2_91(Unit()) except EmptyError: try: try: - if log_decision_taken(SourcePosition(filename="./securite_sociale_R.catala_fr", - start_line=216, start_column=18, - end_line=216, end_column=41, - law_headings=["Article R755-0-2", - "Chapitre 5 : Prestations familiales et prestations assimilées", - "Titre 5 : Départements d'outre-mer", - "Livre 7 : Régimes divers - Dispositions diverses", - "Partie réglementaire - Décrets en Conseil d'Etat", - "Code de la sécurité sociale"]), regime_outre_mer_l751_1_88): - local_var_91 = ((smic_dot_brut_horaire_87 * - decimal_of_string("0.55")) * - decimal_of_string("169.")) - else: - raise EmptyError + def local_var_176(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_R.catala_fr", + start_line=216, start_column=18, + end_line=216, end_column=41, + law_headings=["Article R755-0-2", + "Chapitre 5 : Prestations familiales et prestations assimilées", + "Titre 5 : Départements d'outre-mer", + "Livre 7 : Régimes divers - Dispositions diverses", + "Partie réglementaire - Décrets en Conseil d'Etat", + "Code de la sécurité sociale"]), regime_outre_mer_l751_1_168) + + def local_var_178(_: Any): + return ((smic_dot_brut_horaire_167 * + decimal_of_string("0.55")) * + decimal_of_string("169.")) + local_var_175 = handle_default([], local_var_176, + local_var_178) except EmptyError: - local_var_91 = ((smic_dot_brut_horaire_87 * - decimal_of_string("0.55")) * - decimal_of_string("169.")) + local_var_175 = ((smic_dot_brut_horaire_167 * + decimal_of_string("0.55")) * + decimal_of_string("169.")) except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=67, start_column=12, end_line=67, end_column=28, - law_headings=["Prologue"])) - plafond_l512_3_2_90 = log_variable_definition(["PrestationsFamiliales", - "plafond_l512_3_2"], local_var_91) + start_line=67, start_column=12, end_line=67, end_column=28, + law_headings=["Prologue"])) + plafond_l512_3_2_174 = log_variable_definition(["PrestationsFamiliales", + "plafond_l512_3_2"], local_var_175) try: try: - local_var_93 = conditions_hors_age_46(Unit()) + local_var_181 = conditions_hors_age_90(Unit()) except EmptyError: - def local_var_93(param_94:Enfant): + def local_var_181(param_182: Enfant): try: try: - match_arg_785 = param_94.obligation_scolaire - if match_arg_785.code == SituationObligationScolaire_Code.Avant: - _ = match_arg_785.value - local_var_99 = False - elif match_arg_785.code == SituationObligationScolaire_Code.Pendant: - _ = match_arg_785.value - local_var_99 = True - elif match_arg_785.code == SituationObligationScolaire_Code.Apres: - _ = match_arg_785.value - local_var_99 = False - match_arg_786 = param_94.obligation_scolaire - if match_arg_786.code == SituationObligationScolaire_Code.Avant: - _ = match_arg_786.value - local_var_103 = False - elif match_arg_786.code == SituationObligationScolaire_Code.Pendant: - _ = match_arg_786.value - local_var_103 = False - elif match_arg_786.code == SituationObligationScolaire_Code.Apres: - _ = match_arg_786.value - local_var_103 = True - match_arg_787 = param_94.obligation_scolaire - if match_arg_787.code == SituationObligationScolaire_Code.Avant: - _ = match_arg_787.value - local_var_95 = True - elif match_arg_787.code == SituationObligationScolaire_Code.Pendant: - _ = match_arg_787.value - local_var_95 = False - elif match_arg_787.code == SituationObligationScolaire_Code.Apres: - _ = match_arg_787.value - local_var_95 = False - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=68, start_column=5, - end_line=71, end_column=57, - law_headings=["Article L512-3", - "Chapitre 2 : Champ d'application", - "Titre 1 : Champ d'application - Généralités", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), (local_var_95 or - (local_var_99 or (local_var_103 and - (param_94.remuneration_mensuelle <= - plafond_l512_3_2_90))))): + def local_var_183(_: Any): + match_arg_1365 = param_182.obligation_scolaire + if match_arg_1365.code == SituationObligationScolaire_Code.Avant: + _ = match_arg_1365.value + local_var_185 = True + elif match_arg_1365.code == SituationObligationScolaire_Code.Pendant: + _ = match_arg_1365.value + local_var_185 = False + elif match_arg_1365.code == SituationObligationScolaire_Code.Apres: + _ = match_arg_1365.value + local_var_185 = False + match_arg_1366 = param_182.obligation_scolaire + if match_arg_1366.code == SituationObligationScolaire_Code.Avant: + _ = match_arg_1366.value + local_var_193 = False + elif match_arg_1366.code == SituationObligationScolaire_Code.Pendant: + _ = match_arg_1366.value + local_var_193 = False + elif match_arg_1366.code == SituationObligationScolaire_Code.Apres: + _ = match_arg_1366.value + local_var_193 = True + match_arg_1367 = param_182.obligation_scolaire + if match_arg_1367.code == SituationObligationScolaire_Code.Avant: + _ = match_arg_1367.value + local_var_189 = False + elif match_arg_1367.code == SituationObligationScolaire_Code.Pendant: + _ = match_arg_1367.value + local_var_189 = True + elif match_arg_1367.code == SituationObligationScolaire_Code.Apres: + _ = match_arg_1367.value + local_var_189 = False + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=68, start_column=5, + end_line=71, end_column=57, + law_headings=["Article L512-3", + "Chapitre 2 : Champ d'application", + "Titre 1 : Champ d'application - Généralités", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), ((local_var_185 or + (local_var_189 or local_var_193)) and + (param_182.remuneration_mensuelle <= + plafond_l512_3_2_174))) + + def local_var_197(_: Any): return True - else: - raise EmptyError + return handle_default([], local_var_183, + local_var_197) except EmptyError: return False except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=66, start_column=12, end_line=66, - end_column=31, law_headings=["Prologue"])) + start_line=66, start_column=12, end_line=66, + end_column=31, law_headings=["Prologue"])) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=66, start_column=12, end_line=66, end_column=31, - law_headings=["Prologue"])) - conditions_hors_age_92 = log_variable_definition(["PrestationsFamiliales", - "conditions_hors_âge"], local_var_93) + start_line=66, start_column=12, end_line=66, end_column=31, + law_headings=["Prologue"])) + conditions_hors_age_180 = log_variable_definition(["PrestationsFamiliales", + "conditions_hors_âge"], local_var_181) try: try: - local_var_108 = droit_ouvert_45(Unit()) + local_var_200 = droit_ouvert_89(Unit()) except EmptyError: - def local_var_108(param_109:Enfant): + def local_var_200(param_201: Enfant): try: - def local_var_116(_:Any): - match_arg_788 = param_109.obligation_scolaire - if match_arg_788.code == SituationObligationScolaire_Code.Avant: - _ = match_arg_788.value - local_var_122 = False - elif match_arg_788.code == SituationObligationScolaire_Code.Pendant: - _ = match_arg_788.value - local_var_122 = True - elif match_arg_788.code == SituationObligationScolaire_Code.Apres: - _ = match_arg_788.value - local_var_122 = False - match_arg_789 = param_109.obligation_scolaire - if match_arg_789.code == SituationObligationScolaire_Code.Avant: - _ = match_arg_789.value - local_var_118 = True - elif match_arg_789.code == SituationObligationScolaire_Code.Pendant: - _ = match_arg_789.value - local_var_118 = False - elif match_arg_789.code == SituationObligationScolaire_Code.Apres: - _ = match_arg_789.value - local_var_118 = False - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=49, start_column=5, - end_line=50, end_column=50, - law_headings=["Article L512-3", - "Chapitre 2 : Champ d'application", - "Titre 1 : Champ d'application - Généralités", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), (local_var_118 or - local_var_122)): - return True - else: - raise EmptyError - def local_var_110(_:Any): - match_arg_790 = param_109.obligation_scolaire - if match_arg_790.code == SituationObligationScolaire_Code.Avant: - _ = match_arg_790.value - local_var_112 = False - elif match_arg_790.code == SituationObligationScolaire_Code.Pendant: - _ = match_arg_790.value - local_var_112 = False - elif match_arg_790.code == SituationObligationScolaire_Code.Apres: - _ = match_arg_790.value - local_var_112 = True - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=60, start_column=5, - end_line=62, end_column=32, - law_headings=["Article L512-3", - "Chapitre 2 : Champ d'application", - "Titre 1 : Champ d'application - Généralités", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), (local_var_112 and - ((param_109.remuneration_mensuelle <= - plafond_l512_3_2_90) and (param_109.age < - age_l512_3_2_54)))): - return True - else: - raise EmptyError - def local_var_126(_:Any): - return log_decision_taken(SourcePosition(filename="", - start_line=0, start_column=1, - end_line=0, end_column=1, law_headings=[]), True) - def local_var_128(_:Any): - return False - return handle_default([local_var_110, local_var_116], - local_var_126, local_var_128) - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=65, start_column=12, end_line=65, - end_column=24, law_headings=["Prologue"])) - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=65, start_column=12, end_line=65, end_column=24, - law_headings=["Prologue"])) - droit_ouvert_107 = log_variable_definition(["PrestationsFamiliales", - "droit_ouvert"], local_var_108) - return PrestationsFamilialesOut(droit_ouvert_out = droit_ouvert_107, - conditions_hors_age_out = conditions_hors_age_92, - plafond_l512_3_2_out = plafond_l512_3_2_90, - age_l512_3_2_out = age_l512_3_2_54, - regime_outre_mer_l751_1_out = regime_outre_mer_l751_1_88, - date_courante_out = date_courante_56, - prestation_courante_out = prestation_courante_58, - residence_out = residence_60, base_mensuelle_out = base_mensuelle_62) + def local_var_212(_: Any): + def local_var_214(_: Any): + match_arg_1368 = param_201.obligation_scolaire + if match_arg_1368.code == SituationObligationScolaire_Code.Avant: + _ = match_arg_1368.value + local_var_220 = False + elif match_arg_1368.code == SituationObligationScolaire_Code.Pendant: + _ = match_arg_1368.value + local_var_220 = True + elif match_arg_1368.code == SituationObligationScolaire_Code.Apres: + _ = match_arg_1368.value + local_var_220 = False + match_arg_1369 = param_201.obligation_scolaire + if match_arg_1369.code == SituationObligationScolaire_Code.Avant: + _ = match_arg_1369.value + local_var_216 = True + elif match_arg_1369.code == SituationObligationScolaire_Code.Pendant: + _ = match_arg_1369.value + local_var_216 = False + elif match_arg_1369.code == SituationObligationScolaire_Code.Apres: + _ = match_arg_1369.value + local_var_216 = False + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=49, start_column=5, + end_line=50, end_column=50, + law_headings=["Article L512-3", + "Chapitre 2 : Champ d'application", + "Titre 1 : Champ d'application - Généralités", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), (local_var_216 or + local_var_220)) -def allocations_familiales(allocations_familiales_in_130:AllocationsFamilialesIn): - personne_charge_effective_permanente_est_parent_131 = allocations_familiales_in_130.personne_charge_effective_permanente_est_parent_in - personne_charge_effective_permanente_remplit_titre__i_132 = allocations_familiales_in_130.personne_charge_effective_permanente_remplit_titre_I_in - ressources_menage_133 = allocations_familiales_in_130.ressources_menage_in - residence_134 = allocations_familiales_in_130.residence_in - date_courante_135 = allocations_familiales_in_130.date_courante_in - enfants_a_charge_136 = allocations_familiales_in_130.enfants_a_charge_in - enfants_a_charge_droit_ouvert_prestation_familiale_137 = allocations_familiales_in_130.enfants_a_charge_droit_ouvert_prestation_familiale_in - prise_en_compte_138 = allocations_familiales_in_130.prise_en_compte_in - versement_139 = allocations_familiales_in_130.versement_in - montant_verse_140 = allocations_familiales_in_130.montant_verse_in - droit_ouvert_base_141 = allocations_familiales_in_130.droit_ouvert_base_in - montant_initial_base_142 = allocations_familiales_in_130.montant_initial_base_in - montant_initial_base_premier_enfant_143 = allocations_familiales_in_130.montant_initial_base_premier_enfant_in - montant_initial_base_deuxieme_enfant_144 = allocations_familiales_in_130.montant_initial_base_deuxieme_enfant_in - montant_initial_base_troisieme_enfant_et_plus_145 = allocations_familiales_in_130.montant_initial_base_troisieme_enfant_et_plus_in - rapport_enfants_total_moyen_146 = allocations_familiales_in_130.rapport_enfants_total_moyen_in - nombre_moyen_enfants_147 = allocations_familiales_in_130.nombre_moyen_enfants_in - nombre_total_enfants_148 = allocations_familiales_in_130.nombre_total_enfants_in - montant_avec_garde_alternee_base_149 = allocations_familiales_in_130.montant_avec_garde_alternee_base_in - montant_verse_base_150 = allocations_familiales_in_130.montant_verse_base_in - avait_enfant_a_charge_avant_1er_janvier_2012_151 = allocations_familiales_in_130.avait_enfant_a_charge_avant_1er_janvier_2012_in - montant_initial_base_premier_enfant_mayotte_152 = allocations_familiales_in_130.montant_initial_base_premier_enfant_mayotte_in - montant_initial_base_deuxieme_enfant_mayotte_153 = allocations_familiales_in_130.montant_initial_base_deuxieme_enfant_mayotte_in - montant_initial_base_troisieme_enfant_mayotte_154 = allocations_familiales_in_130.montant_initial_base_troisieme_enfant_mayotte_in - montant_initial_base_quatrieme_enfant_et_plus_mayotte_155 = allocations_familiales_in_130.montant_initial_base_quatrieme_enfant_et_plus_mayotte_in - droit_ouvert_forfaitaire_156 = allocations_familiales_in_130.droit_ouvert_forfaitaire_in - montant_verse_forfaitaire_par_enfant_157 = allocations_familiales_in_130.montant_verse_forfaitaire_par_enfant_in - montant_verse_forfaitaire_158 = allocations_familiales_in_130.montant_verse_forfaitaire_in - droit_ouvert_majoration_159 = allocations_familiales_in_130.droit_ouvert_majoration_in - montant_initial_metropole_majoration_160 = allocations_familiales_in_130.montant_initial_metropole_majoration_in - montant_initial_majoration_161 = allocations_familiales_in_130.montant_initial_majoration_in - montant_avec_garde_alternee_majoration_162 = allocations_familiales_in_130.montant_avec_garde_alternee_majoration_in - montant_verse_majoration_163 = allocations_familiales_in_130.montant_verse_majoration_in - droit_ouvert_complement_164 = allocations_familiales_in_130.droit_ouvert_complement_in - montant_base_complement_pour_base_et_majoration_165 = allocations_familiales_in_130.montant_base_complement_pour_base_et_majoration_in - complement_degressif_166 = allocations_familiales_in_130.complement_degressif_in - montant_verse_complement_pour_base_et_majoration_167 = allocations_familiales_in_130.montant_verse_complement_pour_base_et_majoration_in - montant_verse_complement_pour_forfaitaire_168 = allocations_familiales_in_130.montant_verse_complement_pour_forfaitaire_in - nombre_enfants_l521_1_169 = allocations_familiales_in_130.nombre_enfants_l521_1_in - age_minimum_alinea_1_l521_3_170 = allocations_familiales_in_130.age_minimum_alinea_1_l521_3_in - nombre_enfants_alinea_2_l521_3_171 = allocations_familiales_in_130.nombre_enfants_alinea_2_l521_3_in - est_enfant_le_plus_age_172 = allocations_familiales_in_130.est_enfant_le_plus_age_in - plafond__i_d521_3_173 = allocations_familiales_in_130.plafond_I_d521_3_in - plafond__i_i_d521_3_174 = allocations_familiales_in_130.plafond_II_d521_3_in - try: - try: - local_var_176 = personne_charge_effective_permanente_est_parent_131(Unit()) - except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), True): - local_var_176 = False - else: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=90, start_column=12, end_line=90, end_column=59, - law_headings=["Prologue"])) - personne_charge_effective_permanente_est_parent_175 = log_variable_definition(["AllocationsFamiliales", - "personne_charge_effective_permanente_est_parent"], local_var_176) - try: - try: - local_var_178 = personne_charge_effective_permanente_remplit_titre__i_132(Unit()) - except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), True): - local_var_178 = False - else: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=91, start_column=12, end_line=91, end_column=64, - law_headings=["Prologue"])) - personne_charge_effective_permanente_remplit_titre__i_177 = log_variable_definition(["AllocationsFamiliales", - "personne_charge_effective_permanente_remplit_titre_I"], - local_var_178) - try: - try: - local_var_180 = ressources_menage_133(Unit()) - except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), False): - raise EmptyError - else: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=92, start_column=12, end_line=92, end_column=29, - law_headings=["Prologue"])) - ressources_menage_179 = log_variable_definition(["AllocationsFamiliales", - "ressources_ménage"], local_var_180) - try: - try: - local_var_182 = residence_134(Unit()) - except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), False): - raise EmptyError - else: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=93, start_column=12, end_line=93, end_column=21, - law_headings=["Prologue"])) - residence_181 = log_variable_definition(["AllocationsFamiliales", - "résidence"], local_var_182) - try: - try: - local_var_184 = date_courante_135(Unit()) - except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), False): - raise EmptyError - else: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=96, start_column=12, end_line=96, end_column=25, - law_headings=["Prologue"])) - date_courante_183 = log_variable_definition(["AllocationsFamiliales", - "date_courante"], local_var_184) - try: - try: - local_var_186 = enfants_a_charge_136(Unit()) - except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), False): - raise EmptyError - else: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=99, start_column=12, end_line=99, end_column=28, - law_headings=["Prologue"])) - enfants_a_charge_185 = log_variable_definition(["AllocationsFamiliales", - "enfants_à_charge"], local_var_186) - try: - try: - local_var_188 = prise_en_compte_138(Unit()) - except EmptyError: - def local_var_188(param_189:Enfant): - try: - def local_var_222(_:Any): - match_arg_791 = param_189.prise_en_charge - if match_arg_791.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: - _ = match_arg_791.value - local_var_224 = False - elif match_arg_791.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: - _ = match_arg_791.value - local_var_224 = False - elif match_arg_791.code == PriseEnCharge_Code.EffectiveEtPermanente: - _ = match_arg_791.value - local_var_224 = True - elif match_arg_791.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: - _ = match_arg_791.value - local_var_224 = False - elif match_arg_791.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: - _ = match_arg_791.value - local_var_224 = False - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=184, start_column=5, - end_line=184, end_column=60, - law_headings=["Article L521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), local_var_224): - return PriseEnCompte(PriseEnCompte_Code.Complete, - Unit()) - else: - raise EmptyError - def local_var_214(_:Any): - match_arg_792 = param_189.prise_en_charge - if match_arg_792.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: - _ = match_arg_792.value - local_var_216 = False - elif match_arg_792.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: - _ = match_arg_792.value - local_var_216 = True - elif match_arg_792.code == PriseEnCharge_Code.EffectiveEtPermanente: - _ = match_arg_792.value - local_var_216 = False - elif match_arg_792.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: - _ = match_arg_792.value - local_var_216 = False - elif match_arg_792.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: - _ = match_arg_792.value - local_var_216 = False - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=204, start_column=5, - end_line=204, end_column=69, - law_headings=["Article L521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), local_var_216): - return PriseEnCompte(PriseEnCompte_Code.Complete, - Unit()) - else: - raise EmptyError - def local_var_206(_:Any): - match_arg_793 = param_189.prise_en_charge - if match_arg_793.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: - _ = match_arg_793.value - local_var_208 = True - elif match_arg_793.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: - _ = match_arg_793.value - local_var_208 = False - elif match_arg_793.code == PriseEnCharge_Code.EffectiveEtPermanente: - _ = match_arg_793.value - local_var_208 = False - elif match_arg_793.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: - _ = match_arg_793.value - local_var_208 = False - elif match_arg_793.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: - _ = match_arg_793.value - local_var_208 = False - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=214, start_column=5, - end_line=214, end_column=70, - law_headings=["Article L521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), local_var_208): - return PriseEnCompte(PriseEnCompte_Code.Partagee, - Unit()) - else: - raise EmptyError - def local_var_198(_:Any): - match_arg_794 = param_189.prise_en_charge - if match_arg_794.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: - _ = match_arg_794.value - local_var_200 = False - elif match_arg_794.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: - _ = match_arg_794.value - local_var_200 = False - elif match_arg_794.code == PriseEnCharge_Code.EffectiveEtPermanente: - _ = match_arg_794.value - local_var_200 = False - elif match_arg_794.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: - _ = match_arg_794.value - local_var_200 = False - elif match_arg_794.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: - _ = match_arg_794.value - local_var_200 = True - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=253, start_column=5, - end_line=254, end_column=56, - law_headings=["Article L521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), local_var_200): - return PriseEnCompte(PriseEnCompte_Code.Zero, - Unit()) - else: - raise EmptyError - def local_var_190(_:Any): - match_arg_795 = param_189.prise_en_charge - if match_arg_795.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: - _ = match_arg_795.value - local_var_192 = False - elif match_arg_795.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: - _ = match_arg_795.value - local_var_192 = False - elif match_arg_795.code == PriseEnCharge_Code.EffectiveEtPermanente: - _ = match_arg_795.value - local_var_192 = False - elif match_arg_795.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: - _ = match_arg_795.value - local_var_192 = True - elif match_arg_795.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: - _ = match_arg_795.value - local_var_192 = False - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=263, start_column=5, - end_line=264, end_column=48, - law_headings=["Article L521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), local_var_192): - return PriseEnCompte(PriseEnCompte_Code.Complete, - Unit()) - else: - raise EmptyError - def local_var_230(_:Any): + def local_var_224(_: Any): + return True + return handle_default([], local_var_214, + local_var_224) + + def local_var_202(_: Any): + def local_var_204(_: Any): + match_arg_1370 = param_201.obligation_scolaire + if match_arg_1370.code == SituationObligationScolaire_Code.Avant: + _ = match_arg_1370.value + local_var_206 = False + elif match_arg_1370.code == SituationObligationScolaire_Code.Pendant: + _ = match_arg_1370.value + local_var_206 = False + elif match_arg_1370.code == SituationObligationScolaire_Code.Apres: + _ = match_arg_1370.value + local_var_206 = True + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=60, start_column=5, + end_line=62, end_column=32, + law_headings=["Article L512-3", + "Chapitre 2 : Champ d'application", + "Titre 1 : Champ d'application - Généralités", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), (local_var_206 and + ((param_201.remuneration_mensuelle <= + plafond_l512_3_2_174) and (param_201.age < + age_l512_3_2_98)))) + + def local_var_210(_: Any): + return True + return handle_default([], local_var_204, + local_var_210) + + def local_var_226(_: Any): return log_decision_taken(SourcePosition(filename="", - start_line=0, start_column=1, - end_line=0, end_column=1, - law_headings=[]), False) - def local_var_232(_:Any): - raise EmptyError - return handle_default([local_var_190, local_var_198, - local_var_206, local_var_214, local_var_222], - local_var_230, local_var_232) + start_line=0, start_column=1, + end_line=0, end_column=1, law_headings=[]), True) + + def local_var_228(_: Any): + return False + return handle_default([local_var_202, local_var_212], + local_var_226, local_var_228) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=102, start_column=12, end_line=102, - end_column=27, law_headings=["Prologue"])) + start_line=65, start_column=12, end_line=65, + end_column=24, law_headings=["Prologue"])) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=102, start_column=12, end_line=102, end_column=27, - law_headings=["Prologue"])) - prise_en_compte_187 = log_variable_definition(["AllocationsFamiliales", - "prise_en_compte"], local_var_188) + start_line=65, start_column=12, end_line=65, end_column=24, + law_headings=["Prologue"])) + droit_ouvert_199 = log_variable_definition(["PrestationsFamiliales", + "droit_ouvert"], local_var_200) + return PrestationsFamilialesOut(droit_ouvert_out=droit_ouvert_199, + conditions_hors_age_out=conditions_hors_age_180, + plafond_l512_3_2_out=plafond_l512_3_2_174, + age_l512_3_2_out=age_l512_3_2_98, + regime_outre_mer_l751_1_out=regime_outre_mer_l751_1_168, + date_courante_out=date_courante_104, + prestation_courante_out=prestation_courante_110, + residence_out=residence_116, + base_mensuelle_out=base_mensuelle_122) + + +def allocations_familiales(allocations_familiales_in_230: AllocationsFamilialesIn): + personne_charge_effective_permanente_est_parent_231 = allocations_familiales_in_230.personne_charge_effective_permanente_est_parent_in + personne_charge_effective_permanente_remplit_titre__i_232 = allocations_familiales_in_230.personne_charge_effective_permanente_remplit_titre_I_in + ressources_menage_233 = allocations_familiales_in_230.ressources_menage_in + residence_234 = allocations_familiales_in_230.residence_in + date_courante_235 = allocations_familiales_in_230.date_courante_in + enfants_a_charge_236 = allocations_familiales_in_230.enfants_a_charge_in + enfants_a_charge_droit_ouvert_prestation_familiale_237 = allocations_familiales_in_230.enfants_a_charge_droit_ouvert_prestation_familiale_in + prise_en_compte_238 = allocations_familiales_in_230.prise_en_compte_in + versement_239 = allocations_familiales_in_230.versement_in + montant_verse_240 = allocations_familiales_in_230.montant_verse_in + droit_ouvert_base_241 = allocations_familiales_in_230.droit_ouvert_base_in + montant_initial_base_242 = allocations_familiales_in_230.montant_initial_base_in + montant_initial_base_premier_enfant_243 = allocations_familiales_in_230.montant_initial_base_premier_enfant_in + montant_initial_base_deuxieme_enfant_244 = allocations_familiales_in_230.montant_initial_base_deuxieme_enfant_in + montant_initial_base_troisieme_enfant_et_plus_245 = allocations_familiales_in_230.montant_initial_base_troisieme_enfant_et_plus_in + rapport_enfants_total_moyen_246 = allocations_familiales_in_230.rapport_enfants_total_moyen_in + nombre_moyen_enfants_247 = allocations_familiales_in_230.nombre_moyen_enfants_in + nombre_total_enfants_248 = allocations_familiales_in_230.nombre_total_enfants_in + montant_avec_garde_alternee_base_249 = allocations_familiales_in_230.montant_avec_garde_alternee_base_in + montant_verse_base_250 = allocations_familiales_in_230.montant_verse_base_in + avait_enfant_a_charge_avant_1er_janvier_2012_251 = allocations_familiales_in_230.avait_enfant_a_charge_avant_1er_janvier_2012_in + montant_initial_base_premier_enfant_mayotte_252 = allocations_familiales_in_230.montant_initial_base_premier_enfant_mayotte_in + montant_initial_base_deuxieme_enfant_mayotte_253 = allocations_familiales_in_230.montant_initial_base_deuxieme_enfant_mayotte_in + montant_initial_base_troisieme_enfant_mayotte_254 = allocations_familiales_in_230.montant_initial_base_troisieme_enfant_mayotte_in + montant_initial_base_quatrieme_enfant_et_plus_mayotte_255 = allocations_familiales_in_230.montant_initial_base_quatrieme_enfant_et_plus_mayotte_in + droit_ouvert_forfaitaire_256 = allocations_familiales_in_230.droit_ouvert_forfaitaire_in + montant_verse_forfaitaire_par_enfant_257 = allocations_familiales_in_230.montant_verse_forfaitaire_par_enfant_in + montant_verse_forfaitaire_258 = allocations_familiales_in_230.montant_verse_forfaitaire_in + droit_ouvert_majoration_259 = allocations_familiales_in_230.droit_ouvert_majoration_in + montant_initial_metropole_majoration_260 = allocations_familiales_in_230.montant_initial_metropole_majoration_in + montant_initial_majoration_261 = allocations_familiales_in_230.montant_initial_majoration_in + montant_avec_garde_alternee_majoration_262 = allocations_familiales_in_230.montant_avec_garde_alternee_majoration_in + montant_verse_majoration_263 = allocations_familiales_in_230.montant_verse_majoration_in + droit_ouvert_complement_264 = allocations_familiales_in_230.droit_ouvert_complement_in + montant_base_complement_pour_base_et_majoration_265 = allocations_familiales_in_230.montant_base_complement_pour_base_et_majoration_in + complement_degressif_266 = allocations_familiales_in_230.complement_degressif_in + montant_verse_complement_pour_base_et_majoration_267 = allocations_familiales_in_230.montant_verse_complement_pour_base_et_majoration_in + montant_verse_complement_pour_forfaitaire_268 = allocations_familiales_in_230.montant_verse_complement_pour_forfaitaire_in + nombre_enfants_l521_1_269 = allocations_familiales_in_230.nombre_enfants_l521_1_in + age_minimum_alinea_1_l521_3_270 = allocations_familiales_in_230.age_minimum_alinea_1_l521_3_in + nombre_enfants_alinea_2_l521_3_271 = allocations_familiales_in_230.nombre_enfants_alinea_2_l521_3_in + est_enfant_le_plus_age_272 = allocations_familiales_in_230.est_enfant_le_plus_age_in + plafond__i_d521_3_273 = allocations_familiales_in_230.plafond_I_d521_3_in + plafond__i_i_d521_3_274 = allocations_familiales_in_230.plafond_II_d521_3_in try: try: - local_var_235 = versement_139(Unit()) - except EmptyError: - def local_var_235(param_236:Enfant): - try: - def local_var_269(_:Any): - match_arg_796 = param_236.prise_en_charge - if match_arg_796.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: - _ = match_arg_796.value - local_var_271 = False - elif match_arg_796.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: - _ = match_arg_796.value - local_var_271 = False - elif match_arg_796.code == PriseEnCharge_Code.EffectiveEtPermanente: - _ = match_arg_796.value - local_var_271 = True - elif match_arg_796.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: - _ = match_arg_796.value - local_var_271 = False - elif match_arg_796.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: - _ = match_arg_796.value - local_var_271 = False - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=188, start_column=5, - end_line=188, end_column=60, - law_headings=["Article L521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), local_var_271): - return VersementAllocations(VersementAllocations_Code.Normal, - Unit()) - else: - raise EmptyError - def local_var_261(_:Any): - match_arg_797 = param_236.prise_en_charge - if match_arg_797.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: - _ = match_arg_797.value - local_var_263 = False - elif match_arg_797.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: - _ = match_arg_797.value - local_var_263 = True - elif match_arg_797.code == PriseEnCharge_Code.EffectiveEtPermanente: - _ = match_arg_797.value - local_var_263 = False - elif match_arg_797.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: - _ = match_arg_797.value - local_var_263 = False - elif match_arg_797.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: - _ = match_arg_797.value - local_var_263 = False - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=208, start_column=5, - end_line=208, end_column=69, - law_headings=["Article L521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), local_var_263): - return VersementAllocations(VersementAllocations_Code.Normal, - Unit()) - else: - raise EmptyError - def local_var_253(_:Any): - match_arg_798 = param_236.prise_en_charge - if match_arg_798.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: - _ = match_arg_798.value - local_var_255 = True - elif match_arg_798.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: - _ = match_arg_798.value - local_var_255 = False - elif match_arg_798.code == PriseEnCharge_Code.EffectiveEtPermanente: - _ = match_arg_798.value - local_var_255 = False - elif match_arg_798.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: - _ = match_arg_798.value - local_var_255 = False - elif match_arg_798.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: - _ = match_arg_798.value - local_var_255 = False - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=218, start_column=5, - end_line=218, end_column=70, - law_headings=["Article L521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), local_var_255): - return VersementAllocations(VersementAllocations_Code.Normal, - Unit()) - else: - raise EmptyError - def local_var_245(_:Any): - match_arg_799 = param_236.prise_en_charge - if match_arg_799.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: - _ = match_arg_799.value - local_var_247 = False - elif match_arg_799.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: - _ = match_arg_799.value - local_var_247 = False - elif match_arg_799.code == PriseEnCharge_Code.EffectiveEtPermanente: - _ = match_arg_799.value - local_var_247 = False - elif match_arg_799.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: - _ = match_arg_799.value - local_var_247 = False - elif match_arg_799.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: - _ = match_arg_799.value - local_var_247 = True - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=258, start_column=5, - end_line=259, end_column=56, - law_headings=["Article L521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), local_var_247): - return VersementAllocations(VersementAllocations_Code.AllocationVerseeAuxServicesSociaux, - Unit()) - else: - raise EmptyError - def local_var_237(_:Any): - match_arg_800 = param_236.prise_en_charge - if match_arg_800.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: - _ = match_arg_800.value - local_var_239 = False - elif match_arg_800.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: - _ = match_arg_800.value - local_var_239 = False - elif match_arg_800.code == PriseEnCharge_Code.EffectiveEtPermanente: - _ = match_arg_800.value - local_var_239 = False - elif match_arg_800.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: - _ = match_arg_800.value - local_var_239 = True - elif match_arg_800.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: - _ = match_arg_800.value - local_var_239 = False - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=269, start_column=5, - end_line=270, end_column=48, - law_headings=["Article L521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), local_var_239): - return VersementAllocations(VersementAllocations_Code.Normal, - Unit()) - else: - raise EmptyError - def local_var_277(_:Any): - return log_decision_taken(SourcePosition(filename="", - start_line=0, start_column=1, - end_line=0, end_column=1, - law_headings=[]), False) - def local_var_279(_:Any): - raise EmptyError - return handle_default([local_var_237, local_var_245, - local_var_253, local_var_261, local_var_269], - local_var_277, local_var_279) - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=103, start_column=12, end_line=103, - end_column=21, law_headings=["Prologue"])) - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=103, start_column=12, end_line=103, end_column=21, - law_headings=["Prologue"])) - versement_234 = log_variable_definition(["AllocationsFamiliales", - "versement"], local_var_235) - try: - try: - local_var_282 = avait_enfant_a_charge_avant_1er_janvier_2012_151(Unit()) - except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), True): - local_var_282 = False - else: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=120, start_column=12, end_line=120, end_column=56, - law_headings=["Prologue"])) - avait_enfant_a_charge_avant_1er_janvier_2012_281 = log_variable_definition(["AllocationsFamiliales", - "avait_enfant_à_charge_avant_1er_janvier_2012"], local_var_282) - try: - try: - local_var_284 = nombre_enfants_l521_1_169(Unit()) - except EmptyError: - try: - local_var_284 = integer_of_string("3") - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=151, start_column=12, end_line=151, end_column=33, - law_headings=["Prologue"])) - nombre_enfants_l521_1_283 = log_variable_definition(["AllocationsFamiliales", - "nombre_enfants_l521_1"], local_var_284) - try: - try: - local_var_286 = nombre_enfants_alinea_2_l521_3_171(Unit()) - except EmptyError: - try: - local_var_286 = integer_of_string("3") - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=153, start_column=12, end_line=153, end_column=42, - law_headings=["Prologue"])) - nombre_enfants_alinea_2_l521_3_285 = log_variable_definition(["AllocationsFamiliales", - "nombre_enfants_alinéa_2_l521_3"], local_var_286) - def local_var_288(_:Unit): - raise EmptyError - result_287 = log_end_call(["AllocationsFamiliales", "version_avril_2008", - "AllocationFamilialesAvril2008"], - log_begin_call(["AllocationsFamiliales", "version_avril_2008", - "AllocationFamilialesAvril2008"], allocation_familiales_avril2008, - AllocationFamilialesAvril2008In(age_minimum_alinea_1_l521_3_in = local_var_288))) - version_avril_2008_dot_age_minimum_alinea_1_l521_3_290 = result_287.age_minimum_alinea_1_l521_3_out - def local_var_292(_:Unit): - try: - local_var_294 = date_courante_183 - except EmptyError: - raise EmptyError - return log_variable_definition(["AllocationsFamiliales", - "prestations_familiales.date_courante"], local_var_294) - prestations_familiales_dot_date_courante_291 = local_var_292 - def local_var_296(_:Unit): - try: - local_var_298 = ElementPrestationsFamiliales(ElementPrestationsFamiliales_Code.AllocationsFamiliales, + local_var_276 = personne_charge_effective_permanente_est_parent_231( Unit()) except EmptyError: - raise EmptyError - return log_variable_definition(["AllocationsFamiliales", - "prestations_familiales.prestation_courante"], local_var_298) - prestations_familiales_dot_prestation_courante_295 = local_var_296 - def local_var_300(_:Unit): - try: - local_var_302 = residence_181 - except EmptyError: - raise EmptyError - return log_variable_definition(["AllocationsFamiliales", - "prestations_familiales.résidence"], local_var_302) - prestations_familiales_dot_residence_299 = local_var_300 - def local_var_304(_:Unit): - raise EmptyError - def local_var_306(_:Unit): - raise EmptyError - def local_var_308(_:Unit): - raise EmptyError - def local_var_310(_:Unit): - raise EmptyError - def local_var_312(_:Unit): - raise EmptyError - def local_var_314(_:Unit): - raise EmptyError - result_303 = log_end_call(["AllocationsFamiliales", - "prestations_familiales", "PrestationsFamiliales"], - log_begin_call(["AllocationsFamiliales", "prestations_familiales", - "PrestationsFamiliales"], prestations_familiales, - PrestationsFamilialesIn(droit_ouvert_in = local_var_304, - conditions_hors_age_in = local_var_306, - plafond_l512_3_2_in = local_var_308, age_l512_3_2_in = local_var_310, - regime_outre_mer_l751_1_in = local_var_312, - date_courante_in = prestations_familiales_dot_date_courante_291, - prestation_courante_in = prestations_familiales_dot_prestation_courante_295, - residence_in = prestations_familiales_dot_residence_299, - base_mensuelle_in = local_var_314))) - prestations_familiales_dot_droit_ouvert_316 = result_303.droit_ouvert_out - prestations_familiales_dot_conditions_hors_age_317 = result_303.conditions_hors_age_out - prestations_familiales_dot_plafond_l512_3_2_318 = result_303.plafond_l512_3_2_out - prestations_familiales_dot_age_l512_3_2_319 = result_303.age_l512_3_2_out - prestations_familiales_dot_regime_outre_mer_l751_1_320 = result_303.regime_outre_mer_l751_1_out - prestations_familiales_dot_date_courante_321 = result_303.date_courante_out - prestations_familiales_dot_prestation_courante_322 = result_303.prestation_courante_out - prestations_familiales_dot_residence_323 = result_303.residence_out - prestations_familiales_dot_base_mensuelle_324 = result_303.base_mensuelle_out - def local_var_326(_:Unit): - try: - local_var_328 = enfants_a_charge_185 - except EmptyError: - raise EmptyError - return log_variable_definition(["AllocationsFamiliales", - "enfant_le_plus_âgé.enfants"], local_var_328) - enfant_le_plus_age_dot_enfants_325 = local_var_326 - def local_var_330(_:Unit): - raise EmptyError - result_329 = log_end_call(["AllocationsFamiliales", - "enfant_le_plus_âgé", "EnfantLePlusÂgé"], - log_begin_call(["AllocationsFamiliales", "enfant_le_plus_âgé", - "EnfantLePlusÂgé"], enfant_le_plus_age, - EnfantLePlusAgeIn(enfants_in = enfant_le_plus_age_dot_enfants_325, - le_plus_age_in = local_var_330))) - enfant_le_plus_age_dot_enfants_332 = result_329.enfants_out - enfant_le_plus_age_dot_le_plus_age_333 = result_329.le_plus_age_out + def local_var_277(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), True) + + def local_var_279(_: Any): + return False + local_var_276 = handle_default([], local_var_277, local_var_279) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=90, start_column=12, end_line=90, end_column=59, + law_headings=["Prologue"])) + personne_charge_effective_permanente_est_parent_275 = log_variable_definition(["AllocationsFamiliales", + "personne_charge_effective_permanente_est_parent"], local_var_276) try: try: - local_var_335 = age_minimum_alinea_1_l521_3_170(Unit()) + local_var_282 = personne_charge_effective_permanente_remplit_titre__i_232( + Unit()) except EmptyError: - def local_var_335(param_336:Enfant): + def local_var_283(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), True) + + def local_var_285(_: Any): + return False + local_var_282 = handle_default([], local_var_283, local_var_285) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=91, start_column=12, end_line=91, end_column=64, + law_headings=["Prologue"])) + personne_charge_effective_permanente_remplit_titre__i_281 = log_variable_definition(["AllocationsFamiliales", + "personne_charge_effective_permanente_remplit_titre_I"], + local_var_282) + try: + try: + local_var_288 = ressources_menage_233(Unit()) + except EmptyError: + def local_var_289(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_291(_: Any): + raise EmptyError + local_var_288 = handle_default([], local_var_289, local_var_291) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=92, start_column=12, end_line=92, end_column=29, + law_headings=["Prologue"])) + ressources_menage_287 = log_variable_definition(["AllocationsFamiliales", + "ressources_ménage"], local_var_288) + try: + try: + local_var_294 = residence_234(Unit()) + except EmptyError: + def local_var_295(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_297(_: Any): + raise EmptyError + local_var_294 = handle_default([], local_var_295, local_var_297) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=93, start_column=12, end_line=93, end_column=21, + law_headings=["Prologue"])) + residence_293 = log_variable_definition(["AllocationsFamiliales", + "résidence"], local_var_294) + try: + try: + local_var_300 = date_courante_235(Unit()) + except EmptyError: + def local_var_301(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_303(_: Any): + raise EmptyError + local_var_300 = handle_default([], local_var_301, local_var_303) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=96, start_column=12, end_line=96, end_column=25, + law_headings=["Prologue"])) + date_courante_299 = log_variable_definition(["AllocationsFamiliales", + "date_courante"], local_var_300) + try: + try: + local_var_306 = enfants_a_charge_236(Unit()) + except EmptyError: + def local_var_307(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_309(_: Any): + raise EmptyError + local_var_306 = handle_default([], local_var_307, local_var_309) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=99, start_column=12, end_line=99, end_column=28, + law_headings=["Prologue"])) + enfants_a_charge_305 = log_variable_definition(["AllocationsFamiliales", + "enfants_à_charge"], local_var_306) + try: + try: + local_var_312 = prise_en_compte_238(Unit()) + except EmptyError: + def local_var_312(param_313: Enfant): + try: + def local_var_362(_: Any): + def local_var_364(_: Any): + match_arg_1371 = param_313.prise_en_charge + if match_arg_1371.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: + _ = match_arg_1371.value + local_var_366 = False + elif match_arg_1371.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: + _ = match_arg_1371.value + local_var_366 = False + elif match_arg_1371.code == PriseEnCharge_Code.EffectiveEtPermanente: + _ = match_arg_1371.value + local_var_366 = True + elif match_arg_1371.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: + _ = match_arg_1371.value + local_var_366 = False + elif match_arg_1371.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: + _ = match_arg_1371.value + local_var_366 = False + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=184, start_column=5, + end_line=184, end_column=60, + law_headings=["Article L521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), local_var_366) + + def local_var_372(_: Any): + return PriseEnCompte(PriseEnCompte_Code.Complete, + Unit()) + return handle_default([], local_var_364, + local_var_372) + + def local_var_350(_: Any): + def local_var_352(_: Any): + match_arg_1372 = param_313.prise_en_charge + if match_arg_1372.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: + _ = match_arg_1372.value + local_var_354 = False + elif match_arg_1372.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: + _ = match_arg_1372.value + local_var_354 = True + elif match_arg_1372.code == PriseEnCharge_Code.EffectiveEtPermanente: + _ = match_arg_1372.value + local_var_354 = False + elif match_arg_1372.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: + _ = match_arg_1372.value + local_var_354 = False + elif match_arg_1372.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: + _ = match_arg_1372.value + local_var_354 = False + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=204, start_column=5, + end_line=204, end_column=69, + law_headings=["Article L521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), local_var_354) + + def local_var_360(_: Any): + return PriseEnCompte(PriseEnCompte_Code.Complete, + Unit()) + return handle_default([], local_var_352, + local_var_360) + + def local_var_338(_: Any): + def local_var_340(_: Any): + match_arg_1373 = param_313.prise_en_charge + if match_arg_1373.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: + _ = match_arg_1373.value + local_var_342 = True + elif match_arg_1373.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: + _ = match_arg_1373.value + local_var_342 = False + elif match_arg_1373.code == PriseEnCharge_Code.EffectiveEtPermanente: + _ = match_arg_1373.value + local_var_342 = False + elif match_arg_1373.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: + _ = match_arg_1373.value + local_var_342 = False + elif match_arg_1373.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: + _ = match_arg_1373.value + local_var_342 = False + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=214, start_column=5, + end_line=214, end_column=70, + law_headings=["Article L521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), local_var_342) + + def local_var_348(_: Any): + return PriseEnCompte(PriseEnCompte_Code.Partagee, + Unit()) + return handle_default([], local_var_340, + local_var_348) + + def local_var_326(_: Any): + def local_var_328(_: Any): + match_arg_1374 = param_313.prise_en_charge + if match_arg_1374.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: + _ = match_arg_1374.value + local_var_330 = False + elif match_arg_1374.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: + _ = match_arg_1374.value + local_var_330 = False + elif match_arg_1374.code == PriseEnCharge_Code.EffectiveEtPermanente: + _ = match_arg_1374.value + local_var_330 = False + elif match_arg_1374.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: + _ = match_arg_1374.value + local_var_330 = False + elif match_arg_1374.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: + _ = match_arg_1374.value + local_var_330 = True + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=253, start_column=5, + end_line=254, end_column=56, + law_headings=["Article L521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), local_var_330) + + def local_var_336(_: Any): + return PriseEnCompte(PriseEnCompte_Code.Zero, + Unit()) + return handle_default([], local_var_328, + local_var_336) + + def local_var_314(_: Any): + def local_var_316(_: Any): + match_arg_1375 = param_313.prise_en_charge + if match_arg_1375.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: + _ = match_arg_1375.value + local_var_318 = False + elif match_arg_1375.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: + _ = match_arg_1375.value + local_var_318 = False + elif match_arg_1375.code == PriseEnCharge_Code.EffectiveEtPermanente: + _ = match_arg_1375.value + local_var_318 = False + elif match_arg_1375.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: + _ = match_arg_1375.value + local_var_318 = True + elif match_arg_1375.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: + _ = match_arg_1375.value + local_var_318 = False + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=263, start_column=5, + end_line=264, end_column=48, + law_headings=["Article L521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), local_var_318) + + def local_var_324(_: Any): + return PriseEnCompte(PriseEnCompte_Code.Complete, + Unit()) + return handle_default([], local_var_316, + local_var_324) + + def local_var_374(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, + end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_376(_: Any): + raise EmptyError + return handle_default([local_var_314, local_var_326, + local_var_338, local_var_350, local_var_362], + local_var_374, local_var_376) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=102, start_column=12, end_line=102, + end_column=27, law_headings=["Prologue"])) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=102, start_column=12, end_line=102, end_column=27, + law_headings=["Prologue"])) + prise_en_compte_311 = log_variable_definition(["AllocationsFamiliales", + "prise_en_compte"], local_var_312) + try: + try: + local_var_379 = versement_239(Unit()) + except EmptyError: + def local_var_379(param_380: Enfant): + try: + def local_var_429(_: Any): + def local_var_431(_: Any): + match_arg_1376 = param_380.prise_en_charge + if match_arg_1376.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: + _ = match_arg_1376.value + local_var_433 = False + elif match_arg_1376.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: + _ = match_arg_1376.value + local_var_433 = False + elif match_arg_1376.code == PriseEnCharge_Code.EffectiveEtPermanente: + _ = match_arg_1376.value + local_var_433 = True + elif match_arg_1376.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: + _ = match_arg_1376.value + local_var_433 = False + elif match_arg_1376.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: + _ = match_arg_1376.value + local_var_433 = False + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=188, start_column=5, + end_line=188, end_column=60, + law_headings=["Article L521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), local_var_433) + + def local_var_439(_: Any): + return VersementAllocations(VersementAllocations_Code.Normal, + Unit()) + return handle_default([], local_var_431, + local_var_439) + + def local_var_417(_: Any): + def local_var_419(_: Any): + match_arg_1377 = param_380.prise_en_charge + if match_arg_1377.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: + _ = match_arg_1377.value + local_var_421 = False + elif match_arg_1377.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: + _ = match_arg_1377.value + local_var_421 = True + elif match_arg_1377.code == PriseEnCharge_Code.EffectiveEtPermanente: + _ = match_arg_1377.value + local_var_421 = False + elif match_arg_1377.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: + _ = match_arg_1377.value + local_var_421 = False + elif match_arg_1377.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: + _ = match_arg_1377.value + local_var_421 = False + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=208, start_column=5, + end_line=208, end_column=69, + law_headings=["Article L521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), local_var_421) + + def local_var_427(_: Any): + return VersementAllocations(VersementAllocations_Code.Normal, + Unit()) + return handle_default([], local_var_419, + local_var_427) + + def local_var_405(_: Any): + def local_var_407(_: Any): + match_arg_1378 = param_380.prise_en_charge + if match_arg_1378.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: + _ = match_arg_1378.value + local_var_409 = True + elif match_arg_1378.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: + _ = match_arg_1378.value + local_var_409 = False + elif match_arg_1378.code == PriseEnCharge_Code.EffectiveEtPermanente: + _ = match_arg_1378.value + local_var_409 = False + elif match_arg_1378.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: + _ = match_arg_1378.value + local_var_409 = False + elif match_arg_1378.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: + _ = match_arg_1378.value + local_var_409 = False + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=218, start_column=5, + end_line=218, end_column=70, + law_headings=["Article L521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), local_var_409) + + def local_var_415(_: Any): + return VersementAllocations(VersementAllocations_Code.Normal, + Unit()) + return handle_default([], local_var_407, + local_var_415) + + def local_var_393(_: Any): + def local_var_395(_: Any): + match_arg_1379 = param_380.prise_en_charge + if match_arg_1379.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: + _ = match_arg_1379.value + local_var_397 = False + elif match_arg_1379.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: + _ = match_arg_1379.value + local_var_397 = False + elif match_arg_1379.code == PriseEnCharge_Code.EffectiveEtPermanente: + _ = match_arg_1379.value + local_var_397 = False + elif match_arg_1379.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: + _ = match_arg_1379.value + local_var_397 = False + elif match_arg_1379.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: + _ = match_arg_1379.value + local_var_397 = True + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=258, start_column=5, + end_line=259, end_column=56, + law_headings=["Article L521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), local_var_397) + + def local_var_403(_: Any): + return VersementAllocations(VersementAllocations_Code.AllocationVerseeAuxServicesSociaux, + Unit()) + return handle_default([], local_var_395, + local_var_403) + + def local_var_381(_: Any): + def local_var_383(_: Any): + match_arg_1380 = param_380.prise_en_charge + if match_arg_1380.code == PriseEnCharge_Code.GardeAlterneePartageAllocations: + _ = match_arg_1380.value + local_var_385 = False + elif match_arg_1380.code == PriseEnCharge_Code.GardeAlterneeAllocataireUnique: + _ = match_arg_1380.value + local_var_385 = False + elif match_arg_1380.code == PriseEnCharge_Code.EffectiveEtPermanente: + _ = match_arg_1380.value + local_var_385 = False + elif match_arg_1380.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeALaFamille: + _ = match_arg_1380.value + local_var_385 = True + elif match_arg_1380.code == PriseEnCharge_Code.ServicesSociauxAllocationVerseeAuxServicesSociaux: + _ = match_arg_1380.value + local_var_385 = False + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=269, start_column=5, + end_line=270, end_column=48, + law_headings=["Article L521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), local_var_385) + + def local_var_391(_: Any): + return VersementAllocations(VersementAllocations_Code.Normal, + Unit()) + return handle_default([], local_var_383, + local_var_391) + + def local_var_441(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, + end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_443(_: Any): + raise EmptyError + return handle_default([local_var_381, local_var_393, + local_var_405, local_var_417, local_var_429], + local_var_441, local_var_443) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=103, start_column=12, end_line=103, + end_column=21, law_headings=["Prologue"])) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=103, start_column=12, end_line=103, end_column=21, + law_headings=["Prologue"])) + versement_378 = log_variable_definition(["AllocationsFamiliales", + "versement"], local_var_379) + try: + try: + local_var_446 = avait_enfant_a_charge_avant_1er_janvier_2012_251( + Unit()) + except EmptyError: + def local_var_447(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), True) + + def local_var_449(_: Any): + return False + local_var_446 = handle_default([], local_var_447, local_var_449) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=120, start_column=12, end_line=120, end_column=56, + law_headings=["Prologue"])) + avait_enfant_a_charge_avant_1er_janvier_2012_445 = log_variable_definition(["AllocationsFamiliales", + "avait_enfant_à_charge_avant_1er_janvier_2012"], local_var_446) + try: + try: + local_var_452 = nombre_enfants_l521_1_269(Unit()) + except EmptyError: + try: + def local_var_453(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=288, start_column=14, + end_line=288, end_column=35, + law_headings=["Article D521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), True) + + def local_var_455(_: Any): + return integer_of_string("3") + local_var_452 = handle_default([], local_var_453, + local_var_455) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=151, start_column=12, end_line=151, end_column=33, + law_headings=["Prologue"])) + nombre_enfants_l521_1_451 = log_variable_definition(["AllocationsFamiliales", + "nombre_enfants_l521_1"], local_var_452) + try: + try: + local_var_458 = nombre_enfants_alinea_2_l521_3_271(Unit()) + except EmptyError: + try: + def local_var_459(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_R.catala_fr", + start_line=64, start_column=14, + end_line=64, end_column=44, + law_headings=["Article R521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets en Conseil d'Etat", + "Code de la sécurité sociale"]), True) + + def local_var_461(_: Any): + return integer_of_string("3") + local_var_458 = handle_default([], local_var_459, + local_var_461) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=153, start_column=12, end_line=153, end_column=42, + law_headings=["Prologue"])) + nombre_enfants_alinea_2_l521_3_457 = log_variable_definition(["AllocationsFamiliales", + "nombre_enfants_alinéa_2_l521_3"], local_var_458) + + def local_var_464(_: Unit): + raise EmptyError + result_463 = log_end_call(["AllocationsFamiliales", "version_avril_2008", + "AllocationFamilialesAvril2008"], + log_begin_call(["AllocationsFamiliales", "version_avril_2008", + "AllocationFamilialesAvril2008"], allocation_familiales_avril2008, + AllocationFamilialesAvril2008In(age_minimum_alinea_1_l521_3_in=local_var_464))) + version_avril_2008_dot_age_minimum_alinea_1_l521_3_466 = result_463.age_minimum_alinea_1_l521_3_out + + def local_var_468(_: Unit): + try: + def local_var_471(_: Any): + return log_decision_taken(SourcePosition(filename="./prologue.catala_fr", + start_line=161, start_column=14, + end_line=161, end_column=50, + law_headings=["Prologue"]), True) + + def local_var_473(_: Any): + return date_courante_299 + local_var_470 = handle_default([], local_var_471, local_var_473) + except EmptyError: + raise EmptyError + return log_variable_definition(["AllocationsFamiliales", + "prestations_familiales.date_courante"], local_var_470) + prestations_familiales_dot_date_courante_467 = local_var_468 + + def local_var_476(_: Unit): + try: + def local_var_479(_: Any): + return log_decision_taken(SourcePosition(filename="./prologue.catala_fr", + start_line=159, start_column=14, + end_line=159, end_column=56, + law_headings=["Prologue"]), True) + + def local_var_481(_: Any): + return ElementPrestationsFamiliales(ElementPrestationsFamiliales_Code.AllocationsFamiliales, + Unit()) + local_var_478 = handle_default([], local_var_479, local_var_481) + except EmptyError: + raise EmptyError + return log_variable_definition(["AllocationsFamiliales", + "prestations_familiales.prestation_courante"], local_var_478) + prestations_familiales_dot_prestation_courante_475 = local_var_476 + + def local_var_484(_: Unit): + try: + def local_var_487(_: Any): + return log_decision_taken(SourcePosition(filename="./prologue.catala_fr", + start_line=163, start_column=14, + end_line=163, end_column=46, + law_headings=["Prologue"]), True) + + def local_var_489(_: Any): + return residence_293 + local_var_486 = handle_default([], local_var_487, local_var_489) + except EmptyError: + raise EmptyError + return log_variable_definition(["AllocationsFamiliales", + "prestations_familiales.résidence"], local_var_486) + prestations_familiales_dot_residence_483 = local_var_484 + + def local_var_492(_: Unit): + raise EmptyError + + def local_var_494(_: Unit): + raise EmptyError + + def local_var_496(_: Unit): + raise EmptyError + + def local_var_498(_: Unit): + raise EmptyError + + def local_var_500(_: Unit): + raise EmptyError + + def local_var_502(_: Unit): + raise EmptyError + result_491 = log_end_call(["AllocationsFamiliales", + "prestations_familiales", "PrestationsFamiliales"], + log_begin_call(["AllocationsFamiliales", "prestations_familiales", + "PrestationsFamiliales"], prestations_familiales, + PrestationsFamilialesIn(droit_ouvert_in=local_var_492, + conditions_hors_age_in=local_var_494, + plafond_l512_3_2_in=local_var_496, age_l512_3_2_in=local_var_498, + regime_outre_mer_l751_1_in=local_var_500, + date_courante_in=prestations_familiales_dot_date_courante_467, + prestation_courante_in=prestations_familiales_dot_prestation_courante_475, + residence_in=prestations_familiales_dot_residence_483, + base_mensuelle_in=local_var_502))) + prestations_familiales_dot_droit_ouvert_504 = result_491.droit_ouvert_out + prestations_familiales_dot_conditions_hors_age_505 = result_491.conditions_hors_age_out + prestations_familiales_dot_plafond_l512_3_2_506 = result_491.plafond_l512_3_2_out + prestations_familiales_dot_age_l512_3_2_507 = result_491.age_l512_3_2_out + prestations_familiales_dot_regime_outre_mer_l751_1_508 = result_491.regime_outre_mer_l751_1_out + prestations_familiales_dot_date_courante_509 = result_491.date_courante_out + prestations_familiales_dot_prestation_courante_510 = result_491.prestation_courante_out + prestations_familiales_dot_residence_511 = result_491.residence_out + prestations_familiales_dot_base_mensuelle_512 = result_491.base_mensuelle_out + + def local_var_514(_: Unit): + try: + def local_var_517(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=32, start_column=14, + end_line=32, end_column=40, + law_headings=["Règles diverses", "Épilogue", + "Décrets divers"]), True) + + def local_var_519(_: Any): + return enfants_a_charge_305 + local_var_516 = handle_default([], local_var_517, local_var_519) + except EmptyError: + raise EmptyError + return log_variable_definition(["AllocationsFamiliales", + "enfant_le_plus_âgé.enfants"], local_var_516) + enfant_le_plus_age_dot_enfants_513 = local_var_514 + + def local_var_522(_: Unit): + raise EmptyError + result_521 = log_end_call(["AllocationsFamiliales", + "enfant_le_plus_âgé", "EnfantLePlusÂgé"], + log_begin_call(["AllocationsFamiliales", "enfant_le_plus_âgé", + "EnfantLePlusÂgé"], enfant_le_plus_age, + EnfantLePlusAgeIn(enfants_in=enfant_le_plus_age_dot_enfants_513, + le_plus_age_in=local_var_522))) + enfant_le_plus_age_dot_enfants_524 = result_521.enfants_out + enfant_le_plus_age_dot_le_plus_age_525 = result_521.le_plus_age_out + try: + try: + local_var_527 = age_minimum_alinea_1_l521_3_270(Unit()) + except EmptyError: + def local_var_527(param_528: Enfant): try: try: try: - if log_decision_taken(SourcePosition(filename="./securite_sociale_R.catala_fr", - start_line=83, start_column=19, - end_line=83, end_column=69, - law_headings=["Article R521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets en Conseil d'Etat", - "Code de la sécurité sociale"]), ((param_336.date_de_naissance + - duration_of_numbers(11,0,0)) <= - date_of_numbers(2008,4,30))): - return version_avril_2008_dot_age_minimum_alinea_1_l521_3_290 - else: - raise EmptyError + def local_var_529(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_R.catala_fr", + start_line=83, start_column=19, + end_line=83, end_column=69, + law_headings=["Article R521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets en Conseil d'Etat", + "Code de la sécurité sociale"]), ((param_528.date_de_naissance + + duration_of_numbers(11, 0, 0)) <= + date_of_numbers(2008, 4, 30))) + + def local_var_531(_: Any): + return version_avril_2008_dot_age_minimum_alinea_1_l521_3_466 + return handle_default([], local_var_529, + local_var_531) except EmptyError: return integer_of_string("14") except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=152, start_column=12, end_line=152, - end_column=39, law_headings=["Prologue"])) + start_line=152, start_column=12, end_line=152, + end_column=39, law_headings=["Prologue"])) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=152, start_column=12, end_line=152, end_column=39, - law_headings=["Prologue"])) - age_minimum_alinea_1_l521_3_334 = log_variable_definition(["AllocationsFamiliales", - "âge_minimum_alinéa_1_l521_3"], local_var_335) + start_line=152, start_column=12, end_line=152, end_column=39, + law_headings=["Prologue"])) + age_minimum_alinea_1_l521_3_526 = log_variable_definition(["AllocationsFamiliales", + "âge_minimum_alinéa_1_l521_3"], local_var_527) try: try: - local_var_338 = enfants_a_charge_droit_ouvert_prestation_familiale_137(Unit()) + local_var_534 = enfants_a_charge_droit_ouvert_prestation_familiale_237( + Unit()) except EmptyError: try: - def local_var_339(enfant_340:Any): - return log_end_call(["PrestationsFamiliales", - "droit_ouvert"], - log_variable_definition(["PrestationsFamiliales", - "droit_ouvert", "output"], - log_begin_call(["PrestationsFamiliales", - "droit_ouvert"], - prestations_familiales_dot_droit_ouvert_316, - log_variable_definition(["PrestationsFamiliales", - "droit_ouvert", "input"], enfant_340)))) - local_var_338 = list_filter(local_var_339, - enfants_a_charge_185) + def local_var_535(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=75, start_column=14, + end_line=75, end_column=64, + law_headings=["Article L512-3", + "Chapitre 2 : Champ d'application", + "Titre 1 : Champ d'application - Généralités", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), True) + + def local_var_537(_: Any): + def local_var_539(enfant_540: Any): + return log_end_call(["PrestationsFamiliales", + "droit_ouvert"], + log_variable_definition(["PrestationsFamiliales", + "droit_ouvert", "output"], + log_begin_call(["PrestationsFamiliales", + "droit_ouvert"], + prestations_familiales_dot_droit_ouvert_504, + log_variable_definition(["PrestationsFamiliales", + "droit_ouvert", "input"], enfant_540)))) + return list_filter(local_var_539, enfants_a_charge_305) + local_var_534 = handle_default([], local_var_535, + local_var_537) except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=100, start_column=12, end_line=100, end_column=62, - law_headings=["Prologue"])) - enfants_a_charge_droit_ouvert_prestation_familiale_337 = log_variable_definition(["AllocationsFamiliales", - "enfants_à_charge_droit_ouvert_prestation_familiale"], - local_var_338) + start_line=100, start_column=12, end_line=100, end_column=62, + law_headings=["Prologue"])) + enfants_a_charge_droit_ouvert_prestation_familiale_533 = log_variable_definition(["AllocationsFamiliales", + "enfants_à_charge_droit_ouvert_prestation_familiale"], + local_var_534) try: try: - local_var_342 = est_enfant_le_plus_age_172(Unit()) + local_var_542 = est_enfant_le_plus_age_272(Unit()) except EmptyError: - def local_var_342(param_343:Enfant): + def local_var_542(param_543: Enfant): try: try: - return (enfant_le_plus_age_dot_le_plus_age_333 == - param_343) + def local_var_544(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=33, start_column=14, + end_line=33, end_column=36, + law_headings=["Règles diverses", + "Épilogue", "Décrets divers"]), True) + + def local_var_546(_: Any): + return (enfant_le_plus_age_dot_le_plus_age_525 == + param_543) + return handle_default([], local_var_544, + local_var_546) except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=154, start_column=12, end_line=154, - end_column=34, law_headings=["Prologue"])) + start_line=154, start_column=12, end_line=154, + end_column=34, law_headings=["Prologue"])) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=154, start_column=12, end_line=154, end_column=34, - law_headings=["Prologue"])) - est_enfant_le_plus_age_341 = log_variable_definition(["AllocationsFamiliales", - "est_enfant_le_plus_âgé"], local_var_342) + start_line=154, start_column=12, end_line=154, end_column=34, + law_headings=["Prologue"])) + est_enfant_le_plus_age_541 = log_variable_definition(["AllocationsFamiliales", + "est_enfant_le_plus_âgé"], local_var_542) try: try: - local_var_345 = plafond__i_i_d521_3_174(Unit()) + local_var_549 = plafond__i_i_d521_3_274(Unit()) except EmptyError: try: - def local_var_352(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=94, start_column=5, - end_line=94, end_column=69, - law_headings=["Circulaire interministérielle N° DSS/SD2B/2017/352 du 22 décembre 2017 relative à la revalorisation au 1er janvier 2018 des plafonds de ressources d’attribution de certaines prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à la Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte", - "Montant des plafonds de ressources", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2018,1,1)) and (date_courante_183 <= - date_of_numbers(2018,12,31)))): + def local_var_568(_: Any): + def local_var_570(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=94, start_column=5, + end_line=94, end_column=69, + law_headings=["Circulaire interministérielle N° DSS/SD2B/2017/352 du 22 décembre 2017 relative à la revalorisation au 1er janvier 2018 des plafonds de ressources d’attribution de certaines prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à la Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte", + "Montant des plafonds de ressources", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2018, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2018, 12, 31)))) + + def local_var_572(_: Any): return (money_of_cents_string("7877000") + - (money_of_cents_string("562800") * - decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337)))) - else: - raise EmptyError - def local_var_350(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=127, start_column=5, - end_line=127, end_column=69, - law_headings=["Instruction interministérielle n° DSS/SD2B/2018/279 du 17 décembre 2018 relative à la revalorisation au 1er janvier 2019 des plafonds de ressources d’attribution de certaines prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à la Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte", - "Montant des plafonds de ressources", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2019,1,1)) and (date_courante_183 <= - date_of_numbers(2019,12,31)))): + (money_of_cents_string("562800") * + decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533)))) + return handle_default([], local_var_570, local_var_572) + + def local_var_562(_: Any): + def local_var_564(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=127, start_column=5, + end_line=127, end_column=69, + law_headings=["Instruction interministérielle n° DSS/SD2B/2018/279 du 17 décembre 2018 relative à la revalorisation au 1er janvier 2019 des plafonds de ressources d’attribution de certaines prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à la Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte", + "Montant des plafonds de ressources", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2019, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2019, 12, 31)))) + + def local_var_566(_: Any): return (money_of_cents_string("7955800") + - (money_of_cents_string("568400") * - decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337)))) - else: - raise EmptyError - def local_var_348(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=160, start_column=5, - end_line=160, end_column=69, - law_headings=["Instruction interministerielle no DSS/SD2B/2019/261 du 18 décembre 2019 relative à la revalorisation au 1er janvier 2020 des plafonds de ressources d’attribution de certaines prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à La Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte", - "Montant des plafonds de ressources", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2020,1,1)) and (date_courante_183 <= - date_of_numbers(2020,12,31)))): + (money_of_cents_string("568400") * + decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533)))) + return handle_default([], local_var_564, local_var_566) + + def local_var_556(_: Any): + def local_var_558(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=160, start_column=5, + end_line=160, end_column=69, + law_headings=["Instruction interministerielle no DSS/SD2B/2019/261 du 18 décembre 2019 relative à la revalorisation au 1er janvier 2020 des plafonds de ressources d’attribution de certaines prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à La Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte", + "Montant des plafonds de ressources", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2020, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2020, 12, 31)))) + + def local_var_560(_: Any): return (money_of_cents_string("8083100") + - (money_of_cents_string("577500") * - decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337)))) - else: - raise EmptyError - def local_var_346(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=196, start_column=5, - end_line=196, end_column=69, - law_headings=["Article 1", - "Arrêté du 14 décembre 2020 relatif au montant des plafonds de ressources de certaines prestations familiales et aux tranches du barème applicable au recouvrement des indus et à la saisie des prestations", - "Montant des plafonds de ressources", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2021,1,1)) and (date_courante_183 <= - date_of_numbers(2021,12,31)))): + (money_of_cents_string("577500") * + decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533)))) + return handle_default([], local_var_558, local_var_560) + + def local_var_550(_: Any): + def local_var_552(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=196, start_column=5, + end_line=196, end_column=69, + law_headings=["Article 1", + "Arrêté du 14 décembre 2020 relatif au montant des plafonds de ressources de certaines prestations familiales et aux tranches du barème applicable au recouvrement des indus et à la saisie des prestations", + "Montant des plafonds de ressources", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2021, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2021, 12, 31)))) + + def local_var_554(_: Any): return (money_of_cents_string("8155800") + - (money_of_cents_string("582700") * - decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337)))) - else: - raise EmptyError - def local_var_354(_:Any): + (money_of_cents_string("582700") * + decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533)))) + return handle_default([], local_var_552, local_var_554) + + def local_var_574(_: Any): return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=308, start_column=14, - end_line=308, end_column=31, - law_headings=["Article D521-3", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), True) - def local_var_356(_:Any): + start_line=308, start_column=14, + end_line=308, end_column=31, + law_headings=["Article D521-3", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), True) + + def local_var_576(_: Any): return (money_of_cents_string("7830000") + - (money_of_cents_string("559500") * - decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337)))) - local_var_345 = handle_default([local_var_346, local_var_348, - local_var_350, local_var_352], local_var_354, - local_var_356) + (money_of_cents_string("559500") * + decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533)))) + local_var_549 = handle_default([local_var_550, local_var_556, + local_var_562, local_var_568], local_var_574, + local_var_576) except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=156, start_column=12, end_line=156, end_column=29, - law_headings=["Prologue"])) - plafond__i_i_d521_3_344 = log_variable_definition(["AllocationsFamiliales", - "plafond_II_d521_3"], local_var_345) + start_line=156, start_column=12, end_line=156, end_column=29, + law_headings=["Prologue"])) + plafond__i_i_d521_3_548 = log_variable_definition(["AllocationsFamiliales", + "plafond_II_d521_3"], local_var_549) try: try: - local_var_359 = plafond__i_d521_3_173(Unit()) + local_var_579 = plafond__i_d521_3_273(Unit()) except EmptyError: try: - def local_var_366(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=87, start_column=5, - end_line=87, end_column=69, - law_headings=["Circulaire interministérielle N° DSS/SD2B/2017/352 du 22 décembre 2017 relative à la revalorisation au 1er janvier 2018 des plafonds de ressources d’attribution de certaines prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à la Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte", - "Montant des plafonds de ressources", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2018,1,1)) and (date_courante_183 <= - date_of_numbers(2018,12,31)))): + def local_var_598(_: Any): + def local_var_600(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=87, start_column=5, + end_line=87, end_column=69, + law_headings=["Circulaire interministérielle N° DSS/SD2B/2017/352 du 22 décembre 2017 relative à la revalorisation au 1er janvier 2018 des plafonds de ressources d’attribution de certaines prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à la Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte", + "Montant des plafonds de ressources", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2018, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2018, 12, 31)))) + + def local_var_602(_: Any): return (money_of_cents_string("5628600") + - (money_of_cents_string("562800") * - decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337)))) - else: - raise EmptyError - def local_var_364(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=120, start_column=5, - end_line=120, end_column=69, - law_headings=["Instruction interministérielle n° DSS/SD2B/2018/279 du 17 décembre 2018 relative à la revalorisation au 1er janvier 2019 des plafonds de ressources d’attribution de certaines prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à la Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte", - "Montant des plafonds de ressources", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2019,1,1)) and (date_courante_183 <= - date_of_numbers(2019,12,31)))): + (money_of_cents_string("562800") * + decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533)))) + return handle_default([], local_var_600, local_var_602) + + def local_var_592(_: Any): + def local_var_594(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=120, start_column=5, + end_line=120, end_column=69, + law_headings=["Instruction interministérielle n° DSS/SD2B/2018/279 du 17 décembre 2018 relative à la revalorisation au 1er janvier 2019 des plafonds de ressources d’attribution de certaines prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à la Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte", + "Montant des plafonds de ressources", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2019, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2019, 12, 31)))) + + def local_var_596(_: Any): return (money_of_cents_string("5684900") + - (money_of_cents_string("568400") * - decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337)))) - else: - raise EmptyError - def local_var_362(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=153, start_column=5, - end_line=153, end_column=69, - law_headings=["Instruction interministerielle no DSS/SD2B/2019/261 du 18 décembre 2019 relative à la revalorisation au 1er janvier 2020 des plafonds de ressources d’attribution de certaines prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à La Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte", - "Montant des plafonds de ressources", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2020,1,1)) and (date_courante_183 <= - date_of_numbers(2020,12,31)))): + (money_of_cents_string("568400") * + decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533)))) + return handle_default([], local_var_594, local_var_596) + + def local_var_586(_: Any): + def local_var_588(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=153, start_column=5, + end_line=153, end_column=69, + law_headings=["Instruction interministerielle no DSS/SD2B/2019/261 du 18 décembre 2019 relative à la revalorisation au 1er janvier 2020 des plafonds de ressources d’attribution de certaines prestations familiales servies en métropole, en Guadeloupe, en Guyane, en Martinique, à La Réunion, à Saint-Barthélemy, à Saint-Martin et à Mayotte", + "Montant des plafonds de ressources", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2020, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2020, 12, 31)))) + + def local_var_590(_: Any): return (money_of_cents_string("5775900") + - (money_of_cents_string("577500") * - decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337)))) - else: - raise EmptyError - def local_var_360(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=180, start_column=5, - end_line=180, end_column=69, - law_headings=["Article 1", - "Arrêté du 14 décembre 2020 relatif au montant des plafonds de ressources de certaines prestations familiales et aux tranches du barème applicable au recouvrement des indus et à la saisie des prestations", - "Montant des plafonds de ressources", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2021,1,1)) and (date_courante_183 <= - date_of_numbers(2021,12,31)))): + (money_of_cents_string("577500") * + decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533)))) + return handle_default([], local_var_588, local_var_590) + + def local_var_580(_: Any): + def local_var_582(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=180, start_column=5, + end_line=180, end_column=69, + law_headings=["Article 1", + "Arrêté du 14 décembre 2020 relatif au montant des plafonds de ressources de certaines prestations familiales et aux tranches du barème applicable au recouvrement des indus et à la saisie des prestations", + "Montant des plafonds de ressources", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2021, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2021, 12, 31)))) + + def local_var_584(_: Any): return (money_of_cents_string("5827900") + - (money_of_cents_string("582700") * - decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337)))) - else: - raise EmptyError - def local_var_368(_:Any): + (money_of_cents_string("582700") * + decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533)))) + return handle_default([], local_var_582, local_var_584) + + def local_var_604(_: Any): return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=298, start_column=14, - end_line=298, end_column=30, - law_headings=["Article D521-3", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), True) - def local_var_370(_:Any): + start_line=298, start_column=14, + end_line=298, end_column=30, + law_headings=["Article D521-3", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), True) + + def local_var_606(_: Any): return (money_of_cents_string("5595000") + - (money_of_cents_string("559500") * - decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337)))) - local_var_359 = handle_default([local_var_360, local_var_362, - local_var_364, local_var_366], local_var_368, - local_var_370) + (money_of_cents_string("559500") * + decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533)))) + local_var_579 = handle_default([local_var_580, local_var_586, + local_var_592, local_var_598], local_var_604, + local_var_606) except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=155, start_column=12, end_line=155, end_column=28, - law_headings=["Prologue"])) - plafond__i_d521_3_358 = log_variable_definition(["AllocationsFamiliales", - "plafond_I_d521_3"], local_var_359) + start_line=155, start_column=12, end_line=155, end_column=28, + law_headings=["Prologue"])) + plafond__i_d521_3_578 = log_variable_definition(["AllocationsFamiliales", + "plafond_I_d521_3"], local_var_579) try: try: - local_var_373 = droit_ouvert_complement_164(Unit()) + local_var_609 = droit_ouvert_complement_264(Unit()) except EmptyError: try: try: - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=426, start_column=5, - end_line=427, end_column=71, - law_headings=["Article L755-12", - "Chapitre 5 : Prestations familiales et prestations assimilées", - "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, à la Martinique, à La Réunion, à Saint-Barthélemy et à Saint-Martin", - "Livre 7 : Régimes divers - Dispositions diverses", - "Partie législative", - "Code de la sécurité sociale"]), (prestations_familiales_dot_regime_outre_mer_l751_1_320 and - (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) == - integer_of_string("1")))): - local_var_373 = False - else: - raise EmptyError + def local_var_610(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=426, start_column=5, + end_line=427, end_column=71, + law_headings=["Article L755-12", + "Chapitre 5 : Prestations familiales et prestations assimilées", + "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, à la Martinique, à La Réunion, à Saint-Barthélemy et à Saint-Martin", + "Livre 7 : Régimes divers - Dispositions diverses", + "Partie législative", + "Code de la sécurité sociale"]), (prestations_familiales_dot_regime_outre_mer_l751_1_508 and + (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) == + integer_of_string("1")))) + + def local_var_612(_: Any): + return False + local_var_609 = handle_default([], local_var_610, + local_var_612) except EmptyError: - local_var_373 = True + local_var_609 = True except EmptyError: - local_var_373 = False + local_var_609 = False except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=139, start_column=12, end_line=139, end_column=35, - law_headings=["Prologue"])) - droit_ouvert_complement_372 = log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_complément"], local_var_373) + start_line=139, start_column=12, end_line=139, end_column=35, + law_headings=["Prologue"])) + droit_ouvert_complement_608 = log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_complément"], local_var_609) try: try: - local_var_375 = droit_ouvert_forfaitaire_156(Unit()) + local_var_615 = droit_ouvert_forfaitaire_256(Unit()) except EmptyError: - def local_var_375(param_376:Enfant): + def local_var_615(param_616: Enfant): try: try: try: - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=420, start_column=6, - end_line=421, end_column=72, - law_headings=["Article L755-12", - "Chapitre 5 : Prestations familiales et prestations assimilées", - "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, à la Martinique, à La Réunion, à Saint-Barthélemy et à Saint-Martin", - "Livre 7 : Régimes divers - Dispositions diverses", - "Partie législative", - "Code de la sécurité sociale"]), (prestations_familiales_dot_regime_outre_mer_l751_1_320 and - (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) == - integer_of_string("1")))): + def local_var_617(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=420, start_column=6, + end_line=421, end_column=72, + law_headings=["Article L755-12", + "Chapitre 5 : Prestations familiales et prestations assimilées", + "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, à la Martinique, à La Réunion, à Saint-Barthélemy et à Saint-Martin", + "Livre 7 : Régimes divers - Dispositions diverses", + "Partie législative", + "Code de la sécurité sociale"]), (prestations_familiales_dot_regime_outre_mer_l751_1_508 and + (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) == + integer_of_string("1")))) + + def local_var_619(_: Any): return False - else: - raise EmptyError + return handle_default([], local_var_617, + local_var_619) except EmptyError: if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=119, start_column=5, - end_line=125, end_column=59, - law_headings=["Article L521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), ((list_length(enfants_a_charge_185) >= - nombre_enfants_alinea_2_l521_3_285) and - ((param_376.age == - prestations_familiales_dot_age_l512_3_2_319) and - (param_376.a_deja_ouvert_droit_aux_allocations_familiales and - log_end_call(["PrestationsFamiliales", - "conditions_hors_âge"], - log_variable_definition(["PrestationsFamiliales", - "conditions_hors_âge", "output"], - log_begin_call(["PrestationsFamiliales", - "conditions_hors_âge"], - prestations_familiales_dot_conditions_hors_age_317, - log_variable_definition(["PrestationsFamiliales", - "conditions_hors_âge", "input"], - param_376)))))))): + start_line=119, start_column=5, + end_line=125, end_column=59, + law_headings=["Article L521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), ((list_length(enfants_a_charge_305) >= + nombre_enfants_alinea_2_l521_3_457) and + ((param_616.age == + prestations_familiales_dot_age_l512_3_2_507) and + (param_616.a_deja_ouvert_droit_aux_allocations_familiales and + log_end_call(["PrestationsFamiliales", + "conditions_hors_âge"], + log_variable_definition(["PrestationsFamiliales", + "conditions_hors_âge", "output"], + log_begin_call(["PrestationsFamiliales", + "conditions_hors_âge"], + prestations_familiales_dot_conditions_hors_age_505, + log_variable_definition(["PrestationsFamiliales", + "conditions_hors_âge", "input"], + param_616)))))))): return True else: raise EmptyError @@ -2338,868 +2679,1084 @@ def allocations_familiales(allocations_familiales_in_130:AllocationsFamilialesIn return False except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=127, start_column=12, end_line=127, - end_column=36, law_headings=["Prologue"])) + start_line=127, start_column=12, end_line=127, + end_column=36, law_headings=["Prologue"])) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=127, start_column=12, end_line=127, end_column=36, - law_headings=["Prologue"])) - droit_ouvert_forfaitaire_374 = log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_forfaitaire"], local_var_375) + start_line=127, start_column=12, end_line=127, end_column=36, + law_headings=["Prologue"])) + droit_ouvert_forfaitaire_614 = log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_forfaitaire"], local_var_615) try: try: - local_var_378 = montant_initial_base_quatrieme_enfant_et_plus_mayotte_155(Unit()) + local_var_622 = montant_initial_base_quatrieme_enfant_et_plus_mayotte_255( + Unit()) except EmptyError: try: - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("3")): - local_var_378 = ((prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.0463")) * - decimal_of_integer((list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) - - integer_of_string("3")))) - else: - local_var_378 = money_of_cents_string("0") - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=124, start_column=12, end_line=124, end_column=65, - law_headings=["Prologue"])) - montant_initial_base_quatrieme_enfant_et_plus_mayotte_377 = log_variable_definition(["AllocationsFamiliales", - "montant_initial_base_quatrième_enfant_et_plus_mayotte"], - local_var_378) - try: - try: - local_var_380 = montant_initial_base_troisieme_enfant_mayotte_154(Unit()) - except EmptyError: - try: - def local_var_399(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=584, start_column=5, - end_line=584, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2011,1,1)) and (date_courante_183 <= - date_of_numbers(2011,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("2")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.0463")) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_397(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=591, start_column=5, - end_line=591, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2012,1,1)) and (date_courante_183 <= - date_of_numbers(2012,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("2")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.0539")) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_395(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=598, start_column=5, - end_line=598, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2013,1,1)) and (date_courante_183 <= - date_of_numbers(2013,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("2")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.075")) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_393(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=605, start_column=5, - end_line=605, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2014,1,1)) and (date_courante_183 <= - date_of_numbers(2014,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("2")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.069")) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_391(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=612, start_column=5, - end_line=612, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2015,1,1)) and (date_courante_183 <= - date_of_numbers(2015,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("2")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.0766")) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_389(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=619, start_column=5, - end_line=619, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2016,1,1)) and (date_courante_183 <= - date_of_numbers(2016,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("2")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.0842")) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_387(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=626, start_column=5, - end_line=626, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2017,1,1)) and (date_courante_183 <= - date_of_numbers(2017,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("2")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.0918")) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_385(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=633, start_column=5, - end_line=633, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2018,1,1)) and (date_courante_183 <= - date_of_numbers(2018,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("2")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.1089")) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_383(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=640, start_column=5, - end_line=640, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2019,1,1)) and (date_courante_183 <= - date_of_numbers(2019,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("2")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.1259")) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_381(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=647, start_column=5, - end_line=647, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2020,1,1)) and (date_courante_183 <= - date_of_numbers(2020,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("2")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.143")) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_401(_:Any): + def local_var_623(_: Any): return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=376, start_column=14, - end_line=376, end_column=59, - law_headings=["Article 7", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), True) - def local_var_403(_:Any): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("2")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.16")) + start_line=385, start_column=14, + end_line=385, end_column=67, + law_headings=["Article 7", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), True) + + def local_var_625(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("3")): + return ((prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.0463")) * + decimal_of_integer((list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) - + integer_of_string("3")))) else: return money_of_cents_string("0") - local_var_380 = handle_default([local_var_381, local_var_383, - local_var_385, local_var_387, local_var_389, - local_var_391, local_var_393, local_var_395, - local_var_397, local_var_399], local_var_401, - local_var_403) + local_var_622 = handle_default([], local_var_623, + local_var_625) except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=123, start_column=12, end_line=123, end_column=57, - law_headings=["Prologue"])) - montant_initial_base_troisieme_enfant_mayotte_379 = log_variable_definition(["AllocationsFamiliales", - "montant_initial_base_troisième_enfant_mayotte"], local_var_380) + start_line=124, start_column=12, end_line=124, end_column=65, + law_headings=["Prologue"])) + montant_initial_base_quatrieme_enfant_et_plus_mayotte_621 = log_variable_definition(["AllocationsFamiliales", + "montant_initial_base_quatrième_enfant_et_plus_mayotte"], + local_var_622) try: try: - local_var_406 = montant_initial_base_deuxieme_enfant_mayotte_153(Unit()) + local_var_628 = montant_initial_base_troisieme_enfant_mayotte_254( + Unit()) except EmptyError: try: - def local_var_425(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=513, start_column=5, - end_line=513, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2011,1,1)) and (date_courante_183 <= - date_of_numbers(2011,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("1")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.232")) + def local_var_683(_: Any): + def local_var_685(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=584, start_column=5, + end_line=584, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2011, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2011, 12, 31)))) + + def local_var_687(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("2")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.0463")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_423(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=520, start_column=5, - end_line=520, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2012,1,1)) and (date_courante_183 <= - date_of_numbers(2012,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("1")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.2379")) + return handle_default([], local_var_685, local_var_687) + + def local_var_677(_: Any): + def local_var_679(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=591, start_column=5, + end_line=591, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2012, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2012, 12, 31)))) + + def local_var_681(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("2")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.0539")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_421(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=527, start_column=5, - end_line=527, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2013,1,1)) and (date_courante_183 <= - date_of_numbers(2013,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("1")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.2437")) + return handle_default([], local_var_679, local_var_681) + + def local_var_671(_: Any): + def local_var_673(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=598, start_column=5, + end_line=598, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2013, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2013, 12, 31)))) + + def local_var_675(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("2")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.075")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_419(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=534, start_column=5, - end_line=534, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2014,1,1)) and (date_courante_183 <= - date_of_numbers(2014,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("1")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.2496")) + return handle_default([], local_var_673, local_var_675) + + def local_var_665(_: Any): + def local_var_667(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=605, start_column=5, + end_line=605, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2014, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2014, 12, 31)))) + + def local_var_669(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("2")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.069")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_417(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=541, start_column=5, - end_line=541, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2015,1,1)) and (date_courante_183 <= - date_of_numbers(2015,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("1")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.2555")) + return handle_default([], local_var_667, local_var_669) + + def local_var_659(_: Any): + def local_var_661(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=612, start_column=5, + end_line=612, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2015, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2015, 12, 31)))) + + def local_var_663(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("2")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.0766")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_415(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=548, start_column=5, - end_line=548, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2016,1,1)) and (date_courante_183 <= - date_of_numbers(2016,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("1")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.273")) + return handle_default([], local_var_661, local_var_663) + + def local_var_653(_: Any): + def local_var_655(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=619, start_column=5, + end_line=619, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2016, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2016, 12, 31)))) + + def local_var_657(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("2")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.0842")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_413(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=555, start_column=5, - end_line=555, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2017,1,1)) and (date_courante_183 <= - date_of_numbers(2017,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("1")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.2672")) + return handle_default([], local_var_655, local_var_657) + + def local_var_647(_: Any): + def local_var_649(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=626, start_column=5, + end_line=626, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2017, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2017, 12, 31)))) + + def local_var_651(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("2")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.0918")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_411(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=562, start_column=5, - end_line=562, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2018,1,1)) and (date_courante_183 <= - date_of_numbers(2018,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("1")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.284")) + return handle_default([], local_var_649, local_var_651) + + def local_var_641(_: Any): + def local_var_643(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=633, start_column=5, + end_line=633, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2018, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2018, 12, 31)))) + + def local_var_645(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("2")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.1089")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_409(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=569, start_column=5, - end_line=569, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2019,1,1)) and (date_courante_183 <= - date_of_numbers(2019,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("1")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.2936")) + return handle_default([], local_var_643, local_var_645) + + def local_var_635(_: Any): + def local_var_637(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=640, start_column=5, + end_line=640, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2019, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2019, 12, 31)))) + + def local_var_639(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("2")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.1259")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_407(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=576, start_column=5, - end_line=576, end_column=69, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2020,1,1)) and (date_courante_183 <= - date_of_numbers(2020,12,31)))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("1")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.3068")) + return handle_default([], local_var_637, local_var_639) + + def local_var_629(_: Any): + def local_var_631(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=647, start_column=5, + end_line=647, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2020, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2020, 12, 31)))) + + def local_var_633(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("2")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.143")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_427(_:Any): + return handle_default([], local_var_631, local_var_633) + + def local_var_689(_: Any): return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=367, start_column=14, - end_line=367, end_column=58, - law_headings=["Article 7", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), True) - def local_var_429(_:Any): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("1")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.32")) + start_line=376, start_column=14, + end_line=376, end_column=59, + law_headings=["Article 7", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), True) + + def local_var_691(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("2")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.16")) else: return money_of_cents_string("0") - local_var_406 = handle_default([local_var_407, local_var_409, - local_var_411, local_var_413, local_var_415, - local_var_417, local_var_419, local_var_421, - local_var_423, local_var_425], local_var_427, - local_var_429) + local_var_628 = handle_default([local_var_629, local_var_635, + local_var_641, local_var_647, local_var_653, + local_var_659, local_var_665, local_var_671, + local_var_677, local_var_683], local_var_689, + local_var_691) except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=122, start_column=12, end_line=122, end_column=56, - law_headings=["Prologue"])) - montant_initial_base_deuxieme_enfant_mayotte_405 = log_variable_definition(["AllocationsFamiliales", - "montant_initial_base_deuxième_enfant_mayotte"], local_var_406) + start_line=123, start_column=12, end_line=123, end_column=57, + law_headings=["Prologue"])) + montant_initial_base_troisieme_enfant_mayotte_627 = log_variable_definition(["AllocationsFamiliales", + "montant_initial_base_troisième_enfant_mayotte"], local_var_628) try: try: - local_var_432 = montant_initial_base_premier_enfant_mayotte_152(Unit()) + local_var_694 = montant_initial_base_deuxieme_enfant_mayotte_253( + Unit()) except EmptyError: try: - def local_var_453(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=425, start_column=5, - end_line=426, end_column=53, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2011,1,1)) and ((date_courante_183 <= - date_of_numbers(2011,12,31)) and - not avait_enfant_a_charge_avant_1er_janvier_2012_281))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("0")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.145")) + def local_var_749(_: Any): + def local_var_751(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=513, start_column=5, + end_line=513, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2011, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2011, 12, 31)))) + + def local_var_753(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("1")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.232")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_451(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=433, start_column=5, - end_line=434, end_column=53, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2012,1,1)) and ((date_courante_183 <= - date_of_numbers(2012,12,31)) and - not avait_enfant_a_charge_avant_1er_janvier_2012_281))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("0")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.1393")) + return handle_default([], local_var_751, local_var_753) + + def local_var_743(_: Any): + def local_var_745(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=520, start_column=5, + end_line=520, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2012, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2012, 12, 31)))) + + def local_var_747(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("1")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.2379")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_449(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=441, start_column=5, - end_line=442, end_column=53, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2013,1,1)) and ((date_courante_183 <= - date_of_numbers(2013,12,31)) and - not avait_enfant_a_charge_avant_1er_janvier_2012_281))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("0")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.1335")) + return handle_default([], local_var_745, local_var_747) + + def local_var_737(_: Any): + def local_var_739(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=527, start_column=5, + end_line=527, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2013, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2013, 12, 31)))) + + def local_var_741(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("1")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.2437")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_447(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=449, start_column=5, - end_line=450, end_column=53, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2014,1,1)) and ((date_courante_183 <= - date_of_numbers(2014,12,31)) and - not avait_enfant_a_charge_avant_1er_janvier_2012_281))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("0")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.1278")) + return handle_default([], local_var_739, local_var_741) + + def local_var_731(_: Any): + def local_var_733(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=534, start_column=5, + end_line=534, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2014, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2014, 12, 31)))) + + def local_var_735(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("1")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.2496")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_445(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=457, start_column=5, - end_line=458, end_column=53, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2015,1,1)) and ((date_courante_183 <= - date_of_numbers(2015,12,31)) and - not avait_enfant_a_charge_avant_1er_janvier_2012_281))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("0")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.122")) + return handle_default([], local_var_733, local_var_735) + + def local_var_725(_: Any): + def local_var_727(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=541, start_column=5, + end_line=541, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2015, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2015, 12, 31)))) + + def local_var_729(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("1")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.2555")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_443(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=465, start_column=5, - end_line=466, end_column=53, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2016,1,1)) and ((date_courante_183 <= - date_of_numbers(2016,12,31)) and - not avait_enfant_a_charge_avant_1er_janvier_2012_281))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("0")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.1163")) + return handle_default([], local_var_727, local_var_729) + + def local_var_719(_: Any): + def local_var_721(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=548, start_column=5, + end_line=548, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2016, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2016, 12, 31)))) + + def local_var_723(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("1")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.273")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_441(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=473, start_column=5, - end_line=474, end_column=53, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2017,1,1)) and ((date_courante_183 <= - date_of_numbers(2017,12,31)) and - not avait_enfant_a_charge_avant_1er_janvier_2012_281))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("0")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.115")) + return handle_default([], local_var_721, local_var_723) + + def local_var_713(_: Any): + def local_var_715(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=555, start_column=5, + end_line=555, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2017, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2017, 12, 31)))) + + def local_var_717(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("1")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.2672")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_439(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=481, start_column=5, - end_line=482, end_column=53, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2018,1,1)) and ((date_courante_183 <= - date_of_numbers(2018,12,31)) and - not avait_enfant_a_charge_avant_1er_janvier_2012_281))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("0")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.0976")) + return handle_default([], local_var_715, local_var_717) + + def local_var_707(_: Any): + def local_var_709(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=562, start_column=5, + end_line=562, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2018, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2018, 12, 31)))) + + def local_var_711(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("1")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.284")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_437(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=489, start_column=5, - end_line=490, end_column=53, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2019,1,1)) and ((date_courante_183 <= - date_of_numbers(2019,12,31)) and - not avait_enfant_a_charge_avant_1er_janvier_2012_281))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("0")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.0847")) + return handle_default([], local_var_709, local_var_711) + + def local_var_701(_: Any): + def local_var_703(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=569, start_column=5, + end_line=569, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2019, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2019, 12, 31)))) + + def local_var_705(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("1")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.2936")) else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_435(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=497, start_column=5, - end_line=498, end_column=53, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((date_courante_183 >= - date_of_numbers(2020,1,1)) and ((date_courante_183 <= - date_of_numbers(2020,12,31)) and - not avait_enfant_a_charge_avant_1er_janvier_2012_281))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("0")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.0717")) + return handle_default([], local_var_703, local_var_705) + + def local_var_695(_: Any): + def local_var_697(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=576, start_column=5, + end_line=576, end_column=69, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2020, 1, 1)) and + (date_courante_299 <= + date_of_numbers(2020, 12, 31)))) + + def local_var_699(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("1")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.3068")) else: return money_of_cents_string("0") + return handle_default([], local_var_697, local_var_699) + + def local_var_755(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=367, start_column=14, + end_line=367, end_column=58, + law_headings=["Article 7", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), True) + + def local_var_757(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("1")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.32")) else: - raise EmptyError - def local_var_433(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=505, start_column=5, - end_line=505, end_column=49, law_headings=["Annexe", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), avait_enfant_a_charge_avant_1er_janvier_2012_281): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("0")): + return money_of_cents_string("0") + local_var_694 = handle_default([local_var_695, local_var_701, + local_var_707, local_var_713, local_var_719, + local_var_725, local_var_731, local_var_737, + local_var_743, local_var_749], local_var_755, + local_var_757) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=122, start_column=12, end_line=122, end_column=56, + law_headings=["Prologue"])) + montant_initial_base_deuxieme_enfant_mayotte_693 = log_variable_definition(["AllocationsFamiliales", + "montant_initial_base_deuxième_enfant_mayotte"], local_var_694) + try: + try: + local_var_760 = montant_initial_base_premier_enfant_mayotte_252( + Unit()) + except EmptyError: + try: + def local_var_821(_: Any): + def local_var_823(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=425, start_column=5, + end_line=426, end_column=53, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2011, 1, 1)) and + ((date_courante_299 <= + date_of_numbers(2011, 12, 31)) and + not avait_enfant_a_charge_avant_1er_janvier_2012_445))) + + def local_var_825(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("0")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.145")) + else: + return money_of_cents_string("0") + return handle_default([], local_var_823, local_var_825) + + def local_var_815(_: Any): + def local_var_817(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=433, start_column=5, + end_line=434, end_column=53, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2012, 1, 1)) and + ((date_courante_299 <= + date_of_numbers(2012, 12, 31)) and + not avait_enfant_a_charge_avant_1er_janvier_2012_445))) + + def local_var_819(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("0")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.1393")) + else: + return money_of_cents_string("0") + return handle_default([], local_var_817, local_var_819) + + def local_var_809(_: Any): + def local_var_811(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=441, start_column=5, + end_line=442, end_column=53, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2013, 1, 1)) and + ((date_courante_299 <= + date_of_numbers(2013, 12, 31)) and + not avait_enfant_a_charge_avant_1er_janvier_2012_445))) + + def local_var_813(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("0")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.1335")) + else: + return money_of_cents_string("0") + return handle_default([], local_var_811, local_var_813) + + def local_var_803(_: Any): + def local_var_805(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=449, start_column=5, + end_line=450, end_column=53, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2014, 1, 1)) and + ((date_courante_299 <= + date_of_numbers(2014, 12, 31)) and + not avait_enfant_a_charge_avant_1er_janvier_2012_445))) + + def local_var_807(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("0")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.1278")) + else: + return money_of_cents_string("0") + return handle_default([], local_var_805, local_var_807) + + def local_var_797(_: Any): + def local_var_799(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=457, start_column=5, + end_line=458, end_column=53, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2015, 1, 1)) and + ((date_courante_299 <= + date_of_numbers(2015, 12, 31)) and + not avait_enfant_a_charge_avant_1er_janvier_2012_445))) + + def local_var_801(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("0")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.122")) + else: + return money_of_cents_string("0") + return handle_default([], local_var_799, local_var_801) + + def local_var_791(_: Any): + def local_var_793(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=465, start_column=5, + end_line=466, end_column=53, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2016, 1, 1)) and + ((date_courante_299 <= + date_of_numbers(2016, 12, 31)) and + not avait_enfant_a_charge_avant_1er_janvier_2012_445))) + + def local_var_795(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("0")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.1163")) + else: + return money_of_cents_string("0") + return handle_default([], local_var_793, local_var_795) + + def local_var_785(_: Any): + def local_var_787(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=473, start_column=5, + end_line=474, end_column=53, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2017, 1, 1)) and + ((date_courante_299 <= + date_of_numbers(2017, 12, 31)) and + not avait_enfant_a_charge_avant_1er_janvier_2012_445))) + + def local_var_789(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("0")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.115")) + else: + return money_of_cents_string("0") + return handle_default([], local_var_787, local_var_789) + + def local_var_779(_: Any): + def local_var_781(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=481, start_column=5, + end_line=482, end_column=53, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2018, 1, 1)) and + ((date_courante_299 <= + date_of_numbers(2018, 12, 31)) and + not avait_enfant_a_charge_avant_1er_janvier_2012_445))) + + def local_var_783(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("0")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.0976")) + else: + return money_of_cents_string("0") + return handle_default([], local_var_781, local_var_783) + + def local_var_773(_: Any): + def local_var_775(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=489, start_column=5, + end_line=490, end_column=53, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2019, 1, 1)) and + ((date_courante_299 <= + date_of_numbers(2019, 12, 31)) and + not avait_enfant_a_charge_avant_1er_janvier_2012_445))) + + def local_var_777(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("0")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.0847")) + else: + return money_of_cents_string("0") + return handle_default([], local_var_775, local_var_777) + + def local_var_767(_: Any): + def local_var_769(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=497, start_column=5, + end_line=498, end_column=53, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((date_courante_299 >= + date_of_numbers(2020, 1, 1)) and + ((date_courante_299 <= + date_of_numbers(2020, 12, 31)) and + not avait_enfant_a_charge_avant_1er_janvier_2012_445))) + + def local_var_771(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("0")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.0717")) + else: + return money_of_cents_string("0") + return handle_default([], local_var_769, local_var_771) + + def local_var_761(_: Any): + def local_var_763(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=505, start_column=5, + end_line=505, end_column=49, + law_headings=["Annexe", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), avait_enfant_a_charge_avant_1er_janvier_2012_445) + + def local_var_765(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("0")): return money_of_cents_string("5728") else: return money_of_cents_string("0") - else: - raise EmptyError - def local_var_455(_:Any): + return handle_default([], local_var_763, local_var_765) + + def local_var_827(_: Any): return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=358, start_column=14, - end_line=358, end_column=57, - law_headings=["Article 7", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), True) - def local_var_457(_:Any): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("0")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.0588")) + start_line=358, start_column=14, + end_line=358, end_column=57, + law_headings=["Article 7", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), True) + + def local_var_829(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("0")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.0588")) else: return money_of_cents_string("0") - local_var_432 = handle_default([local_var_433, local_var_435, - local_var_437, local_var_439, local_var_441, - local_var_443, local_var_445, local_var_447, - local_var_449, local_var_451, local_var_453], - local_var_455, local_var_457) + local_var_760 = handle_default([local_var_761, local_var_767, + local_var_773, local_var_779, local_var_785, + local_var_791, local_var_797, local_var_803, + local_var_809, local_var_815, local_var_821], + local_var_827, local_var_829) except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=121, start_column=12, end_line=121, end_column=55, - law_headings=["Prologue"])) - montant_initial_base_premier_enfant_mayotte_431 = log_variable_definition(["AllocationsFamiliales", - "montant_initial_base_premier_enfant_mayotte"], local_var_432) + start_line=121, start_column=12, end_line=121, end_column=55, + law_headings=["Prologue"])) + montant_initial_base_premier_enfant_mayotte_759 = log_variable_definition(["AllocationsFamiliales", + "montant_initial_base_premier_enfant_mayotte"], local_var_760) try: try: - local_var_460 = nombre_total_enfants_148(Unit()) + local_var_832 = nombre_total_enfants_248(Unit()) except EmptyError: try: - local_var_460 = decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337)) + def local_var_833(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_R.catala_fr", + start_line=162, start_column=14, + end_line=162, end_column=34, + law_headings=["Article R521-3", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets en Conseil d'Etat", + "Code de la sécurité sociale"]), True) + + def local_var_835(_: Any): + return decimal_of_integer(list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533)) + local_var_832 = handle_default([], local_var_833, + local_var_835) except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=115, start_column=12, end_line=115, end_column=32, - law_headings=["Prologue"])) - nombre_total_enfants_459 = log_variable_definition(["AllocationsFamiliales", - "nombre_total_enfants"], local_var_460) + start_line=115, start_column=12, end_line=115, end_column=32, + law_headings=["Prologue"])) + nombre_total_enfants_831 = log_variable_definition(["AllocationsFamiliales", + "nombre_total_enfants"], local_var_832) try: try: - local_var_462 = nombre_moyen_enfants_147(Unit()) + local_var_838 = nombre_moyen_enfants_247(Unit()) except EmptyError: try: - def local_var_463(acc_464:Decimal, enfant_465:Any): - match_arg_801 = log_end_call(["AllocationsFamiliales", - "prise_en_compte"], - log_variable_definition(["AllocationsFamiliales", - "prise_en_compte", "output"], - log_begin_call(["AllocationsFamiliales", - "prise_en_compte"], prise_en_compte_187, - log_variable_definition(["AllocationsFamiliales", - "prise_en_compte", "input"], - enfant_465)))) - if match_arg_801.code == PriseEnCompte_Code.Complete: - _ = match_arg_801.value - local_var_466 = decimal_of_string("1.") - elif match_arg_801.code == PriseEnCompte_Code.Partagee: - _ = match_arg_801.value - local_var_466 = decimal_of_string("0.5") - elif match_arg_801.code == PriseEnCompte_Code.Zero: - _ = match_arg_801.value - local_var_466 = decimal_of_string("0.") - return (acc_464 + local_var_466) - local_var_462 = list_fold_left(local_var_463, - decimal_of_string("0."), - enfants_a_charge_droit_ouvert_prestation_familiale_337) + def local_var_839(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_R.catala_fr", + start_line=142, start_column=14, + end_line=142, end_column=34, + law_headings=["Article R521-3", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets en Conseil d'Etat", + "Code de la sécurité sociale"]), True) + + def local_var_841(_: Any): + def local_var_843(acc_844: Decimal, enfant_845: Any): + match_arg_1381 = log_end_call(["AllocationsFamiliales", + "prise_en_compte"], + log_variable_definition(["AllocationsFamiliales", + "prise_en_compte", "output"], + log_begin_call(["AllocationsFamiliales", + "prise_en_compte"], prise_en_compte_311, + log_variable_definition(["AllocationsFamiliales", + "prise_en_compte", "input"], + enfant_845)))) + if match_arg_1381.code == PriseEnCompte_Code.Complete: + _ = match_arg_1381.value + local_var_846 = decimal_of_string("1.") + elif match_arg_1381.code == PriseEnCompte_Code.Partagee: + _ = match_arg_1381.value + local_var_846 = decimal_of_string("0.5") + elif match_arg_1381.code == PriseEnCompte_Code.Zero: + _ = match_arg_1381.value + local_var_846 = decimal_of_string("0.") + return (acc_844 + local_var_846) + return list_fold_left(local_var_843, + decimal_of_string("0."), + enfants_a_charge_droit_ouvert_prestation_familiale_533) + local_var_838 = handle_default([], local_var_839, + local_var_841) except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=114, start_column=12, end_line=114, end_column=32, - law_headings=["Prologue"])) - nombre_moyen_enfants_461 = log_variable_definition(["AllocationsFamiliales", - "nombre_moyen_enfants"], local_var_462) + start_line=114, start_column=12, end_line=114, end_column=32, + law_headings=["Prologue"])) + nombre_moyen_enfants_837 = log_variable_definition(["AllocationsFamiliales", + "nombre_moyen_enfants"], local_var_838) try: try: - local_var_471 = montant_initial_base_premier_enfant_143(Unit()) + local_var_851 = montant_initial_base_premier_enfant_243(Unit()) except EmptyError: try: try: - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=359, start_column=5, - end_line=360, end_column=71, - law_headings=["Article D755-5", - "Chapitre 5 : Prestations familiales et prestations assimilées", - "Titre 5 : Départements d'outre-mer", - "Livre 7 : Régimes divers - Dispositions diverses", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), (prestations_familiales_dot_regime_outre_mer_l751_1_320 and - (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) == - integer_of_string("1")))): - local_var_471 = (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.0588")) - else: - raise EmptyError + def local_var_852(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=359, start_column=5, + end_line=360, end_column=71, + law_headings=["Article D755-5", + "Chapitre 5 : Prestations familiales et prestations assimilées", + "Titre 5 : Départements d'outre-mer", + "Livre 7 : Régimes divers - Dispositions diverses", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), (prestations_familiales_dot_regime_outre_mer_l751_1_508 and + (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) == + integer_of_string("1")))) + + def local_var_854(_: Any): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.0588")) + local_var_851 = handle_default([], local_var_852, + local_var_854) except EmptyError: - local_var_471 = money_of_cents_string("0") + local_var_851 = money_of_cents_string("0") except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=110, start_column=12, end_line=110, end_column=47, - law_headings=["Prologue"])) - montant_initial_base_premier_enfant_470 = log_variable_definition(["AllocationsFamiliales", - "montant_initial_base_premier_enfant"], local_var_471) + start_line=110, start_column=12, end_line=110, end_column=47, + law_headings=["Prologue"])) + montant_initial_base_premier_enfant_850 = log_variable_definition(["AllocationsFamiliales", + "montant_initial_base_premier_enfant"], local_var_851) try: try: - local_var_473 = droit_ouvert_base_141(Unit()) + local_var_857 = droit_ouvert_base_241(Unit()) except EmptyError: try: - def local_var_476(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=406, start_column=5, - end_line=407, end_column=72, - law_headings=["Article L755-12", - "Chapitre 5 : Prestations familiales et prestations assimilées", - "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, à la Martinique, à La Réunion, à Saint-Barthélemy et à Saint-Martin", - "Livre 7 : Régimes divers - Dispositions diverses", - "Partie législative", - "Code de la sécurité sociale"]), (prestations_familiales_dot_regime_outre_mer_l751_1_320 and - (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) >= - integer_of_string("1")))): + def local_var_864(_: Any): + def local_var_866(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=406, start_column=5, + end_line=407, end_column=72, + law_headings=["Article L755-12", + "Chapitre 5 : Prestations familiales et prestations assimilées", + "Titre 5 : Dispositions particulières à la Guadeloupe, à la Guyane, à la Martinique, à La Réunion, à Saint-Barthélemy et à Saint-Martin", + "Livre 7 : Régimes divers - Dispositions diverses", + "Partie législative", + "Code de la sécurité sociale"]), (prestations_familiales_dot_regime_outre_mer_l751_1_508 and + (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) >= + integer_of_string("1")))) + + def local_var_868(_: Any): return True - else: - raise EmptyError - def local_var_474(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=344, start_column=5, - end_line=345, end_column=72, - law_headings=["Article 7", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), ((residence_181 == - Collectivite(Collectivite_Code.Mayotte, Unit())) and - (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) >= - integer_of_string("1")))): + return handle_default([], local_var_866, local_var_868) + + def local_var_858(_: Any): + def local_var_860(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=344, start_column=5, + end_line=345, end_column=72, + law_headings=["Article 7", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), ((residence_293 == + Collectivite(Collectivite_Code.Mayotte, + Unit())) and + (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) >= + integer_of_string("1")))) + + def local_var_862(_: Any): return True - else: - raise EmptyError - def local_var_478(_:Any): + return handle_default([], local_var_860, local_var_862) + + def local_var_870(_: Any): return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=101, start_column=5, - end_line=101, end_column=70, - law_headings=["Article L521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) >= - integer_of_string("2"))) - def local_var_480(_:Any): + start_line=101, start_column=5, + end_line=101, end_column=70, + law_headings=["Article L521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) >= + integer_of_string("2"))) + + def local_var_872(_: Any): return True - local_var_473 = handle_default([local_var_474, - local_var_476], local_var_478, local_var_480) + local_var_857 = handle_default([local_var_858, + local_var_864], local_var_870, local_var_872) except EmptyError: - local_var_473 = False + local_var_857 = False except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=108, start_column=12, end_line=108, end_column=29, - law_headings=["Prologue"])) - droit_ouvert_base_472 = log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_base"], local_var_473) + start_line=108, start_column=12, end_line=108, end_column=29, + law_headings=["Prologue"])) + droit_ouvert_base_856 = log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_base"], local_var_857) try: try: - local_var_483 = droit_ouvert_majoration_159(Unit()) + local_var_875 = droit_ouvert_majoration_259(Unit()) except EmptyError: - def local_var_483(param_484:Enfant): + def local_var_875(param_876: Enfant): try: try: try: - if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=313, start_column=5, - end_line=315, end_column=58, - law_headings=["Article L521-3", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), ((list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) >= - nombre_enfants_alinea_2_l521_3_285) and - (param_484.age >= - log_end_call(["AllocationsFamiliales", - "âge_minimum_alinéa_1_l521_3"], - log_variable_definition(["AllocationsFamiliales", - "âge_minimum_alinéa_1_l521_3", "output"], - log_begin_call(["AllocationsFamiliales", - "âge_minimum_alinéa_1_l521_3"], - age_minimum_alinea_1_l521_3_334, - log_variable_definition(["AllocationsFamiliales", - "âge_minimum_alinéa_1_l521_3", "input"], - param_484))))))): + def local_var_877(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", + start_line=313, start_column=5, + end_line=315, end_column=58, + law_headings=["Article L521-3", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), ((list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) >= + nombre_enfants_alinea_2_l521_3_457) and + (param_876.age >= + log_end_call(["AllocationsFamiliales", + "âge_minimum_alinéa_1_l521_3"], + log_variable_definition(["AllocationsFamiliales", + "âge_minimum_alinéa_1_l521_3", + "output"], + log_begin_call(["AllocationsFamiliales", + "âge_minimum_alinéa_1_l521_3"], + age_minimum_alinea_1_l521_3_526, + log_variable_definition(["AllocationsFamiliales", + "âge_minimum_alinéa_1_l521_3", + "input"], param_876))))))) + + def local_var_879(_: Any): return True - else: - raise EmptyError + return handle_default([], local_var_877, + local_var_879) except EmptyError: if log_decision_taken(SourcePosition(filename="./securite_sociale_L.catala_fr", - start_line=299, start_column=5, - end_line=300, end_column=58, - law_headings=["Article L521-3", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie législative", - "Code de la sécurité sociale"]), (not log_end_call(["AllocationsFamiliales", - "est_enfant_le_plus_âgé"], - log_variable_definition(["AllocationsFamiliales", - "est_enfant_le_plus_âgé", "output"], - log_begin_call(["AllocationsFamiliales", - "est_enfant_le_plus_âgé"], - est_enfant_le_plus_age_341, - log_variable_definition(["AllocationsFamiliales", - "est_enfant_le_plus_âgé", "input"], - param_484)))) and (param_484.age >= - log_end_call(["AllocationsFamiliales", - "âge_minimum_alinéa_1_l521_3"], - log_variable_definition(["AllocationsFamiliales", - "âge_minimum_alinéa_1_l521_3", "output"], - log_begin_call(["AllocationsFamiliales", - "âge_minimum_alinéa_1_l521_3"], - age_minimum_alinea_1_l521_3_334, - log_variable_definition(["AllocationsFamiliales", - "âge_minimum_alinéa_1_l521_3", "input"], - param_484))))))): + start_line=299, start_column=5, + end_line=300, end_column=58, + law_headings=["Article L521-3", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie législative", + "Code de la sécurité sociale"]), (not log_end_call(["AllocationsFamiliales", + "est_enfant_le_plus_âgé"], + log_variable_definition(["AllocationsFamiliales", + "est_enfant_le_plus_âgé", "output"], + log_begin_call(["AllocationsFamiliales", + "est_enfant_le_plus_âgé"], + est_enfant_le_plus_age_541, + log_variable_definition(["AllocationsFamiliales", + "est_enfant_le_plus_âgé", "input"], + param_876)))) and (param_876.age >= + log_end_call(["AllocationsFamiliales", + "âge_minimum_alinéa_1_l521_3"], + log_variable_definition(["AllocationsFamiliales", + "âge_minimum_alinéa_1_l521_3", "output"], + log_begin_call(["AllocationsFamiliales", + "âge_minimum_alinéa_1_l521_3"], + age_minimum_alinea_1_l521_3_526, + log_variable_definition(["AllocationsFamiliales", + "âge_minimum_alinéa_1_l521_3", "input"], + param_876))))))): return True else: raise EmptyError @@ -3207,1359 +3764,1706 @@ def allocations_familiales(allocations_familiales_in_130:AllocationsFamilialesIn return False except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=132, start_column=12, end_line=132, - end_column=35, law_headings=["Prologue"])) + start_line=132, start_column=12, end_line=132, + end_column=35, law_headings=["Prologue"])) except EmptyError: raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=132, start_column=12, end_line=132, end_column=35, - law_headings=["Prologue"])) - droit_ouvert_majoration_482 = log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_majoration"], local_var_483) + start_line=132, start_column=12, end_line=132, end_column=35, + law_headings=["Prologue"])) + droit_ouvert_majoration_874 = log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_majoration"], local_var_875) try: try: - local_var_486 = complement_degressif_166(Unit()) + local_var_882 = complement_degressif_266(Unit()) except EmptyError: - def local_var_486(param_487:Money): + def local_var_882(param_883: Money): try: try: - def local_var_490(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=162, start_column=5, - end_line=163, end_column=68, - law_headings=["Article D521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), ((ressources_menage_179 > - plafond__i_d521_3_358) and - (ressources_menage_179 <= - (plafond__i_d521_3_358 + (param_487 * - decimal_of_string("12.")))))): - return ((plafond__i_d521_3_358 + - ((param_487 * decimal_of_string("12.")) - - ressources_menage_179)) * - (decimal_of_string("1.") / - decimal_of_string("12."))) - else: - raise EmptyError - def local_var_488(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=170, start_column=5, - end_line=171, end_column=68, - law_headings=["Article D521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), ((ressources_menage_179 > - plafond__i_i_d521_3_344) and - (ressources_menage_179 <= - (plafond__i_i_d521_3_344 + (param_487 * - decimal_of_string("12.")))))): - return ((plafond__i_i_d521_3_344 + - ((param_487 * decimal_of_string("12.")) - - ressources_menage_179)) * - (decimal_of_string("1.") / - decimal_of_string("12."))) - else: - raise EmptyError - def local_var_492(_:Any): - return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=176, start_column=14, - end_line=176, end_column=34, - law_headings=["Article D521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), True) - def local_var_494(_:Any): - return money_of_cents_string("0") - return handle_default([local_var_488, local_var_490], - local_var_492, local_var_494) - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=141, start_column=12, end_line=141, - end_column=32, law_headings=["Prologue"])) - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=141, start_column=12, end_line=141, end_column=32, - law_headings=["Prologue"])) - complement_degressif_485 = log_variable_definition(["AllocationsFamiliales", - "complément_dégressif"], local_var_486) - try: - try: - local_var_497 = montant_verse_forfaitaire_par_enfant_157(Unit()) - except EmptyError: - def local_var_502(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=215, start_column=5, - end_line=215, end_column=43, - law_headings=["Article D521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), (ressources_menage_179 <= - plafond__i_d521_3_358)): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.20234")) - else: - raise EmptyError - def local_var_500(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=229, start_column=5, - end_line=230, end_column=46, - law_headings=["Article D521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), ((ressources_menage_179 > - plafond__i_d521_3_358) and (ressources_menage_179 <= - plafond__i_i_d521_3_344))): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.1117")) - else: - raise EmptyError - def local_var_498(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=243, start_column=5, - end_line=243, end_column=43, - law_headings=["Article D521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), (ressources_menage_179 > - plafond__i_i_d521_3_344)): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.0559")) - else: - raise EmptyError - def local_var_504(_:Any): - return log_decision_taken(SourcePosition(filename="", - start_line=0, start_column=1, end_line=0, end_column=1, - law_headings=[]), False) - def local_var_506(_:Any): - raise EmptyError - local_var_497 = handle_default([local_var_498, local_var_500, - local_var_502], local_var_504, local_var_506) - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=128, start_column=12, end_line=128, end_column=48, - law_headings=["Prologue"])) - montant_verse_forfaitaire_par_enfant_496 = log_variable_definition(["AllocationsFamiliales", - "montant_versé_forfaitaire_par_enfant"], local_var_497) - try: - try: - local_var_509 = montant_initial_base_troisieme_enfant_et_plus_145(Unit()) - except EmptyError: - def local_var_514(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=35, start_column=3, - end_line=35, end_column=41, - law_headings=["Article D521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), (ressources_menage_179 <= - plafond__i_d521_3_358)): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("2")): - return ((prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.41")) * - decimal_of_integer((list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) - - integer_of_string("2")))) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_512(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=74, start_column=3, - end_line=75, end_column=44, - law_headings=["Article D521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), ((ressources_menage_179 > - plafond__i_d521_3_358) and (ressources_menage_179 <= - plafond__i_i_d521_3_344))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("2")): - return ((prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.205")) * - decimal_of_integer((list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) - - integer_of_string("2")))) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_510(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=113, start_column=3, - end_line=113, end_column=41, - law_headings=["Article D521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), (ressources_menage_179 > - plafond__i_i_d521_3_344)): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("2")): - return ((prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.1025")) * - decimal_of_integer((list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) - - integer_of_string("2")))) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_516(_:Any): - return log_decision_taken(SourcePosition(filename="", - start_line=0, start_column=1, end_line=0, end_column=1, - law_headings=[]), False) - def local_var_518(_:Any): - raise EmptyError - local_var_509 = handle_default([local_var_510, local_var_512, - local_var_514], local_var_516, local_var_518) - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=112, start_column=12, end_line=112, end_column=57, - law_headings=["Prologue"])) - montant_initial_base_troisieme_enfant_et_plus_508 = log_variable_definition(["AllocationsFamiliales", - "montant_initial_base_troisième_enfant_et_plus"], local_var_509) - try: - try: - local_var_521 = montant_initial_base_deuxieme_enfant_144(Unit()) - except EmptyError: - def local_var_526(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=35, start_column=3, - end_line=35, end_column=41, - law_headings=["Article D521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), (ressources_menage_179 <= - plafond__i_d521_3_358)): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("1")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.32")) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_524(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=74, start_column=3, - end_line=75, end_column=44, - law_headings=["Article D521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), ((ressources_menage_179 > - plafond__i_d521_3_358) and (ressources_menage_179 <= - plafond__i_i_d521_3_344))): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("1")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.16")) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_522(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=113, start_column=3, - end_line=113, end_column=41, - law_headings=["Article D521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), (ressources_menage_179 > - plafond__i_i_d521_3_344)): - if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) > - integer_of_string("1")): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.08")) - else: - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_528(_:Any): - return log_decision_taken(SourcePosition(filename="", - start_line=0, start_column=1, end_line=0, end_column=1, - law_headings=[]), False) - def local_var_530(_:Any): - raise EmptyError - local_var_521 = handle_default([local_var_522, local_var_524, - local_var_526], local_var_528, local_var_530) - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=111, start_column=12, end_line=111, end_column=48, - law_headings=["Prologue"])) - montant_initial_base_deuxieme_enfant_520 = log_variable_definition(["AllocationsFamiliales", - "montant_initial_base_deuxième_enfant"], local_var_521) - try: - try: - local_var_533 = rapport_enfants_total_moyen_146(Unit()) - except EmptyError: - try: - if (nombre_total_enfants_459 == - decimal_of_string("0.")): - local_var_533 = decimal_of_string("0.") - else: - local_var_533 = (nombre_moyen_enfants_461 / - nombre_total_enfants_459) - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=113, start_column=12, end_line=113, end_column=39, - law_headings=["Prologue"])) - rapport_enfants_total_moyen_532 = log_variable_definition(["AllocationsFamiliales", - "rapport_enfants_total_moyen"], local_var_533) - try: - try: - local_var_535 = montant_initial_metropole_majoration_160(Unit()) - except EmptyError: - def local_var_535(param_536:Enfant): - try: - def local_var_543(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=55, start_column=3, - end_line=55, end_column=41, - law_headings=["Article D521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), ((ressources_menage_179 <= - plafond__i_d521_3_358) and - log_end_call(["AllocationsFamiliales", - "droit_ouvert_majoration"], - log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_majoration", "output"], - log_begin_call(["AllocationsFamiliales", - "droit_ouvert_majoration"], - droit_ouvert_majoration_482, - log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_majoration", "input"], - param_536)))))): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.16")) - else: - raise EmptyError - def local_var_541(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=95, start_column=3, - end_line=96, end_column=44, - law_headings=["Article D521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), (((ressources_menage_179 > - plafond__i_d521_3_358) and - (ressources_menage_179 <= - plafond__i_i_d521_3_344)) and - log_end_call(["AllocationsFamiliales", - "droit_ouvert_majoration"], - log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_majoration", "output"], - log_begin_call(["AllocationsFamiliales", - "droit_ouvert_majoration"], - droit_ouvert_majoration_482, - log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_majoration", "input"], - param_536)))))): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.08")) - else: - raise EmptyError - def local_var_539(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=132, start_column=3, - end_line=132, end_column=41, - law_headings=["Article D521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), ((ressources_menage_179 > - plafond__i_i_d521_3_344) and - log_end_call(["AllocationsFamiliales", - "droit_ouvert_majoration"], - log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_majoration", "output"], - log_begin_call(["AllocationsFamiliales", - "droit_ouvert_majoration"], - droit_ouvert_majoration_482, - log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_majoration", "input"], - param_536)))))): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.04")) - else: - raise EmptyError - def local_var_537(_:Any): - if log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", - start_line=27, start_column=5, - end_line=27, end_column=44, - law_headings=["Règles diverses", "Épilogue", - "Décrets divers"]), not log_end_call(["AllocationsFamiliales", - "droit_ouvert_majoration"], - log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_majoration", "output"], - log_begin_call(["AllocationsFamiliales", - "droit_ouvert_majoration"], - droit_ouvert_majoration_482, - log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_majoration", "input"], - param_536))))): - return money_of_cents_string("0") - else: - raise EmptyError - def local_var_545(_:Any): - return log_decision_taken(SourcePosition(filename="", - start_line=0, start_column=1, - end_line=0, end_column=1, - law_headings=[]), False) - def local_var_547(_:Any): - raise EmptyError - return handle_default([local_var_537, local_var_539, - local_var_541, local_var_543], local_var_545, - local_var_547) - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=133, start_column=12, end_line=133, - end_column=48, law_headings=["Prologue"])) - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=133, start_column=12, end_line=133, end_column=48, - law_headings=["Prologue"])) - montant_initial_metropole_majoration_534 = log_variable_definition(["AllocationsFamiliales", - "montant_initial_métropole_majoration"], local_var_535) - try: - try: - local_var_550 = montant_verse_forfaitaire_158(Unit()) - except EmptyError: - try: - def local_var_551(acc_552:Integer, enfant_553:Any): - if log_end_call(["AllocationsFamiliales", - "droit_ouvert_forfaitaire"], - log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_forfaitaire", "output"], - log_begin_call(["AllocationsFamiliales", - "droit_ouvert_forfaitaire"], - droit_ouvert_forfaitaire_374, - log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_forfaitaire", "input"], - enfant_553)))): - return (acc_552 + integer_of_string("1")) - else: - return acc_552 - local_var_550 = (montant_verse_forfaitaire_par_enfant_496 * - decimal_of_integer(list_fold_left(local_var_551, - integer_of_string("0"), enfants_a_charge_185))) - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=129, start_column=12, end_line=129, end_column=37, - law_headings=["Prologue"])) - montant_verse_forfaitaire_549 = log_variable_definition(["AllocationsFamiliales", - "montant_versé_forfaitaire"], local_var_550) - try: - try: - local_var_555 = montant_initial_base_142(Unit()) - except EmptyError: - try: - def local_var_558(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=350, start_column=5, - end_line=351, end_column=69, - law_headings=["Article D755-5", - "Chapitre 5 : Prestations familiales et prestations assimilées", - "Titre 5 : Départements d'outre-mer", - "Livre 7 : Régimes divers - Dispositions diverses", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), (prestations_familiales_dot_regime_outre_mer_l751_1_320 and - (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) == - integer_of_string("1")))): - return montant_initial_base_premier_enfant_470 - else: - raise EmptyError - def local_var_556(_:Any): - if log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", - start_line=335, start_column=5, - end_line=335, end_column=24, - law_headings=["Article 7", - "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", - "Dispositions spéciales relatives à Mayotte", - "Décrets divers"]), (residence_181 == - Collectivite(Collectivite_Code.Mayotte, - Unit()))): - return (montant_initial_base_premier_enfant_mayotte_431 + - (montant_initial_base_deuxieme_enfant_mayotte_405 + - (montant_initial_base_troisieme_enfant_mayotte_379 + - montant_initial_base_quatrieme_enfant_et_plus_mayotte_377))) - else: - raise EmptyError - def local_var_560(_:Any): - return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=18, start_column=14, - end_line=18, end_column=34, - law_headings=["Article D521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), True) - def local_var_562(_:Any): - return (montant_initial_base_deuxieme_enfant_520 + - montant_initial_base_troisieme_enfant_et_plus_508) - local_var_555 = handle_default([local_var_556, - local_var_558], local_var_560, local_var_562) - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=109, start_column=12, end_line=109, end_column=32, - law_headings=["Prologue"])) - montant_initial_base_554 = log_variable_definition(["AllocationsFamiliales", - "montant_initial_base"], local_var_555) - try: - try: - local_var_565 = montant_initial_majoration_161(Unit()) - except EmptyError: - def local_var_565(param_566:Enfant): - try: - try: - def local_var_569(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=373, start_column=5, - end_line=376, end_column=42, - law_headings=["Article D755-5", - "Chapitre 5 : Prestations familiales et prestations assimilées", - "Titre 5 : Départements d'outre-mer", - "Livre 7 : Régimes divers - Dispositions diverses", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), (log_end_call(["AllocationsFamiliales", - "droit_ouvert_majoration"], - log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_majoration", "output"], - log_begin_call(["AllocationsFamiliales", - "droit_ouvert_majoration"], - droit_ouvert_majoration_482, - log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_majoration", "input"], - param_566)))) and - (prestations_familiales_dot_regime_outre_mer_l751_1_320 and - ((list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) == - integer_of_string("1")) and - ((param_566.age >= - integer_of_string("11")) and (param_566.age < - integer_of_string("16"))))))): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.0369")) - else: - raise EmptyError - def local_var_567(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=382, start_column=5, - end_line=385, end_column=23, - law_headings=["Article D755-5", - "Chapitre 5 : Prestations familiales et prestations assimilées", - "Titre 5 : Départements d'outre-mer", - "Livre 7 : Régimes divers - Dispositions diverses", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), (log_end_call(["AllocationsFamiliales", - "droit_ouvert_majoration"], - log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_majoration", "output"], - log_begin_call(["AllocationsFamiliales", - "droit_ouvert_majoration"], - droit_ouvert_majoration_482, - log_variable_definition(["AllocationsFamiliales", - "droit_ouvert_majoration", "input"], - param_566)))) and - (prestations_familiales_dot_regime_outre_mer_l751_1_320 and - ((list_length(enfants_a_charge_droit_ouvert_prestation_familiale_337) == - integer_of_string("1")) and (param_566.age >= - integer_of_string("16")))))): - return (prestations_familiales_dot_base_mensuelle_324 * - decimal_of_string("0.0567")) - else: - raise EmptyError - def local_var_571(_:Any): - return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=22, start_column=14, - end_line=22, end_column=40, - law_headings=["Article D521-1", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), True) - def local_var_573(_:Any): - return log_end_call(["AllocationsFamiliales", - "montant_initial_métropole_majoration"], - log_variable_definition(["AllocationsFamiliales", - "montant_initial_métropole_majoration", - "output"], - log_begin_call(["AllocationsFamiliales", - "montant_initial_métropole_majoration"], - montant_initial_metropole_majoration_534, - log_variable_definition(["AllocationsFamiliales", - "montant_initial_métropole_majoration", - "input"], param_566)))) - return handle_default([local_var_567, local_var_569], - local_var_571, local_var_573) - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=134, start_column=12, end_line=134, - end_column=38, law_headings=["Prologue"])) - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=134, start_column=12, end_line=134, end_column=38, - law_headings=["Prologue"])) - montant_initial_majoration_564 = log_variable_definition(["AllocationsFamiliales", - "montant_initial_majoration"], local_var_565) - try: - try: - local_var_576 = montant_verse_complement_pour_forfaitaire_168(Unit()) - except EmptyError: - try: - def local_var_579(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=262, start_column=5, - end_line=264, end_column=42, - law_headings=["Article D521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), ((ressources_menage_179 > - plafond__i_d521_3_358) and (ressources_menage_179 <= - (plafond__i_d521_3_358 + - (montant_verse_forfaitaire_549 * - decimal_of_string("12.")))))): - return ((plafond__i_d521_3_358 + - ((montant_verse_forfaitaire_549 * - decimal_of_string("12.")) - - ressources_menage_179)) * - (decimal_of_string("1.") / - decimal_of_string("12."))) - else: - raise EmptyError - def local_var_577(_:Any): - if log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=272, start_column=5, - end_line=274, end_column=41, - law_headings=["Article D521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), ((ressources_menage_179 > - plafond__i_i_d521_3_344) and - (ressources_menage_179 <= (plafond__i_i_d521_3_344 + - (montant_verse_forfaitaire_549 * - decimal_of_string("12.")))))): - return ((plafond__i_i_d521_3_344 + - ((montant_verse_forfaitaire_549 * - decimal_of_string("12.")) - - ressources_menage_179)) * - (decimal_of_string("1.") / - decimal_of_string("12."))) - else: - raise EmptyError - def local_var_581(_:Any): - return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", - start_line=280, start_column=14, - end_line=280, end_column=55, - law_headings=["Article D521-2", - "Chapitre 1er : Allocations familiales", - "Titre 2 : Prestations générales d'entretien", - "Livre 5 : Prestations familiales et prestations assimilées", - "Partie réglementaire - Décrets simples", - "Code de la sécurité sociale"]), True) - def local_var_583(_:Any): - return money_of_cents_string("0") - local_var_576 = handle_default([local_var_577, - local_var_579], local_var_581, local_var_583) - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=143, start_column=12, end_line=143, end_column=53, - law_headings=["Prologue"])) - montant_verse_complement_pour_forfaitaire_575 = log_variable_definition(["AllocationsFamiliales", - "montant_versé_complément_pour_forfaitaire"], local_var_576) - try: - try: - local_var_586 = montant_avec_garde_alternee_base_149(Unit()) - except EmptyError: - try: - local_var_586 = (montant_initial_base_554 * - rapport_enfants_total_moyen_532) - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=116, start_column=12, end_line=116, end_column=44, - law_headings=["Prologue"])) - montant_avec_garde_alternee_base_585 = log_variable_definition(["AllocationsFamiliales", - "montant_avec_garde_alternée_base"], local_var_586) - try: - try: - local_var_588 = montant_avec_garde_alternee_majoration_162(Unit()) - except EmptyError: - def local_var_588(param_589:Enfant): - try: - try: - match_arg_802 = log_end_call(["AllocationsFamiliales", - "prise_en_compte"], - log_variable_definition(["AllocationsFamiliales", - "prise_en_compte", "output"], - log_begin_call(["AllocationsFamiliales", - "prise_en_compte"], prise_en_compte_187, - log_variable_definition(["AllocationsFamiliales", - "prise_en_compte", "input"], - param_589)))) - if match_arg_802.code == PriseEnCompte_Code.Complete: - _ = match_arg_802.value - local_var_590 = decimal_of_string("1.") - elif match_arg_802.code == PriseEnCompte_Code.Partagee: - _ = match_arg_802.value - local_var_590 = decimal_of_string("0.5") - elif match_arg_802.code == PriseEnCompte_Code.Zero: - _ = match_arg_802.value - local_var_590 = decimal_of_string("0.") - return (log_end_call(["AllocationsFamiliales", - "montant_initial_majoration"], - log_variable_definition(["AllocationsFamiliales", - "montant_initial_majoration", "output"], - log_begin_call(["AllocationsFamiliales", - "montant_initial_majoration"], - montant_initial_majoration_564, - log_variable_definition(["AllocationsFamiliales", - "montant_initial_majoration", "input"], - param_589)))) * local_var_590) - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=135, start_column=12, end_line=135, - end_column=50, law_headings=["Prologue"])) - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=135, start_column=12, end_line=135, end_column=50, - law_headings=["Prologue"])) - montant_avec_garde_alternee_majoration_587 = log_variable_definition(["AllocationsFamiliales", - "montant_avec_garde_alternée_majoration"], local_var_588) - try: - try: - local_var_595 = montant_verse_base_150(Unit()) - except EmptyError: - try: - if droit_ouvert_base_472: - local_var_595 = montant_avec_garde_alternee_base_585 - else: - local_var_595 = money_of_cents_string("0") - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=117, start_column=12, end_line=117, end_column=30, - law_headings=["Prologue"])) - montant_verse_base_594 = log_variable_definition(["AllocationsFamiliales", - "montant_versé_base"], local_var_595) - try: - try: - local_var_597 = montant_verse_majoration_163(Unit()) - except EmptyError: - try: - if droit_ouvert_base_472: - def local_var_598(acc_599:Money, enfant_600:Any): - return (acc_599 + - log_end_call(["AllocationsFamiliales", - "montant_avec_garde_alternée_majoration"], - log_variable_definition(["AllocationsFamiliales", - "montant_avec_garde_alternée_majoration", - "output"], - log_begin_call(["AllocationsFamiliales", - "montant_avec_garde_alternée_majoration"], - montant_avec_garde_alternee_majoration_587, - log_variable_definition(["AllocationsFamiliales", - "montant_avec_garde_alternée_majoration", - "input"], enfant_600))))) - local_var_597 = list_fold_left(local_var_598, - money_of_cents_string("0"), enfants_a_charge_185) - else: - local_var_597 = money_of_cents_string("0") - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=136, start_column=12, end_line=136, end_column=36, - law_headings=["Prologue"])) - montant_verse_majoration_596 = log_variable_definition(["AllocationsFamiliales", - "montant_versé_majoration"], local_var_597) - try: - try: - local_var_602 = montant_base_complement_pour_base_et_majoration_165(Unit()) - except EmptyError: - try: - local_var_602 = (montant_verse_base_594 + - montant_verse_majoration_596) - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=140, start_column=12, end_line=140, end_column=59, - law_headings=["Prologue"])) - montant_base_complement_pour_base_et_majoration_601 = log_variable_definition(["AllocationsFamiliales", - "montant_base_complément_pour_base_et_majoration"], local_var_602) - try: - try: - local_var_604 = montant_verse_complement_pour_base_et_majoration_167(Unit()) - except EmptyError: - try: - if droit_ouvert_complement_372: - local_var_604 = log_end_call(["AllocationsFamiliales", - "complément_dégressif"], - log_variable_definition(["AllocationsFamiliales", - "complément_dégressif", "output"], - log_begin_call(["AllocationsFamiliales", - "complément_dégressif"], complement_degressif_485, - log_variable_definition(["AllocationsFamiliales", - "complément_dégressif", "input"], - montant_base_complement_pour_base_et_majoration_601)))) - else: - local_var_604 = money_of_cents_string("0") - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=142, start_column=12, end_line=142, end_column=60, - law_headings=["Prologue"])) - montant_verse_complement_pour_base_et_majoration_603 = log_variable_definition(["AllocationsFamiliales", - "montant_versé_complément_pour_base_et_majoration"], local_var_604) - try: - try: - local_var_606 = montant_verse_140(Unit()) - except EmptyError: - try: - if droit_ouvert_base_472: - local_var_606 = (montant_verse_base_594 + - (montant_verse_majoration_596 + - (montant_verse_forfaitaire_549 + - (montant_verse_complement_pour_base_et_majoration_603 + - montant_verse_complement_pour_forfaitaire_575)))) - else: - local_var_606 = money_of_cents_string("0") - except EmptyError: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", - start_line=105, start_column=12, end_line=105, end_column=25, - law_headings=["Prologue"])) - montant_verse_605 = log_variable_definition(["AllocationsFamiliales", - "montant_versé"], local_var_606) - assert (personne_charge_effective_permanente_est_parent_175 or - (not personne_charge_effective_permanente_est_parent_175 and - personne_charge_effective_permanente_remplit_titre__i_177)) - return AllocationsFamilialesOut(personne_charge_effective_permanente_est_parent_out = personne_charge_effective_permanente_est_parent_175, - personne_charge_effective_permanente_remplit_titre_I_out = personne_charge_effective_permanente_remplit_titre__i_177, - ressources_menage_out = ressources_menage_179, - residence_out = residence_181, date_courante_out = date_courante_183, - enfants_a_charge_out = enfants_a_charge_185, - enfants_a_charge_droit_ouvert_prestation_familiale_out = enfants_a_charge_droit_ouvert_prestation_familiale_337, - prise_en_compte_out = prise_en_compte_187, - versement_out = versement_234, montant_verse_out = montant_verse_605, - droit_ouvert_base_out = droit_ouvert_base_472, - montant_initial_base_out = montant_initial_base_554, - montant_initial_base_premier_enfant_out = montant_initial_base_premier_enfant_470, - montant_initial_base_deuxieme_enfant_out = montant_initial_base_deuxieme_enfant_520, - montant_initial_base_troisieme_enfant_et_plus_out = montant_initial_base_troisieme_enfant_et_plus_508, - rapport_enfants_total_moyen_out = rapport_enfants_total_moyen_532, - nombre_moyen_enfants_out = nombre_moyen_enfants_461, - nombre_total_enfants_out = nombre_total_enfants_459, - montant_avec_garde_alternee_base_out = montant_avec_garde_alternee_base_585, - montant_verse_base_out = montant_verse_base_594, - avait_enfant_a_charge_avant_1er_janvier_2012_out = avait_enfant_a_charge_avant_1er_janvier_2012_281, - montant_initial_base_premier_enfant_mayotte_out = montant_initial_base_premier_enfant_mayotte_431, - montant_initial_base_deuxieme_enfant_mayotte_out = montant_initial_base_deuxieme_enfant_mayotte_405, - montant_initial_base_troisieme_enfant_mayotte_out = montant_initial_base_troisieme_enfant_mayotte_379, - montant_initial_base_quatrieme_enfant_et_plus_mayotte_out = montant_initial_base_quatrieme_enfant_et_plus_mayotte_377, - droit_ouvert_forfaitaire_out = droit_ouvert_forfaitaire_374, - montant_verse_forfaitaire_par_enfant_out = montant_verse_forfaitaire_par_enfant_496, - montant_verse_forfaitaire_out = montant_verse_forfaitaire_549, - droit_ouvert_majoration_out = droit_ouvert_majoration_482, - montant_initial_metropole_majoration_out = montant_initial_metropole_majoration_534, - montant_initial_majoration_out = montant_initial_majoration_564, - montant_avec_garde_alternee_majoration_out = montant_avec_garde_alternee_majoration_587, - montant_verse_majoration_out = montant_verse_majoration_596, - droit_ouvert_complement_out = droit_ouvert_complement_372, - montant_base_complement_pour_base_et_majoration_out = montant_base_complement_pour_base_et_majoration_601, - complement_degressif_out = complement_degressif_485, - montant_verse_complement_pour_base_et_majoration_out = montant_verse_complement_pour_base_et_majoration_603, - montant_verse_complement_pour_forfaitaire_out = montant_verse_complement_pour_forfaitaire_575, - nombre_enfants_l521_1_out = nombre_enfants_l521_1_283, - age_minimum_alinea_1_l521_3_out = age_minimum_alinea_1_l521_3_334, - nombre_enfants_alinea_2_l521_3_out = nombre_enfants_alinea_2_l521_3_285, - est_enfant_le_plus_age_out = est_enfant_le_plus_age_341, - plafond_I_d521_3_out = plafond__i_d521_3_358, - plafond_II_d521_3_out = plafond__i_i_d521_3_344) + def local_var_890(_: Any): + def local_var_892(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=162, start_column=5, + end_line=163, end_column=68, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), ((ressources_menage_287 > + plafond__i_d521_3_578) and + (ressources_menage_287 <= + (plafond__i_d521_3_578 + (param_883 * + decimal_of_string("12.")))))) -def interface_allocations_familiales(interface_allocations_familiales_in_607:InterfaceAllocationsFamilialesIn): - date_courante_608 = interface_allocations_familiales_in_607.date_courante_in - enfants_609 = interface_allocations_familiales_in_607.enfants_in - enfants_a_charge_610 = interface_allocations_familiales_in_607.enfants_a_charge_in - ressources_menage_611 = interface_allocations_familiales_in_607.ressources_menage_in - residence_612 = interface_allocations_familiales_in_607.residence_in - montant_verse_613 = interface_allocations_familiales_in_607.montant_verse_in - personne_charge_effective_permanente_est_parent_614 = interface_allocations_familiales_in_607.personne_charge_effective_permanente_est_parent_in - personne_charge_effective_permanente_remplit_titre__i_615 = interface_allocations_familiales_in_607.personne_charge_effective_permanente_remplit_titre_I_in - avait_enfant_a_charge_avant_1er_janvier_2012_616 = interface_allocations_familiales_in_607.avait_enfant_a_charge_avant_1er_janvier_2012_in - try: - try: - local_var_618 = date_courante_608(Unit()) - except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), False): - raise EmptyError - else: - raise EmptyError + def local_var_894(_: Any): + return ((plafond__i_d521_3_578 + + ((param_883 * decimal_of_string("12.")) - + ressources_menage_287)) * + (decimal_of_string("1.") / + decimal_of_string("12."))) + return handle_default([], local_var_892, + local_var_894) + + def local_var_884(_: Any): + def local_var_886(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=170, start_column=5, + end_line=171, end_column=68, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), ((ressources_menage_287 > + plafond__i_i_d521_3_548) and + (ressources_menage_287 <= + (plafond__i_i_d521_3_548 + (param_883 * + decimal_of_string("12.")))))) + + def local_var_888(_: Any): + return ((plafond__i_i_d521_3_548 + + ((param_883 * decimal_of_string("12.")) - + ressources_menage_287)) * + (decimal_of_string("1.") / + decimal_of_string("12."))) + return handle_default([], local_var_886, + local_var_888) + + def local_var_896(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=176, start_column=14, + end_line=176, end_column=34, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), True) + + def local_var_898(_: Any): + return money_of_cents_string("0") + return handle_default([local_var_884, local_var_890], + local_var_896, local_var_898) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=141, start_column=12, end_line=141, + end_column=32, law_headings=["Prologue"])) except EmptyError: - raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", - start_line=72, start_column=12, end_line=72, end_column=25, - law_headings=["Interface du programme", "Épilogue", - "Décrets divers"])) - date_courante_617 = log_variable_definition(["InterfaceAllocationsFamiliales", - "date_courante"], local_var_618) + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=141, start_column=12, end_line=141, end_column=32, + law_headings=["Prologue"])) + complement_degressif_881 = log_variable_definition(["AllocationsFamiliales", + "complément_dégressif"], local_var_882) try: try: - local_var_620 = enfants_609(Unit()) + local_var_901 = montant_verse_forfaitaire_par_enfant_257(Unit()) except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), False): - raise EmptyError - else: + def local_var_914(_: Any): + def local_var_916(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=215, start_column=5, + end_line=215, end_column=43, + law_headings=["Article D521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), (ressources_menage_287 <= + plafond__i_d521_3_578)) + + def local_var_918(_: Any): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.20234")) + return handle_default([], local_var_916, local_var_918) + + def local_var_908(_: Any): + def local_var_910(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=229, start_column=5, + end_line=230, end_column=46, + law_headings=["Article D521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), ((ressources_menage_287 > + plafond__i_d521_3_578) and (ressources_menage_287 <= + plafond__i_i_d521_3_548))) + + def local_var_912(_: Any): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.1117")) + return handle_default([], local_var_910, local_var_912) + + def local_var_902(_: Any): + def local_var_904(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=243, start_column=5, + end_line=243, end_column=43, + law_headings=["Article D521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), (ressources_menage_287 > + plafond__i_i_d521_3_548)) + + def local_var_906(_: Any): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.0559")) + return handle_default([], local_var_904, local_var_906) + + def local_var_920(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_922(_: Any): raise EmptyError + local_var_901 = handle_default([local_var_902, local_var_908, + local_var_914], local_var_920, local_var_922) except EmptyError: - raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", - start_line=73, start_column=12, end_line=73, end_column=19, - law_headings=["Interface du programme", "Épilogue", - "Décrets divers"])) - enfants_619 = log_variable_definition(["InterfaceAllocationsFamiliales", - "enfants"], local_var_620) + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=128, start_column=12, end_line=128, end_column=48, + law_headings=["Prologue"])) + montant_verse_forfaitaire_par_enfant_900 = log_variable_definition(["AllocationsFamiliales", + "montant_versé_forfaitaire_par_enfant"], local_var_901) try: try: - local_var_622 = ressources_menage_611(Unit()) + local_var_925 = montant_initial_base_troisieme_enfant_et_plus_245( + Unit()) except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), False): - raise EmptyError - else: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", - start_line=76, start_column=12, end_line=76, end_column=29, - law_headings=["Interface du programme", "Épilogue", - "Décrets divers"])) - ressources_menage_621 = log_variable_definition(["InterfaceAllocationsFamiliales", - "ressources_ménage"], local_var_622) - try: - try: - local_var_624 = residence_612(Unit()) - except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), False): - raise EmptyError - else: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", - start_line=77, start_column=12, end_line=77, end_column=21, - law_headings=["Interface du programme", "Épilogue", - "Décrets divers"])) - residence_623 = log_variable_definition(["InterfaceAllocationsFamiliales", - "résidence"], local_var_624) - try: - try: - local_var_626 = personne_charge_effective_permanente_est_parent_614(Unit()) - except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), True): - local_var_626 = False - else: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", - start_line=79, start_column=12, end_line=79, end_column=59, - law_headings=["Interface du programme", "Épilogue", - "Décrets divers"])) - personne_charge_effective_permanente_est_parent_625 = log_variable_definition(["InterfaceAllocationsFamiliales", - "personne_charge_effective_permanente_est_parent"], local_var_626) - try: - try: - local_var_628 = personne_charge_effective_permanente_remplit_titre__i_615(Unit()) - except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), True): - local_var_628 = False - else: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", - start_line=80, start_column=12, end_line=80, end_column=64, - law_headings=["Interface du programme", "Épilogue", - "Décrets divers"])) - personne_charge_effective_permanente_remplit_titre__i_627 = log_variable_definition(["InterfaceAllocationsFamiliales", - "personne_charge_effective_permanente_remplit_titre_I"], - local_var_628) - try: - try: - local_var_630 = avait_enfant_a_charge_avant_1er_janvier_2012_616(Unit()) - except EmptyError: - if log_decision_taken(SourcePosition(filename="", start_line=0, - start_column=1, end_line=0, end_column=1, - law_headings=[]), True): - local_var_630 = False - else: - raise EmptyError - except EmptyError: - raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", - start_line=81, start_column=12, end_line=81, end_column=56, - law_headings=["Interface du programme", "Épilogue", - "Décrets divers"])) - avait_enfant_a_charge_avant_1er_janvier_2012_629 = log_variable_definition(["InterfaceAllocationsFamiliales", - "avait_enfant_à_charge_avant_1er_janvier_2012"], local_var_630) - try: - try: - local_var_632 = enfants_a_charge_610(Unit()) - except EmptyError: - try: - def local_var_633(enfant_634:Any): - if ((enfant_634.d_date_de_naissance + - duration_of_numbers(3,0,0)) >= - date_courante_617): - local_var_635 = SituationObligationScolaire(SituationObligationScolaire_Code.Avant, - Unit()) + def local_var_938(_: Any): + def local_var_940(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=35, start_column=3, + end_line=35, end_column=41, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), (ressources_menage_287 <= + plafond__i_d521_3_578)) + + def local_var_942(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("2")): + return ((prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.41")) * + decimal_of_integer((list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) - + integer_of_string("2")))) else: - if ((enfant_634.d_date_de_naissance + - duration_of_numbers(16,0,0)) >= - date_courante_617): - local_var_635 = SituationObligationScolaire(SituationObligationScolaire_Code.Pendant, - Unit()) - else: - local_var_635 = SituationObligationScolaire(SituationObligationScolaire_Code.Apres, - Unit()) - return Enfant(identifiant = enfant_634.d_identifiant, - obligation_scolaire = local_var_635, - remuneration_mensuelle = enfant_634.d_remuneration_mensuelle, - date_de_naissance = enfant_634.d_date_de_naissance, - age = year_of_date((date_of_numbers(0,1,1) + - (date_courante_617 - - enfant_634.d_date_de_naissance))), - prise_en_charge = enfant_634.d_prise_en_charge, - a_deja_ouvert_droit_aux_allocations_familiales = enfant_634.d_a_deja_ouvert_droit_aux_allocations_familiales) - local_var_632 = list_map(local_var_633, enfants_619) - except EmptyError: + return money_of_cents_string("0") + return handle_default([], local_var_940, local_var_942) + + def local_var_932(_: Any): + def local_var_934(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=74, start_column=3, + end_line=75, end_column=44, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), ((ressources_menage_287 > + plafond__i_d521_3_578) and (ressources_menage_287 <= + plafond__i_i_d521_3_548))) + + def local_var_936(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("2")): + return ((prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.205")) * + decimal_of_integer((list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) - + integer_of_string("2")))) + else: + return money_of_cents_string("0") + return handle_default([], local_var_934, local_var_936) + + def local_var_926(_: Any): + def local_var_928(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=113, start_column=3, + end_line=113, end_column=41, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), (ressources_menage_287 > + plafond__i_i_d521_3_548)) + + def local_var_930(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("2")): + return ((prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.1025")) * + decimal_of_integer((list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) - + integer_of_string("2")))) + else: + return money_of_cents_string("0") + return handle_default([], local_var_928, local_var_930) + + def local_var_944(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_946(_: Any): raise EmptyError + local_var_925 = handle_default([local_var_926, local_var_932, + local_var_938], local_var_944, local_var_946) except EmptyError: - raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", - start_line=74, start_column=12, end_line=74, end_column=28, - law_headings=["Interface du programme", "Épilogue", - "Décrets divers"])) - enfants_a_charge_631 = log_variable_definition(["InterfaceAllocationsFamiliales", - "enfants_à_charge"], local_var_632) - def local_var_637(_:Unit): - try: - if log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", - start_line=90, start_column=20, end_line=90, end_column=67, - law_headings=["Interface du programme", "Épilogue", - "Décrets divers"]), personne_charge_effective_permanente_est_parent_625): - local_var_639 = True - else: - raise EmptyError - except EmptyError: - local_var_639 = False - return log_variable_definition(["InterfaceAllocationsFamiliales", - "allocations_familiales.personne_charge_effective_permanente_est_parent"], - local_var_639) - allocations_familiales_dot_personne_charge_effective_permanente_est_parent_636 = local_var_637 - def local_var_641(_:Unit): - try: - if log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", - start_line=93, start_column=20, end_line=93, end_column=72, - law_headings=["Interface du programme", "Épilogue", - "Décrets divers"]), personne_charge_effective_permanente_remplit_titre__i_627): - local_var_643 = True - else: - raise EmptyError - except EmptyError: - local_var_643 = False - return log_variable_definition(["InterfaceAllocationsFamiliales", - "allocations_familiales.personne_charge_effective_permanente_remplit_titre_I"], - local_var_643) - allocations_familiales_dot_personne_charge_effective_permanente_remplit_titre__i_640 = local_var_641 - def local_var_645(_:Unit): - try: - local_var_647 = ressources_menage_621 - except EmptyError: - raise EmptyError - return log_variable_definition(["InterfaceAllocationsFamiliales", - "allocations_familiales.ressources_ménage"], local_var_647) - allocations_familiales_dot_ressources_menage_644 = local_var_645 - def local_var_649(_:Unit): - try: - local_var_651 = residence_623 - except EmptyError: - raise EmptyError - return log_variable_definition(["InterfaceAllocationsFamiliales", - "allocations_familiales.résidence"], local_var_651) - allocations_familiales_dot_residence_648 = local_var_649 - def local_var_653(_:Unit): - try: - local_var_655 = date_courante_617 - except EmptyError: - raise EmptyError - return log_variable_definition(["InterfaceAllocationsFamiliales", - "allocations_familiales.date_courante"], local_var_655) - allocations_familiales_dot_date_courante_652 = local_var_653 - def local_var_657(_:Unit): - try: - local_var_659 = enfants_a_charge_631 - except EmptyError: - raise EmptyError - return log_variable_definition(["InterfaceAllocationsFamiliales", - "allocations_familiales.enfants_à_charge"], local_var_659) - allocations_familiales_dot_enfants_a_charge_656 = local_var_657 - def local_var_661(_:Unit): - try: - if log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", - start_line=96, start_column=20, end_line=96, end_column=64, - law_headings=["Interface du programme", "Épilogue", - "Décrets divers"]), avait_enfant_a_charge_avant_1er_janvier_2012_629): - local_var_663 = True - else: - raise EmptyError - except EmptyError: - local_var_663 = False - return log_variable_definition(["InterfaceAllocationsFamiliales", - "allocations_familiales.avait_enfant_à_charge_avant_1er_janvier_2012"], - local_var_663) - allocations_familiales_dot_avait_enfant_a_charge_avant_1er_janvier_2012_660 = local_var_661 - def local_var_665(_:Unit): - raise EmptyError - def local_var_667(_:Unit): - raise EmptyError - def local_var_669(_:Unit): - raise EmptyError - def local_var_671(_:Unit): - raise EmptyError - def local_var_673(_:Unit): - raise EmptyError - def local_var_675(_:Unit): - raise EmptyError - def local_var_677(_:Unit): - raise EmptyError - def local_var_679(_:Unit): - raise EmptyError - def local_var_681(_:Unit): - raise EmptyError - def local_var_683(_:Unit): - raise EmptyError - def local_var_685(_:Unit): - raise EmptyError - def local_var_687(_:Unit): - raise EmptyError - def local_var_689(_:Unit): - raise EmptyError - def local_var_691(_:Unit): - raise EmptyError - def local_var_693(_:Unit): - raise EmptyError - def local_var_695(_:Unit): - raise EmptyError - def local_var_697(_:Unit): - raise EmptyError - def local_var_699(_:Unit): - raise EmptyError - def local_var_701(_:Unit): - raise EmptyError - def local_var_703(_:Unit): - raise EmptyError - def local_var_705(_:Unit): - raise EmptyError - def local_var_707(_:Unit): - raise EmptyError - def local_var_709(_:Unit): - raise EmptyError - def local_var_711(_:Unit): - raise EmptyError - def local_var_713(_:Unit): - raise EmptyError - def local_var_715(_:Unit): - raise EmptyError - def local_var_717(_:Unit): - raise EmptyError - def local_var_719(_:Unit): - raise EmptyError - def local_var_721(_:Unit): - raise EmptyError - def local_var_723(_:Unit): - raise EmptyError - def local_var_725(_:Unit): - raise EmptyError - def local_var_727(_:Unit): - raise EmptyError - def local_var_729(_:Unit): - raise EmptyError - def local_var_731(_:Unit): - raise EmptyError - def local_var_733(_:Unit): - raise EmptyError - def local_var_735(_:Unit): - raise EmptyError - def local_var_737(_:Unit): - raise EmptyError - result_664 = log_end_call(["InterfaceAllocationsFamiliales", - "allocations_familiales", "AllocationsFamiliales"], - log_begin_call(["InterfaceAllocationsFamiliales", - "allocations_familiales", "AllocationsFamiliales"], - allocations_familiales, - AllocationsFamilialesIn(personne_charge_effective_permanente_est_parent_in = allocations_familiales_dot_personne_charge_effective_permanente_est_parent_636, - personne_charge_effective_permanente_remplit_titre_I_in = allocations_familiales_dot_personne_charge_effective_permanente_remplit_titre__i_640, - ressources_menage_in = allocations_familiales_dot_ressources_menage_644, - residence_in = allocations_familiales_dot_residence_648, - date_courante_in = allocations_familiales_dot_date_courante_652, - enfants_a_charge_in = allocations_familiales_dot_enfants_a_charge_656, - enfants_a_charge_droit_ouvert_prestation_familiale_in = local_var_665, - prise_en_compte_in = local_var_667, versement_in = local_var_669, - montant_verse_in = local_var_671, - droit_ouvert_base_in = local_var_673, - montant_initial_base_in = local_var_675, - montant_initial_base_premier_enfant_in = local_var_677, - montant_initial_base_deuxieme_enfant_in = local_var_679, - montant_initial_base_troisieme_enfant_et_plus_in = local_var_681, - rapport_enfants_total_moyen_in = local_var_683, - nombre_moyen_enfants_in = local_var_685, - nombre_total_enfants_in = local_var_687, - montant_avec_garde_alternee_base_in = local_var_689, - montant_verse_base_in = local_var_691, - avait_enfant_a_charge_avant_1er_janvier_2012_in = allocations_familiales_dot_avait_enfant_a_charge_avant_1er_janvier_2012_660, - montant_initial_base_premier_enfant_mayotte_in = local_var_693, - montant_initial_base_deuxieme_enfant_mayotte_in = local_var_695, - montant_initial_base_troisieme_enfant_mayotte_in = local_var_697, - montant_initial_base_quatrieme_enfant_et_plus_mayotte_in = local_var_699, - droit_ouvert_forfaitaire_in = local_var_701, - montant_verse_forfaitaire_par_enfant_in = local_var_703, - montant_verse_forfaitaire_in = local_var_705, - droit_ouvert_majoration_in = local_var_707, - montant_initial_metropole_majoration_in = local_var_709, - montant_initial_majoration_in = local_var_711, - montant_avec_garde_alternee_majoration_in = local_var_713, - montant_verse_majoration_in = local_var_715, - droit_ouvert_complement_in = local_var_717, - montant_base_complement_pour_base_et_majoration_in = local_var_719, - complement_degressif_in = local_var_721, - montant_verse_complement_pour_base_et_majoration_in = local_var_723, - montant_verse_complement_pour_forfaitaire_in = local_var_725, - nombre_enfants_l521_1_in = local_var_727, - age_minimum_alinea_1_l521_3_in = local_var_729, - nombre_enfants_alinea_2_l521_3_in = local_var_731, - est_enfant_le_plus_age_in = local_var_733, - plafond_I_d521_3_in = local_var_735, - plafond_II_d521_3_in = local_var_737))) - allocations_familiales_dot_personne_charge_effective_permanente_est_parent_739 = result_664.personne_charge_effective_permanente_est_parent_out - allocations_familiales_dot_personne_charge_effective_permanente_remplit_titre__i_740 = result_664.personne_charge_effective_permanente_remplit_titre_I_out - allocations_familiales_dot_ressources_menage_741 = result_664.ressources_menage_out - allocations_familiales_dot_residence_742 = result_664.residence_out - allocations_familiales_dot_date_courante_743 = result_664.date_courante_out - allocations_familiales_dot_enfants_a_charge_744 = result_664.enfants_a_charge_out - allocations_familiales_dot_enfants_a_charge_droit_ouvert_prestation_familiale_745 = result_664.enfants_a_charge_droit_ouvert_prestation_familiale_out - allocations_familiales_dot_prise_en_compte_746 = result_664.prise_en_compte_out - allocations_familiales_dot_versement_747 = result_664.versement_out - allocations_familiales_dot_montant_verse_748 = result_664.montant_verse_out - allocations_familiales_dot_droit_ouvert_base_749 = result_664.droit_ouvert_base_out - allocations_familiales_dot_montant_initial_base_750 = result_664.montant_initial_base_out - allocations_familiales_dot_montant_initial_base_premier_enfant_751 = result_664.montant_initial_base_premier_enfant_out - allocations_familiales_dot_montant_initial_base_deuxieme_enfant_752 = result_664.montant_initial_base_deuxieme_enfant_out - allocations_familiales_dot_montant_initial_base_troisieme_enfant_et_plus_753 = result_664.montant_initial_base_troisieme_enfant_et_plus_out - allocations_familiales_dot_rapport_enfants_total_moyen_754 = result_664.rapport_enfants_total_moyen_out - allocations_familiales_dot_nombre_moyen_enfants_755 = result_664.nombre_moyen_enfants_out - allocations_familiales_dot_nombre_total_enfants_756 = result_664.nombre_total_enfants_out - allocations_familiales_dot_montant_avec_garde_alternee_base_757 = result_664.montant_avec_garde_alternee_base_out - allocations_familiales_dot_montant_verse_base_758 = result_664.montant_verse_base_out - allocations_familiales_dot_avait_enfant_a_charge_avant_1er_janvier_2012_759 = result_664.avait_enfant_a_charge_avant_1er_janvier_2012_out - allocations_familiales_dot_montant_initial_base_premier_enfant_mayotte_760 = result_664.montant_initial_base_premier_enfant_mayotte_out - allocations_familiales_dot_montant_initial_base_deuxieme_enfant_mayotte_761 = result_664.montant_initial_base_deuxieme_enfant_mayotte_out - allocations_familiales_dot_montant_initial_base_troisieme_enfant_mayotte_762 = result_664.montant_initial_base_troisieme_enfant_mayotte_out - allocations_familiales_dot_montant_initial_base_quatrieme_enfant_et_plus_mayotte_763 = result_664.montant_initial_base_quatrieme_enfant_et_plus_mayotte_out - allocations_familiales_dot_droit_ouvert_forfaitaire_764 = result_664.droit_ouvert_forfaitaire_out - allocations_familiales_dot_montant_verse_forfaitaire_par_enfant_765 = result_664.montant_verse_forfaitaire_par_enfant_out - allocations_familiales_dot_montant_verse_forfaitaire_766 = result_664.montant_verse_forfaitaire_out - allocations_familiales_dot_droit_ouvert_majoration_767 = result_664.droit_ouvert_majoration_out - allocations_familiales_dot_montant_initial_metropole_majoration_768 = result_664.montant_initial_metropole_majoration_out - allocations_familiales_dot_montant_initial_majoration_769 = result_664.montant_initial_majoration_out - allocations_familiales_dot_montant_avec_garde_alternee_majoration_770 = result_664.montant_avec_garde_alternee_majoration_out - allocations_familiales_dot_montant_verse_majoration_771 = result_664.montant_verse_majoration_out - allocations_familiales_dot_droit_ouvert_complement_772 = result_664.droit_ouvert_complement_out - allocations_familiales_dot_montant_base_complement_pour_base_et_majoration_773 = result_664.montant_base_complement_pour_base_et_majoration_out - allocations_familiales_dot_complement_degressif_774 = result_664.complement_degressif_out - allocations_familiales_dot_montant_verse_complement_pour_base_et_majoration_775 = result_664.montant_verse_complement_pour_base_et_majoration_out - allocations_familiales_dot_montant_verse_complement_pour_forfaitaire_776 = result_664.montant_verse_complement_pour_forfaitaire_out - allocations_familiales_dot_nombre_enfants_l521_1_777 = result_664.nombre_enfants_l521_1_out - allocations_familiales_dot_age_minimum_alinea_1_l521_3_778 = result_664.age_minimum_alinea_1_l521_3_out - allocations_familiales_dot_nombre_enfants_alinea_2_l521_3_779 = result_664.nombre_enfants_alinea_2_l521_3_out - allocations_familiales_dot_est_enfant_le_plus_age_780 = result_664.est_enfant_le_plus_age_out - allocations_familiales_dot_plafond__i_d521_3_781 = result_664.plafond_I_d521_3_out - allocations_familiales_dot_plafond__i_i_d521_3_782 = result_664.plafond_II_d521_3_out + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=112, start_column=12, end_line=112, end_column=57, + law_headings=["Prologue"])) + montant_initial_base_troisieme_enfant_et_plus_924 = log_variable_definition(["AllocationsFamiliales", + "montant_initial_base_troisième_enfant_et_plus"], local_var_925) try: try: - local_var_784 = montant_verse_613(Unit()) + local_var_949 = montant_initial_base_deuxieme_enfant_244(Unit()) + except EmptyError: + def local_var_962(_: Any): + def local_var_964(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=35, start_column=3, + end_line=35, end_column=41, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), (ressources_menage_287 <= + plafond__i_d521_3_578)) + + def local_var_966(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("1")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.32")) + else: + return money_of_cents_string("0") + return handle_default([], local_var_964, local_var_966) + + def local_var_956(_: Any): + def local_var_958(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=74, start_column=3, + end_line=75, end_column=44, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), ((ressources_menage_287 > + plafond__i_d521_3_578) and (ressources_menage_287 <= + plafond__i_i_d521_3_548))) + + def local_var_960(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("1")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.16")) + else: + return money_of_cents_string("0") + return handle_default([], local_var_958, local_var_960) + + def local_var_950(_: Any): + def local_var_952(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=113, start_column=3, + end_line=113, end_column=41, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), (ressources_menage_287 > + plafond__i_i_d521_3_548)) + + def local_var_954(_: Any): + if (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) > + integer_of_string("1")): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.08")) + else: + return money_of_cents_string("0") + return handle_default([], local_var_952, local_var_954) + + def local_var_968(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_970(_: Any): + raise EmptyError + local_var_949 = handle_default([local_var_950, local_var_956, + local_var_962], local_var_968, local_var_970) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=111, start_column=12, end_line=111, end_column=48, + law_headings=["Prologue"])) + montant_initial_base_deuxieme_enfant_948 = log_variable_definition(["AllocationsFamiliales", + "montant_initial_base_deuxième_enfant"], local_var_949) + try: + try: + local_var_973 = rapport_enfants_total_moyen_246(Unit()) except EmptyError: try: - local_var_784 = allocations_familiales_dot_montant_verse_748 + def local_var_974(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_R.catala_fr", + start_line=128, start_column=14, + end_line=128, end_column=41, + law_headings=["Article R521-3", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets en Conseil d'Etat", + "Code de la sécurité sociale"]), True) + + def local_var_976(_: Any): + if (nombre_total_enfants_831 == + decimal_of_string("0.")): + return decimal_of_string("0.") + else: + return (nombre_moyen_enfants_837 / + nombre_total_enfants_831) + local_var_973 = handle_default([], local_var_974, + local_var_976) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=113, start_column=12, end_line=113, end_column=39, + law_headings=["Prologue"])) + rapport_enfants_total_moyen_972 = log_variable_definition(["AllocationsFamiliales", + "rapport_enfants_total_moyen"], local_var_973) + try: + try: + local_var_979 = montant_initial_metropole_majoration_260(Unit()) + except EmptyError: + def local_var_979(param_980: Enfant): + try: + def local_var_999(_: Any): + def local_var_1001(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=55, start_column=3, + end_line=55, end_column=41, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), ((ressources_menage_287 <= + plafond__i_d521_3_578) and + log_end_call(["AllocationsFamiliales", + "droit_ouvert_majoration"], + log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_majoration", "output"], + log_begin_call(["AllocationsFamiliales", + "droit_ouvert_majoration"], + droit_ouvert_majoration_874, + log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_majoration", "input"], + param_980)))))) + + def local_var_1003(_: Any): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.16")) + return handle_default([], local_var_1001, + local_var_1003) + + def local_var_993(_: Any): + def local_var_995(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=95, start_column=3, + end_line=96, end_column=44, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), (((ressources_menage_287 > + plafond__i_d521_3_578) and + (ressources_menage_287 <= + plafond__i_i_d521_3_548)) and + log_end_call(["AllocationsFamiliales", + "droit_ouvert_majoration"], + log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_majoration", "output"], + log_begin_call(["AllocationsFamiliales", + "droit_ouvert_majoration"], + droit_ouvert_majoration_874, + log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_majoration", "input"], + param_980)))))) + + def local_var_997(_: Any): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.08")) + return handle_default([], local_var_995, + local_var_997) + + def local_var_987(_: Any): + def local_var_989(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=132, start_column=3, + end_line=132, end_column=41, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), ((ressources_menage_287 > + plafond__i_i_d521_3_548) and + log_end_call(["AllocationsFamiliales", + "droit_ouvert_majoration"], + log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_majoration", "output"], + log_begin_call(["AllocationsFamiliales", + "droit_ouvert_majoration"], + droit_ouvert_majoration_874, + log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_majoration", "input"], + param_980)))))) + + def local_var_991(_: Any): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.04")) + return handle_default([], local_var_989, + local_var_991) + + def local_var_981(_: Any): + def local_var_983(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=27, start_column=5, + end_line=27, end_column=44, + law_headings=["Règles diverses", + "Épilogue", + "Décrets divers"]), not log_end_call(["AllocationsFamiliales", + "droit_ouvert_majoration"], + log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_majoration", "output"], + log_begin_call(["AllocationsFamiliales", + "droit_ouvert_majoration"], + droit_ouvert_majoration_874, + log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_majoration", "input"], + param_980))))) + + def local_var_985(_: Any): + return money_of_cents_string("0") + return handle_default([], local_var_983, + local_var_985) + + def local_var_1005(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, + end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_1007(_: Any): + raise EmptyError + return handle_default([local_var_981, local_var_987, + local_var_993, local_var_999], local_var_1005, + local_var_1007) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=133, start_column=12, end_line=133, + end_column=48, law_headings=["Prologue"])) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=133, start_column=12, end_line=133, end_column=48, + law_headings=["Prologue"])) + montant_initial_metropole_majoration_978 = log_variable_definition(["AllocationsFamiliales", + "montant_initial_métropole_majoration"], local_var_979) + try: + try: + local_var_1010 = montant_verse_forfaitaire_258(Unit()) + except EmptyError: + try: + def local_var_1011(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=194, start_column=14, + end_line=194, end_column=39, + law_headings=["Article D521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), True) + + def local_var_1013(_: Any): + def local_var_1015(acc_1016: Integer, enfant_1017: Any): + if log_end_call(["AllocationsFamiliales", + "droit_ouvert_forfaitaire"], + log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_forfaitaire", "output"], + log_begin_call(["AllocationsFamiliales", + "droit_ouvert_forfaitaire"], + droit_ouvert_forfaitaire_614, + log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_forfaitaire", "input"], + enfant_1017)))): + return (acc_1016 + integer_of_string("1")) + else: + return acc_1016 + return (montant_verse_forfaitaire_par_enfant_900 * + decimal_of_integer(list_fold_left(local_var_1015, + integer_of_string("0"), enfants_a_charge_305))) + local_var_1010 = handle_default([], local_var_1011, + local_var_1013) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=129, start_column=12, end_line=129, end_column=37, + law_headings=["Prologue"])) + montant_verse_forfaitaire_1009 = log_variable_definition(["AllocationsFamiliales", + "montant_versé_forfaitaire"], local_var_1010) + try: + try: + local_var_1019 = montant_initial_base_242(Unit()) + except EmptyError: + try: + def local_var_1026(_: Any): + def local_var_1028(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=350, start_column=5, + end_line=351, end_column=69, + law_headings=["Article D755-5", + "Chapitre 5 : Prestations familiales et prestations assimilées", + "Titre 5 : Départements d'outre-mer", + "Livre 7 : Régimes divers - Dispositions diverses", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), (prestations_familiales_dot_regime_outre_mer_l751_1_508 and + (list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) == + integer_of_string("1")))) + + def local_var_1030(_: Any): + return montant_initial_base_premier_enfant_850 + return handle_default([], local_var_1028, local_var_1030) + + def local_var_1020(_: Any): + def local_var_1022(_: Any): + return log_decision_taken(SourcePosition(filename="./decrets_divers.catala_fr", + start_line=335, start_column=5, + end_line=335, end_column=24, + law_headings=["Article 7", + "Décret n°2002-423 du 29 mars 2002 relatif aux prestations familiales à Mayotte", + "Dispositions spéciales relatives à Mayotte", + "Décrets divers"]), (residence_293 == + Collectivite(Collectivite_Code.Mayotte, Unit()))) + + def local_var_1024(_: Any): + return (montant_initial_base_premier_enfant_mayotte_759 + + (montant_initial_base_deuxieme_enfant_mayotte_693 + + (montant_initial_base_troisieme_enfant_mayotte_627 + + montant_initial_base_quatrieme_enfant_et_plus_mayotte_621))) + return handle_default([], local_var_1022, local_var_1024) + + def local_var_1032(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=18, start_column=14, + end_line=18, end_column=34, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), True) + + def local_var_1034(_: Any): + return (montant_initial_base_deuxieme_enfant_948 + + montant_initial_base_troisieme_enfant_et_plus_924) + local_var_1019 = handle_default([local_var_1020, + local_var_1026], local_var_1032, local_var_1034) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=109, start_column=12, end_line=109, end_column=32, + law_headings=["Prologue"])) + montant_initial_base_1018 = log_variable_definition(["AllocationsFamiliales", + "montant_initial_base"], local_var_1019) + try: + try: + local_var_1037 = montant_initial_majoration_261(Unit()) + except EmptyError: + def local_var_1037(param_1038: Enfant): + try: + try: + def local_var_1045(_: Any): + def local_var_1047(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=373, start_column=5, + end_line=376, end_column=42, + law_headings=["Article D755-5", + "Chapitre 5 : Prestations familiales et prestations assimilées", + "Titre 5 : Départements d'outre-mer", + "Livre 7 : Régimes divers - Dispositions diverses", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), (log_end_call(["AllocationsFamiliales", + "droit_ouvert_majoration"], + log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_majoration", "output"], + log_begin_call(["AllocationsFamiliales", + "droit_ouvert_majoration"], + droit_ouvert_majoration_874, + log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_majoration", "input"], + param_1038)))) and + (prestations_familiales_dot_regime_outre_mer_l751_1_508 and + ((list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) == + integer_of_string("1")) and + ((param_1038.age >= + integer_of_string("11")) and + (param_1038.age < + integer_of_string("16"))))))) + + def local_var_1049(_: Any): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.0369")) + return handle_default([], local_var_1047, + local_var_1049) + + def local_var_1039(_: Any): + def local_var_1041(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=382, start_column=5, + end_line=385, end_column=23, + law_headings=["Article D755-5", + "Chapitre 5 : Prestations familiales et prestations assimilées", + "Titre 5 : Départements d'outre-mer", + "Livre 7 : Régimes divers - Dispositions diverses", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), (log_end_call(["AllocationsFamiliales", + "droit_ouvert_majoration"], + log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_majoration", "output"], + log_begin_call(["AllocationsFamiliales", + "droit_ouvert_majoration"], + droit_ouvert_majoration_874, + log_variable_definition(["AllocationsFamiliales", + "droit_ouvert_majoration", "input"], + param_1038)))) and + (prestations_familiales_dot_regime_outre_mer_l751_1_508 and + ((list_length(enfants_a_charge_droit_ouvert_prestation_familiale_533) == + integer_of_string("1")) and + (param_1038.age >= + integer_of_string("16")))))) + + def local_var_1043(_: Any): + return (prestations_familiales_dot_base_mensuelle_512 * + decimal_of_string("0.0567")) + return handle_default([], local_var_1041, + local_var_1043) + + def local_var_1051(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=22, start_column=14, + end_line=22, end_column=40, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), True) + + def local_var_1053(_: Any): + return log_end_call(["AllocationsFamiliales", + "montant_initial_métropole_majoration"], + log_variable_definition(["AllocationsFamiliales", + "montant_initial_métropole_majoration", + "output"], + log_begin_call(["AllocationsFamiliales", + "montant_initial_métropole_majoration"], + montant_initial_metropole_majoration_978, + log_variable_definition(["AllocationsFamiliales", + "montant_initial_métropole_majoration", + "input"], param_1038)))) + return handle_default([local_var_1039, + local_var_1045], local_var_1051, local_var_1053) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=134, start_column=12, end_line=134, + end_column=38, law_headings=["Prologue"])) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=134, start_column=12, end_line=134, end_column=38, + law_headings=["Prologue"])) + montant_initial_majoration_1036 = log_variable_definition(["AllocationsFamiliales", + "montant_initial_majoration"], local_var_1037) + try: + try: + local_var_1056 = montant_verse_complement_pour_forfaitaire_268( + Unit()) + except EmptyError: + try: + def local_var_1063(_: Any): + def local_var_1065(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=262, start_column=5, + end_line=264, end_column=42, + law_headings=["Article D521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), ((ressources_menage_287 > + plafond__i_d521_3_578) and + (ressources_menage_287 <= + (plafond__i_d521_3_578 + + (montant_verse_forfaitaire_1009 * + decimal_of_string("12.")))))) + + def local_var_1067(_: Any): + return ((plafond__i_d521_3_578 + + ((montant_verse_forfaitaire_1009 * + decimal_of_string("12.")) - + ressources_menage_287)) * + (decimal_of_string("1.") / + decimal_of_string("12."))) + return handle_default([], local_var_1065, local_var_1067) + + def local_var_1057(_: Any): + def local_var_1059(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=272, start_column=5, + end_line=274, end_column=41, + law_headings=["Article D521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), ((ressources_menage_287 > + plafond__i_i_d521_3_548) and + (ressources_menage_287 <= + (plafond__i_i_d521_3_548 + + (montant_verse_forfaitaire_1009 * + decimal_of_string("12.")))))) + + def local_var_1061(_: Any): + return ((plafond__i_i_d521_3_548 + + ((montant_verse_forfaitaire_1009 * + decimal_of_string("12.")) - + ressources_menage_287)) * + (decimal_of_string("1.") / + decimal_of_string("12."))) + return handle_default([], local_var_1059, local_var_1061) + + def local_var_1069(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=280, start_column=14, + end_line=280, end_column=55, + law_headings=["Article D521-2", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), True) + + def local_var_1071(_: Any): + return money_of_cents_string("0") + local_var_1056 = handle_default([local_var_1057, + local_var_1063], local_var_1069, local_var_1071) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=143, start_column=12, end_line=143, end_column=53, + law_headings=["Prologue"])) + montant_verse_complement_pour_forfaitaire_1055 = log_variable_definition(["AllocationsFamiliales", + "montant_versé_complément_pour_forfaitaire"], local_var_1056) + try: + try: + local_var_1074 = montant_avec_garde_alternee_base_249(Unit()) + except EmptyError: + try: + def local_var_1075(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_R.catala_fr", + start_line=125, start_column=14, + end_line=125, end_column=46, + law_headings=["Article R521-3", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets en Conseil d'Etat", + "Code de la sécurité sociale"]), True) + + def local_var_1077(_: Any): + return (montant_initial_base_1018 * + rapport_enfants_total_moyen_972) + local_var_1074 = handle_default([], local_var_1075, + local_var_1077) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=116, start_column=12, end_line=116, end_column=44, + law_headings=["Prologue"])) + montant_avec_garde_alternee_base_1073 = log_variable_definition(["AllocationsFamiliales", + "montant_avec_garde_alternée_base"], local_var_1074) + try: + try: + local_var_1080 = montant_avec_garde_alternee_majoration_262(Unit()) + except EmptyError: + def local_var_1080(param_1081: Enfant): + try: + try: + def local_var_1082(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_R.catala_fr", + start_line=187, start_column=5, + end_line=187, end_column=43, + law_headings=["Article R521-4", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets en Conseil d'Etat", + "Code de la sécurité sociale"]), True) + + def local_var_1084(_: Any): + match_arg_1382 = log_end_call(["AllocationsFamiliales", + "prise_en_compte"], + log_variable_definition(["AllocationsFamiliales", + "prise_en_compte", "output"], + log_begin_call(["AllocationsFamiliales", + "prise_en_compte"], prise_en_compte_311, + log_variable_definition(["AllocationsFamiliales", + "prise_en_compte", "input"], + param_1081)))) + if match_arg_1382.code == PriseEnCompte_Code.Complete: + _ = match_arg_1382.value + local_var_1086 = decimal_of_string("1.") + elif match_arg_1382.code == PriseEnCompte_Code.Partagee: + _ = match_arg_1382.value + local_var_1086 = decimal_of_string("0.5") + elif match_arg_1382.code == PriseEnCompte_Code.Zero: + _ = match_arg_1382.value + local_var_1086 = decimal_of_string("0.") + return (log_end_call(["AllocationsFamiliales", + "montant_initial_majoration"], + log_variable_definition(["AllocationsFamiliales", + "montant_initial_majoration", "output"], + log_begin_call(["AllocationsFamiliales", + "montant_initial_majoration"], + montant_initial_majoration_1036, + log_variable_definition(["AllocationsFamiliales", + "montant_initial_majoration", "input"], + param_1081)))) * local_var_1086) + return handle_default([], local_var_1082, + local_var_1084) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=135, start_column=12, end_line=135, + end_column=50, law_headings=["Prologue"])) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=135, start_column=12, end_line=135, end_column=50, + law_headings=["Prologue"])) + montant_avec_garde_alternee_majoration_1079 = log_variable_definition(["AllocationsFamiliales", + "montant_avec_garde_alternée_majoration"], local_var_1080) + try: + try: + local_var_1091 = montant_verse_base_250(Unit()) + except EmptyError: + try: + def local_var_1092(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=36, start_column=14, + end_line=36, end_column=32, + law_headings=["Règles diverses", "Épilogue", + "Décrets divers"]), True) + + def local_var_1094(_: Any): + if droit_ouvert_base_856: + return montant_avec_garde_alternee_base_1073 + else: + return money_of_cents_string("0") + local_var_1091 = handle_default([], local_var_1092, + local_var_1094) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=117, start_column=12, end_line=117, end_column=30, + law_headings=["Prologue"])) + montant_verse_base_1090 = log_variable_definition(["AllocationsFamiliales", + "montant_versé_base"], local_var_1091) + try: + try: + local_var_1097 = montant_verse_majoration_263(Unit()) + except EmptyError: + try: + def local_var_1098(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=38, start_column=14, + end_line=38, end_column=38, + law_headings=["Règles diverses", "Épilogue", + "Décrets divers"]), True) + + def local_var_1100(_: Any): + if droit_ouvert_base_856: + def local_var_1102(acc_1103: Money, enfant_1104: Any): + return (acc_1103 + + log_end_call(["AllocationsFamiliales", + "montant_avec_garde_alternée_majoration"], + log_variable_definition(["AllocationsFamiliales", + "montant_avec_garde_alternée_majoration", + "output"], + log_begin_call(["AllocationsFamiliales", + "montant_avec_garde_alternée_majoration"], + montant_avec_garde_alternee_majoration_1079, + log_variable_definition(["AllocationsFamiliales", + "montant_avec_garde_alternée_majoration", + "input"], enfant_1104))))) + return list_fold_left(local_var_1102, + money_of_cents_string("0"), enfants_a_charge_305) + else: + return money_of_cents_string("0") + local_var_1097 = handle_default([], local_var_1098, + local_var_1100) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=136, start_column=12, end_line=136, end_column=36, + law_headings=["Prologue"])) + montant_verse_majoration_1096 = log_variable_definition(["AllocationsFamiliales", + "montant_versé_majoration"], local_var_1097) + try: + try: + local_var_1106 = montant_base_complement_pour_base_et_majoration_265( + Unit()) + except EmptyError: + try: + def local_var_1107(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=184, start_column=14, + end_line=184, end_column=61, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), True) + + def local_var_1109(_: Any): + return (montant_verse_base_1090 + + montant_verse_majoration_1096) + local_var_1106 = handle_default([], local_var_1107, + local_var_1109) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=140, start_column=12, end_line=140, end_column=59, + law_headings=["Prologue"])) + montant_base_complement_pour_base_et_majoration_1105 = log_variable_definition(["AllocationsFamiliales", + "montant_base_complément_pour_base_et_majoration"], local_var_1106) + try: + try: + local_var_1112 = montant_verse_complement_pour_base_et_majoration_267( + Unit()) + except EmptyError: + try: + def local_var_1113(_: Any): + return log_decision_taken(SourcePosition(filename="./securite_sociale_D.catala_fr", + start_line=178, start_column=14, + end_line=178, end_column=62, + law_headings=["Article D521-1", + "Chapitre 1er : Allocations familiales", + "Titre 2 : Prestations générales d'entretien", + "Livre 5 : Prestations familiales et prestations assimilées", + "Partie réglementaire - Décrets simples", + "Code de la sécurité sociale"]), True) + + def local_var_1115(_: Any): + if droit_ouvert_complement_608: + return log_end_call(["AllocationsFamiliales", + "complément_dégressif"], + log_variable_definition(["AllocationsFamiliales", + "complément_dégressif", "output"], + log_begin_call(["AllocationsFamiliales", + "complément_dégressif"], + complement_degressif_881, + log_variable_definition(["AllocationsFamiliales", + "complément_dégressif", "input"], + montant_base_complement_pour_base_et_majoration_1105)))) + else: + return money_of_cents_string("0") + local_var_1112 = handle_default([], local_var_1113, + local_var_1115) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=142, start_column=12, end_line=142, end_column=60, + law_headings=["Prologue"])) + montant_verse_complement_pour_base_et_majoration_1111 = log_variable_definition(["AllocationsFamiliales", + "montant_versé_complément_pour_base_et_majoration"], + local_var_1112) + try: + try: + local_var_1118 = montant_verse_240(Unit()) + except EmptyError: + try: + def local_var_1119(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=44, start_column=14, + end_line=44, end_column=27, + law_headings=["Règles diverses", "Épilogue", + "Décrets divers"]), True) + + def local_var_1121(_: Any): + if droit_ouvert_base_856: + return (montant_verse_base_1090 + + (montant_verse_majoration_1096 + + (montant_verse_forfaitaire_1009 + + (montant_verse_complement_pour_base_et_majoration_1111 + + montant_verse_complement_pour_forfaitaire_1055)))) + else: + return money_of_cents_string("0") + local_var_1118 = handle_default([], local_var_1119, + local_var_1121) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./prologue.catala_fr", + start_line=105, start_column=12, end_line=105, end_column=25, + law_headings=["Prologue"])) + montant_verse_1117 = log_variable_definition(["AllocationsFamiliales", + "montant_versé"], local_var_1118) + assert (personne_charge_effective_permanente_est_parent_275 or + (not personne_charge_effective_permanente_est_parent_275 and + personne_charge_effective_permanente_remplit_titre__i_281)) + return AllocationsFamilialesOut(personne_charge_effective_permanente_est_parent_out=personne_charge_effective_permanente_est_parent_275, + personne_charge_effective_permanente_remplit_titre_I_out=personne_charge_effective_permanente_remplit_titre__i_281, + ressources_menage_out=ressources_menage_287, + residence_out=residence_293, date_courante_out=date_courante_299, + enfants_a_charge_out=enfants_a_charge_305, + enfants_a_charge_droit_ouvert_prestation_familiale_out=enfants_a_charge_droit_ouvert_prestation_familiale_533, + prise_en_compte_out=prise_en_compte_311, + versement_out=versement_378, + montant_verse_out=montant_verse_1117, + droit_ouvert_base_out=droit_ouvert_base_856, + montant_initial_base_out=montant_initial_base_1018, + montant_initial_base_premier_enfant_out=montant_initial_base_premier_enfant_850, + montant_initial_base_deuxieme_enfant_out=montant_initial_base_deuxieme_enfant_948, + montant_initial_base_troisieme_enfant_et_plus_out=montant_initial_base_troisieme_enfant_et_plus_924, + rapport_enfants_total_moyen_out=rapport_enfants_total_moyen_972, + nombre_moyen_enfants_out=nombre_moyen_enfants_837, + nombre_total_enfants_out=nombre_total_enfants_831, + montant_avec_garde_alternee_base_out=montant_avec_garde_alternee_base_1073, + montant_verse_base_out=montant_verse_base_1090, + avait_enfant_a_charge_avant_1er_janvier_2012_out=avait_enfant_a_charge_avant_1er_janvier_2012_445, + montant_initial_base_premier_enfant_mayotte_out=montant_initial_base_premier_enfant_mayotte_759, + montant_initial_base_deuxieme_enfant_mayotte_out=montant_initial_base_deuxieme_enfant_mayotte_693, + montant_initial_base_troisieme_enfant_mayotte_out=montant_initial_base_troisieme_enfant_mayotte_627, + montant_initial_base_quatrieme_enfant_et_plus_mayotte_out=montant_initial_base_quatrieme_enfant_et_plus_mayotte_621, + droit_ouvert_forfaitaire_out=droit_ouvert_forfaitaire_614, + montant_verse_forfaitaire_par_enfant_out=montant_verse_forfaitaire_par_enfant_900, + montant_verse_forfaitaire_out=montant_verse_forfaitaire_1009, + droit_ouvert_majoration_out=droit_ouvert_majoration_874, + montant_initial_metropole_majoration_out=montant_initial_metropole_majoration_978, + montant_initial_majoration_out=montant_initial_majoration_1036, + montant_avec_garde_alternee_majoration_out=montant_avec_garde_alternee_majoration_1079, + montant_verse_majoration_out=montant_verse_majoration_1096, + droit_ouvert_complement_out=droit_ouvert_complement_608, + montant_base_complement_pour_base_et_majoration_out=montant_base_complement_pour_base_et_majoration_1105, + complement_degressif_out=complement_degressif_881, + montant_verse_complement_pour_base_et_majoration_out=montant_verse_complement_pour_base_et_majoration_1111, + montant_verse_complement_pour_forfaitaire_out=montant_verse_complement_pour_forfaitaire_1055, + nombre_enfants_l521_1_out=nombre_enfants_l521_1_451, + age_minimum_alinea_1_l521_3_out=age_minimum_alinea_1_l521_3_526, + nombre_enfants_alinea_2_l521_3_out=nombre_enfants_alinea_2_l521_3_457, + est_enfant_le_plus_age_out=est_enfant_le_plus_age_541, + plafond_I_d521_3_out=plafond__i_d521_3_578, + plafond_II_d521_3_out=plafond__i_i_d521_3_548) + + +def interface_allocations_familiales(interface_allocations_familiales_in_1123: InterfaceAllocationsFamilialesIn): + date_courante_1124 = interface_allocations_familiales_in_1123.date_courante_in + enfants_1125 = interface_allocations_familiales_in_1123.enfants_in + enfants_a_charge_1126 = interface_allocations_familiales_in_1123.enfants_a_charge_in + ressources_menage_1127 = interface_allocations_familiales_in_1123.ressources_menage_in + residence_1128 = interface_allocations_familiales_in_1123.residence_in + montant_verse_1129 = interface_allocations_familiales_in_1123.montant_verse_in + personne_charge_effective_permanente_est_parent_1130 = interface_allocations_familiales_in_1123.personne_charge_effective_permanente_est_parent_in + personne_charge_effective_permanente_remplit_titre__i_1131 = interface_allocations_familiales_in_1123.personne_charge_effective_permanente_remplit_titre_I_in + avait_enfant_a_charge_avant_1er_janvier_2012_1132 = interface_allocations_familiales_in_1123.avait_enfant_a_charge_avant_1er_janvier_2012_in + try: + try: + local_var_1134 = date_courante_1124(Unit()) + except EmptyError: + def local_var_1135(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_1137(_: Any): + raise EmptyError + local_var_1134 = handle_default([], local_var_1135, + local_var_1137) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", + start_line=72, start_column=12, end_line=72, end_column=25, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"])) + date_courante_1133 = log_variable_definition(["InterfaceAllocationsFamiliales", + "date_courante"], local_var_1134) + try: + try: + local_var_1140 = enfants_1125(Unit()) + except EmptyError: + def local_var_1141(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_1143(_: Any): + raise EmptyError + local_var_1140 = handle_default([], local_var_1141, + local_var_1143) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", + start_line=73, start_column=12, end_line=73, end_column=19, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"])) + enfants_1139 = log_variable_definition(["InterfaceAllocationsFamiliales", + "enfants"], local_var_1140) + try: + try: + local_var_1146 = ressources_menage_1127(Unit()) + except EmptyError: + def local_var_1147(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_1149(_: Any): + raise EmptyError + local_var_1146 = handle_default([], local_var_1147, + local_var_1149) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", + start_line=76, start_column=12, end_line=76, end_column=29, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"])) + ressources_menage_1145 = log_variable_definition(["InterfaceAllocationsFamiliales", + "ressources_ménage"], local_var_1146) + try: + try: + local_var_1152 = residence_1128(Unit()) + except EmptyError: + def local_var_1153(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), False) + + def local_var_1155(_: Any): + raise EmptyError + local_var_1152 = handle_default([], local_var_1153, + local_var_1155) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", + start_line=77, start_column=12, end_line=77, end_column=21, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"])) + residence_1151 = log_variable_definition(["InterfaceAllocationsFamiliales", + "résidence"], local_var_1152) + try: + try: + local_var_1158 = personne_charge_effective_permanente_est_parent_1130( + Unit()) + except EmptyError: + def local_var_1159(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), True) + + def local_var_1161(_: Any): + return False + local_var_1158 = handle_default([], local_var_1159, + local_var_1161) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", + start_line=79, start_column=12, end_line=79, end_column=59, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"])) + personne_charge_effective_permanente_est_parent_1157 = log_variable_definition(["InterfaceAllocationsFamiliales", + "personne_charge_effective_permanente_est_parent"], local_var_1158) + try: + try: + local_var_1164 = personne_charge_effective_permanente_remplit_titre__i_1131( + Unit()) + except EmptyError: + def local_var_1165(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), True) + + def local_var_1167(_: Any): + return False + local_var_1164 = handle_default([], local_var_1165, + local_var_1167) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", + start_line=80, start_column=12, end_line=80, end_column=64, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"])) + personne_charge_effective_permanente_remplit_titre__i_1163 = log_variable_definition(["InterfaceAllocationsFamiliales", + "personne_charge_effective_permanente_remplit_titre_I"], + local_var_1164) + try: + try: + local_var_1170 = avait_enfant_a_charge_avant_1er_janvier_2012_1132( + Unit()) + except EmptyError: + def local_var_1171(_: Any): + return log_decision_taken(SourcePosition(filename="", + start_line=0, start_column=1, end_line=0, end_column=1, + law_headings=[]), True) + + def local_var_1173(_: Any): + return False + local_var_1170 = handle_default([], local_var_1171, + local_var_1173) + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", + start_line=81, start_column=12, end_line=81, end_column=56, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"])) + avait_enfant_a_charge_avant_1er_janvier_2012_1169 = log_variable_definition(["InterfaceAllocationsFamiliales", + "avait_enfant_à_charge_avant_1er_janvier_2012"], local_var_1170) + try: + try: + local_var_1176 = enfants_a_charge_1126(Unit()) + except EmptyError: + try: + def local_var_1177(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=112, start_column=14, + end_line=112, end_column=30, + law_headings=["Article L131-1", + "Interface du programme", "Épilogue", + "Décrets divers"]), True) + + def local_var_1179(_: Any): + def local_var_1181(enfant_1182: Any): + if ((enfant_1182.d_date_de_naissance + + duration_of_numbers(3, 0, 0)) >= + date_courante_1133): + local_var_1183 = SituationObligationScolaire(SituationObligationScolaire_Code.Avant, + Unit()) + else: + if ((enfant_1182.d_date_de_naissance + + duration_of_numbers(16, 0, 0)) >= + date_courante_1133): + local_var_1183 = SituationObligationScolaire(SituationObligationScolaire_Code.Pendant, + Unit()) + else: + local_var_1183 = SituationObligationScolaire(SituationObligationScolaire_Code.Apres, + Unit()) + return Enfant(identifiant=enfant_1182.d_identifiant, + obligation_scolaire=local_var_1183, + remuneration_mensuelle=enfant_1182.d_remuneration_mensuelle, + date_de_naissance=enfant_1182.d_date_de_naissance, + age=year_of_date((date_of_numbers(0, 1, 1) + + (date_courante_1133 - + enfant_1182.d_date_de_naissance))), + prise_en_charge=enfant_1182.d_prise_en_charge, + a_deja_ouvert_droit_aux_allocations_familiales=enfant_1182.d_a_deja_ouvert_droit_aux_allocations_familiales) + return list_map(local_var_1181, enfants_1139) + local_var_1176 = handle_default([], local_var_1177, + local_var_1179) except EmptyError: raise EmptyError except EmptyError: raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", - start_line=78, start_column=12, end_line=78, end_column=25, - law_headings=["Interface du programme", "Épilogue", - "Décrets divers"])) - montant_verse_783 = log_variable_definition(["InterfaceAllocationsFamiliales", - "montant_versé"], local_var_784) - return InterfaceAllocationsFamilialesOut(date_courante_out = date_courante_617, - enfants_out = enfants_619, - enfants_a_charge_out = enfants_a_charge_631, - ressources_menage_out = ressources_menage_621, - residence_out = residence_623, montant_verse_out = montant_verse_783, - personne_charge_effective_permanente_est_parent_out = personne_charge_effective_permanente_est_parent_625, - personne_charge_effective_permanente_remplit_titre_I_out = personne_charge_effective_permanente_remplit_titre__i_627, - avait_enfant_a_charge_avant_1er_janvier_2012_out = avait_enfant_a_charge_avant_1er_janvier_2012_629) \ No newline at end of file + start_line=74, start_column=12, end_line=74, end_column=28, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"])) + enfants_a_charge_1175 = log_variable_definition(["InterfaceAllocationsFamiliales", + "enfants_à_charge"], local_var_1176) + + def local_var_1185(_: Unit): + try: + def local_var_1188(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=90, start_column=20, + end_line=90, end_column=67, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"]), personne_charge_effective_permanente_est_parent_1157) + + def local_var_1190(_: Any): + return True + local_var_1187 = handle_default([], local_var_1188, + local_var_1190) + except EmptyError: + local_var_1187 = False + return log_variable_definition(["InterfaceAllocationsFamiliales", + "allocations_familiales.personne_charge_effective_permanente_est_parent"], + local_var_1187) + allocations_familiales_dot_personne_charge_effective_permanente_est_parent_1184 = local_var_1185 + + def local_var_1193(_: Unit): + try: + def local_var_1196(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=93, start_column=20, + end_line=93, end_column=72, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"]), personne_charge_effective_permanente_remplit_titre__i_1163) + + def local_var_1198(_: Any): + return True + local_var_1195 = handle_default([], local_var_1196, + local_var_1198) + except EmptyError: + local_var_1195 = False + return log_variable_definition(["InterfaceAllocationsFamiliales", + "allocations_familiales.personne_charge_effective_permanente_remplit_titre_I"], + local_var_1195) + allocations_familiales_dot_personne_charge_effective_permanente_remplit_titre__i_1192 = local_var_1193 + + def local_var_1201(_: Unit): + try: + def local_var_1204(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=86, start_column=14, + end_line=86, end_column=54, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"]), True) + + def local_var_1206(_: Any): + return ressources_menage_1145 + local_var_1203 = handle_default([], local_var_1204, + local_var_1206) + except EmptyError: + raise EmptyError + return log_variable_definition(["InterfaceAllocationsFamiliales", + "allocations_familiales.ressources_ménage"], local_var_1203) + allocations_familiales_dot_ressources_menage_1200 = local_var_1201 + + def local_var_1209(_: Unit): + try: + def local_var_1212(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=87, start_column=14, + end_line=87, end_column=46, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"]), True) + + def local_var_1214(_: Any): + return residence_1151 + local_var_1211 = handle_default([], local_var_1212, + local_var_1214) + except EmptyError: + raise EmptyError + return log_variable_definition(["InterfaceAllocationsFamiliales", + "allocations_familiales.résidence"], local_var_1211) + allocations_familiales_dot_residence_1208 = local_var_1209 + + def local_var_1217(_: Unit): + try: + def local_var_1220(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=84, start_column=14, + end_line=84, end_column=50, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"]), True) + + def local_var_1222(_: Any): + return date_courante_1133 + local_var_1219 = handle_default([], local_var_1220, + local_var_1222) + except EmptyError: + raise EmptyError + return log_variable_definition(["InterfaceAllocationsFamiliales", + "allocations_familiales.date_courante"], local_var_1219) + allocations_familiales_dot_date_courante_1216 = local_var_1217 + + def local_var_1225(_: Unit): + try: + def local_var_1228(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=85, start_column=14, + end_line=85, end_column=53, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"]), True) + + def local_var_1230(_: Any): + return enfants_a_charge_1175 + local_var_1227 = handle_default([], local_var_1228, + local_var_1230) + except EmptyError: + raise EmptyError + return log_variable_definition(["InterfaceAllocationsFamiliales", + "allocations_familiales.enfants_à_charge"], local_var_1227) + allocations_familiales_dot_enfants_a_charge_1224 = local_var_1225 + + def local_var_1233(_: Unit): + try: + def local_var_1236(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=96, start_column=20, + end_line=96, end_column=64, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"]), avait_enfant_a_charge_avant_1er_janvier_2012_1169) + + def local_var_1238(_: Any): + return True + local_var_1235 = handle_default([], local_var_1236, + local_var_1238) + except EmptyError: + local_var_1235 = False + return log_variable_definition(["InterfaceAllocationsFamiliales", + "allocations_familiales.avait_enfant_à_charge_avant_1er_janvier_2012"], + local_var_1235) + allocations_familiales_dot_avait_enfant_a_charge_avant_1er_janvier_2012_1232 = local_var_1233 + + def local_var_1241(_: Unit): + raise EmptyError + + def local_var_1243(_: Unit): + raise EmptyError + + def local_var_1245(_: Unit): + raise EmptyError + + def local_var_1247(_: Unit): + raise EmptyError + + def local_var_1249(_: Unit): + raise EmptyError + + def local_var_1251(_: Unit): + raise EmptyError + + def local_var_1253(_: Unit): + raise EmptyError + + def local_var_1255(_: Unit): + raise EmptyError + + def local_var_1257(_: Unit): + raise EmptyError + + def local_var_1259(_: Unit): + raise EmptyError + + def local_var_1261(_: Unit): + raise EmptyError + + def local_var_1263(_: Unit): + raise EmptyError + + def local_var_1265(_: Unit): + raise EmptyError + + def local_var_1267(_: Unit): + raise EmptyError + + def local_var_1269(_: Unit): + raise EmptyError + + def local_var_1271(_: Unit): + raise EmptyError + + def local_var_1273(_: Unit): + raise EmptyError + + def local_var_1275(_: Unit): + raise EmptyError + + def local_var_1277(_: Unit): + raise EmptyError + + def local_var_1279(_: Unit): + raise EmptyError + + def local_var_1281(_: Unit): + raise EmptyError + + def local_var_1283(_: Unit): + raise EmptyError + + def local_var_1285(_: Unit): + raise EmptyError + + def local_var_1287(_: Unit): + raise EmptyError + + def local_var_1289(_: Unit): + raise EmptyError + + def local_var_1291(_: Unit): + raise EmptyError + + def local_var_1293(_: Unit): + raise EmptyError + + def local_var_1295(_: Unit): + raise EmptyError + + def local_var_1297(_: Unit): + raise EmptyError + + def local_var_1299(_: Unit): + raise EmptyError + + def local_var_1301(_: Unit): + raise EmptyError + + def local_var_1303(_: Unit): + raise EmptyError + + def local_var_1305(_: Unit): + raise EmptyError + + def local_var_1307(_: Unit): + raise EmptyError + + def local_var_1309(_: Unit): + raise EmptyError + + def local_var_1311(_: Unit): + raise EmptyError + + def local_var_1313(_: Unit): + raise EmptyError + result_1240 = log_end_call(["InterfaceAllocationsFamiliales", + "allocations_familiales", "AllocationsFamiliales"], + log_begin_call(["InterfaceAllocationsFamiliales", + "allocations_familiales", "AllocationsFamiliales"], + allocations_familiales, + AllocationsFamilialesIn(personne_charge_effective_permanente_est_parent_in=allocations_familiales_dot_personne_charge_effective_permanente_est_parent_1184, + personne_charge_effective_permanente_remplit_titre_I_in=allocations_familiales_dot_personne_charge_effective_permanente_remplit_titre__i_1192, + ressources_menage_in=allocations_familiales_dot_ressources_menage_1200, + residence_in=allocations_familiales_dot_residence_1208, + date_courante_in=allocations_familiales_dot_date_courante_1216, + enfants_a_charge_in=allocations_familiales_dot_enfants_a_charge_1224, + enfants_a_charge_droit_ouvert_prestation_familiale_in=local_var_1241, + prise_en_compte_in=local_var_1243, versement_in=local_var_1245, + montant_verse_in=local_var_1247, + droit_ouvert_base_in=local_var_1249, + montant_initial_base_in=local_var_1251, + montant_initial_base_premier_enfant_in=local_var_1253, + montant_initial_base_deuxieme_enfant_in=local_var_1255, + montant_initial_base_troisieme_enfant_et_plus_in=local_var_1257, + rapport_enfants_total_moyen_in=local_var_1259, + nombre_moyen_enfants_in=local_var_1261, + nombre_total_enfants_in=local_var_1263, + montant_avec_garde_alternee_base_in=local_var_1265, + montant_verse_base_in=local_var_1267, + avait_enfant_a_charge_avant_1er_janvier_2012_in=allocations_familiales_dot_avait_enfant_a_charge_avant_1er_janvier_2012_1232, + montant_initial_base_premier_enfant_mayotte_in=local_var_1269, + montant_initial_base_deuxieme_enfant_mayotte_in=local_var_1271, + montant_initial_base_troisieme_enfant_mayotte_in=local_var_1273, + montant_initial_base_quatrieme_enfant_et_plus_mayotte_in=local_var_1275, + droit_ouvert_forfaitaire_in=local_var_1277, + montant_verse_forfaitaire_par_enfant_in=local_var_1279, + montant_verse_forfaitaire_in=local_var_1281, + droit_ouvert_majoration_in=local_var_1283, + montant_initial_metropole_majoration_in=local_var_1285, + montant_initial_majoration_in=local_var_1287, + montant_avec_garde_alternee_majoration_in=local_var_1289, + montant_verse_majoration_in=local_var_1291, + droit_ouvert_complement_in=local_var_1293, + montant_base_complement_pour_base_et_majoration_in=local_var_1295, + complement_degressif_in=local_var_1297, + montant_verse_complement_pour_base_et_majoration_in=local_var_1299, + montant_verse_complement_pour_forfaitaire_in=local_var_1301, + nombre_enfants_l521_1_in=local_var_1303, + age_minimum_alinea_1_l521_3_in=local_var_1305, + nombre_enfants_alinea_2_l521_3_in=local_var_1307, + est_enfant_le_plus_age_in=local_var_1309, + plafond_I_d521_3_in=local_var_1311, + plafond_II_d521_3_in=local_var_1313))) + allocations_familiales_dot_personne_charge_effective_permanente_est_parent_1315 = result_1240.personne_charge_effective_permanente_est_parent_out + allocations_familiales_dot_personne_charge_effective_permanente_remplit_titre__i_1316 = result_1240.personne_charge_effective_permanente_remplit_titre_I_out + allocations_familiales_dot_ressources_menage_1317 = result_1240.ressources_menage_out + allocations_familiales_dot_residence_1318 = result_1240.residence_out + allocations_familiales_dot_date_courante_1319 = result_1240.date_courante_out + allocations_familiales_dot_enfants_a_charge_1320 = result_1240.enfants_a_charge_out + allocations_familiales_dot_enfants_a_charge_droit_ouvert_prestation_familiale_1321 = result_1240.enfants_a_charge_droit_ouvert_prestation_familiale_out + allocations_familiales_dot_prise_en_compte_1322 = result_1240.prise_en_compte_out + allocations_familiales_dot_versement_1323 = result_1240.versement_out + allocations_familiales_dot_montant_verse_1324 = result_1240.montant_verse_out + allocations_familiales_dot_droit_ouvert_base_1325 = result_1240.droit_ouvert_base_out + allocations_familiales_dot_montant_initial_base_1326 = result_1240.montant_initial_base_out + allocations_familiales_dot_montant_initial_base_premier_enfant_1327 = result_1240.montant_initial_base_premier_enfant_out + allocations_familiales_dot_montant_initial_base_deuxieme_enfant_1328 = result_1240.montant_initial_base_deuxieme_enfant_out + allocations_familiales_dot_montant_initial_base_troisieme_enfant_et_plus_1329 = result_1240.montant_initial_base_troisieme_enfant_et_plus_out + allocations_familiales_dot_rapport_enfants_total_moyen_1330 = result_1240.rapport_enfants_total_moyen_out + allocations_familiales_dot_nombre_moyen_enfants_1331 = result_1240.nombre_moyen_enfants_out + allocations_familiales_dot_nombre_total_enfants_1332 = result_1240.nombre_total_enfants_out + allocations_familiales_dot_montant_avec_garde_alternee_base_1333 = result_1240.montant_avec_garde_alternee_base_out + allocations_familiales_dot_montant_verse_base_1334 = result_1240.montant_verse_base_out + allocations_familiales_dot_avait_enfant_a_charge_avant_1er_janvier_2012_1335 = result_1240.avait_enfant_a_charge_avant_1er_janvier_2012_out + allocations_familiales_dot_montant_initial_base_premier_enfant_mayotte_1336 = result_1240.montant_initial_base_premier_enfant_mayotte_out + allocations_familiales_dot_montant_initial_base_deuxieme_enfant_mayotte_1337 = result_1240.montant_initial_base_deuxieme_enfant_mayotte_out + allocations_familiales_dot_montant_initial_base_troisieme_enfant_mayotte_1338 = result_1240.montant_initial_base_troisieme_enfant_mayotte_out + allocations_familiales_dot_montant_initial_base_quatrieme_enfant_et_plus_mayotte_1339 = result_1240.montant_initial_base_quatrieme_enfant_et_plus_mayotte_out + allocations_familiales_dot_droit_ouvert_forfaitaire_1340 = result_1240.droit_ouvert_forfaitaire_out + allocations_familiales_dot_montant_verse_forfaitaire_par_enfant_1341 = result_1240.montant_verse_forfaitaire_par_enfant_out + allocations_familiales_dot_montant_verse_forfaitaire_1342 = result_1240.montant_verse_forfaitaire_out + allocations_familiales_dot_droit_ouvert_majoration_1343 = result_1240.droit_ouvert_majoration_out + allocations_familiales_dot_montant_initial_metropole_majoration_1344 = result_1240.montant_initial_metropole_majoration_out + allocations_familiales_dot_montant_initial_majoration_1345 = result_1240.montant_initial_majoration_out + allocations_familiales_dot_montant_avec_garde_alternee_majoration_1346 = result_1240.montant_avec_garde_alternee_majoration_out + allocations_familiales_dot_montant_verse_majoration_1347 = result_1240.montant_verse_majoration_out + allocations_familiales_dot_droit_ouvert_complement_1348 = result_1240.droit_ouvert_complement_out + allocations_familiales_dot_montant_base_complement_pour_base_et_majoration_1349 = result_1240.montant_base_complement_pour_base_et_majoration_out + allocations_familiales_dot_complement_degressif_1350 = result_1240.complement_degressif_out + allocations_familiales_dot_montant_verse_complement_pour_base_et_majoration_1351 = result_1240.montant_verse_complement_pour_base_et_majoration_out + allocations_familiales_dot_montant_verse_complement_pour_forfaitaire_1352 = result_1240.montant_verse_complement_pour_forfaitaire_out + allocations_familiales_dot_nombre_enfants_l521_1_1353 = result_1240.nombre_enfants_l521_1_out + allocations_familiales_dot_age_minimum_alinea_1_l521_3_1354 = result_1240.age_minimum_alinea_1_l521_3_out + allocations_familiales_dot_nombre_enfants_alinea_2_l521_3_1355 = result_1240.nombre_enfants_alinea_2_l521_3_out + allocations_familiales_dot_est_enfant_le_plus_age_1356 = result_1240.est_enfant_le_plus_age_out + allocations_familiales_dot_plafond__i_d521_3_1357 = result_1240.plafond_I_d521_3_out + allocations_familiales_dot_plafond__i_i_d521_3_1358 = result_1240.plafond_II_d521_3_out + try: + try: + local_var_1360 = montant_verse_1129(Unit()) + except EmptyError: + try: + def local_var_1361(_: Any): + return log_decision_taken(SourcePosition(filename="./epilogue.catala_fr", + start_line=88, start_column=14, + end_line=88, end_column=27, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"]), True) + + def local_var_1363(_: Any): + return allocations_familiales_dot_montant_verse_1324 + local_var_1360 = handle_default([], local_var_1361, + local_var_1363) + except EmptyError: + raise EmptyError + except EmptyError: + raise NoValueProvided(SourcePosition(filename="./epilogue.catala_fr", + start_line=78, start_column=12, end_line=78, end_column=25, + law_headings=["Interface du programme", "Épilogue", + "Décrets divers"])) + montant_verse_1359 = log_variable_definition(["InterfaceAllocationsFamiliales", + "montant_versé"], local_var_1360) + return InterfaceAllocationsFamilialesOut(date_courante_out=date_courante_1133, + enfants_out=enfants_1139, + enfants_a_charge_out=enfants_a_charge_1175, + ressources_menage_out=ressources_menage_1145, + residence_out=residence_1151, + montant_verse_out=montant_verse_1359, + personne_charge_effective_permanente_est_parent_out=personne_charge_effective_permanente_est_parent_1157, + personne_charge_effective_permanente_remplit_titre_I_out=personne_charge_effective_permanente_remplit_titre__i_1163, + avait_enfant_a_charge_avant_1er_janvier_2012_out=avait_enfant_a_charge_avant_1er_janvier_2012_1169)