Client for playing 300 publicly available Sokoban puzzles on a computer or phone.
send_errors_to_output = function(err)
	local callstack = debug.traceback('', 3)
	local error_with_callstack = cleaned_up_frame(tostring(err))..'\n'..cleaned_up_callstack(callstack)
	table.insert(Output_editor_state.lines, {data=''})
	Output_editor_state.cursor1 = {line=#Output_editor_state.lines, pos=1}
	Text.redraw_all(Output_editor_state)
	Text.insert_text(Output_editor_state, error_with_callstack)
	stop_app()
end