73.VMjLg.D....OPwTUGkjSSQUPTUDHig1WvziHw3BLh.Ra0QWYeMFZeASOh.iHfLFZeESOhDiKvHBHsUGck80Xn8UL8HBLh7hO..
73.VMjLg.D....OPwTUGkjSSQUPTUDHig1WvziHw3BLh.Ra0QWYeMFZeASOh.iHfLFZeESOhDiKvHBHsUGck80Xn8UL8HBLh7hO..
1130.3ocaX1taZiDFEN2C6MP27+l0i+1qZqDLPXiTCfBzzehnDmFTYwQAi1l69ER779bno+y73ONywv7Li3Ve7e90+3ry9vzO+kQWMd17dyG9N+CK2tsdiax91G229wyitHJON67.OFtSvIBtr.dJb4pyflnOkbgKOjBvoJuDNvJApCbWDm3Dtzzbcn6jppXopk5f2Ic8jmiz1Jc36r55tH572c85siaZqe4M9gOs7mu9oWN27mVtc2iM6p655r1lG6sYywqXW2MLqc8pe77QR2i+M7aq2zrZc6yg2WuOdwQ7jsKh5t1AeClKv.E2gFJWVRfAJsCcInrNzH4NyCLPEcndxkUFXfp5P80ganC8EVnC926LVLcEXhUVXozVfYVcgka8EVAEFXo0XXUTYCFGYcFliRCL1JMrPW7QFJ05LrPSF.J2ZLrPQFBJTiKAUY00XIgRLBjyJKrPE5AJwpJrPE5CJz.u08jbqnvBMX.nRqnvBUXngRCM3RPNqnvBMXDnDqnvBMnGnLqnvBUnOnPC7LEqzJJrPCFvztHqnvBUXHnPCtDThUTXgFLBTlUTXgFzCTgUTXgJzGTnA9DSRfZBlol.gZBlol.YpIPnlfYpIPnlfYpIPnlLVgYl.YhoTCgWBlok.gUBlIk.YNIPnjfYFIPHjLVo4i.gNBlYi.YxnLCgLBlIi.gLBlIi.YxHPHiLVkIi.gLBlIi.gLBlIi.YxnbCgLBlIi.gLBlIixY8MyFILzQBz7QBCgj.MijvPIIPyIILSJU.Cqj.MsDLGdIAZhIgYlIggZRflaRXHmDnYmDF5IAZ9IgYBpR1OAFJAZJJggiRfljRXlkRXnoDn4oDVnKcamT2zGaqDZXqmyVsbS8c+9632ctWtuW2+Z.dcycgcuN0GdQ4iriLomO1Nx7C9T6HapjO2Nx90luzNphmrDBo3HFG43HHGI4HJGY4HL9p2GSZwRmHM1BlOlzhIsXRKlzhIsXRKgzRHsD4UHokPZr6HeBokPZIjVBokRZojVJokJeiQZojVJowFW7ojVJokQZYjVFokQZYxOPHsLRKizxHM1SgOmzxIsbRKmzxIsb42ijVNokSZ4jVAowx89BRqfzJHsBRqP94OoUPZEjVIoURZkjFqD6KIsRRqjzJkYajVIoUQZUjVEoUQZUjFKR5qHsJRqRlbqytko2Qx76HYBdjLCORlhGIywijI4Qxr7HYZdjj6IZEIWUrnlEUsntEUtn1EUuH9EmHXbwpOSxUbLNQx3DKiSzLrtvz0sqd3a0auKrN38s0O01re0Cc+u.W2rs4yM+W8t1Ia2XqBb.9Oq+9CmR6eP7+iWW44Mj6uWQ+Zpu.OMZ6Ra177af9lssO0rYS8S6T7gkb95C01+0wKraa1r+eqUxr86ZWtNLDmLyOc4wQyxPMdZ82Wre8wg1gy9k4ilb03QKNbYK5MXvMCmMawzdymO7lwe77e47WMcQuwCVLcxMyOrhXbwEGdbW396pnH24+0mN6+0mrzOG
//$<AutoDeclare>
// DO NOT EDIT THIS SECTION MANUALLY
Var
MIDIin : MidiInBlock
OSC_HEART_BEAT_LED : Widget
RME_BUS_CHANGE_RATE : Widget
AUTO_BUS_CHANGE_BUTTON : Widget
FIRST_STRIP_LABEL : Widget
BUS_LABEL : Widget
//$</AutoDeclare>
i : Integer;
OSC_Heart_Beat : Boolean;
OSC_Heart_Beat_Timer : Ramp;
RME_Bus_Change_Rate_Timer : Ramp;
Initialization
i=0;
OSC_Heart_Beat = False;
// Heart Beat Timer
SetGeneratorOneShot(OSC_Heart_Beat_Timer,False);
SetGeneratorLength(OSC_Heart_Beat_Timer,10000);
SetGeneratorCoarseness(OSC_Heart_Beat_Timer,200);
// Auto REM OSC Bus Change (Input, Playback, Output)
SetGeneratorOneShot(RME_Bus_Change_Rate_Timer,False);
SetGeneratorLength(RME_Bus_Change_Rate_Timer,100000);
SetGeneratorCoarseness(RME_Bus_Change_Rate_Timer,3000);
End
On Activate
var msg : OSCMessage
BUS_LABEL.SetWidgetLabel("Send OSC /1/busInput");
msg.OSC_SetAddress("/1/busInput");
msg.OSC_AppendDoubleArg(1.0);
msg.OSC_Send();
EnableGenerator(OSC_Heart_Beat_Timer, True);
EnableGenerator(RME_Bus_Change_Rate_Timer, True);
SetTimersRunning(true);
End
// OSC Heart Beat LED
On TimePassing(time : integer, magnitude : double) from OSC_Heart_Beat_Timer
If OSC_Heart_Beat
Then
OSC_HEART_BEAT_LED.SetWidgetValue(1.0-OSC_HEART_BEAT_LED.GetWidgetValue());
OSC_Heart_Beat = False;
Else
OSC_HEART_BEAT_LED.SetWidgetValue(0.0);
End
End
// AUTO RME OSC BUS CHANGE RATE SLIDER
On WidgetValueChanged(newValue : double) from RME_BUS_CHANGE_RATE
SetGeneratorCoarseness(RME_Bus_Change_Rate_Timer,ScaleRange(newValue, 3000, 20));
End
// AUTO RME OSC BUS CHANGE
On TimePassing(time : integer, magnitude : double) from RME_Bus_Change_Rate_Timer
var msg : OSCMessage
i=i+1;
If i>2 Then i=0 End
If AUTO_BUS_CHANGE_BUTTON.GetWidgetValue() == 1.0
Then
Select
i == 0 Do
BUS_LABEL.SetWidgetLabel("Send OSC /1/busInput");
msg.OSC_SetAddress("/1/busInput");
msg.OSC_AppendDoubleArg(1.0);
msg.OSC_Send();
i == 1 Do
BUS_LABEL.SetWidgetLabel("Send OSC /1/busPlayback");
msg.OSC_SetAddress("/1/busPlayback");
msg.OSC_AppendDoubleArg(1.0);
msg.OSC_Send();
i == 2 Do
BUS_LABEL.SetWidgetLabel("Send OSC /1/busOutput");
msg.OSC_SetAddress("/1/busOutput");
msg.OSC_AppendDoubleArg(1.0);
msg.OSC_Send();
End
End
End
// OSC RECEIVE CALLBACKS
// L_METER_1 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level1Left"
OSC_Heart_Beat = True;
End
// R_METER_1 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level1Right"
OSC_Heart_Beat = True;
End
// L_METER_2 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level2Left"
OSC_Heart_Beat = True;
End
// R_METER_2 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level2Right"
OSC_Heart_Beat = True;
End
// L_METER_3 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level3Left"
OSC_Heart_Beat = True;
End
// R_METER_3 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level3Right"
OSC_Heart_Beat = True;
End
// L_METER_4 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level4Left"
OSC_Heart_Beat = True;
End
// R_METER_4 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level4Right"
OSC_Heart_Beat = True;
End
// L_METER_5 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level5Left"
OSC_Heart_Beat = True;
End
// R_METER_5 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level5Right"
OSC_Heart_Beat = True;
End
// L_METER_6 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level6Left"
OSC_Heart_Beat = True;
End
// R_METER_6 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level6Right"
OSC_Heart_Beat = True;
End
// L_METER_7 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level7Left"
OSC_Heart_Beat = True;
End
// R_METER_7 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level7Right"
OSC_Heart_Beat = True;
End
// L_METER_8 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level8Left"
OSC_Heart_Beat = True;
End
// R_METER_8 //////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/level8Right"
OSC_Heart_Beat = True;
End
// ROW_1_LABEL_1 ///////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/trackname1"
OSC_Heart_Beat = True;
// To check that TM respond to bus change message
FIRST_STRIP_LABEL.SetWidgetLabel(msg.OSC_GetArgAsString(0));
End
// ROW_1_LABEL_2 ///////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/trackname2"
OSC_Heart_Beat = True;
End
// ROW_1_LABEL_3 ///////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/trackname3"
OSC_Heart_Beat = True;
End
// ROW_1_LABEL_4 ///////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/trackname4"
OSC_Heart_Beat = True;
End
// ROW_1_LABEL_5 ///////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/trackname5"
OSC_Heart_Beat = True;
End
// ROW_1_LABEL_6 ///////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/trackname6"
OSC_Heart_Beat = True;
End
// ROW_1_LABEL_7 ///////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/trackname7"
OSC_Heart_Beat = True;
End
// ROW_1_LABEL_8 ///////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/trackname8"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_1 LABEL /////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/labelS1"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_2 LABEL /////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/labelS2"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_3 LABEL /////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/labelS3"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_4 LABEL /////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/labelS4"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_5 LABEL /////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/labelS5"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_6 LABEL /////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/labelS6"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_7 LABEL /////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/labelS7"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_8 LABEL /////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/labelS8"
OSC_Heart_Beat = True;
End
// KNOB_1 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/pan1"
OSC_Heart_Beat = True;
End
// KNOB_2 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/pan2"
OSC_Heart_Beat = True;
End
// KNOB_3 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/pan3"
OSC_Heart_Beat = True;
End
// KNOB_4 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/pan4"
OSC_Heart_Beat = True;
End
// KNOB_5 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/pan5"
OSC_Heart_Beat = True;
End
// KNOB_6 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/pan6"
OSC_Heart_Beat = True;
End
// KNOB_7 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/pan7"
OSC_Heart_Beat = True;
End
// KNOB_8 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/pan8"
OSC_Heart_Beat = True;
End
// FADER_1 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/volume1"
OSC_Heart_Beat = True;
End
// FADER_2 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/volume2"
OSC_Heart_Beat = True;
End
// FADER_3 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/volume3"
OSC_Heart_Beat = True;
End
// FADER_4 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/volume4"
OSC_Heart_Beat = True;
End
// FADER_5 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/volume5"
OSC_Heart_Beat = True;
End
// FADER_6 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/volume6"
OSC_Heart_Beat = True;
End
// FADER_7 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/volume7"
OSC_Heart_Beat = True;
End
// FADER_8 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/volume8"
OSC_Heart_Beat = True;
End
// FADER_M //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/mastervolume"
OSC_Heart_Beat = True;
End
// SEL_BUTTON_1 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/select/1/1"
OSC_Heart_Beat = True;
End
// SEL_BUTTON_2 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/select/1/2"
OSC_Heart_Beat = True;
End
// SEL_BUTTON_3 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/select/1/3"
OSC_Heart_Beat = True;
End
// SEL_BUTTON_4 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/select/1/4"
OSC_Heart_Beat = True;
End
// SEL_BUTTON_5 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/select/1/5"
OSC_Heart_Beat = True;
End
// SEL_BUTTON_6 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/select/1/6"
OSC_Heart_Beat = True;
End
// SEL_BUTTON_7 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/select/1/7"
OSC_Heart_Beat = True;
End
// SEL_BUTTON_8 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/select/1/8"
OSC_Heart_Beat = True;
End
// MUTE_BUTTON_1 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/mute/1/1"
OSC_Heart_Beat = True;
End
// MUTE_BUTTON_2 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/mute/1/2"
OSC_Heart_Beat = True;
End
// MUTE_BUTTON_3 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/mute/1/3"
OSC_Heart_Beat = True;
End
// MUTE_BUTTON_4 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/mute/1/4"
OSC_Heart_Beat = True;
End
// MUTE_BUTTON_5 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/mute/1/5"
OSC_Heart_Beat = True;
End
// MUTE_BUTTON_6 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/mute/1/6"
OSC_Heart_Beat = True;
End
// MUTE_BUTTON_7 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/mute/1/7"
OSC_Heart_Beat = True;
End
// MUTE_BUTTON_8 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/mute/1/8"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_1 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/solo/1/1"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_2 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/solo/1/2"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_3 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/solo/1/3"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_4 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/solo/1/4"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_5 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/solo/1/5"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_6 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/solo/1/6"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_7 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/solo/1/7"
OSC_Heart_Beat = True;
End
// SOLO_BUTTON_8 //////////////////////////////////////////////////////////////
On OSCMessageReceived(msg : OSCMessage) Matching "/1/solo/1/8"
OSC_Heart_Beat = True;
End
73.VMjLg.D....OPwTUGkjSSQUPTUDHig1WvziHw3BLh.Ra0QWYeMFZeASOh.iHfLFZeESOhDiKvHBHsUGck80Xn8UL8HBLh7hO..
73.VMjLg.D....OPwTUGkjSSQUPTUDHig1WvziHw3BLh.Ra0QWYeMFZeASOh.iHfLFZeESOhDiKvHBHsUGck80Xn8UL8HBLh7hO..
1130.3ocaX1taZiDFEN2C6MP27+l0i+1qZqDLPXiTCfBzzehnDmFTYwQAi1l69ER779bno+y73ONywv7Li3Ve7e90+3ry9vzO+kQWMd17dyG9N+CK2tsdiax91G229wyitHJON67.OFtSvIBtr.dJb4pyflnOkbgKOjBvoJuDNvJApCbWDm3Dtzzbcn6jppXopk5f2Ic8jmiz1Jc36r55tH572c85siaZqe4M9gOs7mu9oWN27mVtc2iM6p655r1lG6sYywqXW2MLqc8pe77QR2i+M7aq2zrZc6yg2WuOdwQ7jsKh5t1AeClKv.E2gFJWVRfAJsCcInrNzH4NyCLPEcndxkUFXfp5P80ganC8EVnC926LVLcEXhUVXozVfYVcgka8EVAEFXo0XXUTYCFGYcFliRCL1JMrPW7QFJ05LrPSF.J2ZLrPQFBJTiKAUY00XIgRLBjyJKrPE5AJwpJrPE5CJz.u08jbqnvBMX.nRqnvBUXngRCM3RPNqnvBMXDnDqnvBMnGnLqnvBUnOnPC7LEqzJJrPCFvztHqnvBUXHnPCtDThUTXgFLBTlUTXgFzCTgUTXgJzGTnA9DSRfZBlol.gZBlol.YpIPnlfYpIPnlfYpIPnlLVgYl.YhoTCgWBlok.gUBlIk.YNIPnjfYFIPHjLVo4i.gNBlYi.YxnLCgLBlIi.gLBlIi.YxHPHiLVkIi.gLBlIi.gLBlIi.YxnbCgLBlIi.gLBlIixY8MyFILzQBz7QBCgj.MijvPIIPyIILSJU.Cqj.MsDLGdIAZhIgYlIggZRflaRXHmDnYmDF5IAZ9IgYBpR1OAFJAZJJggiRfljRXlkRXnoDn4oDVnKcamT2zGaqDZXqmyVsbS8c+9632ctWtuW2+Z.dcycgcuN0GdQ4iriLomO1Nx7C9T6HapjO2Nx90luzNphmrDBo3HFG43HHGI4HJGY4HL9p2GSZwRmHM1BlOlzhIsXRKlzhIsXRKgzRHsD4UHokPZr6HeBokPZIjVBokRZojVJokJeiQZojVJowFW7ojVJokQZYjVFokQZYxOPHsLRKizxHM1SgOmzxIsbRKmzxIsb42ijVNokSZ4jVAowx89BRqfzJHsBRqP94OoUPZEjVIoURZkjFqD6KIsRRqjzJkYajVIoUQZUjVEoUQZUjFKR5qHsJRqRlbqytko2Qx76HYBdjLCORlhGIywijI4Qxr7HYZdjj6IZEIWUrnlEUsntEUtn1EUuH9EmHXbwpOSxUbLNQx3DKiSzLrtvz0sqd3a0auKrN38s0O01re0Cc+u.W2rs4yM+W8t1Ia2XqBb.9Oq+9CmR6eP7+iWW44Mj6uWQ+Zpu.OMZ6Ra177af9lssO0rYS8S6T7gkb95C01+0wKraa1r+eqUxr86ZWtNLDmLyOc4wQyxPMdZ82Wre8wg1gy9k4ilb03QKNbYK5MXvMCmMawzdymO7lwe77e47WMcQuwCVLcxMyOrhXbwEGdbW396pnH24+0mN6+0mrzOG