{"code":"coinfc71","name":"COIN","description":"Naruto có $N$ cái túi, túi thứ $i$ có $A_i$ đồng tiền. Mỗi lần đi làm nhiệm vụ, Naruto sẽ chọn ra một số túi để mang theo nếu thỏa mãn điều kiện sau:\r\n\r\nGọi $S$ là tổng số tiền trong tất cả các túi Naruto chọn, cần chọn sao cho $S \\% 2 = P$ (% là phép lấy phần dư, % trong C++ và mod trong pascal). Hỏi Naruto có bao nhiêu cách chọn các túi?\r\n\r\n#### Input\r\n\r\n- Dòng đầu gồm 2 số nguyên $N$ và $P$.\r\n- Dòng tiếp theo gồm $N$ số là $A_1, A_2, A_3, ...A_N$.\r\n\r\n#### Output\r\n\r\n- Gồm một dòng duy nhất chứa số nguyên là kết quả của bài toán. (Kết quả lấy phần dư với $10^9 + 7$).\r\n\r\n#### Constants\r\n\r\n- $1 \\leq N \\leq 50$.\r\n- $0 \\leq P \\leq 1$.\r\n- $1 \\leq A_i \\leq 100$.\r\n\r\n#### Example\r\n\r\n!!! question \"Test 1\"\r\n    ???+ \"Input\"\r\n        ```sample\r\n        2 0 \r\n        1 3 \r\n        ```\r\n    ???+ success \"Output\"\r\n        ```sample\r\n        2\r\n        ```\r\n    ??? warning \"Note\"\r\n\r\n        - Cách 1: Không chọn cái nào.\r\n        - Cách 2: Chọn cả 2 túi. $1 + 3 = 4, 4\\%2 = 0 = P$.","points":1400.0,"partial":true,"time_limit":1.0,"memory_limit":262144,"short_circuit":false,"allowed_languages":[3,4,34,36,37,5,6,11,12,14,28,2,38,39,9,18,17,29,23,27,35,25,26,10,7,19,32,1,8,15,16,24,20,33,13,41,21,40],"is_public":true,"is_manually_managed":false,"permissions":{"can_edit":false}}