{"group":{"id":1,"name":"Community","lockable":false,"created_at":"2012-01-18T18:02:15.000Z","updated_at":"2026-04-06T14:01:22.000Z","description":"Problems submitted by members of the MATLAB Central community.","is_default":true,"created_by":161519,"badge_id":null,"featured":false,"trending":false,"solution_count_in_trending_period":0,"trending_last_calculated":"2026-04-06T00:00:00.000Z","image_id":null,"published":true,"community_created":false,"status_id":2,"is_default_group_for_player":false,"deleted_by":null,"deleted_at":null,"restored_by":null,"restored_at":null,"description_opc":null,"description_html":null,"published_at":null},"problems":[{"id":59464,"title":"Minimum, Maximum, and Number of Primitive Roots Modulo (m)","description":"This is a continuation of problem 59212, find the number of primitive roots modulo (m) and output the minimum and maximum of those roots if any (or otherwise nan).","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.44px; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none solid rgb(0, 0, 0); white-space: normal; \"\u003e\u003cdiv style=\"block-size: 42px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 407px 21px; transform-origin: 407px 21px; vertical-align: baseline; \"\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eThis is a continuation of problem 59212, find the number of primitive roots modulo (m) and output the minimum and maximum of those roots if any (or otherwise nan).\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function [minR,maxR,numR] = primRootmodm(m)\r\n  minR=3;\r\n  maxR=14;\r\n  numR=8;\r\nend","test_suite":"%%\r\n[minR,maxR,numR]=arrayfun(@primRootmodm,3:20);\r\nassert(isequal(find(isnan(minR)),[6,10,13,14,18]))\r\nassert(isequal(max(maxR),15))\r\nassert(isequal(sum(numR),37))\r\n%%\r\nrng(3141);\r\nr=randi(1e7,1,100);\r\n[minR,maxR,numR]=arrayfun(@primRootmodm,r);\r\nassert(isequal([round(mean(minR,'omitnan')),max(minR),min(minR),round(std(minR,'omitnan'))],[10,33,2,10]))\r\nassert(isequal([nnz(isnan(maxR)),round(mean(minR,'omitnan')),round(std(minR,'omitnan'))],[88,10,10]))\r\nassert(isequal(max(numR),3214080))\r\n%%\r\nrng(2718);\r\n[minR,maxR,numR]=arrayfun(@primRootmodm,randi(8e7,1,20));\r\nassert(isequal(max(numR),31309824))\r\nassert(isequal(max(maxR),67135107))\r\nassert(isequal(min(minR),2))\r\n\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":0,"created_by":145982,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":1,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":1,"created_at":"2023-12-08T21:15:50.000Z","updated_at":"2023-12-08T21:15:50.000Z","published_at":"2023-12-08T21:15:50.000Z","restored_at":null,"restored_by":null,"spam":null,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThis is a continuation of problem 59212, find the number of primitive roots modulo (m) and output the minimum and maximum of those roots if any (or otherwise nan).\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"},{"id":51188,"title":"Number of Primitive Roots and Cyclic","description":null,"description_html":"\u003cdiv style = \"text-align: start; line-height: 20.44px; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none solid rgb(0, 0, 0); white-space: normal; \"\u003e\u003cdiv style=\"block-size: 63px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 407px 31.5px; transform-origin: 407px 31.5px; vertical-align: baseline; \"\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 31.5px; text-align: left; transform-origin: 384px 31.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eDetermine the number of primitive roots of for each input number in an array or matrix (m) and whether each number will form a cyclic group. Output should be a corresponding array or matrix of the number of primitive roots and another logical array or matrix.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function [num,cyclic] = numPrimitivePrimes(m)\r\n  num=m;\r\n  cyclic=zeros(size(m));\r\nend","test_suite":"%%\r\nm=[824149356327936,619505816445824,902925119282940,6781941268060,737940751495520,781679826661116\r\n   218232263733975,103814782651106,312512845986667,495871665666786,310719817391570,111533124684944\r\n   99642302961614,799061803589637,281589166159224,988482243012287,600407500351151,579329289388906];\r\nnum=[83230601379840,48499811942400,50584603410432,530841600000,87793796136960,58174134681600\r\n     30887903232000,13408979189760,62817473839104,35258302464000,36539825946624,18587454842880\r\n     11324072693760,122711350422528,15430396133376,312152287267008,225445593006080,50190719385600];\r\ncyclic=logical([0   0   0   0   0   0\r\n                0   0   0   0   0   0\r\n                0   0   0   0   1   0]);\r\n[p,c]=numPrimitivePrimes(m);\r\nassert(isequal(p,num))\r\nassert(isequal(c,cyclic))\r\n%%\r\nm=[859709       51839      346013      350111\r\n   667691      378997      488603      636319\r\n   213289      208099       75353      739799\r\n   311323      458921      901013      146917\r\n   516883      790793      179533      487979];\r\nnum=[427280       25918      165440      138528\r\n     255376      126328      244300      192192\r\n     71088       63000       37672      366336\r\n     91520      142080      386064       37440\r\n     171120      395392       59832      243988];\r\ncyclic=logical([1   1   1   1\r\n                1   1   1   1\r\n                1   1   1   1\r\n                1   1   1   1\r\n                1   1   1   1]);\r\n[p,c]=numPrimitivePrimes(m);\r\nassert(isequal(p,num))\r\nassert(isequal(c,cyclic))\r\n%%\r\nm=     [9954        7444        1947        4439        4185        1045        9381        6876        8115        6709\r\n        7077        4168        4175        9959        9978        6523        6054        2269        4481        9829\r\n         806        9074        2930        4366        9111        9918        6390        9791        8307        9369\r\n         434         944        7022        3045        5505        6781        7027        9757        1267        5763\r\n        4912        1814        2398        2466        5964        4285        8610        2896        5133         802\r\n        4466        9466        9595        9609         792        6549        3797        3385        7160        4139\r\n        4868        1009        3055        2229        5767        5888        7122        9965        2482        1809\r\n        1659        3881        1550        3957        8982        7451        5236        7890        5320        9957\r\n        3607        2893        5556        2246        4634        6409        3635        7950        3823        5204\r\n        8808         731        7906        2701        3984        5037        4347        6324        8018        8853];\r\nnum=   [864         960         448        1280         576         192        2688         576        1152        2016\r\n        1152         768        1312        2880        1104        2304         576         648        1536        2592\r\n          96        1344         576         672        1760         864         384        3520        1152        2064\r\n          48         224         864         384         960        1792        2340        3536         288        1536\r\n         768         300         288         256         384        1696         512         384        1344         160\r\n         384        1872        1920        3200          64        1344        1728        1248        1408        2068\r\n        1152         288         704         624        1728        1280        1184        2624         384         360\r\n         288        1536         160        1316         984        2960         512        1040         576        1872\r\n        1200        1040         480         320         480        1536         880         768        1008         960\r\n         960         192        1120         864         640         960         720         512         864        1792];\r\ncyclic=logical([0   0   0   0   0   0   0   0   0   1\r\n                0   0   0   0   0   0   0   1   1   1\r\n                0   0   0   0   0   0   0   1   0   0\r\n                0   0   1   0   0   1   1   0   0   0\r\n                0   1   0   0   0   0   0   0   0   1\r\n                0   1   0   0   0   0   1   0   0   1\r\n                0   1   0   0   0   0   0   0   0   0\r\n                0   1   0   0   0   1   0   0   0   0\r\n                1   0   0   1   0   0   0   0   1   0\r\n                0   0   0   0   0   0   0   0   0   0]);\r\n[p,c]=numPrimitivePrimes(m);\r\nassert(isequal(p,num))\r\nassert(isequal(c,cyclic))\r\n%%\r\nm=[2     4     5     6     7     8     9    10    11    12    13    14    15    16    17    18    19    20];\r\nnum=[1     1     2     1     2     2     2     2     4     2     4     2     4     4     8     2     6     4];\r\ncyclic=logical([1   1   1   1   1   0   1   1   1   0   1   1   0   0   1   1   1   0]);\r\n[p,c]=numPrimitivePrimes(m);\r\nassert(isequal(p,num))\r\nassert(isequal(c,cyclic))\r\n%%\r\nm=[47       14771       72211       82609       55229       49549        4957       79613       16249       16547\r\n       61043       59957       56611       23431       67219       66587       29851       74821        2503       22133\r\n       15607       89413       35447       74287       71191       47543       66898       79987       83003       18973\r\n       17989        7019       70583       28607       44549        9293         601       95339       55967       24611\r\n       13421       21991       72503       59621       15647        9661       15131        7733       32467       96128\r\n       52363       23339       11549       67261       74219        9173       81233       88363       60169       67589\r\n        1103       34877       44699       40093       61420       45281       90679       64657       92927       89891\r\n       48487       41351       23958       23609       36871       40169       63611       27239       67759       38723\r\n        3491        9803       59611       21124       67601       67021       53453        4549       42209       15137\r\n       45083       41149       60521       45737       97549       19470       41961       89107       56531       79259];\r\nnum=[ 22        5040       18368       27520       27612       16512        1392       36720        5408        8272\r\n       29172       27648       13824        5600       21056       30576        7920       18816         828       10040\r\n        4896       29800       17208       24756       16128       21600        7680       26660       40572        5760\r\n        5992        3080       35290       14302       18144        4400         160       46944       27982        9328\r\n        4800        5856       36250       21600        7822        2112        5632        1728        9264       12800\r\n       17448        9996        5772       16704       36204        4584       40608       16896       19008       33120\r\n         504       17436       22348       12288        7680       18048       24192       15360       45888       35200\r\n       16160       16520        1760       10848        9824       20080       25440       13618       21560       18324\r\n        1392        4368       15888        2560       24960       17856       21648        1512       21088        6720\r\n       22540       13608       22528       22864       29520        1792        9408       29700       22608       37884];\r\ncyclic=logical([1   1   1   1   1   1   1   1   1   1\r\n                1   1   1   1   1   1   1   1   1   1\r\n                1   1   1   1   1   1   0   1   1   1\r\n                1   1   1   1   1   1   1   1   1   1\r\n                1   1   1   1   1   1   1   0   1   0\r\n                1   1   1   1   1   1   1   0   1   1\r\n                1   1   1   1   0   1   1   0   1   1\r\n                1   1   0   1   1   1   1   1   1   1\r\n                1   1   1   0   1   1   1   1   1   1\r\n                1   1   1   1   1   0   0   1   1   1]);\r\n[p,c]=numPrimitivePrimes(m);\r\nassert(isequal(p,num))\r\nassert(isequal(c,cyclic))\r\n","published":true,"deleted":false,"likes_count":1,"comments_count":0,"created_by":145982,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":2,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":1,"created_at":"2021-03-24T20:07:09.000Z","updated_at":"2021-03-24T20:59:07.000Z","published_at":"2021-03-24T20:59:07.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eDetermine the number of primitive roots of for each input number in an array or matrix (m) and whether each number will form a cyclic group. Output should be a corresponding array or matrix of the number of primitive roots and another logical array or matrix.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"},{"id":61046,"title":"Decipher Message Using Prime of Primitive Root of Two Sequence Key","description":"Provided a message with all characters \u003c= 255 (ascii) as an input, decode the padded message (removing the random character pad), XORing input converted to binary vector (8 bits each) with the inputted prime having primitive root of two as the key. The key is the repeated sequence of 2^x modulo prime key input starting from x=0 until the cycle repeats (unpadded zero binary represented vector of the repeated sequence). After XORing, remove the padded front and return the character array as output.","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.44px; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none; white-space: normal; \"\u003e\u003cdiv style=\"block-size: 105px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 408px 52.5px; transform-origin: 408px 52.5px; vertical-align: baseline; \"\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 385px 52.5px; text-align: left; transform-origin: 385px 52.5px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eProvided a message with all characters \u0026lt;= 255 (ascii) as an input, decode the padded message (removing the random character pad), XORing input converted to binary vector (8 bits each) with the inputted prime having primitive root of two as the key. The key is the repeated sequence of 2^x modulo prime key input starting from x=0 until the cycle repeats (unpadded zero binary represented vector of the repeated sequence). After XORing, remove the padded front and return the character array as output.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function d = deCipher(x,key)\r\n  d=xor(x,key);\r\nend\r\n","test_suite":"%%\r\nx=[39   212    74    83   164    14     3   175    39   212    74    83   164    14     3   175    39   212    74    83   164   14     3   175    39   212    74    83   164    14     3   175    39   212    74    83   164    14     3   175    39   212   74    83   164    14     3   175    39   212    74    83   164    14     3   175    39   212    74    83   164    14     3   19   242    77   208   208    52   219   130    53   242    82   200   207    60   218];\r\nassert(isequal(deCipher(x,19),'I love to swim!'));\r\n%%\r\nx=double('şlŒœŚøùĂ¨©ădurŢŠª«Ădõ³f ÈĳĨĻis´Ŕ~êĪŢŞjhĻľŒĒďċĈÓ»ŃÃÜĮîĜŐËīōï´ÖŜąđotŚļĶ¦ĺą®ŝšŊňÇ´ļōďÆł¶ÕľŐĔşºśŔdkĢŠŏĽá³ÐqfÊ¯ĬŕĔăĢċĠŋÆÄĮÅĈėĠĠ')-100;\r\nassert(isequal(deCipher(x,797),'abcdefghijklmnopqrstuvwxyz !@#$%^\u0026*()_+ 0123456789 ABCDEFGHIJKLMNOPQRSTUVWXYZ'));\r\n%%\r\nx=double('¼ďòææòïîÐÄ¥Æ°ðçØúĮĞ²ŢÄŝÍËÇŢōìœïèğŐ³¼fªÐÚŗ|ęģŀŌ®ĺĸŠ²£ğÎäzix¿ŀĝĀ³ÚĉĆxùÀpœįqŅ¹ÌĀ³¾jĕl¥¸Ëĕ ÈŚÕ§ĻÀªđĈË¯¦ĝŇÖĠÉ®ŖÞÇÿĒæwİğ¢¹¡þîľğÍ°ýq¶ĻÛŘ÷lŘ§sŀĊěÀÓōşāÁŖĿ¶ŊÁŋßh¨Ù·¦ČåªëĬùİ¶¦¦­Ô­ì§¼ºŋİpėz¿jŠÅŚĈeļı¡œ¡Ś~{ţŘàÿwo}êïåĲĭőĴňÈĚďĤ§¨÷xĢ¾¨ĻĂĲČëħĝğ«ĕīţø©Ôłš¶Ðgõĥ¾ĊĜĎěÕıŚġõyúuŘĥđĘåªĹåēñ¤Ĭ¹Ŗíā¼ïīĿÇÓŕĔēĞëĳŕĦđ»óįĈ¢©ÃĴĿĩuĄé¼ĽņĘwŋĤâŠŉĶòńĺĝĈŁÃč£ņs¡q¡ŞġĒ©Ăºõįjhwd¸ÆĶªŒĚ¶ĉ½òřöĥĶæŜóěïÚĸr¦ŃĩĠŘĵĥľùģĖąĦnŞìĚŔĻřĨíţùŗýķŅÁĎ£k} åėėŊùÒÕĄĀÔ}ÖÍĭŉ¿Ň ÜőpöĚŞ¯ŜēđĢ«fðåčÊãtņņĄ¾ĝdīj­ī~ÓÃ¦ĳ¼þ~ĺĠázvhg¾Ögįĵ¡ęįÚ§ĐŒŖŌÎİusjŢ¸Ĵ¶ś{hôðŢĚúĽĢģ´ëŀādÅ´ĤoŞŉtēt¶čĦŁīÛáŁĤræuöă¿ºėńöŇŇÜĵëņ×ŒřĿ}yĬâĶĀĬŉÿÔčyþŏŌĮŉtËÍěĥĪÔìhßĴéìĬ¹×šĦ¡ÈÑ¾o¯â²ÔĤń­×ŅĎĭðďtæ¿ºľÄÜÇÅşóðļÆİÕşdwĲÈÖíŜÉøĘfğĽþ¿Ė¥ĹęÃŜĈŁŇĳĉÂÍänõsıĪŢŌèŌÂµĸÛÙ·ħÄôÿšì¯ĴŅîĒßuďÉħ·ĕĴuĊxÞ·ØªoĥĐÜăĥ®ĐkoĽłĸĚÝħĽîĔĞ¿ŔĐĝÿy÷~ãş±ŕÒÀİëĻŜæ¿ÉĢĉĢtćãĈřřxï¼úļ÷ħàĦüîČąÐĽ§¢ÑľßµŖŊëäĆÐl¡ŞèīÏØŜûí½ĥĜĝ£ÚjŕÇăĠxÚŒÞ¹ÖĖÑćŘö°õmňÅĔĬłĻĨjséÀhÖłĐmĽĪ©irôvŉōĪİĉĮ kĿÚ Ąōïis©Ùdĵ{Āü¶ŔÐćtĶĈÅċĦğĆŅ¹é¯ôıÙŇĞŊŝùoÉĤÃĉãŉŐxø¶ÑÍĨ­øÓæùfĨŌÀyŖ¨đĻ°čiÂòĸáŞ ¡i°œţèÈ¬¡ňĺĆxŐ¾àÜÆÜţŏsħċďšdÄâßé§û¹èrĖ¼Į®ăĆşŁã÷ĎëĭĖiÃßĞŃêēæÕİĨļĺeď¡ĬŐđzŀy®öŠĆěĂĴ¥ğêŃ§ēŅŀ{Ğ£ý¨p}ŀŅęŜr·ŕºõąrÙČ¨ĊĄxèōĨ¡Ŀ×ě·ĒÏĄ»ĳĈÉŠÊččðřĘ~Þ|ÿŁnqšįı¡şãœğħÇņúÎĴŃÊĀĎüĐÕħıÔňĆŊ¾¥ĂÅ±ŎĆĊ»ĠâČsÒŜöŝÕ¹ĭt¥ùĪĽñí¦ÔĈĚŗ´Ķŋ¤ŎķÝňœúĂĚĝmzĴëĐĉÚĒ÷ðģĄlīĭÄőÂ¼¶ăėŅĩ´ČĹīŞ ĥŏęôŎēñèĞďľļjŇŚ´ Ö±ŃÊùàąëŕİĪŕŃªmo~ò°ŃģĊı§mmÔĈÆđðªìÔÚëôrćŎÉĦŝloģĳōŐÜĜŚÿiħĒŝpŉĖzļî{Ļtē½~ĶĄþ¶ýsġŎy­išÂ¬Ĝ£ý¼ïŢÎ}Ďō¡lőĨä÷ÜōĹİfşŉdĎĔİħtŔŖ÷ĂÑÂĝńŚ«£ĊĶĖĮĞÇśľÙņÔĥÇŇwù¹ŀŝñäÞĊæsüšġāøëĥåėý¦ùčº¶¹¯āgÅº¬Ć¼¾Ċŗ¹ĢºnĲ{Ĥđ±|ńÑŖrÇŞĢŗō«ýq½ĂĒèįčŁvfðÌĖĈýč~ŠşčĠÕĂâĝĜăęì÷É|gðĮÀ£ģŏĺä»ÈØËÅ«ô©éÞĔ±ĭĒ °ËĢĜħéĺºşĿħőńĳ¡åŀÈģĀŞŔÏśĠŎğ~r½řĵeãr³ķĞë÷ĈÐĉÃěĒĳŅ÷ÿĄăvÞÒķĻqįðŏŖŌÃŉŊ³çŗèőyßÖ®İħµd°őĞhĻwĜiŇŜŔĢĨķęÌª×ĄėĝåĦr }àÔûç½ºţäěß¢ĕÌĴÐõĎĐáţė´ĭ¤ËÌĖÀļ}ŉÉÖ©¥łĨľÄÏŘĮ©ŔÀk­ġ´ōôĽŁŌ§yĠöĜŏÃ¨eňåŘĉ}gòì¬Ř£ĽåĝŊĐºî£ðā»şă´ŕh±ŚiĶĚÚëŏ¶¢ÿþk¦ēŗķň¹ĤÂŞĠÖwđċ§}ŚjĚæàĶµú¸íĻŌºÿİĦŠâ×Ĩā´Ř©Öo®á®Ĝê»ŗı²ÒāÌīĥÖîİíqwŌŇtŀÁôÓÉŕãÒĪč£ĬÀļnmêįśţÃÜġ¾~Ĳľ{ĥì´vŐŔàĐèßŏkŊÈŞĝù×ÜŚÑÔÞhōŗŗ±xuĔ¿ßŘèãÄŕĺ´ĄÝ¶ĭ¢igŊv¹ţ«òuÛĥŚŉŎŇľĜĔĸòčşŕīŉĠçŅŉÁśŒč¾¼°§ŔmŢpçĭğkßëą|ŋåý¢{ŀĆćęÒ¨pţŒçÏėĕľÏĭĺ¾ŜæČ¡ķr·Ĺĳ­rŚśÿœïĊĎ¸ĈÿŢĕ½ĩĵl÷ì¯ěàięĆě­ºñ±ąýÈĝĚòÝŚĦ²±ÀÓĠęĢĳŝìĦĸ»ĉŝuÏ¤¸ŔĽÞÏçrà·ĸďœňĭ¼ùãÈþrąùh§wŎ¡ġĕĨđÞĠĊòýõ¨ļďµÈþ¹èĵêŖõøŏĊ¤ĩ{úÎ®Ó°ĐŋĵŐòÏĚ¶ōŚÖčĈīÔæŕĨŃ¢nËßÚeİĔ»ÇòèěæûsªĨ¶ŔēĨĖÃ¤Ģē´±ćŋį¢µĳïåÉ³­Š·ņ«Ōļ~µšíŎùō¿kĬŗßĖ¬ĠċŘďřİĜŇöģ«rmŔýëzř½ŒìŢ¹ġdõĸ»úĸĖĳāīííļĕnĤŋĶádėęłĐ£ţĜÎĂ¾ĕmŁf×îÑè{ŝúĳ´Ŝ¢šikuąéèçŔàùġĻÔñsfúòŗtåŋĦméúċeõïŅøņŖĔīōjĶy½ÏÓİkĮĦ£ŇĮ}ĆĪĳĐÞĮ}śĕĠÀŁĩÎŎlōĚŊßħĿįÅŔŗjĪªpďxøÑóļĪŔúûŔrŀq°ňÝvĵĚĘĞvşġø«§ĮķŢÿĹÑŒ£ÑŔ¡ĕxŎíºĦyœĊ»ëêĂÛÓŗąņņĠnĆ´çŗ©ļİ£ĪñŋèÎĕōšĲė~Ōª¬zãŔģĈ «šĲĝřüęăĴœşçäčėrfÉŝēţªőfàÀþmÒÅäĔÃİăĴ±ĹÃńÙðŎŃiĘ¢íßřyįÊÂţľ·ĐĈsećŅÀľġhēĂ}ČġqÙġĚēĪĤ­¹ÃşĂňñĤēţ«ŏúeÖÊÖ¹ł´êśōšìřßôŜ£şÊćŋĩÌńĎªĝĹĩıãÏħsśĀď¯ľł²£Ĉ|ĒďíöóĂø·lĥõśĥ¬Õâý¼ĝĈòā±ÓĝĨĻĥéðĦhÍĬĚëªňĞÿĄ¢~ě´ŇĹfùí¦ú÷ħjĥķģ÷Čŋĵ°ÅÀÁļĘ¬ĸÇëŊĝŢŋÕŠðÝĄxxß·Ŝ»ðāÉĮċ¨ĥĔŅśåõ|Ď¿Ö~Ďŕłª¯íiğÛŕíðÛïÿĢĽĐ×ŗå³°ĳĈlĦîùĕ®ĂśåwĨòĞ¾Ņj»ÔpÀŗîĥî·äġÝĞĿûŢ¥ċ¤ĜÉùşĚríŠŜşŏŔª÷įoÜ¨śÁıÏÙüÂÝóŊņëÌĖ³§iďÃÎČĠďeñŃoÍīÎăĜĬ´ËďÝęrĄĊŃĴÊŅ³ÑzŉĉőĔĶŚąĤĢ¯ą­ĤüċdĄl~ù§ŌĀĚqĨrØ¿ĸĴőêŎĭáËŋŜŀãāĩĐ f£éäöŐœ­úóÚÀĢÞā{ŉŋçŁŒõÿrÓōæÀlńŠŊüĎĴËÍråÌÆ·Ħŝëé¤ŗoœÜĸôtģ¼²ðŜ¶Òe¬lÊøðà¦ŒńŎīĒ{ŀļeŜōŏ|íķĢĩýÊĞ÷npŕĵĝëģè²ĐĊćęŌćĜĴèţ¾ÚĲĒ{ōļœúŏnĩàrļĎu½ŉŢÊ¿Ėő}āòŞĈºďśÅİºġĮĸĚĕjÝŁæĸú Č®ġĎĨĊÐēĐĬĘÏðôm¹¤Į±ŋâûĘ²ĈĆĜčÜÚěņ¨ËĽªm|ĹĝÒŞ³ÌŀgvĞŜĠ²čŜl×ĥ|Ňg¸~ŔúĻĿĲğŃŒïgéğÊİĸĂőĭąròŘķąÎëĚĳ¥ý³ŘŘőÖđ·œóœĀåŅÎîĊĈoàĮêæçutĻŇÔµŕqÓsÝīĞĭšŜ¯n¿ıĺìx£Ī¡łš´~Õļ®ÆěŃėķąÛp}þÀ¼kē¸ÊŀÏ»íùæĲk´ºŠpā§êjŢŁŏĶÔÜiÀłŋíáĨŃyöšćīqáÊ¶ġćģ³čĪĀóČŁŞûÓģĞęğĖţmò´Õĕ­ŢÁİ£¼­|şģślĊŇæĜĭz¢¨qŗûĔöĺĉŇšòzŌõ|œōÉŗĐą®ÛÿóĚ¼ŁŇŠĂÛêÀŘÙàļŜēĩ½ÈĴŋŇĊĆ¡ùÉļċñĩ¡yÈmĴpe÷Ï­Ş£ŔmçĨī´ĲĠf®æzīyěĒĦÓŎŀuņüìàľØÂØ~kÆ|ø×ÿĴ¿śpŋ÷±ĞıĂf¤mĞïś ĽłótnÏêĎÞĨéŌŉÏĪxĖĢĶşŔÈñœòÄďÛĹĖŢČô²ĮęµīĹáā¾ăèïĥo©ęìvïvz¾ĳĵĞořwĕĠÛĘĀpÎĭŇĥÝÜ×kþĠåĹo tŊĸsşēĻg{ĕµī¿ßĽâþÊðįÔęÏĭĕĤÚñĖČæ·³ĬõrĎħļřĀŠ|Đð¬ąíÓüĴó»ªĎ³ŗym²óŎiĮÃ©ŇŊz¢ňÝÄĎËĥĀdĐėēĻêŝōĎ¬ŌţĜÌËśĮĿ ħ£ŖuĳĺĹĉĩÐñÍĖ³®wÜo¸soŒá¤oÙĪļÈþmĳıļôŉÑ®p£ÒāĕµĜ¥ð¦ŉßąĲçÅºŠÂőğîőmďiÐķļĤŃêţēºÝĺòt¬m÷ŏ¨¥¹¦īšÝĒĶÍökįĄđĄòĄĚş«×ŜăíĪÜÃÍoßňĭøĠ­ÝĕăĹĤĩĳĐxĘpśğľıėŀĚģ²ŌĬŝĩċÀĤđĄĄmíţ²ìÒïăłÆeóŖÃĪºõüºþÅĚœĀkāĲŞčěĎħĎåéyŢŊĳŇµßlãĮkĕßĵòÁĀ´ŔêdŠĎė·ŒòĆþ­xÄĈ¯êÌō½ğĐğ¯ŅŇĺŔñûőÐÅôŝĕŞĬĐĖņŘÝľęÄ¯ì°ÿiĻÁ¬į¹ĪðjĳĿŖ°ĸ{À¤ÌÙĴgæ £ÃÉŅŀËřńřŜĴśŗÅ·ĪlïĶþğüŝŐĦŏŋĦĶðŢĐĵĹČîÍĨzČĻŘģÊéġċúo¸÷ñ©ðwńĎāâğŚĸ¢ŏěĳoĂÕ÷ąÒŅyåÖÅdý×ÝÝŖęöĹ¸ĕzĤÑřĈ ¢ķÒŚŋŝÄďóÙ¹ŜċĪÑĒÜĖÛÃĉÑŘāÈöÜĴĥÆ¾ÜčĴĖàŏĨÏúĶċlíĘÆÚñőmÀŔĄöÍ©dþŅńn§ĺĩdŝş¼ñîńÓąÓıÒzªÏĦßŖñśĤ»°åý­ēÁĹ£ĺsÖĂå£ĺĢĪ²Ã²řıňÎnśuÄşńČ ŋïËÁŗÝíčĶìtÖĢĖį¼ĢĴe·³ò®ŐœĮ¾é|ÉãčŘĘkħÔ{ŢĎjĐĕ¤×Ġql¶ŕĊŚŗ¨ŒœÝņĕČ~āf|sŘşÕĘÆèĕķĀĈ»°ī«ş¤ĳŒºđnōmøšĳ¼ĭęfī³áåĩñĄĹďĐðÀıöiņ óÑāæ¿ĝĻĢðùĊõîőŉċëuüļšçý¢ŎØłhĸï®ŢûÑıĊüúĖûĽ§ĥģ£måĭ¿őÅĦŎčùäĤķĶæ±Ûįċİĵê~ÞţszĐŕľĦç¾ņĜèê ÇöÊÂķţuiûÕţíįâ¶Ò¿õĿåôfûÙŔŀÿĒŐĬŞ¸ćßģãéķàjİĜņ¾àĿŞó¬ĺŕĮãıÀÎ²ą¸ØÝĸÒĄģķwķ­ĆeĖ¬ò÷ħ¤ŀüďġšāğsŌôŀfĀĝĨ¦nĖĵªÙÂøĄĔŎÌoċ¢àÜř¾ŐüŅŗÖĊÌēýõµŝīŚ´ŘĀÑěòeù¹ŎĻāŊĠpČĳõĺĐ{ŜlķäšēĿ£ûĪĴĚrĭÖåæw·ÆĩŜ¥ýÍüh¬ç¬ðĞòÂŎ­ÝÖĕĸşģĆ©ŉĂÂŏÊŘ»óĕÂĊăsĪōĝŊÎrĊţĴèÂĮÃĿĂÊičđkêĔ²ţÃĘĴ²òģĸş¶}Ç°¶ëºİġÁ©gĥ·«¼ĻŎw|ÿéļ||Ēć¡ěoŊëŃŀÏyËēr»{äåĚľn»ł}üíąĬĥÍŎœóĩıĆù¬ñæ§ĞģřĞøÒóćś¤q¤ėĲÈėņæ¢ŏ¤æïŠŀň|øĊĿŀâàŠŎŕäÏō{zÑáðŇ÷ĀįğÈģė´éģoòĀõÂŇŋ£őŚm ĿĝğĉŜÌąŜÇĹ×{w|èÆŘ×vķ|ŏçĉmÏēĜŐŐğłpÁxĩśnìŉėľŌņ¡ĠĂsðõwkĺçí°ŘčhÔùĺĮąŝĝþ·Ěĕët§úÓŠ®vŅņÈŘÞŊÐªĮâŃèČŢfŕexîÌęĖë¯zĨàÇÙŠĸŝŘüÓóč©áÓĆĚļęsÅuñōď ēŕþøáĲīwđĪĈ×ñŔìÄïÌûĻãđéĂþúsÞ©ìĀ×¼ĻĒêiĆàí»ġĩęŠāçököœÀ©y¹šřğÿþòt¯ŕêËÊ~ÔìÈð×ŕÚ¿ĭń¬ĩĜĆĒoāý³ĔĒĺÂĳĈîĭ×šòËĪµŕÌ¥øŘĆÛţć±ïĔōûŊ¦şĊðőù¾ĞûŚľņ£²èĀĦ¡ŒřŉĔäjŘĜÌĥsą¥ºÐľļ¤ÁµšăŚÉĵû¼ég~ÆŔŞêŏÅæÉ{Ù×u¸ŊeĶeęŎķőÑôôşŁŇŊéĆĘËœëĩÀţň¬ÆŎįîgħmĞÃėj¦ðćpĻœ»­ĦĐøkąÂċĶ·ğĳęþľŠÆå ĹúÀÊĎÍnöĺ¦ĤnďdeîĂægěîrđĂÆ~Ĩtå®ĲĕŞĴĥêºĖ½wŅ¶Ø®æàřÐĺuĬĤ®ĥň³śķŚæüĖ±ÏàŒôĤŔħġfñĬġħĚÎáíĘĥŒĘĥĕ²ĴĘŀfµiÓìÒÍdŢŜĦéiåêōĿĝŊĜ¯čģ¾Šî´đľÇċĥÒôĪăŀğăÌÿ°ĥĻŀėë½¾Ħķ|sÎŝĨĦ«ºıw®íķÙÔìqÔŖµ°Æģ~Ě¡ïśqīĸdòÛŕãĵţĘ§ĜĖ«ġ»ßÒ¢ŎĶŠkĒÝĪĆŕºĴëĀđ·Đ©ĠoĐĴ¶ÄÙċģČėù³ØÎŌßĸl±¼ĜėŎŀóí¯mĺĪĥÜĢŔuāyåįĆ¾ăŘėêďĔķiĭő¢õŔîæÿŠúØ¤ôĴ§wĥ©Ţ¶ĕĳáoč ÔäĖĐÔnrħâfév¼ĀÄâĪĤőċäĉ¿ēď¼ļĶhÍÁø¨ÝĨÑŘéùģzįňĎ¤Ň¯iĞŠİÅº ŝğœ©yîĂÒąŏ¸ç¥Çĳtīı¥tĂŏĥĬČ~ÍĴêĬðŋĕāêiēÛıŘĎŃĭĐÈĞĚķÑùĜĤÇĢßĴÔĶğŢĿř¡öıśĮÀÖġ|ėħn´º¨ÍĦ³ĜŁúþxÌĀ¸¦łĭ¢±ĹdñŀĩŚ¥ħ¬ŠxĨĉîíÃ èÊıÓĵĢ¡řkœŃÔĚövĝ´ģĚŎÊĈěëć|đyÒ³èäĝÐ{¸şÁīšøŇÆĝÿőģìµïšĈņęięğÀĒlŒØÎŉŊÒÜĮ¯½æĢÍkĔšÉéĒ³ĊċjòøkwÿóðōĄĆ÷~«ĺµhģŅĈêÌĖėŕĢĹązæômüðğŘf¬ĐŎçŌšĲďĘāĉ}õýęùóÍËğìøîÑêÛ±ğčóĆxýi¨ŊřħĔÛĨĎĿĊ£ĜśĤð«ãÐĘĴİËįlĮoĘĸĸðŌâÖēëÉņĺÀj¨ĘľńĸĔĐýº²ŉŚ¾ąfŊŜèģnºČŅēņăĜŠ§ĹĪ×ļìōeñº­ýÑÞőğĚ{Ħ©īħĔĠtĖ÷œĝįÈ¬üęČÙjōêàÀÊøŋæ÷îrĮxoiĜįõÒöÙ¬îrrĠňŖ©lĽ¹ìĵ¡āĿ®{swŠŒČÃŢĽÓŌŐçl¶ÿ¾ÀĻdÅčŎĚéŜoĳħqÏj·ĵÉuqðŕçĎŚçş­ìÎ¬ŀĒŘŖĲÖýò¬áŜąĮÌĚŊ£řĄãĽ£¦§ğÑĶĢ¢ČçàdãÒøÛÉĨĩè¢ĂŔċþØÏŗğŎĻķñd­ŀĺ|Ęċàäü¦¦Đé¶ľóÉØïŅòŒºĮýŁvĢĜčđ±¸áŐØĥªğpüÁ÷ďÞśĎÍÔêÁĖxöÐëoĝõĸĈĈĚÈŎŁþìţñĸņńĺïēĘº~ġËªĢēçħª×ĻgçĈ¶ĈÜóæàoöŔďŗķØĭģĕšĨjûÔïŞyt ĥĦ³ĪĮıØĽå~­šðjśÂõŖĲ¡ā×ĵïĄÁî}ėČěp¾Ąöŏ¡Îō~ÍćpŚýüÍóÙă·­ĺûĠŔŃĨĆªđÑèōĨÌįŏ¹ªŘóĭ´zýŐò½ßäĊØ­ëšxèŚľĀî{ĤŘÈfj¡Ã÷ëŏ¥ĵµĴŖÇĩĺÎĿéŏíĜŝŌýÌ¼ŜÎĺŏ¹Ńţç|mÉ¡ŐÀıĈŕæŔÕė¿¬ęĨÂĳåĠĞÇxÂ~è´ôdČ¸ďĹÆÓùĤÀķöŉqřĐĝòķyúā­ÁãĽÿÌ}ŉpđÀčéĤÏőüĽrŕņĨŀ|ĎĚv£Ñl©üôĆÕŀōĳnð¾âńíyćĆėĈ{çÎØģñ¼ĪŘjüĚmĕøŖ÷ºoŢÁ·şÜÔ´ÏŊŗ{ĴčŘÂŉõĉł¸ĤĘ¦æâĂçĭ¨şðŎ¸İġċÙûøĀêœfĘįļé­§ŏģh¾ŏŁ}įę¿ÑĚïİåû|æĄėÆÛĪµ®Ð·ĭŊýÂĚzÿpueļq}Çg¡Äîĭŉ©ĵĴhŠ¹ÒĴĭÒtÊļtĿĄń±őĔĶíäĥëĊ}ćpÃèñ¾|ğİä±¯iôÍá¤ùhùà¶ºōŚÍċŗţÌtÄŌmxĲĿóíŜåĿoäİŃ·»ĖØØĜęµïÒĄļÃİĸäü×ÿôîŐñĔpĈāpĬõ¥°ţ§ŝŃħéĜĮ¤Į¨lŞÐ}ĦĜ÷ĀğĨ»ÌóâwèðûġÿŞıŀ­ÞŘĊĢĚÊķĥģêyŞŇ±Ò|¡ĹĊèŚĂxĸĤyĐyµōňà¥§ìřçĀÛÏĬ½¸tě¶ŜĜÊôĬ×ëtêÚjĐèŋ}xŀÇđsĕlŏõăĴkðįĦĶºÅ×òĲxÊĖōİÝĖòê Ŕ¿ø¶ğđ²ġÑĩùİòõąù½ÀĩĠń¯ÕţrľëÚÉ²ÐúţŝØĽúö¸Ţ¢©ăńøĹĈŌŊĺöåţİÃĈezĶłÄņ³ÑÍėĭuä¾×m¼įÿţuf´pĝĶ«¡şñÚĥÓÞÖř÷ŊĤ¿n°¥ŐãæeņĎŒkl÷ï×uōĸīĴ¸o·¸oÆōø©¬m­ń²þù§ĎÞ¥¤z~ŃðçËĹĐēŁŜĀð«rĹÃÃäđÅĻèôģńçĻŗĉzĴzĵôĺĸĂďĻgđ°¯Û¿Ħxwò½ĈţÅÿfĚÍ©ĞęÐ§Ń±ŌÇĶŋđ§¾ÿ§ī£Ñą¼£ĎĂäŎ¡ÅÆÿ¶e©°ŖëåļÝĎĶćĕïÖÚ»ň©ÙĐÐŜĘó×oĲĢ{oćĪá ñĊĈÇäÌşăÉüdsŋÆāgœÄ Ŀ­ÝÊl|ÇêřÔĥeŘŢÕĀÕüŢ÷řńģá¬ēãŏěÜÏúĺ÷Ôěş±¢ņþėò¢ċŃřûœ§ÞÒţĹŋĻx£ħğł÷s¢eþĺňäð°ĥýÈĔñōşĮĺĽłĹĬÚø«ĺvęėéªnĒĵíþŒĢöiĭŞ~đ°Ļ÷ÇrĔĕĳªķŔìŢģõÔÂŝÖ¢İÄjÊĢăØĶŠġĐāň}äĜÇÞxŢş÷œ«ëÉĲîĠŇŇý§áĈŘđļàjßĄāčŌØŖľ´ģļâđÇnĬıģŢōÖĒčõĈŠyđ°}ĘýÛĠ¡oţŚËĭ©ñ¤Ş°ľ')-100;\r\ny='abcdefghijklmnopqrstuvwxyz !@#$%^\u0026*()_+ 0123456789 ABCDEFGHIJKLMNOPQRSTUVWXYZ';\r\ny=repmat(y,1,100);\r\nrng(2718);\r\ny=y(randperm(length(y)));\r\nassert(isequal(deCipher(x,16067),y));\r\n%%\r\nx=double('ŀŝřřŝŠšŁţšőšĖþ¸xĤŒÇãŖ±äÿĨÚİĲŐÉÝz¦vgyüňłŃĳŐÑîkv¾äŅß¶Ħuðjĺ½igÄÀŞŜřÞÁ£ŋùdfä©kŇðoę ¸ÓĤ«ċjâ¯ċpg·Đ¦Õŀ}qĻĻg«lÉĉŞÒġÔÆķ¯»èÁĜŀ¿ĻęÎ{möġæĽ½ÐĤ°ÉÈĔØœđÀġhāĠřuËċĜÊĂÕĨęâş×ř¼­É¯µĦĎ¦øÓĨăøÌ|¿×ÎÔåá×´ÒœİfýkĬµĳş©×Ţç|īdºĩ¤ıŖÇýqÊèívĜŔĳ¼ĎĂŝÐřšļnzČmŊãÂĺŅŒûįçıċkõĨ÷ĆÒ×ŁĦdċĮàÿĈĹňÙŐĲÒĊíúĭðāôČµ')-100;\r\ny='Men go abroad to wonder at the heights of mountains, at the huge waves of the sea, at the long courses of the rivers, at the vast compass of the ocean, at the circular motions of the stars, and they pass by themselves without wondering.';\r\nassert(isequal(deCipher(x,16067),y));\r\n%%\r\nx=double('īņŒŒņ³ÓdÓÅâjīĭÃÚŔŘśÏĻ|f}Ŏu´ÇŕōæĵòöĬĝoÑ®²vÝř»ěíĳĥvÍŌæó¼ò¶ĬqipÄwŜšğ¥Ôŗ÷ovĀ{·Ň÷²ŅÎéªwŗ²Øqśxr®ď¹ĩiuóöe«ÖwÇńēÌĠ£ÝÆıÂeúrśļĪė«lüĎįā|Ðì½ÝŜáĄď¾Œ«åąŎyÄ¿ĐŢæàåŚÇŠÅŝÂ¡n½iñĔnêĿāó µ° ÔÅ÷ËfÄŋüwùÝ£ħ¹ľęņĻ¤óuħòŉÞðÃîí¿ĜŜĀlğĿţ½ĚœĦ¯iĒµĒÕ¦ĿğţŃľöìśzûĽľėã¢İĨuÐĈêÏłĘĀŋÙņħÓŗò´­ùħòĳñœowĽāÜĥĐÏā½ĸĈđ®Ńšô{řăğğôĶŇñeípģĭą«°')-100;\r\ny='No man can be judged a criminal until he is found guilty; nor can society take from him the public protection until it has been proved that he has violated the conditions on which it was granted. What right, then, but that of power, can authorize the punishment of a citizen so long as there remains any doubt of his guilt?';\r\nassert(isequal(deCipher(x,16067),y));\r\n%%\r\nx=double('ÆõĘĜĜĘĕĔôĖĔĄĔţĻ}½ñćÄģdıĺíåçą¿sÃ²¼àĹč÷öæąīÒ®Ã{ıĐºŜ»Ħ­Ń·ijá¥ğţĝÅ¥ÞŇĺ²kï¼·Ŏā½ŅuÍĺy¾uĊjÊ¬ċrn¶ċ¼Ľ|uôĻuÀtÆĒġčÕÆĻ©eö~ĉŃsĩČÇ¿gĻčłúºø´ÌŗØœĔÂŝ«ëąŘ¸ÄºčĎÊāàåŕÇĖÏţÂØz³iúĚ³ĵŀÿīÏ´µãÓìÓ×´Òŝí|ørĨªòń~á')-100;\r\ny='When one door closes, another opens; but we often look so long and so regretfully upon the closed door that we do not see the one which has opened for us.';\r\nassert(isequal(deCipher(x,16067),y));\r\n%%\r\nx=double('Ŋy  xß·āŁmňĎĚè­¶qģikĐĔŃïĿĮŀŜµ{zjĈ§ŎĲĿ÷­ĖĶÿoÌÔĺÕĽ»µ¦ÅwŘŕĠÄÁÎŇľkyĩ§³ŋļ²Ą¡ ¸Ôİ¾v·Ĉ³Ö©ċvg¯ċzÄĴ|rûö¦¸ØÀÏĖęÏŌØı¨ªÔçyĚĲ¿ĻęÎ²¾÷ėĤł°ðµÊÈĔÏœĒÂōsêčĊdßğģ£çÛĪęÜŞÈňnqn¦ñČ³çŃÿíÌ|¯ØÌÙðÎzÒşòùÛàéxŝšp¡Îŗİ}óf}êuÁĽōð{kįóxĚŞô¼£ćĴĎeĔŚŀrkēiĄÐ¹ĻĉřöòòæśyûĩĩčÅíŀd¢ņĮÉôĔĿ')-100;\r\ny='What is ominous is the ease with which some people go from saying that they don''t like something to saying that the government should forbid it. When you go down that road, don''t expect freedom to survive very long.';\r\nassert(isequal(deCipher(x,16067),y));\r\n%%\r\nx=[{'īĎė¨ŒŇ³īĎė¨ŒŇ³īĎė¨ŒŇ³īĎė¨ŒŇ³īĎė¨ŒŇ³īĎė¨ŒŇ³īĎė¨ŒŇ³īĎė¨Ğ'} ...\r\n    {'pţÅÜw'}    {'âñwnš»¾Śâñwnš»¾Śâñwnš»¾Śâñwnš»¾Śâñwnš»¾Śâñwnš»¾Śâñwnš»¾ŚâñwnšĜ'}...\r\n    {'ŁĔčÂŘŝ¹ŁĔčÂŘŝ¹ŁĔčÂŘŝ¹ŁĔņ'}    {' ĳµ¬ģy|Ę ĳµ¬ģy|Ę ĳµ¬ģy|Ę ĳµ¬ģy|Ę ĳµ¬ģy|Ę ĳµ¬ģy|Ę ĳµ¬ģy|Ę ĳµ¬ģyė'} ...\r\n    {'ĆµĳĺïêĆµĳĺïêĆµĳń'}    {'ĺ¬µĊpeđĺ¬µĊpeđĺ¬µĊpeđĺ¬µĊpeđĺ¬µĊpeđĺ¬µĊpeđĺ¬µz'}  ...\r\n    {'âñwnš»¾Śâñwnš»¾Śâñwnš»¾Śâñwnš»¾Śâñwnš»¾Śâñś'}    {'²ġœ'}    {'oŜÊãìçoŜÊãìçoŜÊãìçoŜÊãìçoŜÊãìçoŜÊãìçoŜÊãìĕ'} ...\r\n    {'üÏřŐ~'}  {'Øë}dśÁ´ŠĂ'}    {'ÿÌŚœ|ĖģwÿÌŚœ|ĖģwÿÌŚœ|Ě'}    {'îÝŋŢmćĒfîÝŋŢmćĒfĀ'}   ...\r\n    {'Ĉ»ĭĴñäĈ»ĭĴñäĈ»ĭĴñäĈ»ĭĴñäĈ»ĭĴñäĈ»ĭĴñäy'}    {'ĿĚē¼Ŗţ·ĿĚē¼Ŗţn'} ...\r\n    {'Øë}dśÁ´ŠØë}dśÁ´ŠØë}dśÁ´ŠØë}dśÁ´ŠØë}dśÁ´ŠØë}dśÁ´ŠØë}ś'}    {'ßìzsŜ¶ÃŗßìzsŜ¶ÃŗßìzsŜ¶ÃŗßìzsŜ¶ÃŗßìzŘ'} ...\r\n    {'ªęĩÓÆĲªęĩÓÆĲªęĩÓÆĲªęĩÓÆĲªęĩÓÆĲªÖ'}    {'ņuóúÅē'}    {'ÝîxqŞ´ÁŕÝîxqŞ´ÁŕÝîxqŞ´ÁŕÝîxqŞ´ÁŕÝîxŗ'} ...\r\n    {'dŗÑØçìdŗÑØçìdŗÑØçìdŗÑØçìdŗÑØçìdŗÑØçìdŗÑØçìdŗÑØçp'}    {'vŅãÊõþvŅãÊõþvŅãÊõþvŅãÊõþvŅãÊõþvŅãÊõþvŅãÊõþvŅãÊj'}  ...\r\n    {'xŋÝÄû¡ĀxŋÝÄû¡ĀxŋÝÄû¡ĀxŋÝÄû¡ĀxŋÝÄû¡ĀxŋÝÄû¡ĀxŋÝŢ'}    {'ñâńŝrĈčiñâńŝrĈē'}    {'ńwñøÇĭĨÌńwñøÇĭĨÌńwñøÇĭĨÌńwñøÇĭĨÌńwñøÇĭĨÌńwñøÇĭĨÌńwñøÇĭĨÌńwñøÇĭĐ'}];\r\ny='ABCDEFGHIJKLMNOPQRSTUVWXYZ';\r\nfor k=1:26\r\n  assert(isequal(deCipher(double(x{k})-100,19),y(k)));\r\nend\r\n%%\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":0,"created_by":145982,"edited_by":145982,"edited_at":"2025-10-23T11:07:00.000Z","deleted_by":null,"deleted_at":null,"solvers_count":3,"test_suite_updated_at":"2025-10-23T01:21:29.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2025-10-22T22:43:16.000Z","updated_at":"2026-03-03T13:59:30.000Z","published_at":"2025-10-23T01:21:29.000Z","restored_at":null,"restored_by":null,"spam":null,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eProvided a message with all characters \u0026lt;= 255 (ascii) as an input, decode the padded message (removing the random character pad), XORing input converted to binary vector (8 bits each) with the inputted prime having primitive root of two as the key. The key is the repeated sequence of 2^x modulo prime key input starting from x=0 until the cycle repeats (unpadded zero binary represented vector of the repeated sequence). After XORing, remove the padded front and return the character array as output.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"}],"problem_search":{"errors":[],"problems":[{"id":59464,"title":"Minimum, Maximum, and Number of Primitive Roots Modulo (m)","description":"This is a continuation of problem 59212, find the number of primitive roots modulo (m) and output the minimum and maximum of those roots if any (or otherwise nan).","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.44px; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none solid rgb(0, 0, 0); white-space: normal; \"\u003e\u003cdiv style=\"block-size: 42px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 407px 21px; transform-origin: 407px 21px; vertical-align: baseline; \"\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eThis is a continuation of problem 59212, find the number of primitive roots modulo (m) and output the minimum and maximum of those roots if any (or otherwise nan).\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function [minR,maxR,numR] = primRootmodm(m)\r\n  minR=3;\r\n  maxR=14;\r\n  numR=8;\r\nend","test_suite":"%%\r\n[minR,maxR,numR]=arrayfun(@primRootmodm,3:20);\r\nassert(isequal(find(isnan(minR)),[6,10,13,14,18]))\r\nassert(isequal(max(maxR),15))\r\nassert(isequal(sum(numR),37))\r\n%%\r\nrng(3141);\r\nr=randi(1e7,1,100);\r\n[minR,maxR,numR]=arrayfun(@primRootmodm,r);\r\nassert(isequal([round(mean(minR,'omitnan')),max(minR),min(minR),round(std(minR,'omitnan'))],[10,33,2,10]))\r\nassert(isequal([nnz(isnan(maxR)),round(mean(minR,'omitnan')),round(std(minR,'omitnan'))],[88,10,10]))\r\nassert(isequal(max(numR),3214080))\r\n%%\r\nrng(2718);\r\n[minR,maxR,numR]=arrayfun(@primRootmodm,randi(8e7,1,20));\r\nassert(isequal(max(numR),31309824))\r\nassert(isequal(max(maxR),67135107))\r\nassert(isequal(min(minR),2))\r\n\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":0,"created_by":145982,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":1,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":1,"created_at":"2023-12-08T21:15:50.000Z","updated_at":"2023-12-08T21:15:50.000Z","published_at":"2023-12-08T21:15:50.000Z","restored_at":null,"restored_by":null,"spam":null,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThis is a continuation of problem 59212, find the number of primitive roots modulo (m) and output the minimum and maximum of those roots if any (or otherwise nan).\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"},{"id":51188,"title":"Number of Primitive Roots and Cyclic","description":null,"description_html":"\u003cdiv style = \"text-align: start; line-height: 20.44px; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none solid rgb(0, 0, 0); white-space: normal; \"\u003e\u003cdiv style=\"block-size: 63px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 407px 31.5px; transform-origin: 407px 31.5px; vertical-align: baseline; \"\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 31.5px; text-align: left; transform-origin: 384px 31.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eDetermine the number of primitive roots of for each input number in an array or matrix (m) and whether each number will form a cyclic group. Output should be a corresponding array or matrix of the number of primitive roots and another logical array or matrix.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function [num,cyclic] = numPrimitivePrimes(m)\r\n  num=m;\r\n  cyclic=zeros(size(m));\r\nend","test_suite":"%%\r\nm=[824149356327936,619505816445824,902925119282940,6781941268060,737940751495520,781679826661116\r\n   218232263733975,103814782651106,312512845986667,495871665666786,310719817391570,111533124684944\r\n   99642302961614,799061803589637,281589166159224,988482243012287,600407500351151,579329289388906];\r\nnum=[83230601379840,48499811942400,50584603410432,530841600000,87793796136960,58174134681600\r\n     30887903232000,13408979189760,62817473839104,35258302464000,36539825946624,18587454842880\r\n     11324072693760,122711350422528,15430396133376,312152287267008,225445593006080,50190719385600];\r\ncyclic=logical([0   0   0   0   0   0\r\n                0   0   0   0   0   0\r\n                0   0   0   0   1   0]);\r\n[p,c]=numPrimitivePrimes(m);\r\nassert(isequal(p,num))\r\nassert(isequal(c,cyclic))\r\n%%\r\nm=[859709       51839      346013      350111\r\n   667691      378997      488603      636319\r\n   213289      208099       75353      739799\r\n   311323      458921      901013      146917\r\n   516883      790793      179533      487979];\r\nnum=[427280       25918      165440      138528\r\n     255376      126328      244300      192192\r\n     71088       63000       37672      366336\r\n     91520      142080      386064       37440\r\n     171120      395392       59832      243988];\r\ncyclic=logical([1   1   1   1\r\n                1   1   1   1\r\n                1   1   1   1\r\n                1   1   1   1\r\n                1   1   1   1]);\r\n[p,c]=numPrimitivePrimes(m);\r\nassert(isequal(p,num))\r\nassert(isequal(c,cyclic))\r\n%%\r\nm=     [9954        7444        1947        4439        4185        1045        9381        6876        8115        6709\r\n        7077        4168        4175        9959        9978        6523        6054        2269        4481        9829\r\n         806        9074        2930        4366        9111        9918        6390        9791        8307        9369\r\n         434         944        7022        3045        5505        6781        7027        9757        1267        5763\r\n        4912        1814        2398        2466        5964        4285        8610        2896        5133         802\r\n        4466        9466        9595        9609         792        6549        3797        3385        7160        4139\r\n        4868        1009        3055        2229        5767        5888        7122        9965        2482        1809\r\n        1659        3881        1550        3957        8982        7451        5236        7890        5320        9957\r\n        3607        2893        5556        2246        4634        6409        3635        7950        3823        5204\r\n        8808         731        7906        2701        3984        5037        4347        6324        8018        8853];\r\nnum=   [864         960         448        1280         576         192        2688         576        1152        2016\r\n        1152         768        1312        2880        1104        2304         576         648        1536        2592\r\n          96        1344         576         672        1760         864         384        3520        1152        2064\r\n          48         224         864         384         960        1792        2340        3536         288        1536\r\n         768         300         288         256         384        1696         512         384        1344         160\r\n         384        1872        1920        3200          64        1344        1728        1248        1408        2068\r\n        1152         288         704         624        1728        1280        1184        2624         384         360\r\n         288        1536         160        1316         984        2960         512        1040         576        1872\r\n        1200        1040         480         320         480        1536         880         768        1008         960\r\n         960         192        1120         864         640         960         720         512         864        1792];\r\ncyclic=logical([0   0   0   0   0   0   0   0   0   1\r\n                0   0   0   0   0   0   0   1   1   1\r\n                0   0   0   0   0   0   0   1   0   0\r\n                0   0   1   0   0   1   1   0   0   0\r\n                0   1   0   0   0   0   0   0   0   1\r\n                0   1   0   0   0   0   1   0   0   1\r\n                0   1   0   0   0   0   0   0   0   0\r\n                0   1   0   0   0   1   0   0   0   0\r\n                1   0   0   1   0   0   0   0   1   0\r\n                0   0   0   0   0   0   0   0   0   0]);\r\n[p,c]=numPrimitivePrimes(m);\r\nassert(isequal(p,num))\r\nassert(isequal(c,cyclic))\r\n%%\r\nm=[2     4     5     6     7     8     9    10    11    12    13    14    15    16    17    18    19    20];\r\nnum=[1     1     2     1     2     2     2     2     4     2     4     2     4     4     8     2     6     4];\r\ncyclic=logical([1   1   1   1   1   0   1   1   1   0   1   1   0   0   1   1   1   0]);\r\n[p,c]=numPrimitivePrimes(m);\r\nassert(isequal(p,num))\r\nassert(isequal(c,cyclic))\r\n%%\r\nm=[47       14771       72211       82609       55229       49549        4957       79613       16249       16547\r\n       61043       59957       56611       23431       67219       66587       29851       74821        2503       22133\r\n       15607       89413       35447       74287       71191       47543       66898       79987       83003       18973\r\n       17989        7019       70583       28607       44549        9293         601       95339       55967       24611\r\n       13421       21991       72503       59621       15647        9661       15131        7733       32467       96128\r\n       52363       23339       11549       67261       74219        9173       81233       88363       60169       67589\r\n        1103       34877       44699       40093       61420       45281       90679       64657       92927       89891\r\n       48487       41351       23958       23609       36871       40169       63611       27239       67759       38723\r\n        3491        9803       59611       21124       67601       67021       53453        4549       42209       15137\r\n       45083       41149       60521       45737       97549       19470       41961       89107       56531       79259];\r\nnum=[ 22        5040       18368       27520       27612       16512        1392       36720        5408        8272\r\n       29172       27648       13824        5600       21056       30576        7920       18816         828       10040\r\n        4896       29800       17208       24756       16128       21600        7680       26660       40572        5760\r\n        5992        3080       35290       14302       18144        4400         160       46944       27982        9328\r\n        4800        5856       36250       21600        7822        2112        5632        1728        9264       12800\r\n       17448        9996        5772       16704       36204        4584       40608       16896       19008       33120\r\n         504       17436       22348       12288        7680       18048       24192       15360       45888       35200\r\n       16160       16520        1760       10848        9824       20080       25440       13618       21560       18324\r\n        1392        4368       15888        2560       24960       17856       21648        1512       21088        6720\r\n       22540       13608       22528       22864       29520        1792        9408       29700       22608       37884];\r\ncyclic=logical([1   1   1   1   1   1   1   1   1   1\r\n                1   1   1   1   1   1   1   1   1   1\r\n                1   1   1   1   1   1   0   1   1   1\r\n                1   1   1   1   1   1   1   1   1   1\r\n                1   1   1   1   1   1   1   0   1   0\r\n                1   1   1   1   1   1   1   0   1   1\r\n                1   1   1   1   0   1   1   0   1   1\r\n                1   1   0   1   1   1   1   1   1   1\r\n                1   1   1   0   1   1   1   1   1   1\r\n                1   1   1   1   1   0   0   1   1   1]);\r\n[p,c]=numPrimitivePrimes(m);\r\nassert(isequal(p,num))\r\nassert(isequal(c,cyclic))\r\n","published":true,"deleted":false,"likes_count":1,"comments_count":0,"created_by":145982,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":2,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":1,"created_at":"2021-03-24T20:07:09.000Z","updated_at":"2021-03-24T20:59:07.000Z","published_at":"2021-03-24T20:59:07.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eDetermine the number of primitive roots of for each input number in an array or matrix (m) and whether each number will form a cyclic group. Output should be a corresponding array or matrix of the number of primitive roots and another logical array or matrix.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"},{"id":61046,"title":"Decipher Message Using Prime of Primitive Root of Two Sequence Key","description":"Provided a message with all characters \u003c= 255 (ascii) as an input, decode the padded message (removing the random character pad), XORing input converted to binary vector (8 bits each) with the inputted prime having primitive root of two as the key. The key is the repeated sequence of 2^x modulo prime key input starting from x=0 until the cycle repeats (unpadded zero binary represented vector of the repeated sequence). After XORing, remove the padded front and return the character array as output.","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.44px; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none; white-space: normal; \"\u003e\u003cdiv style=\"block-size: 105px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 408px 52.5px; transform-origin: 408px 52.5px; vertical-align: baseline; \"\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 385px 52.5px; text-align: left; transform-origin: 385px 52.5px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eProvided a message with all characters \u0026lt;= 255 (ascii) as an input, decode the padded message (removing the random character pad), XORing input converted to binary vector (8 bits each) with the inputted prime having primitive root of two as the key. The key is the repeated sequence of 2^x modulo prime key input starting from x=0 until the cycle repeats (unpadded zero binary represented vector of the repeated sequence). After XORing, remove the padded front and return the character array as output.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function d = deCipher(x,key)\r\n  d=xor(x,key);\r\nend\r\n","test_suite":"%%\r\nx=[39   212    74    83   164    14     3   175    39   212    74    83   164    14     3   175    39   212    74    83   164   14     3   175    39   212    74    83   164    14     3   175    39   212    74    83   164    14     3   175    39   212   74    83   164    14     3   175    39   212    74    83   164    14     3   175    39   212    74    83   164    14     3   19   242    77   208   208    52   219   130    53   242    82   200   207    60   218];\r\nassert(isequal(deCipher(x,19),'I love to swim!'));\r\n%%\r\nx=double('şlŒœŚøùĂ¨©ădurŢŠª«Ădõ³f ÈĳĨĻis´Ŕ~êĪŢŞjhĻľŒĒďċĈÓ»ŃÃÜĮîĜŐËīōï´ÖŜąđotŚļĶ¦ĺą®ŝšŊňÇ´ļōďÆł¶ÕľŐĔşºśŔdkĢŠŏĽá³ÐqfÊ¯ĬŕĔăĢċĠŋÆÄĮÅĈėĠĠ')-100;\r\nassert(isequal(deCipher(x,797),'abcdefghijklmnopqrstuvwxyz !@#$%^\u0026*()_+ 0123456789 ABCDEFGHIJKLMNOPQRSTUVWXYZ'));\r\n%%\r\nx=double('¼ďòææòïîÐÄ¥Æ°ðçØúĮĞ²ŢÄŝÍËÇŢōìœïèğŐ³¼fªÐÚŗ|ęģŀŌ®ĺĸŠ²£ğÎäzix¿ŀĝĀ³ÚĉĆxùÀpœįqŅ¹ÌĀ³¾jĕl¥¸Ëĕ ÈŚÕ§ĻÀªđĈË¯¦ĝŇÖĠÉ®ŖÞÇÿĒæwİğ¢¹¡þîľğÍ°ýq¶ĻÛŘ÷lŘ§sŀĊěÀÓōşāÁŖĿ¶ŊÁŋßh¨Ù·¦ČåªëĬùİ¶¦¦­Ô­ì§¼ºŋİpėz¿jŠÅŚĈeļı¡œ¡Ś~{ţŘàÿwo}êïåĲĭőĴňÈĚďĤ§¨÷xĢ¾¨ĻĂĲČëħĝğ«ĕīţø©Ôłš¶Ðgõĥ¾ĊĜĎěÕıŚġõyúuŘĥđĘåªĹåēñ¤Ĭ¹Ŗíā¼ïīĿÇÓŕĔēĞëĳŕĦđ»óįĈ¢©ÃĴĿĩuĄé¼ĽņĘwŋĤâŠŉĶòńĺĝĈŁÃč£ņs¡q¡ŞġĒ©Ăºõįjhwd¸ÆĶªŒĚ¶ĉ½òřöĥĶæŜóěïÚĸr¦ŃĩĠŘĵĥľùģĖąĦnŞìĚŔĻřĨíţùŗýķŅÁĎ£k} åėėŊùÒÕĄĀÔ}ÖÍĭŉ¿Ň ÜőpöĚŞ¯ŜēđĢ«fðåčÊãtņņĄ¾ĝdīj­ī~ÓÃ¦ĳ¼þ~ĺĠázvhg¾Ögįĵ¡ęįÚ§ĐŒŖŌÎİusjŢ¸Ĵ¶ś{hôðŢĚúĽĢģ´ëŀādÅ´ĤoŞŉtēt¶čĦŁīÛáŁĤræuöă¿ºėńöŇŇÜĵëņ×ŒřĿ}yĬâĶĀĬŉÿÔčyþŏŌĮŉtËÍěĥĪÔìhßĴéìĬ¹×šĦ¡ÈÑ¾o¯â²ÔĤń­×ŅĎĭðďtæ¿ºľÄÜÇÅşóðļÆİÕşdwĲÈÖíŜÉøĘfğĽþ¿Ė¥ĹęÃŜĈŁŇĳĉÂÍänõsıĪŢŌèŌÂµĸÛÙ·ħÄôÿšì¯ĴŅîĒßuďÉħ·ĕĴuĊxÞ·ØªoĥĐÜăĥ®ĐkoĽłĸĚÝħĽîĔĞ¿ŔĐĝÿy÷~ãş±ŕÒÀİëĻŜæ¿ÉĢĉĢtćãĈřřxï¼úļ÷ħàĦüîČąÐĽ§¢ÑľßµŖŊëäĆÐl¡ŞèīÏØŜûí½ĥĜĝ£ÚjŕÇăĠxÚŒÞ¹ÖĖÑćŘö°õmňÅĔĬłĻĨjséÀhÖłĐmĽĪ©irôvŉōĪİĉĮ kĿÚ Ąōïis©Ùdĵ{Āü¶ŔÐćtĶĈÅċĦğĆŅ¹é¯ôıÙŇĞŊŝùoÉĤÃĉãŉŐxø¶ÑÍĨ­øÓæùfĨŌÀyŖ¨đĻ°čiÂòĸáŞ ¡i°œţèÈ¬¡ňĺĆxŐ¾àÜÆÜţŏsħċďšdÄâßé§û¹èrĖ¼Į®ăĆşŁã÷ĎëĭĖiÃßĞŃêēæÕİĨļĺeď¡ĬŐđzŀy®öŠĆěĂĴ¥ğêŃ§ēŅŀ{Ğ£ý¨p}ŀŅęŜr·ŕºõąrÙČ¨ĊĄxèōĨ¡Ŀ×ě·ĒÏĄ»ĳĈÉŠÊččðřĘ~Þ|ÿŁnqšįı¡şãœğħÇņúÎĴŃÊĀĎüĐÕħıÔňĆŊ¾¥ĂÅ±ŎĆĊ»ĠâČsÒŜöŝÕ¹ĭt¥ùĪĽñí¦ÔĈĚŗ´Ķŋ¤ŎķÝňœúĂĚĝmzĴëĐĉÚĒ÷ðģĄlīĭÄőÂ¼¶ăėŅĩ´ČĹīŞ ĥŏęôŎēñèĞďľļjŇŚ´ Ö±ŃÊùàąëŕİĪŕŃªmo~ò°ŃģĊı§mmÔĈÆđðªìÔÚëôrćŎÉĦŝloģĳōŐÜĜŚÿiħĒŝpŉĖzļî{Ļtē½~ĶĄþ¶ýsġŎy­išÂ¬Ĝ£ý¼ïŢÎ}Ďō¡lőĨä÷ÜōĹİfşŉdĎĔİħtŔŖ÷ĂÑÂĝńŚ«£ĊĶĖĮĞÇśľÙņÔĥÇŇwù¹ŀŝñäÞĊæsüšġāøëĥåėý¦ùčº¶¹¯āgÅº¬Ć¼¾Ċŗ¹ĢºnĲ{Ĥđ±|ńÑŖrÇŞĢŗō«ýq½ĂĒèįčŁvfðÌĖĈýč~ŠşčĠÕĂâĝĜăęì÷É|gðĮÀ£ģŏĺä»ÈØËÅ«ô©éÞĔ±ĭĒ °ËĢĜħéĺºşĿħőńĳ¡åŀÈģĀŞŔÏśĠŎğ~r½řĵeãr³ķĞë÷ĈÐĉÃěĒĳŅ÷ÿĄăvÞÒķĻqįðŏŖŌÃŉŊ³çŗèőyßÖ®İħµd°őĞhĻwĜiŇŜŔĢĨķęÌª×ĄėĝåĦr }àÔûç½ºţäěß¢ĕÌĴÐõĎĐáţė´ĭ¤ËÌĖÀļ}ŉÉÖ©¥łĨľÄÏŘĮ©ŔÀk­ġ´ōôĽŁŌ§yĠöĜŏÃ¨eňåŘĉ}gòì¬Ř£ĽåĝŊĐºî£ðā»şă´ŕh±ŚiĶĚÚëŏ¶¢ÿþk¦ēŗķň¹ĤÂŞĠÖwđċ§}ŚjĚæàĶµú¸íĻŌºÿİĦŠâ×Ĩā´Ř©Öo®á®Ĝê»ŗı²ÒāÌīĥÖîİíqwŌŇtŀÁôÓÉŕãÒĪč£ĬÀļnmêįśţÃÜġ¾~Ĳľ{ĥì´vŐŔàĐèßŏkŊÈŞĝù×ÜŚÑÔÞhōŗŗ±xuĔ¿ßŘèãÄŕĺ´ĄÝ¶ĭ¢igŊv¹ţ«òuÛĥŚŉŎŇľĜĔĸòčşŕīŉĠçŅŉÁśŒč¾¼°§ŔmŢpçĭğkßëą|ŋåý¢{ŀĆćęÒ¨pţŒçÏėĕľÏĭĺ¾ŜæČ¡ķr·Ĺĳ­rŚśÿœïĊĎ¸ĈÿŢĕ½ĩĵl÷ì¯ěàięĆě­ºñ±ąýÈĝĚòÝŚĦ²±ÀÓĠęĢĳŝìĦĸ»ĉŝuÏ¤¸ŔĽÞÏçrà·ĸďœňĭ¼ùãÈþrąùh§wŎ¡ġĕĨđÞĠĊòýõ¨ļďµÈþ¹èĵêŖõøŏĊ¤ĩ{úÎ®Ó°ĐŋĵŐòÏĚ¶ōŚÖčĈīÔæŕĨŃ¢nËßÚeİĔ»ÇòèěæûsªĨ¶ŔēĨĖÃ¤Ģē´±ćŋį¢µĳïåÉ³­Š·ņ«Ōļ~µšíŎùō¿kĬŗßĖ¬ĠċŘďřİĜŇöģ«rmŔýëzř½ŒìŢ¹ġdõĸ»úĸĖĳāīííļĕnĤŋĶádėęłĐ£ţĜÎĂ¾ĕmŁf×îÑè{ŝúĳ´Ŝ¢šikuąéèçŔàùġĻÔñsfúòŗtåŋĦméúċeõïŅøņŖĔīōjĶy½ÏÓİkĮĦ£ŇĮ}ĆĪĳĐÞĮ}śĕĠÀŁĩÎŎlōĚŊßħĿįÅŔŗjĪªpďxøÑóļĪŔúûŔrŀq°ňÝvĵĚĘĞvşġø«§ĮķŢÿĹÑŒ£ÑŔ¡ĕxŎíºĦyœĊ»ëêĂÛÓŗąņņĠnĆ´çŗ©ļİ£ĪñŋèÎĕōšĲė~Ōª¬zãŔģĈ «šĲĝřüęăĴœşçäčėrfÉŝēţªőfàÀþmÒÅäĔÃİăĴ±ĹÃńÙðŎŃiĘ¢íßřyįÊÂţľ·ĐĈsećŅÀľġhēĂ}ČġqÙġĚēĪĤ­¹ÃşĂňñĤēţ«ŏúeÖÊÖ¹ł´êśōšìřßôŜ£şÊćŋĩÌńĎªĝĹĩıãÏħsśĀď¯ľł²£Ĉ|ĒďíöóĂø·lĥõśĥ¬Õâý¼ĝĈòā±ÓĝĨĻĥéðĦhÍĬĚëªňĞÿĄ¢~ě´ŇĹfùí¦ú÷ħjĥķģ÷Čŋĵ°ÅÀÁļĘ¬ĸÇëŊĝŢŋÕŠðÝĄxxß·Ŝ»ðāÉĮċ¨ĥĔŅśåõ|Ď¿Ö~Ďŕłª¯íiğÛŕíðÛïÿĢĽĐ×ŗå³°ĳĈlĦîùĕ®ĂśåwĨòĞ¾Ņj»ÔpÀŗîĥî·äġÝĞĿûŢ¥ċ¤ĜÉùşĚríŠŜşŏŔª÷įoÜ¨śÁıÏÙüÂÝóŊņëÌĖ³§iďÃÎČĠďeñŃoÍīÎăĜĬ´ËďÝęrĄĊŃĴÊŅ³ÑzŉĉőĔĶŚąĤĢ¯ą­ĤüċdĄl~ù§ŌĀĚqĨrØ¿ĸĴőêŎĭáËŋŜŀãāĩĐ f£éäöŐœ­úóÚÀĢÞā{ŉŋçŁŒõÿrÓōæÀlńŠŊüĎĴËÍråÌÆ·Ħŝëé¤ŗoœÜĸôtģ¼²ðŜ¶Òe¬lÊøðà¦ŒńŎīĒ{ŀļeŜōŏ|íķĢĩýÊĞ÷npŕĵĝëģè²ĐĊćęŌćĜĴèţ¾ÚĲĒ{ōļœúŏnĩàrļĎu½ŉŢÊ¿Ėő}āòŞĈºďśÅİºġĮĸĚĕjÝŁæĸú Č®ġĎĨĊÐēĐĬĘÏðôm¹¤Į±ŋâûĘ²ĈĆĜčÜÚěņ¨ËĽªm|ĹĝÒŞ³ÌŀgvĞŜĠ²čŜl×ĥ|Ňg¸~ŔúĻĿĲğŃŒïgéğÊİĸĂőĭąròŘķąÎëĚĳ¥ý³ŘŘőÖđ·œóœĀåŅÎîĊĈoàĮêæçutĻŇÔµŕqÓsÝīĞĭšŜ¯n¿ıĺìx£Ī¡łš´~Õļ®ÆěŃėķąÛp}þÀ¼kē¸ÊŀÏ»íùæĲk´ºŠpā§êjŢŁŏĶÔÜiÀłŋíáĨŃyöšćīqáÊ¶ġćģ³čĪĀóČŁŞûÓģĞęğĖţmò´Õĕ­ŢÁİ£¼­|şģślĊŇæĜĭz¢¨qŗûĔöĺĉŇšòzŌõ|œōÉŗĐą®ÛÿóĚ¼ŁŇŠĂÛêÀŘÙàļŜēĩ½ÈĴŋŇĊĆ¡ùÉļċñĩ¡yÈmĴpe÷Ï­Ş£ŔmçĨī´ĲĠf®æzīyěĒĦÓŎŀuņüìàľØÂØ~kÆ|ø×ÿĴ¿śpŋ÷±ĞıĂf¤mĞïś ĽłótnÏêĎÞĨéŌŉÏĪxĖĢĶşŔÈñœòÄďÛĹĖŢČô²ĮęµīĹáā¾ăèïĥo©ęìvïvz¾ĳĵĞořwĕĠÛĘĀpÎĭŇĥÝÜ×kþĠåĹo tŊĸsşēĻg{ĕµī¿ßĽâþÊðįÔęÏĭĕĤÚñĖČæ·³ĬõrĎħļřĀŠ|Đð¬ąíÓüĴó»ªĎ³ŗym²óŎiĮÃ©ŇŊz¢ňÝÄĎËĥĀdĐėēĻêŝōĎ¬ŌţĜÌËśĮĿ ħ£ŖuĳĺĹĉĩÐñÍĖ³®wÜo¸soŒá¤oÙĪļÈþmĳıļôŉÑ®p£ÒāĕµĜ¥ð¦ŉßąĲçÅºŠÂőğîőmďiÐķļĤŃêţēºÝĺòt¬m÷ŏ¨¥¹¦īšÝĒĶÍökįĄđĄòĄĚş«×ŜăíĪÜÃÍoßňĭøĠ­ÝĕăĹĤĩĳĐxĘpśğľıėŀĚģ²ŌĬŝĩċÀĤđĄĄmíţ²ìÒïăłÆeóŖÃĪºõüºþÅĚœĀkāĲŞčěĎħĎåéyŢŊĳŇµßlãĮkĕßĵòÁĀ´ŔêdŠĎė·ŒòĆþ­xÄĈ¯êÌō½ğĐğ¯ŅŇĺŔñûőÐÅôŝĕŞĬĐĖņŘÝľęÄ¯ì°ÿiĻÁ¬į¹ĪðjĳĿŖ°ĸ{À¤ÌÙĴgæ £ÃÉŅŀËřńřŜĴśŗÅ·ĪlïĶþğüŝŐĦŏŋĦĶðŢĐĵĹČîÍĨzČĻŘģÊéġċúo¸÷ñ©ðwńĎāâğŚĸ¢ŏěĳoĂÕ÷ąÒŅyåÖÅdý×ÝÝŖęöĹ¸ĕzĤÑřĈ ¢ķÒŚŋŝÄďóÙ¹ŜċĪÑĒÜĖÛÃĉÑŘāÈöÜĴĥÆ¾ÜčĴĖàŏĨÏúĶċlíĘÆÚñőmÀŔĄöÍ©dþŅńn§ĺĩdŝş¼ñîńÓąÓıÒzªÏĦßŖñśĤ»°åý­ēÁĹ£ĺsÖĂå£ĺĢĪ²Ã²řıňÎnśuÄşńČ ŋïËÁŗÝíčĶìtÖĢĖį¼ĢĴe·³ò®ŐœĮ¾é|ÉãčŘĘkħÔ{ŢĎjĐĕ¤×Ġql¶ŕĊŚŗ¨ŒœÝņĕČ~āf|sŘşÕĘÆèĕķĀĈ»°ī«ş¤ĳŒºđnōmøšĳ¼ĭęfī³áåĩñĄĹďĐðÀıöiņ óÑāæ¿ĝĻĢðùĊõîőŉċëuüļšçý¢ŎØłhĸï®ŢûÑıĊüúĖûĽ§ĥģ£måĭ¿őÅĦŎčùäĤķĶæ±Ûįċİĵê~ÞţszĐŕľĦç¾ņĜèê ÇöÊÂķţuiûÕţíįâ¶Ò¿õĿåôfûÙŔŀÿĒŐĬŞ¸ćßģãéķàjİĜņ¾àĿŞó¬ĺŕĮãıÀÎ²ą¸ØÝĸÒĄģķwķ­ĆeĖ¬ò÷ħ¤ŀüďġšāğsŌôŀfĀĝĨ¦nĖĵªÙÂøĄĔŎÌoċ¢àÜř¾ŐüŅŗÖĊÌēýõµŝīŚ´ŘĀÑěòeù¹ŎĻāŊĠpČĳõĺĐ{ŜlķäšēĿ£ûĪĴĚrĭÖåæw·ÆĩŜ¥ýÍüh¬ç¬ðĞòÂŎ­ÝÖĕĸşģĆ©ŉĂÂŏÊŘ»óĕÂĊăsĪōĝŊÎrĊţĴèÂĮÃĿĂÊičđkêĔ²ţÃĘĴ²òģĸş¶}Ç°¶ëºİġÁ©gĥ·«¼ĻŎw|ÿéļ||Ēć¡ěoŊëŃŀÏyËēr»{äåĚľn»ł}üíąĬĥÍŎœóĩıĆù¬ñæ§ĞģřĞøÒóćś¤q¤ėĲÈėņæ¢ŏ¤æïŠŀň|øĊĿŀâàŠŎŕäÏō{zÑáðŇ÷ĀįğÈģė´éģoòĀõÂŇŋ£őŚm ĿĝğĉŜÌąŜÇĹ×{w|èÆŘ×vķ|ŏçĉmÏēĜŐŐğłpÁxĩśnìŉėľŌņ¡ĠĂsðõwkĺçí°ŘčhÔùĺĮąŝĝþ·Ěĕët§úÓŠ®vŅņÈŘÞŊÐªĮâŃèČŢfŕexîÌęĖë¯zĨàÇÙŠĸŝŘüÓóč©áÓĆĚļęsÅuñōď ēŕþøáĲīwđĪĈ×ñŔìÄïÌûĻãđéĂþúsÞ©ìĀ×¼ĻĒêiĆàí»ġĩęŠāçököœÀ©y¹šřğÿþòt¯ŕêËÊ~ÔìÈð×ŕÚ¿ĭń¬ĩĜĆĒoāý³ĔĒĺÂĳĈîĭ×šòËĪµŕÌ¥øŘĆÛţć±ïĔōûŊ¦şĊðőù¾ĞûŚľņ£²èĀĦ¡ŒřŉĔäjŘĜÌĥsą¥ºÐľļ¤ÁµšăŚÉĵû¼ég~ÆŔŞêŏÅæÉ{Ù×u¸ŊeĶeęŎķőÑôôşŁŇŊéĆĘËœëĩÀţň¬ÆŎįîgħmĞÃėj¦ðćpĻœ»­ĦĐøkąÂċĶ·ğĳęþľŠÆå ĹúÀÊĎÍnöĺ¦ĤnďdeîĂægěîrđĂÆ~Ĩtå®ĲĕŞĴĥêºĖ½wŅ¶Ø®æàřÐĺuĬĤ®ĥň³śķŚæüĖ±ÏàŒôĤŔħġfñĬġħĚÎáíĘĥŒĘĥĕ²ĴĘŀfµiÓìÒÍdŢŜĦéiåêōĿĝŊĜ¯čģ¾Šî´đľÇċĥÒôĪăŀğăÌÿ°ĥĻŀėë½¾Ħķ|sÎŝĨĦ«ºıw®íķÙÔìqÔŖµ°Æģ~Ě¡ïśqīĸdòÛŕãĵţĘ§ĜĖ«ġ»ßÒ¢ŎĶŠkĒÝĪĆŕºĴëĀđ·Đ©ĠoĐĴ¶ÄÙċģČėù³ØÎŌßĸl±¼ĜėŎŀóí¯mĺĪĥÜĢŔuāyåįĆ¾ăŘėêďĔķiĭő¢õŔîæÿŠúØ¤ôĴ§wĥ©Ţ¶ĕĳáoč ÔäĖĐÔnrħâfév¼ĀÄâĪĤőċäĉ¿ēď¼ļĶhÍÁø¨ÝĨÑŘéùģzįňĎ¤Ň¯iĞŠİÅº ŝğœ©yîĂÒąŏ¸ç¥Çĳtīı¥tĂŏĥĬČ~ÍĴêĬðŋĕāêiēÛıŘĎŃĭĐÈĞĚķÑùĜĤÇĢßĴÔĶğŢĿř¡öıśĮÀÖġ|ėħn´º¨ÍĦ³ĜŁúþxÌĀ¸¦łĭ¢±ĹdñŀĩŚ¥ħ¬ŠxĨĉîíÃ èÊıÓĵĢ¡řkœŃÔĚövĝ´ģĚŎÊĈěëć|đyÒ³èäĝÐ{¸şÁīšøŇÆĝÿőģìµïšĈņęięğÀĒlŒØÎŉŊÒÜĮ¯½æĢÍkĔšÉéĒ³ĊċjòøkwÿóðōĄĆ÷~«ĺµhģŅĈêÌĖėŕĢĹązæômüðğŘf¬ĐŎçŌšĲďĘāĉ}õýęùóÍËğìøîÑêÛ±ğčóĆxýi¨ŊřħĔÛĨĎĿĊ£ĜśĤð«ãÐĘĴİËįlĮoĘĸĸðŌâÖēëÉņĺÀj¨ĘľńĸĔĐýº²ŉŚ¾ąfŊŜèģnºČŅēņăĜŠ§ĹĪ×ļìōeñº­ýÑÞőğĚ{Ħ©īħĔĠtĖ÷œĝįÈ¬üęČÙjōêàÀÊøŋæ÷îrĮxoiĜįõÒöÙ¬îrrĠňŖ©lĽ¹ìĵ¡āĿ®{swŠŒČÃŢĽÓŌŐçl¶ÿ¾ÀĻdÅčŎĚéŜoĳħqÏj·ĵÉuqðŕçĎŚçş­ìÎ¬ŀĒŘŖĲÖýò¬áŜąĮÌĚŊ£řĄãĽ£¦§ğÑĶĢ¢ČçàdãÒøÛÉĨĩè¢ĂŔċþØÏŗğŎĻķñd­ŀĺ|Ęċàäü¦¦Đé¶ľóÉØïŅòŒºĮýŁvĢĜčđ±¸áŐØĥªğpüÁ÷ďÞśĎÍÔêÁĖxöÐëoĝõĸĈĈĚÈŎŁþìţñĸņńĺïēĘº~ġËªĢēçħª×ĻgçĈ¶ĈÜóæàoöŔďŗķØĭģĕšĨjûÔïŞyt ĥĦ³ĪĮıØĽå~­šðjśÂõŖĲ¡ā×ĵïĄÁî}ėČěp¾Ąöŏ¡Îō~ÍćpŚýüÍóÙă·­ĺûĠŔŃĨĆªđÑèōĨÌįŏ¹ªŘóĭ´zýŐò½ßäĊØ­ëšxèŚľĀî{ĤŘÈfj¡Ã÷ëŏ¥ĵµĴŖÇĩĺÎĿéŏíĜŝŌýÌ¼ŜÎĺŏ¹Ńţç|mÉ¡ŐÀıĈŕæŔÕė¿¬ęĨÂĳåĠĞÇxÂ~è´ôdČ¸ďĹÆÓùĤÀķöŉqřĐĝòķyúā­ÁãĽÿÌ}ŉpđÀčéĤÏőüĽrŕņĨŀ|ĎĚv£Ñl©üôĆÕŀōĳnð¾âńíyćĆėĈ{çÎØģñ¼ĪŘjüĚmĕøŖ÷ºoŢÁ·şÜÔ´ÏŊŗ{ĴčŘÂŉõĉł¸ĤĘ¦æâĂçĭ¨şðŎ¸İġċÙûøĀêœfĘįļé­§ŏģh¾ŏŁ}įę¿ÑĚïİåû|æĄėÆÛĪµ®Ð·ĭŊýÂĚzÿpueļq}Çg¡Äîĭŉ©ĵĴhŠ¹ÒĴĭÒtÊļtĿĄń±őĔĶíäĥëĊ}ćpÃèñ¾|ğİä±¯iôÍá¤ùhùà¶ºōŚÍċŗţÌtÄŌmxĲĿóíŜåĿoäİŃ·»ĖØØĜęµïÒĄļÃİĸäü×ÿôîŐñĔpĈāpĬõ¥°ţ§ŝŃħéĜĮ¤Į¨lŞÐ}ĦĜ÷ĀğĨ»ÌóâwèðûġÿŞıŀ­ÞŘĊĢĚÊķĥģêyŞŇ±Ò|¡ĹĊèŚĂxĸĤyĐyµōňà¥§ìřçĀÛÏĬ½¸tě¶ŜĜÊôĬ×ëtêÚjĐèŋ}xŀÇđsĕlŏõăĴkðįĦĶºÅ×òĲxÊĖōİÝĖòê Ŕ¿ø¶ğđ²ġÑĩùİòõąù½ÀĩĠń¯ÕţrľëÚÉ²ÐúţŝØĽúö¸Ţ¢©ăńøĹĈŌŊĺöåţİÃĈezĶłÄņ³ÑÍėĭuä¾×m¼įÿţuf´pĝĶ«¡şñÚĥÓÞÖř÷ŊĤ¿n°¥ŐãæeņĎŒkl÷ï×uōĸīĴ¸o·¸oÆōø©¬m­ń²þù§ĎÞ¥¤z~ŃðçËĹĐēŁŜĀð«rĹÃÃäđÅĻèôģńçĻŗĉzĴzĵôĺĸĂďĻgđ°¯Û¿Ħxwò½ĈţÅÿfĚÍ©ĞęÐ§Ń±ŌÇĶŋđ§¾ÿ§ī£Ñą¼£ĎĂäŎ¡ÅÆÿ¶e©°ŖëåļÝĎĶćĕïÖÚ»ň©ÙĐÐŜĘó×oĲĢ{oćĪá ñĊĈÇäÌşăÉüdsŋÆāgœÄ Ŀ­ÝÊl|ÇêřÔĥeŘŢÕĀÕüŢ÷řńģá¬ēãŏěÜÏúĺ÷Ôěş±¢ņþėò¢ċŃřûœ§ÞÒţĹŋĻx£ħğł÷s¢eþĺňäð°ĥýÈĔñōşĮĺĽłĹĬÚø«ĺvęėéªnĒĵíþŒĢöiĭŞ~đ°Ļ÷ÇrĔĕĳªķŔìŢģõÔÂŝÖ¢İÄjÊĢăØĶŠġĐāň}äĜÇÞxŢş÷œ«ëÉĲîĠŇŇý§áĈŘđļàjßĄāčŌØŖľ´ģļâđÇnĬıģŢōÖĒčõĈŠyđ°}ĘýÛĠ¡oţŚËĭ©ñ¤Ş°ľ')-100;\r\ny='abcdefghijklmnopqrstuvwxyz !@#$%^\u0026*()_+ 0123456789 ABCDEFGHIJKLMNOPQRSTUVWXYZ';\r\ny=repmat(y,1,100);\r\nrng(2718);\r\ny=y(randperm(length(y)));\r\nassert(isequal(deCipher(x,16067),y));\r\n%%\r\nx=double('ŀŝřřŝŠšŁţšőšĖþ¸xĤŒÇãŖ±äÿĨÚİĲŐÉÝz¦vgyüňłŃĳŐÑîkv¾äŅß¶Ħuðjĺ½igÄÀŞŜřÞÁ£ŋùdfä©kŇðoę ¸ÓĤ«ċjâ¯ċpg·Đ¦Õŀ}qĻĻg«lÉĉŞÒġÔÆķ¯»èÁĜŀ¿ĻęÎ{möġæĽ½ÐĤ°ÉÈĔØœđÀġhāĠřuËċĜÊĂÕĨęâş×ř¼­É¯µĦĎ¦øÓĨăøÌ|¿×ÎÔåá×´ÒœİfýkĬµĳş©×Ţç|īdºĩ¤ıŖÇýqÊèívĜŔĳ¼ĎĂŝÐřšļnzČmŊãÂĺŅŒûįçıċkõĨ÷ĆÒ×ŁĦdċĮàÿĈĹňÙŐĲÒĊíúĭðāôČµ')-100;\r\ny='Men go abroad to wonder at the heights of mountains, at the huge waves of the sea, at the long courses of the rivers, at the vast compass of the ocean, at the circular motions of the stars, and they pass by themselves without wondering.';\r\nassert(isequal(deCipher(x,16067),y));\r\n%%\r\nx=double('īņŒŒņ³ÓdÓÅâjīĭÃÚŔŘśÏĻ|f}Ŏu´ÇŕōæĵòöĬĝoÑ®²vÝř»ěíĳĥvÍŌæó¼ò¶ĬqipÄwŜšğ¥Ôŗ÷ovĀ{·Ň÷²ŅÎéªwŗ²Øqśxr®ď¹ĩiuóöe«ÖwÇńēÌĠ£ÝÆıÂeúrśļĪė«lüĎįā|Ðì½ÝŜáĄď¾Œ«åąŎyÄ¿ĐŢæàåŚÇŠÅŝÂ¡n½iñĔnêĿāó µ° ÔÅ÷ËfÄŋüwùÝ£ħ¹ľęņĻ¤óuħòŉÞðÃîí¿ĜŜĀlğĿţ½ĚœĦ¯iĒµĒÕ¦ĿğţŃľöìśzûĽľėã¢İĨuÐĈêÏłĘĀŋÙņħÓŗò´­ùħòĳñœowĽāÜĥĐÏā½ĸĈđ®Ńšô{řăğğôĶŇñeípģĭą«°')-100;\r\ny='No man can be judged a criminal until he is found guilty; nor can society take from him the public protection until it has been proved that he has violated the conditions on which it was granted. What right, then, but that of power, can authorize the punishment of a citizen so long as there remains any doubt of his guilt?';\r\nassert(isequal(deCipher(x,16067),y));\r\n%%\r\nx=double('ÆõĘĜĜĘĕĔôĖĔĄĔţĻ}½ñćÄģdıĺíåçą¿sÃ²¼àĹč÷öæąīÒ®Ã{ıĐºŜ»Ħ­Ń·ijá¥ğţĝÅ¥ÞŇĺ²kï¼·Ŏā½ŅuÍĺy¾uĊjÊ¬ċrn¶ċ¼Ľ|uôĻuÀtÆĒġčÕÆĻ©eö~ĉŃsĩČÇ¿gĻčłúºø´ÌŗØœĔÂŝ«ëąŘ¸ÄºčĎÊāàåŕÇĖÏţÂØz³iúĚ³ĵŀÿīÏ´µãÓìÓ×´Òŝí|ørĨªòń~á')-100;\r\ny='When one door closes, another opens; but we often look so long and so regretfully upon the closed door that we do not see the one which has opened for us.';\r\nassert(isequal(deCipher(x,16067),y));\r\n%%\r\nx=double('Ŋy  xß·āŁmňĎĚè­¶qģikĐĔŃïĿĮŀŜµ{zjĈ§ŎĲĿ÷­ĖĶÿoÌÔĺÕĽ»µ¦ÅwŘŕĠÄÁÎŇľkyĩ§³ŋļ²Ą¡ ¸Ôİ¾v·Ĉ³Ö©ċvg¯ċzÄĴ|rûö¦¸ØÀÏĖęÏŌØı¨ªÔçyĚĲ¿ĻęÎ²¾÷ėĤł°ðµÊÈĔÏœĒÂōsêčĊdßğģ£çÛĪęÜŞÈňnqn¦ñČ³çŃÿíÌ|¯ØÌÙðÎzÒşòùÛàéxŝšp¡Îŗİ}óf}êuÁĽōð{kįóxĚŞô¼£ćĴĎeĔŚŀrkēiĄÐ¹ĻĉřöòòæśyûĩĩčÅíŀd¢ņĮÉôĔĿ')-100;\r\ny='What is ominous is the ease with which some people go from saying that they don''t like something to saying that the government should forbid it. When you go down that road, don''t expect freedom to survive very long.';\r\nassert(isequal(deCipher(x,16067),y));\r\n%%\r\nx=[{'īĎė¨ŒŇ³īĎė¨ŒŇ³īĎė¨ŒŇ³īĎė¨ŒŇ³īĎė¨ŒŇ³īĎė¨ŒŇ³īĎė¨ŒŇ³īĎė¨Ğ'} ...\r\n    {'pţÅÜw'}    {'âñwnš»¾Śâñwnš»¾Śâñwnš»¾Śâñwnš»¾Śâñwnš»¾Śâñwnš»¾Śâñwnš»¾ŚâñwnšĜ'}...\r\n    {'ŁĔčÂŘŝ¹ŁĔčÂŘŝ¹ŁĔčÂŘŝ¹ŁĔņ'}    {' ĳµ¬ģy|Ę ĳµ¬ģy|Ę ĳµ¬ģy|Ę ĳµ¬ģy|Ę ĳµ¬ģy|Ę ĳµ¬ģy|Ę ĳµ¬ģy|Ę ĳµ¬ģyė'} ...\r\n    {'ĆµĳĺïêĆµĳĺïêĆµĳń'}    {'ĺ¬µĊpeđĺ¬µĊpeđĺ¬µĊpeđĺ¬µĊpeđĺ¬µĊpeđĺ¬µĊpeđĺ¬µz'}  ...\r\n    {'âñwnš»¾Śâñwnš»¾Śâñwnš»¾Śâñwnš»¾Śâñwnš»¾Śâñś'}    {'²ġœ'}    {'oŜÊãìçoŜÊãìçoŜÊãìçoŜÊãìçoŜÊãìçoŜÊãìçoŜÊãìĕ'} ...\r\n    {'üÏřŐ~'}  {'Øë}dśÁ´ŠĂ'}    {'ÿÌŚœ|ĖģwÿÌŚœ|ĖģwÿÌŚœ|Ě'}    {'îÝŋŢmćĒfîÝŋŢmćĒfĀ'}   ...\r\n    {'Ĉ»ĭĴñäĈ»ĭĴñäĈ»ĭĴñäĈ»ĭĴñäĈ»ĭĴñäĈ»ĭĴñäy'}    {'ĿĚē¼Ŗţ·ĿĚē¼Ŗţn'} ...\r\n    {'Øë}dśÁ´ŠØë}dśÁ´ŠØë}dśÁ´ŠØë}dśÁ´ŠØë}dśÁ´ŠØë}dśÁ´ŠØë}ś'}    {'ßìzsŜ¶ÃŗßìzsŜ¶ÃŗßìzsŜ¶ÃŗßìzsŜ¶ÃŗßìzŘ'} ...\r\n    {'ªęĩÓÆĲªęĩÓÆĲªęĩÓÆĲªęĩÓÆĲªęĩÓÆĲªÖ'}    {'ņuóúÅē'}    {'ÝîxqŞ´ÁŕÝîxqŞ´ÁŕÝîxqŞ´ÁŕÝîxqŞ´ÁŕÝîxŗ'} ...\r\n    {'dŗÑØçìdŗÑØçìdŗÑØçìdŗÑØçìdŗÑØçìdŗÑØçìdŗÑØçìdŗÑØçp'}    {'vŅãÊõþvŅãÊõþvŅãÊõþvŅãÊõþvŅãÊõþvŅãÊõþvŅãÊõþvŅãÊj'}  ...\r\n    {'xŋÝÄû¡ĀxŋÝÄû¡ĀxŋÝÄû¡ĀxŋÝÄû¡ĀxŋÝÄû¡ĀxŋÝÄû¡ĀxŋÝŢ'}    {'ñâńŝrĈčiñâńŝrĈē'}    {'ńwñøÇĭĨÌńwñøÇĭĨÌńwñøÇĭĨÌńwñøÇĭĨÌńwñøÇĭĨÌńwñøÇĭĨÌńwñøÇĭĨÌńwñøÇĭĐ'}];\r\ny='ABCDEFGHIJKLMNOPQRSTUVWXYZ';\r\nfor k=1:26\r\n  assert(isequal(deCipher(double(x{k})-100,19),y(k)));\r\nend\r\n%%\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":0,"created_by":145982,"edited_by":145982,"edited_at":"2025-10-23T11:07:00.000Z","deleted_by":null,"deleted_at":null,"solvers_count":3,"test_suite_updated_at":"2025-10-23T01:21:29.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2025-10-22T22:43:16.000Z","updated_at":"2026-03-03T13:59:30.000Z","published_at":"2025-10-23T01:21:29.000Z","restored_at":null,"restored_by":null,"spam":null,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eProvided a message with all characters \u0026lt;= 255 (ascii) as an input, decode the padded message (removing the random character pad), XORing input converted to binary vector (8 bits each) with the inputted prime having primitive root of two as the key. The key is the repeated sequence of 2^x modulo prime key input starting from x=0 until the cycle repeats (unpadded zero binary represented vector of the repeated sequence). After XORing, remove the padded front and return the character array as output.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"}],"term":"tag:\"primitive roots\"","current_player_id":null,"fields":[{"name":"page","type":"integer","callback":null,"default":1,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"per_page","type":"integer","callback":null,"default":50,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"sort","type":"string","callback":null,"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"body","type":"text","callback":null,"default":"*:*","directive":null,"facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":false},{"name":"group","type":"string","callback":null,"default":null,"directive":"group","facet":true,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"difficulty_rating_bin","type":"string","callback":null,"default":null,"directive":"difficulty_rating_bin","facet":true,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"id","type":"integer","callback":null,"default":null,"directive":"id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"tag","type":"string","callback":null,"default":null,"directive":"tag","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"product","type":"string","callback":null,"default":null,"directive":"product","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"created_at","type":"timeframe","callback":{},"default":null,"directive":"created_at","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"profile_id","type":"integer","callback":null,"default":null,"directive":"author_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"created_by","type":"string","callback":null,"default":null,"directive":"author","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"player_id","type":"integer","callback":null,"default":null,"directive":"solver_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"player","type":"string","callback":null,"default":null,"directive":"solver","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"solvers_count","type":"integer","callback":null,"default":null,"directive":"solvers_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"comments_count","type":"integer","callback":null,"default":null,"directive":"comments_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"likes_count","type":"integer","callback":null,"default":null,"directive":"likes_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"leader_id","type":"integer","callback":null,"default":null,"directive":"leader_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"leading_solution","type":"integer","callback":null,"default":null,"directive":"leading_solution","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true}],"filters":[{"name":"asset_type","type":"string","callback":null,"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":"\"cody:problem\"","prepend":true},{"name":"profile_id","type":"integer","callback":{},"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":"author_id","static":null,"prepend":true}],"query":{"params":{"per_page":50,"term":"tag:\"primitive roots\"","current_player":null,"sort":"map(difficulty_value,0,0,999) asc"},"parser":"MathWorks::Search::Solr::QueryParser","directives":{"term":{"directives":{"tag":[["tag:\"primitive roots\"","","\"","primitive roots","\""]]}}},"facets":{"#\u003cMathWorks::Search::Field:0x00007f0f4c2ed5d0\u003e":null,"#\u003cMathWorks::Search::Field:0x00007f0f4c2ed530\u003e":null},"filters":{"#\u003cMathWorks::Search::Field:0x00007f0f4c2ecc70\u003e":"\"cody:problem\""},"fields":{"#\u003cMathWorks::Search::Field:0x00007f0f4c2ed850\u003e":1,"#\u003cMathWorks::Search::Field:0x00007f0f4c2ed7b0\u003e":50,"#\u003cMathWorks::Search::Field:0x00007f0f4c2ed710\u003e":"map(difficulty_value,0,0,999) asc","#\u003cMathWorks::Search::Field:0x00007f0f4c2ed670\u003e":"tag:\"primitive roots\""},"user_query":{"#\u003cMathWorks::Search::Field:0x00007f0f4c2ed670\u003e":"tag:\"primitive roots\""},"queried_facets":{}},"query_backend":{"connection":{"configuration":{"index_url":"http://index-op-v2/solr/","query_url":"http://search-op-v2/solr/","direct_access_index_urls":["http://index-op-v2/solr/"],"direct_access_query_urls":["http://search-op-v2/solr/"],"timeout":10,"vhost":"search","exchange":"search.topic","heartbeat":30,"pre_index_mode":false,"host":"rabbitmq-eks","port":5672,"username":"cody-search","password":"78X075ddcV44","virtual_host":"search","indexer":"amqp","http_logging":"true","core":"cody"},"query_connection":{"uri":"http://search-op-v2/solr/cody/","proxy":null,"connection":{"parallel_manager":null,"headers":{"User-Agent":"Faraday v1.0.1"},"params":{},"options":{"params_encoder":"Faraday::FlatParamsEncoder","proxy":null,"bind":null,"timeout":null,"open_timeout":null,"read_timeout":null,"write_timeout":null,"boundary":null,"oauth":null,"context":null,"on_data":null},"ssl":{"verify":true,"ca_file":null,"ca_path":null,"verify_mode":null,"cert_store":null,"client_cert":null,"client_key":null,"certificate":null,"private_key":null,"verify_depth":null,"version":null,"min_version":null,"max_version":null},"default_parallel_manager":null,"builder":{"adapter":{"name":"Faraday::Adapter::NetHttp","args":[],"block":null},"handlers":[{"name":"Faraday::Response::RaiseError","args":[],"block":null}],"app":{"app":{"ssl_cert_store":{"verify_callback":null,"error":null,"error_string":null,"chain":null,"time":null},"app":{},"connection_options":{},"config_block":null}}},"url_prefix":"http://search-op-v2/solr/cody/","manual_proxy":false,"proxy":null},"update_format":"RSolr::JSON::Generator","update_path":"update","options":{"url":"http://search-op-v2/solr/cody"}}},"query":{"params":{"per_page":50,"term":"tag:\"primitive roots\"","current_player":null,"sort":"map(difficulty_value,0,0,999) asc"},"parser":"MathWorks::Search::Solr::QueryParser","directives":{"term":{"directives":{"tag":[["tag:\"primitive roots\"","","\"","primitive roots","\""]]}}},"facets":{"#\u003cMathWorks::Search::Field:0x00007f0f4c2ed5d0\u003e":null,"#\u003cMathWorks::Search::Field:0x00007f0f4c2ed530\u003e":null},"filters":{"#\u003cMathWorks::Search::Field:0x00007f0f4c2ecc70\u003e":"\"cody:problem\""},"fields":{"#\u003cMathWorks::Search::Field:0x00007f0f4c2ed850\u003e":1,"#\u003cMathWorks::Search::Field:0x00007f0f4c2ed7b0\u003e":50,"#\u003cMathWorks::Search::Field:0x00007f0f4c2ed710\u003e":"map(difficulty_value,0,0,999) asc","#\u003cMathWorks::Search::Field:0x00007f0f4c2ed670\u003e":"tag:\"primitive roots\""},"user_query":{"#\u003cMathWorks::Search::Field:0x00007f0f4c2ed670\u003e":"tag:\"primitive roots\""},"queried_facets":{}},"options":{"fields":["id","difficulty_rating"]},"join":" "},"results":[{"id":59464,"difficulty_rating":"medium"},{"id":51188,"difficulty_rating":"medium"},{"id":61046,"difficulty_rating":"medium-hard"}]}}