LuaT  xV(w@@C:\REAPERDEV\Scripts\LKC-ReaScripts-DEV\RenderBlocks\GrimSync\_source\lkc_grimsync_shared_functions.luaQR  R      !" # $%&'()*+, R- -. -/ R0 0 0 0 0 0 0 0 0 0  0  0  0  0  0 0 0 0 0 0 0 0 0 0 0 0 0" 0# 0$ 0% 0& 0' 0 ( 0!* 0"+ 0#, 1 π2 3 π4 5 6π7 68 6π9 :; π<FWSHAREDINI_SECTION_NAMELKC_GRIM_SYNCDEF_SETTINGSorig_fixed_pathorig_path_typeorig_work_unitorig_v_folderorig_actor_mixerorig_random_sequenceorig_switchorig_blendorig_music_switchorig_music_playlistorig_music_segmentevent_fixed_pathevent_path_typeevent_work_unitevent_v_folderevent_actor_mixerevent_random_sequenceevent_switchevent_blendevent_music_switchevent_music_playlistevent_music_segmentevent_prefixPlaypath_only_affects_eventsimport_languageSFXadd_to_source_controlimport_operationdefault_hierarchyadvanced_optionslink_blocksdyn_subpath_in_event_namestop_event_prefixStopwaapi_connection_linkplay_event_suffixstop_event_suffixDEFAULT_CONTAINER_PATHS\Actor-Mixer Hierarchy\Default Work Unit\\Interactive Music Hierarchy\Default Work Unit\SETTINGS_KEYSGetAbsoluteRenderPathGenerateOriginalsAndEventsConfig_JSONSaveJSONParseCSVLinetprintWSHAREDPrettyJSONGetSettingSaveAllSettingsWSHAREDGetAllSettingsRevertProjectSettingsToGlobal D DB DBF82  D  D  D  D  D  D D D  D  D  D  D   EFGreaperGetSetProjectInfo_StringRENDER_FILEstringmatch(%a):starts_with/GetSetProjectInfoRENDER_SETTINGSRENDER_BOUNDSFLAGRENDER_PATTERNGetSet_LoopTimeRangeLKC_part_of_filename_to_parse_outRENDER_TARGETSgsubLKC_part_of_filename_to_parse_out.*retvalrender_locationrender_typerender_boundsretrender_patternsel_startsel_endretrender_targets_ENVϋR R 88  R    !R 88 ƃƃWSHAREDGetAllSettingsJSON_FILES_PATH/bin/orig_work_unitWorkUnitorig_v_folderFolderorig_random_sequenceRandomSequenceContainerorig_switchSwitchContainerorig_blendBlendContainerorig_music_switchMusicSwitchContainerorig_music_segmentMusicSegmentorig_music_playlistMusicPlaylistContainerorig_actor_mixerActorMixerpairsSaveJSONgrim_originals_configevent_work_unitevent_v_folderevent_random_sequenceevent_switchevent_blendevent_music_switchevent_music_segmentevent_music_playlistevent_actor_mixergrim_events_configscript_pathύCUR_SETTINGSϊREAD_FROMϛtable_to_create_origs_jsonϏORIG_CFG_TABLEό(for state)(for state)(for state)(for state)kvnew_valuetable_to_create_events_jsonϑEVENTS_CFG_TABLEό(for state)Ō(for state)Ō(for state)Ō(for state)łk‚vŠnew_value_ENV  DB8DDGjsonencodeioopen.jsonw+writecloseobjpathnamefinal_json_datajson_fileerr_ENV R€8 D<*<8 D /~5 D<5< D  98<8D8 ~/8 8HG,stringsub"find^%b""tableinsertassertlinesepresposctxt‡startpendpstartpendpぅ_ENV €8 DK D5 D<  D   D8   DDLM6Fpairsformattingstringrep tostring: typetableMsgWSHAREDtprinttblindent(for state)(for state)(for state)(for state)kv_ENV4ʂ! 83B   DB8 5    DB8~D 5 8 5 8 5  5 "Hstringsub"match[%{%[] [%}%]], ~/ɁH counttabbret(for state)(for state)(for state)iraw_json·IndentΌpretty_json·indentΏoutside_quotesΌ(for state)̌(for state)̌(for state)̂i˅charˁ_ENV F8 DB8 D<888FGreaperGetProjExtStateprojectHasExtStateGetExtStatedefaultdefault_settingssectionkeyretvalvalret_nilval_ENV4   <8<8<8= 8  Ƀ  ,΁  grim_settingsreaperMarkProjectDirtyShowMessageBoxSettings written. Please save the project.Settings StoredMain_OnCommandSettings are set as global.WSHAREDGenerateOriginalsAndEventsConfig_JSON  D8 DGreaperSetProjExtStateSetExtStatesectionkeyvalueto_project_ENVsettingskeyssectionto_projectscript_pathSaveSettingall_settings(for state)(for state)(for state)ikeyval_ENV  DB8 DRJ  8     8  8    I F FGWSHAREDGetSettingDEF_SETTINGSINI_SECTION_NAMEgrim_settingsParseCSVLine SETTINGS_KEYStypenumbertonumberall_settingsread_fromall_parsedret(for state)(for state)(for state)ikey_ENV reaperShowMessageBoxAre you sure? All project settings will be lost. You cannot undo this change!WARNINGSetProjExtStatecur_settingsread_fromWSHAREDGetAllSettingssection_ENV0247 &) %((+!Ȁ_ENV