{"raw_statement":[{"iden":"problem statement","content":"Snuke has a string $x$ of length $N$. Initially, every character in $x$ is `0`.\nSnuke can do the following two operations any number of times in any order:\n\n*   Choose $A$ consecutive characters in $x$ and replace each of them with `0`.\n*   Choose $B$ consecutive characters in $x$ and replace each of them with `1`.\n\nFind the number of different strings that $x$ can be after Snuke finishes doing operations. This count can be enormous, so compute it modulo $(10^9+7)$."},{"iden":"constraints","content":"*   $1 \\leq N \\leq 5000$\n*   $1 \\leq A,B \\leq N$\n*   All values in input are integers."},{"iden":"input","content":"Input is given from Standard Input in the following format:\n\n$N$ $A$ $B$"},{"iden":"sample input 1","content":"4 2 3"},{"iden":"sample output 1","content":"11\n\nFor example, $x$ can be `0011` or `1111` in the end, but cannot be `0110`."},{"iden":"sample input 2","content":"10 7 2"},{"iden":"sample output 2","content":"533"},{"iden":"sample input 3","content":"1000 100 10"},{"iden":"sample output 3","content":"828178524"}],"translated_statement":null,"sample_group":[],"show_order":["default"],"formal_statement":null,"simple_statement":null,"has_page_source":true}