{"group":{"id":1,"name":"Community","lockable":false,"created_at":"2012-01-18T18:02:15.000Z","updated_at":"2026-04-16T00:12:35.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-16T00: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":47043,"title":"Find the Arc Length of the Curve Defined by the Parametric Functions","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: 21px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 407px 10.5px; transform-origin: 407px 10.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 10.5px; text-align: left; transform-origin: 384px 10.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=\"\"\u003eGiven parametric functions of x(t) and y(t) as inputs and an interval for t, determine the arc-length.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function s = arcLength(x,y,interval)\r\n  s = x(interval)+y(interval);\r\nend","test_suite":"%%\r\ninterval=[0,2*pi];\r\na=3;\r\nb=1;\r\nx = @(t)(a-b)*cos(t)+b*cos((a-b)/b*t);\r\ny = @(t)(a-b)*sin(t)-b*sin((a-b)/b*t);\r\nS=16.000008564839522;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)\r\n%%\r\ninterval=[0,2*pi];\r\na=5;\r\nb=1;\r\nx = @(t)(a-b)*cos(t)+b*cos((a-b)/b*t);\r\ny = @(t)(a-b)*sin(t)-b*sin((a-b)/b*t);\r\nS=32.000001044955184;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)\r\n%%\r\ninterval=[0,2*pi];\r\na=7;\r\nb=1;\r\nx = @(t)(a-b)*cos(t)+b*cos((a-b)/b*t);\r\ny = @(t)(a-b)*sin(t)-b*sin((a-b)/b*t);\r\nS = 47.999993042047237;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)\r\n%%\r\ninterval=[0,6*pi];\r\na=7;\r\nb=3;\r\nx = @(t)(a-b)*cos(t)+b*cos((a-b)/b*t);\r\ny = @(t)(a-b)*sin(t)-b*sin((a-b)/b*t);\r\nS = 95.999986084094459;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)\r\n%%\r\ninterval=[0,10*pi];\r\na=11;\r\nb=5;\r\nx = @(t)(a-b)*cos(t)+b*cos((a-b)/b*t);\r\ny = @(t)(a-b)*sin(t)-b*sin((a-b)/b*t);\r\nS = 240.0000041038771;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)\r\n%%\r\ninterval=[0,2*pi];\r\nx=@(t)5*(t-sin(t));\r\ny=@(t)5*(1-cos(t));\r\nS=40;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)\r\n%%\r\ninterval=[0,100*pi];\r\na=pi;\r\nb=1;\r\nx = @(t)(a-b)*cos(t)+b*cos((a-b)/b*t);\r\ny = @(t)(a-b)*sin(t)-b*sin((a-b)/b*t);\r\nS = 856.2876515427223;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)\r\n%%\r\ninterval=[0,4*pi];\r\na=5;\r\nx = @(t)a*cos(t)+a*t.*sin(t);\r\ny = @(t)a*sin(t)-a*t.*cos(t);\r\nS = 394.7841760435743;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)","published":true,"deleted":false,"likes_count":1,"comments_count":2,"created_by":145982,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":7,"test_suite_updated_at":"2020-10-28T20:34:52.000Z","rescore_all_solutions":true,"group_id":1,"created_at":"2020-10-22T21:47:10.000Z","updated_at":"2025-10-14T18:02:24.000Z","published_at":"2020-10-22T22:05:52.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\u003eGiven parametric functions of x(t) and y(t) as inputs and an interval for t, determine the arc-length.\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":43648,"title":"Arc length of points interpolation","description":"Given a n by m matrix representing m vectors in n dimensions. Calculate the \u003chttps://en.wikipedia.org/wiki/Arc_length arc length\u003e of the closed loop curve going though these points in the order that they are given. The parametric curve, |c(t)| , between points |p(k)| and |p(k+1)| is defined as,\r\n\r\n|c(t) = p(k-1) * (-t/2+t^2-t^3/2) + p(k) * (1-5/2*t^2+3/2*t^3) + p(k+1) * (t/2+2*t^2-3/2*t^3) + p(k+2) * (-t^2/2+t^3/2)|,\r\n\r\nwhere |t| goes from 0 to 1. These interpolation polynomials can also be found using the constraints |c(0)=p(k)|, |c(1)=p(k+1)|, |c'(0)=(p(k+1)-p(k-1))/2| and |c'(1)=(p(k+2)-p(k))/2|.\r\n\r\nFor example for the points\r\n\r\n  points = [[1; 0] [0; 1] [-1; 0] [0; -1]];\r\n\r\nwould yield to following curve: \r\n\r\n\u003c\u003chttp://i.imgur.com/CIb8jFU.png\u003e\u003e","description_html":"\u003cp\u003eGiven a n by m matrix representing m vectors in n dimensions. Calculate the \u003ca href = \"https://en.wikipedia.org/wiki/Arc_length\"\u003earc length\u003c/a\u003e of the closed loop curve going though these points in the order that they are given. The parametric curve, \u003ctt\u003ec(t)\u003c/tt\u003e , between points \u003ctt\u003ep(k)\u003c/tt\u003e and \u003ctt\u003ep(k+1)\u003c/tt\u003e is defined as,\u003c/p\u003e\u003cp\u003e\u003ctt\u003ec(t) = p(k-1) * (-t/2+t^2-t^3/2) + p(k) * (1-5/2*t^2+3/2*t^3) + p(k+1) * (t/2+2*t^2-3/2*t^3) + p(k+2) * (-t^2/2+t^3/2)\u003c/tt\u003e,\u003c/p\u003e\u003cp\u003ewhere \u003ctt\u003et\u003c/tt\u003e goes from 0 to 1. These interpolation polynomials can also be found using the constraints \u003ctt\u003ec(0)=p(k)\u003c/tt\u003e, \u003ctt\u003ec(1)=p(k+1)\u003c/tt\u003e, \u003ctt\u003ec'(0)=(p(k+1)-p(k-1))/2\u003c/tt\u003e and \u003ctt\u003ec'(1)=(p(k+2)-p(k))/2\u003c/tt\u003e.\u003c/p\u003e\u003cp\u003eFor example for the points\u003c/p\u003e\u003cpre class=\"language-matlab\"\u003epoints = [[1; 0] [0; 1] [-1; 0] [0; -1]];\r\n\u003c/pre\u003e\u003cp\u003ewould yield to following curve:\u003c/p\u003e\u003cimg src = \"http://i.imgur.com/CIb8jFU.png\"\u003e","function_template":"function dist = arcLength(points)\r\n    dist = 1;\r\nend","test_suite":"%%\r\npoints = [[1; 0] [0; 1] [-1; 0] [0; -1]];\r\ndist_correct = 5.945066529883204;\r\nassert(abs(arcLength(points) - dist_correct) \u003c 1e-6)\r\n\r\n%%\r\npoints = eye(2);\r\ndist_correct = 2 * sqrt(2);\r\nassert(abs(arcLength(points) - dist_correct) \u003c 1e-6)\r\n\r\n%%\r\npoints = [cos(2*pi/500*(1:500)); sin(2*pi/500*(1:500))];\r\ndist_correct = 6.283185305221142;\r\nassert(abs(arcLength(points) - dist_correct) \u003c 1e-6)\r\n\r\n%%\r\npoints = [[0 0 0]' [1 0 0]' [1 0 1]' [0 0 1]' [0 1 1]' [1 1 1]' [1 1 0]' [0 1 0]'];\r\ndist_correct = 8.367321074314315;\r\nassert(abs(arcLength(points) - dist_correct) \u003c 1e-6)\r\n\r\n%%\r\npoints = [6 -8 -7 -7 3 5;8 -4 9 -1 -9 5;-7 1 9 8 7 -2;8 9 0 6 8 3;3 9 6 9 3 -6];\r\ndist_correct = 101.32625280165301;\r\nassert(abs(arcLength(points) - dist_correct) \u003c 1e-6)\r\n\r\n%%\r\nw = 0.887321243287836;\r\npoints = [-w  0  w  1 1 1 w 0 -w -1 -1 -1; -1 -1 -1 -w 0 w 1 1  1  w  0 -w];\r\ndist_correct = 8;\r\nassert(abs(arcLength(points) - dist_correct) \u003c 1e-6)","published":true,"deleted":false,"likes_count":0,"comments_count":3,"created_by":40782,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":5,"test_suite_updated_at":"2016-12-14T19:45:19.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2016-10-30T02:02:55.000Z","updated_at":"2016-12-14T19:45:19.000Z","published_at":"2016-10-30T02:03:39.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/media/image1.png\"}],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\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\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven a n by m matrix representing m vectors in n dimensions. Calculate the\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"https://en.wikipedia.org/wiki/Arc_length\\\"\u003e\u003cw:r\u003e\u003cw:t\u003earc length\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e of the closed loop curve going though these points in the order that they are given. The parametric curve,\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ec(t)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e , between points\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ep(k)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e and\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ep(k+1)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e is defined as,\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ec(t) = p(k-1) * (-t/2+t^2-t^3/2) + p(k) * (1-5/2*t^2+3/2*t^3) + p(k+1) * (t/2+2*t^2-3/2*t^3) + p(k+2) * (-t^2/2+t^3/2)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e,\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003ewhere\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003et\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e goes from 0 to 1. These interpolation polynomials can also be found using the constraints\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ec(0)=p(k)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e,\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ec(1)=p(k+1)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e,\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ec'(0)=(p(k+1)-p(k-1))/2\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e and\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ec'(1)=(p(k+2)-p(k))/2\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eFor example for the points\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[points = [[1; 0] [0; 1] [-1; 0] [0; -1]];]]\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003ewould yield to following curve:\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"},{\"partUri\":\"/media/image1.png\",\"contentType\":\"image/png\",\"content\":\"data:image/png;base64,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\"}]}"}],"problem_search":{"errors":[],"problems":[{"id":47043,"title":"Find the Arc Length of the Curve Defined by the Parametric Functions","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: 21px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 407px 10.5px; transform-origin: 407px 10.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 10.5px; text-align: left; transform-origin: 384px 10.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=\"\"\u003eGiven parametric functions of x(t) and y(t) as inputs and an interval for t, determine the arc-length.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function s = arcLength(x,y,interval)\r\n  s = x(interval)+y(interval);\r\nend","test_suite":"%%\r\ninterval=[0,2*pi];\r\na=3;\r\nb=1;\r\nx = @(t)(a-b)*cos(t)+b*cos((a-b)/b*t);\r\ny = @(t)(a-b)*sin(t)-b*sin((a-b)/b*t);\r\nS=16.000008564839522;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)\r\n%%\r\ninterval=[0,2*pi];\r\na=5;\r\nb=1;\r\nx = @(t)(a-b)*cos(t)+b*cos((a-b)/b*t);\r\ny = @(t)(a-b)*sin(t)-b*sin((a-b)/b*t);\r\nS=32.000001044955184;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)\r\n%%\r\ninterval=[0,2*pi];\r\na=7;\r\nb=1;\r\nx = @(t)(a-b)*cos(t)+b*cos((a-b)/b*t);\r\ny = @(t)(a-b)*sin(t)-b*sin((a-b)/b*t);\r\nS = 47.999993042047237;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)\r\n%%\r\ninterval=[0,6*pi];\r\na=7;\r\nb=3;\r\nx = @(t)(a-b)*cos(t)+b*cos((a-b)/b*t);\r\ny = @(t)(a-b)*sin(t)-b*sin((a-b)/b*t);\r\nS = 95.999986084094459;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)\r\n%%\r\ninterval=[0,10*pi];\r\na=11;\r\nb=5;\r\nx = @(t)(a-b)*cos(t)+b*cos((a-b)/b*t);\r\ny = @(t)(a-b)*sin(t)-b*sin((a-b)/b*t);\r\nS = 240.0000041038771;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)\r\n%%\r\ninterval=[0,2*pi];\r\nx=@(t)5*(t-sin(t));\r\ny=@(t)5*(1-cos(t));\r\nS=40;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)\r\n%%\r\ninterval=[0,100*pi];\r\na=pi;\r\nb=1;\r\nx = @(t)(a-b)*cos(t)+b*cos((a-b)/b*t);\r\ny = @(t)(a-b)*sin(t)-b*sin((a-b)/b*t);\r\nS = 856.2876515427223;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)\r\n%%\r\ninterval=[0,4*pi];\r\na=5;\r\nx = @(t)a*cos(t)+a*t.*sin(t);\r\ny = @(t)a*sin(t)-a*t.*cos(t);\r\nS = 394.7841760435743;\r\nassert(abs(arcLength(x,y,interval)-S)\u003c1e-10)","published":true,"deleted":false,"likes_count":1,"comments_count":2,"created_by":145982,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":7,"test_suite_updated_at":"2020-10-28T20:34:52.000Z","rescore_all_solutions":true,"group_id":1,"created_at":"2020-10-22T21:47:10.000Z","updated_at":"2025-10-14T18:02:24.000Z","published_at":"2020-10-22T22:05:52.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\u003eGiven parametric functions of x(t) and y(t) as inputs and an interval for t, determine the arc-length.\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":43648,"title":"Arc length of points interpolation","description":"Given a n by m matrix representing m vectors in n dimensions. Calculate the \u003chttps://en.wikipedia.org/wiki/Arc_length arc length\u003e of the closed loop curve going though these points in the order that they are given. The parametric curve, |c(t)| , between points |p(k)| and |p(k+1)| is defined as,\r\n\r\n|c(t) = p(k-1) * (-t/2+t^2-t^3/2) + p(k) * (1-5/2*t^2+3/2*t^3) + p(k+1) * (t/2+2*t^2-3/2*t^3) + p(k+2) * (-t^2/2+t^3/2)|,\r\n\r\nwhere |t| goes from 0 to 1. These interpolation polynomials can also be found using the constraints |c(0)=p(k)|, |c(1)=p(k+1)|, |c'(0)=(p(k+1)-p(k-1))/2| and |c'(1)=(p(k+2)-p(k))/2|.\r\n\r\nFor example for the points\r\n\r\n  points = [[1; 0] [0; 1] [-1; 0] [0; -1]];\r\n\r\nwould yield to following curve: \r\n\r\n\u003c\u003chttp://i.imgur.com/CIb8jFU.png\u003e\u003e","description_html":"\u003cp\u003eGiven a n by m matrix representing m vectors in n dimensions. Calculate the \u003ca href = \"https://en.wikipedia.org/wiki/Arc_length\"\u003earc length\u003c/a\u003e of the closed loop curve going though these points in the order that they are given. The parametric curve, \u003ctt\u003ec(t)\u003c/tt\u003e , between points \u003ctt\u003ep(k)\u003c/tt\u003e and \u003ctt\u003ep(k+1)\u003c/tt\u003e is defined as,\u003c/p\u003e\u003cp\u003e\u003ctt\u003ec(t) = p(k-1) * (-t/2+t^2-t^3/2) + p(k) * (1-5/2*t^2+3/2*t^3) + p(k+1) * (t/2+2*t^2-3/2*t^3) + p(k+2) * (-t^2/2+t^3/2)\u003c/tt\u003e,\u003c/p\u003e\u003cp\u003ewhere \u003ctt\u003et\u003c/tt\u003e goes from 0 to 1. These interpolation polynomials can also be found using the constraints \u003ctt\u003ec(0)=p(k)\u003c/tt\u003e, \u003ctt\u003ec(1)=p(k+1)\u003c/tt\u003e, \u003ctt\u003ec'(0)=(p(k+1)-p(k-1))/2\u003c/tt\u003e and \u003ctt\u003ec'(1)=(p(k+2)-p(k))/2\u003c/tt\u003e.\u003c/p\u003e\u003cp\u003eFor example for the points\u003c/p\u003e\u003cpre class=\"language-matlab\"\u003epoints = [[1; 0] [0; 1] [-1; 0] [0; -1]];\r\n\u003c/pre\u003e\u003cp\u003ewould yield to following curve:\u003c/p\u003e\u003cimg src = \"http://i.imgur.com/CIb8jFU.png\"\u003e","function_template":"function dist = arcLength(points)\r\n    dist = 1;\r\nend","test_suite":"%%\r\npoints = [[1; 0] [0; 1] [-1; 0] [0; -1]];\r\ndist_correct = 5.945066529883204;\r\nassert(abs(arcLength(points) - dist_correct) \u003c 1e-6)\r\n\r\n%%\r\npoints = eye(2);\r\ndist_correct = 2 * sqrt(2);\r\nassert(abs(arcLength(points) - dist_correct) \u003c 1e-6)\r\n\r\n%%\r\npoints = [cos(2*pi/500*(1:500)); sin(2*pi/500*(1:500))];\r\ndist_correct = 6.283185305221142;\r\nassert(abs(arcLength(points) - dist_correct) \u003c 1e-6)\r\n\r\n%%\r\npoints = [[0 0 0]' [1 0 0]' [1 0 1]' [0 0 1]' [0 1 1]' [1 1 1]' [1 1 0]' [0 1 0]'];\r\ndist_correct = 8.367321074314315;\r\nassert(abs(arcLength(points) - dist_correct) \u003c 1e-6)\r\n\r\n%%\r\npoints = [6 -8 -7 -7 3 5;8 -4 9 -1 -9 5;-7 1 9 8 7 -2;8 9 0 6 8 3;3 9 6 9 3 -6];\r\ndist_correct = 101.32625280165301;\r\nassert(abs(arcLength(points) - dist_correct) \u003c 1e-6)\r\n\r\n%%\r\nw = 0.887321243287836;\r\npoints = [-w  0  w  1 1 1 w 0 -w -1 -1 -1; -1 -1 -1 -w 0 w 1 1  1  w  0 -w];\r\ndist_correct = 8;\r\nassert(abs(arcLength(points) - dist_correct) \u003c 1e-6)","published":true,"deleted":false,"likes_count":0,"comments_count":3,"created_by":40782,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":5,"test_suite_updated_at":"2016-12-14T19:45:19.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2016-10-30T02:02:55.000Z","updated_at":"2016-12-14T19:45:19.000Z","published_at":"2016-10-30T02:03:39.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/media/image1.png\"}],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\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\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven a n by m matrix representing m vectors in n dimensions. Calculate the\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"https://en.wikipedia.org/wiki/Arc_length\\\"\u003e\u003cw:r\u003e\u003cw:t\u003earc length\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e of the closed loop curve going though these points in the order that they are given. The parametric curve,\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ec(t)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e , between points\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ep(k)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e and\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ep(k+1)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e is defined as,\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ec(t) = p(k-1) * (-t/2+t^2-t^3/2) + p(k) * (1-5/2*t^2+3/2*t^3) + p(k+1) * (t/2+2*t^2-3/2*t^3) + p(k+2) * (-t^2/2+t^3/2)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e,\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003ewhere\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003et\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e goes from 0 to 1. These interpolation polynomials can also be found using the constraints\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ec(0)=p(k)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e,\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ec(1)=p(k+1)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e,\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ec'(0)=(p(k+1)-p(k-1))/2\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e and\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ec'(1)=(p(k+2)-p(k))/2\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eFor example for the points\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[points = [[1; 0] [0; 1] [-1; 0] [0; -1]];]]\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003ewould yield to following curve:\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"},{\"partUri\":\"/media/image1.png\",\"contentType\":\"image/png\",\"content\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAjAAAAGkCAIAAACgjIjwAAAcnklEQVR42u3db2iV96HAcWGvy96M0ZUyZLAVM9AFYXfmBtFXofXN7e2bMiTkRV8oWTasYpUsBq59UWRtbXaDjIV0zEXXZbPXyBohNEvj6uK/zRdXSXWakC1ZVhtD6LJuWYL3d/OsZ1Hzx+T8+z3nfD4cwjk2lSe/PP6+5/ec5zxn3T0AiMA6QwCAIAGAIAEgSAAgSAAIEgAIEgCCBACCBIAgAYAgASBIACBIAAgSAAgSAIIEAIIEgCABgCABIEgAIEgACBIACBIAggQAggSAIAGAIM3r7+9f9M8nJiYuLTA1NeV3CSBI+dLa2lpdXb3of2pra6uoqKj81Llz5/wuAQQp9yYnJw8cOBBKs1SQ9uzZ09HR4fcHIEj51dzcfOTIke7u7qWCVFNTMzAwMDExMTMz47cIIEj5Mjc3F7729fUtGqTZ2dkNGzbs2LFjy5Yt4U5jY+Oif8nOnTu/AsC8MCUK0totFaTR0dGGhobwNdwfHx/funXriRMnHv628AuI4aeIZDNsqq21qWW+qfGPWCqD9IDDhw/v3bvXTmBTba1NtamCVOggDQ8Pd3Z2Zh42NTXt37/fTmBTba1NtamCVKAgXb16dWxsLNwZHBysqKi4efPmvflDdlVVVYue9h3J6Le0tKTln41NtbU2tYQ3VZByGaS6urrMwqijo6OysrK2tjZ8bW9vL4En0QCCZPQBBEmQBAnAlChIAIIkSEYfwJQoSACCJEhGH8CUKEgAgiRIRh/AlChIABml9zkAj3gZb0ESJMDMEMVPJEh2O8DMIEiCJEiAIAmS3Q4wMwiSIAkSIEiCZLcDzAyCJEiCBBR+Zpj580iu/qp//OMfLyzw8ssvJ59EmtE3T5DsdoCZ4UEfvfW9kUP/GW7hTvZ/29///vd169a1t7f/eF59ff1nP/vZkZF/Bu/y5cuf//zn29raBEmQADPDfaZ637q96+sfPPeFcAt3wsOcBCl8zfzJtm3bfvSjH4U7ra2t69ev/8Y3viFIggSYGRZZHiU1Sm7ZL5IeDlJVVdVPfvKTe/MH66anp1944QVBEiTAzLBCkHK1Qtq9e3f9vJqami9+8YtTU1OZbxAkux1gZljEzJ9H/vT979ze9fVwC3ey/wuTIL3xxhutra3Hjh07ceLExx9/vPAbBMluB5gZljT9v++HW07+qocP2T1AkOx2gJmhEATJbgcIkiAJkiABZoaC/ESCZLcDzAyCJEiCBAiSINntADODIAmSIAGCJEh2O8DMIEiCJEiAIAmS3Q4wM2Rrmc9D+uMf/3jo0KG6urpjx47Nzc0Jkt0OMDPcZ276D38b6Qy3cCf7v22pz0Oampp6/PHHX3311TNnzjz77LO1tbWCJEiAmeG+Gk39+vmJ0+vD7S+/3Zd9k5b6PKS33377+eefT/7k7t27n/nMZwRJkAAzw7/8dfD1pEbJLTzMeZAyn4eUcf78+SeeeEKQBAkwM+Q9SMt8HtL4+PiXvvSln/70p4IkSICZ4V/+NtI52VOd1Cjcmbnzm5wEaanPQ/rggw/Wr18f/tPafiJBEiSglGeG0KS//HZfuIU72f9ty1ztu7+//4knnjhz5syafyJBEiTAzJBtkIaHhz/3uc+dP38+m59IkOx2gJkh2yDt2bNn3f0EyW4HmBnS+hMJkt0OMDMIkiAJEiBIgmS3A8wMgiRIggQIkiDZ7QAzgyAJkiABgiRIRdPf3y9IgCAJUpG1trZWV1cLEjGbufOb7C9xRpkEaZkP6BsfH//ud79bV1fX29srSHGZnJw8cOBAZWWlIBGtuek//OW3+yZ7qsMt3DEgJRmk352+dqrpbLiFO9n/bUt9QN/09PSTTz75+uuvnz59+qtf/eovfvELQYpIc3PzkSNHuru7BYloPfDZBDm5+CZRBSlE6LWn2w5tei3cwp2hS/n6gL7Lly8fOnQo+ZMQqm9+85uCFNNzz/mPlO/r61s+SBktLS3+HZJXQxOf/Or3d5vP3g63ba1X1r347v43vr0wSOHh+pffD/+p7uT1Ny+OhW82aGkPUu+x80mNklt4mPMgPfABfXfv3q2pqXnjjTce8ScKU9/CmVCQ8mjFIPm3RwE6lClQ6E0SpCQ2D3xYTniYRCvUKDQp/C/h+8Mt3BcnQVoYpKU+oO/tt9/evHnz448/fu3aNSskQYL7OpSJ0FJF+evg61O/fj7cFv0s0cyiKomTMqUuSJOjU6eazibH68Kd8DAnQVrqA/oSp0+ffvLJJwVJkNCh+zqU2785rJySMi1TOKIKUtKk352+Fm7Z1+je0h8/MTIycvHixX9N3OvWffLJJ4IkSJSpUIiwgklqEeKR7+YlrzaFRBn5yIOUW0sFqbe396mnnkoidObMmfXr11shCRLlKMlDzpdEq1ow+S2UeZCCl1566ctf/vLTTz8dajQwMCBIdjvKLkXrXnw3VCGvS6IVy5RZmfmNlPnMEEI1PT295p9IkOx2pDhF+T46J0tmhkL+RIJkt8OqSJbMDIIkSILEavzq93eT14oiTNEDWUpeW3LKg5lBkOx2lJrMFJ+ik61DjZIz8SLPp5lBkARJkHhUyUl0aTwIljlB3BE8QRIkux3pFtZD6158t+7k9bQv72RJkATJbkeKJ/HUHaNb8SdKLj7kCF6qZ4ZlPg8p8dFHHzU0NAiS3Y4SkTmlu/Qqa6lUlJnh1oeXwi0nf9VSn4eU+YbnnnvuscceEyS7HaWzMCrhZUQ5/IzxzAx3p0d/dunQK+88E27hTq6C9PDnISX3w53a2lpBEiRS782LYyW5MLJUKuLM0HPt2Es//1rmdnn4dM6DlPk8pFu3blVWVn744YeCJEiUwqKhrC6hnbyq5LzwQgYpPMxJkBb9PKRQpsuXL3/88ceCJEikVXIqXXmuFSyV8j0zhCXRK+88k9Qo3MnVCunhz0P6r3nhjiDZ7UirZDou888WSpZKmpSnmSGsin7w3gvhlv3y6N7SV/t+6qmnHvtU+IbwdeH3CJIgEfssvK31SrgZioVLJYfv7qX24ycSVkh2O1KmnA/TrbheNCyCJEh2Owo67foI8KWWSprkSg2CZLejELOtw3SPMkplfvhOkATJbkd+OUy3hnVkeX6AhSAJkt2OPEo+i8FhujUsKMsw4YIkSHY78iX5EFXnj62tSWX4kpIgCZLdjnw9x/eiUZZjWG4vKe3cufMrpSX8RIIkSHh2XyK8S8nSUJAEiTVKTmHwolEOJa/DCbwpUZAEiVVPnWqUj0VneZ7mIEiCZPRZCweX8t0k6yRToiAJEitzCkPB1kl1J68bClOiIAkSalT8JiUrUUNhShQkQcJz9uJzdNSUKEiCxIM18qqGJiFIRp/i12jdi++W5yXXNAlBMvrEwpuNIuE8e1OiIAmSGqlRREtVTTIlCpIgqRERNcmLeaZEQRKk8qqRJ+OahCAZfdSIFZrk8kKmREESJDVCkxAko48aoUmmREESJDVCkxAko48aoUmmREESpLKpkTO8U92k8GTCpTRMiYIkSGpELE3ySzQlCpIgqRGahCAZfbKbwtSolCTXu3MNVlOiIAmSGqFJCJLRZ/U12tZ6xcvgJclnVZgSBUmQ0sSJwuXQJONgSiypII2MjPT09AwODi76XycmJi4tMDU1JUhpqVG4GYeSb5LPmxek0glSV1dXVVXVvn37tm/ffvTo0Ye/oa2traKiovJT586dEyQ1IhJDE5+EIGmSIJVCkGZnZ0Njbt68mayENm3aNDQ09MD37Nmzp6OjI+2jX27PmtWorJrk2KwglUKQent7w8Io87ChoeH48eMPfE9NTc3AwEDI1czMjCDFL7k4kHEotyb58CRBSn2QTp06tXv37szDgwcPNjU1PbCE2rBhw44dO7Zs2RLuNDY2LjX6GS0tLXbHItbISd7l3CS/+iIKU9/CmVCQVq2zs7O+vj7zsHHewm8YHR0Ny6bwNdwfHx/funXriRMnrJCinZLUyOLYieBWSGkNUldX165duxaukJqbm5f5/sOHD+/du1eQ4uQtRyRvmDUOgpTKIA0MDFRXV2cehjiFRC38huHh4bCKyjxsamrav3+/IMVZI6dacc+J4IKU3iDNzc2FIPX19YX7N27c2Lhx4507d8L9q1evjo39/3PtwcHBioqK5DS88fHxqqoqp33HOQc5rY6Ek+4EKa1BShZJITO1tbWbN2/u7u5O/rCuri6zMOro6KisrAzfEL62t7endPRLmNPqeLhJPjlJkFIZpDIZ/RKeepzIwFJNsmOYEgWJwtnWesWkw6Kc4GBKFCQKWiMvFbAMJziYEgWJAs01TmRgeU5wMCUKEnmXXJHBWyB5xCY5rmtKFCTyxevVrOrpiys4mBIFibxwEIbV8mKSKVGQyL03L4556YjV8mKSKVGQyP204l1HrHnncaTXlChI5IxXp8lyee2dSaZEQSIHnOdN9nzeuSlRkMiWC9aRE84CNyUKEtly9B9PbkyJgiRIxecwC/YoU6IgCZLns5QgZ9yZEgWJtXDEn3xwxp0gGX1Wx5l15E/dyeveKitIRp9HkrwN1iXIyN8O5sCdIBl9HklYG/kUavLKlagEyehjpiCWRZLnPYJk9FmBYykUhtM4BcnosxwfFkAheVuSIBl9FudcBgq/y/kEP0Ey+iz+dNXJuFiUmxIFSZCK7Fe/vxuWR8aBwi+SvAVbkIw+93HKE8XixE5BMvrctzxyvhNFXCQ5t1OQjD6WR1gkmRIFSZBiWh559QiLJFOiIAmS5RFYJAmS0efT9x4ZByLZFS2SBMnoly/vPSKqRZL3JAmS0S9fLs1AVIskZ3sKktH3hBSi4BVNQTL6Zcp5TcTGW+IEyej7lw8RLZI8TxIko19e6k5ed2yECDmSLEhGv+y47D9xcmqDIBl9T0IhFo7aCZLRLyOO1xEzH5IkSEa/jDheR8wctRMko19GXC6IyDlqJ0hGvyx4AYlUBMlFrQTJ6Jc+LyARv7A8cvFvQTL6pc8LSMTPy0iCZPTLgheQsKOaEgVJkIrPkRDSwnkNghSXkZGRnp6ewcFBQcoVZzQgSIIkSKvW1dVVVVW1b9++7du3Hz16VJBy4u3+4f94dcA4EL8f/vJC4/H3jIMgFd/s7GxlZeXNmzfD/YmJiU2bNg0NDQlSNiZHp041nf32v/33oWd/3HvsvAEhZh+99b1z33rm9q6v/+n735n584gBEaRi6u3tDQujzMOGhobjx48LUlZDeuz8oU2vJbfXnm773elrxoQ4TfW+FVL0wXNfSG4hTsZEkIrp1KlTu3fvzjw8ePBgU1PToqOf0dLSYndcbkibzmaCFG4WScS8PMrUKNzCIsmYLCNMfQtnQkHKvc7Ozvr6+szDxnlWSFZIWCFhhVRoXV1du3btWrhCam5uFqRsJK8hHXr2x15DIhWLpHPfeibc1EiQim9gYKC6ujrzMMQpJEqQsvf6/wx+p/2qcSB+jcff++EvLxgHQSq+ubm5EKS+vr5w/8aNGxs3brxz544gZc8bY0kLF10UpLgWSVVVVbW1tZs3b+7u7k7p6EcYJJcIIxVcdFGQjH6Jc81K0sK17ATJ6Jc+V2QhFc+cBEmQjL4gQfG56KIgGf1y+afuvAYi54wGQTL6ZcHLSMTPGQ2CZPTLhaN2xD5teQFJkIx+mWg+ezvcjANx8gKSIBn9MuLtsVjBmxIFSZCikJxT6988kc5ZjtcJktEvK3UnrztqR4QcrxMko192XEOIOIXd0tpdkIx+2XGkngiXR54nCZLRL9N//E5tICreDytIRr9MJe+Q9fZDIpqtnM4gSEa/nJ+QegGZSDSfvW1vFCSjX+6LJONADKzXBcnol7ttrVcctafonO0tSEYfiyRiWR4551OQjD4WSVgemRIFSZAsksDySJCMPhZJWB6ZEgVJkCySwPJIkIw+S/CeJArPe48Eyeiz5CLJG0Eo5C637sV37XKCZPRZhKP5FNK21is+A0WQjD7LLZIc0KcAfACKIBl9Vl4kmSYozPLIUx9BMvqsPFM4kEK+n/f46BNBMvqszNkN5HsHW/fiu5ZHgmT0eSROxsUS3JQoSIIUy3NY124gH5zLIEhGn7U0ycRBzjmNU5CMPmvhwB25FZbd9ihBMvqsfZHk+Sw54WCdKVGQyEGTnHFHDmYiZ9aZEgWJLDlwR/acWWdKFCRys0gym5ANb4M1JQoSuWySA3eseedxsM6UKEjk+EmuV6RZA29oMyUKErnnE/xYreaztx2sMyUKErnnLHBWxXnepkRBIu9N8mISj7KreOnIlChI5Ffz2due9rIiZ2aaEgWJQvBiEivuIV46MiUKEoWQHLjz/JdFeenIlChIFKFJXiHg4Rp56ciUKEgUWvLOJCc4sJCnKaZEQaI4nODAQk5kMCWmOEgjIyM9PT2Dg4OL/teJiYlLC0xNTQlShJzgQGZPcCKDIKU1SF1dXVVVVfv27du+ffvRo0cf/oa2traKiorKT507d06QIuTSq9xzZSlBSnWQZmdnQ2Nu3ryZrIQ2bdo0NDT0wPfs2bOno6Mj7aNfPk3yykHZSk6r82qiIKU1SL29vWFhlHnY0NBw/PjxB76npqZmYGAg5GpmZmaZ0c9oaWmxOxaxSaaksv3VO62uuMLUt3AmFKRVO3Xq1O7duzMPDx482NTU9MASasOGDTt27NiyZUu409jYaIUUOSfdle0TETWyQkp3kDo7O+vr6zMPG+ct/IbR0dGwbApfw/3x8fGtW7eeOHFCkCLnpLty4+VDQUprkA4fPpycnlBdXd3V1bVr166FK6Tm5ubl/9+9e/cKUiqa5KS78qmR0+oEKa1BunXr1vvzLly4MDAwELKU+U8hTiFRC795eHg4rKIyD5uamvbv3y9I8Rua+MSJ4GqEIMUepIXm5uZCkPr6+sL9GzdubNy48c6dO8l/unr16tjY2ODgYEVFRXIa3vj4eFVVldO+U9QkR3JKfh2sRoJUOkEKwiIpZKa2tnbz5s3d3d2ZP6+rq0vWRh0dHZWVleEbwtf29vaUjn7ZNsnVV0uVtxwJUgkGqUxGX5MMRSnxliNToiAJUlqbtK31SnhCbShKqUZO8jYlCpIgpXidZAorjRp5A6wpUZAESZNQIwTJ6JMLycvgpjM1wpQoSMTSJC+Gp3GBq0amREESJE1CjRAko48mqZEamRIFSZA0CTVCkIw+moQamRIFSZDKr0mmvAg5p86UKEiCpEmoEYJk9CmS5D2zri2kRgiS0SeWJrkGqxohSEafKJrk85OKy+FTU6IgCRLWSWqEIBl9NIl79+pOXvdpe6ZEQRIkFmnSttYrYYo0FIURRtsnkZsSBUmQWLJJYZHkOXth2q9GpkRBEiRWkDTJpRysRBEko48mlazk9G7v/TIlCpIgsbqp02kO+aiRE+pMiYIkSKyaU+9yvuhUI0ESJEFi7U3ygkf2nMIgSIJk9MlNk7ykpOgIktEnFkmTvBq/KsmLRo55CpIgGX3y8mTf9LqqhHvRSJAEyeiTryaFSdbLIY9SbqMkSIJk9Mn7bOslpRWbbR0pSIJk9CmQpEmm3Qe8eXHMO40ESZCMPsVZCjgwlRmNMBQWjoIkSEafos3CXrq/52w6BMnoE890XM5n30kygmT0iXGpVFYHrJxNhyAZfaJeK5TJUin8mA7TIUhGn9gXDaW9VMosjJy/gCAZfSyV/GiYEgVJkHjkZUSJvdrvNHcEyeiTYm9eHEvWE6k+uuXsdgTJ6FNSS6WUHuZy8gKCZPQptSzVnbyerg+wSD7E3ckLCJLRpwQlU3z8x74y5wo6RocgGX1KeamUHMELC6YIVx6ZlZxjdAiS0aeMspR8tnckq5C0v9aFKVGQBIncrJaKmCWrIgTJ6MM/e5CcHV74Ux6SHEoRgmT04T6hRsmpBCEPeV0wJSuzdS++m66z/jAlCtK9/v5+QaKQC6aFC5dHOfHh7vRonv5mEKSItLa2VldXCxKFz1JYJNWdvJ6sY5ZZM/VcO/aD914It3BnmQ4VZu2FIAlSXkxOTh44cKCyslKQKG6ZFhYlOTHvzYtjoSvhzy8Pn37lnWde+vnXwi3cCQ+TkoVvSP6XFXsGgpQCzc3NR44c6e7uXj5IGS0tLXZHCrBsCrEJTUr69O+v709qlNzCw+SIXPgGEaIwwtS3cCYUpLyYm5sLX/v6+qyQiFbPtWMLgxRWSMYEK6QSDFJCkIjZ3enRn1069Mo7z4RbuGNAEKQSCdLhw4cr5y0skCARv1sfXgo344AglU6Qbt269f68CxcuCBKAIMVFkAAESZAABEmQSmX0AUyJggQgSIJk9AFMiYIEIEiCZPQBTImCBCBIgmT0AUyJggSAIBl9AFOiIAkSgCAZfQBToiAJEoAgGX0AU6IgCRKAIBl9AFOiIAkSgCAZfQBToiAJEoAgGX0AU6IgCRKAIBl9AFOiIAkSgCAZfQBToiAJEoAgGX0AU6IgCRKAIBl9AFOiIAkSgCAZfQBToiAJEoAgGX0AQRIkQQIwJQoSgCAJktEHMCUKEoAgCZLRBzAlChKAIAmS0QcwJQoSgCAJktEHMCUKkiABCJLRBzAlCpIgAQiS0QcwJQqSIAEIktEHMCUKUtSj39LSkpYRs6m21qaW8KYKUrb6+/sX/fOJiYlLC0xNTUU7+ilaqNlUW2tTS3hTBSkrra2t1dXVi/6ntra2ioqKyk+dO3fOTmBTba1NtamClHuTk5MHDhwIpVkqSHv27Ono6LAT2FRba1NtqiDlV3Nz85EjR7q7u5cKUk1NzcDAwMTExMzMzFJ/yc6dO78CwLwwJQrSWszNzYWvfX19iwZpdnZ2w4YNO3bs2LJlS7jT2Nh4D4CUi/o1pKWCNDo62tDQEL6G++Pj41u3bj1x4oTfJYAg5cDhw4eT0xMWFmipID38/+7du9fvEkCQcuDWrVvvz7tw4cKKQRoeHu7s7Mw8bGpq2r9/v98lgCDly8NBunr16tjY2ODgYEVFxc2bN+/NH7Krqqpa9LRvAAQpX0Gqq6tL1kYdHR2VlZW1tbXha3t7u18kgCABgCABIEgAIEjpkM2VYePc8uIaGRnp6ekZHBxM0aguv83Rblv8u2i0e+ky25aKURWk0pTllWHj3PIi6urqqqqq2rdv3/bt248ePZqKUV1xm6Pdtsh30Wj30uW3Lf5RFaQSlJMrw8a55cUyOzsbtio50T88zdy0adPQ0FDko/oo2xzttkW7i8a8l664bTGPqiCVrJxcGTbOLS+W3t7e8EQ+87ChoeH48eORj+qjbHO02xbtLhrzXrritsU8qoJUstJ7Zdjlt7yITp06tXv37szDgwcPNjU1RT6qK25ztNsW+cWLo91Ll982l4QWpGJK75VhI/yn3tnZWV9fn3nYOC/yUV1xm6PdtlRcvDjOIC2zbS4JLUgFkt4rw2az5YXctq6url27di18Rt/c3BztqCZWu83RblucFy9OXZBSMaqCVArSe2XYVW15EbdtYGBg4SaFyTRMqdGOamLFbY5221Jx8eLUBckloQUpop0yuSxsuBP/lWEj/Kc+NzcXNilsWLh/48aNjRs33rlzJ/JRXWqb4x/PVFy8OEVBckloQYpup8xcFvZe9FeGjfOfenhSH/4Nh0HbvHlzd3d3KkZ10W1OxXjGf/HiFAXJJaEFKXbhKer09HRyTg6PbvlBi3NUY/5FL7NtdlH/8AUJAEECAEECQJAAQJAAQJAAECQAECQABAkABAkAQQIAQQJAkABAkAAQJAAQJAAECQAECQBBAgBBAkCQAECQABAkABAkAAQJAAQJgNL1f1P18V/J0+R8AAAAAElFTkSuQmCC\"}]}"}],"term":"tag:\"arc length\"","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:\"arc length\"","current_player":null,"sort":"map(difficulty_value,0,0,999) asc"},"parser":"MathWorks::Search::Solr::QueryParser","directives":{"term":{"directives":{"tag":[["tag:\"arc length\"","","\"","arc length","\""]]}}},"facets":{"#\u003cMathWorks::Search::Field:0x00007f3037de3ca8\u003e":null,"#\u003cMathWorks::Search::Field:0x00007f3037de3c08\u003e":null},"filters":{"#\u003cMathWorks::Search::Field:0x00007f3037de2ee8\u003e":"\"cody:problem\""},"fields":{"#\u003cMathWorks::Search::Field:0x00007f3037de3f28\u003e":1,"#\u003cMathWorks::Search::Field:0x00007f3037de3e88\u003e":50,"#\u003cMathWorks::Search::Field:0x00007f3037de3de8\u003e":"map(difficulty_value,0,0,999) asc","#\u003cMathWorks::Search::Field:0x00007f3037de3d48\u003e":"tag:\"arc length\""},"user_query":{"#\u003cMathWorks::Search::Field:0x00007f3037de3d48\u003e":"tag:\"arc length\""},"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:\"arc length\"","current_player":null,"sort":"map(difficulty_value,0,0,999) asc"},"parser":"MathWorks::Search::Solr::QueryParser","directives":{"term":{"directives":{"tag":[["tag:\"arc length\"","","\"","arc length","\""]]}}},"facets":{"#\u003cMathWorks::Search::Field:0x00007f3037de3ca8\u003e":null,"#\u003cMathWorks::Search::Field:0x00007f3037de3c08\u003e":null},"filters":{"#\u003cMathWorks::Search::Field:0x00007f3037de2ee8\u003e":"\"cody:problem\""},"fields":{"#\u003cMathWorks::Search::Field:0x00007f3037de3f28\u003e":1,"#\u003cMathWorks::Search::Field:0x00007f3037de3e88\u003e":50,"#\u003cMathWorks::Search::Field:0x00007f3037de3de8\u003e":"map(difficulty_value,0,0,999) asc","#\u003cMathWorks::Search::Field:0x00007f3037de3d48\u003e":"tag:\"arc length\""},"user_query":{"#\u003cMathWorks::Search::Field:0x00007f3037de3d48\u003e":"tag:\"arc length\""},"queried_facets":{}},"options":{"fields":["id","difficulty_rating"]},"join":" "},"results":[{"id":47043,"difficulty_rating":"medium"},{"id":43648,"difficulty_rating":"unrated"}]}}