JFVDXTQS6OZQWXXRQ3I4HC7BBFXWQUWQO56C7AXQ35PMWUQI2MKAC var formatQueen = function (_v3) {var i = _v3.a;var j = _v3.b;return '&queen=' + ($elm$core$String$fromInt(i) + (':' + $elm$core$String$fromInt(j)));};var solveUrl = 'solve?id=1&size=' + ($elm$core$String$fromInt(model.size) + A3($elm$core$List$foldl,$elm$core$Basics$append,'',A2($elm$core$List$map,formatQueen,$elm$core$Set$toList(model.queens))));
var $mdgriffith$elm_ui$Internal$Model$AlignX = function (a) {return {$: 'AlignX', a: a};};var $mdgriffith$elm_ui$Internal$Model$Right = {$: 'Right'};var $mdgriffith$elm_ui$Element$alignRight = $mdgriffith$elm_ui$Internal$Model$AlignX($mdgriffith$elm_ui$Internal$Model$Right);
var status = A2($mdgriffith$elm_ui$Element$el,_List_fromArray([$mdgriffith$elm_ui$Element$width($mdgriffith$elm_ui$Element$fill),$mdgriffith$elm_ui$Element$padding(10)]),function () {var _v0 = model.status;if (_v0.$ === 'Just') {var s = _v0.a;if (s.$ === 'Solved') {return $mdgriffith$elm_ui$Element$text('Solved ✔');} else {return $mdgriffith$elm_ui$Element$text('Unsolvable ✖');}} else {return $mdgriffith$elm_ui$Element$none;}}());
Solve->( model, Http.get{ url = "solve?id=1&size=" ++ String.fromInt model.size, expect = Http.expectJson ReceivedSolution solutionDecoder}
ChangeBoardSize size-> ({ model| size = size, queens = Set.filter (\(x,y) -> x < size && y < size) model.queens, status = Nothing}, Cmd.none
ReceivedSolution maybeSol-> case maybeSol ofOk(sol) -> ( { model | queens = Set.fromList <| List.map (\l -> listToTuple l) sol}, Cmd.none )Err(err) -> ( model, Cmd.none )
Solve->( model, Http.get{ url = solveUrl, expect = Http.expectJson ReceivedSolution solutionDecoder})ReceivedSolution maybeSol-> case maybeSol ofOk(sol) -> ( { model | status = Just Solved, queens = Set.fromList <| List.map (\l -> listToTuple l) sol}, Cmd.none )Err(err) -> ( { model | status = Just Unsolvable }, Cmd.none )
elmcorePlatformProgramauthorprojectQueensFlags��������authorprojectQueensModel���������������id��elmcoreBasicsIntqueens��elmcoreSetSetelmcoreBasicsIntelmcoreBasicsInt�size��elmcoreBasicsInt�authorprojectQueensMsg�������Msg���������������AddQueen����������������������elmcoreBasicsIntelmcoreBasicsIntRemoveQueen���������������������elmcoreBasicsIntelmcoreBasicsIntClearQueens�����������������������ChangeBoardSize���������������������elmcoreBasicsIntSolve�����������������������ReceivedSolution��������������������� elmcoreResultResultelmhttpHttpErrorelmcoreListListelmcoreListListelmcoreBasicsIntNoOp��������������������������������������Flags��������Model���������������id��elmcoreBasicsIntqueens�elmcoreSetSetelmcoreBasicsIntelmcoreBasicsInt�size�elmcoreBasicsInt���������
elmcorePlatformProgramauthorprojectQueensFlags��������authorprojectQueensModel���������������id��elmcoreBasicsIntqueens��elmcoreSetSetelmcoreBasicsIntelmcoreBasicsInt�size��elmcoreBasicsIntstatus��elmcoreMaybeMaybeauthorprojectQueensStatus�authorprojectQueensMsg�������Msg���������������AddQueen����������������������elmcoreBasicsIntelmcoreBasicsIntRemoveQueen���������������������elmcoreBasicsIntelmcoreBasicsIntClearQueens�����������������������ChangeBoardSize���������������������elmcoreBasicsIntSolve�����������������������ReceivedSolution��������������������� elmcoreResultResultelmhttpHttpErrorelmcoreListListelmcoreListListelmcoreBasicsIntNoOp�������������������������������Status���������������Solved������������������������Unsolvable�������������������������������������Flags��������Model���������������id��elmcoreBasicsIntqueens�elmcoreSetSetelmcoreBasicsIntelmcoreBasicsInt�size�elmcoreBasicsIntstatus�elmcoreMaybeMaybeauthorprojectQueensStatus���������