From 47ab7aa8850618882c81caa58b6f2dd7f44871c0 Mon Sep 17 00:00:00 2001 From: jules Date: Thu, 28 Jan 2016 16:14:49 +0000 Subject: [PATCH] Added a new example project: Networked graphics demo. --- .../Demo/Builds/Android/AndroidManifest.xml | 3 +- examples/Demo/JuceDemo.jucer | 5 +- .../Builds/Android/AndroidManifest.xml | 3 +- examples/MidiTest/MidiTest.jucer | 2 +- .../Builds/LinuxMakefile/Makefile | 166 + .../Builds/MacOSX/Icon.icns | Bin 0 -> 44836 bytes .../Builds/MacOSX/Info.plist | 27 + .../project.pbxproj | 2275 ++++++++++++ .../Builds/MacOSX/RecentFilesMenuTemplate.nib | Bin 0 -> 2842 bytes .../JUCE Network Graphics Demo.sln | 19 + .../JUCE Network Graphics Demo.vcxproj | 1838 ++++++++++ ...JUCE Network Graphics Demo.vcxproj.filters | 3137 +++++++++++++++++ .../Builds/VisualStudio2013/icon.ico | Bin 0 -> 33550 bytes .../Builds/VisualStudio2013/resources.rc | 32 + .../NetworkGraphicsDemo/Builds/iOS/Icon.icns | Bin 0 -> 44836 bytes .../NetworkGraphicsDemo/Builds/iOS/Info.plist | 38 + .../project.pbxproj | 2283 ++++++++++++ .../AppIcon.appiconset/Contents.json | 128 + .../AppIcon.appiconset/Icon-29.png | Bin 0 -> 1896 bytes .../AppIcon.appiconset/Icon-29@2x.png | Bin 0 -> 4596 bytes .../AppIcon.appiconset/Icon-29@3x.png | Bin 0 -> 6999 bytes .../AppIcon.appiconset/Icon-60@2x.png | Bin 0 -> 10980 bytes .../AppIcon.appiconset/Icon-72.png | Bin 0 -> 4864 bytes .../AppIcon.appiconset/Icon-72@2x.png | Bin 0 -> 10311 bytes .../AppIcon.appiconset/Icon-76.png | Bin 0 -> 5558 bytes .../AppIcon.appiconset/Icon-76@2x.png | Bin 0 -> 11395 bytes .../AppIcon.appiconset/Icon-83.5@2x.png | Bin 0 -> 13512 bytes .../AppIcon.appiconset/Icon-@3x.png | Bin 0 -> 15442 bytes .../AppIcon.appiconset/Icon-Small-1.png | Bin 0 -> 1896 bytes .../AppIcon.appiconset/Icon-Small-50.png | Bin 0 -> 3628 bytes .../AppIcon.appiconset/Icon-Small-50@2x.png | Bin 0 -> 8693 bytes .../AppIcon.appiconset/Icon-Small.png | Bin 0 -> 1896 bytes .../AppIcon.appiconset/Icon-Small@2x-1.png | Bin 0 -> 4596 bytes .../AppIcon.appiconset/Icon-Small@2x.png | Bin 0 -> 4596 bytes .../AppIcon.appiconset/Icon-Small@3x.png | Bin 0 -> 6999 bytes .../AppIcon.appiconset/Icon-Spotlight-40.png | Bin 0 -> 2453 bytes .../Icon-Spotlight-40@2x-1.png | Bin 0 -> 5454 bytes .../Icon-Spotlight-40@2x.png | Bin 0 -> 5454 bytes .../Icon-Spotlight-40@3x.png | Bin 0 -> 10980 bytes .../AppIcon.appiconset/Icon.png | Bin 0 -> 4434 bytes .../AppIcon.appiconset/Icon@2x.png | Bin 0 -> 10319 bytes .../LaunchImage.launchimage/Contents.json | 57 + .../LaunchImage-ipad-landscape-1x.png | Bin 0 -> 4904 bytes .../LaunchImage-ipad-landscape-2x.png | Bin 0 -> 15969 bytes .../LaunchImage-ipad-portrait-1x.png | Bin 0 -> 5350 bytes .../LaunchImage-ipad-portrait-2x.png | Bin 0 -> 16897 bytes .../LaunchImage-iphone-2x.png | Bin 0 -> 4542 bytes .../LaunchImage-iphone-retina4.png | Bin 0 -> 5356 bytes .../JuceLibraryCode/AppConfig.h | 191 + .../JuceLibraryCode/BinaryData.cpp | 683 ++++ .../JuceLibraryCode/BinaryData.h | 26 + .../JuceLibraryCode/JuceHeader.h | 48 + .../JuceLibraryCode/ReadMe.txt | 12 + .../juce_audio_basics/juce_audio_basics.h | 4 + .../juce_audio_devices/juce_audio_devices.h | 4 + .../juce_audio_formats/juce_audio_formats.h | 4 + .../juce_audio_processors.h | 4 + .../juce_audio_utils/juce_audio_utils.h | 4 + .../modules/juce_core/juce_core.h | 4 + .../juce_cryptography/juce_cryptography.h | 4 + .../juce_data_structures.h | 4 + .../modules/juce_events/juce_events.h | 4 + .../modules/juce_graphics/juce_graphics.h | 4 + .../modules/juce_gui_basics/juce_gui_basics.h | 4 + .../modules/juce_gui_extra/juce_gui_extra.h | 4 + .../modules/juce_opengl/juce_opengl.h | 4 + .../modules/juce_osc/juce_osc.h | 4 + .../NetworkGraphicsDemo.jucer | 162 + examples/NetworkGraphicsDemo/README.txt | 39 + examples/NetworkGraphicsDemo/Source/Demos.h | 504 +++ examples/NetworkGraphicsDemo/Source/Main.cpp | 163 + .../Source/MasterComponent.h | 416 +++ .../NetworkGraphicsDemo/Source/SharedCanvas.h | 526 +++ .../Source/SlaveComponent.h | 221 ++ .../NetworkGraphicsDemo/Source/juce_icon.png | Bin 0 -> 45854 bytes examples/OSCReceiver/OSCReceiver.jucer | 2 +- examples/OSCSender/OSCSender.jucer | 2 +- 77 files changed, 13057 insertions(+), 7 deletions(-) create mode 100644 examples/NetworkGraphicsDemo/Builds/LinuxMakefile/Makefile create mode 100644 examples/NetworkGraphicsDemo/Builds/MacOSX/Icon.icns create mode 100644 examples/NetworkGraphicsDemo/Builds/MacOSX/Info.plist create mode 100644 examples/NetworkGraphicsDemo/Builds/MacOSX/JUCE Network Graphics Demo.xcodeproj/project.pbxproj create mode 100644 examples/NetworkGraphicsDemo/Builds/MacOSX/RecentFilesMenuTemplate.nib create mode 100644 examples/NetworkGraphicsDemo/Builds/VisualStudio2013/JUCE Network Graphics Demo.sln create mode 100644 examples/NetworkGraphicsDemo/Builds/VisualStudio2013/JUCE Network Graphics Demo.vcxproj create mode 100644 examples/NetworkGraphicsDemo/Builds/VisualStudio2013/JUCE Network Graphics Demo.vcxproj.filters create mode 100644 examples/NetworkGraphicsDemo/Builds/VisualStudio2013/icon.ico create mode 100644 examples/NetworkGraphicsDemo/Builds/VisualStudio2013/resources.rc create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/Icon.icns create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/Info.plist create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo.xcodeproj/project.pbxproj create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Contents.json create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-29.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-29@2x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-29@3x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-60@2x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-72.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-72@2x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-76.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-76@2x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-83.5@2x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-@3x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Small-1.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Small-50.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Small-50@2x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Small.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Small@2x-1.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Small@2x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Small@3x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Spotlight-40.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Spotlight-40@2x-1.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Spotlight-40@2x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Spotlight-40@3x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon@2x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/LaunchImage.launchimage/Contents.json create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/LaunchImage.launchimage/LaunchImage-ipad-landscape-1x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/LaunchImage.launchimage/LaunchImage-ipad-landscape-2x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/LaunchImage.launchimage/LaunchImage-ipad-portrait-1x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/LaunchImage.launchimage/LaunchImage-ipad-portrait-2x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/LaunchImage.launchimage/LaunchImage-iphone-2x.png create mode 100644 examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/LaunchImage.launchimage/LaunchImage-iphone-retina4.png create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/AppConfig.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/BinaryData.cpp create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/BinaryData.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/JuceHeader.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/ReadMe.txt create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_basics/juce_audio_basics.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_devices/juce_audio_devices.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_formats/juce_audio_formats.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_processors/juce_audio_processors.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_utils/juce_audio_utils.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_core/juce_core.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_cryptography/juce_cryptography.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_data_structures/juce_data_structures.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_events/juce_events.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_graphics/juce_graphics.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_gui_basics/juce_gui_basics.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_gui_extra/juce_gui_extra.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_opengl/juce_opengl.h create mode 100644 examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_osc/juce_osc.h create mode 100644 examples/NetworkGraphicsDemo/NetworkGraphicsDemo.jucer create mode 100644 examples/NetworkGraphicsDemo/README.txt create mode 100644 examples/NetworkGraphicsDemo/Source/Demos.h create mode 100644 examples/NetworkGraphicsDemo/Source/Main.cpp create mode 100644 examples/NetworkGraphicsDemo/Source/MasterComponent.h create mode 100644 examples/NetworkGraphicsDemo/Source/SharedCanvas.h create mode 100644 examples/NetworkGraphicsDemo/Source/SlaveComponent.h create mode 100644 examples/NetworkGraphicsDemo/Source/juce_icon.png diff --git a/examples/Demo/Builds/Android/AndroidManifest.xml b/examples/Demo/Builds/Android/AndroidManifest.xml index 4e004d5427..dd4c323f55 100644 --- a/examples/Demo/Builds/Android/AndroidManifest.xml +++ b/examples/Demo/Builds/Android/AndroidManifest.xml @@ -8,7 +8,8 @@ - + diff --git a/examples/Demo/JuceDemo.jucer b/examples/Demo/JuceDemo.jucer index e822ce2233..0c913a9588 100644 --- a/examples/Demo/JuceDemo.jucer +++ b/examples/Demo/JuceDemo.jucer @@ -172,7 +172,8 @@ androidKeyStore="${user.home}/.android/debug.keystore" androidKeyStorePass="android" androidKeyAlias="androiddebugkey" androidKeyAliasPass="android" androidMicNeeded="1" bigIcon="xycKOk" androidCpp11="1" smallIcon="BvyE0d" - androidVersionCode="1" androidBluetoothNeeded="0" androidTheme="@android:style/Theme.NoTitleBar"> + androidVersionCode="1" androidBluetoothNeeded="0" androidTheme="@android:style/Theme.NoTitleBar" + androidScreenOrientation="unspecified"> @@ -202,7 +203,7 @@ androidKeyStorePass="android" androidKeyAlias="androiddebugkey" androidKeyAliasPass="android" androidCpp11="1" targetFolder="Builds/AndroidStudio" androidSDKPath="" androidNDKPath="" androidBluetoothNeeded="1" - bigIcon="BvyE0d"> + bigIcon="BvyE0d" androidScreenOrientation="unspecified"> diff --git a/examples/MidiTest/Builds/Android/AndroidManifest.xml b/examples/MidiTest/Builds/Android/AndroidManifest.xml index 657fec4506..da4cd03391 100644 --- a/examples/MidiTest/Builds/Android/AndroidManifest.xml +++ b/examples/MidiTest/Builds/Android/AndroidManifest.xml @@ -10,7 +10,8 @@ - + diff --git a/examples/MidiTest/MidiTest.jucer b/examples/MidiTest/MidiTest.jucer index cc432f0fde..01a3b3a280 100644 --- a/examples/MidiTest/MidiTest.jucer +++ b/examples/MidiTest/MidiTest.jucer @@ -104,7 +104,7 @@ androidKeyStorePass="android" androidKeyAlias="androiddebugkey" androidKeyAliasPass="android" androidCpp11="1" androidSDKPath="" androidNDKPath="" androidMicNeeded="1" androidOtherPermissions="" - androidBluetoothNeeded="1"> + androidBluetoothNeeded="1" androidScreenOrientation="unspecified"> diff --git a/examples/NetworkGraphicsDemo/Builds/LinuxMakefile/Makefile b/examples/NetworkGraphicsDemo/Builds/LinuxMakefile/Makefile new file mode 100644 index 0000000000..e8ee94ee54 --- /dev/null +++ b/examples/NetworkGraphicsDemo/Builds/LinuxMakefile/Makefile @@ -0,0 +1,166 @@ +# Automatically generated makefile, created by the Introjucer +# Don't edit this file! Your changes will be overwritten when you re-save the Introjucer project! + +# (this disables dependency generation if multiple architectures are set) +DEPFLAGS := $(if $(word 2, $(TARGET_ARCH)), , -MMD) + +ifndef CONFIG + CONFIG=Debug +endif + +ifeq ($(CONFIG),Debug) + BINDIR := build + LIBDIR := build + OBJDIR := build/intermediate/Debug + OUTDIR := build + + ifeq ($(TARGET_ARCH),) + TARGET_ARCH := -march=native + endif + + CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCER_LINUX_MAKE_6D53C8B4=1" -D "JUCE_APP_VERSION=1.0.0" -D "JUCE_APP_VERSION_HEX=0x10000" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode -I ../../../../modules + CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 + CXXFLAGS += $(CFLAGS) -std=c++11 + LDFLAGS += $(TARGET_ARCH) -L$(BINDIR) -L$(LIBDIR) -L/usr/X11R6/lib/ -lGL -lX11 -lXext -lXinerama -lasound -ldl -lfreetype -lpthread -lrt + + TARGET := JUCE\ Network\ Graphics\ Demo + BLDCMD = $(CXX) -o $(OUTDIR)/$(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(TARGET_ARCH) + CLEANCMD = rm -rf $(OUTDIR)/$(TARGET) $(OBJDIR) +endif + +ifeq ($(CONFIG),Release) + BINDIR := build + LIBDIR := build + OBJDIR := build/intermediate/Release + OUTDIR := build + + ifeq ($(TARGET_ARCH),) + TARGET_ARCH := -march=native + endif + + CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "NDEBUG=1" -D "JUCER_LINUX_MAKE_6D53C8B4=1" -D "JUCE_APP_VERSION=1.0.0" -D "JUCE_APP_VERSION_HEX=0x10000" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode -I ../../../../modules + CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -O3 + CXXFLAGS += $(CFLAGS) -std=c++11 + LDFLAGS += $(TARGET_ARCH) -L$(BINDIR) -L$(LIBDIR) -fvisibility=hidden -L/usr/X11R6/lib/ -lGL -lX11 -lXext -lXinerama -lasound -ldl -lfreetype -lpthread -lrt + + TARGET := JUCE\ Network\ Graphics\ Demo + BLDCMD = $(CXX) -o $(OUTDIR)/$(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(TARGET_ARCH) + CLEANCMD = rm -rf $(OUTDIR)/$(TARGET) $(OBJDIR) +endif + +OBJECTS := \ + $(OBJDIR)/Main_90ebc5c2.o \ + $(OBJDIR)/BinaryData_ce4232d4.o \ + $(OBJDIR)/juce_audio_basics_399a455e.o \ + $(OBJDIR)/juce_audio_devices_c1c9ba9c.o \ + $(OBJDIR)/juce_audio_formats_f04b043c.o \ + $(OBJDIR)/juce_audio_processors_eb9ae116.o \ + $(OBJDIR)/juce_audio_utils_cf18005c.o \ + $(OBJDIR)/juce_core_1ee54a40.o \ + $(OBJDIR)/juce_cryptography_3b1f489a.o \ + $(OBJDIR)/juce_data_structures_84790dfc.o \ + $(OBJDIR)/juce_events_584896b4.o \ + $(OBJDIR)/juce_graphics_f9afc18.o \ + $(OBJDIR)/juce_gui_basics_90929794.o \ + $(OBJDIR)/juce_gui_extra_b81d9e1c.o \ + $(OBJDIR)/juce_opengl_1890bee0.o \ + $(OBJDIR)/juce_osc_72ef0f3c.o \ + +.PHONY: clean + +$(OUTDIR)/$(TARGET): $(OBJECTS) $(RESOURCES) + @echo Linking JUCE Network Graphics Demo + -@mkdir -p $(BINDIR) + -@mkdir -p $(LIBDIR) + -@mkdir -p $(OUTDIR) + @$(BLDCMD) + +clean: + @echo Cleaning JUCE Network Graphics Demo + @$(CLEANCMD) + +strip: + @echo Stripping JUCE Network Graphics Demo + -@strip --strip-unneeded $(OUTDIR)/$(TARGET) + +$(OBJDIR)/Main_90ebc5c2.o: ../../Source/Main.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling Main.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/BinaryData_ce4232d4.o: ../../JuceLibraryCode/BinaryData.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling BinaryData.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_audio_basics_399a455e.o: ../../../../modules/juce_audio_basics/juce_audio_basics.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_audio_basics.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_audio_devices_c1c9ba9c.o: ../../../../modules/juce_audio_devices/juce_audio_devices.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_audio_devices.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_audio_formats_f04b043c.o: ../../../../modules/juce_audio_formats/juce_audio_formats.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_audio_formats.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_audio_processors_eb9ae116.o: ../../../../modules/juce_audio_processors/juce_audio_processors.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_audio_processors.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_audio_utils_cf18005c.o: ../../../../modules/juce_audio_utils/juce_audio_utils.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_audio_utils.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_core_1ee54a40.o: ../../../../modules/juce_core/juce_core.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_core.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_cryptography_3b1f489a.o: ../../../../modules/juce_cryptography/juce_cryptography.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_cryptography.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_data_structures_84790dfc.o: ../../../../modules/juce_data_structures/juce_data_structures.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_data_structures.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_events_584896b4.o: ../../../../modules/juce_events/juce_events.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_events.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_graphics_f9afc18.o: ../../../../modules/juce_graphics/juce_graphics.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_graphics.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_gui_basics_90929794.o: ../../../../modules/juce_gui_basics/juce_gui_basics.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_gui_basics.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_gui_extra_b81d9e1c.o: ../../../../modules/juce_gui_extra/juce_gui_extra.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_gui_extra.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_opengl_1890bee0.o: ../../../../modules/juce_opengl/juce_opengl.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_opengl.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_osc_72ef0f3c.o: ../../../../modules/juce_osc/juce_osc.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_osc.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +-include $(OBJECTS:%.o=%.d) diff --git a/examples/NetworkGraphicsDemo/Builds/MacOSX/Icon.icns b/examples/NetworkGraphicsDemo/Builds/MacOSX/Icon.icns new file mode 100644 index 0000000000000000000000000000000000000000..efb55fc0040303a5e9be058d176653a8a10a2e88 GIT binary patch literal 44836 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 z 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 literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/MacOSX/Info.plist b/examples/NetworkGraphicsDemo/Builds/MacOSX/Info.plist new file mode 100644 index 0000000000..a093b0cd36 --- /dev/null +++ b/examples/NetworkGraphicsDemo/Builds/MacOSX/Info.plist @@ -0,0 +1,27 @@ + + + + + + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + Icon.icns + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleName + JUCE Network Graphics Demo + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0.0 + CFBundleVersion + 1.0.0 + NSHumanReadableCopyright + + NSHighResolutionCapable + + + diff --git a/examples/NetworkGraphicsDemo/Builds/MacOSX/JUCE Network Graphics Demo.xcodeproj/project.pbxproj b/examples/NetworkGraphicsDemo/Builds/MacOSX/JUCE Network Graphics Demo.xcodeproj/project.pbxproj new file mode 100644 index 0000000000..2e0b241336 --- /dev/null +++ b/examples/NetworkGraphicsDemo/Builds/MacOSX/JUCE Network Graphics Demo.xcodeproj/project.pbxproj @@ -0,0 +1,2275 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + + 80EE2C27B466BAFD83881D3F = {isa = PBXBuildFile; fileRef = 2E13A899F4E3C99054A3656F; }; + C4D6C466C41173D6970553D2 = {isa = PBXBuildFile; fileRef = 9E8129263CD42C6029FC2CAD; }; + BED88ADEA4DC91AA8C810FA8 = {isa = PBXBuildFile; fileRef = 398A945EFD9ED923162982B1; }; + 3C30D7C28C86F4054257DCD5 = {isa = PBXBuildFile; fileRef = C78806A6727F44EACFDED4A5; }; + 67DF295E93E54432043126DF = {isa = PBXBuildFile; fileRef = 6799B056504F9F017998B9E2; }; + CA694B2A73FCF12D7F9E7E49 = {isa = PBXBuildFile; fileRef = 448838BE6E937D450A3C84CE; }; + 80B9F7ED2009922C693B7DD4 = {isa = PBXBuildFile; fileRef = CB82A14817C3E2ABBBBC3864; }; + 77745BF98931B91341FE17F6 = {isa = PBXBuildFile; fileRef = F3292E3563DB7ABB076DB400; }; + B323E5E5FBD5663B21A8E623 = {isa = PBXBuildFile; fileRef = 996E743A20FC78671766BF59; }; + EC14DA30C090DDC62084DB4C = {isa = PBXBuildFile; fileRef = 935CA85EF98714D3A17AE737; }; + 8ECB0767EE340DD83869E37D = {isa = PBXBuildFile; fileRef = EC794872987FEA2E129C589A; }; + 65B2C4ED19229E0EDC8EF993 = {isa = PBXBuildFile; fileRef = 696F7896036B652369517438; }; + 006DF460F8DF66EFFA80D968 = {isa = PBXBuildFile; fileRef = 70F1CAF3C4C561DD81E6AFC1; }; + 987CBD5330E76B404F0D966C = {isa = PBXBuildFile; fileRef = 77C0AC21C1028911123844FC; }; + 9F618C008A503063D10076C4 = {isa = PBXBuildFile; fileRef = 74711D7544168CCAC4969A07; }; + F420418005A79DAF770E7735 = {isa = PBXBuildFile; fileRef = 39BADA2042495195394900F3; }; + 96B6D565C6C5F9159EB6A55F = {isa = PBXBuildFile; fileRef = 44301EEC47F5688D9BC0582E; }; + 76B52030E43D3B5AB6127691 = {isa = PBXBuildFile; fileRef = F756FBC7A6836696BCADD2B4; }; + 400043FD261C86FBBC627B22 = {isa = PBXBuildFile; fileRef = 814EF15FC580DB2A5F426071; }; + A1DF53840C31BE4F53C45FDC = {isa = PBXBuildFile; fileRef = CAD2BDFE8443FE5648EF5A9C; }; + C0034230852C5B299E4E727F = {isa = PBXBuildFile; fileRef = C63EFC8D5E9FDC58BD4A9CA2; }; + 723819DB39E466E20A7F3320 = {isa = PBXBuildFile; fileRef = DD866BA894AC019F86C5F4C9; }; + C9E4DFC6834B1902D7B5ECB5 = {isa = PBXBuildFile; fileRef = A67B57899953E98B2B52FA2C; }; + 12BE09EBD1CD09058C84C052 = {isa = PBXBuildFile; fileRef = 13BEE456E0A7D58819C06B21; }; + 6E0A0DA4E667AC2D4F11E690 = {isa = PBXBuildFile; fileRef = A80E52C517801112E8F19350; }; + 47674ECBB496642ADA2FE208 = {isa = PBXBuildFile; fileRef = 3C02F146BFD3D2C8B0B3D8B8; }; + 5615BFDBF1F361687927B58C = {isa = PBXBuildFile; fileRef = D185AFBBD6B50B5CCC2A9A3D; }; + 2E23D07E4DE9480FB5B4C540 = {isa = PBXBuildFile; fileRef = 556B39875D557171B3E0D68C; }; + B8AF173DBD1F487F943A2FE7 = {isa = PBXBuildFile; fileRef = 71274DD47D3EFC3EB83ED73C; }; + 000265F702986DE8DD932309 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessageSequence.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessageSequence.h"; sourceTree = "SOURCE_ROOT"; }; + 000DAE49A15BE8D4DA5ADA8E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RecentlyOpenedFilesList.h"; path = "../../../../modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.h"; sourceTree = "SOURCE_ROOT"; }; + 000EA162E25BC873954A9E48 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadowEffect.cpp"; path = "../../../../modules/juce_graphics/effects/juce_DropShadowEffect.cpp"; sourceTree = "SOURCE_ROOT"; }; + 001CA7EAF68DA335025FF01E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedXLock.h"; path = "../../../../modules/juce_events/native/juce_ScopedXLock.h"; sourceTree = "SOURCE_ROOT"; }; + 008187B05C0B633EE28ABE56 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_ALSA.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_ALSA.cpp"; sourceTree = "SOURCE_ROOT"; }; + 00B6967A854897C9D379AAF4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeCoordinate.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinate.h"; sourceTree = "SOURCE_ROOT"; }; + 015F1D2D5F78A62C40AD1B67 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedValueSetter.h"; path = "../../../../modules/juce_core/containers/juce_ScopedValueSetter.h"; sourceTree = "SOURCE_ROOT"; }; + 01641AA0EEDDC5059FC28EF9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPairArray.cpp"; path = "../../../../modules/juce_core/text/juce_StringPairArray.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0186D1FA79D760C30575B900 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioThumbnailCache.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnailCache.h"; sourceTree = "SOURCE_ROOT"; }; + 01A0FE7CE574B63A82297143 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PlatformDefs.h"; path = "../../../../modules/juce_core/system/juce_PlatformDefs.h"; sourceTree = "SOURCE_ROOT"; }; + 01E2D0EC4D596AB94D022EA3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_QuickTimeAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_QuickTimeAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 01F6751F1A5EC2C9578F9D65 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileSearchPath.cpp"; path = "../../../../modules/juce_core/files/juce_FileSearchPath.cpp"; sourceTree = "SOURCE_ROOT"; }; + 02181D9B5A755E385CD47FD2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableShape.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableShape.cpp"; sourceTree = "SOURCE_ROOT"; }; + 029E06243E22D19B62C7FAC4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableLayoutResizerBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutResizerBar.h"; sourceTree = "SOURCE_ROOT"; }; + 02B2B5127DF9BF906368E988 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FlacAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_FlacAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 035144F9C35671488A15E9F6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Viewport.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_Viewport.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0368A590FC29803595DF7D62 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CPlusPlusCodeTokeniser.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; + 03C5EFBEA606B1857E2E7E70 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrowButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ArrowButton.h"; sourceTree = "SOURCE_ROOT"; }; + 03CA60ABCF619E81CB165C97 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CPlusPlusCodeTokeniserFunctions.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniserFunctions.h"; sourceTree = "SOURCE_ROOT"; }; + 03CD52285663EB462E66AEDE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableEdgeComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 03F0E358E328911FE44415CC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioTransportSource.cpp"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioTransportSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0402044CF4F834C138AA337F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PathStrokeType.h"; path = "../../../../modules/juce_graphics/geometry/juce_PathStrokeType.h"; sourceTree = "SOURCE_ROOT"; }; + 042DAFB982DBCB0940DAC979 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Memory.h"; path = "../../../../modules/juce_core/memory/juce_Memory.h"; sourceTree = "SOURCE_ROOT"; }; + 0456E3F8B40732E545A844CC = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CoreGraphicsHelpers.h"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 04609F32D6A859ED385DCBE6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedPipe.h"; path = "../../../../modules/juce_core/network/juce_NamedPipe.h"; sourceTree = "SOURCE_ROOT"; }; + 047CB008052CCD126633FB9B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LookAndFeel_V1.cpp"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V1.cpp"; sourceTree = "SOURCE_ROOT"; }; + 04F797332FEC7F3DEAE457B5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLPixelFormat.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLPixelFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 051B1F5CA25863E123C662B0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_android_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0543BDC4AF5B2ABF41749383 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCBundle.h"; path = "../../../../modules/juce_osc/osc/juce_OSCBundle.h"; sourceTree = "SOURCE_ROOT"; }; + 0555BAE6156EAF15CA77A2D8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AppConfig.h; path = ../../JuceLibraryCode/AppConfig.h; sourceTree = "SOURCE_ROOT"; }; + 0566C8771A3278C82D183A98 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDeviceManager.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioDeviceManager.h"; sourceTree = "SOURCE_ROOT"; }; + 057E2AFB89FF0CF0CAA013AF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FilePreviewComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 05C08B8A9AA77D8F0064467A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_IIRFilter.cpp"; path = "../../../../modules/juce_audio_basics/effects/juce_IIRFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 05FD1A2AE03215E9DF92132F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LookAndFeel_V1.h"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V1.h"; sourceTree = "SOURCE_ROOT"; }; + 06753930A82DF7E1BF429914 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CodeEditorComponent.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0679221D71CD972EE07343B5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_String.h"; path = "../../../../modules/juce_core/text/juce_String.h"; sourceTree = "SOURCE_ROOT"; }; + 06E0E9069EB3A4DED12A83DD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Slider.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Slider.h"; sourceTree = "SOURCE_ROOT"; }; + 0833B2844B74E56A7F375B99 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Application.h"; path = "../../../../modules/juce_gui_basics/application/juce_Application.h"; sourceTree = "SOURCE_ROOT"; }; + 084DC67E578B4943704DF6A8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLImage.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLImage.h"; sourceTree = "SOURCE_ROOT"; }; + 085FC01079EE77D52D1ED893 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_AudioCDBurner.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_AudioCDBurner.cpp"; sourceTree = "SOURCE_ROOT"; }; + 08CCA1B6C1824CE73281A769 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Expression.h"; path = "../../../../modules/juce_core/maths/juce_Expression.h"; sourceTree = "SOURCE_ROOT"; }; + 08EF9C1A184B049FA45DF95F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WildcardFileFilter.h"; path = "../../../../modules/juce_core/files/juce_WildcardFileFilter.h"; sourceTree = "SOURCE_ROOT"; }; + 08F0F20CA590351DD32B176E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileOutputStream.h"; path = "../../../../modules/juce_core/files/juce_FileOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 092152EAB569DB7795FD7B2F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ThreadWithProgressWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 09532D678D2C41FEFACA71F3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationBase.h"; path = "../../../../modules/juce_events/messages/juce_ApplicationBase.h"; sourceTree = "SOURCE_ROOT"; }; + 096BB22B9363BAC781C4668D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSampleBuffer.h"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioSampleBuffer.h"; sourceTree = "SOURCE_ROOT"; }; + 096F493E855364B082CA966C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ShapeButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ShapeButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 097E290A4679C103208EF789 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AnimatedPosition.h"; path = "../../../../modules/juce_gui_basics/layout/juce_AnimatedPosition.h"; sourceTree = "SOURCE_ROOT"; }; + 09802FE2689EB8288E554B4B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WildcardFileFilter.cpp"; path = "../../../../modules/juce_core/files/juce_WildcardFileFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0A4955566797EBA0ECE56806 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyMappingEditorComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0AD627D1D2B082D09E1AA078 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TopLevelWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_TopLevelWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 0ADF0DECFCB1DB4D3A847EB5 = {isa = PBXFileReference; lastKnownFileType = image.png; name = "juce_icon.png"; path = "../../Source/juce_icon.png"; sourceTree = "SOURCE_ROOT"; }; + 0B37C06B070C6F069F23A812 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharacterFunctions.h"; path = "../../../../modules/juce_core/text/juce_CharacterFunctions.h"; sourceTree = "SOURCE_ROOT"; }; + 0BAD16A58A9CBB0A2FC3C273 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DropShadower.h"; path = "../../../../modules/juce_gui_basics/misc/juce_DropShadower.h"; sourceTree = "SOURCE_ROOT"; }; + 0C487F069E493BF67537758A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileListComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0C573FF1309CE106DA2D2CF9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_utils.h"; path = "../../../../modules/juce_audio_utils/juce_audio_utils.h"; sourceTree = "SOURCE_ROOT"; }; + 0C58D2236F902CCD34EA4FCA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_CommonFile.cpp"; path = "../../../../modules/juce_core/native/juce_linux_CommonFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0CFDFC8B0EE4F67F3140A95E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_graphics.h"; path = "../../../../modules/juce_graphics/juce_graphics.h"; sourceTree = "SOURCE_ROOT"; }; + 0D6692C87B6EEDFCB658A996 = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Info.plist; sourceTree = "SOURCE_ROOT"; }; + 0DA4C3278F6482DB3E59D9BA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComboBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ComboBox.h"; sourceTree = "SOURCE_ROOT"; }; + 0DB078E2523AD3ABE77A95F6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioChannelSet.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioChannelSet.h"; sourceTree = "SOURCE_ROOT"; }; + 0DBCEADB9A04439E66BE176E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CharacterFunctions.cpp"; path = "../../../../modules/juce_core/text/juce_CharacterFunctions.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0DD52BE61E4DCA9575F5649F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandManager.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandManager.h"; sourceTree = "SOURCE_ROOT"; }; + 0EAE4A004CEB66D275142FCA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioIODeviceType.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODeviceType.h"; sourceTree = "SOURCE_ROOT"; }; + 0F26080D0E46879414836AE2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CompilerSupport.h"; path = "../../../../modules/juce_core/system/juce_CompilerSupport.h"; sourceTree = "SOURCE_ROOT"; }; + 0F98FB16D69403E94F1BB9C7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextDiff.cpp"; path = "../../../../modules/juce_core/text/juce_TextDiff.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0F98FC70765AB9D2566AFD47 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCArgument.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCArgument.cpp"; sourceTree = "SOURCE_ROOT"; }; + 101637AD0747ECC48982FDAA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatReaderSource.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReaderSource.h"; sourceTree = "SOURCE_ROOT"; }; + 1070CD5C289E13B829661610 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LagrangeInterpolator.cpp"; path = "../../../../modules/juce_audio_basics/effects/juce_LagrangeInterpolator.cpp"; sourceTree = "SOURCE_ROOT"; }; + 10D5F9D8D44A252288D19F42 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VST3Common.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_VST3Common.h"; sourceTree = "SOURCE_ROOT"; }; + 10E1C3C331DF35D35508268B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ZipFile.cpp"; path = "../../../../modules/juce_core/zip/juce_ZipFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 10F958EF56CFB17EA747F3B9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AbstractFifo.h"; path = "../../../../modules/juce_core/containers/juce_AbstractFifo.h"; sourceTree = "SOURCE_ROOT"; }; + 111058D736659E73DB065469 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPESynthesiser.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPESynthesiser.h"; sourceTree = "SOURCE_ROOT"; }; + 1140A39FF348973EE6F372CB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Value.cpp"; path = "../../../../modules/juce_data_structures/values/juce_Value.cpp"; sourceTree = "SOURCE_ROOT"; }; + 11561CA1FD46FA08C2EF0C9E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChildProcess.cpp"; path = "../../../../modules/juce_core/threads/juce_ChildProcess.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1172DC1C9E21CAAF0C82687D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WavAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_WavAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 118B1A6119520DC2CCE4E119 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGL_ios.h"; path = "../../../../modules/juce_opengl/native/juce_OpenGL_ios.h"; sourceTree = "SOURCE_ROOT"; }; + 1197F204437B7E10650C45C9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DragAndDropContainer.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1199999650BF539117869187 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseListener.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseListener.h"; sourceTree = "SOURCE_ROOT"; }; + 11FC5BF4D4CE5451BA651132 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandManager.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1204FCBC82EA38A9512D0D81 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileChooserDialogBox.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooserDialogBox.h"; sourceTree = "SOURCE_ROOT"; }; + 123CEDA734678EE95C34463D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MarkerList.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_MarkerList.h"; sourceTree = "SOURCE_ROOT"; }; + 1296A96AEE50FD66957B71C1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AffineTransform.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"; sourceTree = "SOURCE_ROOT"; }; + 12F6DB893E5757C9F3D00F0D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ProgressBar.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ProgressBar.h"; sourceTree = "SOURCE_ROOT"; }; + 1377617053AF07B0E571F77B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReverbAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ReverbAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 13A6B8661E1D605FCD86F1E0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HyperlinkButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_HyperlinkButton.h"; sourceTree = "SOURCE_ROOT"; }; + 13BD4B06D1A341403533186D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCTimeTag.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCTimeTag.cpp"; sourceTree = "SOURCE_ROOT"; }; + 13BEE456E0A7D58819C06B21 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_events.mm"; path = "../../../../modules/juce_events/juce_events.mm"; sourceTree = "SOURCE_ROOT"; }; + 13C50C345BB1AE097DE51F8D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPESynthesiserVoice.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPESynthesiserVoice.cpp"; sourceTree = "SOURCE_ROOT"; }; + 13E0FBE11F1B5028F51D4A83 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileDragAndDropTarget.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_FileDragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 140159E9C38C975949494E5C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LookAndFeel.cpp"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 14340FB465ADE55CB3E9B66A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MenuBarModel.h"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarModel.h"; sourceTree = "SOURCE_ROOT"; }; + 14527382440E68E3F0EB8198 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableHeaderComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableHeaderComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 14B4A539EBA209BC22B91F76 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandInfo.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandInfo.cpp"; sourceTree = "SOURCE_ROOT"; }; + 150135E20D3B4547F1B8A76F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeParallelogram.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeParallelogram.cpp"; sourceTree = "SOURCE_ROOT"; }; + 15AF91E3F446F92E4B2F7093 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCMessage.h"; path = "../../../../modules/juce_osc/osc/juce_OSCMessage.h"; sourceTree = "SOURCE_ROOT"; }; + 15D277FFB993448CDB52E307 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AbstractFifo.cpp"; path = "../../../../modules/juce_core/containers/juce_AbstractFifo.cpp"; sourceTree = "SOURCE_ROOT"; }; + 15EC4D082AC33A2DFBAA8560 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPEInstrument.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEInstrument.h"; sourceTree = "SOURCE_ROOT"; }; + 15FB19A9D4DE60608E5E123A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MessageManager.mm"; path = "../../../../modules/juce_events/native/juce_mac_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; }; + 16A3BFE2C5679BDD49A4F424 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WaitableEvent.h"; path = "../../../../modules/juce_core/threads/juce_WaitableEvent.h"; sourceTree = "SOURCE_ROOT"; }; + 174350B11E9207B7038E2BFA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GenericAudioProcessorEditor.h"; path = "../../../../modules/juce_audio_processors/processors/juce_GenericAudioProcessorEditor.h"; sourceTree = "SOURCE_ROOT"; }; + 174E22634C4ADC7062948B9D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_android_JNIHelpers.h"; path = "../../../../modules/juce_core/native/juce_android_JNIHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 17CBE6045D10290C77948F0C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SHA256.cpp"; path = "../../../../modules/juce_cryptography/hashing/juce_SHA256.cpp"; sourceTree = "SOURCE_ROOT"; }; + 181C1A360C01EFF44A3BB18A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiKeyboardComponent.h"; path = "../../../../modules/juce_audio_utils/gui/juce_MidiKeyboardComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 1989B5707DDA6E738FAABBD0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileFilter.h"; path = "../../../../modules/juce_core/files/juce_FileFilter.h"; sourceTree = "SOURCE_ROOT"; }; + 1A25D684574EDD045683D4E8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyPressMappingSet.h"; path = "../../../../modules/juce_gui_basics/commands/juce_KeyPressMappingSet.h"; sourceTree = "SOURCE_ROOT"; }; + 1A5086FB7B39D1C8FFAE63D9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReferenceCountedArray.h"; path = "../../../../modules/juce_core/containers/juce_ReferenceCountedArray.h"; sourceTree = "SOURCE_ROOT"; }; + 1A593509B099BCDAFE5303E5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessageSequence.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessageSequence.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1A5E7683202DE3D3B911F9C8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CaretComponent.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_CaretComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 1A89B025B5C028C536ED4A8F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChoicePropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_ChoicePropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 1AB81EC2CA06F18202F3049B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NotificationType.h"; path = "../../../../modules/juce_events/messages/juce_NotificationType.h"; sourceTree = "SOURCE_ROOT"; }; + 1ABEE94704EA506C399E9BB7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLContext.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1AC73EEBD03A5926652CB682 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_TextButton.h"; sourceTree = "SOURCE_ROOT"; }; + 1ADD2315C0E364D635A88C2D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterProcessLock.h"; path = "../../../../modules/juce_core/threads/juce_InterProcessLock.h"; sourceTree = "SOURCE_ROOT"; }; + 1ADEA6673C57B57FC0BBCD04 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentBoundsConstrainer.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBoundsConstrainer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1AFAD88BA98AA530A435A680 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileOutputStream.cpp"; path = "../../../../modules/juce_core/files/juce_FileOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1B4E025E8860D906F0ABA692 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_linux_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1B9BCCBA7BA4D87454EC8710 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win_BluetoothMidiDevicePairingDialogue.cpp"; path = "../../../../modules/juce_audio_utils/native/juce_win_BluetoothMidiDevicePairingDialogue.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1BFF9FF8A046E614580B8B78 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentPeer.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ComponentPeer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1C36397644AEF2DC1576C3A6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComboBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ComboBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1C38EDA19B0B3A45BA47CE6E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCMessage.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCMessage.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1C99350395AE046857697B14 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BigInteger.cpp"; path = "../../../../modules/juce_core/maths/juce_BigInteger.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1D0F3060DD65B305A1C0E72A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioParameterBool.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.h"; sourceTree = "SOURCE_ROOT"; }; + 1D153366F6EA459B397CA356 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_AudioUnitPluginFormat.mm"; path = "../../../../modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.mm"; sourceTree = "SOURCE_ROOT"; }; + 1D58402ABF05B2EF162769C7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableHeaderComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableHeaderComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1D68D7036540404EFB82B35D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextEditor.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TextEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1DE2689A8FBB19007E892906 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AudioCDReader.mm"; path = "../../../../modules/juce_audio_devices/native/juce_mac_AudioCDReader.mm"; sourceTree = "SOURCE_ROOT"; }; + 1DE819F8D407705C57EACD26 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ios_Audio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_ios_Audio.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1E206D97A7B91545FE0D27CD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_WASAPI.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_WASAPI.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1ED0FAAEFF9D4A6426E76E89 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_formats.h"; path = "../../../../modules/juce_audio_formats/juce_audio_formats.h"; sourceTree = "SOURCE_ROOT"; }; + 1EE2B1FB37648506A369D269 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GZIPDecompressorInputStream.cpp"; path = "../../../../modules/juce_core/zip/juce_GZIPDecompressorInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1F13AE4603A0990EF106C23D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Synthesiser.h"; path = "../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.h"; sourceTree = "SOURCE_ROOT"; }; + 1F2CA6A50920B655340552D6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioThumbnail.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnail.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1F3F5EE19B8CA78D9513AD94 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LuaCodeTokeniser.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_LuaCodeTokeniser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1F52A06FB3A565B54144FD8A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ConnectedChildProcess.cpp"; path = "../../../../modules/juce_events/interprocess/juce_ConnectedChildProcess.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1F999582FEA88311EC2EBF27 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterprocessConnectionServer.h"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnectionServer.h"; sourceTree = "SOURCE_ROOT"; }; + 1FEF9A01DC5486A9FA1CDF04 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioThumbnailCache.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnailCache.cpp"; sourceTree = "SOURCE_ROOT"; }; + 201270E933BAEFC855FF02FF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PathStrokeType.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_PathStrokeType.cpp"; sourceTree = "SOURCE_ROOT"; }; + 20193027F5E90E62F44027B0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Whirlpool.cpp"; path = "../../../../modules/juce_cryptography/hashing/juce_Whirlpool.cpp"; sourceTree = "SOURCE_ROOT"; }; + 208B3803558F7BECB0A0AA42 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterprocessConnection.h"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnection.h"; sourceTree = "SOURCE_ROOT"; }; + 210B445861AC2BD744D97F6D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF32.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF32.h"; sourceTree = "SOURCE_ROOT"; }; + 21463097F39306018F8C1FC9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FFT.h"; path = "../../../../modules/juce_audio_basics/effects/juce_FFT.h"; sourceTree = "SOURCE_ROOT"; }; + 21530C9C69B792CA80BE9398 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageConvolutionKernel.h"; path = "../../../../modules/juce_graphics/images/juce_ImageConvolutionKernel.h"; sourceTree = "SOURCE_ROOT"; }; + 21AC48EBF734FA48E43F62BE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorGraph.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorGraph.h"; sourceTree = "SOURCE_ROOT"; }; + 21DB75038D3D7619DD53E851 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorEditor.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorEditor.h"; sourceTree = "SOURCE_ROOT"; }; + 2253863C60C8AAB3DBA4B5F1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OutputStream.h"; path = "../../../../modules/juce_core/streams/juce_OutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 22A9BA274F3AD6FAF4331D11 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToggleButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToggleButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2368F4F33C1FA1F250C0606C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ImageComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2373A1F1357D75E328517966 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLFrameBuffer.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLFrameBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 23EC7FFD41859C9725D21B16 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_cryptography/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 23F3CBC829C0363C6C760957 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Base64.cpp"; path = "../../../../modules/juce_core/text/juce_Base64.cpp"; sourceTree = "SOURCE_ROOT"; }; + 24711D9742CB31F36F71A36E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GlowEffect.h"; path = "../../../../modules/juce_graphics/effects/juce_GlowEffect.h"; sourceTree = "SOURCE_ROOT"; }; + 24FD7D015B6C46BDFC98E2DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_SystemStats.mm"; path = "../../../../modules/juce_core/native/juce_mac_SystemStats.mm"; sourceTree = "SOURCE_ROOT"; }; + 251F11F4407E34F0F88AA1A2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_JackAudio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_JackAudio.cpp"; sourceTree = "SOURCE_ROOT"; }; + 25DEDA8C9F94A6C8DFC8E53E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SharedCanvas.h; path = ../../Source/SharedCanvas.h; sourceTree = "SOURCE_ROOT"; }; + 25F7E2E0BF7DF2E71648BFFE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Audio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_android_Audio.cpp"; sourceTree = "SOURCE_ROOT"; }; + 26407477D58D92220A6AA6E8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentAnimator.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentAnimator.cpp"; sourceTree = "SOURCE_ROOT"; }; + 264B51063F7AA584D23B426E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_VST3PluginFormat.cpp"; path = "../../../../modules/juce_audio_processors/format_types/juce_VST3PluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2669CC5C7AE7A916B5F5CF89 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentMovementWatcher.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentMovementWatcher.cpp"; sourceTree = "SOURCE_ROOT"; }; + 268EAE33422B585DF545499A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BlowFish.h"; path = "../../../../modules/juce_cryptography/encryption/juce_BlowFish.h"; sourceTree = "SOURCE_ROOT"; }; + 26B7A212D6DBD337A4F8AB7C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Matrix3D.h"; path = "../../../../modules/juce_opengl/geometry/juce_Matrix3D.h"; sourceTree = "SOURCE_ROOT"; }; + 26DDCC5B563483D67D645398 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioAppComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioAppComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 271E9E19BDC24378E6E73175 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + 276FBDD27027CDB3CDE7A1C3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageConvolutionKernel.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageConvolutionKernel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 27A192427FAA8C466F9D8EB2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FillType.h"; path = "../../../../modules/juce_graphics/colour/juce_FillType.h"; sourceTree = "SOURCE_ROOT"; }; + 27B46B69A1381640C0C14CF6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 27BC9669BDAA9F041FC21837 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileTreeComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 280CB58A46300BC229661DD6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 282B495AB94F47BD60C7E62F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 284179F9F53CAA88CAC51B44 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioVisualiserComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioVisualiserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 28861D0EC5C396B9FFCFF1B3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_EdgeTable.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_EdgeTable.cpp"; sourceTree = "SOURCE_ROOT"; }; + 289B6067D3B3FED5F7A64AB6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LowLevelGraphicsPostScriptRenderer.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2931409E5426C745CB3B6EE6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_ASCII.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_ASCII.h"; sourceTree = "SOURCE_ROOT"; }; + 2A10DFB3A22E8AABF4763F68 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TargetPlatform.h"; path = "../../../../modules/juce_core/system/juce_TargetPlatform.h"; sourceTree = "SOURCE_ROOT"; }; + 2A77EE2209FDF066386F30AD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeEditorComponent.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 2AA07C55625E1ADD22E9A4D5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSubsectionReader.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioSubsectionReader.h"; sourceTree = "SOURCE_ROOT"; }; + 2AAA2414F61ABBBF1C571901 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Socket.h"; path = "../../../../modules/juce_core/network/juce_Socket.h"; sourceTree = "SOURCE_ROOT"; }; + 2ABA2A324D752641AD2EA84D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GroupComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_GroupComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2ACEBF748334BD2B0CBAE26E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileLogger.h"; path = "../../../../modules/juce_core/logging/juce_FileLogger.h"; sourceTree = "SOURCE_ROOT"; }; + 2AF3F242C6AE6B81BEA684EE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableBorderComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableBorderComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2B14736595E3FFC604AFBD7C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Midi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2B27A56579939EAD06DD6061 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_linux_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2C3C1AC071BC4252A33CD5AC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorEditor.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2C8DB3B21316CF58A088AE4B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BooleanPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_BooleanPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 2D4E5BBC19F41BB8512E5E03 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Point.h"; path = "../../../../modules/juce_graphics/geometry/juce_Point.h"; sourceTree = "SOURCE_ROOT"; }; + 2DAA78D998963C52C0DC9AC5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FlacAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_FlacAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 2DAF843B2C0DA27E8741E080 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CachedComponentImage.h"; path = "../../../../modules/juce_gui_basics/components/juce_CachedComponentImage.h"; sourceTree = "SOURCE_ROOT"; }; + 2E03472E7A539A88DE0273A0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioIODevice.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODevice.h"; sourceTree = "SOURCE_ROOT"; }; + 2E0625B5D067CE55D4D7F087 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPESynthesiserBase.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPESynthesiserBase.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2E13A899F4E3C99054A3656F = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = System/Library/Frameworks/Accelerate.framework; sourceTree = SDKROOT; }; + 2E551D5175FA94E0FFBF08F4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextEditorKeyMapper.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_TextEditorKeyMapper.h"; sourceTree = "SOURCE_ROOT"; }; + 2F73502BA5E56A33469D93EC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WavAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_WavAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2FAFDCAFBC5054B61699B4F0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextLayout.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_TextLayout.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2FB4483EADD06BB5F6BFC110 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osx_ObjCHelpers.h"; path = "../../../../modules/juce_core/native/juce_osx_ObjCHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 3020CB57085A70221FC0042D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChildProcess.h"; path = "../../../../modules/juce_core/threads/juce_ChildProcess.h"; sourceTree = "SOURCE_ROOT"; }; + 306D2FC4CE156DB61D67C0E0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SpinLock.h"; path = "../../../../modules/juce_core/threads/juce_SpinLock.h"; sourceTree = "SOURCE_ROOT"; }; + 30B528362C388E5B51DF91D6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_InputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 30D2B2F180671715D1CFAD5E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NormalisableRange.h"; path = "../../../../modules/juce_core/maths/juce_NormalisableRange.h"; sourceTree = "SOURCE_ROOT"; }; + 3121B99F19132789145FDF58 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_DrawableButton.h"; sourceTree = "SOURCE_ROOT"; }; + 3153401B1C69B651D2AD37E5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ShapeButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ShapeButton.h"; sourceTree = "SOURCE_ROOT"; }; + 3180211C7FFE65342212F8DC = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_basics/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 3193E205AA627C635FF236E0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessor.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessor.cpp"; sourceTree = "SOURCE_ROOT"; }; + 32053E605C421DA9F9C406BA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseEvent.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseEvent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3234FA3655EA51C78D5E2D87 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3235BA8BC4542F69C66DF218 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AppleRemote.h"; path = "../../../../modules/juce_gui_extra/misc/juce_AppleRemote.h"; sourceTree = "SOURCE_ROOT"; }; + 32D795DD8B6BBBE5450AF17C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPEZoneLayout.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEZoneLayout.h"; sourceTree = "SOURCE_ROOT"; }; + 32E5AD1B0A329492EDB0D49C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Time.cpp"; path = "../../../../modules/juce_core/time/juce_Time.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3320CAFB079DBFED7E79D33E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageCache.h"; path = "../../../../modules/juce_graphics/images/juce_ImageCache.h"; sourceTree = "SOURCE_ROOT"; }; + 333E5AB794D5FC5A798A285C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ConnectedChildProcess.h"; path = "../../../../modules/juce_events/interprocess/juce_ConnectedChildProcess.h"; sourceTree = "SOURCE_ROOT"; }; + 334E1EA595F4B89AB02E1D2E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ResizableWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 3481CFA2138FAF27F8514E06 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Result.h"; path = "../../../../modules/juce_core/misc/juce_Result.h"; sourceTree = "SOURCE_ROOT"; }; + 34CAFBB1E014F17C6111C716 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PerformanceCounter.h"; path = "../../../../modules/juce_core/time/juce_PerformanceCounter.h"; sourceTree = "SOURCE_ROOT"; }; + 357921A7E994C213A2D768DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SliderPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_SliderPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 357FB6126252FB4FC7551A59 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryInputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_MemoryInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 35A404D8F4164D65C3E4DCC4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImagePreviewComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_ImagePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 35E9781C54B1729BDD73DEC9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Button.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_Button.h"; sourceTree = "SOURCE_ROOT"; }; + 3601DA62C81D9C4FEB9CAA23 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LeakedObjectDetector.h"; path = "../../../../modules/juce_core/memory/juce_LeakedObjectDetector.h"; sourceTree = "SOURCE_ROOT"; }; + 36DB2BF91B5D3D8462CB4AD5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FillType.cpp"; path = "../../../../modules/juce_graphics/colour/juce_FillType.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3737EA20E16E2ACBFB968CD4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertySet.h"; path = "../../../../modules/juce_core/containers/juce_PropertySet.h"; sourceTree = "SOURCE_ROOT"; }; + 382C1DB36E41E2DEB77B11ED = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AiffAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_AiffAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 382D4767A626A3D30826EE1B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativePointPath.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePointPath.h"; sourceTree = "SOURCE_ROOT"; }; + 3913A6C3147F55D7390405B5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemAudioVolume.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_SystemAudioVolume.h"; sourceTree = "SOURCE_ROOT"; }; + 3957E1F6F24F89D6DCB8829E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WeakReference.h"; path = "../../../../modules/juce_core/memory/juce_WeakReference.h"; sourceTree = "SOURCE_ROOT"; }; + 398A945EFD9ED923162982B1 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; }; + 39BADA2042495195394900F3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_basics.mm"; path = "../../../../modules/juce_audio_basics/juce_audio_basics.mm"; sourceTree = "SOURCE_ROOT"; }; + 39E116DC12FD26E3DB3F4DFA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GIFLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_GIFLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 39F7F18157821A256E23B868 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableText.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableText.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3A132DEDF59503D8AEE2E1F8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MessageListener.h"; path = "../../../../modules/juce_events/messages/juce_MessageListener.h"; sourceTree = "SOURCE_ROOT"; }; + 3AE3D7A50A8D7F598DB6F0AE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XMLCodeTokeniser.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_XMLCodeTokeniser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3B92F7E81BAB71A0460668E6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageFileFormat.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageFileFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3BAA4C5AFD5E6AE8B7447E17 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_events.h"; path = "../../../../modules/juce_events/juce_events.h"; sourceTree = "SOURCE_ROOT"; }; + 3BEA5E0CD39AABEAB92B425E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginDirectoryScanner.h"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginDirectoryScanner.h"; sourceTree = "SOURCE_ROOT"; }; + 3C02F146BFD3D2C8B0B3D8B8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_gui_basics.mm"; path = "../../../../modules/juce_gui_basics/juce_gui_basics.mm"; sourceTree = "SOURCE_ROOT"; }; + 3CFD6B00875759345575ECFD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ArrowButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ArrowButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3D7BB39A9FCE43D8EAF6B6CD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedValueSet.h"; path = "../../../../modules/juce_core/containers/juce_NamedValueSet.h"; sourceTree = "SOURCE_ROOT"; }; + 3DD9BA50041192D1F28D87CC = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AsyncUpdater.h"; path = "../../../../modules/juce_events/broadcasters/juce_AsyncUpdater.h"; sourceTree = "SOURCE_ROOT"; }; + 3E313B4096468DD5EE551616 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDataConverters.h"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioDataConverters.h"; sourceTree = "SOURCE_ROOT"; }; + 3E69925DB6558BBAEE5EB41B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WebBrowserComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_WebBrowserComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 3EBDD668B2AAF5F5159D68F2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ListBox.h"; sourceTree = "SOURCE_ROOT"; }; + 3F02521692ADDB7FFD0453AE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WindowsRegistry.h"; path = "../../../../modules/juce_core/misc/juce_WindowsRegistry.h"; sourceTree = "SOURCE_ROOT"; }; + 3F05E519F0B0931CE0347455 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadower.cpp"; path = "../../../../modules/juce_gui_basics/misc/juce_DropShadower.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3F0618824A11684059926E73 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DragAndDropTarget.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 3F6BE2A8CAF1C23380D884F5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioUnitPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 3F7FA0D8E610BE1172D0CC6E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Files.mm"; path = "../../../../modules/juce_core/native/juce_mac_Files.mm"; sourceTree = "SOURCE_ROOT"; }; + 3FCD20ECBA1032D55D90DAF9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentBoundsConstrainer.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBoundsConstrainer.h"; sourceTree = "SOURCE_ROOT"; }; + 3FD16FE28FD9ABF22F0FF744 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DialogWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_DialogWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 4006D8A53AC91D81816BF576 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableRectangle.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableRectangle.cpp"; sourceTree = "SOURCE_ROOT"; }; + 40178653E67E3C6585653D38 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableImage.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableImage.cpp"; sourceTree = "SOURCE_ROOT"; }; + 414E7CA5C5AB18AE918F414D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGL_osx.h"; path = "../../../../modules/juce_opengl/native/juce_OpenGL_osx.h"; sourceTree = "SOURCE_ROOT"; }; + 42203A96B0F67E68EDB0939E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GroupComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_GroupComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 42248B6AB06E8D01893DBDB8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SHA256.h"; path = "../../../../modules/juce_cryptography/hashing/juce_SHA256.h"; sourceTree = "SOURCE_ROOT"; }; + 4292602AC091358A3439FE9F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BorderSize.h"; path = "../../../../modules/juce_graphics/geometry/juce_BorderSize.h"; sourceTree = "SOURCE_ROOT"; }; + 429925ABEF514DEDE33BF925 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Desktop.h"; path = "../../../../modules/juce_gui_basics/components/juce_Desktop.h"; sourceTree = "SOURCE_ROOT"; }; + 42AA82D963C53D81EC596A0A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Network.mm"; path = "../../../../modules/juce_core/native/juce_mac_Network.mm"; sourceTree = "SOURCE_ROOT"; }; + 42DA53757E1591ED0395C94E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ByteOrder.h"; path = "../../../../modules/juce_core/memory/juce_ByteOrder.h"; sourceTree = "SOURCE_ROOT"; }; + 43BE50DA24ABCAF9183FC535 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Javascript.cpp"; path = "../../../../modules/juce_core/javascript/juce_Javascript.cpp"; sourceTree = "SOURCE_ROOT"; }; + 43BEA6B7451F512AC9B1ED38 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Desktop.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_Desktop.cpp"; sourceTree = "SOURCE_ROOT"; }; + 44301EEC47F5688D9BC0582E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_devices.mm"; path = "../../../../modules/juce_audio_devices/juce_audio_devices.mm"; sourceTree = "SOURCE_ROOT"; }; + 445C1F432C6144BD2F6D3327 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageManager.cpp"; path = "../../../../modules/juce_events/messages/juce_MessageManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 448838BE6E937D450A3C84CE = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMIDI.framework; path = System/Library/Frameworks/CoreMIDI.framework; sourceTree = SDKROOT; }; + 4533B1E6786C588EEB5F17F1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BooleanPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_BooleanPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 46CE1F3B0AB174ABD1B4E2AB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PositionableAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_PositionableAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 46D4E162A4C937BBFE26584A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XMLCodeTokeniser.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_XMLCodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; + 472EB91AAAB000217017E8EF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourGradient.cpp"; path = "../../../../modules/juce_graphics/colour/juce_ColourGradient.cpp"; sourceTree = "SOURCE_ROOT"; }; + 47C8219AACA73B2EBE302A35 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPlayHead.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioPlayHead.h"; sourceTree = "SOURCE_ROOT"; }; + 482D7E87F00C2888C2B8FC9E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringArray.cpp"; path = "../../../../modules/juce_core/text/juce_StringArray.cpp"; sourceTree = "SOURCE_ROOT"; }; + 48322022C7AD99C881909D7C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LagrangeInterpolator.h"; path = "../../../../modules/juce_audio_basics/effects/juce_LagrangeInterpolator.h"; sourceTree = "SOURCE_ROOT"; }; + 487F7DFCFB0CF15BDFEBD24E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginDescription.h"; path = "../../../../modules/juce_audio_processors/processors/juce_PluginDescription.h"; sourceTree = "SOURCE_ROOT"; }; + 489251CA8BE0CA79BA247455 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryContentsDisplayComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsDisplayComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 489FD44544F03774CBFA04E5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_win32_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + 48A798B2097EF59A8A53F1F5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LookAndFeel_V2.h"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V2.h"; sourceTree = "SOURCE_ROOT"; }; + 48EBF61EDF71322807F5AF4E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeRectangle.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeRectangle.h"; sourceTree = "SOURCE_ROOT"; }; + 49EEE3FAA41505E20A1587BB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_UIViewComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_ios_UIViewComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + 4A0C286E6CB8D31A8C048A88 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ReverbAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ReverbAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4A167D0C24B56DA19E2B0722 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PreferencesPanel.h"; path = "../../../../modules/juce_gui_extra/misc/juce_PreferencesPanel.h"; sourceTree = "SOURCE_ROOT"; }; + 4A21D36388A0B6D9543A244D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DocumentWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_DocumentWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4A3A8B6069E903B8F0F62DDF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorListener.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorListener.h"; sourceTree = "SOURCE_ROOT"; }; + 4AA0B96439AA013BFDFED0FF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KnownPluginList.h"; path = "../../../../modules/juce_audio_processors/scanning/juce_KnownPluginList.h"; sourceTree = "SOURCE_ROOT"; }; + 4AA5C3A1B7202460820F4017 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Strings.mm"; path = "../../../../modules/juce_core/native/juce_mac_Strings.mm"; sourceTree = "SOURCE_ROOT"; }; + 4AB7557F71EB918F70B15F49 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileListComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileListComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 4B2D5FBEF56C3D584E65D9AD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_NamedPipe.cpp"; path = "../../../../modules/juce_core/network/juce_NamedPipe.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4B73A2599617EEF450ACABAC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImagePreviewComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_ImagePreviewComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4BE9A59D703E4CA4661252C1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ContainerDeletePolicy.h"; path = "../../../../modules/juce_core/memory/juce_ContainerDeletePolicy.h"; sourceTree = "SOURCE_ROOT"; }; + 4C0B3826ABACE371F8681E61 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RSAKey.h"; path = "../../../../modules/juce_cryptography/encryption/juce_RSAKey.h"; sourceTree = "SOURCE_ROOT"; }; + 4C816FF16C50AA5C87C8F7D3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_File.cpp"; path = "../../../../modules/juce_core/files/juce_File.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4D3007B3F8AECBDB658F7259 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ValueTreeSynchroniser.cpp"; path = "../../../../modules/juce_data_structures/values/juce_ValueTreeSynchroniser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4D5112F69E06189A9318A69F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativePoint.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePoint.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4D823926C18ED8ABD95035DB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_TextPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4E1AFB1AF80B103D7392B44A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_AudioCDReader.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4E1C2B9C5692A96700C1A898 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ActionBroadcaster.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_ActionBroadcaster.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4E451FB3A0D657682324CEED = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Random.h"; path = "../../../../modules/juce_core/maths/juce_Random.h"; sourceTree = "SOURCE_ROOT"; }; + 4E8939ACD0CB224ABD3B3C00 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Drawable.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_Drawable.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4F742E04B5AD194395A593C0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationProperties.cpp"; path = "../../../../modules/juce_data_structures/app_properties/juce_ApplicationProperties.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4FEBD56CB96D3AE8E963098C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AudioCDBurner.mm"; path = "../../../../modules/juce_audio_devices/native/juce_mac_AudioCDBurner.mm"; sourceTree = "SOURCE_ROOT"; }; + 4FF648D72D6F1A78956CDA1B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Demos.h; path = ../../Source/Demos.h; sourceTree = "SOURCE_ROOT"; }; + 5016A40C1850BBD55197D30E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MountedVolumeListChangeDetector.h"; path = "../../../../modules/juce_events/messages/juce_MountedVolumeListChangeDetector.h"; sourceTree = "SOURCE_ROOT"; }; + 50385CBC88D67EF57CBAF9F6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlDocument.cpp"; path = "../../../../modules/juce_core/xml/juce_XmlDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + 505B41AE1B6E2B7FF4B0D859 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Sampler.cpp"; path = "../../../../modules/juce_audio_formats/sampler/juce_Sampler.cpp"; sourceTree = "SOURCE_ROOT"; }; + 50B9979133759179FAFFA25F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLGraphicsContext.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + 50E3DBC3F2D136A9A59ED1D8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioIODevice.cpp"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODevice.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5127ACB1400962FB70BF6D07 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandTarget.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 51A7CB5736B53C5EEC163116 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDeviceSelectorComponent.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioDeviceSelectorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 51D8A242315E93AECE0D1B0E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SparseSet.h"; path = "../../../../modules/juce_core/containers/juce_SparseSet.h"; sourceTree = "SOURCE_ROOT"; }; + 51F0F2EB22A60569E24FB86E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPENote.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPENote.cpp"; sourceTree = "SOURCE_ROOT"; }; + 51FFA102D25322925C454ACD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Midi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_android_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; + 52058B3A331BFA856932EEED = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Range.h"; path = "../../../../modules/juce_core/maths/juce_Range.h"; sourceTree = "SOURCE_ROOT"; }; + 53AB900649E4156D953DB1CA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_cryptography.h"; path = "../../../../modules/juce_cryptography/juce_cryptography.h"; sourceTree = "SOURCE_ROOT"; }; + 53F664A2A3FE1983E183A431 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyPressMappingSet.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_KeyPressMappingSet.cpp"; sourceTree = "SOURCE_ROOT"; }; + 54358D8A9A8DE6AF4F781E8B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Registry.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Registry.cpp"; sourceTree = "SOURCE_ROOT"; }; + 545C5A5F29523968A387FD91 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VST3PluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_VST3PluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 546BB53FC47D83869F8DDCE9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentBuilder.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBuilder.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5484B58D02279CE228079C12 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CoreAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_CoreAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 54E5C8F4F9BF6B8228482AD3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponentPeer.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm"; sourceTree = "SOURCE_ROOT"; }; + 55037EF642A280DAC85CE34D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedLock.h"; sourceTree = "SOURCE_ROOT"; }; + 556B39875D557171B3E0D68C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_opengl.mm"; path = "../../../../modules/juce_opengl/juce_opengl.mm"; sourceTree = "SOURCE_ROOT"; }; + 55F8FDB2CE9EA9B6F6F750B1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MissingGLDefinitions.h"; path = "../../../../modules/juce_opengl/native/juce_MissingGLDefinitions.h"; sourceTree = "SOURCE_ROOT"; }; + 5614CF8ACD28587D8E9FC249 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectSound.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_DirectSound.cpp"; sourceTree = "SOURCE_ROOT"; }; + 561DC7B5329A4719A85FB37E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseInputSource.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInputSource.h"; sourceTree = "SOURCE_ROOT"; }; + 56D6FF1634AE7B4B4B6AC323 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageListener.cpp"; path = "../../../../modules/juce_events/messages/juce_MessageListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + 56E7EE3C43947842BB8BDC1A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleComponent.cpp"; path = "../../../../modules/juce_gui_basics/misc/juce_BubbleComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 56FA5F3ABA3B0278767C107B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextInputTarget.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_TextInputTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 57134B5B764CAAAEA07C56CE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChoicePropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_ChoicePropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 579117EBA45C1878DC55FF65 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF8.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF8.h"; sourceTree = "SOURCE_ROOT"; }; + 5794F3D9DC292B1603244735 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_graphics/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 57C8BBE1EFA839C458DEF2F6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Drawable.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_Drawable.h"; sourceTree = "SOURCE_ROOT"; }; + 5864A3A4338CCCB6524CE499 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WindowsMediaAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_WindowsMediaAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 58B4452DE10C4ABF8D8DC7EB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ConcertinaPanel.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ConcertinaPanel.h"; sourceTree = "SOURCE_ROOT"; }; + 58B5DEFABBF903630496C479 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AnimatedAppComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_AnimatedAppComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 592C559B3CB1579907BC6452 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LassoComponent.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_LassoComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 5A1C17DCA88F1D02ED5F401F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MarkerList.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_MarkerList.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5A26430C3B39E428B483F11D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActionListener.h"; path = "../../../../modules/juce_events/broadcasters/juce_ActionListener.h"; sourceTree = "SOURCE_ROOT"; }; + 5A2B63BC2433F17DB96CC411 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageCache.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageCache.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5A99F85A02CACE2773FAF4AA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentDragger.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_ComponentDragger.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5AAF6FD01A8ACE63E3FAEA56 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_core.h"; path = "../../../../modules/juce_core/juce_core.h"; sourceTree = "SOURCE_ROOT"; }; + 5B59DE0C6545CCC3FA26750E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AttributedString.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_AttributedString.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5B8CE8EC0CEDF800AD5B71E1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VSTPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_VSTPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 5BA3B4D0018FA0D5C976CA3E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileTreeComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 5BDA528B96063067AFD59CBB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Application.cpp"; path = "../../../../modules/juce_gui_basics/application/juce_Application.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5BF77AE97FE5C121B30358AF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemTrayIconComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_SystemTrayIconComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 5C2B9D77C8CEB8A1F6C121E1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5C5FBFC0D457D62BDC602F17 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TemporaryFile.cpp"; path = "../../../../modules/juce_core/files/juce_TemporaryFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5C82D0E8AB39B155A987109A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioIODeviceType.cpp"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODeviceType.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5C99C4705F0D6CE613DE7711 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCReceiver.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCReceiver.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5C9AF08626A44F2AF6783A53 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_TextButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5CCB6DBE5D69271176CD9603 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_posix_NamedPipe.cpp"; path = "../../../../modules/juce_core/native/juce_posix_NamedPipe.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5D17004F2CE0F2DBFDE79EA4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiOutput.h"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiOutput.h"; sourceTree = "SOURCE_ROOT"; }; + 5D2856B19DC13C57D70E42DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatManager.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5D9CB6E9C215ED15E30B685C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryMappedFile.h"; path = "../../../../modules/juce_core/files/juce_MemoryMappedFile.h"; sourceTree = "SOURCE_ROOT"; }; + 5DBA889C8116242666F3C93B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToggleButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToggleButton.h"; sourceTree = "SOURCE_ROOT"; }; + 5DC79394D56549821815B376 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemStats.h"; path = "../../../../modules/juce_core/system/juce_SystemStats.h"; sourceTree = "SOURCE_ROOT"; }; + 5E043C5F2F280FC934592EDD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableListBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5ED809701F235D958635DACA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorValueTreeState.cpp"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioProcessorValueTreeState.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5EEA4C0CF28336697C027202 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioThumbnailBase.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnailBase.h"; sourceTree = "SOURCE_ROOT"; }; + 5F43B58D079ECA063DEFCD0E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatReader.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReader.h"; sourceTree = "SOURCE_ROOT"; }; + 5F6DEAB3DA5EF6B9F437C3CF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPEValue.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEValue.h"; sourceTree = "SOURCE_ROOT"; }; + 600D84E21A1728A803F7BD26 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertySet.cpp"; path = "../../../../modules/juce_core/containers/juce_PropertySet.cpp"; sourceTree = "SOURCE_ROOT"; }; + 60707845CE9EFAADCB5BB90F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLTexture.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLTexture.cpp"; sourceTree = "SOURCE_ROOT"; }; + 607E088C34B7AB707A5ECE4C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OwnedArray.h"; path = "../../../../modules/juce_core/containers/juce_OwnedArray.h"; sourceTree = "SOURCE_ROOT"; }; + 60D9E4052C3FFFA026BB35C6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UndoManager.cpp"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 60DC6B904E0A0ED7D5BACBD3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InputSource.h"; path = "../../../../modules/juce_core/streams/juce_InputSource.h"; sourceTree = "SOURCE_ROOT"; }; + 60DD038BF3685FF524C3A720 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatReaderSource.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReaderSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 60E6823DF3335C4F4A2B4A09 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_NSViewComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + 6110B87158ED828E5F9C8FA4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AnimatedAppComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_AnimatedAppComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 613925F9A0F758ED88BBB3AB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGL_android.h"; path = "../../../../modules/juce_opengl/native/juce_OpenGL_android.h"; sourceTree = "SOURCE_ROOT"; }; + 61D67AE4149D2EF04BFC2F15 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ElementComparator.h"; path = "../../../../modules/juce_core/containers/juce_ElementComparator.h"; sourceTree = "SOURCE_ROOT"; }; + 61F3AAB84249F782A56E88A2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_DrawableButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 61F74754A7B5F0BD930A51DD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Colour.cpp"; path = "../../../../modules/juce_graphics/colour/juce_Colour.cpp"; sourceTree = "SOURCE_ROOT"; }; + 621893AE2A99F8D4331194AD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_IPAddress.cpp"; path = "../../../../modules/juce_core/network/juce_IPAddress.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6256BA6104CE254172D02804 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedWriteLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedWriteLock.h"; sourceTree = "SOURCE_ROOT"; }; + 6367B5EA6602CD73063A481A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Primes.h"; path = "../../../../modules/juce_cryptography/encryption/juce_Primes.h"; sourceTree = "SOURCE_ROOT"; }; + 6386ADE8A90ABD189AB72936 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLRenderer.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLRenderer.h"; sourceTree = "SOURCE_ROOT"; }; + 63DB40AFD30CEFB03779AB79 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToolbarButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 63E2478C4D365C034FAEF66B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleMessageComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_BubbleMessageComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 64223866AD9D3D69464C198B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Thread.h"; path = "../../../../modules/juce_core/threads/juce_Thread.h"; sourceTree = "SOURCE_ROOT"; }; + 648610AB6A110B1ACD64CDAE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PathIterator.h"; path = "../../../../modules/juce_graphics/geometry/juce_PathIterator.h"; sourceTree = "SOURCE_ROOT"; }; + 648E0A0D55BE1D012C1D89B1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeCoordinatePositioner.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinatePositioner.h"; sourceTree = "SOURCE_ROOT"; }; + 649BBA6C8D29853266E8D2A2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiKeyboardState.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiKeyboardState.h"; sourceTree = "SOURCE_ROOT"; }; + 65746338AF0FDE118A3D02C1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_BufferingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 665FF99D0D1BF3755FE7B803 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToolbarButton.h"; sourceTree = "SOURCE_ROOT"; }; + 666F7A0F487C9974AF12E8A9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioTransportSource.h"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioTransportSource.h"; sourceTree = "SOURCE_ROOT"; }; + 66E12916E12BBC042F715891 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AiffAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_AiffAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 66EA0A2E6DCB92EB7CE24516 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActiveXControlComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_ActiveXControlComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 672780D824A4CAD951DBB29B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RectangleList.h"; path = "../../../../modules/juce_graphics/geometry/juce_RectangleList.h"; sourceTree = "SOURCE_ROOT"; }; + 67321193997802F731C9F3C8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Slider.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Slider.cpp"; sourceTree = "SOURCE_ROOT"; }; + 67701BB0717F9CBA6772BC42 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileBasedDocument.cpp"; path = "../../../../modules/juce_gui_extra/documents/juce_FileBasedDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + 67706504E1E1E19B61E90903 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 678B3B27F695152D396C09A3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Viewport.h"; path = "../../../../modules/juce_gui_basics/layout/juce_Viewport.h"; sourceTree = "SOURCE_ROOT"; }; + 6799B056504F9F017998B9E2 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; }; + 6821655BB8883B9A421666C3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InterprocessConnectionServer.cpp"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnectionServer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6894C4ABEF5203014A0B665F = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_utils/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 689962387B441B1770B53D6C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_mac_SystemTrayIcon.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_mac_SystemTrayIcon.cpp"; sourceTree = "SOURCE_ROOT"; }; + 696F7896036B652369517438 = {isa = PBXFileReference; lastKnownFileType = file.nib; name = RecentFilesMenuTemplate.nib; path = RecentFilesMenuTemplate.nib; sourceTree = "SOURCE_ROOT"; }; + 69995C9ACA8B57DDB8E49495 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ColourSelector.h"; path = "../../../../modules/juce_gui_extra/misc/juce_ColourSelector.h"; sourceTree = "SOURCE_ROOT"; }; + 6B23639B2FD8C8FCFC241070 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BigInteger.h"; path = "../../../../modules/juce_core/maths/juce_BigInteger.h"; sourceTree = "SOURCE_ROOT"; }; + 6B59A53C3FB3B4462A5E10D0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeCoordinatePositioner.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinatePositioner.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6B7EA4C617C2C129210C7F76 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileSearchPathListComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6BA526E7009CAA47F22B2FC3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseInactivityDetector.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInactivityDetector.h"; sourceTree = "SOURCE_ROOT"; }; + 6BB634F1841C4BCE4775FF8D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LocalisedStrings.cpp"; path = "../../../../modules/juce_core/text/juce_LocalisedStrings.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6BE69871BE4A865ABF84BC7E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadWithProgressWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 6C42AAE33B1F86E496AA352C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextDragAndDropTarget.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_TextDragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 6D584871C4325DBC6FA689A7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SplashScreen.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_SplashScreen.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6D6C2ADFA12CB2A3AA90E10D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLImage.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLImage.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6D8A6213F2A881CAD1DE5A7E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CoreAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_CoreAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 6DAF8D36A60A6F606DCDBADB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SharedResourcePointer.h"; path = "../../../../modules/juce_core/memory/juce_SharedResourcePointer.h"; sourceTree = "SOURCE_ROOT"; }; + 6E01440F1FACE2977203A70B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TabbedButtonBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedButtonBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6E27EBF864367EBA8B44DFA9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginFormat.cpp"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6E41B744374D33094F868FF3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileInputStream.cpp"; path = "../../../../modules/juce_core/files/juce_FileInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6EA97857D017530AE58ECA66 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Rectangle.h"; path = "../../../../modules/juce_graphics/geometry/juce_Rectangle.h"; sourceTree = "SOURCE_ROOT"; }; + 6ED2FF75E5F98253AA1C287F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TopLevelWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_TopLevelWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6EF18D083B3FAC255D719DA6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Files.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6F3E59877038096FDA5B28DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HighResolutionTimer.h"; path = "../../../../modules/juce_core/threads/juce_HighResolutionTimer.h"; sourceTree = "SOURCE_ROOT"; }; + 6F4CD56079CABCB8F4FBA0D2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CarbonViewWrapperComponent.h"; path = "../../../../modules/juce_gui_extra/native/juce_mac_CarbonViewWrapperComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 6F9461C9816AF7B764F73FC9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseEvent.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseEvent.h"; sourceTree = "SOURCE_ROOT"; }; + 6FDDB32B35EF2BC6C4E353C0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioAppComponent.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioAppComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 70736236C82A9ACE63DB3D3D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Line.h"; path = "../../../../modules/juce_graphics/geometry/juce_Line.h"; sourceTree = "SOURCE_ROOT"; }; + 709EB992B73BB302F0D9FC8F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PathIterator.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_PathIterator.cpp"; sourceTree = "SOURCE_ROOT"; }; + 70F1CAF3C4C561DD81E6AFC1 = {isa = PBXFileReference; lastKnownFileType = file.icns; name = Icon.icns; path = Icon.icns; sourceTree = "SOURCE_ROOT"; }; + 71274DD47D3EFC3EB83ED73C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_osc.cpp"; path = "../../../../modules/juce_osc/juce_osc.cpp"; sourceTree = "SOURCE_ROOT"; }; + 71359267D6C329BC132B88CF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLHelpers.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLHelpers.cpp"; sourceTree = "SOURCE_ROOT"; }; + 71894D722D549F75275D3D53 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Midi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; + 724D1A80CA91E8ADB78287BE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeTime.h"; path = "../../../../modules/juce_core/time/juce_RelativeTime.h"; sourceTree = "SOURCE_ROOT"; }; + 72887C393A61739FD6C803A3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLShaderProgram.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLShaderProgram.h"; sourceTree = "SOURCE_ROOT"; }; + 729B6245E3A797878E3F4ADC = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LinkedListPointer.h"; path = "../../../../modules/juce_core/containers/juce_LinkedListPointer.h"; sourceTree = "SOURCE_ROOT"; }; + 729F27B2D82EF129C024F3F6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResamplingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ResamplingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 72F927799B30E12B01E9C00A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatReader.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 72FD8AC04D2B0BEE1A5E2596 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiRPN.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiRPN.h"; sourceTree = "SOURCE_ROOT"; }; + 7319C1AFC4D882F649320DDB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsContext.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + 7414371325D7C8E4ECB043D0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SortedSet.h"; path = "../../../../modules/juce_core/containers/juce_SortedSet.h"; sourceTree = "SOURCE_ROOT"; }; + 74711D7544168CCAC4969A07 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = BinaryData.cpp; path = ../../JuceLibraryCode/BinaryData.cpp; sourceTree = "SOURCE_ROOT"; }; + 74A4500C4809EFB73D5FA36C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_SystemTrayIcon.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_linux_SystemTrayIcon.cpp"; sourceTree = "SOURCE_ROOT"; }; + 74C15BFC6E036DE767574778 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TabbedButtonBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedButtonBar.h"; sourceTree = "SOURCE_ROOT"; }; + 74D4B2EEC36940893BF7AC25 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TemporaryFile.h"; path = "../../../../modules/juce_core/files/juce_TemporaryFile.h"; sourceTree = "SOURCE_ROOT"; }; + 74E60A8C1056FF1D64053A62 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringArray.h"; path = "../../../../modules/juce_core/text/juce_StringArray.h"; sourceTree = "SOURCE_ROOT"; }; + 75636F75113CD1ABF8B01F08 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableObjectResizer.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableObjectResizer.h"; sourceTree = "SOURCE_ROOT"; }; + 758A85BA2A15681252AAC852 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectWriteTypeLayout.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_DirectWriteTypeLayout.cpp"; sourceTree = "SOURCE_ROOT"; }; + 75CBB4C7E9CBA8B36FA40FB8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPath.h"; path = "../../../../modules/juce_core/files/juce_FileSearchPath.h"; sourceTree = "SOURCE_ROOT"; }; + 77234EEA6FC39172D3B4B455 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableText.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableText.h"; sourceTree = "SOURCE_ROOT"; }; + 777AA662407B7A91748C92A8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GZIPCompressorOutputStream.cpp"; path = "../../../../modules/juce_core/zip/juce_GZIPCompressorOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 77C0AC21C1028911123844FC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Main.cpp; path = ../../Source/Main.cpp; sourceTree = "SOURCE_ROOT"; }; + 783AF1428118CFF4B105487B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GraphicsContext.h"; path = "../../../../modules/juce_graphics/contexts/juce_GraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + 78EB35E34BA8673695F92D6B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FilenameComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilenameComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 795FF599087653F77C7E98D2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_UIViewComponentPeer.mm"; path = "../../../../modules/juce_gui_basics/native/juce_ios_UIViewComponentPeer.mm"; sourceTree = "SOURCE_ROOT"; }; + 79C9759DA5A25C1D53AC2E93 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_EdgeTable.h"; path = "../../../../modules/juce_graphics/geometry/juce_EdgeTable.h"; sourceTree = "SOURCE_ROOT"; }; + 7A1E8F59B14140851D40DF29 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiFile.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7A41A9C37A8BA7EFB6D1F518 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VST3Headers.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_VST3Headers.h"; sourceTree = "SOURCE_ROOT"; }; + 7A55E53EC2B5BC85F365A342 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardState.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiKeyboardState.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7B0648C17B0C62706424B080 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_BluetoothMidiDevicePairingDialogue.mm"; path = "../../../../modules/juce_audio_utils/native/juce_ios_BluetoothMidiDevicePairingDialogue.mm"; sourceTree = "SOURCE_ROOT"; }; + 7B441C4B6CF9473676EA3610 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PopupMenu.h"; path = "../../../../modules/juce_gui_basics/menus/juce_PopupMenu.h"; sourceTree = "SOURCE_ROOT"; }; + 7BF4C9B621AF133163D15675 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBasedDocument.h"; path = "../../../../modules/juce_gui_extra/documents/juce_FileBasedDocument.h"; sourceTree = "SOURCE_ROOT"; }; + 7C4111F98C8023097C14C138 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UndoableAction.h"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoableAction.h"; sourceTree = "SOURCE_ROOT"; }; + 7CDAE6FBB85B787E8FA15B0C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NewLine.h"; path = "../../../../modules/juce_core/text/juce_NewLine.h"; sourceTree = "SOURCE_ROOT"; }; + 7CE6320BC8094DB37E65721C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OggVorbisAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_OggVorbisAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 7D5322C5D58C267F5FC815B1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GraphicsContext.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7E79FB8A1C88684D9961874F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileLogger.cpp"; path = "../../../../modules/juce_core/logging/juce_FileLogger.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7E7E7B2174155F2FA49E3E56 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_ComSmartPtr.h"; path = "../../../../modules/juce_core/native/juce_win32_ComSmartPtr.h"; sourceTree = "SOURCE_ROOT"; }; + 7E9DE536E504F1EDDF5532C3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioCDReader.cpp"; path = "../../../../modules/juce_audio_devices/audio_cd/juce_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7F23EFF727A93D53C8654687 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_BluetoothMidiDevicePairingDialogue.cpp"; path = "../../../../modules/juce_audio_utils/native/juce_linux_BluetoothMidiDevicePairingDialogue.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7F64D580AA191FBC2A74E943 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSourcePlayer.cpp"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioSourcePlayer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7F9E3A2D24D587405B3B5E76 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPEZone.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEZone.h"; sourceTree = "SOURCE_ROOT"; }; + 7FC7D527EA3B088288F8DA36 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_gui_basics.h"; path = "../../../../modules/juce_gui_basics/juce_gui_basics.h"; sourceTree = "SOURCE_ROOT"; }; + 7FDAFC6129A0497C57648A8C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_curl_Network.cpp"; path = "../../../../modules/juce_core/native/juce_curl_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8034DEB0DE55C62EE0B5D2FB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallOutBox.h"; path = "../../../../modules/juce_gui_basics/windows/juce_CallOutBox.h"; sourceTree = "SOURCE_ROOT"; }; + 806774C77EBD99266FE68583 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferingAudioFormatReader.h"; path = "../../../../modules/juce_audio_formats/format/juce_BufferingAudioFormatReader.h"; sourceTree = "SOURCE_ROOT"; }; + 80B9B913DD55B0BD215AEC86 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ButtonPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 80D63910D7196D7DF849A239 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChangeListener.h"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeListener.h"; sourceTree = "SOURCE_ROOT"; }; + 814EF15FC580DB2A5F426071 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_processors.mm"; path = "../../../../modules/juce_audio_processors/juce_audio_processors.mm"; sourceTree = "SOURCE_ROOT"; }; + 81E803F2EB73BF09CB0CF2DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryBlock.cpp"; path = "../../../../modules/juce_core/memory/juce_MemoryBlock.cpp"; sourceTree = "SOURCE_ROOT"; }; + 82073AD531BE1009AE92477D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_android_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + 82A654CA5A700A19A9A673BC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlyphArrangement.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"; sourceTree = "SOURCE_ROOT"; }; + 82B25B30D756F75BDFDBBCD0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ValueTreeSynchroniser.h"; path = "../../../../modules/juce_data_structures/values/juce_ValueTreeSynchroniser.h"; sourceTree = "SOURCE_ROOT"; }; + 82B807E750DB47D6FA6AA5F8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeRectangle.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeRectangle.cpp"; sourceTree = "SOURCE_ROOT"; }; + 82CF205CD196BF77B68EA75A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ImageButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 834384DBC61E38E789FD9B7D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessage.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessage.h"; sourceTree = "SOURCE_ROOT"; }; + 837FC46135954E8144A996FD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Uuid.h"; path = "../../../../modules/juce_core/misc/juce_Uuid.h"; sourceTree = "SOURCE_ROOT"; }; + 83E38E7D0548FCDF7B150F22 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiDocumentPanel.h"; path = "../../../../modules/juce_gui_basics/layout/juce_MultiDocumentPanel.h"; sourceTree = "SOURCE_ROOT"; }; + 84BD8495CE3D747852CB0463 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_AudioCDReader.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 84DFB13BE79A86FC987A63C7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CodeDocument.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + 84E76068048CB52123545F7B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Primes.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_Primes.cpp"; sourceTree = "SOURCE_ROOT"; }; + 858198BBDF9BB692E58AB16D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DynamicObject.h"; path = "../../../../modules/juce_core/containers/juce_DynamicObject.h"; sourceTree = "SOURCE_ROOT"; }; + 85D61362BF185DA51B00E00E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageEffectFilter.h"; path = "../../../../modules/juce_graphics/effects/juce_ImageEffectFilter.h"; sourceTree = "SOURCE_ROOT"; }; + 861F5C579BDAA33718FFE9CA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SubregionStream.cpp"; path = "../../../../modules/juce_core/streams/juce_SubregionStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8621C4BB5D591743A1B86697 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_CoreGraphicsContext.mm"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsContext.mm"; sourceTree = "SOURCE_ROOT"; }; + 862A547990420303EBE1C849 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Process.h"; path = "../../../../modules/juce_core/threads/juce_Process.h"; sourceTree = "SOURCE_ROOT"; }; + 864DAFF59D56AC67F7BE6F77 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiDocumentPanel.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_MultiDocumentPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8680FB438DEC3B3994B6CB9D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Misc.cpp"; path = "../../../../modules/juce_core/native/juce_android_Misc.cpp"; sourceTree = "SOURCE_ROOT"; }; + 87204C5BCC65051CF188DF6D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorParameter.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorParameter.h"; sourceTree = "SOURCE_ROOT"; }; + 8745ACE2C81BA9685BF99233 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableLayoutResizerBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutResizerBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + 874BD8915F9FC9EAF09AFB87 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DocumentWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_DocumentWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 877CA42D199DE2C3C4EF58A9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ScrollBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ScrollBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + 877FC50B817B57928FD4395C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorValueTreeState.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioProcessorValueTreeState.h"; sourceTree = "SOURCE_ROOT"; }; + 8784634AAD6079EF097FD751 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatWriter.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatWriter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 883F407DDE5464DEC7ED1634 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseInputSource.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 890BD2A64C7C25201E20C02F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryIterator.cpp"; path = "../../../../modules/juce_core/files/juce_DirectoryIterator.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8924F9B3C5A5EF7B9771465F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableShape.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableShape.h"; sourceTree = "SOURCE_ROOT"; }; + 89A8ED7F8AF435841DFC5279 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Files.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8A26883DAA6CE47336C86A40 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorGraph.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorGraph.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8A791C2E9E31061FB1114D0C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Toolbar.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Toolbar.h"; sourceTree = "SOURCE_ROOT"; }; + 8AADBD01ED8B177F160939D3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Typeface.h"; path = "../../../../modules/juce_graphics/fonts/juce_Typeface.h"; sourceTree = "SOURCE_ROOT"; }; + 8AAEBEE37A67A5D01EBA6BB7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadLocalValue.h"; path = "../../../../modules/juce_core/threads/juce_ThreadLocalValue.h"; sourceTree = "SOURCE_ROOT"; }; + 8AF3D4A8845EBB742E3F521C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ImageButton.h"; sourceTree = "SOURCE_ROOT"; }; + 8B73B43B30D1235C6F6C7472 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryContentsList.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsList.h"; sourceTree = "SOURCE_ROOT"; }; + 8B7B53B20BE2BD10F219B06A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_QuickTimeAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_QuickTimeAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8BB63BFDE6F8C634381B9CF3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLHelpers.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 8BD1742DEA98185FA7ED4152 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MenuBarComponent.h"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 8C19D0C6E404A67C74D07A9F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_posix_SharedCode.h"; path = "../../../../modules/juce_core/native/juce_posix_SharedCode.h"; sourceTree = "SOURCE_ROOT"; }; + 8C2A93223809C1EFD6D7C404 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JPEGLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_JPEGLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8CA2DB791512EB0E6AC7F7C2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPESynthesiserVoice.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPESynthesiserVoice.h"; sourceTree = "SOURCE_ROOT"; }; + 8D32D3B412213EC3153588E0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyPanel.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8DFA74E13F6E40A5B1C09C11 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationProperties.h"; path = "../../../../modules/juce_data_structures/app_properties/juce_ApplicationProperties.h"; sourceTree = "SOURCE_ROOT"; }; + 8E2F72AFA0CDA64F0C07F105 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SlaveComponent.h; path = ../../Source/SlaveComponent.h; sourceTree = "SOURCE_ROOT"; }; + 8E32705B99BB15E3586C067C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryIterator.h"; path = "../../../../modules/juce_core/files/juce_DirectoryIterator.h"; sourceTree = "SOURCE_ROOT"; }; + 8EE86B89C69AD4D9A802526D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPairArray.h"; path = "../../../../modules/juce_core/text/juce_StringPairArray.h"; sourceTree = "SOURCE_ROOT"; }; + 8EF093827B72F444E74F5682 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Array.h"; path = "../../../../modules/juce_core/containers/juce_Array.h"; sourceTree = "SOURCE_ROOT"; }; + 8EF118DED70F115DEF3DB6AE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LuaCodeTokeniser.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_LuaCodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; + 8F1630E85F43E88E4A40C2B1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Network.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8F2FACABB024833B7F932BC5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSourcePlayer.h"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioSourcePlayer.h"; sourceTree = "SOURCE_ROOT"; }; + 8F9E95F991B215FFDD3F8E9B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GZIPDecompressorInputStream.h"; path = "../../../../modules/juce_core/zip/juce_GZIPDecompressorInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 8FC33441590BA03C2EB5CD63 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ThreadPool.cpp"; path = "../../../../modules/juce_core/threads/juce_ThreadPool.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8FD227DE98DB156FBBC8DD1D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_URL.cpp"; path = "../../../../modules/juce_core/network/juce_URL.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9002A3D1CD5740D9C50A834C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormat.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 902C20CD7DEB18B69F0E1BE7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_AudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 90348A625874E8DD3DCBF583 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_URL.h"; path = "../../../../modules/juce_core/network/juce_URL.h"; sourceTree = "SOURCE_ROOT"; }; + 904D7BEE6279D62983E57DCA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginInstance.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioPluginInstance.h"; sourceTree = "SOURCE_ROOT"; }; + 905451CEDBDE4649B1DFB267 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FloatVectorOperations.cpp"; path = "../../../../modules/juce_audio_basics/buffers/juce_FloatVectorOperations.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9069DC6DF609DE1E4A57DA7F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Whirlpool.h"; path = "../../../../modules/juce_cryptography/hashing/juce_Whirlpool.h"; sourceTree = "SOURCE_ROOT"; }; + 912AC6CBEC5E7E91609B16C8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPEMessages.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEMessages.cpp"; sourceTree = "SOURCE_ROOT"; }; + 912F268EBF0738584F70DE1C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiFile.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiFile.h"; sourceTree = "SOURCE_ROOT"; }; + 913E0691329569D88E7AAB64 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osc.h"; path = "../../../../modules/juce_osc/juce_osc.h"; sourceTree = "SOURCE_ROOT"; }; + 914ED3B5EEB409125EADBB2F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LADSPAPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_LADSPAPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 918EAFFF65C0EBD273295D56 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileBrowserComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 91B931E774E4401630F74EE7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ModalComponentManager.h"; path = "../../../../modules/juce_gui_basics/components/juce_ModalComponentManager.h"; sourceTree = "SOURCE_ROOT"; }; + 91BDECC58244D65FC321A8E8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableCornerComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableCornerComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 9247A389C11552FA21BAB71F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PreferencesPanel.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_PreferencesPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9270C4E5EF60DE6108311112 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_devices/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 9271A906B51A234888B79D68 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LAMEEncoderAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_LAMEEncoderAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 92800676AF753D1A60108F11 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BinaryData.h; path = ../../JuceLibraryCode/BinaryData.h; sourceTree = "SOURCE_ROOT"; }; + 935CA85EF98714D3A17AE737 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; + 93736C303F60B4DBF1D87989 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Quaternion.h"; path = "../../../../modules/juce_opengl/geometry/juce_Quaternion.h"; sourceTree = "SOURCE_ROOT"; }; + 9411003BA4D471F2C95269ED = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KnownPluginList.cpp"; path = "../../../../modules/juce_audio_processors/scanning/juce_KnownPluginList.cpp"; sourceTree = "SOURCE_ROOT"; }; + 94363B04A83DFC9C02B023DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Component.h"; path = "../../../../modules/juce_gui_basics/components/juce_Component.h"; sourceTree = "SOURCE_ROOT"; }; + 943A1F16EFDD0E6789C90656 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 944B844043D0815614FD4CFD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Typeface.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9473F75E32710D282051D93C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DialogWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_DialogWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 94C3811F389418A6C4304554 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + 94F05A309F81C027AF3AA82C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLTexture.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLTexture.h"; sourceTree = "SOURCE_ROOT"; }; + 94F0F55A3456014AA91FE44C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_NamedValueSet.cpp"; path = "../../../../modules/juce_core/containers/juce_NamedValueSet.cpp"; sourceTree = "SOURCE_ROOT"; }; + 95139F961E2C7FB6421D04A5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MACAddress.cpp"; path = "../../../../modules/juce_core/network/juce_MACAddress.cpp"; sourceTree = "SOURCE_ROOT"; }; + 95738AF2EAF17A2FA9B8E069 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TabbedComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 965402AAAAF0A0D920DC7C36 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Image.cpp"; path = "../../../../modules/juce_graphics/images/juce_Image.cpp"; sourceTree = "SOURCE_ROOT"; }; + 96664A31FD92DEA43D231D23 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorParameters.cpp"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioProcessorParameters.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9671131059C459A1E119535E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormatManager.h"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormatManager.h"; sourceTree = "SOURCE_ROOT"; }; + 968CED5FCF62B31D4346DEBD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPEMessages.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEMessages.h"; sourceTree = "SOURCE_ROOT"; }; + 97188A2D8CC4C0DACC6A4D2F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorPlayer.h"; path = "../../../../modules/juce_audio_utils/players/juce_AudioProcessorPlayer.h"; sourceTree = "SOURCE_ROOT"; }; + 971B377F39D4CAFA77AB790C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TabbedComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9801E411857A072092954171 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableLayoutManager.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9808FC8EBDD993802B13E360 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsDisplayComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsDisplayComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9813552533EFFAACD0F7E1EC = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BasicNativeHeaders.h"; path = "../../../../modules/juce_core/native/juce_BasicNativeHeaders.h"; sourceTree = "SOURCE_ROOT"; }; + 9817FEEE6C1D99BCE7DB2395 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableComposite.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableComposite.cpp"; sourceTree = "SOURCE_ROOT"; }; + 98C797055FB6A630BD2AF26B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CustomTypeface.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_CustomTypeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + 98FE786D6DCAA1F39D0428E4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Font.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_Font.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9905205B6EDA5FAFA31EA03F = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_processors/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 991A179EF480F6B3049D0CE2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ValueTree.h"; path = "../../../../modules/juce_data_structures/values/juce_ValueTree.h"; sourceTree = "SOURCE_ROOT"; }; + 9935025CC78B291623780878 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooserDialogBox.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooserDialogBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 996E743A20FC78671766BF59 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; + 9982F39121710EFFD5FEEAEF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MasterComponent.h; path = ../../Source/MasterComponent.h; sourceTree = "SOURCE_ROOT"; }; + 999ECAD45309F13369547FDB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF16.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF16.h"; sourceTree = "SOURCE_ROOT"; }; + 99F278EFA35A61B6E2AE1A61 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_mac_CoreMidi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_mac_CoreMidi.cpp"; sourceTree = "SOURCE_ROOT"; }; + 99FC512DFBE57AAC3894FC20 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AttributedString.h"; path = "../../../../modules/juce_graphics/fonts/juce_AttributedString.h"; sourceTree = "SOURCE_ROOT"; }; + 9A39BF4B65A5B6A66D84F232 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Path.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_Path.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9AB6DA2CD6FC85ABC73DCA8C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Label.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Label.h"; sourceTree = "SOURCE_ROOT"; }; + 9ABB34DD0089D3C1B2CB0448 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AlertWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_AlertWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 9AFB00C8011E7902EF67789C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LocalisedStrings.h"; path = "../../../../modules/juce_core/text/juce_LocalisedStrings.h"; sourceTree = "SOURCE_ROOT"; }; + 9B88C701BE205AEB33ACC5FB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseCursor.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseCursor.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9BB341CFFB496948D5E9A16E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GlyphArrangement.h"; path = "../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.h"; sourceTree = "SOURCE_ROOT"; }; + 9C20682A5F49B7BD2CEC3E2B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HeapBlock.h"; path = "../../../../modules/juce_core/memory/juce_HeapBlock.h"; sourceTree = "SOURCE_ROOT"; }; + 9C68E54122484FE80D919763 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MixerAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_MixerAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9CAA1BFBE6B44233E6F1247E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Result.cpp"; path = "../../../../modules/juce_core/misc/juce_Result.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9D05F58F8CE58D9D6952BF1D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PNGLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_PNGLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9D29AC99CA678DE27CAAAE31 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Time.h"; path = "../../../../modules/juce_core/time/juce_Time.h"; sourceTree = "SOURCE_ROOT"; }; + 9D2C7F9E1E4B1A96183E2B32 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_android_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9DCB9FE79EDD770E0EC8A370 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CriticalSection.h"; path = "../../../../modules/juce_core/threads/juce_CriticalSection.h"; sourceTree = "SOURCE_ROOT"; }; + 9DEFA41E52F11C989DF313BF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiBuffer.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiBuffer.h"; sourceTree = "SOURCE_ROOT"; }; + 9DF463C5E206ADC98851C78A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TimeSliceThread.h"; path = "../../../../modules/juce_core/threads/juce_TimeSliceThread.h"; sourceTree = "SOURCE_ROOT"; }; + 9E2535830FEEC2462D0A01C0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessageCollector.cpp"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiMessageCollector.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9E7319BC97DD7609E51BA8E6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextEditor.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TextEditor.h"; sourceTree = "SOURCE_ROOT"; }; + 9E8129263CD42C6029FC2CAD = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; + 9ED2DC39AEEFE9E28CF7E7B0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioVisualiserComponent.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioVisualiserComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 9EEF2A75EDD5E8023F9AD6B0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiTimer.h"; path = "../../../../modules/juce_events/timers/juce_MultiTimer.h"; sourceTree = "SOURCE_ROOT"; }; + 9F49BF4440F09115117F9615 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActionBroadcaster.h"; path = "../../../../modules/juce_events/broadcasters/juce_ActionBroadcaster.h"; sourceTree = "SOURCE_ROOT"; }; + A032B47E0B1DFE6656768078 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CPlusPlusCodeTokeniser.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniser.cpp"; sourceTree = "SOURCE_ROOT"; }; + A073692401C6D5C86D77E53C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringRef.h"; path = "../../../../modules/juce_core/text/juce_StringRef.h"; sourceTree = "SOURCE_ROOT"; }; + A09A20116F929D337AE95CB6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCSender.h"; path = "../../../../modules/juce_osc/osc/juce_OSCSender.h"; sourceTree = "SOURCE_ROOT"; }; + A118AD624CE30228686D51F3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeCoordinate.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinate.cpp"; sourceTree = "SOURCE_ROOT"; }; + A127A78E54490885EA61239C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioCDBurner.h"; path = "../../../../modules/juce_audio_devices/audio_cd/juce_AudioCDBurner.h"; sourceTree = "SOURCE_ROOT"; }; + A15770CD33E47FF114451904 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativePoint.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePoint.h"; sourceTree = "SOURCE_ROOT"; }; + A198E2290B15C62F68D21050 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsSoftwareRenderer.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"; sourceTree = "SOURCE_ROOT"; }; + A1AF1E8ADB16AE21785390F5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_GraphicsContext.cpp"; path = "../../../../modules/juce_graphics/native/juce_android_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + A1F1F469B33048DD0609E02E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawablePath.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawablePath.h"; sourceTree = "SOURCE_ROOT"; }; + A210326040D3F2A40B2B9D15 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PixelFormats.h"; path = "../../../../modules/juce_graphics/colour/juce_PixelFormats.h"; sourceTree = "SOURCE_ROOT"; }; + A23791E205B22F21521DF9F4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_basics.h"; path = "../../../../modules/juce_audio_basics/juce_audio_basics.h"; sourceTree = "SOURCE_ROOT"; }; + A34D1DA226DFFEACE090BD72 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NSViewComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_NSViewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + A38836ADAE0113CFA40F16EF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_WebBrowserComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_WebBrowserComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + A39FC18F44E512E5047DBB15 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OggVorbisAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_OggVorbisAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + A42479D8A3AE579891E8741A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginDescription.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_PluginDescription.cpp"; sourceTree = "SOURCE_ROOT"; }; + A42F8BC3DE25F1CC15D383E0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyListener.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + A4A507E78D1082DF5EDA723E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandTarget.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandTarget.cpp"; sourceTree = "SOURCE_ROOT"; }; + A4C7C1D626E8F444FE84674C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + A5360675341F06F73AF96D1E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MouseCursor.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_MouseCursor.mm"; sourceTree = "SOURCE_ROOT"; }; + A54E763170141C2FC3BBD197 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TimeSliceThread.cpp"; path = "../../../../modules/juce_core/threads/juce_TimeSliceThread.cpp"; sourceTree = "SOURCE_ROOT"; }; + A55309C54076A01EA57315CE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Image.h"; path = "../../../../modules/juce_graphics/images/juce_Image.h"; sourceTree = "SOURCE_ROOT"; }; + A61D17AF31E2326EDA285C22 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NativeMessageBox.h"; path = "../../../../modules/juce_gui_basics/windows/juce_NativeMessageBox.h"; sourceTree = "SOURCE_ROOT"; }; + A61EAEE68793E336E6F8BCF7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryMappedAudioFormatReader.h"; path = "../../../../modules/juce_audio_formats/format/juce_MemoryMappedAudioFormatReader.h"; sourceTree = "SOURCE_ROOT"; }; + A630EDA780905F9CCC6EF5D8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLAppComponent.cpp"; path = "../../../../modules/juce_opengl/utils/juce_OpenGLAppComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + A64B09FC5A333C71F069C890 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDeviceManager.cpp"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioDeviceManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + A67B57899953E98B2B52FA2C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_data_structures.mm"; path = "../../../../modules/juce_data_structures/juce_data_structures.mm"; sourceTree = "SOURCE_ROOT"; }; + A6A0A10D492CB91AF88BCDCB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserListener.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserListener.h"; sourceTree = "SOURCE_ROOT"; }; + A6AC587CC82C4689D4C0D90E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MACAddress.h"; path = "../../../../modules/juce_core/network/juce_MACAddress.h"; sourceTree = "SOURCE_ROOT"; }; + A6AFC4953E324CC5163256E6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + A6B7388C11968139DFB7F95B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginListComponent.h"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginListComponent.h"; sourceTree = "SOURCE_ROOT"; }; + A6B8840048CE44449BF2E319 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCArgument.h"; path = "../../../../modules/juce_osc/osc/juce_OSCArgument.h"; sourceTree = "SOURCE_ROOT"; }; + A7198BFD9B0CC598BD50B587 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentMovementWatcher.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentMovementWatcher.h"; sourceTree = "SOURCE_ROOT"; }; + A7DF0F471086004A6B81CD11 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_gui_extra.h"; path = "../../../../modules/juce_gui_extra/juce_gui_extra.h"; sourceTree = "SOURCE_ROOT"; }; + A80E52C517801112E8F19350 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_graphics.mm"; path = "../../../../modules/juce_graphics/juce_graphics.mm"; sourceTree = "SOURCE_ROOT"; }; + A84DBA7DBC8FBEA5740CB026 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarModel.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarModel.cpp"; sourceTree = "SOURCE_ROOT"; }; + A89C8222531A7CBACE054C1A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrayAllocationBase.h"; path = "../../../../modules/juce_core/containers/juce_ArrayAllocationBase.h"; sourceTree = "SOURCE_ROOT"; }; + A8A0AF041F30CB7F45D2FF47 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_FileChooser.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_FileChooser.mm"; sourceTree = "SOURCE_ROOT"; }; + A8F0A5C9A372D5C57033B581 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlElement.cpp"; path = "../../../../modules/juce_core/xml/juce_XmlElement.cpp"; sourceTree = "SOURCE_ROOT"; }; + A93241AAFC2CA466E7F61D68 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CallOutBox.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_CallOutBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + A94C6EB19B9BF24D83054D60 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_processors.h"; path = "../../../../modules/juce_audio_processors/juce_audio_processors.h"; sourceTree = "SOURCE_ROOT"; }; + A9FE7AE10A02329F18BAF8BB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandInfo.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandInfo.h"; sourceTree = "SOURCE_ROOT"; }; + AA5DEFC178005AF6703DD8C2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLExtensions.h"; path = "../../../../modules/juce_opengl/native/juce_OpenGLExtensions.h"; sourceTree = "SOURCE_ROOT"; }; + AABBDC405E85A02000A3991B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ZipFile.h"; path = "../../../../modules/juce_core/zip/juce_ZipFile.h"; sourceTree = "SOURCE_ROOT"; }; + AB0C82D0A432008DA9B02B67 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLAppComponent.h"; path = "../../../../modules/juce_opengl/utils/juce_OpenGLAppComponent.h"; sourceTree = "SOURCE_ROOT"; }; + AB26977EA68E27838B54A8E4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_linux_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + AB6D9BF527527D3143CAC2A2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OptionalScopedPointer.h"; path = "../../../../modules/juce_core/memory/juce_OptionalScopedPointer.h"; sourceTree = "SOURCE_ROOT"; }; + AB7E120B33CE6C4EA5AE1C03 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AlertWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_AlertWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + AC2F6510662AD5D52E367FB8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Files.cpp"; path = "../../../../modules/juce_core/native/juce_android_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + AC5460D2875AEE783D2A2AAD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLContext.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLContext.h"; sourceTree = "SOURCE_ROOT"; }; + AC61701F361E5327D6BEEEDD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MathsFunctions.h"; path = "../../../../modules/juce_core/maths/juce_MathsFunctions.h"; sourceTree = "SOURCE_ROOT"; }; + AC98912B3226C0D29B0C8861 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_data_structures.h"; path = "../../../../modules/juce_data_structures/juce_data_structures.h"; sourceTree = "SOURCE_ROOT"; }; + AD18F0927230674E2BF6552A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MP3AudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_MP3AudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + AD3AD8A8258B52524F9FD249 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableListBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableListBox.h"; sourceTree = "SOURCE_ROOT"; }; + AD5D3156CBD517EB3835798A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSubsectionReader.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioSubsectionReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + AE20126D491A4FD52D059EFB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableRectangle.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableRectangle.h"; sourceTree = "SOURCE_ROOT"; }; + AE358D496192BAED93263F83 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectWriteTypeface.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_DirectWriteTypeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + AE6120B318B44C69CEDA6321 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LowLevelGraphicsSoftwareRenderer.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"; sourceTree = "SOURCE_ROOT"; }; + AEE7A4457DD1D960854EFFF2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGL_win32.h"; path = "../../../../modules/juce_opengl/native/juce_OpenGL_win32.h"; sourceTree = "SOURCE_ROOT"; }; + AF7E3E7137C6F49674649968 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScrollBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ScrollBar.h"; sourceTree = "SOURCE_ROOT"; }; + AF81BE7F88B9B754A9005DC0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Direct2DGraphicsContext.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_Direct2DGraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + AFE354D63186BB3CF00492E3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioParameterInt.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioParameterInt.h"; sourceTree = "SOURCE_ROOT"; }; + B047628A6433E2258B11BC10 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPESynthesiser.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPESynthesiser.cpp"; sourceTree = "SOURCE_ROOT"; }; + B060C1B4985F4D6071C6C1F5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osx_MessageQueue.h"; path = "../../../../modules/juce_events/native/juce_osx_MessageQueue.h"; sourceTree = "SOURCE_ROOT"; }; + B0D4F13DF0278D8722F7C4B8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarItemPalette.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemPalette.cpp"; sourceTree = "SOURCE_ROOT"; }; + B0DD6412314A0666002F9CB5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_BluetoothMidiDevicePairingDialogue.mm"; path = "../../../../modules/juce_audio_utils/native/juce_mac_BluetoothMidiDevicePairingDialogue.mm"; sourceTree = "SOURCE_ROOT"; }; + B14FEADC75BB9C57CF45D850 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HashMap.h"; path = "../../../../modules/juce_core/containers/juce_HashMap.h"; sourceTree = "SOURCE_ROOT"; }; + B18369F3EF227348BAECC29F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Justification.h"; path = "../../../../modules/juce_graphics/placement/juce_Justification.h"; sourceTree = "SOURCE_ROOT"; }; + B19456B2F153DD805FB2F660 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiOutput.cpp"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiOutput.cpp"; sourceTree = "SOURCE_ROOT"; }; + B1EA7F743B1C77827CAB5707 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_opengl/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + B1FD722E367F8B48B2C8F658 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlowEffect.cpp"; path = "../../../../modules/juce_graphics/effects/juce_GlowEffect.cpp"; sourceTree = "SOURCE_ROOT"; }; + B2A4F9CD6F95FB4EECC2FB10 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReadWriteLock.h"; path = "../../../../modules/juce_core/threads/juce_ReadWriteLock.h"; sourceTree = "SOURCE_ROOT"; }; + B2C692D20C6190AC831ED780 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DragAndDropContainer.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropContainer.h"; sourceTree = "SOURCE_ROOT"; }; + B32E8849197AC0716AF288A3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Logger.h"; path = "../../../../modules/juce_core/logging/juce_Logger.h"; sourceTree = "SOURCE_ROOT"; }; + B3342B74DDD833F6D04A7AD3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCTypes.h"; path = "../../../../modules/juce_osc/osc/juce_OSCTypes.h"; sourceTree = "SOURCE_ROOT"; }; + B34A4D738811E54546CA93CD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCSender.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCSender.cpp"; sourceTree = "SOURCE_ROOT"; }; + B35603E21B57E534616F599B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableBorderComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableBorderComponent.h"; sourceTree = "SOURCE_ROOT"; }; + B37C746F12C8413EA4DF8157 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_JSON.h"; path = "../../../../modules/juce_core/javascript/juce_JSON.h"; sourceTree = "SOURCE_ROOT"; }; + B3B317778509714561A5E52F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DynamicLibrary.h"; path = "../../../../modules/juce_core/threads/juce_DynamicLibrary.h"; sourceTree = "SOURCE_ROOT"; }; + B3D45312AB6F986CB3B4051C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextDiff.h"; path = "../../../../modules/juce_core/text/juce_TextDiff.h"; sourceTree = "SOURCE_ROOT"; }; + B4179816650495DEE17116FF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentPeer.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ComponentPeer.h"; sourceTree = "SOURCE_ROOT"; }; + B42577EBD62A6AF7AC97DAF1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colour.h"; path = "../../../../modules/juce_graphics/colour/juce_Colour.h"; sourceTree = "SOURCE_ROOT"; }; + B4B9CE9038C38B848A3DEF42 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatWriter.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatWriter.h"; sourceTree = "SOURCE_ROOT"; }; + B4E70AE3447587BABF51A076 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Socket.cpp"; path = "../../../../modules/juce_core/network/juce_Socket.cpp"; sourceTree = "SOURCE_ROOT"; }; + B541B5E33CE3B2054B30FF03 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DynamicObject.cpp"; path = "../../../../modules/juce_core/containers/juce_DynamicObject.cpp"; sourceTree = "SOURCE_ROOT"; }; + B5612B7C73B7C8313932225C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeDocument.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeDocument.h"; sourceTree = "SOURCE_ROOT"; }; + B576434956BD89F0B571B6C4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_android_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + B594FC49609DB3E2CF3DCB0C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryInputStream.h"; path = "../../../../modules/juce_core/streams/juce_MemoryInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + B599D417EDB736AB6D22321A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferingAudioFormatReader.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_BufferingAudioFormatReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + B682CF505958CB8A57B4BA2F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MP3AudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_MP3AudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + B6B133F816AD44FBFFBF8146 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryBlock.h"; path = "../../../../modules/juce_core/memory/juce_MemoryBlock.h"; sourceTree = "SOURCE_ROOT"; }; + B700A20AB7FA4833FBE9FAF2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ImageComponent.h"; sourceTree = "SOURCE_ROOT"; }; + B77EBFED3A56358BE8599594 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentListener.h"; path = "../../../../modules/juce_gui_basics/components/juce_ComponentListener.h"; sourceTree = "SOURCE_ROOT"; }; + B785E11D273E197A78C90597 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReferenceCountedObject.h"; path = "../../../../modules/juce_core/memory/juce_ReferenceCountedObject.h"; sourceTree = "SOURCE_ROOT"; }; + B7DA793390976975B7967E54 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_TextPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + B7FC671CAA2FB61FA45FF25D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseListener.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + B8072A5DFFD892216550F18B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_devices.h"; path = "../../../../modules/juce_audio_devices/juce_audio_devices.h"; sourceTree = "SOURCE_ROOT"; }; + B82B3B2DA336D3591A73280F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BubbleMessageComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_BubbleMessageComponent.h"; sourceTree = "SOURCE_ROOT"; }; + B84FF21D1349C565A604B4D2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarItemComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + B8D0006C486909BB51D8D818 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Thread.cpp"; path = "../../../../modules/juce_core/threads/juce_Thread.cpp"; sourceTree = "SOURCE_ROOT"; }; + B8D70BA0254864A54E587B21 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ReadWriteLock.cpp"; path = "../../../../modules/juce_core/threads/juce_ReadWriteLock.cpp"; sourceTree = "SOURCE_ROOT"; }; + B8D9A7FDB054852EF59BF4AE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + B93D72307AE413B7A9A074C5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_opengl.h"; path = "../../../../modules/juce_opengl/juce_opengl.h"; sourceTree = "SOURCE_ROOT"; }; + B94D80A7B5ADCC744E7CE7E6 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_gui_extra/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + B94E7B4E08D0CE7D4B3AA470 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileChooser.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooser.h"; sourceTree = "SOURCE_ROOT"; }; + B96670417A0708508B971C58 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ProgressBar.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ProgressBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + B97A4BE39BF95F50E67A4683 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_android_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + B99F9693FE694A5A7C9AF194 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiRPN.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiRPN.cpp"; sourceTree = "SOURCE_ROOT"; }; + BA6D9591DBD5CDA91ED632A2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Synthesiser.cpp"; path = "../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.cpp"; sourceTree = "SOURCE_ROOT"; }; + BA93F94CB1FC135E6F8D8910 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DragAndDrop.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_DragAndDrop.cpp"; sourceTree = "SOURCE_ROOT"; }; + BAC4FD0C99CEBD2133F79C24 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CaretComponent.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_CaretComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + BAE421BF414A8713DC446E10 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferedInputStream.h"; path = "../../../../modules/juce_core/streams/juce_BufferedInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + BB3265EFC32ADB68A59A90CF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ValueTree.cpp"; path = "../../../../modules/juce_data_structures/values/juce_ValueTree.cpp"; sourceTree = "SOURCE_ROOT"; }; + BB422B25F3D67420F1A7A27C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemPalette.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemPalette.h"; sourceTree = "SOURCE_ROOT"; }; + BB7CA26CF4540A535BE229CA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarComponent.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + BB9242FB689B4DAEDF1963BE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_MessageManager.mm"; path = "../../../../modules/juce_events/native/juce_ios_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; }; + BBE01A9C5FD8C0656AEA9D3C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsPostScriptRenderer.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"; sourceTree = "SOURCE_ROOT"; }; + BC93A86542557AEA4230FBFE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Decibels.h"; path = "../../../../modules/juce_audio_basics/effects/juce_Decibels.h"; sourceTree = "SOURCE_ROOT"; }; + BCDFDFFF924A8FDF40B82990 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Uuid.cpp"; path = "../../../../modules/juce_core/misc/juce_Uuid.cpp"; sourceTree = "SOURCE_ROOT"; }; + BDC7D9A7A14232DD7BBCB123 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RSAKey.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_RSAKey.cpp"; sourceTree = "SOURCE_ROOT"; }; + BDFEE2E6B40F3E47E3B16D38 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertiesFile.h"; path = "../../../../modules/juce_data_structures/app_properties/juce_PropertiesFile.h"; sourceTree = "SOURCE_ROOT"; }; + BE05CCA102CA2AF18244AD0E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginListComponent.cpp"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + BE28C3777F5A468E4BE1596B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Windowing.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_Windowing.mm"; sourceTree = "SOURCE_ROOT"; }; + BE65BDFEC645F36487A68F71 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Variant.cpp"; path = "../../../../modules/juce_core/containers/juce_Variant.cpp"; sourceTree = "SOURCE_ROOT"; }; + BE6C77497C8F42747F797BBD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_MidiKeyboardComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + BE92FB177CE8690F02DDCDCA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseCursor.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseCursor.h"; sourceTree = "SOURCE_ROOT"; }; + BED621A030C4C37B2326EE4A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PerformanceCounter.cpp"; path = "../../../../modules/juce_core/time/juce_PerformanceCounter.cpp"; sourceTree = "SOURCE_ROOT"; }; + BF62BF87517BCECDF7BFC044 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCAddress.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCAddress.cpp"; sourceTree = "SOURCE_ROOT"; }; + BFD53A594929B7CC58D46BCF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_android_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + C00042157AE4788F1B7DD087 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TooltipClient.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_TooltipClient.h"; sourceTree = "SOURCE_ROOT"; }; + C041D609CA330DE35D88B7EE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Identifier.h"; path = "../../../../modules/juce_core/text/juce_Identifier.h"; sourceTree = "SOURCE_ROOT"; }; + C099D10A0E0F102A8F02A3C8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LinearSmoothedValue.h"; path = "../../../../modules/juce_audio_basics/effects/juce_LinearSmoothedValue.h"; sourceTree = "SOURCE_ROOT"; }; + C0C7CB3229B2E54FFB785CA6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OutputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_OutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + C10AF8B74E855D60A481CBD4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableImage.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableImage.h"; sourceTree = "SOURCE_ROOT"; }; + C13A62F3B2A01774AD8A9921 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_ActiveXComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_ActiveXComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + C1688DC3A2F892F53F8F15DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Fonts.mm"; path = "../../../../modules/juce_graphics/native/juce_mac_Fonts.mm"; sourceTree = "SOURCE_ROOT"; }; + C18944C7BB1D9143312BE3A7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableObjectResizer.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableObjectResizer.cpp"; sourceTree = "SOURCE_ROOT"; }; + C1BD7A3D23B873F716F6C68F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLGraphicsContext.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + C1E7A30EDB756EF33710AB4C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ModifierKeys.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_ModifierKeys.cpp"; sourceTree = "SOURCE_ROOT"; }; + C2018A1CDB83486F8EC3CD32 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_ASIO.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_ASIO.cpp"; sourceTree = "SOURCE_ROOT"; }; + C26C5CA5E6514CF7457B1ACB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryOutputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_MemoryOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + C2AF71A259E7FE29A378F063 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCTypes.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCTypes.cpp"; sourceTree = "SOURCE_ROOT"; }; + C30F3519F6ADB14DD19DE1A9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginDirectoryScanner.cpp"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginDirectoryScanner.cpp"; sourceTree = "SOURCE_ROOT"; }; + C3538736DEAAF93829AB60A0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Expression.cpp"; path = "../../../../modules/juce_core/maths/juce_Expression.cpp"; sourceTree = "SOURCE_ROOT"; }; + C378389E66043AAF139C6426 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ResizableWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + C3EE00C42BC5D0E1610F879A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Draggable3DOrientation.h"; path = "../../../../modules/juce_opengl/geometry/juce_Draggable3DOrientation.h"; sourceTree = "SOURCE_ROOT"; }; + C41176B7A1D16BC5C67A5727 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemStats.cpp"; path = "../../../../modules/juce_core/system/juce_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + C4D626F9CEE1FD851551D91C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawablePath.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawablePath.cpp"; sourceTree = "SOURCE_ROOT"; }; + C5104FA479708493D5396BAA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLPixelFormat.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLPixelFormat.h"; sourceTree = "SOURCE_ROOT"; }; + C536B42EF0D28435B6410AC9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChangeBroadcaster.h"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeBroadcaster.h"; sourceTree = "SOURCE_ROOT"; }; + C56022F99B8FB808D00CE6D7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RectanglePlacement.h"; path = "../../../../modules/juce_graphics/placement/juce_RectanglePlacement.h"; sourceTree = "SOURCE_ROOT"; }; + C63EFC8D5E9FDC58BD4A9CA2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_core.mm"; path = "../../../../modules/juce_core/juce_core.mm"; sourceTree = "SOURCE_ROOT"; }; + C6BDBA40F172EF384F005E8B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDataConverters.cpp"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioDataConverters.cpp"; sourceTree = "SOURCE_ROOT"; }; + C6CCDF5390C72C6C37F3446D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Timer.h"; path = "../../../../modules/juce_events/timers/juce_Timer.h"; sourceTree = "SOURCE_ROOT"; }; + C7373F24FD2E886C50CB3903 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BlowFish.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_BlowFish.cpp"; sourceTree = "SOURCE_ROOT"; }; + C74BED74D8B891801A2EC0FD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToneGeneratorAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ToneGeneratorAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + C78105C8AEE452AED0700AAC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableCornerComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableCornerComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + C78806A6727F44EACFDED4A5 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; + C790F51988B04C4A38A737EE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyPress.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyPress.h"; sourceTree = "SOURCE_ROOT"; }; + C7E1D706A09E4E96883215BC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Network.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + C881040590095369DFB1A19A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileFilter.cpp"; path = "../../../../modules/juce_core/files/juce_FileFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; + C8A38D75BD930F3CC7634124 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AnimatedPositionBehaviours.h"; path = "../../../../modules/juce_gui_basics/layout/juce_AnimatedPositionBehaviours.h"; sourceTree = "SOURCE_ROOT"; }; + C8C33E8254DF7A03B953FF91 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessageCollector.h"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiMessageCollector.h"; sourceTree = "SOURCE_ROOT"; }; + C8E5F60ED66385553547961E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TooltipWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_TooltipWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + C92F4F51EC54B859EAB7F09D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DeletedAtShutdown.cpp"; path = "../../../../modules/juce_events/messages/juce_DeletedAtShutdown.cpp"; sourceTree = "SOURCE_ROOT"; }; + C938DCCA334DE363B27C1E65 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UnitTest.cpp"; path = "../../../../modules/juce_core/unit_tests/juce_UnitTest.cpp"; sourceTree = "SOURCE_ROOT"; }; + C9A02E17EA16F69B823F9964 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + C9EF40785DAD416946D6AAE1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadPool.h"; path = "../../../../modules/juce_core/threads/juce_ThreadPool.h"; sourceTree = "SOURCE_ROOT"; }; + CA5CAB4B48FE75C6760BB780 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCBundle.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCBundle.cpp"; sourceTree = "SOURCE_ROOT"; }; + CA7D20970FD9BCB45BB5822A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPEZone.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEZone.cpp"; sourceTree = "SOURCE_ROOT"; }; + CAD2BDFE8443FE5648EF5A9C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_utils.mm"; path = "../../../../modules/juce_audio_utils/juce_audio_utils.mm"; sourceTree = "SOURCE_ROOT"; }; + CB0FCCF91CA21CA88D295932 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsList.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsList.cpp"; sourceTree = "SOURCE_ROOT"; }; + CB3DD188BB8AAB1931436CD4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_HiddenMessageWindow.h"; path = "../../../../modules/juce_events/native/juce_win32_HiddenMessageWindow.h"; sourceTree = "SOURCE_ROOT"; }; + CB46FEDCD501D06F0B024134 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_mac_CoreAudio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_mac_CoreAudio.cpp"; sourceTree = "SOURCE_ROOT"; }; + CB481B5E92CC1EF7898DD17F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Vector3D.h"; path = "../../../../modules/juce_opengl/geometry/juce_Vector3D.h"; sourceTree = "SOURCE_ROOT"; }; + CB82A14817C3E2ABBBBC3864 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DiscRecording.framework; path = System/Library/Frameworks/DiscRecording.framework; sourceTree = SDKROOT; }; + CBE595558B9038547D418CEE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DeletedAtShutdown.h"; path = "../../../../modules/juce_events/messages/juce_DeletedAtShutdown.h"; sourceTree = "SOURCE_ROOT"; }; + CC04871FDDC918BBD27FBA04 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Logger.cpp"; path = "../../../../modules/juce_core/logging/juce_Logger.cpp"; sourceTree = "SOURCE_ROOT"; }; + CC8C5C667CA1A6EBAA1323E4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TooltipWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_TooltipWindow.h"; sourceTree = "SOURCE_ROOT"; }; + CCA843C191E1EC761E0C4B1B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativePointPath.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePointPath.cpp"; sourceTree = "SOURCE_ROOT"; }; + CCCF7AA714938B03DE4407FA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LookAndFeel_V3.h"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V3.h"; sourceTree = "SOURCE_ROOT"; }; + CD3D15787DE0633AF0F41D14 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandID.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandID.h"; sourceTree = "SOURCE_ROOT"; }; + CD5B4BF3641DA629049AF981 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatManager.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatManager.h"; sourceTree = "SOURCE_ROOT"; }; + CD63DD73C9818BDF67BF9828 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_linux_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + CD7F6E7854F25672E5340991 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPEZoneLayout.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEZoneLayout.cpp"; sourceTree = "SOURCE_ROOT"; }; + CE06CB9CD28DE31FA1528DE5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VSTMidiEventList.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_VSTMidiEventList.h"; sourceTree = "SOURCE_ROOT"; }; + CF1F536ECAA15F7AF8B20746 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AffineTransform.h"; path = "../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"; sourceTree = "SOURCE_ROOT"; }; + CF5C8009A1AB469B2A3EDAF8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPESynthesiserBase.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPESynthesiserBase.h"; sourceTree = "SOURCE_ROOT"; }; + CF6BAD445F116D03D5AC2E69 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextLayout.h"; path = "../../../../modules/juce_graphics/fonts/juce_TextLayout.h"; sourceTree = "SOURCE_ROOT"; }; + D01F1E62E142AEF92EFEF9A0 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_gui_basics/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + D0436D71AD541BF93E0585DB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Message.h"; path = "../../../../modules/juce_events/messages/juce_Message.h"; sourceTree = "SOURCE_ROOT"; }; + D05C8EB1FF06FB0A06C39518 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Singleton.h"; path = "../../../../modules/juce_core/memory/juce_Singleton.h"; sourceTree = "SOURCE_ROOT"; }; + D080322D3DB943F3FAFE56CA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToneGeneratorAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ToneGeneratorAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + D0E00FC62C3DA68962100AD6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XmlDocument.h"; path = "../../../../modules/juce_core/xml/juce_XmlDocument.h"; sourceTree = "SOURCE_ROOT"; }; + D12A0DFFE18728E84D9AB739 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JuceHeader.h; path = ../../JuceLibraryCode/JuceHeader.h; sourceTree = "SOURCE_ROOT"; }; + D15B6AC0F49F8BAAAF71FDF6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableComposite.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableComposite.h"; sourceTree = "SOURCE_ROOT"; }; + D1696F4E539DDB4D7423051C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_android_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + D185AFBBD6B50B5CCC2A9A3D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_gui_extra.mm"; path = "../../../../modules/juce_gui_extra/juce_gui_extra.mm"; sourceTree = "SOURCE_ROOT"; }; + D1CA4E7E20D80D0AC1614F98 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InputStream.h"; path = "../../../../modules/juce_core/streams/juce_InputStream.h"; sourceTree = "SOURCE_ROOT"; }; + D215EF12EACEF7D1CF873FFE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Reverb.h"; path = "../../../../modules/juce_audio_basics/effects/juce_Reverb.h"; sourceTree = "SOURCE_ROOT"; }; + D2C6697A783580EE58B2C5EF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ModalComponentManager.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_ModalComponentManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + D34AB4BF5DF2B8C181D8D344 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_File.h"; path = "../../../../modules/juce_core/files/juce_File.h"; sourceTree = "SOURCE_ROOT"; }; + D34F5512C192C172CCC479F7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CustomTypeface.h"; path = "../../../../modules/juce_graphics/fonts/juce_CustomTypeface.h"; sourceTree = "SOURCE_ROOT"; }; + D380F5AED297C4D7BE55911C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertyPanel.h"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyPanel.h"; sourceTree = "SOURCE_ROOT"; }; + D3DC14B9B3C655A7E8383209 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDeviceSelectorComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioDeviceSelectorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + D432518F3EB9C5C792A50233 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioParameterFloat.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioParameterFloat.h"; sourceTree = "SOURCE_ROOT"; }; + D45979081B92930C507C3B87 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListenerList.h"; path = "../../../../modules/juce_core/containers/juce_ListenerList.h"; sourceTree = "SOURCE_ROOT"; }; + D4C20B86C7B0A9FFBCA8FE6B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_Windowing.mm"; path = "../../../../modules/juce_gui_basics/native/juce_ios_Windowing.mm"; sourceTree = "SOURCE_ROOT"; }; + D4C5D7EE1A40AD018E5E6F02 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeTime.cpp"; path = "../../../../modules/juce_core/time/juce_RelativeTime.cpp"; sourceTree = "SOURCE_ROOT"; }; + D4F3296FB4D267CD9DBAEC22 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_osc/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + D5313BED337DBBC9A1F7D9CB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Font.h"; path = "../../../../modules/juce_graphics/fonts/juce_Font.h"; sourceTree = "SOURCE_ROOT"; }; + D56935CBCD13662FDB475D86 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResamplingAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ResamplingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + D62FB517B25339128E860F9F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IIRFilterAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_IIRFilterAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + D64370EA15694620740DAEF4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GenericAudioProcessorEditor.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_GenericAudioProcessorEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + D656F7818C72485E3ECC50C9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPENote.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPENote.h"; sourceTree = "SOURCE_ROOT"; }; + D65C8F172D8C1FD532B67348 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XmlElement.h"; path = "../../../../modules/juce_core/xml/juce_XmlElement.h"; sourceTree = "SOURCE_ROOT"; }; + D697C54442250F5A720D2CBF = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_events/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + D79506405903905814D5B32B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableLayoutManager.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutManager.h"; sourceTree = "SOURCE_ROOT"; }; + D7C7D8F1CD5FCCAD941DAB9A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioParameterChoice.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioParameterChoice.h"; sourceTree = "SOURCE_ROOT"; }; + D7D3D13E56861B7937B08EFF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FilenameComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilenameComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + D7ECFEB15046C60EAACA0F54 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Colours.cpp"; path = "../../../../modules/juce_graphics/colour/juce_Colours.cpp"; sourceTree = "SOURCE_ROOT"; }; + D7F183070EDA8D6D7659BDA1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UndoManager.h"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoManager.h"; sourceTree = "SOURCE_ROOT"; }; + D88DBC78062ECA21D18C1D7C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AsyncUpdater.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_AsyncUpdater.cpp"; sourceTree = "SOURCE_ROOT"; }; + D8B377D58489B765A9369335 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ListBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + D8E43470409EC218DC96B555 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyMappingEditorComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + D8E594FED69859E740E91543 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableEdgeComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.h"; sourceTree = "SOURCE_ROOT"; }; + D9064DA71018E0FB2C02BD3B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TreeView.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TreeView.cpp"; sourceTree = "SOURCE_ROOT"; }; + D93778DB7CCB4B438A59D8AB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemFactory.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemFactory.h"; sourceTree = "SOURCE_ROOT"; }; + D96D639C9895ADEB144D5E40 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPEInstrument.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEInstrument.cpp"; sourceTree = "SOURCE_ROOT"; }; + D9B8313EC8799E313E1F7948 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_IIRFilterAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_IIRFilterAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + D9FC957CB510399786D69D8D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertiesFile.cpp"; path = "../../../../modules/juce_data_structures/app_properties/juce_PropertiesFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + DA768EEF9A95E554F7903B60 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Variant.h"; path = "../../../../modules/juce_core/containers/juce_Variant.h"; sourceTree = "SOURCE_ROOT"; }; + DB5365D435396965FC3974BC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Threads.mm"; path = "../../../../modules/juce_core/native/juce_mac_Threads.mm"; sourceTree = "SOURCE_ROOT"; }; + DB85BDB1DF720391F80F0D94 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SplashScreen.h"; path = "../../../../modules/juce_gui_extra/misc/juce_SplashScreen.h"; sourceTree = "SOURCE_ROOT"; }; + DC15808BB97E1521C055A470 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyListener.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyListener.h"; sourceTree = "SOURCE_ROOT"; }; + DC3AA6076CA4CFB066F146D2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorParameterWithID.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioProcessorParameterWithID.h"; sourceTree = "SOURCE_ROOT"; }; + DC4E35EEAF01C08CFC4A4CAC = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IPAddress.h"; path = "../../../../modules/juce_core/network/juce_IPAddress.h"; sourceTree = "SOURCE_ROOT"; }; + DC50301B6C3FDAE98E224E76 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginFormatManager.cpp"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormatManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + DC76782D8BA40A4CA365C279 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_data_structures/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + DC9C7030E63CDD457DE54498 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiInput.h"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiInput.h"; sourceTree = "SOURCE_ROOT"; }; + DCA560DA0C66BB6D6EA92500 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_freetype_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_freetype_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + DCB2FAD653F074F08A916315 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileInputStream.h"; path = "../../../../modules/juce_core/files/juce_FileInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + DCE5AE0A528365094776BE17 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LookAndFeel.h"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel.h"; sourceTree = "SOURCE_ROOT"; }; + DCE64BC49FFC96654D30AD87 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallbackMessage.h"; path = "../../../../modules/juce_events/messages/juce_CallbackMessage.h"; sourceTree = "SOURCE_ROOT"; }; + DD6265BDB310A14072805592 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferingAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_BufferingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + DD866BA894AC019F86C5F4C9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_cryptography.mm"; path = "../../../../modules/juce_cryptography/juce_cryptography.mm"; sourceTree = "SOURCE_ROOT"; }; + DDD307F9E18E442E43786B0E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BluetoothMidiDevicePairingDialogue.h"; path = "../../../../modules/juce_audio_utils/gui/juce_BluetoothMidiDevicePairingDialogue.h"; sourceTree = "SOURCE_ROOT"; }; + DDD38519DCDDE8BDE8AC092B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SliderPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_SliderPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + DE42EED0A04BB9F90D623BAF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryOutputStream.h"; path = "../../../../modules/juce_core/streams/juce_MemoryOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + DE508CE9EE6F6AFC689CDA33 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AppleRemote.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_AppleRemote.mm"; sourceTree = "SOURCE_ROOT"; }; + DE66F892ACF4DCAE897F3BE4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Identifier.cpp"; path = "../../../../modules/juce_core/text/juce_Identifier.cpp"; sourceTree = "SOURCE_ROOT"; }; + DEA16225BAB46F055607F766 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FFT.cpp"; path = "../../../../modules/juce_audio_basics/effects/juce_FFT.cpp"; sourceTree = "SOURCE_ROOT"; }; + DEB62073956FBC23B33C3215 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeTokeniser.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; + DF0C3025BC5B572CC28B8EEB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Clipboard.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_Clipboard.cpp"; sourceTree = "SOURCE_ROOT"; }; + DFC37DEA417DA0FC812FDAC2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_win32_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + E0069A75C60B6ECB8E8CBFDD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseInactivityDetector.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInactivityDetector.cpp"; sourceTree = "SOURCE_ROOT"; }; + E04A8F9E8B767CC682430498 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPathListComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.h"; sourceTree = "SOURCE_ROOT"; }; + E07D1F3E8D8727F58F868B90 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CoreGraphicsContext.h"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + E0F302E28F1CA85EE2A60BEB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemTrayIconComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_SystemTrayIconComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + E26BB7E510E3BEE029962DD3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Sampler.h"; path = "../../../../modules/juce_audio_formats/sampler/juce_Sampler.h"; sourceTree = "SOURCE_ROOT"; }; + E27E9AF73E442C75C0091F8D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPool.h"; path = "../../../../modules/juce_core/text/juce_StringPool.h"; sourceTree = "SOURCE_ROOT"; }; + E325C8811CC4773321407E9B = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_formats/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + E33B4A0A655F6365B17CE1F4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessor.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessor.h"; sourceTree = "SOURCE_ROOT"; }; + E368DF5C372BB7CCE82DC763 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ConcertinaPanel.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ConcertinaPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + E41A33EB67E7E190A88A3AD3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DropShadowEffect.h"; path = "../../../../modules/juce_graphics/effects/juce_DropShadowEffect.h"; sourceTree = "SOURCE_ROOT"; }; + E428D9BEA0B66A12448F3649 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileInputSource.cpp"; path = "../../../../modules/juce_core/streams/juce_FileInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + E44B8F906461AB6AC47B374A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LADSPAPluginFormat.cpp"; path = "../../../../modules/juce_audio_processors/format_types/juce_LADSPAPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + E4546F8D14174EB8C05A47C3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferedInputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_BufferedInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + E4D861851BBC388FE4CB5DFA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TreeView.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TreeView.h"; sourceTree = "SOURCE_ROOT"; }; + E540A462EBB080CF14B31764 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiTimer.cpp"; path = "../../../../modules/juce_events/timers/juce_MultiTimer.cpp"; sourceTree = "SOURCE_ROOT"; }; + E614AF9C124E2CEE229954DA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RecentlyOpenedFilesList.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.cpp"; sourceTree = "SOURCE_ROOT"; }; + E6526B2FBE4F9F3DF819A030 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Label.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Label.cpp"; sourceTree = "SOURCE_ROOT"; }; + E73144B6B99143468DB98842 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLShaderProgram.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLShaderProgram.cpp"; sourceTree = "SOURCE_ROOT"; }; + E74B5E2C22C81CA99C9CB473 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JSON.cpp"; path = "../../../../modules/juce_core/javascript/juce_JSON.cpp"; sourceTree = "SOURCE_ROOT"; }; + E8DE188896E5791E338D4EE7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyPress.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyPress.cpp"; sourceTree = "SOURCE_ROOT"; }; + EA53F7F4674786EB152A2273 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MixerAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_MixerAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + EC794872987FEA2E129C589A = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; + EE2712F5383D654D470BA1C1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessage.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessage.cpp"; sourceTree = "SOURCE_ROOT"; }; + F3292E3563DB7ABB076DB400 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; + 88B666E3E64434D066937972 = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "JUCE Network Graphics Demo.app"; sourceTree = "BUILT_PRODUCTS_DIR"; }; + D9958673B7BFB76E4F815126 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LAMEEncoderAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_LAMEEncoderAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + E45C1684DCDBFD3B76F0B209 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + E4D3972CA0596447A3C0A5EB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPEValue.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEValue.cpp"; sourceTree = "SOURCE_ROOT"; }; + E526AF80946C3F077C1C63C6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationBase.cpp"; path = "../../../../modules/juce_events/messages/juce_ApplicationBase.cpp"; sourceTree = "SOURCE_ROOT"; }; + E7230A4CC16B57C93FCE675A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioThumbnail.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnail.h"; sourceTree = "SOURCE_ROOT"; }; + E74DA5EF2C208608AF676212 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RenderingHelpers.h"; path = "../../../../modules/juce_graphics/native/juce_RenderingHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + E75749124D1F2FD391C01787 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorPlayer.cpp"; path = "../../../../modules/juce_audio_utils/players/juce_AudioProcessorPlayer.cpp"; sourceTree = "SOURCE_ROOT"; }; + E78FFEA6B1BE4AD1EE43C60D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_BluetoothMidiDevicePairingDialogue.cpp"; path = "../../../../modules/juce_audio_utils/native/juce_android_BluetoothMidiDevicePairingDialogue.cpp"; sourceTree = "SOURCE_ROOT"; }; + E8649B16BA011770D16BF051 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioChannelSet.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioChannelSet.cpp"; sourceTree = "SOURCE_ROOT"; }; + E89452B0110096760B06397C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_ClangBugWorkaround.h"; path = "../../../../modules/juce_core/native/juce_mac_ClangBugWorkaround.h"; sourceTree = "SOURCE_ROOT"; }; + E8B02F47799FC984D3FE1083 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_String.cpp"; path = "../../../../modules/juce_core/text/juce_String.cpp"; sourceTree = "SOURCE_ROOT"; }; + EA65F835FDB1DB86406C9471 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageFileFormat.h"; path = "../../../../modules/juce_graphics/images/juce_ImageFileFormat.h"; sourceTree = "SOURCE_ROOT"; }; + EA8A250986871A036D42DB94 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Random.cpp"; path = "../../../../modules/juce_core/maths/juce_Random.cpp"; sourceTree = "SOURCE_ROOT"; }; + EAED7C0A5FFE6D29DD0A0D9A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPool.cpp"; path = "../../../../modules/juce_core/text/juce_StringPool.cpp"; sourceTree = "SOURCE_ROOT"; }; + EB267F3D6CA06EDB2EB92BBE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_HighResolutionTimer.cpp"; path = "../../../../modules/juce_core/threads/juce_HighResolutionTimer.cpp"; sourceTree = "SOURCE_ROOT"; }; + EB5D5F550EC7617B00286524 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCAddress.h"; path = "../../../../modules/juce_osc/osc/juce_OSCAddress.h"; sourceTree = "SOURCE_ROOT"; }; + EB990950081504EBD067FF9A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LookAndFeel_V2.cpp"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V2.cpp"; sourceTree = "SOURCE_ROOT"; }; + EC97D7ABC489A5E1BD7BAF41 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioCDReader.h"; path = "../../../../modules/juce_audio_devices/audio_cd/juce_AudioCDReader.h"; sourceTree = "SOURCE_ROOT"; }; + ECB67354113361CDADA77BC6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ButtonPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + ECD46DBA26680A8F86569C2E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Button.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_Button.cpp"; sourceTree = "SOURCE_ROOT"; }; + ED256A12202BBE4615053DD5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCReceiver.h"; path = "../../../../modules/juce_osc/osc/juce_OSCReceiver.h"; sourceTree = "SOURCE_ROOT"; }; + ED2D3A163433149267F3C47D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LiveConstantEditor.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_LiveConstantEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + EE6895EE5020998469F17433 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Timer.cpp"; path = "../../../../modules/juce_events/timers/juce_Timer.cpp"; sourceTree = "SOURCE_ROOT"; }; + EE77BB1682ABC799703B5972 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChannelRemappingAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ChannelRemappingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + EE8916C220D09A855BDCB95C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedReadLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedReadLock.h"; sourceTree = "SOURCE_ROOT"; }; + EF337D9B43E0569DE3E48279 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MessageManager.h"; path = "../../../../modules/juce_events/messages/juce_MessageManager.h"; sourceTree = "SOURCE_ROOT"; }; + EF43908046753F20507CC3B0 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_core/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + EF805FA4F575DBCAF69C1AE4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SVGParser.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_SVGParser.cpp"; sourceTree = "SOURCE_ROOT"; }; + EF8BAD426428948862257FC4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyboardFocusTraverser.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyboardFocusTraverser.cpp"; sourceTree = "SOURCE_ROOT"; }; + EFD1CE8574994B5B6D078FD9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_OpenSL.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_android_OpenSL.cpp"; sourceTree = "SOURCE_ROOT"; }; + F0C6892CD64002A92B68F37B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCTimeTag.h"; path = "../../../../modules/juce_osc/osc/juce_OSCTimeTag.h"; sourceTree = "SOURCE_ROOT"; }; + F13FB76427772F29EAD88728 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StandardHeader.h"; path = "../../../../modules/juce_core/system/juce_StandardHeader.h"; sourceTree = "SOURCE_ROOT"; }; + F163668D4C2343C282574A78 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UnitTest.h"; path = "../../../../modules/juce_core/unit_tests/juce_UnitTest.h"; sourceTree = "SOURCE_ROOT"; }; + F168A7541EBE16D46968C97D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WindowsMediaAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_WindowsMediaAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + F199EA5517B054547E193F08 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UIViewComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_UIViewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + F1AEC47949E75A0B4DBEA130 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LookAndFeel_V3.cpp"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V3.cpp"; sourceTree = "SOURCE_ROOT"; }; + F22EB69681485A38365940DD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MD5.h"; path = "../../../../modules/juce_cryptography/hashing/juce_MD5.h"; sourceTree = "SOURCE_ROOT"; }; + F31752A999520E521BC507D1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentListener.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_ComponentListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + F3472E21D095DB91ADE8D714 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RectanglePlacement.cpp"; path = "../../../../modules/juce_graphics/placement/juce_RectanglePlacement.cpp"; sourceTree = "SOURCE_ROOT"; }; + F36CA213BBF312F093F8C6E7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FloatVectorOperations.h"; path = "../../../../modules/juce_audio_basics/buffers/juce_FloatVectorOperations.h"; sourceTree = "SOURCE_ROOT"; }; + F39E719901F12B16AD7D600C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Value.h"; path = "../../../../modules/juce_data_structures/values/juce_Value.h"; sourceTree = "SOURCE_ROOT"; }; + F4825162600591FAF2F1F79E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileInputSource.h"; path = "../../../../modules/juce_core/streams/juce_FileInputSource.h"; sourceTree = "SOURCE_ROOT"; }; + F4ED9D3E27226B0974BEC563 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LiveConstantEditor.h"; path = "../../../../modules/juce_gui_extra/misc/juce_LiveConstantEditor.h"; sourceTree = "SOURCE_ROOT"; }; + F540CB77351EAEFC2B3D05CA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InterprocessConnection.cpp"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnection.cpp"; sourceTree = "SOURCE_ROOT"; }; + F57531462BB169A5F0224ADE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChangeBroadcaster.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeBroadcaster.cpp"; sourceTree = "SOURCE_ROOT"; }; + F5A0AF00BD4B6471D5057B9F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiBuffer.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; + F5A991062FE0EEEFE0CAAC17 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ColourGradient.h"; path = "../../../../modules/juce_graphics/colour/juce_ColourGradient.h"; sourceTree = "SOURCE_ROOT"; }; + F6440E90EC3193EBD07AD3D7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentBuilder.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBuilder.h"; sourceTree = "SOURCE_ROOT"; }; + F672C9D6819D4CEA39A76445 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_SystemTrayIcon.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_SystemTrayIcon.cpp"; sourceTree = "SOURCE_ROOT"; }; + F6943E7562D614D4D2F687E4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Javascript.h"; path = "../../../../modules/juce_core/javascript/juce_Javascript.h"; sourceTree = "SOURCE_ROOT"; }; + F6F314A674A9535D6425F794 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiDataConcatenator.h"; path = "../../../../modules/juce_audio_devices/native/juce_MidiDataConcatenator.h"; sourceTree = "SOURCE_ROOT"; }; + F70EF841DE659606631FBD20 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Base64.h"; path = "../../../../modules/juce_core/text/juce_Base64.h"; sourceTree = "SOURCE_ROOT"; }; + F756FBC7A6836696BCADD2B4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_formats.mm"; path = "../../../../modules/juce_audio_formats/juce_audio_formats.mm"; sourceTree = "SOURCE_ROOT"; }; + F765D762D0012A1607F5622A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_HyperlinkButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_HyperlinkButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + F7BF997FD40A633D0B519290 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Network.cpp"; path = "../../../../modules/juce_core/native/juce_android_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + F80B331AD631D4F77A673691 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BubbleComponent.h"; path = "../../../../modules/juce_gui_basics/misc/juce_BubbleComponent.h"; sourceTree = "SOURCE_ROOT"; }; + F81AAE65A3598A15825E6794 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeParallelogram.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeParallelogram.h"; sourceTree = "SOURCE_ROOT"; }; + F885D9146184104D5D7C05C2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGL_linux.h"; path = "../../../../modules/juce_opengl/native/juce_OpenGL_linux.h"; sourceTree = "SOURCE_ROOT"; }; + F8D8C58CEDD851E0274B5402 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colours.h"; path = "../../../../modules/juce_graphics/colour/juce_Colours.h"; sourceTree = "SOURCE_ROOT"; }; + F906FBF064A716C5EADF5708 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_VSTPluginFormat.cpp"; path = "../../../../modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + F90875A12DE5F66F7E70CC89 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentAnimator.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentAnimator.h"; sourceTree = "SOURCE_ROOT"; }; + F9668685A98E33554348BEA6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Path.h"; path = "../../../../modules/juce_graphics/geometry/juce_Path.h"; sourceTree = "SOURCE_ROOT"; }; + F9A9B6A4120CCCBBD2057F9B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MD5.cpp"; path = "../../../../modules/juce_cryptography/hashing/juce_MD5.cpp"; sourceTree = "SOURCE_ROOT"; }; + F9E113AE1D2940394B95BC0F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Initialisation.h"; path = "../../../../modules/juce_events/messages/juce_Initialisation.h"; sourceTree = "SOURCE_ROOT"; }; + FA536BA553A2F6EFBB12B3B9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IIRFilter.h"; path = "../../../../modules/juce_audio_basics/effects/juce_IIRFilter.h"; sourceTree = "SOURCE_ROOT"; }; + FACE861A61DE757C5D446CE6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChannelRemappingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ChannelRemappingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + FAF2AB8383B89E9A5AF5E946 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyboardFocusTraverser.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyboardFocusTraverser.h"; sourceTree = "SOURCE_ROOT"; }; + FBC97D6777B3B66837ED4404 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourSelector.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_ColourSelector.cpp"; sourceTree = "SOURCE_ROOT"; }; + FC4C976D76A0B0F932B3188A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ModifierKeys.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_ModifierKeys.h"; sourceTree = "SOURCE_ROOT"; }; + FC4E3F4086054CB8E200F393 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentDragger.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_ComponentDragger.h"; sourceTree = "SOURCE_ROOT"; }; + FC4F3DA26D3500959DF7662A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GZIPCompressorOutputStream.h"; path = "../../../../modules/juce_core/zip/juce_GZIPCompressorOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + FCA5F5B553B92A4A49C3F1EF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SelectedItemSet.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_SelectedItemSet.h"; sourceTree = "SOURCE_ROOT"; }; + FCD17983F05312385F6C17F6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLFrameBuffer.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLFrameBuffer.h"; sourceTree = "SOURCE_ROOT"; }; + FCFEAB9C67D9B7FB03AB51BD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SubregionStream.h"; path = "../../../../modules/juce_core/streams/juce_SubregionStream.h"; sourceTree = "SOURCE_ROOT"; }; + FD28016A7BC2B34138B3C986 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + FD362E3DD7D0ED06015A52CB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Component.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_Component.cpp"; sourceTree = "SOURCE_ROOT"; }; + FE11EB2D3A4040325E458261 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PopupMenu.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_PopupMenu.cpp"; sourceTree = "SOURCE_ROOT"; }; + FE3080D1EC46C287930B7E18 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MainMenu.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_MainMenu.mm"; sourceTree = "SOURCE_ROOT"; }; + FEF9EF55D1BF28C6A84DE4C0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemClipboard.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_SystemClipboard.h"; sourceTree = "SOURCE_ROOT"; }; + FF43622B9AAF3751B65DD81B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Toolbar.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Toolbar.cpp"; sourceTree = "SOURCE_ROOT"; }; + FF7509FDC5B23104C7AF1665 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Atomic.h"; path = "../../../../modules/juce_core/memory/juce_Atomic.h"; sourceTree = "SOURCE_ROOT"; }; + FF796B6850F1EE2F18668D06 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedPointer.h"; path = "../../../../modules/juce_core/memory/juce_ScopedPointer.h"; sourceTree = "SOURCE_ROOT"; }; + FFE74EF868B7D7FAA24DE742 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiTouchMapper.h"; path = "../../../../modules/juce_gui_basics/native/juce_MultiTouchMapper.h"; sourceTree = "SOURCE_ROOT"; }; + 5A58AF0A052C539F0E342A88 = {isa = PBXGroup; children = ( + 4FF648D72D6F1A78956CDA1B, + 77C0AC21C1028911123844FC, + 9982F39121710EFFD5FEEAEF, + 8E2F72AFA0CDA64F0C07F105, + 25DEDA8C9F94A6C8DFC8E53E, ); name = Source; sourceTree = ""; }; + 856518502A948813C90E6761 = {isa = PBXGroup; children = ( + 5A58AF0A052C539F0E342A88, + 0ADF0DECFCB1DB4D3A847EB5, ); name = "JUCE Network Graphics Demo"; sourceTree = ""; }; + 403063849E9ABF0AFAA5F77A = {isa = PBXGroup; children = ( + C6BDBA40F172EF384F005E8B, + 3E313B4096468DD5EE551616, + 096BB22B9363BAC781C4668D, + 905451CEDBDE4649B1DFB267, + F36CA213BBF312F093F8C6E7, ); name = buffers; sourceTree = ""; }; + 18CF79E3FDF919020AE9FAD3 = {isa = PBXGroup; children = ( + BC93A86542557AEA4230FBFE, + DEA16225BAB46F055607F766, + 21463097F39306018F8C1FC9, + 05C08B8A9AA77D8F0064467A, + FA536BA553A2F6EFBB12B3B9, + 1070CD5C289E13B829661610, + 48322022C7AD99C881909D7C, + C099D10A0E0F102A8F02A3C8, + D215EF12EACEF7D1CF873FFE, ); name = effects; sourceTree = ""; }; + C14C9964E9305EADA7B6408C = {isa = PBXGroup; children = ( + F5A0AF00BD4B6471D5057B9F, + 9DEFA41E52F11C989DF313BF, + 7A1E8F59B14140851D40DF29, + 912F268EBF0738584F70DE1C, + 7A55E53EC2B5BC85F365A342, + 649BBA6C8D29853266E8D2A2, + EE2712F5383D654D470BA1C1, + 834384DBC61E38E789FD9B7D, + 1A593509B099BCDAFE5303E5, + 000265F702986DE8DD932309, + B99F9693FE694A5A7C9AF194, + 72FD8AC04D2B0BEE1A5E2596, ); name = midi; sourceTree = ""; }; + 535BC18EA5604A8E324D5E7B = {isa = PBXGroup; children = ( + D96D639C9895ADEB144D5E40, + 15EC4D082AC33A2DFBAA8560, + 912AC6CBEC5E7E91609B16C8, + 968CED5FCF62B31D4346DEBD, + 51F0F2EB22A60569E24FB86E, + D656F7818C72485E3ECC50C9, + B047628A6433E2258B11BC10, + 111058D736659E73DB065469, + 2E0625B5D067CE55D4D7F087, + CF5C8009A1AB469B2A3EDAF8, + 13C50C345BB1AE097DE51F8D, + 8CA2DB791512EB0E6AC7F7C2, + E4D3972CA0596447A3C0A5EB, + 5F6DEAB3DA5EF6B9F437C3CF, + CA7D20970FD9BCB45BB5822A, + 7F9E3A2D24D587405B3B5E76, + CD7F6E7854F25672E5340991, + 32D795DD8B6BBBE5450AF17C, ); name = mpe; sourceTree = ""; }; + BCC14FB1DB5AF2D57E552587 = {isa = PBXGroup; children = ( + 902C20CD7DEB18B69F0E1BE7, + 65746338AF0FDE118A3D02C1, + DD6265BDB310A14072805592, + FACE861A61DE757C5D446CE6, + EE77BB1682ABC799703B5972, + D9B8313EC8799E313E1F7948, + D62FB517B25339128E860F9F, + 9C68E54122484FE80D919763, + EA53F7F4674786EB152A2273, + 46CE1F3B0AB174ABD1B4E2AB, + 729F27B2D82EF129C024F3F6, + D56935CBCD13662FDB475D86, + 4A0C286E6CB8D31A8C048A88, + 1377617053AF07B0E571F77B, + C74BED74D8B891801A2EC0FD, + D080322D3DB943F3FAFE56CA, ); name = sources; sourceTree = ""; }; + B1873441490E1D82AFF483A9 = {isa = PBXGroup; children = ( + BA6D9591DBD5CDA91ED632A2, + 1F13AE4603A0990EF106C23D, ); name = synthesisers; sourceTree = ""; }; + 81E8B4FDE23F10677BD70DCD = {isa = PBXGroup; children = ( + 403063849E9ABF0AFAA5F77A, + 18CF79E3FDF919020AE9FAD3, + C14C9964E9305EADA7B6408C, + 535BC18EA5604A8E324D5E7B, + BCC14FB1DB5AF2D57E552587, + B1873441490E1D82AFF483A9, + 3180211C7FFE65342212F8DC, + A23791E205B22F21521DF9F4, ); name = "juce_audio_basics"; sourceTree = ""; }; + 4BEC77BC6E7CFADDDF9B8150 = {isa = PBXGroup; children = ( + A64B09FC5A333C71F069C890, + 0566C8771A3278C82D183A98, + 50E3DBC3F2D136A9A59ED1D8, + 2E03472E7A539A88DE0273A0, + 5C82D0E8AB39B155A987109A, + 0EAE4A004CEB66D275142FCA, + 3913A6C3147F55D7390405B5, ); name = "audio_io"; sourceTree = ""; }; + E59E95D4515B03C9EA7E9340 = {isa = PBXGroup; children = ( + DC9C7030E63CDD457DE54498, + 9E2535830FEEC2462D0A01C0, + C8C33E8254DF7A03B953FF91, + B19456B2F153DD805FB2F660, + 5D17004F2CE0F2DBFDE79EA4, ); name = "midi_io"; sourceTree = ""; }; + DC49ACA858E5F3CF488CE4A0 = {isa = PBXGroup; children = ( + 7F64D580AA191FBC2A74E943, + 8F2FACABB024833B7F932BC5, + 03F0E358E328911FE44415CC, + 666F7A0F487C9974AF12E8A9, ); name = sources; sourceTree = ""; }; + C66C381D76BA1142DA9D14B3 = {isa = PBXGroup; children = ( + A127A78E54490885EA61239C, + 7E9DE536E504F1EDDF5532C3, + EC97D7ABC489A5E1BD7BAF41, ); name = "audio_cd"; sourceTree = ""; }; + 96990D0DA7180EC733377986 = {isa = PBXGroup; children = ( + 25F7E2E0BF7DF2E71648BFFE, + 51FFA102D25322925C454ACD, + EFD1CE8574994B5B6D078FD9, + 1DE819F8D407705C57EACD26, + 008187B05C0B633EE28ABE56, + 4E1AFB1AF80B103D7392B44A, + 251F11F4407E34F0F88AA1A2, + 71894D722D549F75275D3D53, + 4FEBD56CB96D3AE8E963098C, + 1DE2689A8FBB19007E892906, + CB46FEDCD501D06F0B024134, + 99F278EFA35A61B6E2AE1A61, + F6F314A674A9535D6425F794, + C2018A1CDB83486F8EC3CD32, + 085FC01079EE77D52D1ED893, + 84BD8495CE3D747852CB0463, + 5614CF8ACD28587D8E9FC249, + 2B14736595E3FFC604AFBD7C, + 1E206D97A7B91545FE0D27CD, ); name = native; sourceTree = ""; }; + 05C8723D6B99C1C95FA1860E = {isa = PBXGroup; children = ( + 4BEC77BC6E7CFADDDF9B8150, + E59E95D4515B03C9EA7E9340, + DC49ACA858E5F3CF488CE4A0, + C66C381D76BA1142DA9D14B3, + 96990D0DA7180EC733377986, + 9270C4E5EF60DE6108311112, + B8072A5DFFD892216550F18B, ); name = "juce_audio_devices"; sourceTree = ""; }; + 1554E277DE02E3B888375604 = {isa = PBXGroup; children = ( + 282B495AB94F47BD60C7E62F, + 9002A3D1CD5740D9C50A834C, + 5D2856B19DC13C57D70E42DE, + CD5B4BF3641DA629049AF981, + 72F927799B30E12B01E9C00A, + 5F43B58D079ECA063DEFCD0E, + 60DD038BF3685FF524C3A720, + 101637AD0747ECC48982FDAA, + 8784634AAD6079EF097FD751, + B4B9CE9038C38B848A3DEF42, + AD5D3156CBD517EB3835798A, + 2AA07C55625E1ADD22E9A4D5, + B599D417EDB736AB6D22321A, + 806774C77EBD99266FE68583, + A61EAEE68793E336E6F8BCF7, ); name = format; sourceTree = ""; }; + 8B72B48B4486011378022F46 = {isa = PBXGroup; children = ( + 382C1DB36E41E2DEB77B11ED, + 66E12916E12BBC042F715891, + 5484B58D02279CE228079C12, + 6D8A6213F2A881CAD1DE5A7E, + 02B2B5127DF9BF906368E988, + 2DAA78D998963C52C0DC9AC5, + 9271A906B51A234888B79D68, + D9958673B7BFB76E4F815126, + AD18F0927230674E2BF6552A, + B682CF505958CB8A57B4BA2F, + A39FC18F44E512E5047DBB15, + 7CE6320BC8094DB37E65721C, + 8B7B53B20BE2BD10F219B06A, + 01E2D0EC4D596AB94D022EA3, + 2F73502BA5E56A33469D93EC, + 1172DC1C9E21CAAF0C82687D, + 5864A3A4338CCCB6524CE499, + F168A7541EBE16D46968C97D, ); name = codecs; sourceTree = ""; }; + AD3107F336CFB1ECE81D56C6 = {isa = PBXGroup; children = ( + 505B41AE1B6E2B7FF4B0D859, + E26BB7E510E3BEE029962DD3, ); name = sampler; sourceTree = ""; }; + E645944AAADA77E0BF55B753 = {isa = PBXGroup; children = ( + 1554E277DE02E3B888375604, + 8B72B48B4486011378022F46, + AD3107F336CFB1ECE81D56C6, + E325C8811CC4773321407E9B, + 1ED0FAAEFF9D4A6426E76E89, ); name = "juce_audio_formats"; sourceTree = ""; }; + 7BB74D988E491E6D61D92993 = {isa = PBXGroup; children = ( + E8649B16BA011770D16BF051, + 0DB078E2523AD3ABE77A95F6, + 47C8219AACA73B2EBE302A35, + 904D7BEE6279D62983E57DCA, + 3193E205AA627C635FF236E0, + E33B4A0A655F6365B17CE1F4, + 2C3C1AC071BC4252A33CD5AC, + 21DB75038D3D7619DD53E851, + 8A26883DAA6CE47336C86A40, + 21AC48EBF734FA48E43F62BE, + 4A3A8B6069E903B8F0F62DDF, + 87204C5BCC65051CF188DF6D, + D64370EA15694620740DAEF4, + 174350B11E9207B7038E2BFA, + A42479D8A3AE579891E8741A, + 487F7DFCFB0CF15BDFEBD24E, ); name = processors; sourceTree = ""; }; + 7DFB429912E7CFEEA12BA501 = {isa = PBXGroup; children = ( + 6E27EBF864367EBA8B44DFA9, + E45C1684DCDBFD3B76F0B209, + DC50301B6C3FDAE98E224E76, + 9671131059C459A1E119535E, ); name = format; sourceTree = ""; }; + BCF1810AF6CFAC9FA7F520BA = {isa = PBXGroup; children = ( + 3F6BE2A8CAF1C23380D884F5, + 1D153366F6EA459B397CA356, + E44B8F906461AB6AC47B374A, + 914ED3B5EEB409125EADBB2F, + 10D5F9D8D44A252288D19F42, + 7A41A9C37A8BA7EFB6D1F518, + 264B51063F7AA584D23B426E, + 545C5A5F29523968A387FD91, + CE06CB9CD28DE31FA1528DE5, + F906FBF064A716C5EADF5708, + 5B8CE8EC0CEDF800AD5B71E1, ); name = "format_types"; sourceTree = ""; }; + 355D27971E753065A8756A77 = {isa = PBXGroup; children = ( + 9411003BA4D471F2C95269ED, + 4AA0B96439AA013BFDFED0FF, + C30F3519F6ADB14DD19DE1A9, + 3BEA5E0CD39AABEAB92B425E, + BE05CCA102CA2AF18244AD0E, + A6B7388C11968139DFB7F95B, ); name = scanning; sourceTree = ""; }; + CF3502266720B326C5ED5310 = {isa = PBXGroup; children = ( + 1D0F3060DD65B305A1C0E72A, + D7C7D8F1CD5FCCAD941DAB9A, + D432518F3EB9C5C792A50233, + AFE354D63186BB3CF00492E3, + 96664A31FD92DEA43D231D23, + DC3AA6076CA4CFB066F146D2, + 5ED809701F235D958635DACA, + 877FC50B817B57928FD4395C, ); name = utilities; sourceTree = ""; }; + 5102C5BFB76FB218BB512EC7 = {isa = PBXGroup; children = ( + 7BB74D988E491E6D61D92993, + 7DFB429912E7CFEEA12BA501, + BCF1810AF6CFAC9FA7F520BA, + 355D27971E753065A8756A77, + CF3502266720B326C5ED5310, + 9905205B6EDA5FAFA31EA03F, + A94C6EB19B9BF24D83054D60, ); name = "juce_audio_processors"; sourceTree = ""; }; + 3622CFF351CF31035D444625 = {isa = PBXGroup; children = ( + 26DDCC5B563483D67D645398, + 6FDDB32B35EF2BC6C4E353C0, + D3DC14B9B3C655A7E8383209, + 51A7CB5736B53C5EEC163116, + 1F2CA6A50920B655340552D6, + E7230A4CC16B57C93FCE675A, + 5EEA4C0CF28336697C027202, + 1FEF9A01DC5486A9FA1CDF04, + 0186D1FA79D760C30575B900, + 284179F9F53CAA88CAC51B44, + 9ED2DC39AEEFE9E28CF7E7B0, + DDD307F9E18E442E43786B0E, + BE6C77497C8F42747F797BBD, + 181C1A360C01EFF44A3BB18A, ); name = gui; sourceTree = ""; }; + 56DDB21277B7847412918A37 = {isa = PBXGroup; children = ( + E75749124D1F2FD391C01787, + 97188A2D8CC4C0DACC6A4D2F, ); name = players; sourceTree = ""; }; + D8843096A672D4F2E84BA70B = {isa = PBXGroup; children = ( + E78FFEA6B1BE4AD1EE43C60D, + 7B0648C17B0C62706424B080, + 7F23EFF727A93D53C8654687, + B0DD6412314A0666002F9CB5, + 1B9BCCBA7BA4D87454EC8710, ); name = native; sourceTree = ""; }; + 738E94C7871EC777AE05CA28 = {isa = PBXGroup; children = ( + 3622CFF351CF31035D444625, + 56DDB21277B7847412918A37, + D8843096A672D4F2E84BA70B, + 6894C4ABEF5203014A0B665F, + 0C573FF1309CE106DA2D2CF9, ); name = "juce_audio_utils"; sourceTree = ""; }; + 24F1C7CE0BA8B996E80B5383 = {isa = PBXGroup; children = ( + 23F3CBC829C0363C6C760957, + F70EF841DE659606631FBD20, + 0DBCEADB9A04439E66BE176E, + 0B37C06B070C6F069F23A812, + 2931409E5426C745CB3B6EE6, + 579117EBA45C1878DC55FF65, + 999ECAD45309F13369547FDB, + 210B445861AC2BD744D97F6D, + DE66F892ACF4DCAE897F3BE4, + C041D609CA330DE35D88B7EE, + 6BB634F1841C4BCE4775FF8D, + 9AFB00C8011E7902EF67789C, + 7CDAE6FBB85B787E8FA15B0C, + E8B02F47799FC984D3FE1083, + 0679221D71CD972EE07343B5, + 482D7E87F00C2888C2B8FC9E, + 74E60A8C1056FF1D64053A62, + 01641AA0EEDDC5059FC28EF9, + 8EE86B89C69AD4D9A802526D, + EAED7C0A5FFE6D29DD0A0D9A, + E27E9AF73E442C75C0091F8D, + A073692401C6D5C86D77E53C, + 0F98FB16D69403E94F1BB9C7, + B3D45312AB6F986CB3B4051C, ); name = text; sourceTree = ""; }; + C6B0A793A79BB7918A5A2337 = {isa = PBXGroup; children = ( + 1C99350395AE046857697B14, + 6B23639B2FD8C8FCFC241070, + C3538736DEAAF93829AB60A0, + 08CCA1B6C1824CE73281A769, + AC61701F361E5327D6BEEEDD, + 30D2B2F180671715D1CFAD5E, + EA8A250986871A036D42DB94, + 4E451FB3A0D657682324CEED, + 52058B3A331BFA856932EEED, ); name = maths; sourceTree = ""; }; + 167969AC10CCB46C3FB57BD8 = {isa = PBXGroup; children = ( + FF7509FDC5B23104C7AF1665, + 42DA53757E1591ED0395C94E, + 4BE9A59D703E4CA4661252C1, + 9C20682A5F49B7BD2CEC3E2B, + 3601DA62C81D9C4FEB9CAA23, + 042DAFB982DBCB0940DAC979, + 81E803F2EB73BF09CB0CF2DE, + B6B133F816AD44FBFFBF8146, + AB6D9BF527527D3143CAC2A2, + B785E11D273E197A78C90597, + FF796B6850F1EE2F18668D06, + 6DAF8D36A60A6F606DCDBADB, + D05C8EB1FF06FB0A06C39518, + 3957E1F6F24F89D6DCB8829E, ); name = memory; sourceTree = ""; }; + 7A48C4CD434CC8B40E417307 = {isa = PBXGroup; children = ( + 15D277FFB993448CDB52E307, + 10F958EF56CFB17EA747F3B9, + 8EF093827B72F444E74F5682, + A89C8222531A7CBACE054C1A, + B541B5E33CE3B2054B30FF03, + 858198BBDF9BB692E58AB16D, + 61D67AE4149D2EF04BFC2F15, + B14FEADC75BB9C57CF45D850, + 729B6245E3A797878E3F4ADC, + D45979081B92930C507C3B87, + 94F0F55A3456014AA91FE44C, + 3D7BB39A9FCE43D8EAF6B6CD, + 607E088C34B7AB707A5ECE4C, + 600D84E21A1728A803F7BD26, + 3737EA20E16E2ACBFB968CD4, + 1A5086FB7B39D1C8FFAE63D9, + 015F1D2D5F78A62C40AD1B67, + 7414371325D7C8E4ECB043D0, + 51D8A242315E93AECE0D1B0E, + BE65BDFEC645F36487A68F71, + DA768EEF9A95E554F7903B60, ); name = containers; sourceTree = ""; }; + E2522538E4E168520D3AE9E6 = {isa = PBXGroup; children = ( + 11561CA1FD46FA08C2EF0C9E, + 3020CB57085A70221FC0042D, + 9DCB9FE79EDD770E0EC8A370, + B3B317778509714561A5E52F, + EB267F3D6CA06EDB2EB92BBE, + 6F3E59877038096FDA5B28DE, + 1ADD2315C0E364D635A88C2D, + 862A547990420303EBE1C849, + B8D70BA0254864A54E587B21, + B2A4F9CD6F95FB4EECC2FB10, + 55037EF642A280DAC85CE34D, + EE8916C220D09A855BDCB95C, + 6256BA6104CE254172D02804, + 306D2FC4CE156DB61D67C0E0, + B8D0006C486909BB51D8D818, + 64223866AD9D3D69464C198B, + 8AAEBEE37A67A5D01EBA6BB7, + 8FC33441590BA03C2EB5CD63, + C9EF40785DAD416946D6AAE1, + A54E763170141C2FC3BBD197, + 9DF463C5E206ADC98851C78A, + 16A3BFE2C5679BDD49A4F424, ); name = threads; sourceTree = ""; }; + 5287498162903ADA659A8E12 = {isa = PBXGroup; children = ( + BED621A030C4C37B2326EE4A, + 34CAFBB1E014F17C6111C716, + D4C5D7EE1A40AD018E5E6F02, + 724D1A80CA91E8ADB78287BE, + 32E5AD1B0A329492EDB0D49C, + 9D29AC99CA678DE27CAAAE31, ); name = time; sourceTree = ""; }; + 12BF6A615E82605F03493444 = {isa = PBXGroup; children = ( + 890BD2A64C7C25201E20C02F, + 8E32705B99BB15E3586C067C, + 4C816FF16C50AA5C87C8F7D3, + D34AB4BF5DF2B8C181D8D344, + C881040590095369DFB1A19A, + 1989B5707DDA6E738FAABBD0, + 6E41B744374D33094F868FF3, + DCB2FAD653F074F08A916315, + 1AFAD88BA98AA530A435A680, + 08F0F20CA590351DD32B176E, + 01F6751F1A5EC2C9578F9D65, + 75CBB4C7E9CBA8B36FA40FB8, + 5D9CB6E9C215ED15E30B685C, + 5C5FBFC0D457D62BDC602F17, + 74D4B2EEC36940893BF7AC25, + 09802FE2689EB8288E554B4B, + 08EF9C1A184B049FA45DF95F, ); name = files; sourceTree = ""; }; + 5EFEFD2A4E3AAB61D642FFE8 = {isa = PBXGroup; children = ( + 621893AE2A99F8D4331194AD, + DC4E35EEAF01C08CFC4A4CAC, + 95139F961E2C7FB6421D04A5, + A6AC587CC82C4689D4C0D90E, + 4B2D5FBEF56C3D584E65D9AD, + 04609F32D6A859ED385DCBE6, + B4E70AE3447587BABF51A076, + 2AAA2414F61ABBBF1C571901, + 8FD227DE98DB156FBBC8DD1D, + 90348A625874E8DD3DCBF583, ); name = network; sourceTree = ""; }; + 72CEB8F82E75A1CFB00029A5 = {isa = PBXGroup; children = ( + E4546F8D14174EB8C05A47C3, + BAE421BF414A8713DC446E10, + E428D9BEA0B66A12448F3649, + F4825162600591FAF2F1F79E, + 60DC6B904E0A0ED7D5BACBD3, + 30B528362C388E5B51DF91D6, + D1CA4E7E20D80D0AC1614F98, + 357FB6126252FB4FC7551A59, + B594FC49609DB3E2CF3DCB0C, + C26C5CA5E6514CF7457B1ACB, + DE42EED0A04BB9F90D623BAF, + C0C7CB3229B2E54FFB785CA6, + 2253863C60C8AAB3DBA4B5F1, + 861F5C579BDAA33718FFE9CA, + FCFEAB9C67D9B7FB03AB51BD, ); name = streams; sourceTree = ""; }; + 1CE1CE477EC30641FD179C4A = {isa = PBXGroup; children = ( + 7E79FB8A1C88684D9961874F, + 2ACEBF748334BD2B0CBAE26E, + CC04871FDDC918BBD27FBA04, + B32E8849197AC0716AF288A3, ); name = logging; sourceTree = ""; }; + 2D1E53D6474EF042D74F7EB1 = {isa = PBXGroup; children = ( + 0F26080D0E46879414836AE2, + 01A0FE7CE574B63A82297143, + F13FB76427772F29EAD88728, + C41176B7A1D16BC5C67A5727, + 5DC79394D56549821815B376, + 2A10DFB3A22E8AABF4763F68, ); name = system; sourceTree = ""; }; + B639BECD83CD833126B067A3 = {isa = PBXGroup; children = ( + 50385CBC88D67EF57CBAF9F6, + D0E00FC62C3DA68962100AD6, + A8F0A5C9A372D5C57033B581, + D65C8F172D8C1FD532B67348, ); name = xml; sourceTree = ""; }; + AD49AC0FCF415EB54E2E0633 = {isa = PBXGroup; children = ( + 43BE50DA24ABCAF9183FC535, + F6943E7562D614D4D2F687E4, + E74B5E2C22C81CA99C9CB473, + B37C746F12C8413EA4DF8157, ); name = javascript; sourceTree = ""; }; + 3337230947C52C4E45CDDA71 = {isa = PBXGroup; children = ( + 777AA662407B7A91748C92A8, + FC4F3DA26D3500959DF7662A, + 1EE2B1FB37648506A369D269, + 8F9E95F991B215FFDD3F8E9B, + 10E1C3C331DF35D35508268B, + AABBDC405E85A02000A3991B, ); name = zip; sourceTree = ""; }; + 1008A5ADA2C02169D7BD422F = {isa = PBXGroup; children = ( + C938DCCA334DE363B27C1E65, + F163668D4C2343C282574A78, ); name = "unit_tests"; sourceTree = ""; }; + 2D72BF9EB6B50E02583A57E9 = {isa = PBXGroup; children = ( + 9CAA1BFBE6B44233E6F1247E, + 3481CFA2138FAF27F8514E06, + BCDFDFFF924A8FDF40B82990, + 837FC46135954E8144A996FD, + 3F02521692ADDB7FFD0453AE, ); name = misc; sourceTree = ""; }; + C4BEFC49CBCE656D666CCC90 = {isa = PBXGroup; children = ( + AC2F6510662AD5D52E367FB8, + 174E22634C4ADC7062948B9D, + 8680FB438DEC3B3994B6CB9D, + F7BF997FD40A633D0B519290, + BFD53A594929B7CC58D46BCF, + 9D2C7F9E1E4B1A96183E2B32, + 9813552533EFFAACD0F7E1EC, + 7FDAFC6129A0497C57648A8C, + 0C58D2236F902CCD34EA4FCA, + 89A8ED7F8AF435841DFC5279, + 8F1630E85F43E88E4A40C2B1, + 1B4E025E8860D906F0ABA692, + 3234FA3655EA51C78D5E2D87, + E89452B0110096760B06397C, + 3F7FA0D8E610BE1172D0CC6E, + 42AA82D963C53D81EC596A0A, + 4AA5C3A1B7202460820F4017, + 24FD7D015B6C46BDFC98E2DE, + DB5365D435396965FC3974BC, + 2FB4483EADD06BB5F6BFC110, + 5CCB6DBE5D69271176CD9603, + 8C19D0C6E404A67C74D07A9F, + 7E7E7B2174155F2FA49E3E56, + 6EF18D083B3FAC255D719DA6, + C7E1D706A09E4E96883215BC, + 54358D8A9A8DE6AF4F781E8B, + 489FD44544F03774CBFA04E5, + B8D9A7FDB054852EF59BF4AE, ); name = native; sourceTree = ""; }; + F7B521C7EB8A7EFC4DE2AD31 = {isa = PBXGroup; children = ( + 24F1C7CE0BA8B996E80B5383, + C6B0A793A79BB7918A5A2337, + 167969AC10CCB46C3FB57BD8, + 7A48C4CD434CC8B40E417307, + E2522538E4E168520D3AE9E6, + 5287498162903ADA659A8E12, + 12BF6A615E82605F03493444, + 5EFEFD2A4E3AAB61D642FFE8, + 72CEB8F82E75A1CFB00029A5, + 1CE1CE477EC30641FD179C4A, + 2D1E53D6474EF042D74F7EB1, + B639BECD83CD833126B067A3, + AD49AC0FCF415EB54E2E0633, + 3337230947C52C4E45CDDA71, + 1008A5ADA2C02169D7BD422F, + 2D72BF9EB6B50E02583A57E9, + C4BEFC49CBCE656D666CCC90, + EF43908046753F20507CC3B0, + 5AAF6FD01A8ACE63E3FAEA56, ); name = "juce_core"; sourceTree = ""; }; + 83E7F8F4C0F653DE37DD0D26 = {isa = PBXGroup; children = ( + C7373F24FD2E886C50CB3903, + 268EAE33422B585DF545499A, + 84E76068048CB52123545F7B, + 6367B5EA6602CD73063A481A, + BDC7D9A7A14232DD7BBCB123, + 4C0B3826ABACE371F8681E61, ); name = encryption; sourceTree = ""; }; + 07E8C0ED0D5A016CCB79D6E7 = {isa = PBXGroup; children = ( + F9A9B6A4120CCCBBD2057F9B, + F22EB69681485A38365940DD, + 17CBE6045D10290C77948F0C, + 42248B6AB06E8D01893DBDB8, + 20193027F5E90E62F44027B0, + 9069DC6DF609DE1E4A57DA7F, ); name = hashing; sourceTree = ""; }; + 7C749B953A62BB34443CEA51 = {isa = PBXGroup; children = ( + 83E7F8F4C0F653DE37DD0D26, + 07E8C0ED0D5A016CCB79D6E7, + 23EC7FFD41859C9725D21B16, + 53AB900649E4156D953DB1CA, ); name = "juce_cryptography"; sourceTree = ""; }; + 0C891309AA75AF8EAD3F2410 = {isa = PBXGroup; children = ( + 1140A39FF348973EE6F372CB, + F39E719901F12B16AD7D600C, + BB3265EFC32ADB68A59A90CF, + 991A179EF480F6B3049D0CE2, + 4D3007B3F8AECBDB658F7259, + 82B25B30D756F75BDFDBBCD0, ); name = values; sourceTree = ""; }; + DB9E03F1DD7B48E3C0F38481 = {isa = PBXGroup; children = ( + 7C4111F98C8023097C14C138, + 60D9E4052C3FFFA026BB35C6, + D7F183070EDA8D6D7659BDA1, ); name = undomanager; sourceTree = ""; }; + 168252DC2B6D85C5D9B3C71D = {isa = PBXGroup; children = ( + 4F742E04B5AD194395A593C0, + 8DFA74E13F6E40A5B1C09C11, + D9FC957CB510399786D69D8D, + BDFEE2E6B40F3E47E3B16D38, ); name = "app_properties"; sourceTree = ""; }; + FF81165C6DC0BE3D7DDDDB3C = {isa = PBXGroup; children = ( + 0C891309AA75AF8EAD3F2410, + DB9E03F1DD7B48E3C0F38481, + 168252DC2B6D85C5D9B3C71D, + DC76782D8BA40A4CA365C279, + AC98912B3226C0D29B0C8861, ); name = "juce_data_structures"; sourceTree = ""; }; + 21928033EBAEE82B66D3F9F4 = {isa = PBXGroup; children = ( + E526AF80946C3F077C1C63C6, + 09532D678D2C41FEFACA71F3, + DCE64BC49FFC96654D30AD87, + C92F4F51EC54B859EAB7F09D, + CBE595558B9038547D418CEE, + F9E113AE1D2940394B95BC0F, + D0436D71AD541BF93E0585DB, + 56D6FF1634AE7B4B4B6AC323, + 3A132DEDF59503D8AEE2E1F8, + 445C1F432C6144BD2F6D3327, + EF337D9B43E0569DE3E48279, + 5016A40C1850BBD55197D30E, + 1AB81EC2CA06F18202F3049B, ); name = messages; sourceTree = ""; }; + BD202CDEBCAA90F124416FB7 = {isa = PBXGroup; children = ( + E540A462EBB080CF14B31764, + 9EEF2A75EDD5E8023F9AD6B0, + EE6895EE5020998469F17433, + C6CCDF5390C72C6C37F3446D, ); name = timers; sourceTree = ""; }; + 42068D6B4354DC77F34701E0 = {isa = PBXGroup; children = ( + 4E1C2B9C5692A96700C1A898, + 9F49BF4440F09115117F9615, + 5A26430C3B39E428B483F11D, + D88DBC78062ECA21D18C1D7C, + 3DD9BA50041192D1F28D87CC, + F57531462BB169A5F0224ADE, + C536B42EF0D28435B6410AC9, + 80D63910D7196D7DF849A239, ); name = broadcasters; sourceTree = ""; }; + 443BF89F57F585ED86F2ADA5 = {isa = PBXGroup; children = ( + 1F52A06FB3A565B54144FD8A, + 333E5AB794D5FC5A798A285C, + F540CB77351EAEFC2B3D05CA, + 208B3803558F7BECB0A0AA42, + 6821655BB8883B9A421666C3, + 1F999582FEA88311EC2EBF27, ); name = interprocess; sourceTree = ""; }; + 20360E9243409D2FA6F5E8B0 = {isa = PBXGroup; children = ( + B576434956BD89F0B571B6C4, + BB9242FB689B4DAEDF1963BE, + AB26977EA68E27838B54A8E4, + 15FB19A9D4DE60608E5E123A, + B060C1B4985F4D6071C6C1F5, + 001CA7EAF68DA335025FF01E, + CB3DD188BB8AAB1931436CD4, + DFC37DEA417DA0FC812FDAC2, ); name = native; sourceTree = ""; }; + 194518F009569975413BBA1F = {isa = PBXGroup; children = ( + 21928033EBAEE82B66D3F9F4, + BD202CDEBCAA90F124416FB7, + 42068D6B4354DC77F34701E0, + 443BF89F57F585ED86F2ADA5, + 20360E9243409D2FA6F5E8B0, + D697C54442250F5A720D2CBF, + 3BAA4C5AFD5E6AE8B7447E17, ); name = "juce_events"; sourceTree = ""; }; + DE5FE5E5C0261E389C091E12 = {isa = PBXGroup; children = ( + 61F74754A7B5F0BD930A51DD, + B42577EBD62A6AF7AC97DAF1, + 472EB91AAAB000217017E8EF, + F5A991062FE0EEEFE0CAAC17, + D7ECFEB15046C60EAACA0F54, + F8D8C58CEDD851E0274B5402, + 36DB2BF91B5D3D8462CB4AD5, + 27A192427FAA8C466F9D8EB2, + A210326040D3F2A40B2B9D15, ); name = colour; sourceTree = ""; }; + 312F6818F7C175E16EFA49E6 = {isa = PBXGroup; children = ( + 7D5322C5D58C267F5FC815B1, + 783AF1428118CFF4B105487B, + 7319C1AFC4D882F649320DDB, + 289B6067D3B3FED5F7A64AB6, + BBE01A9C5FD8C0656AEA9D3C, + AE6120B318B44C69CEDA6321, + A198E2290B15C62F68D21050, ); name = contexts; sourceTree = ""; }; + 0CFBDBCAC210067B8B49D659 = {isa = PBXGroup; children = ( + 965402AAAAF0A0D920DC7C36, + A55309C54076A01EA57315CE, + 5A2B63BC2433F17DB96CC411, + 3320CAFB079DBFED7E79D33E, + 276FBDD27027CDB3CDE7A1C3, + 21530C9C69B792CA80BE9398, + 3B92F7E81BAB71A0460668E6, + EA65F835FDB1DB86406C9471, ); name = images; sourceTree = ""; }; + 18A16F44D68A4E1E3545E4B8 = {isa = PBXGroup; children = ( + 39E116DC12FD26E3DB3F4DFA, + 8C2A93223809C1EFD6D7C404, + 9D05F58F8CE58D9D6952BF1D, ); name = "image_formats"; sourceTree = ""; }; + 9F785FD816CB0B5C3B2C3113 = {isa = PBXGroup; children = ( + 1296A96AEE50FD66957B71C1, + CF1F536ECAA15F7AF8B20746, + 4292602AC091358A3439FE9F, + 28861D0EC5C396B9FFCFF1B3, + 79C9759DA5A25C1D53AC2E93, + 70736236C82A9ACE63DB3D3D, + 9A39BF4B65A5B6A66D84F232, + F9668685A98E33554348BEA6, + 709EB992B73BB302F0D9FC8F, + 648610AB6A110B1ACD64CDAE, + 201270E933BAEFC855FF02FF, + 0402044CF4F834C138AA337F, + 2D4E5BBC19F41BB8512E5E03, + 6EA97857D017530AE58ECA66, + 672780D824A4CAD951DBB29B, ); name = geometry; sourceTree = ""; }; + 7A3AD3D13991794B6B51DD9A = {isa = PBXGroup; children = ( + B18369F3EF227348BAECC29F, + F3472E21D095DB91ADE8D714, + C56022F99B8FB808D00CE6D7, ); name = placement; sourceTree = ""; }; + 4A6A14045BB393F2E063EDDF = {isa = PBXGroup; children = ( + 5B59DE0C6545CCC3FA26750E, + 99FC512DFBE57AAC3894FC20, + 98C797055FB6A630BD2AF26B, + D34F5512C192C172CCC479F7, + 98FE786D6DCAA1F39D0428E4, + D5313BED337DBBC9A1F7D9CB, + 82A654CA5A700A19A9A673BC, + 9BB341CFFB496948D5E9A16E, + 2FAFDCAFBC5054B61699B4F0, + CF6BAD445F116D03D5AC2E69, + 944B844043D0815614FD4CFD, + 8AADBD01ED8B177F160939D3, ); name = fonts; sourceTree = ""; }; + 7AE62EF9190681EC903809C5 = {isa = PBXGroup; children = ( + 000EA162E25BC873954A9E48, + E41A33EB67E7E190A88A3AD3, + B1FD722E367F8B48B2C8F658, + 24711D9742CB31F36F71A36E, + 85D61362BF185DA51B00E00E, ); name = effects; sourceTree = ""; }; + 9D5DD150F3EAB90686880331 = {isa = PBXGroup; children = ( + B97A4BE39BF95F50E67A4683, + A1AF1E8ADB16AE21785390F5, + DCA560DA0C66BB6D6EA92500, + 2B27A56579939EAD06DD6061, + E07D1F3E8D8727F58F868B90, + 8621C4BB5D591743A1B86697, + 0456E3F8B40732E545A844CC, + C1688DC3A2F892F53F8F15DE, + E74DA5EF2C208608AF676212, + AF81BE7F88B9B754A9005DC0, + AE358D496192BAED93263F83, + 758A85BA2A15681252AAC852, + A6AFC4953E324CC5163256E6, ); name = native; sourceTree = ""; }; + 02D2BF1071BA036B1046217F = {isa = PBXGroup; children = ( + DE5FE5E5C0261E389C091E12, + 312F6818F7C175E16EFA49E6, + 0CFBDBCAC210067B8B49D659, + 18A16F44D68A4E1E3545E4B8, + 9F785FD816CB0B5C3B2C3113, + 7A3AD3D13991794B6B51DD9A, + 4A6A14045BB393F2E063EDDF, + 7AE62EF9190681EC903809C5, + 9D5DD150F3EAB90686880331, + 5794F3D9DC292B1603244735, + 0CFDFC8B0EE4F67F3140A95E, ); name = "juce_graphics"; sourceTree = ""; }; + DE106FCD14E351677236CC4A = {isa = PBXGroup; children = ( + 2DAF843B2C0DA27E8741E080, + FD362E3DD7D0ED06015A52CB, + 94363B04A83DFC9C02B023DE, + F31752A999520E521BC507D1, + B77EBFED3A56358BE8599594, + 43BEA6B7451F512AC9B1ED38, + 429925ABEF514DEDE33BF925, + D2C6697A783580EE58B2C5EF, + 91B931E774E4401630F74EE7, ); name = components; sourceTree = ""; }; + EAFD1F880E6790F3DFC2A32E = {isa = PBXGroup; children = ( + 5A99F85A02CACE2773FAF4AA, + FC4E3F4086054CB8E200F393, + 1197F204437B7E10650C45C9, + B2C692D20C6190AC831ED780, + 3F0618824A11684059926E73, + 13E0FBE11F1B5028F51D4A83, + 592C559B3CB1579907BC6452, + 9B88C701BE205AEB33ACC5FB, + BE92FB177CE8690F02DDCDCA, + 32053E605C421DA9F9C406BA, + 6F9461C9816AF7B764F73FC9, + E0069A75C60B6ECB8E8CBFDD, + 6BA526E7009CAA47F22B2FC3, + 883F407DDE5464DEC7ED1634, + 561DC7B5329A4719A85FB37E, + B7FC671CAA2FB61FA45FF25D, + 1199999650BF539117869187, + FCA5F5B553B92A4A49C3F1EF, + 6C42AAE33B1F86E496AA352C, + C00042157AE4788F1B7DD087, ); name = mouse; sourceTree = ""; }; + 2AA0EAA4D18373DEBC82DAF8 = {isa = PBXGroup; children = ( + BAC4FD0C99CEBD2133F79C24, + 1A5E7683202DE3D3B911F9C8, + EF8BAD426428948862257FC4, + FAF2AB8383B89E9A5AF5E946, + A42F8BC3DE25F1CC15D383E0, + DC15808BB97E1521C055A470, + E8DE188896E5791E338D4EE7, + C790F51988B04C4A38A737EE, + C1E7A30EDB756EF33710AB4C, + FC4C976D76A0B0F932B3188A, + FEF9EF55D1BF28C6A84DE4C0, + 2E551D5175FA94E0FFBF08F4, + 56FA5F3ABA3B0278767C107B, ); name = keyboard; sourceTree = ""; }; + FF93C45FC8A8E8F4935C575E = {isa = PBXGroup; children = ( + 1C36397644AEF2DC1576C3A6, + 0DA4C3278F6482DB3E59D9BA, + 2368F4F33C1FA1F250C0606C, + B700A20AB7FA4833FBE9FAF2, + E6526B2FBE4F9F3DF819A030, + 9AB6DA2CD6FC85ABC73DCA8C, + D8B377D58489B765A9369335, + 3EBDD668B2AAF5F5159D68F2, + B96670417A0708508B971C58, + 12F6DB893E5757C9F3D00F0D, + 67321193997802F731C9F3C8, + 06E0E9069EB3A4DED12A83DD, + 1D58402ABF05B2EF162769C7, + 14527382440E68E3F0EB8198, + 5E043C5F2F280FC934592EDD, + AD3AD8A8258B52524F9FD249, + 1D68D7036540404EFB82B35D, + 9E7319BC97DD7609E51BA8E6, + FF43622B9AAF3751B65DD81B, + 8A791C2E9E31061FB1114D0C, + B84FF21D1349C565A604B4D2, + 280CB58A46300BC229661DD6, + D93778DB7CCB4B438A59D8AB, + B0D4F13DF0278D8722F7C4B8, + BB422B25F3D67420F1A7A27C, + D9064DA71018E0FB2C02BD3B, + E4D861851BBC388FE4CB5DFA, ); name = widgets; sourceTree = ""; }; + 7E08533D7B37AC3A130E8033 = {isa = PBXGroup; children = ( + AB7E120B33CE6C4EA5AE1C03, + 9ABB34DD0089D3C1B2CB0448, + A93241AAFC2CA466E7F61D68, + 8034DEB0DE55C62EE0B5D2FB, + 1BFF9FF8A046E614580B8B78, + B4179816650495DEE17116FF, + 9473F75E32710D282051D93C, + 3FD16FE28FD9ABF22F0FF744, + 4A21D36388A0B6D9543A244D, + 874BD8915F9FC9EAF09AFB87, + A61D17AF31E2326EDA285C22, + C378389E66043AAF139C6426, + 334E1EA595F4B89AB02E1D2E, + 092152EAB569DB7795FD7B2F, + 6BE69871BE4A865ABF84BC7E, + C8E5F60ED66385553547961E, + CC8C5C667CA1A6EBAA1323E4, + 6ED2FF75E5F98253AA1C287F, + 0AD627D1D2B082D09E1AA078, ); name = windows; sourceTree = ""; }; + 73383E801888C9D719E5D2CD = {isa = PBXGroup; children = ( + BB7CA26CF4540A535BE229CA, + 8BD1742DEA98185FA7ED4152, + A84DBA7DBC8FBEA5740CB026, + 14340FB465ADE55CB3E9B66A, + FE11EB2D3A4040325E458261, + 7B441C4B6CF9473676EA3610, ); name = menus; sourceTree = ""; }; + C30EF995A31EC08218367298 = {isa = PBXGroup; children = ( + 097E290A4679C103208EF789, + C8A38D75BD930F3CC7634124, + 26407477D58D92220A6AA6E8, + F90875A12DE5F66F7E70CC89, + 1ADEA6673C57B57FC0BBCD04, + 3FCD20ECBA1032D55D90DAF9, + 546BB53FC47D83869F8DDCE9, + F6440E90EC3193EBD07AD3D7, + 2669CC5C7AE7A916B5F5CF89, + A7198BFD9B0CC598BD50B587, + E368DF5C372BB7CCE82DC763, + 58B4452DE10C4ABF8D8DC7EB, + 2ABA2A324D752641AD2EA84D, + 42203A96B0F67E68EDB0939E, + 864DAFF59D56AC67F7BE6F77, + 83E38E7D0548FCDF7B150F22, + 2AF3F242C6AE6B81BEA684EE, + B35603E21B57E534616F599B, + C78105C8AEE452AED0700AAC, + 91BDECC58244D65FC321A8E8, + 03CD52285663EB462E66AEDE, + D8E594FED69859E740E91543, + 877CA42D199DE2C3C4EF58A9, + AF7E3E7137C6F49674649968, + 9801E411857A072092954171, + D79506405903905814D5B32B, + 8745ACE2C81BA9685BF99233, + 029E06243E22D19B62C7FAC4, + C18944C7BB1D9143312BE3A7, + 75636F75113CD1ABF8B01F08, + 6E01440F1FACE2977203A70B, + 74C15BFC6E036DE767574778, + 971B377F39D4CAFA77AB790C, + 95738AF2EAF17A2FA9B8E069, + 035144F9C35671488A15E9F6, + 678B3B27F695152D396C09A3, ); name = layout; sourceTree = ""; }; + 1912E5DD1B0D040510925205 = {isa = PBXGroup; children = ( + 3CFD6B00875759345575ECFD, + 03C5EFBEA606B1857E2E7E70, + ECD46DBA26680A8F86569C2E, + 35E9781C54B1729BDD73DEC9, + 61F3AAB84249F782A56E88A2, + 3121B99F19132789145FDF58, + F765D762D0012A1607F5622A, + 13A6B8661E1D605FCD86F1E0, + 82CF205CD196BF77B68EA75A, + 8AF3D4A8845EBB742E3F521C, + 096F493E855364B082CA966C, + 3153401B1C69B651D2AD37E5, + 5C9AF08626A44F2AF6783A53, + 1AC73EEBD03A5926652CB682, + 22A9BA274F3AD6FAF4331D11, + 5DBA889C8116242666F3C93B, + 63DB40AFD30CEFB03779AB79, + 665FF99D0D1BF3755FE7B803, ); name = buttons; sourceTree = ""; }; + A44CD4C37170EFD44180E7D6 = {isa = PBXGroup; children = ( + 5A1C17DCA88F1D02ED5F401F, + 123CEDA734678EE95C34463D, + A118AD624CE30228686D51F3, + 00B6967A854897C9D379AAF4, + 6B59A53C3FB3B4462A5E10D0, + 648E0A0D55BE1D012C1D89B1, + 150135E20D3B4547F1B8A76F, + F81AAE65A3598A15825E6794, + 4D5112F69E06189A9318A69F, + A15770CD33E47FF114451904, + CCA843C191E1EC761E0C4B1B, + 382D4767A626A3D30826EE1B, + 82B807E750DB47D6FA6AA5F8, + 48EBF61EDF71322807F5AF4E, ); name = positioning; sourceTree = ""; }; + DCA8D2B60E2A3630B372680A = {isa = PBXGroup; children = ( + 4E8939ACD0CB224ABD3B3C00, + 57C8BBE1EFA839C458DEF2F6, + 9817FEEE6C1D99BCE7DB2395, + D15B6AC0F49F8BAAAF71FDF6, + 40178653E67E3C6585653D38, + C10AF8B74E855D60A481CBD4, + C4D626F9CEE1FD851551D91C, + A1F1F469B33048DD0609E02E, + 4006D8A53AC91D81816BF576, + AE20126D491A4FD52D059EFB, + 02181D9B5A755E385CD47FD2, + 8924F9B3C5A5EF7B9771465F, + 39F7F18157821A256E23B868, + 77234EEA6FC39172D3B4B455, + EF805FA4F575DBCAF69C1AE4, ); name = drawables; sourceTree = ""; }; + 35A6E785E6B623A66F7FEF46 = {isa = PBXGroup; children = ( + 4533B1E6786C588EEB5F17F1, + 2C8DB3B21316CF58A088AE4B, + 80B9B913DD55B0BD215AEC86, + ECB67354113361CDADA77BC6, + 57134B5B764CAAAEA07C56CE, + 1A89B025B5C028C536ED4A8F, + FD28016A7BC2B34138B3C986, + 27B46B69A1381640C0C14CF6, + 8D32D3B412213EC3153588E0, + D380F5AED297C4D7BE55911C, + 357921A7E994C213A2D768DE, + DDD38519DCDDE8BDE8AC092B, + 4D823926C18ED8ABD95035DB, + B7DA793390976975B7967E54, ); name = properties; sourceTree = ""; }; + 98C025B3DB9871C4A016D3D9 = {isa = PBXGroup; children = ( + 140159E9C38C975949494E5C, + DCE5AE0A528365094776BE17, + 047CB008052CCD126633FB9B, + 05FD1A2AE03215E9DF92132F, + EB990950081504EBD067FF9A, + 48A798B2097EF59A8A53F1F5, + F1AEC47949E75A0B4DBEA130, + CCCF7AA714938B03DE4407FA, ); name = lookandfeel; sourceTree = ""; }; + CA4B62998A983A5AE6AFE0F9 = {isa = PBXGroup; children = ( + 9808FC8EBDD993802B13E360, + 489251CA8BE0CA79BA247455, + CB0FCCF91CA21CA88D295932, + 8B73B43B30D1235C6F6C7472, + 918EAFFF65C0EBD273295D56, + 67706504E1E1E19B61E90903, + A6A0A10D492CB91AF88BCDCB, + A4C7C1D626E8F444FE84674C, + B94E7B4E08D0CE7D4B3AA470, + 9935025CC78B291623780878, + 1204FCBC82EA38A9512D0D81, + 0C487F069E493BF67537758A, + 4AB7557F71EB918F70B15F49, + D7D3D13E56861B7937B08EFF, + 78EB35E34BA8673695F92D6B, + 057E2AFB89FF0CF0CAA013AF, + 6B7EA4C617C2C129210C7F76, + E04A8F9E8B767CC682430498, + 27BC9669BDAA9F041FC21837, + 5BA3B4D0018FA0D5C976CA3E, + 4B73A2599617EEF450ACABAC, + 35A404D8F4164D65C3E4DCC4, ); name = filebrowser; sourceTree = ""; }; + 78416A0B2F412465845BA10F = {isa = PBXGroup; children = ( + CD3D15787DE0633AF0F41D14, + 14B4A539EBA209BC22B91F76, + A9FE7AE10A02329F18BAF8BB, + 11FC5BF4D4CE5451BA651132, + 0DD52BE61E4DCA9575F5649F, + A4A507E78D1082DF5EDA723E, + 5127ACB1400962FB70BF6D07, + 53F664A2A3FE1983E183A431, + 1A25D684574EDD045683D4E8, ); name = commands; sourceTree = ""; }; + EF2D0AF0B8A4EF73BDE12526 = {isa = PBXGroup; children = ( + 56E7EE3C43947842BB8BDC1A, + F80B331AD631D4F77A673691, + 3F05E519F0B0931CE0347455, + 0BAD16A58A9CBB0A2FC3C273, ); name = misc; sourceTree = ""; }; + 5FAD6E8C8995E6BB704305CF = {isa = PBXGroup; children = ( + 5BDA528B96063067AFD59CBB, + 0833B2844B74E56A7F375B99, ); name = application; sourceTree = ""; }; + D0B902078808A11AB68BCA1A = {isa = PBXGroup; children = ( + 051B1F5CA25863E123C662B0, + 82073AD531BE1009AE92477D, + 795FF599087653F77C7E98D2, + D4C20B86C7B0A9FFBCA8FE6B, + DF0C3025BC5B572CC28B8EEB, + C9A02E17EA16F69B823F9964, + 271E9E19BDC24378E6E73175, + A8A0AF041F30CB7F45D2FF47, + FE3080D1EC46C287930B7E18, + A5360675341F06F73AF96D1E, + 54E5C8F4F9BF6B8228482AD3, + BE28C3777F5A468E4BE1596B, + FFE74EF868B7D7FAA24DE742, + BA93F94CB1FC135E6F8D8910, + 5C2B9D77C8CEB8A1F6C121E1, + 94C3811F389418A6C4304554, ); name = native; sourceTree = ""; }; + A8198033A6100EDB28E54475 = {isa = PBXGroup; children = ( + DE106FCD14E351677236CC4A, + EAFD1F880E6790F3DFC2A32E, + 2AA0EAA4D18373DEBC82DAF8, + FF93C45FC8A8E8F4935C575E, + 7E08533D7B37AC3A130E8033, + 73383E801888C9D719E5D2CD, + C30EF995A31EC08218367298, + 1912E5DD1B0D040510925205, + A44CD4C37170EFD44180E7D6, + DCA8D2B60E2A3630B372680A, + 35A6E785E6B623A66F7FEF46, + 98C025B3DB9871C4A016D3D9, + CA4B62998A983A5AE6AFE0F9, + 78416A0B2F412465845BA10F, + EF2D0AF0B8A4EF73BDE12526, + 5FAD6E8C8995E6BB704305CF, + D0B902078808A11AB68BCA1A, + D01F1E62E142AEF92EFEF9A0, + 7FC7D527EA3B088288F8DA36, ); name = "juce_gui_basics"; sourceTree = ""; }; + 676457E043CCB749AD9C996E = {isa = PBXGroup; children = ( + 84DFB13BE79A86FC987A63C7, + B5612B7C73B7C8313932225C, + 06753930A82DF7E1BF429914, + 2A77EE2209FDF066386F30AD, + DEB62073956FBC23B33C3215, + A032B47E0B1DFE6656768078, + 0368A590FC29803595DF7D62, + 03CA60ABCF619E81CB165C97, + 1F3F5EE19B8CA78D9513AD94, + 8EF118DED70F115DEF3DB6AE, + 3AE3D7A50A8D7F598DB6F0AE, + 46D4E162A4C937BBFE26584A, ); name = "code_editor"; sourceTree = ""; }; + 4AB036697A8FC010D6FBA0B0 = {isa = PBXGroup; children = ( + 67701BB0717F9CBA6772BC42, + 7BF4C9B621AF133163D15675, ); name = documents; sourceTree = ""; }; + 961FD846C95FA83CB96E0E3E = {isa = PBXGroup; children = ( + 66EA0A2E6DCB92EB7CE24516, + A34D1DA226DFFEACE090BD72, + F199EA5517B054547E193F08, ); name = embedding; sourceTree = ""; }; + 57B905251571D00290681E12 = {isa = PBXGroup; children = ( + 58B5DEFABBF903630496C479, + 6110B87158ED828E5F9C8FA4, + 3235BA8BC4542F69C66DF218, + 63E2478C4D365C034FAEF66B, + B82B3B2DA336D3591A73280F, + FBC97D6777B3B66837ED4404, + 69995C9ACA8B57DDB8E49495, + 0A4955566797EBA0ECE56806, + D8E43470409EC218DC96B555, + ED2D3A163433149267F3C47D, + F4ED9D3E27226B0974BEC563, + 9247A389C11552FA21BAB71F, + 4A167D0C24B56DA19E2B0722, + E614AF9C124E2CEE229954DA, + 000DAE49A15BE8D4DA5ADA8E, + 6D584871C4325DBC6FA689A7, + DB85BDB1DF720391F80F0D94, + E0F302E28F1CA85EE2A60BEB, + 5BF77AE97FE5C121B30358AF, + 3E69925DB6558BBAEE5EB41B, ); name = misc; sourceTree = ""; }; + 34B0FDBBF6879DC73A0B59BD = {isa = PBXGroup; children = ( + D1696F4E539DDB4D7423051C, + 49EEE3FAA41505E20A1587BB, + 74A4500C4809EFB73D5FA36C, + CD63DD73C9818BDF67BF9828, + DE508CE9EE6F6AFC689CDA33, + 6F4CD56079CABCB8F4FBA0D2, + 60E6823DF3335C4F4A2B4A09, + 689962387B441B1770B53D6C, + A38836ADAE0113CFA40F16EF, + C13A62F3B2A01774AD8A9921, + F672C9D6819D4CEA39A76445, + 943A1F16EFDD0E6789C90656, ); name = native; sourceTree = ""; }; + F7B6291F4272BF387B067C4F = {isa = PBXGroup; children = ( + 676457E043CCB749AD9C996E, + 4AB036697A8FC010D6FBA0B0, + 961FD846C95FA83CB96E0E3E, + 57B905251571D00290681E12, + 34B0FDBBF6879DC73A0B59BD, + B94D80A7B5ADCC744E7CE7E6, + A7DF0F471086004A6B81CD11, ); name = "juce_gui_extra"; sourceTree = ""; }; + D0CC2C98FF18A9025221B221 = {isa = PBXGroup; children = ( + 1ABEE94704EA506C399E9BB7, + AC5460D2875AEE783D2A2AAD, + 2373A1F1357D75E328517966, + FCD17983F05312385F6C17F6, + C1BD7A3D23B873F716F6C68F, + 50B9979133759179FAFFA25F, + 71359267D6C329BC132B88CF, + 8BB63BFDE6F8C634381B9CF3, + 6D6C2ADFA12CB2A3AA90E10D, + 084DC67E578B4943704DF6A8, + 04F797332FEC7F3DEAE457B5, + C5104FA479708493D5396BAA, + 6386ADE8A90ABD189AB72936, + E73144B6B99143468DB98842, + 72887C393A61739FD6C803A3, + 60707845CE9EFAADCB5BB90F, + 94F05A309F81C027AF3AA82C, ); name = opengl; sourceTree = ""; }; + 848B383D0E793418373C92A0 = {isa = PBXGroup; children = ( + C3EE00C42BC5D0E1610F879A, + 26B7A212D6DBD337A4F8AB7C, + 93736C303F60B4DBF1D87989, + CB481B5E92CC1EF7898DD17F, ); name = geometry; sourceTree = ""; }; + 13F7942CD1F8C764749719FD = {isa = PBXGroup; children = ( + A630EDA780905F9CCC6EF5D8, + AB0C82D0A432008DA9B02B67, ); name = utils; sourceTree = ""; }; + 06E255E5C0ECC537CBF35414 = {isa = PBXGroup; children = ( + 55F8FDB2CE9EA9B6F6F750B1, + 613925F9A0F758ED88BBB3AB, + 118B1A6119520DC2CCE4E119, + F885D9146184104D5D7C05C2, + 414E7CA5C5AB18AE918F414D, + AEE7A4457DD1D960854EFFF2, + AA5DEFC178005AF6703DD8C2, ); name = native; sourceTree = ""; }; + 538DDB7E7BA2CEDE1BB9E479 = {isa = PBXGroup; children = ( + D0CC2C98FF18A9025221B221, + 848B383D0E793418373C92A0, + 13F7942CD1F8C764749719FD, + 06E255E5C0ECC537CBF35414, + B1EA7F743B1C77827CAB5707, + B93D72307AE413B7A9A074C5, ); name = "juce_opengl"; sourceTree = ""; }; + DCAAA3B7EE46E63D38167ABC = {isa = PBXGroup; children = ( + BF62BF87517BCECDF7BFC044, + EB5D5F550EC7617B00286524, + 0F98FC70765AB9D2566AFD47, + A6B8840048CE44449BF2E319, + CA5CAB4B48FE75C6760BB780, + 0543BDC4AF5B2ABF41749383, + 1C38EDA19B0B3A45BA47CE6E, + 15AF91E3F446F92E4B2F7093, + 5C99C4705F0D6CE613DE7711, + ED256A12202BBE4615053DD5, + B34A4D738811E54546CA93CD, + A09A20116F929D337AE95CB6, + 13BD4B06D1A341403533186D, + F0C6892CD64002A92B68F37B, + C2AF71A259E7FE29A378F063, + B3342B74DDD833F6D04A7AD3, ); name = osc; sourceTree = ""; }; + 3A7D17A61BAAFBFCAC026C49 = {isa = PBXGroup; children = ( + DCAAA3B7EE46E63D38167ABC, + D4F3296FB4D267CD9DBAEC22, + 913E0691329569D88E7AAB64, ); name = "juce_osc"; sourceTree = ""; }; + EF0AACA84F1CEE7F45F56339 = {isa = PBXGroup; children = ( + 81E8B4FDE23F10677BD70DCD, + 05C8723D6B99C1C95FA1860E, + E645944AAADA77E0BF55B753, + 5102C5BFB76FB218BB512EC7, + 738E94C7871EC777AE05CA28, + F7B521C7EB8A7EFC4DE2AD31, + 7C749B953A62BB34443CEA51, + FF81165C6DC0BE3D7DDDDB3C, + 194518F009569975413BBA1F, + 02D2BF1071BA036B1046217F, + A8198033A6100EDB28E54475, + F7B6291F4272BF387B067C4F, + 538DDB7E7BA2CEDE1BB9E479, + 3A7D17A61BAAFBFCAC026C49, ); name = "Juce Modules"; sourceTree = ""; }; + C20D4DECE1291BF6AF8711DC = {isa = PBXGroup; children = ( + 0555BAE6156EAF15CA77A2D8, + 74711D7544168CCAC4969A07, + 92800676AF753D1A60108F11, + 39BADA2042495195394900F3, + 44301EEC47F5688D9BC0582E, + F756FBC7A6836696BCADD2B4, + 814EF15FC580DB2A5F426071, + CAD2BDFE8443FE5648EF5A9C, + C63EFC8D5E9FDC58BD4A9CA2, + DD866BA894AC019F86C5F4C9, + A67B57899953E98B2B52FA2C, + 13BEE456E0A7D58819C06B21, + A80E52C517801112E8F19350, + 3C02F146BFD3D2C8B0B3D8B8, + D185AFBBD6B50B5CCC2A9A3D, + 556B39875D557171B3E0D68C, + 71274DD47D3EFC3EB83ED73C, + D12A0DFFE18728E84D9AB739, ); name = "Juce Library Code"; sourceTree = ""; }; + 4AA57E2B5FD5374D348EEF7F = {isa = PBXGroup; children = ( + 0D6692C87B6EEDFCB658A996, + 696F7896036B652369517438, + 70F1CAF3C4C561DD81E6AFC1, ); name = Resources; sourceTree = ""; }; + 71F5560BE0EE3A17A9CE44F6 = {isa = PBXGroup; children = ( + 2E13A899F4E3C99054A3656F, + 9E8129263CD42C6029FC2CAD, + 398A945EFD9ED923162982B1, + C78806A6727F44EACFDED4A5, + 6799B056504F9F017998B9E2, + 448838BE6E937D450A3C84CE, + CB82A14817C3E2ABBBBC3864, + F3292E3563DB7ABB076DB400, + 996E743A20FC78671766BF59, + 935CA85EF98714D3A17AE737, + EC794872987FEA2E129C589A, ); name = Frameworks; sourceTree = ""; }; + 8B59A884C62D960EE9DFEF47 = {isa = PBXGroup; children = ( + 88B666E3E64434D066937972, ); name = Products; sourceTree = ""; }; + D2EB65517396C974F0415A7F = {isa = PBXGroup; children = ( + 856518502A948813C90E6761, + EF0AACA84F1CEE7F45F56339, + C20D4DECE1291BF6AF8711DC, + 4AA57E2B5FD5374D348EEF7F, + 71F5560BE0EE3A17A9CE44F6, + 8B59A884C62D960EE9DFEF47, ); name = Source; sourceTree = ""; }; + 48B76E3AFA2377D9DB65015D = {isa = XCBuildConfiguration; buildSettings = { + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; + CLANG_LINK_OBJC_RUNTIME = NO; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = "$(PROJECT_DIR)/build/$(CONFIGURATION)"; + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_DEBUG=1", + "DEBUG=1", + "JUCER_XCODE_MAC_F6D2F4CF=1", + "JUCE_APP_VERSION=1.0.0", + "JUCE_APP_VERSION_HEX=0x10000", ); + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + HEADER_SEARCH_PATHS = ("../../JuceLibraryCode", "../../../../modules", "$(inherited)"); + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + MACOSX_DEPLOYMENT_TARGET = 10.9; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + PRODUCT_BUNDLE_IDENTIFIER = com.juce.NetworkGraphicsDemo; + SDKROOT_ppc = macosx10.5; }; name = Debug; }; + 5E673C38F805EC668720414D = {isa = XCBuildConfiguration; buildSettings = { + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; + CLANG_LINK_OBJC_RUNTIME = NO; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = "$(PROJECT_DIR)/build/$(CONFIGURATION)"; + DEAD_CODE_STRIPPING = YES; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_OPTIMIZATION_LEVEL = 3; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_NDEBUG=1", + "NDEBUG=1", + "JUCER_XCODE_MAC_F6D2F4CF=1", + "JUCE_APP_VERSION=1.0.0", + "JUCE_APP_VERSION_HEX=0x10000", ); + GCC_SYMBOLS_PRIVATE_EXTERN = YES; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + HEADER_SEARCH_PATHS = ("../../JuceLibraryCode", "../../../../modules", "$(inherited)"); + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + MACOSX_DEPLOYMENT_TARGET = 10.9; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + PRODUCT_BUNDLE_IDENTIFIER = com.juce.NetworkGraphicsDemo; + SDKROOT_ppc = macosx10.5; }; name = Release; }; + 3BF0365A560ACD4FD24D40CE = {isa = XCBuildConfiguration; buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + DEBUG_INFORMATION_FORMAT = "dwarf"; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_INLINES_ARE_PRIVATE_EXTERN = YES; + GCC_MODEL_TUNING = G5; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_MISSING_PARENTHESES = YES; + GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES; + GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_NAME = "JUCE Network Graphics Demo"; + WARNING_CFLAGS = -Wreorder; + ZERO_LINK = NO; }; name = Debug; }; + 9C6D2FD441D79104734762A5 = {isa = XCBuildConfiguration; buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + DEBUG_INFORMATION_FORMAT = "dwarf"; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_INLINES_ARE_PRIVATE_EXTERN = YES; + GCC_MODEL_TUNING = G5; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_MISSING_PARENTHESES = YES; + GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES; + GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + PRODUCT_NAME = "JUCE Network Graphics Demo"; + WARNING_CFLAGS = -Wreorder; + ZERO_LINK = NO; }; name = Release; }; + 02715337C584F3C721251428 = {isa = XCConfigurationList; buildConfigurations = ( + 3BF0365A560ACD4FD24D40CE, + 9C6D2FD441D79104734762A5, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + BDC88C5882EF70163B9C8B02 = {isa = XCConfigurationList; buildConfigurations = ( + 48B76E3AFA2377D9DB65015D, + 5E673C38F805EC668720414D, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + 27D13F64374981C0D070073D = {isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 65B2C4ED19229E0EDC8EF993, + 006DF460F8DF66EFFA80D968, ); runOnlyForDeploymentPostprocessing = 0; }; + 8FA3466A9C5DCEF1CEC9D134 = {isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 987CBD5330E76B404F0D966C, + 9F618C008A503063D10076C4, + F420418005A79DAF770E7735, + 96B6D565C6C5F9159EB6A55F, + 76B52030E43D3B5AB6127691, + 400043FD261C86FBBC627B22, + A1DF53840C31BE4F53C45FDC, + C0034230852C5B299E4E727F, + 723819DB39E466E20A7F3320, + C9E4DFC6834B1902D7B5ECB5, + 12BE09EBD1CD09058C84C052, + 6E0A0DA4E667AC2D4F11E690, + 47674ECBB496642ADA2FE208, + 5615BFDBF1F361687927B58C, + 2E23D07E4DE9480FB5B4C540, + B8AF173DBD1F487F943A2FE7, ); runOnlyForDeploymentPostprocessing = 0; }; + 6B8B22FD390097B066D6145E = {isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 80EE2C27B466BAFD83881D3F, + C4D6C466C41173D6970553D2, + BED88ADEA4DC91AA8C810FA8, + 3C30D7C28C86F4054257DCD5, + 67DF295E93E54432043126DF, + CA694B2A73FCF12D7F9E7E49, + 80B9F7ED2009922C693B7DD4, + 77745BF98931B91341FE17F6, + B323E5E5FBD5663B21A8E623, + EC14DA30C090DDC62084DB4C, + 8ECB0767EE340DD83869E37D, ); runOnlyForDeploymentPostprocessing = 0; }; + AC6EE7CFEC691FF6322586E4 = {isa = PBXNativeTarget; buildConfigurationList = BDC88C5882EF70163B9C8B02; buildPhases = ( + 27D13F64374981C0D070073D, + 8FA3466A9C5DCEF1CEC9D134, + 6B8B22FD390097B066D6145E, ); buildRules = ( ); dependencies = ( ); name = "JUCE Network Graphics Demo"; productName = "JUCE Network Graphics Demo"; productReference = 88B666E3E64434D066937972; productInstallPath = "$(HOME)/Applications"; productType = "com.apple.product-type.application"; }; + A5398ADB6F5B128C00EB935C = {isa = PBXProject; buildConfigurationList = 02715337C584F3C721251428; attributes = { LastUpgradeCheck = 0440; }; compatibilityVersion = "Xcode 3.2"; hasScannedForEncodings = 0; mainGroup = D2EB65517396C974F0415A7F; projectDirPath = ""; projectRoot = ""; targets = ( AC6EE7CFEC691FF6322586E4 ); }; + }; + rootObject = A5398ADB6F5B128C00EB935C; +} diff --git a/examples/NetworkGraphicsDemo/Builds/MacOSX/RecentFilesMenuTemplate.nib b/examples/NetworkGraphicsDemo/Builds/MacOSX/RecentFilesMenuTemplate.nib new file mode 100644 index 0000000000000000000000000000000000000000..cec7f7c72bb7b287e0d493d53b0c487866ed6038 GIT binary patch literal 2842 zcmai03v3kE6}|7xy!Xa&z`M5b4;%lM&tmWg|D6Ew7aQ2M@%n>tur*!}uy{Yt&e%Yj z!V5{9M2(VAB|&M`7EBWqMJYm*Qk147ZPe1JqQtSlrHBH7I0T_IjZ#F@)_t?%Ee=It zN7~t$ckeyto_pVY+c)U<=|*AUI3U0vfeZvFDn(`M9m85!_l1J%9ihIhn%B^~9BSCR z#V203IgHR?JfM+%hit2XfdZM33l3Ne`LGO1p%PYu3*68FouI-XJOW|Z2HRl=JO&&d zhbQ3$coFu%%kV0U!U6axya8{)&*3Qi0*=GG@E)9mKfr1D5GLTya1k!SWw;8Tz^8Bv z#i9%}4`re(l#OywE^?sxXaQP?79l5EjPlSDRDhPXJAy-g|6d>m?t@skA7;U9hyxqg zAs!MS5#~S=Btr_MLK@74bjW~=UYpJB>G0{kKEKxK3-*V$=^NdiW-IkI+77+L?P(2# zjEBWbU%%d=`iC^V!{PO-y1v1BXIcrL+E6ek^b*qPy|%dj#jrejZK-Zgwb!fZ0?Ft1 z89S!ULt$Z^e8-xJWJdjeuiG3r;V~TZa^A$tIOC;!6>sE?VWu%!dWA5EgB)G6@Q+_0~^K?-8y;x)BOkDvSy{=lWhr{ZQ15gGP z;OrD+%}2|n3LfAkKZ6HhIjn${@DNl(4b(y%)I$TTf<|cK_woDrQXa<_@>HJA=kaWw z%k#LC7w~0KMb-)xV!x@vI5dlFT3{Wtf(P25U5Mt=fYA2|)`3%3tXY&QT zh|lV(cB#IgX%)?M5LB%O3Eae3g&<9@V7f2dxg3SVLi^yav z41ga35QI>#&F=Pya@RjH7ukjfz9|JYZG%QTR?|*H}#w^&f>t!FfCQP8jBMcrs6j zn3_={EIo#5XjYir@PtUpTru??h27vh2TuvHM(&X7X(3q6Hza#rv}1K-s|kTTLwx}e zgwGX~pUzw)oz~Xi^J_i2wP+bveH1D9I{3aQ_wzhMR5UGG#l2kF54C*W-6{M)P^c3m zZdYwT&k|jhZYeGBGP|1xwP04O=GB769k93i>@@*=5ccyN0X?5*M#0}S!RvYM-CCt? z2Ivt187Zv*bZn^gYic;l6tLHp)N5AK#I6f@hlC!6ZZ23#AA?^`_tPjG1LxgPW;W!B z88R+vtMB(2XYZ)UOzYpzuwLBJ5DEuW<6a1Vn&Gpgt;45nyO+n=86No^)}a12R)3vg zU)a{D`3Jj&LNm9nIVG=%nNTdYQ$r|dxYVH7W?@UQ3YZ)<2a#2vD)`JCKuO|SK7B<; zkoBA-1~C?h))gH=))S7#_?nj-vc-uQ-!{nby+&CcRH0dsNN6^SLpEeb@hAZ$qB$rD zC8HFSiqggI%~8 zx8N?k2?wx_AHzHGF8mDMi+_w?$A|D?d*2`4pWg6Sed~ARjY?$q3ud*Mq zAF-dX{p<~N5j6 literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/VisualStudio2013/JUCE Network Graphics Demo.sln b/examples/NetworkGraphicsDemo/Builds/VisualStudio2013/JUCE Network Graphics Demo.sln new file mode 100644 index 0000000000..d111a04118 --- /dev/null +++ b/examples/NetworkGraphicsDemo/Builds/VisualStudio2013/JUCE Network Graphics Demo.sln @@ -0,0 +1,19 @@ +Microsoft Visual Studio Solution File, Format Version 11.00 +# Visual Studio 2013 +Project("{73E9ECAB-81CE-7E67-D1B1-93FD2249F2CD}") = "JUCE Network Graphics Demo", "JUCE Network Graphics Demo.vcxproj", "{C8D7908E-D9F5-61FF-49C7-33D353A636D0}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Release|Win32 = Release|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {C8D7908E-D9F5-61FF-49C7-33D353A636D0}.Debug|Win32.ActiveCfg = Debug|Win32 + {C8D7908E-D9F5-61FF-49C7-33D353A636D0}.Debug|Win32.Build.0 = Debug|Win32 + {C8D7908E-D9F5-61FF-49C7-33D353A636D0}.Release|Win32.ActiveCfg = Release|Win32 + {C8D7908E-D9F5-61FF-49C7-33D353A636D0}.Release|Win32.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/examples/NetworkGraphicsDemo/Builds/VisualStudio2013/JUCE Network Graphics Demo.vcxproj b/examples/NetworkGraphicsDemo/Builds/VisualStudio2013/JUCE Network Graphics Demo.vcxproj new file mode 100644 index 0000000000..b2ffb230ab --- /dev/null +++ b/examples/NetworkGraphicsDemo/Builds/VisualStudio2013/JUCE Network Graphics Demo.vcxproj @@ -0,0 +1,1838 @@ + + + + + + Debug + Win32 + + + Release + Win32 + + + + {C8D7908E-D9F5-61FF-49C7-33D353A636D0} + v120 + + + + Application + false + v120 + + + Application + false + true + v120 + + + + + + + + v120 + + + <_ProjectFileVersion>10.0.30319.1 + JUCE Network Graphics Demo + true + JUCE Network Graphics Demo + true + v120 + + + + _DEBUG;%(PreprocessorDefinitions) + true + true + Win32 + + + + Disabled + EditAndContinue + ..\..\JuceLibraryCode;..\..\..\..\modules;%(AdditionalIncludeDirectories) + _CRT_SECURE_NO_WARNINGS;WIN32;_WINDOWS;DEBUG;_DEBUG;JUCER_VS2013_78A5020=1;JUCE_APP_VERSION=1.0.0;JUCE_APP_VERSION_HEX=0x10000;%(PreprocessorDefinitions) + MultiThreadedDebug + true + + $(IntDir)\ + $(IntDir)\ + $(IntDir)\ + Level4 + true + true + + + _DEBUG;%(PreprocessorDefinitions) + + + $(OutDir)\JUCE Network Graphics Demo.exe + true + libcmt.lib; msvcrt.lib;;%(IgnoreSpecificDefaultLibraries) + true + $(IntDir)\JUCE Network Graphics Demo.pdb + Windows + MachineX86 + false + true + + + true + $(IntDir)\JUCE Network Graphics Demo.bsc + + + + + NDEBUG;%(PreprocessorDefinitions) + true + true + Win32 + + + + Full + ..\..\JuceLibraryCode;..\..\..\..\modules;%(AdditionalIncludeDirectories) + _CRT_SECURE_NO_WARNINGS;WIN32;_WINDOWS;NDEBUG;JUCER_VS2013_78A5020=1;JUCE_APP_VERSION=1.0.0;JUCE_APP_VERSION_HEX=0x10000;%(PreprocessorDefinitions) + MultiThreaded + true + + $(IntDir)\ + $(IntDir)\ + $(IntDir)\ + Level4 + true + true + + + NDEBUG;%(PreprocessorDefinitions) + + + $(OutDir)\JUCE Network Graphics Demo.exe + true + %(IgnoreSpecificDefaultLibraries) + false + $(IntDir)\JUCE Network Graphics Demo.pdb + Windows + MachineX86 + true + true + true + + + true + $(IntDir)\JUCE Network Graphics Demo.bsc + + + + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/NetworkGraphicsDemo/Builds/VisualStudio2013/JUCE Network Graphics Demo.vcxproj.filters b/examples/NetworkGraphicsDemo/Builds/VisualStudio2013/JUCE Network Graphics Demo.vcxproj.filters new file mode 100644 index 0000000000..f73d27da11 --- /dev/null +++ b/examples/NetworkGraphicsDemo/Builds/VisualStudio2013/JUCE Network Graphics Demo.vcxproj.filters @@ -0,0 +1,3137 @@ + + + + + + {29EA0780-21FA-28D6-16E6-6CE80ECD10DA} + + + {4EFDD198-D2B5-7903-1381-33D93BA8085B} + + + {422C46B7-0467-2DB0-BF3C-16DFCAFD69AC} + + + {3247ED97-A75A-F50B-8CCC-46155E895806} + + + {A33A1E1D-AC2C-6382-8681-48B0FC374C60} + + + {11A75801-B027-40BD-4993-023023ACCBF7} + + + {3FD908F5-98C8-9A61-FC03-0BAF8913CBB0} + + + {8C868E51-156D-A916-047C-0D9EA1393675} + + + {EF2CAB40-0432-429B-C517-86ADF136BB8A} + + + {8F7EC212-3168-AD81-5064-C45BA838C408} + + + {CACD7B50-4DB3-76AF-A6E8-90DF94F8F594} + + + {9D270B31-2425-8FDB-84A4-6A2288FF5B2F} + + + {0F766DD4-A277-CB86-5647-42498C8B41E1} + + + {D64942B4-6984-3623-3347-45D472AE1C61} + + + {45C2CE26-EC4B-BA52-58F3-297C408E1483} + + + {01603E05-423B-5FC3-1BEE-E15ED33B5688} + + + {65CB28F8-0422-A8F3-9A17-959E12A1F8E2} + + + {2FE25F4C-E9DF-04A5-CAED-6E4B7CF28C59} + + + {0CD9E281-DDD0-91EC-6F77-EA9D9D5E0E1A} + + + {40C5CA7C-AEBB-05B1-11CE-AE41D87B5CCB} + + + {0B0E7392-324B-088C-FBEB-5FE999D61782} + + + {77E2C34E-A4D6-EDB5-A107-7CB3CEF0E8EF} + + + {20254EFE-6CBD-31A7-2119-92B1E0E0E311} + + + {70796D73-6D30-8A1B-4732-7C021E47C05A} + + + {EB8DD942-E2CB-869F-D381-E02A65BA790B} + + + {8F91DFC0-7A71-1BA8-D8D9-6B4CF49151A4} + + + {B63F69FD-8A40-8E1E-E7ED-419B8DC1C12B} + + + {8167E753-09C7-5D1C-EF2B-32D297557443} + + + {AEDCB7F7-7A36-5392-8E9A-715F5BDE35CB} + + + {B48C883A-8483-AF6D-808C-1D9A749048D8} + + + {95CA1506-2B94-0DEE-0C8D-85EDEBBC4E88} + + + {244D11B0-2D68-3C08-A0B7-0D12469BC3AA} + + + {476C69CE-0B67-6B85-E888-45D91E37A29E} + + + {7C5AD030-F8CC-6E85-0AF6-196B3ED40AC6} + + + {0608ADE9-66EF-1A19-6D57-12D07F76EB53} + + + {05F3DB8A-499C-6ACA-282F-5BF8455A0DE1} + + + {C9F6D785-BF78-5AA1-B479-111C65397864} + + + {C8F726FC-26BF-2E6B-4ED5-55A7FE316D7D} + + + {DA0DC4AC-B511-A2D4-199A-C93454D6F114} + + + {91929C6F-7902-B87D-5260-2F6CBF8ACD93} + + + {C294408A-2005-2E9E-7AC0-8D3ABE8AC175} + + + {4634FFAE-9586-A970-364C-4FDDA635F99F} + + + {F2B2F310-F30F-7166-42A9-9BF9C230DA78} + + + {1B67A7C0-86E0-53F6-6AE3-7AD93B8DC95B} + + + {F03654BC-34D8-F975-BEA3-750CC2783D23} + + + {4927C7A1-9235-4AA1-93CD-B4E67E6F1E5F} + + + {FA891A58-9FDA-9651-43C4-714A19B5D08D} + + + {C79A4D23-7866-8F3E-AC39-BD68C52A9259} + + + {3C7C8F35-6C08-9866-6663-6FEFE2EFC9FC} + + + {7703D2CE-C32A-936A-0EEF-949FE6E52EB5} + + + {8D283B6C-13BA-9EF6-1B18-B1C393786943} + + + {928D8FCC-5E00-174B-6538-93E8D75AB396} + + + {1988E68A-A964-64CA-0E0C-26FF9BC5176C} + + + {3DF036EA-3B80-553B-2494-3AAC835CAE75} + + + {358AEA11-3F96-36AE-7B32-71373B5C5396} + + + {F2A38F45-6E55-E147-2E52-64A89FDD9D59} + + + {6172822C-01A5-E824-12DA-FA43FA934D35} + + + {41DC3BE3-D629-8A17-C32B-F5B4008B5FAD} + + + {B098BC87-3298-7E6B-12DC-D26C09CDCAED} + + + {6322B88F-984A-C3CD-6263-38D7AA49B6EC} + + + {73C1E759-AD90-59A3-942E-2D10FAA29107} + + + {EE1AE8C3-0908-8F53-A4E5-D930C7C97C26} + + + {4926B3FF-E797-F586-857A-69D9703FA2D1} + + + {EBC65085-3AD5-280C-1A29-2B1683643AA1} + + + {413F481F-075C-2958-115C-D8268682FCB7} + + + {69E1179D-76EC-26DC-C3E6-6602ED26D783} + + + {C1A1A236-AB01-173E-96C3-0706BFF93B1E} + + + {1182303F-ECA3-166D-AC0C-92C5E762CB93} + + + {26ECA2AF-7368-C6CC-58EF-017ECD1862D0} + + + {E37D25CD-4350-4614-055B-7ABC55E67895} + + + {FFC6E1CC-C772-75E6-5087-FB5D4E016799} + + + {8E43579F-C185-266D-DD67-F8B95BD80F2F} + + + {2CB59E7C-D0E4-7D27-2ACF-C7ABADEE936D} + + + {796B7886-44A7-34CC-9B95-BF4FB2C7B6F4} + + + {A92719C7-70BE-57C4-CE9E-A9BC9DFEB757} + + + {75F1F352-251A-75E0-D941-8431588F5C1E} + + + {DB6E3D09-66DA-12DA-BAE8-A5BFFA7A14AC} + + + {7BCEAB87-62FD-0327-EB5D-679E54EDB9B1} + + + {E980FADB-6E3F-B93C-DE02-CE4271C9BA93} + + + {C3B2EB8A-1A2F-306F-AA78-3E9D1593788B} + + + {7A53E6F1-1343-33B8-4CA8-1D7B714A0E76} + + + {5A0AA36E-3957-E413-14C6-31CBE15271DF} + + + {D7E3D10F-3ED8-DFC5-6DB3-E4ACBF8678FB} + + + {F408DCA2-D5E2-0A3A-A064-A1D045889BC1} + + + {5FDBD6B1-9BBD-392F-4DA5-FEA40A9370C4} + + + {46535B56-3737-2BE8-E3A0-571BCBEB2DA4} + + + {C2B9505B-27B4-F650-12BD-F477D4BBCBAA} + + + {61712B09-5783-ADFA-2001-5A0C3D7764EB} + + + {8A80BA78-D3A8-C0F8-7FFD-61AA028CE852} + + + {8EC9572F-3CCA-E930-74B6-CB6139DE0E17} + + + {C60A6FCA-9462-922E-AD8D-69F10C9049AF} + + + {D56498EE-E354-1F00-5EEE-8CF7944BEAFB} + + + {61B2920C-494D-D8CB-C0C7-5DBF3D76D164} + + + {66C9B809-8739-A217-C78D-A15D6089B8E3} + + + {C413328B-5D81-89EE-F4F3-75752E700DE4} + + + {639E16C5-DA8B-ADBA-6E24-7B596378EAB2} + + + {2D8D0E19-E676-83EB-38D9-F73500DD6B79} + + + {B3141847-8F13-F67D-45B2-E3ECF6E09088} + + + {9E586194-C056-101C-5311-F2AF5191AC80} + + + {151B49D8-6102-F802-1C07-D59931BC0574} + + + {1A62F82C-C14A-E14A-94DE-8A27E0F8A090} + + + {3D19F603-7985-B222-DFDA-9B83329ACA9D} + + + {8B4D1BAA-6DB4-CAEC-A0FA-271F354D5C61} + + + + + JUCE Network Graphics Demo\Source + + + Juce Modules\juce_audio_basics\buffers + + + Juce Modules\juce_audio_basics\buffers + + + Juce Modules\juce_audio_basics\effects + + + Juce Modules\juce_audio_basics\effects + + + Juce Modules\juce_audio_basics\effects + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\synthesisers + + + Juce Modules\juce_audio_devices\audio_io + + + Juce Modules\juce_audio_devices\audio_io + + + Juce Modules\juce_audio_devices\audio_io + + + Juce Modules\juce_audio_devices\midi_io + + + Juce Modules\juce_audio_devices\midi_io + + + Juce Modules\juce_audio_devices\sources + + + Juce Modules\juce_audio_devices\sources + + + Juce Modules\juce_audio_devices\audio_cd + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\sampler + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\format + + + Juce Modules\juce_audio_processors\format + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\scanning + + + Juce Modules\juce_audio_processors\scanning + + + Juce Modules\juce_audio_processors\scanning + + + Juce Modules\juce_audio_processors\utilities + + + Juce Modules\juce_audio_processors\utilities + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\players + + + Juce Modules\juce_audio_utils\native + + + Juce Modules\juce_audio_utils\native + + + Juce Modules\juce_audio_utils\native + + + Juce Modules\juce_audio_utils\native + + + Juce Modules\juce_audio_utils\native + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\logging + + + Juce Modules\juce_core\logging + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\xml + + + Juce Modules\juce_core\xml + + + Juce Modules\juce_core\javascript + + + Juce Modules\juce_core\javascript + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\unit_tests + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\hashing + + + Juce Modules\juce_cryptography\hashing + + + Juce Modules\juce_cryptography\hashing + + + Juce Modules\juce_data_structures\values + + + Juce Modules\juce_data_structures\values + + + Juce Modules\juce_data_structures\values + + + Juce Modules\juce_data_structures\undomanager + + + Juce Modules\juce_data_structures\app_properties + + + Juce Modules\juce_data_structures\app_properties + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\timers + + + Juce Modules\juce_events\timers + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\interprocess + + + Juce Modules\juce_events\interprocess + + + Juce Modules\juce_events\interprocess + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\image_formats + + + Juce Modules\juce_graphics\image_formats + + + Juce Modules\juce_graphics\image_formats + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\placement + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\lookandfeel + + + Juce Modules\juce_gui_basics\lookandfeel + + + Juce Modules\juce_gui_basics\lookandfeel + + + Juce Modules\juce_gui_basics\lookandfeel + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\misc + + + Juce Modules\juce_gui_basics\misc + + + Juce Modules\juce_gui_basics\application + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\documents + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\utils + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc\osc + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + + + JUCE Network Graphics Demo\Source + + + JUCE Network Graphics Demo\Source + + + JUCE Network Graphics Demo\Source + + + JUCE Network Graphics Demo\Source + + + Juce Modules\juce_audio_basics\buffers + + + Juce Modules\juce_audio_basics\buffers + + + Juce Modules\juce_audio_basics\buffers + + + Juce Modules\juce_audio_basics\effects + + + Juce Modules\juce_audio_basics\effects + + + Juce Modules\juce_audio_basics\effects + + + Juce Modules\juce_audio_basics\effects + + + Juce Modules\juce_audio_basics\effects + + + Juce Modules\juce_audio_basics\effects + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\mpe + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\synthesisers + + + Juce Modules\juce_audio_basics + + + Juce Modules\juce_audio_devices\audio_io + + + Juce Modules\juce_audio_devices\audio_io + + + Juce Modules\juce_audio_devices\audio_io + + + Juce Modules\juce_audio_devices\audio_io + + + Juce Modules\juce_audio_devices\midi_io + + + Juce Modules\juce_audio_devices\midi_io + + + Juce Modules\juce_audio_devices\midi_io + + + Juce Modules\juce_audio_devices\sources + + + Juce Modules\juce_audio_devices\sources + + + Juce Modules\juce_audio_devices\audio_cd + + + Juce Modules\juce_audio_devices\audio_cd + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\sampler + + + Juce Modules\juce_audio_formats + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\format + + + Juce Modules\juce_audio_processors\format + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\scanning + + + Juce Modules\juce_audio_processors\scanning + + + Juce Modules\juce_audio_processors\scanning + + + Juce Modules\juce_audio_processors\utilities + + + Juce Modules\juce_audio_processors\utilities + + + Juce Modules\juce_audio_processors\utilities + + + Juce Modules\juce_audio_processors\utilities + + + Juce Modules\juce_audio_processors\utilities + + + Juce Modules\juce_audio_processors\utilities + + + Juce Modules\juce_audio_processors + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\players + + + Juce Modules\juce_audio_utils + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\logging + + + Juce Modules\juce_core\logging + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\xml + + + Juce Modules\juce_core\xml + + + Juce Modules\juce_core\javascript + + + Juce Modules\juce_core\javascript + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\unit_tests + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\hashing + + + Juce Modules\juce_cryptography\hashing + + + Juce Modules\juce_cryptography\hashing + + + Juce Modules\juce_cryptography + + + Juce Modules\juce_data_structures\values + + + Juce Modules\juce_data_structures\values + + + Juce Modules\juce_data_structures\values + + + Juce Modules\juce_data_structures\undomanager + + + Juce Modules\juce_data_structures\undomanager + + + Juce Modules\juce_data_structures\app_properties + + + Juce Modules\juce_data_structures\app_properties + + + Juce Modules\juce_data_structures + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\timers + + + Juce Modules\juce_events\timers + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\interprocess + + + Juce Modules\juce_events\interprocess + + + Juce Modules\juce_events\interprocess + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\placement + + + Juce Modules\juce_graphics\placement + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\lookandfeel + + + Juce Modules\juce_gui_basics\lookandfeel + + + Juce Modules\juce_gui_basics\lookandfeel + + + Juce Modules\juce_gui_basics\lookandfeel + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\misc + + + Juce Modules\juce_gui_basics\misc + + + Juce Modules\juce_gui_basics\application + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\documents + + + Juce Modules\juce_gui_extra\embedding + + + Juce Modules\juce_gui_extra\embedding + + + Juce Modules\juce_gui_extra\embedding + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\geometry + + + Juce Modules\juce_opengl\geometry + + + Juce Modules\juce_opengl\geometry + + + Juce Modules\juce_opengl\geometry + + + Juce Modules\juce_opengl\utils + + + Juce Modules\juce_opengl\native + + + Juce Modules\juce_opengl\native + + + Juce Modules\juce_opengl\native + + + Juce Modules\juce_opengl\native + + + Juce Modules\juce_opengl\native + + + Juce Modules\juce_opengl\native + + + Juce Modules\juce_opengl\native + + + Juce Modules\juce_opengl + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc\osc + + + Juce Modules\juce_osc + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + + + JUCE Network Graphics Demo + + + Juce Modules\juce_audio_basics + + + Juce Modules\juce_audio_devices + + + Juce Modules\juce_audio_formats + + + Juce Modules\juce_audio_processors + + + Juce Modules\juce_audio_utils + + + Juce Modules\juce_core + + + Juce Modules\juce_cryptography + + + Juce Modules\juce_data_structures + + + Juce Modules\juce_events + + + Juce Modules\juce_graphics + + + Juce Modules\juce_gui_basics + + + Juce Modules\juce_gui_extra + + + Juce Modules\juce_opengl + + + Juce Modules\juce_osc + + + Juce Library Code + + + + + Juce Library Code + + + diff --git a/examples/NetworkGraphicsDemo/Builds/VisualStudio2013/icon.ico b/examples/NetworkGraphicsDemo/Builds/VisualStudio2013/icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..70bbdd511703aa10a8daa471f514680ae6f9edb2 GIT binary patch literal 33550 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 Gq5lKytlfqH literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/VisualStudio2013/resources.rc b/examples/NetworkGraphicsDemo/Builds/VisualStudio2013/resources.rc new file mode 100644 index 0000000000..d3a05a0f99 --- /dev/null +++ b/examples/NetworkGraphicsDemo/Builds/VisualStudio2013/resources.rc @@ -0,0 +1,32 @@ +#ifdef JUCE_USER_DEFINED_RC_FILE + #include JUCE_USER_DEFINED_RC_FILE +#else + +#undef WIN32_LEAN_AND_MEAN +#define WIN32_LEAN_AND_MEAN +#include + +VS_VERSION_INFO VERSIONINFO +FILEVERSION 1,0,0,0 +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904E4" + BEGIN + VALUE "FileDescription", "JUCE Network Graphics Demo\0" + VALUE "FileVersion", "1.0.0\0" + VALUE "ProductName", "JUCE Network Graphics Demo\0" + VALUE "ProductVersion", "1.0.0\0" + END + END + + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x409, 1252 + END +END + +#endif + +IDI_ICON1 ICON DISCARDABLE "icon.ico" +IDI_ICON2 ICON DISCARDABLE "icon.ico" \ No newline at end of file diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/Icon.icns b/examples/NetworkGraphicsDemo/Builds/iOS/Icon.icns new file mode 100644 index 0000000000000000000000000000000000000000..efb55fc0040303a5e9be058d176653a8a10a2e88 GIT binary patch literal 44836 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 z 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 literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/Info.plist b/examples/NetworkGraphicsDemo/Builds/iOS/Info.plist new file mode 100644 index 0000000000..4cac323a48 --- /dev/null +++ b/examples/NetworkGraphicsDemo/Builds/iOS/Info.plist @@ -0,0 +1,38 @@ + + + + + + LSRequiresIPhoneOS + + UIViewControllerBasedStatusBarAppearance + + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleName + JUCE Network Graphics Demo + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0.0 + CFBundleVersion + 1.0.0 + NSHumanReadableCopyright + + NSHighResolutionCapable + + UIRequiresFullScreen + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo.xcodeproj/project.pbxproj b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo.xcodeproj/project.pbxproj new file mode 100644 index 0000000000..78b81d123c --- /dev/null +++ b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo.xcodeproj/project.pbxproj @@ -0,0 +1,2283 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + + 80EE2C27B466BAFD83881D3F = {isa = PBXBuildFile; fileRef = 2E13A899F4E3C99054A3656F; }; + C4D6C466C41173D6970553D2 = {isa = PBXBuildFile; fileRef = 9E8129263CD42C6029FC2CAD; }; + 3CC6DC6E223415B506D0CB75 = {isa = PBXBuildFile; fileRef = 080961C54C58ECF2346B4C23; }; + 67DF295E93E54432043126DF = {isa = PBXBuildFile; fileRef = 6799B056504F9F017998B9E2; }; + 770AB74B1D3A0108F764DD47 = {isa = PBXBuildFile; fileRef = 4D1DB6D77B6F3DE7A569780B; }; + 366A216FDEBD7BDDC1BA12D9 = {isa = PBXBuildFile; fileRef = DA40ED39AF4B56000E5A2743; }; + CA694B2A73FCF12D7F9E7E49 = {isa = PBXBuildFile; fileRef = 448838BE6E937D450A3C84CE; }; + 5A64B64E5B45AEA1A0EECC4B = {isa = PBXBuildFile; fileRef = 9193D2A3C463BEAA07FD424D; }; + F918FB5901F09EA77DB32022 = {isa = PBXBuildFile; fileRef = F7D557738137CA1A370BAA27; }; + A6AA70BD9364BB974CDEB337 = {isa = PBXBuildFile; fileRef = C821C5805007FFDC2636BBE6; }; + EC14DA30C090DDC62084DB4C = {isa = PBXBuildFile; fileRef = 935CA85EF98714D3A17AE737; }; + F714F0C84F5945BF3539239E = {isa = PBXBuildFile; fileRef = 379F77D23BFAE3795282CEB3; }; + 521016BFC5181B3170BD9E8A = {isa = PBXBuildFile; fileRef = A7050DB1488924F209A7B5CF; }; + 006DF460F8DF66EFFA80D968 = {isa = PBXBuildFile; fileRef = 70F1CAF3C4C561DD81E6AFC1; }; + 987CBD5330E76B404F0D966C = {isa = PBXBuildFile; fileRef = 77C0AC21C1028911123844FC; }; + 9F618C008A503063D10076C4 = {isa = PBXBuildFile; fileRef = 74711D7544168CCAC4969A07; }; + F420418005A79DAF770E7735 = {isa = PBXBuildFile; fileRef = 39BADA2042495195394900F3; }; + 96B6D565C6C5F9159EB6A55F = {isa = PBXBuildFile; fileRef = 44301EEC47F5688D9BC0582E; }; + 76B52030E43D3B5AB6127691 = {isa = PBXBuildFile; fileRef = F756FBC7A6836696BCADD2B4; }; + 400043FD261C86FBBC627B22 = {isa = PBXBuildFile; fileRef = 814EF15FC580DB2A5F426071; }; + A1DF53840C31BE4F53C45FDC = {isa = PBXBuildFile; fileRef = CAD2BDFE8443FE5648EF5A9C; }; + C0034230852C5B299E4E727F = {isa = PBXBuildFile; fileRef = C63EFC8D5E9FDC58BD4A9CA2; }; + 723819DB39E466E20A7F3320 = {isa = PBXBuildFile; fileRef = DD866BA894AC019F86C5F4C9; }; + C9E4DFC6834B1902D7B5ECB5 = {isa = PBXBuildFile; fileRef = A67B57899953E98B2B52FA2C; }; + 12BE09EBD1CD09058C84C052 = {isa = PBXBuildFile; fileRef = 13BEE456E0A7D58819C06B21; }; + 6E0A0DA4E667AC2D4F11E690 = {isa = PBXBuildFile; fileRef = A80E52C517801112E8F19350; }; + 47674ECBB496642ADA2FE208 = {isa = PBXBuildFile; fileRef = 3C02F146BFD3D2C8B0B3D8B8; }; + 5615BFDBF1F361687927B58C = {isa = PBXBuildFile; fileRef = D185AFBBD6B50B5CCC2A9A3D; }; + 2E23D07E4DE9480FB5B4C540 = {isa = PBXBuildFile; fileRef = 556B39875D557171B3E0D68C; }; + B8AF173DBD1F487F943A2FE7 = {isa = PBXBuildFile; fileRef = 71274DD47D3EFC3EB83ED73C; }; + 000265F702986DE8DD932309 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessageSequence.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessageSequence.h"; sourceTree = "SOURCE_ROOT"; }; + 000DAE49A15BE8D4DA5ADA8E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RecentlyOpenedFilesList.h"; path = "../../../../modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.h"; sourceTree = "SOURCE_ROOT"; }; + 000EA162E25BC873954A9E48 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadowEffect.cpp"; path = "../../../../modules/juce_graphics/effects/juce_DropShadowEffect.cpp"; sourceTree = "SOURCE_ROOT"; }; + 001CA7EAF68DA335025FF01E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedXLock.h"; path = "../../../../modules/juce_events/native/juce_ScopedXLock.h"; sourceTree = "SOURCE_ROOT"; }; + 008187B05C0B633EE28ABE56 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_ALSA.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_ALSA.cpp"; sourceTree = "SOURCE_ROOT"; }; + 00B6967A854897C9D379AAF4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeCoordinate.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinate.h"; sourceTree = "SOURCE_ROOT"; }; + 015F1D2D5F78A62C40AD1B67 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedValueSetter.h"; path = "../../../../modules/juce_core/containers/juce_ScopedValueSetter.h"; sourceTree = "SOURCE_ROOT"; }; + 01641AA0EEDDC5059FC28EF9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPairArray.cpp"; path = "../../../../modules/juce_core/text/juce_StringPairArray.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0186D1FA79D760C30575B900 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioThumbnailCache.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnailCache.h"; sourceTree = "SOURCE_ROOT"; }; + 01A0FE7CE574B63A82297143 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PlatformDefs.h"; path = "../../../../modules/juce_core/system/juce_PlatformDefs.h"; sourceTree = "SOURCE_ROOT"; }; + 01E2D0EC4D596AB94D022EA3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_QuickTimeAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_QuickTimeAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 01F6751F1A5EC2C9578F9D65 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileSearchPath.cpp"; path = "../../../../modules/juce_core/files/juce_FileSearchPath.cpp"; sourceTree = "SOURCE_ROOT"; }; + 02181D9B5A755E385CD47FD2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableShape.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableShape.cpp"; sourceTree = "SOURCE_ROOT"; }; + 029E06243E22D19B62C7FAC4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableLayoutResizerBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutResizerBar.h"; sourceTree = "SOURCE_ROOT"; }; + 02B2B5127DF9BF906368E988 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FlacAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_FlacAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 035144F9C35671488A15E9F6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Viewport.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_Viewport.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0368A590FC29803595DF7D62 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CPlusPlusCodeTokeniser.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; + 03C5EFBEA606B1857E2E7E70 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrowButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ArrowButton.h"; sourceTree = "SOURCE_ROOT"; }; + 03CA60ABCF619E81CB165C97 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CPlusPlusCodeTokeniserFunctions.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniserFunctions.h"; sourceTree = "SOURCE_ROOT"; }; + 03CD52285663EB462E66AEDE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableEdgeComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 03F0E358E328911FE44415CC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioTransportSource.cpp"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioTransportSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0402044CF4F834C138AA337F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PathStrokeType.h"; path = "../../../../modules/juce_graphics/geometry/juce_PathStrokeType.h"; sourceTree = "SOURCE_ROOT"; }; + 042DAFB982DBCB0940DAC979 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Memory.h"; path = "../../../../modules/juce_core/memory/juce_Memory.h"; sourceTree = "SOURCE_ROOT"; }; + 0456E3F8B40732E545A844CC = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CoreGraphicsHelpers.h"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 04609F32D6A859ED385DCBE6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedPipe.h"; path = "../../../../modules/juce_core/network/juce_NamedPipe.h"; sourceTree = "SOURCE_ROOT"; }; + 047CB008052CCD126633FB9B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LookAndFeel_V1.cpp"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V1.cpp"; sourceTree = "SOURCE_ROOT"; }; + 04F797332FEC7F3DEAE457B5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLPixelFormat.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLPixelFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 051B1F5CA25863E123C662B0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_android_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0543BDC4AF5B2ABF41749383 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCBundle.h"; path = "../../../../modules/juce_osc/osc/juce_OSCBundle.h"; sourceTree = "SOURCE_ROOT"; }; + 0555BAE6156EAF15CA77A2D8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AppConfig.h; path = ../../JuceLibraryCode/AppConfig.h; sourceTree = "SOURCE_ROOT"; }; + 0566C8771A3278C82D183A98 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDeviceManager.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioDeviceManager.h"; sourceTree = "SOURCE_ROOT"; }; + 057E2AFB89FF0CF0CAA013AF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FilePreviewComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 05C08B8A9AA77D8F0064467A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_IIRFilter.cpp"; path = "../../../../modules/juce_audio_basics/effects/juce_IIRFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 05FD1A2AE03215E9DF92132F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LookAndFeel_V1.h"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V1.h"; sourceTree = "SOURCE_ROOT"; }; + 06753930A82DF7E1BF429914 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CodeEditorComponent.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0679221D71CD972EE07343B5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_String.h"; path = "../../../../modules/juce_core/text/juce_String.h"; sourceTree = "SOURCE_ROOT"; }; + 06E0E9069EB3A4DED12A83DD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Slider.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Slider.h"; sourceTree = "SOURCE_ROOT"; }; + 080961C54C58ECF2346B4C23 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; + 0833B2844B74E56A7F375B99 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Application.h"; path = "../../../../modules/juce_gui_basics/application/juce_Application.h"; sourceTree = "SOURCE_ROOT"; }; + 084DC67E578B4943704DF6A8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLImage.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLImage.h"; sourceTree = "SOURCE_ROOT"; }; + 085FC01079EE77D52D1ED893 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_AudioCDBurner.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_AudioCDBurner.cpp"; sourceTree = "SOURCE_ROOT"; }; + 08CCA1B6C1824CE73281A769 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Expression.h"; path = "../../../../modules/juce_core/maths/juce_Expression.h"; sourceTree = "SOURCE_ROOT"; }; + 08EF9C1A184B049FA45DF95F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WildcardFileFilter.h"; path = "../../../../modules/juce_core/files/juce_WildcardFileFilter.h"; sourceTree = "SOURCE_ROOT"; }; + 08F0F20CA590351DD32B176E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileOutputStream.h"; path = "../../../../modules/juce_core/files/juce_FileOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 092152EAB569DB7795FD7B2F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ThreadWithProgressWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 09532D678D2C41FEFACA71F3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationBase.h"; path = "../../../../modules/juce_events/messages/juce_ApplicationBase.h"; sourceTree = "SOURCE_ROOT"; }; + 096BB22B9363BAC781C4668D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSampleBuffer.h"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioSampleBuffer.h"; sourceTree = "SOURCE_ROOT"; }; + 096F493E855364B082CA966C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ShapeButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ShapeButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 097E290A4679C103208EF789 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AnimatedPosition.h"; path = "../../../../modules/juce_gui_basics/layout/juce_AnimatedPosition.h"; sourceTree = "SOURCE_ROOT"; }; + 09802FE2689EB8288E554B4B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WildcardFileFilter.cpp"; path = "../../../../modules/juce_core/files/juce_WildcardFileFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0A4955566797EBA0ECE56806 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyMappingEditorComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0AD627D1D2B082D09E1AA078 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TopLevelWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_TopLevelWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 0ADF0DECFCB1DB4D3A847EB5 = {isa = PBXFileReference; lastKnownFileType = image.png; name = "juce_icon.png"; path = "../../Source/juce_icon.png"; sourceTree = "SOURCE_ROOT"; }; + 0B37C06B070C6F069F23A812 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharacterFunctions.h"; path = "../../../../modules/juce_core/text/juce_CharacterFunctions.h"; sourceTree = "SOURCE_ROOT"; }; + 0BAD16A58A9CBB0A2FC3C273 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DropShadower.h"; path = "../../../../modules/juce_gui_basics/misc/juce_DropShadower.h"; sourceTree = "SOURCE_ROOT"; }; + 0C487F069E493BF67537758A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileListComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0C573FF1309CE106DA2D2CF9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_utils.h"; path = "../../../../modules/juce_audio_utils/juce_audio_utils.h"; sourceTree = "SOURCE_ROOT"; }; + 0C58D2236F902CCD34EA4FCA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_CommonFile.cpp"; path = "../../../../modules/juce_core/native/juce_linux_CommonFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0CFDFC8B0EE4F67F3140A95E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_graphics.h"; path = "../../../../modules/juce_graphics/juce_graphics.h"; sourceTree = "SOURCE_ROOT"; }; + 0D6692C87B6EEDFCB658A996 = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Info.plist; sourceTree = "SOURCE_ROOT"; }; + 0DA4C3278F6482DB3E59D9BA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComboBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ComboBox.h"; sourceTree = "SOURCE_ROOT"; }; + 0DB078E2523AD3ABE77A95F6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioChannelSet.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioChannelSet.h"; sourceTree = "SOURCE_ROOT"; }; + 0DBCEADB9A04439E66BE176E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CharacterFunctions.cpp"; path = "../../../../modules/juce_core/text/juce_CharacterFunctions.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0DD52BE61E4DCA9575F5649F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandManager.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandManager.h"; sourceTree = "SOURCE_ROOT"; }; + 0EAE4A004CEB66D275142FCA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioIODeviceType.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODeviceType.h"; sourceTree = "SOURCE_ROOT"; }; + 0F26080D0E46879414836AE2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CompilerSupport.h"; path = "../../../../modules/juce_core/system/juce_CompilerSupport.h"; sourceTree = "SOURCE_ROOT"; }; + 0F98FB16D69403E94F1BB9C7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextDiff.cpp"; path = "../../../../modules/juce_core/text/juce_TextDiff.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0F98FC70765AB9D2566AFD47 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCArgument.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCArgument.cpp"; sourceTree = "SOURCE_ROOT"; }; + 101637AD0747ECC48982FDAA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatReaderSource.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReaderSource.h"; sourceTree = "SOURCE_ROOT"; }; + 1070CD5C289E13B829661610 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LagrangeInterpolator.cpp"; path = "../../../../modules/juce_audio_basics/effects/juce_LagrangeInterpolator.cpp"; sourceTree = "SOURCE_ROOT"; }; + 10D5F9D8D44A252288D19F42 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VST3Common.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_VST3Common.h"; sourceTree = "SOURCE_ROOT"; }; + 10E1C3C331DF35D35508268B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ZipFile.cpp"; path = "../../../../modules/juce_core/zip/juce_ZipFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 10F958EF56CFB17EA747F3B9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AbstractFifo.h"; path = "../../../../modules/juce_core/containers/juce_AbstractFifo.h"; sourceTree = "SOURCE_ROOT"; }; + 111058D736659E73DB065469 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPESynthesiser.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPESynthesiser.h"; sourceTree = "SOURCE_ROOT"; }; + 1140A39FF348973EE6F372CB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Value.cpp"; path = "../../../../modules/juce_data_structures/values/juce_Value.cpp"; sourceTree = "SOURCE_ROOT"; }; + 11561CA1FD46FA08C2EF0C9E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChildProcess.cpp"; path = "../../../../modules/juce_core/threads/juce_ChildProcess.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1172DC1C9E21CAAF0C82687D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WavAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_WavAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 118B1A6119520DC2CCE4E119 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGL_ios.h"; path = "../../../../modules/juce_opengl/native/juce_OpenGL_ios.h"; sourceTree = "SOURCE_ROOT"; }; + 1197F204437B7E10650C45C9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DragAndDropContainer.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1199999650BF539117869187 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseListener.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseListener.h"; sourceTree = "SOURCE_ROOT"; }; + 11FC5BF4D4CE5451BA651132 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandManager.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1204FCBC82EA38A9512D0D81 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileChooserDialogBox.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooserDialogBox.h"; sourceTree = "SOURCE_ROOT"; }; + 123CEDA734678EE95C34463D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MarkerList.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_MarkerList.h"; sourceTree = "SOURCE_ROOT"; }; + 1296A96AEE50FD66957B71C1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AffineTransform.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"; sourceTree = "SOURCE_ROOT"; }; + 12F6DB893E5757C9F3D00F0D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ProgressBar.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ProgressBar.h"; sourceTree = "SOURCE_ROOT"; }; + 1377617053AF07B0E571F77B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReverbAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ReverbAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 13A6B8661E1D605FCD86F1E0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HyperlinkButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_HyperlinkButton.h"; sourceTree = "SOURCE_ROOT"; }; + 13BD4B06D1A341403533186D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCTimeTag.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCTimeTag.cpp"; sourceTree = "SOURCE_ROOT"; }; + 13BEE456E0A7D58819C06B21 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_events.mm"; path = "../../../../modules/juce_events/juce_events.mm"; sourceTree = "SOURCE_ROOT"; }; + 13C50C345BB1AE097DE51F8D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPESynthesiserVoice.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPESynthesiserVoice.cpp"; sourceTree = "SOURCE_ROOT"; }; + 13E0FBE11F1B5028F51D4A83 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileDragAndDropTarget.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_FileDragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 140159E9C38C975949494E5C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LookAndFeel.cpp"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 14340FB465ADE55CB3E9B66A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MenuBarModel.h"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarModel.h"; sourceTree = "SOURCE_ROOT"; }; + 14527382440E68E3F0EB8198 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableHeaderComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableHeaderComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 14B4A539EBA209BC22B91F76 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandInfo.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandInfo.cpp"; sourceTree = "SOURCE_ROOT"; }; + 150135E20D3B4547F1B8A76F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeParallelogram.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeParallelogram.cpp"; sourceTree = "SOURCE_ROOT"; }; + 15AF91E3F446F92E4B2F7093 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCMessage.h"; path = "../../../../modules/juce_osc/osc/juce_OSCMessage.h"; sourceTree = "SOURCE_ROOT"; }; + 15D277FFB993448CDB52E307 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AbstractFifo.cpp"; path = "../../../../modules/juce_core/containers/juce_AbstractFifo.cpp"; sourceTree = "SOURCE_ROOT"; }; + 15EC4D082AC33A2DFBAA8560 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPEInstrument.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEInstrument.h"; sourceTree = "SOURCE_ROOT"; }; + 15FB19A9D4DE60608E5E123A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MessageManager.mm"; path = "../../../../modules/juce_events/native/juce_mac_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; }; + 16A3BFE2C5679BDD49A4F424 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WaitableEvent.h"; path = "../../../../modules/juce_core/threads/juce_WaitableEvent.h"; sourceTree = "SOURCE_ROOT"; }; + 174350B11E9207B7038E2BFA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GenericAudioProcessorEditor.h"; path = "../../../../modules/juce_audio_processors/processors/juce_GenericAudioProcessorEditor.h"; sourceTree = "SOURCE_ROOT"; }; + 174E22634C4ADC7062948B9D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_android_JNIHelpers.h"; path = "../../../../modules/juce_core/native/juce_android_JNIHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 17CBE6045D10290C77948F0C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SHA256.cpp"; path = "../../../../modules/juce_cryptography/hashing/juce_SHA256.cpp"; sourceTree = "SOURCE_ROOT"; }; + 181C1A360C01EFF44A3BB18A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiKeyboardComponent.h"; path = "../../../../modules/juce_audio_utils/gui/juce_MidiKeyboardComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 1989B5707DDA6E738FAABBD0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileFilter.h"; path = "../../../../modules/juce_core/files/juce_FileFilter.h"; sourceTree = "SOURCE_ROOT"; }; + 1A25D684574EDD045683D4E8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyPressMappingSet.h"; path = "../../../../modules/juce_gui_basics/commands/juce_KeyPressMappingSet.h"; sourceTree = "SOURCE_ROOT"; }; + 1A5086FB7B39D1C8FFAE63D9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReferenceCountedArray.h"; path = "../../../../modules/juce_core/containers/juce_ReferenceCountedArray.h"; sourceTree = "SOURCE_ROOT"; }; + 1A593509B099BCDAFE5303E5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessageSequence.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessageSequence.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1A5E7683202DE3D3B911F9C8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CaretComponent.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_CaretComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 1A89B025B5C028C536ED4A8F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChoicePropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_ChoicePropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 1AB81EC2CA06F18202F3049B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NotificationType.h"; path = "../../../../modules/juce_events/messages/juce_NotificationType.h"; sourceTree = "SOURCE_ROOT"; }; + 1ABEE94704EA506C399E9BB7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLContext.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1AC73EEBD03A5926652CB682 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_TextButton.h"; sourceTree = "SOURCE_ROOT"; }; + 1ADD2315C0E364D635A88C2D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterProcessLock.h"; path = "../../../../modules/juce_core/threads/juce_InterProcessLock.h"; sourceTree = "SOURCE_ROOT"; }; + 1ADEA6673C57B57FC0BBCD04 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentBoundsConstrainer.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBoundsConstrainer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1AFAD88BA98AA530A435A680 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileOutputStream.cpp"; path = "../../../../modules/juce_core/files/juce_FileOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1B4E025E8860D906F0ABA692 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_linux_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1B9BCCBA7BA4D87454EC8710 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win_BluetoothMidiDevicePairingDialogue.cpp"; path = "../../../../modules/juce_audio_utils/native/juce_win_BluetoothMidiDevicePairingDialogue.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1BFF9FF8A046E614580B8B78 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentPeer.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ComponentPeer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1C36397644AEF2DC1576C3A6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComboBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ComboBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1C38EDA19B0B3A45BA47CE6E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCMessage.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCMessage.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1C99350395AE046857697B14 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BigInteger.cpp"; path = "../../../../modules/juce_core/maths/juce_BigInteger.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1D0F3060DD65B305A1C0E72A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioParameterBool.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.h"; sourceTree = "SOURCE_ROOT"; }; + 1D153366F6EA459B397CA356 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_AudioUnitPluginFormat.mm"; path = "../../../../modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.mm"; sourceTree = "SOURCE_ROOT"; }; + 1D58402ABF05B2EF162769C7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableHeaderComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableHeaderComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1D68D7036540404EFB82B35D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextEditor.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TextEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1DE2689A8FBB19007E892906 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AudioCDReader.mm"; path = "../../../../modules/juce_audio_devices/native/juce_mac_AudioCDReader.mm"; sourceTree = "SOURCE_ROOT"; }; + 1DE819F8D407705C57EACD26 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ios_Audio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_ios_Audio.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1E206D97A7B91545FE0D27CD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_WASAPI.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_WASAPI.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1ED0FAAEFF9D4A6426E76E89 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_formats.h"; path = "../../../../modules/juce_audio_formats/juce_audio_formats.h"; sourceTree = "SOURCE_ROOT"; }; + 1EE2B1FB37648506A369D269 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GZIPDecompressorInputStream.cpp"; path = "../../../../modules/juce_core/zip/juce_GZIPDecompressorInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1F13AE4603A0990EF106C23D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Synthesiser.h"; path = "../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.h"; sourceTree = "SOURCE_ROOT"; }; + 1F2CA6A50920B655340552D6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioThumbnail.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnail.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1F3F5EE19B8CA78D9513AD94 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LuaCodeTokeniser.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_LuaCodeTokeniser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1F52A06FB3A565B54144FD8A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ConnectedChildProcess.cpp"; path = "../../../../modules/juce_events/interprocess/juce_ConnectedChildProcess.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1F999582FEA88311EC2EBF27 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterprocessConnectionServer.h"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnectionServer.h"; sourceTree = "SOURCE_ROOT"; }; + 1FEF9A01DC5486A9FA1CDF04 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioThumbnailCache.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnailCache.cpp"; sourceTree = "SOURCE_ROOT"; }; + 201270E933BAEFC855FF02FF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PathStrokeType.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_PathStrokeType.cpp"; sourceTree = "SOURCE_ROOT"; }; + 20193027F5E90E62F44027B0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Whirlpool.cpp"; path = "../../../../modules/juce_cryptography/hashing/juce_Whirlpool.cpp"; sourceTree = "SOURCE_ROOT"; }; + 208B3803558F7BECB0A0AA42 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterprocessConnection.h"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnection.h"; sourceTree = "SOURCE_ROOT"; }; + 210B445861AC2BD744D97F6D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF32.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF32.h"; sourceTree = "SOURCE_ROOT"; }; + 21463097F39306018F8C1FC9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FFT.h"; path = "../../../../modules/juce_audio_basics/effects/juce_FFT.h"; sourceTree = "SOURCE_ROOT"; }; + 21530C9C69B792CA80BE9398 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageConvolutionKernel.h"; path = "../../../../modules/juce_graphics/images/juce_ImageConvolutionKernel.h"; sourceTree = "SOURCE_ROOT"; }; + 21AC48EBF734FA48E43F62BE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorGraph.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorGraph.h"; sourceTree = "SOURCE_ROOT"; }; + 21DB75038D3D7619DD53E851 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorEditor.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorEditor.h"; sourceTree = "SOURCE_ROOT"; }; + 2253863C60C8AAB3DBA4B5F1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OutputStream.h"; path = "../../../../modules/juce_core/streams/juce_OutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 22A9BA274F3AD6FAF4331D11 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToggleButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToggleButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2368F4F33C1FA1F250C0606C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ImageComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2373A1F1357D75E328517966 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLFrameBuffer.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLFrameBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 23EC7FFD41859C9725D21B16 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_cryptography/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 23F3CBC829C0363C6C760957 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Base64.cpp"; path = "../../../../modules/juce_core/text/juce_Base64.cpp"; sourceTree = "SOURCE_ROOT"; }; + 24711D9742CB31F36F71A36E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GlowEffect.h"; path = "../../../../modules/juce_graphics/effects/juce_GlowEffect.h"; sourceTree = "SOURCE_ROOT"; }; + 24FD7D015B6C46BDFC98E2DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_SystemStats.mm"; path = "../../../../modules/juce_core/native/juce_mac_SystemStats.mm"; sourceTree = "SOURCE_ROOT"; }; + 251F11F4407E34F0F88AA1A2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_JackAudio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_JackAudio.cpp"; sourceTree = "SOURCE_ROOT"; }; + 25DEDA8C9F94A6C8DFC8E53E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SharedCanvas.h; path = ../../Source/SharedCanvas.h; sourceTree = "SOURCE_ROOT"; }; + 25F7E2E0BF7DF2E71648BFFE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Audio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_android_Audio.cpp"; sourceTree = "SOURCE_ROOT"; }; + 26407477D58D92220A6AA6E8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentAnimator.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentAnimator.cpp"; sourceTree = "SOURCE_ROOT"; }; + 264B51063F7AA584D23B426E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_VST3PluginFormat.cpp"; path = "../../../../modules/juce_audio_processors/format_types/juce_VST3PluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2669CC5C7AE7A916B5F5CF89 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentMovementWatcher.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentMovementWatcher.cpp"; sourceTree = "SOURCE_ROOT"; }; + 268EAE33422B585DF545499A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BlowFish.h"; path = "../../../../modules/juce_cryptography/encryption/juce_BlowFish.h"; sourceTree = "SOURCE_ROOT"; }; + 26B7A212D6DBD337A4F8AB7C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Matrix3D.h"; path = "../../../../modules/juce_opengl/geometry/juce_Matrix3D.h"; sourceTree = "SOURCE_ROOT"; }; + 26DDCC5B563483D67D645398 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioAppComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioAppComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 271E9E19BDC24378E6E73175 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + 276FBDD27027CDB3CDE7A1C3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageConvolutionKernel.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageConvolutionKernel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 27A192427FAA8C466F9D8EB2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FillType.h"; path = "../../../../modules/juce_graphics/colour/juce_FillType.h"; sourceTree = "SOURCE_ROOT"; }; + 27B46B69A1381640C0C14CF6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 27BC9669BDAA9F041FC21837 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileTreeComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 280CB58A46300BC229661DD6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 282B495AB94F47BD60C7E62F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 284179F9F53CAA88CAC51B44 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioVisualiserComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioVisualiserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 28861D0EC5C396B9FFCFF1B3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_EdgeTable.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_EdgeTable.cpp"; sourceTree = "SOURCE_ROOT"; }; + 289B6067D3B3FED5F7A64AB6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LowLevelGraphicsPostScriptRenderer.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2931409E5426C745CB3B6EE6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_ASCII.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_ASCII.h"; sourceTree = "SOURCE_ROOT"; }; + 2A10DFB3A22E8AABF4763F68 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TargetPlatform.h"; path = "../../../../modules/juce_core/system/juce_TargetPlatform.h"; sourceTree = "SOURCE_ROOT"; }; + 2A77EE2209FDF066386F30AD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeEditorComponent.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 2AA07C55625E1ADD22E9A4D5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSubsectionReader.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioSubsectionReader.h"; sourceTree = "SOURCE_ROOT"; }; + 2AAA2414F61ABBBF1C571901 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Socket.h"; path = "../../../../modules/juce_core/network/juce_Socket.h"; sourceTree = "SOURCE_ROOT"; }; + 2ABA2A324D752641AD2EA84D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GroupComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_GroupComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2ACEBF748334BD2B0CBAE26E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileLogger.h"; path = "../../../../modules/juce_core/logging/juce_FileLogger.h"; sourceTree = "SOURCE_ROOT"; }; + 2AF3F242C6AE6B81BEA684EE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableBorderComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableBorderComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2B14736595E3FFC604AFBD7C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Midi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2B27A56579939EAD06DD6061 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_linux_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2C3C1AC071BC4252A33CD5AC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorEditor.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2C8DB3B21316CF58A088AE4B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BooleanPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_BooleanPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 2D4E5BBC19F41BB8512E5E03 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Point.h"; path = "../../../../modules/juce_graphics/geometry/juce_Point.h"; sourceTree = "SOURCE_ROOT"; }; + 2DAA78D998963C52C0DC9AC5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FlacAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_FlacAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 2DAF843B2C0DA27E8741E080 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CachedComponentImage.h"; path = "../../../../modules/juce_gui_basics/components/juce_CachedComponentImage.h"; sourceTree = "SOURCE_ROOT"; }; + 2E03472E7A539A88DE0273A0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioIODevice.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODevice.h"; sourceTree = "SOURCE_ROOT"; }; + 2E0625B5D067CE55D4D7F087 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPESynthesiserBase.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPESynthesiserBase.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2E13A899F4E3C99054A3656F = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = System/Library/Frameworks/Accelerate.framework; sourceTree = SDKROOT; }; + 2E551D5175FA94E0FFBF08F4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextEditorKeyMapper.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_TextEditorKeyMapper.h"; sourceTree = "SOURCE_ROOT"; }; + 2F73502BA5E56A33469D93EC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WavAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_WavAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2FAFDCAFBC5054B61699B4F0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextLayout.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_TextLayout.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2FB4483EADD06BB5F6BFC110 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osx_ObjCHelpers.h"; path = "../../../../modules/juce_core/native/juce_osx_ObjCHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 3020CB57085A70221FC0042D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChildProcess.h"; path = "../../../../modules/juce_core/threads/juce_ChildProcess.h"; sourceTree = "SOURCE_ROOT"; }; + 306D2FC4CE156DB61D67C0E0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SpinLock.h"; path = "../../../../modules/juce_core/threads/juce_SpinLock.h"; sourceTree = "SOURCE_ROOT"; }; + 30B528362C388E5B51DF91D6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_InputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 30D2B2F180671715D1CFAD5E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NormalisableRange.h"; path = "../../../../modules/juce_core/maths/juce_NormalisableRange.h"; sourceTree = "SOURCE_ROOT"; }; + 3121B99F19132789145FDF58 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_DrawableButton.h"; sourceTree = "SOURCE_ROOT"; }; + 3153401B1C69B651D2AD37E5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ShapeButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ShapeButton.h"; sourceTree = "SOURCE_ROOT"; }; + 3180211C7FFE65342212F8DC = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_basics/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 3193E205AA627C635FF236E0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessor.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessor.cpp"; sourceTree = "SOURCE_ROOT"; }; + 32053E605C421DA9F9C406BA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseEvent.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseEvent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3234FA3655EA51C78D5E2D87 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3235BA8BC4542F69C66DF218 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AppleRemote.h"; path = "../../../../modules/juce_gui_extra/misc/juce_AppleRemote.h"; sourceTree = "SOURCE_ROOT"; }; + 32D795DD8B6BBBE5450AF17C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPEZoneLayout.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEZoneLayout.h"; sourceTree = "SOURCE_ROOT"; }; + 32E5AD1B0A329492EDB0D49C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Time.cpp"; path = "../../../../modules/juce_core/time/juce_Time.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3320CAFB079DBFED7E79D33E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageCache.h"; path = "../../../../modules/juce_graphics/images/juce_ImageCache.h"; sourceTree = "SOURCE_ROOT"; }; + 333E5AB794D5FC5A798A285C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ConnectedChildProcess.h"; path = "../../../../modules/juce_events/interprocess/juce_ConnectedChildProcess.h"; sourceTree = "SOURCE_ROOT"; }; + 334E1EA595F4B89AB02E1D2E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ResizableWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 3481CFA2138FAF27F8514E06 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Result.h"; path = "../../../../modules/juce_core/misc/juce_Result.h"; sourceTree = "SOURCE_ROOT"; }; + 34CAFBB1E014F17C6111C716 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PerformanceCounter.h"; path = "../../../../modules/juce_core/time/juce_PerformanceCounter.h"; sourceTree = "SOURCE_ROOT"; }; + 357921A7E994C213A2D768DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SliderPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_SliderPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 357FB6126252FB4FC7551A59 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryInputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_MemoryInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 35A404D8F4164D65C3E4DCC4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImagePreviewComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_ImagePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 35E9781C54B1729BDD73DEC9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Button.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_Button.h"; sourceTree = "SOURCE_ROOT"; }; + 3601DA62C81D9C4FEB9CAA23 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LeakedObjectDetector.h"; path = "../../../../modules/juce_core/memory/juce_LeakedObjectDetector.h"; sourceTree = "SOURCE_ROOT"; }; + 36DB2BF91B5D3D8462CB4AD5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FillType.cpp"; path = "../../../../modules/juce_graphics/colour/juce_FillType.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3737EA20E16E2ACBFB968CD4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertySet.h"; path = "../../../../modules/juce_core/containers/juce_PropertySet.h"; sourceTree = "SOURCE_ROOT"; }; + 379F77D23BFAE3795282CEB3 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; + 382C1DB36E41E2DEB77B11ED = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AiffAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_AiffAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 382D4767A626A3D30826EE1B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativePointPath.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePointPath.h"; sourceTree = "SOURCE_ROOT"; }; + 3913A6C3147F55D7390405B5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemAudioVolume.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_SystemAudioVolume.h"; sourceTree = "SOURCE_ROOT"; }; + 3957E1F6F24F89D6DCB8829E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WeakReference.h"; path = "../../../../modules/juce_core/memory/juce_WeakReference.h"; sourceTree = "SOURCE_ROOT"; }; + 39BADA2042495195394900F3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_basics.mm"; path = "../../../../modules/juce_audio_basics/juce_audio_basics.mm"; sourceTree = "SOURCE_ROOT"; }; + 39E116DC12FD26E3DB3F4DFA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GIFLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_GIFLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 39F7F18157821A256E23B868 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableText.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableText.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3A132DEDF59503D8AEE2E1F8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MessageListener.h"; path = "../../../../modules/juce_events/messages/juce_MessageListener.h"; sourceTree = "SOURCE_ROOT"; }; + 3AE3D7A50A8D7F598DB6F0AE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XMLCodeTokeniser.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_XMLCodeTokeniser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3B92F7E81BAB71A0460668E6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageFileFormat.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageFileFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3BAA4C5AFD5E6AE8B7447E17 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_events.h"; path = "../../../../modules/juce_events/juce_events.h"; sourceTree = "SOURCE_ROOT"; }; + 3BEA5E0CD39AABEAB92B425E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginDirectoryScanner.h"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginDirectoryScanner.h"; sourceTree = "SOURCE_ROOT"; }; + 3C02F146BFD3D2C8B0B3D8B8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_gui_basics.mm"; path = "../../../../modules/juce_gui_basics/juce_gui_basics.mm"; sourceTree = "SOURCE_ROOT"; }; + 3CFD6B00875759345575ECFD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ArrowButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ArrowButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3D7BB39A9FCE43D8EAF6B6CD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedValueSet.h"; path = "../../../../modules/juce_core/containers/juce_NamedValueSet.h"; sourceTree = "SOURCE_ROOT"; }; + 3DD9BA50041192D1F28D87CC = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AsyncUpdater.h"; path = "../../../../modules/juce_events/broadcasters/juce_AsyncUpdater.h"; sourceTree = "SOURCE_ROOT"; }; + 3E313B4096468DD5EE551616 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDataConverters.h"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioDataConverters.h"; sourceTree = "SOURCE_ROOT"; }; + 3E69925DB6558BBAEE5EB41B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WebBrowserComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_WebBrowserComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 3EBDD668B2AAF5F5159D68F2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ListBox.h"; sourceTree = "SOURCE_ROOT"; }; + 3F02521692ADDB7FFD0453AE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WindowsRegistry.h"; path = "../../../../modules/juce_core/misc/juce_WindowsRegistry.h"; sourceTree = "SOURCE_ROOT"; }; + 3F05E519F0B0931CE0347455 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadower.cpp"; path = "../../../../modules/juce_gui_basics/misc/juce_DropShadower.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3F0618824A11684059926E73 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DragAndDropTarget.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 3F6BE2A8CAF1C23380D884F5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioUnitPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 3F7FA0D8E610BE1172D0CC6E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Files.mm"; path = "../../../../modules/juce_core/native/juce_mac_Files.mm"; sourceTree = "SOURCE_ROOT"; }; + 3FCD20ECBA1032D55D90DAF9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentBoundsConstrainer.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBoundsConstrainer.h"; sourceTree = "SOURCE_ROOT"; }; + 3FD16FE28FD9ABF22F0FF744 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DialogWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_DialogWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 4006D8A53AC91D81816BF576 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableRectangle.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableRectangle.cpp"; sourceTree = "SOURCE_ROOT"; }; + 40178653E67E3C6585653D38 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableImage.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableImage.cpp"; sourceTree = "SOURCE_ROOT"; }; + 414E7CA5C5AB18AE918F414D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGL_osx.h"; path = "../../../../modules/juce_opengl/native/juce_OpenGL_osx.h"; sourceTree = "SOURCE_ROOT"; }; + 42203A96B0F67E68EDB0939E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GroupComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_GroupComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 42248B6AB06E8D01893DBDB8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SHA256.h"; path = "../../../../modules/juce_cryptography/hashing/juce_SHA256.h"; sourceTree = "SOURCE_ROOT"; }; + 4292602AC091358A3439FE9F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BorderSize.h"; path = "../../../../modules/juce_graphics/geometry/juce_BorderSize.h"; sourceTree = "SOURCE_ROOT"; }; + 429925ABEF514DEDE33BF925 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Desktop.h"; path = "../../../../modules/juce_gui_basics/components/juce_Desktop.h"; sourceTree = "SOURCE_ROOT"; }; + 42AA82D963C53D81EC596A0A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Network.mm"; path = "../../../../modules/juce_core/native/juce_mac_Network.mm"; sourceTree = "SOURCE_ROOT"; }; + 42DA53757E1591ED0395C94E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ByteOrder.h"; path = "../../../../modules/juce_core/memory/juce_ByteOrder.h"; sourceTree = "SOURCE_ROOT"; }; + 43BE50DA24ABCAF9183FC535 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Javascript.cpp"; path = "../../../../modules/juce_core/javascript/juce_Javascript.cpp"; sourceTree = "SOURCE_ROOT"; }; + 43BEA6B7451F512AC9B1ED38 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Desktop.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_Desktop.cpp"; sourceTree = "SOURCE_ROOT"; }; + 44301EEC47F5688D9BC0582E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_devices.mm"; path = "../../../../modules/juce_audio_devices/juce_audio_devices.mm"; sourceTree = "SOURCE_ROOT"; }; + 445C1F432C6144BD2F6D3327 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageManager.cpp"; path = "../../../../modules/juce_events/messages/juce_MessageManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 448838BE6E937D450A3C84CE = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMIDI.framework; path = System/Library/Frameworks/CoreMIDI.framework; sourceTree = SDKROOT; }; + 4533B1E6786C588EEB5F17F1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BooleanPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_BooleanPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 46CE1F3B0AB174ABD1B4E2AB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PositionableAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_PositionableAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 46D4E162A4C937BBFE26584A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XMLCodeTokeniser.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_XMLCodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; + 472EB91AAAB000217017E8EF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourGradient.cpp"; path = "../../../../modules/juce_graphics/colour/juce_ColourGradient.cpp"; sourceTree = "SOURCE_ROOT"; }; + 47C8219AACA73B2EBE302A35 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPlayHead.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioPlayHead.h"; sourceTree = "SOURCE_ROOT"; }; + 482D7E87F00C2888C2B8FC9E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringArray.cpp"; path = "../../../../modules/juce_core/text/juce_StringArray.cpp"; sourceTree = "SOURCE_ROOT"; }; + 48322022C7AD99C881909D7C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LagrangeInterpolator.h"; path = "../../../../modules/juce_audio_basics/effects/juce_LagrangeInterpolator.h"; sourceTree = "SOURCE_ROOT"; }; + 487F7DFCFB0CF15BDFEBD24E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginDescription.h"; path = "../../../../modules/juce_audio_processors/processors/juce_PluginDescription.h"; sourceTree = "SOURCE_ROOT"; }; + 489251CA8BE0CA79BA247455 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryContentsDisplayComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsDisplayComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 489FD44544F03774CBFA04E5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_win32_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + 48A798B2097EF59A8A53F1F5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LookAndFeel_V2.h"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V2.h"; sourceTree = "SOURCE_ROOT"; }; + 48EBF61EDF71322807F5AF4E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeRectangle.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeRectangle.h"; sourceTree = "SOURCE_ROOT"; }; + 49EEE3FAA41505E20A1587BB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_UIViewComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_ios_UIViewComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + 4A0C286E6CB8D31A8C048A88 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ReverbAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ReverbAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4A167D0C24B56DA19E2B0722 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PreferencesPanel.h"; path = "../../../../modules/juce_gui_extra/misc/juce_PreferencesPanel.h"; sourceTree = "SOURCE_ROOT"; }; + 4A21D36388A0B6D9543A244D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DocumentWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_DocumentWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4A3A8B6069E903B8F0F62DDF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorListener.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorListener.h"; sourceTree = "SOURCE_ROOT"; }; + 4AA0B96439AA013BFDFED0FF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KnownPluginList.h"; path = "../../../../modules/juce_audio_processors/scanning/juce_KnownPluginList.h"; sourceTree = "SOURCE_ROOT"; }; + 4AA5C3A1B7202460820F4017 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Strings.mm"; path = "../../../../modules/juce_core/native/juce_mac_Strings.mm"; sourceTree = "SOURCE_ROOT"; }; + 4AB7557F71EB918F70B15F49 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileListComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileListComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 4B2D5FBEF56C3D584E65D9AD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_NamedPipe.cpp"; path = "../../../../modules/juce_core/network/juce_NamedPipe.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4B73A2599617EEF450ACABAC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImagePreviewComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_ImagePreviewComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4BE9A59D703E4CA4661252C1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ContainerDeletePolicy.h"; path = "../../../../modules/juce_core/memory/juce_ContainerDeletePolicy.h"; sourceTree = "SOURCE_ROOT"; }; + 4C0B3826ABACE371F8681E61 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RSAKey.h"; path = "../../../../modules/juce_cryptography/encryption/juce_RSAKey.h"; sourceTree = "SOURCE_ROOT"; }; + 4C816FF16C50AA5C87C8F7D3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_File.cpp"; path = "../../../../modules/juce_core/files/juce_File.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4D1DB6D77B6F3DE7A569780B = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudioKit.framework; path = System/Library/Frameworks/CoreAudioKit.framework; sourceTree = SDKROOT; }; + 4D3007B3F8AECBDB658F7259 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ValueTreeSynchroniser.cpp"; path = "../../../../modules/juce_data_structures/values/juce_ValueTreeSynchroniser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4D5112F69E06189A9318A69F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativePoint.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePoint.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4D823926C18ED8ABD95035DB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_TextPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4E1AFB1AF80B103D7392B44A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_AudioCDReader.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4E1C2B9C5692A96700C1A898 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ActionBroadcaster.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_ActionBroadcaster.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4E451FB3A0D657682324CEED = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Random.h"; path = "../../../../modules/juce_core/maths/juce_Random.h"; sourceTree = "SOURCE_ROOT"; }; + 4E8939ACD0CB224ABD3B3C00 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Drawable.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_Drawable.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4F742E04B5AD194395A593C0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationProperties.cpp"; path = "../../../../modules/juce_data_structures/app_properties/juce_ApplicationProperties.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4FEBD56CB96D3AE8E963098C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AudioCDBurner.mm"; path = "../../../../modules/juce_audio_devices/native/juce_mac_AudioCDBurner.mm"; sourceTree = "SOURCE_ROOT"; }; + 4FF648D72D6F1A78956CDA1B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Demos.h; path = ../../Source/Demos.h; sourceTree = "SOURCE_ROOT"; }; + 5016A40C1850BBD55197D30E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MountedVolumeListChangeDetector.h"; path = "../../../../modules/juce_events/messages/juce_MountedVolumeListChangeDetector.h"; sourceTree = "SOURCE_ROOT"; }; + 50385CBC88D67EF57CBAF9F6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlDocument.cpp"; path = "../../../../modules/juce_core/xml/juce_XmlDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + 505B41AE1B6E2B7FF4B0D859 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Sampler.cpp"; path = "../../../../modules/juce_audio_formats/sampler/juce_Sampler.cpp"; sourceTree = "SOURCE_ROOT"; }; + 50B9979133759179FAFFA25F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLGraphicsContext.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + 50E3DBC3F2D136A9A59ED1D8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioIODevice.cpp"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODevice.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5127ACB1400962FB70BF6D07 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandTarget.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 51A7CB5736B53C5EEC163116 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDeviceSelectorComponent.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioDeviceSelectorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 51D8A242315E93AECE0D1B0E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SparseSet.h"; path = "../../../../modules/juce_core/containers/juce_SparseSet.h"; sourceTree = "SOURCE_ROOT"; }; + 51F0F2EB22A60569E24FB86E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPENote.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPENote.cpp"; sourceTree = "SOURCE_ROOT"; }; + 51FFA102D25322925C454ACD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Midi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_android_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; + 52058B3A331BFA856932EEED = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Range.h"; path = "../../../../modules/juce_core/maths/juce_Range.h"; sourceTree = "SOURCE_ROOT"; }; + 53AB900649E4156D953DB1CA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_cryptography.h"; path = "../../../../modules/juce_cryptography/juce_cryptography.h"; sourceTree = "SOURCE_ROOT"; }; + 53F664A2A3FE1983E183A431 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyPressMappingSet.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_KeyPressMappingSet.cpp"; sourceTree = "SOURCE_ROOT"; }; + 54358D8A9A8DE6AF4F781E8B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Registry.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Registry.cpp"; sourceTree = "SOURCE_ROOT"; }; + 545C5A5F29523968A387FD91 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VST3PluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_VST3PluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 546BB53FC47D83869F8DDCE9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentBuilder.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBuilder.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5484B58D02279CE228079C12 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CoreAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_CoreAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 54E5C8F4F9BF6B8228482AD3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponentPeer.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm"; sourceTree = "SOURCE_ROOT"; }; + 55037EF642A280DAC85CE34D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedLock.h"; sourceTree = "SOURCE_ROOT"; }; + 556B39875D557171B3E0D68C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_opengl.mm"; path = "../../../../modules/juce_opengl/juce_opengl.mm"; sourceTree = "SOURCE_ROOT"; }; + 55F8FDB2CE9EA9B6F6F750B1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MissingGLDefinitions.h"; path = "../../../../modules/juce_opengl/native/juce_MissingGLDefinitions.h"; sourceTree = "SOURCE_ROOT"; }; + 5614CF8ACD28587D8E9FC249 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectSound.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_DirectSound.cpp"; sourceTree = "SOURCE_ROOT"; }; + 561DC7B5329A4719A85FB37E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseInputSource.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInputSource.h"; sourceTree = "SOURCE_ROOT"; }; + 56D6FF1634AE7B4B4B6AC323 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageListener.cpp"; path = "../../../../modules/juce_events/messages/juce_MessageListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + 56E7EE3C43947842BB8BDC1A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleComponent.cpp"; path = "../../../../modules/juce_gui_basics/misc/juce_BubbleComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 56FA5F3ABA3B0278767C107B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextInputTarget.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_TextInputTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 57134B5B764CAAAEA07C56CE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChoicePropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_ChoicePropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 579117EBA45C1878DC55FF65 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF8.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF8.h"; sourceTree = "SOURCE_ROOT"; }; + 5794F3D9DC292B1603244735 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_graphics/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 57C8BBE1EFA839C458DEF2F6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Drawable.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_Drawable.h"; sourceTree = "SOURCE_ROOT"; }; + 5864A3A4338CCCB6524CE499 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WindowsMediaAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_WindowsMediaAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 58B4452DE10C4ABF8D8DC7EB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ConcertinaPanel.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ConcertinaPanel.h"; sourceTree = "SOURCE_ROOT"; }; + 58B5DEFABBF903630496C479 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AnimatedAppComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_AnimatedAppComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 592C559B3CB1579907BC6452 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LassoComponent.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_LassoComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 5A1C17DCA88F1D02ED5F401F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MarkerList.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_MarkerList.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5A26430C3B39E428B483F11D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActionListener.h"; path = "../../../../modules/juce_events/broadcasters/juce_ActionListener.h"; sourceTree = "SOURCE_ROOT"; }; + 5A2B63BC2433F17DB96CC411 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageCache.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageCache.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5A99F85A02CACE2773FAF4AA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentDragger.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_ComponentDragger.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5AAF6FD01A8ACE63E3FAEA56 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_core.h"; path = "../../../../modules/juce_core/juce_core.h"; sourceTree = "SOURCE_ROOT"; }; + 5B59DE0C6545CCC3FA26750E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AttributedString.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_AttributedString.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5B8CE8EC0CEDF800AD5B71E1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VSTPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_VSTPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 5BA3B4D0018FA0D5C976CA3E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileTreeComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 5BDA528B96063067AFD59CBB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Application.cpp"; path = "../../../../modules/juce_gui_basics/application/juce_Application.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5BF77AE97FE5C121B30358AF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemTrayIconComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_SystemTrayIconComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 5C2B9D77C8CEB8A1F6C121E1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5C5FBFC0D457D62BDC602F17 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TemporaryFile.cpp"; path = "../../../../modules/juce_core/files/juce_TemporaryFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5C82D0E8AB39B155A987109A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioIODeviceType.cpp"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODeviceType.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5C99C4705F0D6CE613DE7711 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCReceiver.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCReceiver.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5C9AF08626A44F2AF6783A53 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_TextButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5CCB6DBE5D69271176CD9603 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_posix_NamedPipe.cpp"; path = "../../../../modules/juce_core/native/juce_posix_NamedPipe.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5D17004F2CE0F2DBFDE79EA4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiOutput.h"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiOutput.h"; sourceTree = "SOURCE_ROOT"; }; + 5D2856B19DC13C57D70E42DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatManager.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5D9CB6E9C215ED15E30B685C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryMappedFile.h"; path = "../../../../modules/juce_core/files/juce_MemoryMappedFile.h"; sourceTree = "SOURCE_ROOT"; }; + 5DBA889C8116242666F3C93B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToggleButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToggleButton.h"; sourceTree = "SOURCE_ROOT"; }; + 5DC79394D56549821815B376 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemStats.h"; path = "../../../../modules/juce_core/system/juce_SystemStats.h"; sourceTree = "SOURCE_ROOT"; }; + 5E043C5F2F280FC934592EDD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableListBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5ED809701F235D958635DACA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorValueTreeState.cpp"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioProcessorValueTreeState.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5EEA4C0CF28336697C027202 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioThumbnailBase.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnailBase.h"; sourceTree = "SOURCE_ROOT"; }; + 5F43B58D079ECA063DEFCD0E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatReader.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReader.h"; sourceTree = "SOURCE_ROOT"; }; + 5F6DEAB3DA5EF6B9F437C3CF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPEValue.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEValue.h"; sourceTree = "SOURCE_ROOT"; }; + 600D84E21A1728A803F7BD26 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertySet.cpp"; path = "../../../../modules/juce_core/containers/juce_PropertySet.cpp"; sourceTree = "SOURCE_ROOT"; }; + 60707845CE9EFAADCB5BB90F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLTexture.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLTexture.cpp"; sourceTree = "SOURCE_ROOT"; }; + 607E088C34B7AB707A5ECE4C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OwnedArray.h"; path = "../../../../modules/juce_core/containers/juce_OwnedArray.h"; sourceTree = "SOURCE_ROOT"; }; + 60D9E4052C3FFFA026BB35C6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UndoManager.cpp"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 60DC6B904E0A0ED7D5BACBD3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InputSource.h"; path = "../../../../modules/juce_core/streams/juce_InputSource.h"; sourceTree = "SOURCE_ROOT"; }; + 60DD038BF3685FF524C3A720 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatReaderSource.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReaderSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 60E6823DF3335C4F4A2B4A09 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_NSViewComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + 6110B87158ED828E5F9C8FA4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AnimatedAppComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_AnimatedAppComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 613925F9A0F758ED88BBB3AB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGL_android.h"; path = "../../../../modules/juce_opengl/native/juce_OpenGL_android.h"; sourceTree = "SOURCE_ROOT"; }; + 61D67AE4149D2EF04BFC2F15 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ElementComparator.h"; path = "../../../../modules/juce_core/containers/juce_ElementComparator.h"; sourceTree = "SOURCE_ROOT"; }; + 61F3AAB84249F782A56E88A2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_DrawableButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 61F74754A7B5F0BD930A51DD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Colour.cpp"; path = "../../../../modules/juce_graphics/colour/juce_Colour.cpp"; sourceTree = "SOURCE_ROOT"; }; + 621893AE2A99F8D4331194AD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_IPAddress.cpp"; path = "../../../../modules/juce_core/network/juce_IPAddress.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6256BA6104CE254172D02804 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedWriteLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedWriteLock.h"; sourceTree = "SOURCE_ROOT"; }; + 6367B5EA6602CD73063A481A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Primes.h"; path = "../../../../modules/juce_cryptography/encryption/juce_Primes.h"; sourceTree = "SOURCE_ROOT"; }; + 6386ADE8A90ABD189AB72936 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLRenderer.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLRenderer.h"; sourceTree = "SOURCE_ROOT"; }; + 63DB40AFD30CEFB03779AB79 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToolbarButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 63E2478C4D365C034FAEF66B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleMessageComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_BubbleMessageComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 64223866AD9D3D69464C198B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Thread.h"; path = "../../../../modules/juce_core/threads/juce_Thread.h"; sourceTree = "SOURCE_ROOT"; }; + 648610AB6A110B1ACD64CDAE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PathIterator.h"; path = "../../../../modules/juce_graphics/geometry/juce_PathIterator.h"; sourceTree = "SOURCE_ROOT"; }; + 648E0A0D55BE1D012C1D89B1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeCoordinatePositioner.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinatePositioner.h"; sourceTree = "SOURCE_ROOT"; }; + 649BBA6C8D29853266E8D2A2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiKeyboardState.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiKeyboardState.h"; sourceTree = "SOURCE_ROOT"; }; + 65746338AF0FDE118A3D02C1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_BufferingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 665FF99D0D1BF3755FE7B803 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToolbarButton.h"; sourceTree = "SOURCE_ROOT"; }; + 666F7A0F487C9974AF12E8A9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioTransportSource.h"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioTransportSource.h"; sourceTree = "SOURCE_ROOT"; }; + 66E12916E12BBC042F715891 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AiffAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_AiffAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 66EA0A2E6DCB92EB7CE24516 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActiveXControlComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_ActiveXControlComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 672780D824A4CAD951DBB29B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RectangleList.h"; path = "../../../../modules/juce_graphics/geometry/juce_RectangleList.h"; sourceTree = "SOURCE_ROOT"; }; + 67321193997802F731C9F3C8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Slider.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Slider.cpp"; sourceTree = "SOURCE_ROOT"; }; + 67701BB0717F9CBA6772BC42 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileBasedDocument.cpp"; path = "../../../../modules/juce_gui_extra/documents/juce_FileBasedDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + 67706504E1E1E19B61E90903 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 678B3B27F695152D396C09A3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Viewport.h"; path = "../../../../modules/juce_gui_basics/layout/juce_Viewport.h"; sourceTree = "SOURCE_ROOT"; }; + 6799B056504F9F017998B9E2 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; }; + 6821655BB8883B9A421666C3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InterprocessConnectionServer.cpp"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnectionServer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6894C4ABEF5203014A0B665F = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_utils/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 689962387B441B1770B53D6C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_mac_SystemTrayIcon.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_mac_SystemTrayIcon.cpp"; sourceTree = "SOURCE_ROOT"; }; + 69995C9ACA8B57DDB8E49495 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ColourSelector.h"; path = "../../../../modules/juce_gui_extra/misc/juce_ColourSelector.h"; sourceTree = "SOURCE_ROOT"; }; + 6B23639B2FD8C8FCFC241070 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BigInteger.h"; path = "../../../../modules/juce_core/maths/juce_BigInteger.h"; sourceTree = "SOURCE_ROOT"; }; + 6B59A53C3FB3B4462A5E10D0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeCoordinatePositioner.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinatePositioner.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6B7EA4C617C2C129210C7F76 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileSearchPathListComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6BA526E7009CAA47F22B2FC3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseInactivityDetector.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInactivityDetector.h"; sourceTree = "SOURCE_ROOT"; }; + 6BB634F1841C4BCE4775FF8D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LocalisedStrings.cpp"; path = "../../../../modules/juce_core/text/juce_LocalisedStrings.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6BE69871BE4A865ABF84BC7E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadWithProgressWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 6C42AAE33B1F86E496AA352C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextDragAndDropTarget.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_TextDragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 6D584871C4325DBC6FA689A7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SplashScreen.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_SplashScreen.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6D6C2ADFA12CB2A3AA90E10D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLImage.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLImage.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6D8A6213F2A881CAD1DE5A7E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CoreAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_CoreAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 6DAF8D36A60A6F606DCDBADB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SharedResourcePointer.h"; path = "../../../../modules/juce_core/memory/juce_SharedResourcePointer.h"; sourceTree = "SOURCE_ROOT"; }; + 6E01440F1FACE2977203A70B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TabbedButtonBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedButtonBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6E27EBF864367EBA8B44DFA9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginFormat.cpp"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6E41B744374D33094F868FF3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileInputStream.cpp"; path = "../../../../modules/juce_core/files/juce_FileInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6EA97857D017530AE58ECA66 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Rectangle.h"; path = "../../../../modules/juce_graphics/geometry/juce_Rectangle.h"; sourceTree = "SOURCE_ROOT"; }; + 6ED2FF75E5F98253AA1C287F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TopLevelWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_TopLevelWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6EF18D083B3FAC255D719DA6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Files.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6F3E59877038096FDA5B28DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HighResolutionTimer.h"; path = "../../../../modules/juce_core/threads/juce_HighResolutionTimer.h"; sourceTree = "SOURCE_ROOT"; }; + 6F4CD56079CABCB8F4FBA0D2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CarbonViewWrapperComponent.h"; path = "../../../../modules/juce_gui_extra/native/juce_mac_CarbonViewWrapperComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 6F9461C9816AF7B764F73FC9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseEvent.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseEvent.h"; sourceTree = "SOURCE_ROOT"; }; + 6FDDB32B35EF2BC6C4E353C0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioAppComponent.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioAppComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 70736236C82A9ACE63DB3D3D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Line.h"; path = "../../../../modules/juce_graphics/geometry/juce_Line.h"; sourceTree = "SOURCE_ROOT"; }; + 709EB992B73BB302F0D9FC8F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PathIterator.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_PathIterator.cpp"; sourceTree = "SOURCE_ROOT"; }; + 70F1CAF3C4C561DD81E6AFC1 = {isa = PBXFileReference; lastKnownFileType = file.icns; name = Icon.icns; path = Icon.icns; sourceTree = "SOURCE_ROOT"; }; + 71274DD47D3EFC3EB83ED73C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_osc.cpp"; path = "../../../../modules/juce_osc/juce_osc.cpp"; sourceTree = "SOURCE_ROOT"; }; + 71359267D6C329BC132B88CF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLHelpers.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLHelpers.cpp"; sourceTree = "SOURCE_ROOT"; }; + 71894D722D549F75275D3D53 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Midi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; + 724D1A80CA91E8ADB78287BE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeTime.h"; path = "../../../../modules/juce_core/time/juce_RelativeTime.h"; sourceTree = "SOURCE_ROOT"; }; + 72887C393A61739FD6C803A3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLShaderProgram.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLShaderProgram.h"; sourceTree = "SOURCE_ROOT"; }; + 729B6245E3A797878E3F4ADC = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LinkedListPointer.h"; path = "../../../../modules/juce_core/containers/juce_LinkedListPointer.h"; sourceTree = "SOURCE_ROOT"; }; + 729F27B2D82EF129C024F3F6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResamplingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ResamplingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 72F927799B30E12B01E9C00A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatReader.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 72FD8AC04D2B0BEE1A5E2596 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiRPN.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiRPN.h"; sourceTree = "SOURCE_ROOT"; }; + 7319C1AFC4D882F649320DDB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsContext.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + 7414371325D7C8E4ECB043D0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SortedSet.h"; path = "../../../../modules/juce_core/containers/juce_SortedSet.h"; sourceTree = "SOURCE_ROOT"; }; + 74711D7544168CCAC4969A07 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = BinaryData.cpp; path = ../../JuceLibraryCode/BinaryData.cpp; sourceTree = "SOURCE_ROOT"; }; + 74A4500C4809EFB73D5FA36C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_SystemTrayIcon.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_linux_SystemTrayIcon.cpp"; sourceTree = "SOURCE_ROOT"; }; + 74C15BFC6E036DE767574778 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TabbedButtonBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedButtonBar.h"; sourceTree = "SOURCE_ROOT"; }; + 74D4B2EEC36940893BF7AC25 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TemporaryFile.h"; path = "../../../../modules/juce_core/files/juce_TemporaryFile.h"; sourceTree = "SOURCE_ROOT"; }; + 74E60A8C1056FF1D64053A62 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringArray.h"; path = "../../../../modules/juce_core/text/juce_StringArray.h"; sourceTree = "SOURCE_ROOT"; }; + 75636F75113CD1ABF8B01F08 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableObjectResizer.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableObjectResizer.h"; sourceTree = "SOURCE_ROOT"; }; + 758A85BA2A15681252AAC852 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectWriteTypeLayout.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_DirectWriteTypeLayout.cpp"; sourceTree = "SOURCE_ROOT"; }; + 75CBB4C7E9CBA8B36FA40FB8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPath.h"; path = "../../../../modules/juce_core/files/juce_FileSearchPath.h"; sourceTree = "SOURCE_ROOT"; }; + 77234EEA6FC39172D3B4B455 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableText.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableText.h"; sourceTree = "SOURCE_ROOT"; }; + 777AA662407B7A91748C92A8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GZIPCompressorOutputStream.cpp"; path = "../../../../modules/juce_core/zip/juce_GZIPCompressorOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 77C0AC21C1028911123844FC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Main.cpp; path = ../../Source/Main.cpp; sourceTree = "SOURCE_ROOT"; }; + 783AF1428118CFF4B105487B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GraphicsContext.h"; path = "../../../../modules/juce_graphics/contexts/juce_GraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + 78EB35E34BA8673695F92D6B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FilenameComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilenameComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 795FF599087653F77C7E98D2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_UIViewComponentPeer.mm"; path = "../../../../modules/juce_gui_basics/native/juce_ios_UIViewComponentPeer.mm"; sourceTree = "SOURCE_ROOT"; }; + 79C9759DA5A25C1D53AC2E93 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_EdgeTable.h"; path = "../../../../modules/juce_graphics/geometry/juce_EdgeTable.h"; sourceTree = "SOURCE_ROOT"; }; + 7A1E8F59B14140851D40DF29 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiFile.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7A41A9C37A8BA7EFB6D1F518 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VST3Headers.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_VST3Headers.h"; sourceTree = "SOURCE_ROOT"; }; + 7A55E53EC2B5BC85F365A342 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardState.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiKeyboardState.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7B0648C17B0C62706424B080 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_BluetoothMidiDevicePairingDialogue.mm"; path = "../../../../modules/juce_audio_utils/native/juce_ios_BluetoothMidiDevicePairingDialogue.mm"; sourceTree = "SOURCE_ROOT"; }; + 7B441C4B6CF9473676EA3610 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PopupMenu.h"; path = "../../../../modules/juce_gui_basics/menus/juce_PopupMenu.h"; sourceTree = "SOURCE_ROOT"; }; + 7BF4C9B621AF133163D15675 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBasedDocument.h"; path = "../../../../modules/juce_gui_extra/documents/juce_FileBasedDocument.h"; sourceTree = "SOURCE_ROOT"; }; + 7C4111F98C8023097C14C138 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UndoableAction.h"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoableAction.h"; sourceTree = "SOURCE_ROOT"; }; + 7CDAE6FBB85B787E8FA15B0C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NewLine.h"; path = "../../../../modules/juce_core/text/juce_NewLine.h"; sourceTree = "SOURCE_ROOT"; }; + 7CE6320BC8094DB37E65721C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OggVorbisAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_OggVorbisAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 7D5322C5D58C267F5FC815B1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GraphicsContext.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7E79FB8A1C88684D9961874F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileLogger.cpp"; path = "../../../../modules/juce_core/logging/juce_FileLogger.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7E7E7B2174155F2FA49E3E56 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_ComSmartPtr.h"; path = "../../../../modules/juce_core/native/juce_win32_ComSmartPtr.h"; sourceTree = "SOURCE_ROOT"; }; + 7E9DE536E504F1EDDF5532C3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioCDReader.cpp"; path = "../../../../modules/juce_audio_devices/audio_cd/juce_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7F23EFF727A93D53C8654687 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_BluetoothMidiDevicePairingDialogue.cpp"; path = "../../../../modules/juce_audio_utils/native/juce_linux_BluetoothMidiDevicePairingDialogue.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7F64D580AA191FBC2A74E943 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSourcePlayer.cpp"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioSourcePlayer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7F9E3A2D24D587405B3B5E76 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPEZone.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEZone.h"; sourceTree = "SOURCE_ROOT"; }; + 7FC7D527EA3B088288F8DA36 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_gui_basics.h"; path = "../../../../modules/juce_gui_basics/juce_gui_basics.h"; sourceTree = "SOURCE_ROOT"; }; + 7FDAFC6129A0497C57648A8C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_curl_Network.cpp"; path = "../../../../modules/juce_core/native/juce_curl_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8034DEB0DE55C62EE0B5D2FB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallOutBox.h"; path = "../../../../modules/juce_gui_basics/windows/juce_CallOutBox.h"; sourceTree = "SOURCE_ROOT"; }; + 806774C77EBD99266FE68583 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferingAudioFormatReader.h"; path = "../../../../modules/juce_audio_formats/format/juce_BufferingAudioFormatReader.h"; sourceTree = "SOURCE_ROOT"; }; + 80B9B913DD55B0BD215AEC86 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ButtonPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 80D63910D7196D7DF849A239 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChangeListener.h"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeListener.h"; sourceTree = "SOURCE_ROOT"; }; + 814EF15FC580DB2A5F426071 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_processors.mm"; path = "../../../../modules/juce_audio_processors/juce_audio_processors.mm"; sourceTree = "SOURCE_ROOT"; }; + 81E803F2EB73BF09CB0CF2DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryBlock.cpp"; path = "../../../../modules/juce_core/memory/juce_MemoryBlock.cpp"; sourceTree = "SOURCE_ROOT"; }; + 82073AD531BE1009AE92477D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_android_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + 82A654CA5A700A19A9A673BC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlyphArrangement.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"; sourceTree = "SOURCE_ROOT"; }; + 82B25B30D756F75BDFDBBCD0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ValueTreeSynchroniser.h"; path = "../../../../modules/juce_data_structures/values/juce_ValueTreeSynchroniser.h"; sourceTree = "SOURCE_ROOT"; }; + 82B807E750DB47D6FA6AA5F8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeRectangle.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeRectangle.cpp"; sourceTree = "SOURCE_ROOT"; }; + 82CF205CD196BF77B68EA75A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ImageButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 834384DBC61E38E789FD9B7D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessage.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessage.h"; sourceTree = "SOURCE_ROOT"; }; + 837FC46135954E8144A996FD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Uuid.h"; path = "../../../../modules/juce_core/misc/juce_Uuid.h"; sourceTree = "SOURCE_ROOT"; }; + 83E38E7D0548FCDF7B150F22 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiDocumentPanel.h"; path = "../../../../modules/juce_gui_basics/layout/juce_MultiDocumentPanel.h"; sourceTree = "SOURCE_ROOT"; }; + 84BD8495CE3D747852CB0463 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_AudioCDReader.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 84DFB13BE79A86FC987A63C7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CodeDocument.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + 84E76068048CB52123545F7B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Primes.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_Primes.cpp"; sourceTree = "SOURCE_ROOT"; }; + 858198BBDF9BB692E58AB16D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DynamicObject.h"; path = "../../../../modules/juce_core/containers/juce_DynamicObject.h"; sourceTree = "SOURCE_ROOT"; }; + 85D61362BF185DA51B00E00E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageEffectFilter.h"; path = "../../../../modules/juce_graphics/effects/juce_ImageEffectFilter.h"; sourceTree = "SOURCE_ROOT"; }; + 861F5C579BDAA33718FFE9CA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SubregionStream.cpp"; path = "../../../../modules/juce_core/streams/juce_SubregionStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8621C4BB5D591743A1B86697 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_CoreGraphicsContext.mm"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsContext.mm"; sourceTree = "SOURCE_ROOT"; }; + 862A547990420303EBE1C849 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Process.h"; path = "../../../../modules/juce_core/threads/juce_Process.h"; sourceTree = "SOURCE_ROOT"; }; + 864DAFF59D56AC67F7BE6F77 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiDocumentPanel.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_MultiDocumentPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8680FB438DEC3B3994B6CB9D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Misc.cpp"; path = "../../../../modules/juce_core/native/juce_android_Misc.cpp"; sourceTree = "SOURCE_ROOT"; }; + 87204C5BCC65051CF188DF6D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorParameter.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorParameter.h"; sourceTree = "SOURCE_ROOT"; }; + 8745ACE2C81BA9685BF99233 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableLayoutResizerBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutResizerBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + 874BD8915F9FC9EAF09AFB87 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DocumentWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_DocumentWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 877CA42D199DE2C3C4EF58A9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ScrollBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ScrollBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + 877FC50B817B57928FD4395C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorValueTreeState.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioProcessorValueTreeState.h"; sourceTree = "SOURCE_ROOT"; }; + 8784634AAD6079EF097FD751 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatWriter.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatWriter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 883F407DDE5464DEC7ED1634 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseInputSource.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 890BD2A64C7C25201E20C02F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryIterator.cpp"; path = "../../../../modules/juce_core/files/juce_DirectoryIterator.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8924F9B3C5A5EF7B9771465F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableShape.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableShape.h"; sourceTree = "SOURCE_ROOT"; }; + 89A8ED7F8AF435841DFC5279 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Files.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8A26883DAA6CE47336C86A40 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorGraph.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorGraph.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8A791C2E9E31061FB1114D0C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Toolbar.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Toolbar.h"; sourceTree = "SOURCE_ROOT"; }; + 8AADBD01ED8B177F160939D3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Typeface.h"; path = "../../../../modules/juce_graphics/fonts/juce_Typeface.h"; sourceTree = "SOURCE_ROOT"; }; + 8AAEBEE37A67A5D01EBA6BB7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadLocalValue.h"; path = "../../../../modules/juce_core/threads/juce_ThreadLocalValue.h"; sourceTree = "SOURCE_ROOT"; }; + 8AF3D4A8845EBB742E3F521C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ImageButton.h"; sourceTree = "SOURCE_ROOT"; }; + 8B73B43B30D1235C6F6C7472 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryContentsList.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsList.h"; sourceTree = "SOURCE_ROOT"; }; + 8B7B53B20BE2BD10F219B06A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_QuickTimeAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_QuickTimeAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8BB63BFDE6F8C634381B9CF3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLHelpers.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 8BD1742DEA98185FA7ED4152 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MenuBarComponent.h"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 8C19D0C6E404A67C74D07A9F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_posix_SharedCode.h"; path = "../../../../modules/juce_core/native/juce_posix_SharedCode.h"; sourceTree = "SOURCE_ROOT"; }; + 8C2A93223809C1EFD6D7C404 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JPEGLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_JPEGLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8CA2DB791512EB0E6AC7F7C2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPESynthesiserVoice.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPESynthesiserVoice.h"; sourceTree = "SOURCE_ROOT"; }; + 8D32D3B412213EC3153588E0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyPanel.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8DFA74E13F6E40A5B1C09C11 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationProperties.h"; path = "../../../../modules/juce_data_structures/app_properties/juce_ApplicationProperties.h"; sourceTree = "SOURCE_ROOT"; }; + 8E2F72AFA0CDA64F0C07F105 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SlaveComponent.h; path = ../../Source/SlaveComponent.h; sourceTree = "SOURCE_ROOT"; }; + 8E32705B99BB15E3586C067C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryIterator.h"; path = "../../../../modules/juce_core/files/juce_DirectoryIterator.h"; sourceTree = "SOURCE_ROOT"; }; + 8EE86B89C69AD4D9A802526D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPairArray.h"; path = "../../../../modules/juce_core/text/juce_StringPairArray.h"; sourceTree = "SOURCE_ROOT"; }; + 8EF093827B72F444E74F5682 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Array.h"; path = "../../../../modules/juce_core/containers/juce_Array.h"; sourceTree = "SOURCE_ROOT"; }; + 8EF118DED70F115DEF3DB6AE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LuaCodeTokeniser.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_LuaCodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; + 8F1630E85F43E88E4A40C2B1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Network.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8F2FACABB024833B7F932BC5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSourcePlayer.h"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioSourcePlayer.h"; sourceTree = "SOURCE_ROOT"; }; + 8F9E95F991B215FFDD3F8E9B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GZIPDecompressorInputStream.h"; path = "../../../../modules/juce_core/zip/juce_GZIPDecompressorInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 8FC33441590BA03C2EB5CD63 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ThreadPool.cpp"; path = "../../../../modules/juce_core/threads/juce_ThreadPool.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8FD227DE98DB156FBBC8DD1D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_URL.cpp"; path = "../../../../modules/juce_core/network/juce_URL.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9002A3D1CD5740D9C50A834C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormat.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 902C20CD7DEB18B69F0E1BE7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_AudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 90348A625874E8DD3DCBF583 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_URL.h"; path = "../../../../modules/juce_core/network/juce_URL.h"; sourceTree = "SOURCE_ROOT"; }; + 904D7BEE6279D62983E57DCA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginInstance.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioPluginInstance.h"; sourceTree = "SOURCE_ROOT"; }; + 905451CEDBDE4649B1DFB267 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FloatVectorOperations.cpp"; path = "../../../../modules/juce_audio_basics/buffers/juce_FloatVectorOperations.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9069DC6DF609DE1E4A57DA7F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Whirlpool.h"; path = "../../../../modules/juce_cryptography/hashing/juce_Whirlpool.h"; sourceTree = "SOURCE_ROOT"; }; + 912AC6CBEC5E7E91609B16C8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPEMessages.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEMessages.cpp"; sourceTree = "SOURCE_ROOT"; }; + 912F268EBF0738584F70DE1C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiFile.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiFile.h"; sourceTree = "SOURCE_ROOT"; }; + 913E0691329569D88E7AAB64 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osc.h"; path = "../../../../modules/juce_osc/juce_osc.h"; sourceTree = "SOURCE_ROOT"; }; + 914ED3B5EEB409125EADBB2F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LADSPAPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_LADSPAPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 918EAFFF65C0EBD273295D56 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileBrowserComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9193D2A3C463BEAA07FD424D = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreText.framework; path = System/Library/Frameworks/CoreText.framework; sourceTree = SDKROOT; }; + 91B931E774E4401630F74EE7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ModalComponentManager.h"; path = "../../../../modules/juce_gui_basics/components/juce_ModalComponentManager.h"; sourceTree = "SOURCE_ROOT"; }; + 91BDECC58244D65FC321A8E8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableCornerComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableCornerComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 9247A389C11552FA21BAB71F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PreferencesPanel.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_PreferencesPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9270C4E5EF60DE6108311112 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_devices/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 9271A906B51A234888B79D68 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LAMEEncoderAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_LAMEEncoderAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 92800676AF753D1A60108F11 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BinaryData.h; path = ../../JuceLibraryCode/BinaryData.h; sourceTree = "SOURCE_ROOT"; }; + 935CA85EF98714D3A17AE737 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; + 93736C303F60B4DBF1D87989 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Quaternion.h"; path = "../../../../modules/juce_opengl/geometry/juce_Quaternion.h"; sourceTree = "SOURCE_ROOT"; }; + 9411003BA4D471F2C95269ED = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KnownPluginList.cpp"; path = "../../../../modules/juce_audio_processors/scanning/juce_KnownPluginList.cpp"; sourceTree = "SOURCE_ROOT"; }; + 94363B04A83DFC9C02B023DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Component.h"; path = "../../../../modules/juce_gui_basics/components/juce_Component.h"; sourceTree = "SOURCE_ROOT"; }; + 943A1F16EFDD0E6789C90656 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 944B844043D0815614FD4CFD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Typeface.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9473F75E32710D282051D93C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DialogWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_DialogWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 94C3811F389418A6C4304554 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + 94F05A309F81C027AF3AA82C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLTexture.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLTexture.h"; sourceTree = "SOURCE_ROOT"; }; + 94F0F55A3456014AA91FE44C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_NamedValueSet.cpp"; path = "../../../../modules/juce_core/containers/juce_NamedValueSet.cpp"; sourceTree = "SOURCE_ROOT"; }; + 95139F961E2C7FB6421D04A5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MACAddress.cpp"; path = "../../../../modules/juce_core/network/juce_MACAddress.cpp"; sourceTree = "SOURCE_ROOT"; }; + 95738AF2EAF17A2FA9B8E069 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TabbedComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 965402AAAAF0A0D920DC7C36 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Image.cpp"; path = "../../../../modules/juce_graphics/images/juce_Image.cpp"; sourceTree = "SOURCE_ROOT"; }; + 96664A31FD92DEA43D231D23 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorParameters.cpp"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioProcessorParameters.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9671131059C459A1E119535E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormatManager.h"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormatManager.h"; sourceTree = "SOURCE_ROOT"; }; + 968CED5FCF62B31D4346DEBD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPEMessages.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEMessages.h"; sourceTree = "SOURCE_ROOT"; }; + 97188A2D8CC4C0DACC6A4D2F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorPlayer.h"; path = "../../../../modules/juce_audio_utils/players/juce_AudioProcessorPlayer.h"; sourceTree = "SOURCE_ROOT"; }; + 971B377F39D4CAFA77AB790C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TabbedComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9801E411857A072092954171 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableLayoutManager.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9808FC8EBDD993802B13E360 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsDisplayComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsDisplayComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9813552533EFFAACD0F7E1EC = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BasicNativeHeaders.h"; path = "../../../../modules/juce_core/native/juce_BasicNativeHeaders.h"; sourceTree = "SOURCE_ROOT"; }; + 9817FEEE6C1D99BCE7DB2395 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableComposite.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableComposite.cpp"; sourceTree = "SOURCE_ROOT"; }; + 98C797055FB6A630BD2AF26B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CustomTypeface.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_CustomTypeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + 98FE786D6DCAA1F39D0428E4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Font.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_Font.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9905205B6EDA5FAFA31EA03F = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_processors/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 991A179EF480F6B3049D0CE2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ValueTree.h"; path = "../../../../modules/juce_data_structures/values/juce_ValueTree.h"; sourceTree = "SOURCE_ROOT"; }; + 9935025CC78B291623780878 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooserDialogBox.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooserDialogBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9982F39121710EFFD5FEEAEF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MasterComponent.h; path = ../../Source/MasterComponent.h; sourceTree = "SOURCE_ROOT"; }; + 999ECAD45309F13369547FDB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF16.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF16.h"; sourceTree = "SOURCE_ROOT"; }; + 99F278EFA35A61B6E2AE1A61 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_mac_CoreMidi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_mac_CoreMidi.cpp"; sourceTree = "SOURCE_ROOT"; }; + 99FC512DFBE57AAC3894FC20 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AttributedString.h"; path = "../../../../modules/juce_graphics/fonts/juce_AttributedString.h"; sourceTree = "SOURCE_ROOT"; }; + 9A39BF4B65A5B6A66D84F232 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Path.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_Path.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9AB6DA2CD6FC85ABC73DCA8C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Label.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Label.h"; sourceTree = "SOURCE_ROOT"; }; + 9ABB34DD0089D3C1B2CB0448 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AlertWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_AlertWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 9AFB00C8011E7902EF67789C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LocalisedStrings.h"; path = "../../../../modules/juce_core/text/juce_LocalisedStrings.h"; sourceTree = "SOURCE_ROOT"; }; + 9B88C701BE205AEB33ACC5FB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseCursor.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseCursor.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9BB341CFFB496948D5E9A16E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GlyphArrangement.h"; path = "../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.h"; sourceTree = "SOURCE_ROOT"; }; + 9C20682A5F49B7BD2CEC3E2B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HeapBlock.h"; path = "../../../../modules/juce_core/memory/juce_HeapBlock.h"; sourceTree = "SOURCE_ROOT"; }; + 9C68E54122484FE80D919763 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MixerAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_MixerAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9CAA1BFBE6B44233E6F1247E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Result.cpp"; path = "../../../../modules/juce_core/misc/juce_Result.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9D05F58F8CE58D9D6952BF1D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PNGLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_PNGLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9D29AC99CA678DE27CAAAE31 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Time.h"; path = "../../../../modules/juce_core/time/juce_Time.h"; sourceTree = "SOURCE_ROOT"; }; + 9D2C7F9E1E4B1A96183E2B32 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_android_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9DCB9FE79EDD770E0EC8A370 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CriticalSection.h"; path = "../../../../modules/juce_core/threads/juce_CriticalSection.h"; sourceTree = "SOURCE_ROOT"; }; + 9DEFA41E52F11C989DF313BF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiBuffer.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiBuffer.h"; sourceTree = "SOURCE_ROOT"; }; + 9DF463C5E206ADC98851C78A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TimeSliceThread.h"; path = "../../../../modules/juce_core/threads/juce_TimeSliceThread.h"; sourceTree = "SOURCE_ROOT"; }; + 9E2535830FEEC2462D0A01C0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessageCollector.cpp"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiMessageCollector.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9E7319BC97DD7609E51BA8E6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextEditor.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TextEditor.h"; sourceTree = "SOURCE_ROOT"; }; + 9E8129263CD42C6029FC2CAD = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; + 9ED2DC39AEEFE9E28CF7E7B0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioVisualiserComponent.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioVisualiserComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 9EEF2A75EDD5E8023F9AD6B0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiTimer.h"; path = "../../../../modules/juce_events/timers/juce_MultiTimer.h"; sourceTree = "SOURCE_ROOT"; }; + 9F49BF4440F09115117F9615 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActionBroadcaster.h"; path = "../../../../modules/juce_events/broadcasters/juce_ActionBroadcaster.h"; sourceTree = "SOURCE_ROOT"; }; + A032B47E0B1DFE6656768078 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CPlusPlusCodeTokeniser.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniser.cpp"; sourceTree = "SOURCE_ROOT"; }; + A073692401C6D5C86D77E53C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringRef.h"; path = "../../../../modules/juce_core/text/juce_StringRef.h"; sourceTree = "SOURCE_ROOT"; }; + A09A20116F929D337AE95CB6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCSender.h"; path = "../../../../modules/juce_osc/osc/juce_OSCSender.h"; sourceTree = "SOURCE_ROOT"; }; + A118AD624CE30228686D51F3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeCoordinate.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinate.cpp"; sourceTree = "SOURCE_ROOT"; }; + A127A78E54490885EA61239C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioCDBurner.h"; path = "../../../../modules/juce_audio_devices/audio_cd/juce_AudioCDBurner.h"; sourceTree = "SOURCE_ROOT"; }; + A15770CD33E47FF114451904 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativePoint.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePoint.h"; sourceTree = "SOURCE_ROOT"; }; + A198E2290B15C62F68D21050 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsSoftwareRenderer.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"; sourceTree = "SOURCE_ROOT"; }; + A1AF1E8ADB16AE21785390F5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_GraphicsContext.cpp"; path = "../../../../modules/juce_graphics/native/juce_android_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + A1F1F469B33048DD0609E02E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawablePath.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawablePath.h"; sourceTree = "SOURCE_ROOT"; }; + A210326040D3F2A40B2B9D15 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PixelFormats.h"; path = "../../../../modules/juce_graphics/colour/juce_PixelFormats.h"; sourceTree = "SOURCE_ROOT"; }; + A23791E205B22F21521DF9F4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_basics.h"; path = "../../../../modules/juce_audio_basics/juce_audio_basics.h"; sourceTree = "SOURCE_ROOT"; }; + A34D1DA226DFFEACE090BD72 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NSViewComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_NSViewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + A38836ADAE0113CFA40F16EF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_WebBrowserComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_WebBrowserComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + A39FC18F44E512E5047DBB15 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OggVorbisAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_OggVorbisAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + A42479D8A3AE579891E8741A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginDescription.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_PluginDescription.cpp"; sourceTree = "SOURCE_ROOT"; }; + A42F8BC3DE25F1CC15D383E0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyListener.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + A4A507E78D1082DF5EDA723E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandTarget.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandTarget.cpp"; sourceTree = "SOURCE_ROOT"; }; + A4C7C1D626E8F444FE84674C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + A5360675341F06F73AF96D1E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MouseCursor.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_MouseCursor.mm"; sourceTree = "SOURCE_ROOT"; }; + A54E763170141C2FC3BBD197 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TimeSliceThread.cpp"; path = "../../../../modules/juce_core/threads/juce_TimeSliceThread.cpp"; sourceTree = "SOURCE_ROOT"; }; + A55309C54076A01EA57315CE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Image.h"; path = "../../../../modules/juce_graphics/images/juce_Image.h"; sourceTree = "SOURCE_ROOT"; }; + A61D17AF31E2326EDA285C22 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NativeMessageBox.h"; path = "../../../../modules/juce_gui_basics/windows/juce_NativeMessageBox.h"; sourceTree = "SOURCE_ROOT"; }; + A61EAEE68793E336E6F8BCF7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryMappedAudioFormatReader.h"; path = "../../../../modules/juce_audio_formats/format/juce_MemoryMappedAudioFormatReader.h"; sourceTree = "SOURCE_ROOT"; }; + A630EDA780905F9CCC6EF5D8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLAppComponent.cpp"; path = "../../../../modules/juce_opengl/utils/juce_OpenGLAppComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + A64B09FC5A333C71F069C890 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDeviceManager.cpp"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioDeviceManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + A67B57899953E98B2B52FA2C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_data_structures.mm"; path = "../../../../modules/juce_data_structures/juce_data_structures.mm"; sourceTree = "SOURCE_ROOT"; }; + A6A0A10D492CB91AF88BCDCB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserListener.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserListener.h"; sourceTree = "SOURCE_ROOT"; }; + A6AC587CC82C4689D4C0D90E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MACAddress.h"; path = "../../../../modules/juce_core/network/juce_MACAddress.h"; sourceTree = "SOURCE_ROOT"; }; + A6AFC4953E324CC5163256E6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + A6B7388C11968139DFB7F95B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginListComponent.h"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginListComponent.h"; sourceTree = "SOURCE_ROOT"; }; + A6B8840048CE44449BF2E319 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCArgument.h"; path = "../../../../modules/juce_osc/osc/juce_OSCArgument.h"; sourceTree = "SOURCE_ROOT"; }; + A7050DB1488924F209A7B5CF = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = "JUCE Network Graphics Demo/Images.xcassets"; sourceTree = "SOURCE_ROOT"; }; + A7198BFD9B0CC598BD50B587 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentMovementWatcher.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentMovementWatcher.h"; sourceTree = "SOURCE_ROOT"; }; + A7DF0F471086004A6B81CD11 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_gui_extra.h"; path = "../../../../modules/juce_gui_extra/juce_gui_extra.h"; sourceTree = "SOURCE_ROOT"; }; + A80E52C517801112E8F19350 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_graphics.mm"; path = "../../../../modules/juce_graphics/juce_graphics.mm"; sourceTree = "SOURCE_ROOT"; }; + A84DBA7DBC8FBEA5740CB026 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarModel.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarModel.cpp"; sourceTree = "SOURCE_ROOT"; }; + A89C8222531A7CBACE054C1A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrayAllocationBase.h"; path = "../../../../modules/juce_core/containers/juce_ArrayAllocationBase.h"; sourceTree = "SOURCE_ROOT"; }; + A8A0AF041F30CB7F45D2FF47 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_FileChooser.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_FileChooser.mm"; sourceTree = "SOURCE_ROOT"; }; + A8F0A5C9A372D5C57033B581 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlElement.cpp"; path = "../../../../modules/juce_core/xml/juce_XmlElement.cpp"; sourceTree = "SOURCE_ROOT"; }; + A93241AAFC2CA466E7F61D68 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CallOutBox.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_CallOutBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + A94C6EB19B9BF24D83054D60 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_processors.h"; path = "../../../../modules/juce_audio_processors/juce_audio_processors.h"; sourceTree = "SOURCE_ROOT"; }; + A9FE7AE10A02329F18BAF8BB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandInfo.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandInfo.h"; sourceTree = "SOURCE_ROOT"; }; + AA5DEFC178005AF6703DD8C2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLExtensions.h"; path = "../../../../modules/juce_opengl/native/juce_OpenGLExtensions.h"; sourceTree = "SOURCE_ROOT"; }; + AABBDC405E85A02000A3991B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ZipFile.h"; path = "../../../../modules/juce_core/zip/juce_ZipFile.h"; sourceTree = "SOURCE_ROOT"; }; + AB0C82D0A432008DA9B02B67 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLAppComponent.h"; path = "../../../../modules/juce_opengl/utils/juce_OpenGLAppComponent.h"; sourceTree = "SOURCE_ROOT"; }; + AB26977EA68E27838B54A8E4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_linux_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + AB6D9BF527527D3143CAC2A2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OptionalScopedPointer.h"; path = "../../../../modules/juce_core/memory/juce_OptionalScopedPointer.h"; sourceTree = "SOURCE_ROOT"; }; + AB7E120B33CE6C4EA5AE1C03 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AlertWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_AlertWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + AC2F6510662AD5D52E367FB8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Files.cpp"; path = "../../../../modules/juce_core/native/juce_android_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + AC5460D2875AEE783D2A2AAD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLContext.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLContext.h"; sourceTree = "SOURCE_ROOT"; }; + AC61701F361E5327D6BEEEDD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MathsFunctions.h"; path = "../../../../modules/juce_core/maths/juce_MathsFunctions.h"; sourceTree = "SOURCE_ROOT"; }; + AC98912B3226C0D29B0C8861 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_data_structures.h"; path = "../../../../modules/juce_data_structures/juce_data_structures.h"; sourceTree = "SOURCE_ROOT"; }; + AD18F0927230674E2BF6552A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MP3AudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_MP3AudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + AD3AD8A8258B52524F9FD249 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableListBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableListBox.h"; sourceTree = "SOURCE_ROOT"; }; + AD5D3156CBD517EB3835798A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSubsectionReader.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioSubsectionReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + AE20126D491A4FD52D059EFB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableRectangle.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableRectangle.h"; sourceTree = "SOURCE_ROOT"; }; + AE358D496192BAED93263F83 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectWriteTypeface.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_DirectWriteTypeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + AE6120B318B44C69CEDA6321 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LowLevelGraphicsSoftwareRenderer.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"; sourceTree = "SOURCE_ROOT"; }; + AEE7A4457DD1D960854EFFF2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGL_win32.h"; path = "../../../../modules/juce_opengl/native/juce_OpenGL_win32.h"; sourceTree = "SOURCE_ROOT"; }; + AF7E3E7137C6F49674649968 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScrollBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ScrollBar.h"; sourceTree = "SOURCE_ROOT"; }; + AF81BE7F88B9B754A9005DC0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Direct2DGraphicsContext.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_Direct2DGraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + AFE354D63186BB3CF00492E3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioParameterInt.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioParameterInt.h"; sourceTree = "SOURCE_ROOT"; }; + B047628A6433E2258B11BC10 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPESynthesiser.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPESynthesiser.cpp"; sourceTree = "SOURCE_ROOT"; }; + B060C1B4985F4D6071C6C1F5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osx_MessageQueue.h"; path = "../../../../modules/juce_events/native/juce_osx_MessageQueue.h"; sourceTree = "SOURCE_ROOT"; }; + B0D4F13DF0278D8722F7C4B8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarItemPalette.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemPalette.cpp"; sourceTree = "SOURCE_ROOT"; }; + B0DD6412314A0666002F9CB5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_BluetoothMidiDevicePairingDialogue.mm"; path = "../../../../modules/juce_audio_utils/native/juce_mac_BluetoothMidiDevicePairingDialogue.mm"; sourceTree = "SOURCE_ROOT"; }; + B14FEADC75BB9C57CF45D850 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HashMap.h"; path = "../../../../modules/juce_core/containers/juce_HashMap.h"; sourceTree = "SOURCE_ROOT"; }; + B18369F3EF227348BAECC29F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Justification.h"; path = "../../../../modules/juce_graphics/placement/juce_Justification.h"; sourceTree = "SOURCE_ROOT"; }; + B19456B2F153DD805FB2F660 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiOutput.cpp"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiOutput.cpp"; sourceTree = "SOURCE_ROOT"; }; + B1EA7F743B1C77827CAB5707 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_opengl/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + B1FD722E367F8B48B2C8F658 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlowEffect.cpp"; path = "../../../../modules/juce_graphics/effects/juce_GlowEffect.cpp"; sourceTree = "SOURCE_ROOT"; }; + B2A4F9CD6F95FB4EECC2FB10 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReadWriteLock.h"; path = "../../../../modules/juce_core/threads/juce_ReadWriteLock.h"; sourceTree = "SOURCE_ROOT"; }; + B2C692D20C6190AC831ED780 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DragAndDropContainer.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropContainer.h"; sourceTree = "SOURCE_ROOT"; }; + B32E8849197AC0716AF288A3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Logger.h"; path = "../../../../modules/juce_core/logging/juce_Logger.h"; sourceTree = "SOURCE_ROOT"; }; + B3342B74DDD833F6D04A7AD3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCTypes.h"; path = "../../../../modules/juce_osc/osc/juce_OSCTypes.h"; sourceTree = "SOURCE_ROOT"; }; + B34A4D738811E54546CA93CD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCSender.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCSender.cpp"; sourceTree = "SOURCE_ROOT"; }; + B35603E21B57E534616F599B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableBorderComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableBorderComponent.h"; sourceTree = "SOURCE_ROOT"; }; + B37C746F12C8413EA4DF8157 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_JSON.h"; path = "../../../../modules/juce_core/javascript/juce_JSON.h"; sourceTree = "SOURCE_ROOT"; }; + B3B317778509714561A5E52F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DynamicLibrary.h"; path = "../../../../modules/juce_core/threads/juce_DynamicLibrary.h"; sourceTree = "SOURCE_ROOT"; }; + B3D45312AB6F986CB3B4051C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextDiff.h"; path = "../../../../modules/juce_core/text/juce_TextDiff.h"; sourceTree = "SOURCE_ROOT"; }; + B4179816650495DEE17116FF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentPeer.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ComponentPeer.h"; sourceTree = "SOURCE_ROOT"; }; + B42577EBD62A6AF7AC97DAF1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colour.h"; path = "../../../../modules/juce_graphics/colour/juce_Colour.h"; sourceTree = "SOURCE_ROOT"; }; + B4B9CE9038C38B848A3DEF42 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatWriter.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatWriter.h"; sourceTree = "SOURCE_ROOT"; }; + B4E70AE3447587BABF51A076 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Socket.cpp"; path = "../../../../modules/juce_core/network/juce_Socket.cpp"; sourceTree = "SOURCE_ROOT"; }; + B541B5E33CE3B2054B30FF03 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DynamicObject.cpp"; path = "../../../../modules/juce_core/containers/juce_DynamicObject.cpp"; sourceTree = "SOURCE_ROOT"; }; + B5612B7C73B7C8313932225C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeDocument.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeDocument.h"; sourceTree = "SOURCE_ROOT"; }; + B576434956BD89F0B571B6C4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_android_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + B594FC49609DB3E2CF3DCB0C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryInputStream.h"; path = "../../../../modules/juce_core/streams/juce_MemoryInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + B599D417EDB736AB6D22321A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferingAudioFormatReader.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_BufferingAudioFormatReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + B682CF505958CB8A57B4BA2F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MP3AudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_MP3AudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + B6B133F816AD44FBFFBF8146 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryBlock.h"; path = "../../../../modules/juce_core/memory/juce_MemoryBlock.h"; sourceTree = "SOURCE_ROOT"; }; + B700A20AB7FA4833FBE9FAF2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ImageComponent.h"; sourceTree = "SOURCE_ROOT"; }; + B77EBFED3A56358BE8599594 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentListener.h"; path = "../../../../modules/juce_gui_basics/components/juce_ComponentListener.h"; sourceTree = "SOURCE_ROOT"; }; + B785E11D273E197A78C90597 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReferenceCountedObject.h"; path = "../../../../modules/juce_core/memory/juce_ReferenceCountedObject.h"; sourceTree = "SOURCE_ROOT"; }; + B7DA793390976975B7967E54 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_TextPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + B7FC671CAA2FB61FA45FF25D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseListener.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + B8072A5DFFD892216550F18B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_devices.h"; path = "../../../../modules/juce_audio_devices/juce_audio_devices.h"; sourceTree = "SOURCE_ROOT"; }; + B82B3B2DA336D3591A73280F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BubbleMessageComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_BubbleMessageComponent.h"; sourceTree = "SOURCE_ROOT"; }; + B84FF21D1349C565A604B4D2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarItemComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + B8D0006C486909BB51D8D818 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Thread.cpp"; path = "../../../../modules/juce_core/threads/juce_Thread.cpp"; sourceTree = "SOURCE_ROOT"; }; + B8D70BA0254864A54E587B21 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ReadWriteLock.cpp"; path = "../../../../modules/juce_core/threads/juce_ReadWriteLock.cpp"; sourceTree = "SOURCE_ROOT"; }; + B8D9A7FDB054852EF59BF4AE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + B93D72307AE413B7A9A074C5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_opengl.h"; path = "../../../../modules/juce_opengl/juce_opengl.h"; sourceTree = "SOURCE_ROOT"; }; + B94D80A7B5ADCC744E7CE7E6 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_gui_extra/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + B94E7B4E08D0CE7D4B3AA470 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileChooser.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooser.h"; sourceTree = "SOURCE_ROOT"; }; + B96670417A0708508B971C58 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ProgressBar.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ProgressBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + B97A4BE39BF95F50E67A4683 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_android_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + B99F9693FE694A5A7C9AF194 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiRPN.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiRPN.cpp"; sourceTree = "SOURCE_ROOT"; }; + BA6D9591DBD5CDA91ED632A2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Synthesiser.cpp"; path = "../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.cpp"; sourceTree = "SOURCE_ROOT"; }; + BA93F94CB1FC135E6F8D8910 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DragAndDrop.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_DragAndDrop.cpp"; sourceTree = "SOURCE_ROOT"; }; + BAC4FD0C99CEBD2133F79C24 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CaretComponent.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_CaretComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + BAE421BF414A8713DC446E10 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferedInputStream.h"; path = "../../../../modules/juce_core/streams/juce_BufferedInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + BB3265EFC32ADB68A59A90CF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ValueTree.cpp"; path = "../../../../modules/juce_data_structures/values/juce_ValueTree.cpp"; sourceTree = "SOURCE_ROOT"; }; + BB422B25F3D67420F1A7A27C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemPalette.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemPalette.h"; sourceTree = "SOURCE_ROOT"; }; + BB7CA26CF4540A535BE229CA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarComponent.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + BB9242FB689B4DAEDF1963BE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_MessageManager.mm"; path = "../../../../modules/juce_events/native/juce_ios_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; }; + BBE01A9C5FD8C0656AEA9D3C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsPostScriptRenderer.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"; sourceTree = "SOURCE_ROOT"; }; + BC93A86542557AEA4230FBFE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Decibels.h"; path = "../../../../modules/juce_audio_basics/effects/juce_Decibels.h"; sourceTree = "SOURCE_ROOT"; }; + BCDFDFFF924A8FDF40B82990 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Uuid.cpp"; path = "../../../../modules/juce_core/misc/juce_Uuid.cpp"; sourceTree = "SOURCE_ROOT"; }; + BDC7D9A7A14232DD7BBCB123 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RSAKey.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_RSAKey.cpp"; sourceTree = "SOURCE_ROOT"; }; + BDFEE2E6B40F3E47E3B16D38 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertiesFile.h"; path = "../../../../modules/juce_data_structures/app_properties/juce_PropertiesFile.h"; sourceTree = "SOURCE_ROOT"; }; + BE05CCA102CA2AF18244AD0E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginListComponent.cpp"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + BE28C3777F5A468E4BE1596B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Windowing.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_Windowing.mm"; sourceTree = "SOURCE_ROOT"; }; + BE65BDFEC645F36487A68F71 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Variant.cpp"; path = "../../../../modules/juce_core/containers/juce_Variant.cpp"; sourceTree = "SOURCE_ROOT"; }; + BE6C77497C8F42747F797BBD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_MidiKeyboardComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + BE92FB177CE8690F02DDCDCA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseCursor.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseCursor.h"; sourceTree = "SOURCE_ROOT"; }; + BED621A030C4C37B2326EE4A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PerformanceCounter.cpp"; path = "../../../../modules/juce_core/time/juce_PerformanceCounter.cpp"; sourceTree = "SOURCE_ROOT"; }; + BF62BF87517BCECDF7BFC044 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCAddress.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCAddress.cpp"; sourceTree = "SOURCE_ROOT"; }; + BFD53A594929B7CC58D46BCF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_android_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + C00042157AE4788F1B7DD087 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TooltipClient.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_TooltipClient.h"; sourceTree = "SOURCE_ROOT"; }; + C041D609CA330DE35D88B7EE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Identifier.h"; path = "../../../../modules/juce_core/text/juce_Identifier.h"; sourceTree = "SOURCE_ROOT"; }; + C099D10A0E0F102A8F02A3C8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LinearSmoothedValue.h"; path = "../../../../modules/juce_audio_basics/effects/juce_LinearSmoothedValue.h"; sourceTree = "SOURCE_ROOT"; }; + C0C7CB3229B2E54FFB785CA6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OutputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_OutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + C10AF8B74E855D60A481CBD4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableImage.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableImage.h"; sourceTree = "SOURCE_ROOT"; }; + C13A62F3B2A01774AD8A9921 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_ActiveXComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_ActiveXComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + C1688DC3A2F892F53F8F15DE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Fonts.mm"; path = "../../../../modules/juce_graphics/native/juce_mac_Fonts.mm"; sourceTree = "SOURCE_ROOT"; }; + C18944C7BB1D9143312BE3A7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableObjectResizer.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableObjectResizer.cpp"; sourceTree = "SOURCE_ROOT"; }; + C1BD7A3D23B873F716F6C68F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLGraphicsContext.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + C1E7A30EDB756EF33710AB4C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ModifierKeys.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_ModifierKeys.cpp"; sourceTree = "SOURCE_ROOT"; }; + C2018A1CDB83486F8EC3CD32 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_ASIO.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_ASIO.cpp"; sourceTree = "SOURCE_ROOT"; }; + C26C5CA5E6514CF7457B1ACB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryOutputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_MemoryOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + C2AF71A259E7FE29A378F063 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCTypes.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCTypes.cpp"; sourceTree = "SOURCE_ROOT"; }; + C30F3519F6ADB14DD19DE1A9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginDirectoryScanner.cpp"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginDirectoryScanner.cpp"; sourceTree = "SOURCE_ROOT"; }; + C3538736DEAAF93829AB60A0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Expression.cpp"; path = "../../../../modules/juce_core/maths/juce_Expression.cpp"; sourceTree = "SOURCE_ROOT"; }; + C378389E66043AAF139C6426 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ResizableWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + C3EE00C42BC5D0E1610F879A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Draggable3DOrientation.h"; path = "../../../../modules/juce_opengl/geometry/juce_Draggable3DOrientation.h"; sourceTree = "SOURCE_ROOT"; }; + C41176B7A1D16BC5C67A5727 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemStats.cpp"; path = "../../../../modules/juce_core/system/juce_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + C4D626F9CEE1FD851551D91C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawablePath.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawablePath.cpp"; sourceTree = "SOURCE_ROOT"; }; + C5104FA479708493D5396BAA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLPixelFormat.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLPixelFormat.h"; sourceTree = "SOURCE_ROOT"; }; + C536B42EF0D28435B6410AC9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChangeBroadcaster.h"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeBroadcaster.h"; sourceTree = "SOURCE_ROOT"; }; + C56022F99B8FB808D00CE6D7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RectanglePlacement.h"; path = "../../../../modules/juce_graphics/placement/juce_RectanglePlacement.h"; sourceTree = "SOURCE_ROOT"; }; + C63EFC8D5E9FDC58BD4A9CA2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_core.mm"; path = "../../../../modules/juce_core/juce_core.mm"; sourceTree = "SOURCE_ROOT"; }; + C6BDBA40F172EF384F005E8B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDataConverters.cpp"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioDataConverters.cpp"; sourceTree = "SOURCE_ROOT"; }; + C6CCDF5390C72C6C37F3446D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Timer.h"; path = "../../../../modules/juce_events/timers/juce_Timer.h"; sourceTree = "SOURCE_ROOT"; }; + C7373F24FD2E886C50CB3903 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BlowFish.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_BlowFish.cpp"; sourceTree = "SOURCE_ROOT"; }; + C74BED74D8B891801A2EC0FD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToneGeneratorAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ToneGeneratorAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + C78105C8AEE452AED0700AAC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableCornerComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableCornerComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + C790F51988B04C4A38A737EE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyPress.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyPress.h"; sourceTree = "SOURCE_ROOT"; }; + C7E1D706A09E4E96883215BC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Network.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + C821C5805007FFDC2636BBE6 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; }; + C881040590095369DFB1A19A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileFilter.cpp"; path = "../../../../modules/juce_core/files/juce_FileFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; + C8A38D75BD930F3CC7634124 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AnimatedPositionBehaviours.h"; path = "../../../../modules/juce_gui_basics/layout/juce_AnimatedPositionBehaviours.h"; sourceTree = "SOURCE_ROOT"; }; + C8C33E8254DF7A03B953FF91 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessageCollector.h"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiMessageCollector.h"; sourceTree = "SOURCE_ROOT"; }; + C8E5F60ED66385553547961E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TooltipWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_TooltipWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + C92F4F51EC54B859EAB7F09D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DeletedAtShutdown.cpp"; path = "../../../../modules/juce_events/messages/juce_DeletedAtShutdown.cpp"; sourceTree = "SOURCE_ROOT"; }; + C938DCCA334DE363B27C1E65 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UnitTest.cpp"; path = "../../../../modules/juce_core/unit_tests/juce_UnitTest.cpp"; sourceTree = "SOURCE_ROOT"; }; + C9A02E17EA16F69B823F9964 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + C9EF40785DAD416946D6AAE1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadPool.h"; path = "../../../../modules/juce_core/threads/juce_ThreadPool.h"; sourceTree = "SOURCE_ROOT"; }; + CA5CAB4B48FE75C6760BB780 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OSCBundle.cpp"; path = "../../../../modules/juce_osc/osc/juce_OSCBundle.cpp"; sourceTree = "SOURCE_ROOT"; }; + CA7D20970FD9BCB45BB5822A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPEZone.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEZone.cpp"; sourceTree = "SOURCE_ROOT"; }; + CAD2BDFE8443FE5648EF5A9C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_utils.mm"; path = "../../../../modules/juce_audio_utils/juce_audio_utils.mm"; sourceTree = "SOURCE_ROOT"; }; + CB0FCCF91CA21CA88D295932 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsList.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsList.cpp"; sourceTree = "SOURCE_ROOT"; }; + CB3DD188BB8AAB1931436CD4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_HiddenMessageWindow.h"; path = "../../../../modules/juce_events/native/juce_win32_HiddenMessageWindow.h"; sourceTree = "SOURCE_ROOT"; }; + CB46FEDCD501D06F0B024134 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_mac_CoreAudio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_mac_CoreAudio.cpp"; sourceTree = "SOURCE_ROOT"; }; + CB481B5E92CC1EF7898DD17F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Vector3D.h"; path = "../../../../modules/juce_opengl/geometry/juce_Vector3D.h"; sourceTree = "SOURCE_ROOT"; }; + CBE595558B9038547D418CEE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DeletedAtShutdown.h"; path = "../../../../modules/juce_events/messages/juce_DeletedAtShutdown.h"; sourceTree = "SOURCE_ROOT"; }; + CC04871FDDC918BBD27FBA04 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Logger.cpp"; path = "../../../../modules/juce_core/logging/juce_Logger.cpp"; sourceTree = "SOURCE_ROOT"; }; + CC8C5C667CA1A6EBAA1323E4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TooltipWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_TooltipWindow.h"; sourceTree = "SOURCE_ROOT"; }; + CCA843C191E1EC761E0C4B1B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativePointPath.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePointPath.cpp"; sourceTree = "SOURCE_ROOT"; }; + CCCF7AA714938B03DE4407FA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LookAndFeel_V3.h"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V3.h"; sourceTree = "SOURCE_ROOT"; }; + CD3D15787DE0633AF0F41D14 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandID.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandID.h"; sourceTree = "SOURCE_ROOT"; }; + CD5B4BF3641DA629049AF981 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatManager.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatManager.h"; sourceTree = "SOURCE_ROOT"; }; + CD63DD73C9818BDF67BF9828 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_linux_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + CD7F6E7854F25672E5340991 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPEZoneLayout.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEZoneLayout.cpp"; sourceTree = "SOURCE_ROOT"; }; + CE06CB9CD28DE31FA1528DE5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VSTMidiEventList.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_VSTMidiEventList.h"; sourceTree = "SOURCE_ROOT"; }; + CF1F536ECAA15F7AF8B20746 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AffineTransform.h"; path = "../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"; sourceTree = "SOURCE_ROOT"; }; + CF5C8009A1AB469B2A3EDAF8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPESynthesiserBase.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPESynthesiserBase.h"; sourceTree = "SOURCE_ROOT"; }; + CF6BAD445F116D03D5AC2E69 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextLayout.h"; path = "../../../../modules/juce_graphics/fonts/juce_TextLayout.h"; sourceTree = "SOURCE_ROOT"; }; + D01F1E62E142AEF92EFEF9A0 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_gui_basics/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + D0436D71AD541BF93E0585DB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Message.h"; path = "../../../../modules/juce_events/messages/juce_Message.h"; sourceTree = "SOURCE_ROOT"; }; + D05C8EB1FF06FB0A06C39518 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Singleton.h"; path = "../../../../modules/juce_core/memory/juce_Singleton.h"; sourceTree = "SOURCE_ROOT"; }; + D080322D3DB943F3FAFE56CA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToneGeneratorAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ToneGeneratorAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + D0E00FC62C3DA68962100AD6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XmlDocument.h"; path = "../../../../modules/juce_core/xml/juce_XmlDocument.h"; sourceTree = "SOURCE_ROOT"; }; + D12A0DFFE18728E84D9AB739 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JuceHeader.h; path = ../../JuceLibraryCode/JuceHeader.h; sourceTree = "SOURCE_ROOT"; }; + D15B6AC0F49F8BAAAF71FDF6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableComposite.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableComposite.h"; sourceTree = "SOURCE_ROOT"; }; + D1696F4E539DDB4D7423051C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_android_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + D185AFBBD6B50B5CCC2A9A3D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_gui_extra.mm"; path = "../../../../modules/juce_gui_extra/juce_gui_extra.mm"; sourceTree = "SOURCE_ROOT"; }; + D1CA4E7E20D80D0AC1614F98 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InputStream.h"; path = "../../../../modules/juce_core/streams/juce_InputStream.h"; sourceTree = "SOURCE_ROOT"; }; + D215EF12EACEF7D1CF873FFE = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Reverb.h"; path = "../../../../modules/juce_audio_basics/effects/juce_Reverb.h"; sourceTree = "SOURCE_ROOT"; }; + D2C6697A783580EE58B2C5EF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ModalComponentManager.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_ModalComponentManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + D34AB4BF5DF2B8C181D8D344 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_File.h"; path = "../../../../modules/juce_core/files/juce_File.h"; sourceTree = "SOURCE_ROOT"; }; + D34F5512C192C172CCC479F7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CustomTypeface.h"; path = "../../../../modules/juce_graphics/fonts/juce_CustomTypeface.h"; sourceTree = "SOURCE_ROOT"; }; + D380F5AED297C4D7BE55911C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertyPanel.h"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyPanel.h"; sourceTree = "SOURCE_ROOT"; }; + D3DC14B9B3C655A7E8383209 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDeviceSelectorComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioDeviceSelectorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + D432518F3EB9C5C792A50233 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioParameterFloat.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioParameterFloat.h"; sourceTree = "SOURCE_ROOT"; }; + D45979081B92930C507C3B87 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListenerList.h"; path = "../../../../modules/juce_core/containers/juce_ListenerList.h"; sourceTree = "SOURCE_ROOT"; }; + D4C20B86C7B0A9FFBCA8FE6B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_Windowing.mm"; path = "../../../../modules/juce_gui_basics/native/juce_ios_Windowing.mm"; sourceTree = "SOURCE_ROOT"; }; + D4C5D7EE1A40AD018E5E6F02 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeTime.cpp"; path = "../../../../modules/juce_core/time/juce_RelativeTime.cpp"; sourceTree = "SOURCE_ROOT"; }; + D4F3296FB4D267CD9DBAEC22 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_osc/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + D5313BED337DBBC9A1F7D9CB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Font.h"; path = "../../../../modules/juce_graphics/fonts/juce_Font.h"; sourceTree = "SOURCE_ROOT"; }; + D56935CBCD13662FDB475D86 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResamplingAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ResamplingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + D62FB517B25339128E860F9F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IIRFilterAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_IIRFilterAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + D64370EA15694620740DAEF4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GenericAudioProcessorEditor.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_GenericAudioProcessorEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + D656F7818C72485E3ECC50C9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MPENote.h"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPENote.h"; sourceTree = "SOURCE_ROOT"; }; + D65C8F172D8C1FD532B67348 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XmlElement.h"; path = "../../../../modules/juce_core/xml/juce_XmlElement.h"; sourceTree = "SOURCE_ROOT"; }; + D697C54442250F5A720D2CBF = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_events/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + D79506405903905814D5B32B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableLayoutManager.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutManager.h"; sourceTree = "SOURCE_ROOT"; }; + D7C7D8F1CD5FCCAD941DAB9A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioParameterChoice.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioParameterChoice.h"; sourceTree = "SOURCE_ROOT"; }; + D7D3D13E56861B7937B08EFF = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FilenameComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilenameComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + D7ECFEB15046C60EAACA0F54 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Colours.cpp"; path = "../../../../modules/juce_graphics/colour/juce_Colours.cpp"; sourceTree = "SOURCE_ROOT"; }; + D7F183070EDA8D6D7659BDA1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UndoManager.h"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoManager.h"; sourceTree = "SOURCE_ROOT"; }; + D88DBC78062ECA21D18C1D7C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AsyncUpdater.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_AsyncUpdater.cpp"; sourceTree = "SOURCE_ROOT"; }; + D8B377D58489B765A9369335 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ListBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + D8E43470409EC218DC96B555 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyMappingEditorComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + D8E594FED69859E740E91543 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableEdgeComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.h"; sourceTree = "SOURCE_ROOT"; }; + D9064DA71018E0FB2C02BD3B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TreeView.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TreeView.cpp"; sourceTree = "SOURCE_ROOT"; }; + D93778DB7CCB4B438A59D8AB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemFactory.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemFactory.h"; sourceTree = "SOURCE_ROOT"; }; + D96D639C9895ADEB144D5E40 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPEInstrument.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEInstrument.cpp"; sourceTree = "SOURCE_ROOT"; }; + D9958673B7BFB76E4F815126 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LAMEEncoderAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_LAMEEncoderAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + D9B8313EC8799E313E1F7948 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_IIRFilterAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_IIRFilterAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + D9FC957CB510399786D69D8D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertiesFile.cpp"; path = "../../../../modules/juce_data_structures/app_properties/juce_PropertiesFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + DA40ED39AF4B56000E5A2743 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; + DA768EEF9A95E554F7903B60 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Variant.h"; path = "../../../../modules/juce_core/containers/juce_Variant.h"; sourceTree = "SOURCE_ROOT"; }; + DB5365D435396965FC3974BC = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Threads.mm"; path = "../../../../modules/juce_core/native/juce_mac_Threads.mm"; sourceTree = "SOURCE_ROOT"; }; + DB85BDB1DF720391F80F0D94 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SplashScreen.h"; path = "../../../../modules/juce_gui_extra/misc/juce_SplashScreen.h"; sourceTree = "SOURCE_ROOT"; }; + DC15808BB97E1521C055A470 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyListener.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyListener.h"; sourceTree = "SOURCE_ROOT"; }; + DC3AA6076CA4CFB066F146D2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorParameterWithID.h"; path = "../../../../modules/juce_audio_processors/utilities/juce_AudioProcessorParameterWithID.h"; sourceTree = "SOURCE_ROOT"; }; + DC4E35EEAF01C08CFC4A4CAC = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IPAddress.h"; path = "../../../../modules/juce_core/network/juce_IPAddress.h"; sourceTree = "SOURCE_ROOT"; }; + DC50301B6C3FDAE98E224E76 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginFormatManager.cpp"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormatManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + DC76782D8BA40A4CA365C279 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_data_structures/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + DC9C7030E63CDD457DE54498 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiInput.h"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiInput.h"; sourceTree = "SOURCE_ROOT"; }; + DCA560DA0C66BB6D6EA92500 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_freetype_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_freetype_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + DCB2FAD653F074F08A916315 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileInputStream.h"; path = "../../../../modules/juce_core/files/juce_FileInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + DCE5AE0A528365094776BE17 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LookAndFeel.h"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel.h"; sourceTree = "SOURCE_ROOT"; }; + DCE64BC49FFC96654D30AD87 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallbackMessage.h"; path = "../../../../modules/juce_events/messages/juce_CallbackMessage.h"; sourceTree = "SOURCE_ROOT"; }; + DD6265BDB310A14072805592 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferingAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_BufferingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + DD866BA894AC019F86C5F4C9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_cryptography.mm"; path = "../../../../modules/juce_cryptography/juce_cryptography.mm"; sourceTree = "SOURCE_ROOT"; }; + DDD307F9E18E442E43786B0E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BluetoothMidiDevicePairingDialogue.h"; path = "../../../../modules/juce_audio_utils/gui/juce_BluetoothMidiDevicePairingDialogue.h"; sourceTree = "SOURCE_ROOT"; }; + DDD38519DCDDE8BDE8AC092B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SliderPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_SliderPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + DE42EED0A04BB9F90D623BAF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryOutputStream.h"; path = "../../../../modules/juce_core/streams/juce_MemoryOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + DE508CE9EE6F6AFC689CDA33 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AppleRemote.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_AppleRemote.mm"; sourceTree = "SOURCE_ROOT"; }; + DE66F892ACF4DCAE897F3BE4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Identifier.cpp"; path = "../../../../modules/juce_core/text/juce_Identifier.cpp"; sourceTree = "SOURCE_ROOT"; }; + DEA16225BAB46F055607F766 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FFT.cpp"; path = "../../../../modules/juce_audio_basics/effects/juce_FFT.cpp"; sourceTree = "SOURCE_ROOT"; }; + DEB62073956FBC23B33C3215 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeTokeniser.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; + DF0C3025BC5B572CC28B8EEB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Clipboard.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_Clipboard.cpp"; sourceTree = "SOURCE_ROOT"; }; + DFC37DEA417DA0FC812FDAC2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_win32_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + E0069A75C60B6ECB8E8CBFDD = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseInactivityDetector.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInactivityDetector.cpp"; sourceTree = "SOURCE_ROOT"; }; + E04A8F9E8B767CC682430498 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPathListComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.h"; sourceTree = "SOURCE_ROOT"; }; + E07D1F3E8D8727F58F868B90 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CoreGraphicsContext.h"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + E0F302E28F1CA85EE2A60BEB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemTrayIconComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_SystemTrayIconComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + E26BB7E510E3BEE029962DD3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Sampler.h"; path = "../../../../modules/juce_audio_formats/sampler/juce_Sampler.h"; sourceTree = "SOURCE_ROOT"; }; + E27E9AF73E442C75C0091F8D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPool.h"; path = "../../../../modules/juce_core/text/juce_StringPool.h"; sourceTree = "SOURCE_ROOT"; }; + E325C8811CC4773321407E9B = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_formats/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + E33B4A0A655F6365B17CE1F4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessor.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessor.h"; sourceTree = "SOURCE_ROOT"; }; + E368DF5C372BB7CCE82DC763 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ConcertinaPanel.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ConcertinaPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + E41A33EB67E7E190A88A3AD3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DropShadowEffect.h"; path = "../../../../modules/juce_graphics/effects/juce_DropShadowEffect.h"; sourceTree = "SOURCE_ROOT"; }; + E428D9BEA0B66A12448F3649 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileInputSource.cpp"; path = "../../../../modules/juce_core/streams/juce_FileInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + E44B8F906461AB6AC47B374A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LADSPAPluginFormat.cpp"; path = "../../../../modules/juce_audio_processors/format_types/juce_LADSPAPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + E4546F8D14174EB8C05A47C3 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferedInputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_BufferedInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + E45C1684DCDBFD3B76F0B209 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + E4D3972CA0596447A3C0A5EB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MPEValue.cpp"; path = "../../../../modules/juce_audio_basics/mpe/juce_MPEValue.cpp"; sourceTree = "SOURCE_ROOT"; }; + E4D861851BBC388FE4CB5DFA = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TreeView.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TreeView.h"; sourceTree = "SOURCE_ROOT"; }; + E526AF80946C3F077C1C63C6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationBase.cpp"; path = "../../../../modules/juce_events/messages/juce_ApplicationBase.cpp"; sourceTree = "SOURCE_ROOT"; }; + E540A462EBB080CF14B31764 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiTimer.cpp"; path = "../../../../modules/juce_events/timers/juce_MultiTimer.cpp"; sourceTree = "SOURCE_ROOT"; }; + E614AF9C124E2CEE229954DA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RecentlyOpenedFilesList.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.cpp"; sourceTree = "SOURCE_ROOT"; }; + E6526B2FBE4F9F3DF819A030 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Label.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Label.cpp"; sourceTree = "SOURCE_ROOT"; }; + E7230A4CC16B57C93FCE675A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioThumbnail.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnail.h"; sourceTree = "SOURCE_ROOT"; }; + E73144B6B99143468DB98842 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLShaderProgram.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLShaderProgram.cpp"; sourceTree = "SOURCE_ROOT"; }; + E74B5E2C22C81CA99C9CB473 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JSON.cpp"; path = "../../../../modules/juce_core/javascript/juce_JSON.cpp"; sourceTree = "SOURCE_ROOT"; }; + E74DA5EF2C208608AF676212 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RenderingHelpers.h"; path = "../../../../modules/juce_graphics/native/juce_RenderingHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + E75749124D1F2FD391C01787 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorPlayer.cpp"; path = "../../../../modules/juce_audio_utils/players/juce_AudioProcessorPlayer.cpp"; sourceTree = "SOURCE_ROOT"; }; + E78FFEA6B1BE4AD1EE43C60D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_BluetoothMidiDevicePairingDialogue.cpp"; path = "../../../../modules/juce_audio_utils/native/juce_android_BluetoothMidiDevicePairingDialogue.cpp"; sourceTree = "SOURCE_ROOT"; }; + E8649B16BA011770D16BF051 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioChannelSet.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioChannelSet.cpp"; sourceTree = "SOURCE_ROOT"; }; + E89452B0110096760B06397C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_ClangBugWorkaround.h"; path = "../../../../modules/juce_core/native/juce_mac_ClangBugWorkaround.h"; sourceTree = "SOURCE_ROOT"; }; + E8B02F47799FC984D3FE1083 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_String.cpp"; path = "../../../../modules/juce_core/text/juce_String.cpp"; sourceTree = "SOURCE_ROOT"; }; + E8DE188896E5791E338D4EE7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyPress.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyPress.cpp"; sourceTree = "SOURCE_ROOT"; }; + EA53F7F4674786EB152A2273 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MixerAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_MixerAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + EA65F835FDB1DB86406C9471 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageFileFormat.h"; path = "../../../../modules/juce_graphics/images/juce_ImageFileFormat.h"; sourceTree = "SOURCE_ROOT"; }; + EA8A250986871A036D42DB94 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Random.cpp"; path = "../../../../modules/juce_core/maths/juce_Random.cpp"; sourceTree = "SOURCE_ROOT"; }; + EAED7C0A5FFE6D29DD0A0D9A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPool.cpp"; path = "../../../../modules/juce_core/text/juce_StringPool.cpp"; sourceTree = "SOURCE_ROOT"; }; + EB267F3D6CA06EDB2EB92BBE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_HighResolutionTimer.cpp"; path = "../../../../modules/juce_core/threads/juce_HighResolutionTimer.cpp"; sourceTree = "SOURCE_ROOT"; }; + EB5D5F550EC7617B00286524 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCAddress.h"; path = "../../../../modules/juce_osc/osc/juce_OSCAddress.h"; sourceTree = "SOURCE_ROOT"; }; + EB990950081504EBD067FF9A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LookAndFeel_V2.cpp"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V2.cpp"; sourceTree = "SOURCE_ROOT"; }; + EC97D7ABC489A5E1BD7BAF41 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioCDReader.h"; path = "../../../../modules/juce_audio_devices/audio_cd/juce_AudioCDReader.h"; sourceTree = "SOURCE_ROOT"; }; + ECB67354113361CDADA77BC6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ButtonPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + ECD46DBA26680A8F86569C2E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Button.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_Button.cpp"; sourceTree = "SOURCE_ROOT"; }; + ED256A12202BBE4615053DD5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCReceiver.h"; path = "../../../../modules/juce_osc/osc/juce_OSCReceiver.h"; sourceTree = "SOURCE_ROOT"; }; + ED2D3A163433149267F3C47D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LiveConstantEditor.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_LiveConstantEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + EE2712F5383D654D470BA1C1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessage.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessage.cpp"; sourceTree = "SOURCE_ROOT"; }; + EE6895EE5020998469F17433 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Timer.cpp"; path = "../../../../modules/juce_events/timers/juce_Timer.cpp"; sourceTree = "SOURCE_ROOT"; }; + EE77BB1682ABC799703B5972 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChannelRemappingAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ChannelRemappingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + EE8916C220D09A855BDCB95C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedReadLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedReadLock.h"; sourceTree = "SOURCE_ROOT"; }; + EF337D9B43E0569DE3E48279 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MessageManager.h"; path = "../../../../modules/juce_events/messages/juce_MessageManager.h"; sourceTree = "SOURCE_ROOT"; }; + EF43908046753F20507CC3B0 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_core/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + EF805FA4F575DBCAF69C1AE4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SVGParser.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_SVGParser.cpp"; sourceTree = "SOURCE_ROOT"; }; + EF8BAD426428948862257FC4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyboardFocusTraverser.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyboardFocusTraverser.cpp"; sourceTree = "SOURCE_ROOT"; }; + EFD1CE8574994B5B6D078FD9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_OpenSL.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_android_OpenSL.cpp"; sourceTree = "SOURCE_ROOT"; }; + F0C6892CD64002A92B68F37B = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OSCTimeTag.h"; path = "../../../../modules/juce_osc/osc/juce_OSCTimeTag.h"; sourceTree = "SOURCE_ROOT"; }; + F13FB76427772F29EAD88728 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StandardHeader.h"; path = "../../../../modules/juce_core/system/juce_StandardHeader.h"; sourceTree = "SOURCE_ROOT"; }; + F163668D4C2343C282574A78 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UnitTest.h"; path = "../../../../modules/juce_core/unit_tests/juce_UnitTest.h"; sourceTree = "SOURCE_ROOT"; }; + F168A7541EBE16D46968C97D = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WindowsMediaAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_WindowsMediaAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + F199EA5517B054547E193F08 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UIViewComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_UIViewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + F1AEC47949E75A0B4DBEA130 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LookAndFeel_V3.cpp"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V3.cpp"; sourceTree = "SOURCE_ROOT"; }; + F22EB69681485A38365940DD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MD5.h"; path = "../../../../modules/juce_cryptography/hashing/juce_MD5.h"; sourceTree = "SOURCE_ROOT"; }; + F31752A999520E521BC507D1 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentListener.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_ComponentListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + F3472E21D095DB91ADE8D714 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RectanglePlacement.cpp"; path = "../../../../modules/juce_graphics/placement/juce_RectanglePlacement.cpp"; sourceTree = "SOURCE_ROOT"; }; + F36CA213BBF312F093F8C6E7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FloatVectorOperations.h"; path = "../../../../modules/juce_audio_basics/buffers/juce_FloatVectorOperations.h"; sourceTree = "SOURCE_ROOT"; }; + F39E719901F12B16AD7D600C = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Value.h"; path = "../../../../modules/juce_data_structures/values/juce_Value.h"; sourceTree = "SOURCE_ROOT"; }; + F4825162600591FAF2F1F79E = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileInputSource.h"; path = "../../../../modules/juce_core/streams/juce_FileInputSource.h"; sourceTree = "SOURCE_ROOT"; }; + F4ED9D3E27226B0974BEC563 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LiveConstantEditor.h"; path = "../../../../modules/juce_gui_extra/misc/juce_LiveConstantEditor.h"; sourceTree = "SOURCE_ROOT"; }; + F540CB77351EAEFC2B3D05CA = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InterprocessConnection.cpp"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnection.cpp"; sourceTree = "SOURCE_ROOT"; }; + F57531462BB169A5F0224ADE = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChangeBroadcaster.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeBroadcaster.cpp"; sourceTree = "SOURCE_ROOT"; }; + F5A0AF00BD4B6471D5057B9F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiBuffer.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; + F5A991062FE0EEEFE0CAAC17 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ColourGradient.h"; path = "../../../../modules/juce_graphics/colour/juce_ColourGradient.h"; sourceTree = "SOURCE_ROOT"; }; + F672C9D6819D4CEA39A76445 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_SystemTrayIcon.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_SystemTrayIcon.cpp"; sourceTree = "SOURCE_ROOT"; }; + F6943E7562D614D4D2F687E4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Javascript.h"; path = "../../../../modules/juce_core/javascript/juce_Javascript.h"; sourceTree = "SOURCE_ROOT"; }; + F6F314A674A9535D6425F794 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiDataConcatenator.h"; path = "../../../../modules/juce_audio_devices/native/juce_MidiDataConcatenator.h"; sourceTree = "SOURCE_ROOT"; }; + F7BF997FD40A633D0B519290 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Network.cpp"; path = "../../../../modules/juce_core/native/juce_android_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + F7D557738137CA1A370BAA27 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; + 88B666E3E64434D066937972 = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "JUCE Network Graphics Demo.app"; sourceTree = "BUILT_PRODUCTS_DIR"; }; + F6440E90EC3193EBD07AD3D7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentBuilder.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBuilder.h"; sourceTree = "SOURCE_ROOT"; }; + F70EF841DE659606631FBD20 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Base64.h"; path = "../../../../modules/juce_core/text/juce_Base64.h"; sourceTree = "SOURCE_ROOT"; }; + F756FBC7A6836696BCADD2B4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_formats.mm"; path = "../../../../modules/juce_audio_formats/juce_audio_formats.mm"; sourceTree = "SOURCE_ROOT"; }; + F765D762D0012A1607F5622A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_HyperlinkButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_HyperlinkButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + F80B331AD631D4F77A673691 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BubbleComponent.h"; path = "../../../../modules/juce_gui_basics/misc/juce_BubbleComponent.h"; sourceTree = "SOURCE_ROOT"; }; + F81AAE65A3598A15825E6794 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeParallelogram.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeParallelogram.h"; sourceTree = "SOURCE_ROOT"; }; + F885D9146184104D5D7C05C2 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGL_linux.h"; path = "../../../../modules/juce_opengl/native/juce_OpenGL_linux.h"; sourceTree = "SOURCE_ROOT"; }; + F8D8C58CEDD851E0274B5402 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colours.h"; path = "../../../../modules/juce_graphics/colour/juce_Colours.h"; sourceTree = "SOURCE_ROOT"; }; + F906FBF064A716C5EADF5708 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_VSTPluginFormat.cpp"; path = "../../../../modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + F90875A12DE5F66F7E70CC89 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentAnimator.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentAnimator.h"; sourceTree = "SOURCE_ROOT"; }; + F9668685A98E33554348BEA6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Path.h"; path = "../../../../modules/juce_graphics/geometry/juce_Path.h"; sourceTree = "SOURCE_ROOT"; }; + F9A9B6A4120CCCBBD2057F9B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MD5.cpp"; path = "../../../../modules/juce_cryptography/hashing/juce_MD5.cpp"; sourceTree = "SOURCE_ROOT"; }; + F9E113AE1D2940394B95BC0F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Initialisation.h"; path = "../../../../modules/juce_events/messages/juce_Initialisation.h"; sourceTree = "SOURCE_ROOT"; }; + FA536BA553A2F6EFBB12B3B9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IIRFilter.h"; path = "../../../../modules/juce_audio_basics/effects/juce_IIRFilter.h"; sourceTree = "SOURCE_ROOT"; }; + FACE861A61DE757C5D446CE6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChannelRemappingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ChannelRemappingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + FAF2AB8383B89E9A5AF5E946 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyboardFocusTraverser.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyboardFocusTraverser.h"; sourceTree = "SOURCE_ROOT"; }; + FBC97D6777B3B66837ED4404 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourSelector.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_ColourSelector.cpp"; sourceTree = "SOURCE_ROOT"; }; + FC4C976D76A0B0F932B3188A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ModifierKeys.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_ModifierKeys.h"; sourceTree = "SOURCE_ROOT"; }; + FC4E3F4086054CB8E200F393 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentDragger.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_ComponentDragger.h"; sourceTree = "SOURCE_ROOT"; }; + FC4F3DA26D3500959DF7662A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GZIPCompressorOutputStream.h"; path = "../../../../modules/juce_core/zip/juce_GZIPCompressorOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + FCA5F5B553B92A4A49C3F1EF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SelectedItemSet.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_SelectedItemSet.h"; sourceTree = "SOURCE_ROOT"; }; + FCD17983F05312385F6C17F6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLFrameBuffer.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLFrameBuffer.h"; sourceTree = "SOURCE_ROOT"; }; + FCFEAB9C67D9B7FB03AB51BD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SubregionStream.h"; path = "../../../../modules/juce_core/streams/juce_SubregionStream.h"; sourceTree = "SOURCE_ROOT"; }; + FD28016A7BC2B34138B3C986 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + FD362E3DD7D0ED06015A52CB = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Component.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_Component.cpp"; sourceTree = "SOURCE_ROOT"; }; + FE11EB2D3A4040325E458261 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PopupMenu.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_PopupMenu.cpp"; sourceTree = "SOURCE_ROOT"; }; + FE3080D1EC46C287930B7E18 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MainMenu.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_MainMenu.mm"; sourceTree = "SOURCE_ROOT"; }; + FEF9EF55D1BF28C6A84DE4C0 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemClipboard.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_SystemClipboard.h"; sourceTree = "SOURCE_ROOT"; }; + FF43622B9AAF3751B65DD81B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Toolbar.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Toolbar.cpp"; sourceTree = "SOURCE_ROOT"; }; + FF7509FDC5B23104C7AF1665 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Atomic.h"; path = "../../../../modules/juce_core/memory/juce_Atomic.h"; sourceTree = "SOURCE_ROOT"; }; + FF796B6850F1EE2F18668D06 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedPointer.h"; path = "../../../../modules/juce_core/memory/juce_ScopedPointer.h"; sourceTree = "SOURCE_ROOT"; }; + FFE74EF868B7D7FAA24DE742 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiTouchMapper.h"; path = "../../../../modules/juce_gui_basics/native/juce_MultiTouchMapper.h"; sourceTree = "SOURCE_ROOT"; }; + 5A58AF0A052C539F0E342A88 = {isa = PBXGroup; children = ( + 4FF648D72D6F1A78956CDA1B, + 77C0AC21C1028911123844FC, + 9982F39121710EFFD5FEEAEF, + 8E2F72AFA0CDA64F0C07F105, + 25DEDA8C9F94A6C8DFC8E53E, ); name = Source; sourceTree = ""; }; + 856518502A948813C90E6761 = {isa = PBXGroup; children = ( + 5A58AF0A052C539F0E342A88, + 0ADF0DECFCB1DB4D3A847EB5, ); name = "JUCE Network Graphics Demo"; sourceTree = ""; }; + 403063849E9ABF0AFAA5F77A = {isa = PBXGroup; children = ( + C6BDBA40F172EF384F005E8B, + 3E313B4096468DD5EE551616, + 096BB22B9363BAC781C4668D, + 905451CEDBDE4649B1DFB267, + F36CA213BBF312F093F8C6E7, ); name = buffers; sourceTree = ""; }; + 18CF79E3FDF919020AE9FAD3 = {isa = PBXGroup; children = ( + BC93A86542557AEA4230FBFE, + DEA16225BAB46F055607F766, + 21463097F39306018F8C1FC9, + 05C08B8A9AA77D8F0064467A, + FA536BA553A2F6EFBB12B3B9, + 1070CD5C289E13B829661610, + 48322022C7AD99C881909D7C, + C099D10A0E0F102A8F02A3C8, + D215EF12EACEF7D1CF873FFE, ); name = effects; sourceTree = ""; }; + C14C9964E9305EADA7B6408C = {isa = PBXGroup; children = ( + F5A0AF00BD4B6471D5057B9F, + 9DEFA41E52F11C989DF313BF, + 7A1E8F59B14140851D40DF29, + 912F268EBF0738584F70DE1C, + 7A55E53EC2B5BC85F365A342, + 649BBA6C8D29853266E8D2A2, + EE2712F5383D654D470BA1C1, + 834384DBC61E38E789FD9B7D, + 1A593509B099BCDAFE5303E5, + 000265F702986DE8DD932309, + B99F9693FE694A5A7C9AF194, + 72FD8AC04D2B0BEE1A5E2596, ); name = midi; sourceTree = ""; }; + 535BC18EA5604A8E324D5E7B = {isa = PBXGroup; children = ( + D96D639C9895ADEB144D5E40, + 15EC4D082AC33A2DFBAA8560, + 912AC6CBEC5E7E91609B16C8, + 968CED5FCF62B31D4346DEBD, + 51F0F2EB22A60569E24FB86E, + D656F7818C72485E3ECC50C9, + B047628A6433E2258B11BC10, + 111058D736659E73DB065469, + 2E0625B5D067CE55D4D7F087, + CF5C8009A1AB469B2A3EDAF8, + 13C50C345BB1AE097DE51F8D, + 8CA2DB791512EB0E6AC7F7C2, + E4D3972CA0596447A3C0A5EB, + 5F6DEAB3DA5EF6B9F437C3CF, + CA7D20970FD9BCB45BB5822A, + 7F9E3A2D24D587405B3B5E76, + CD7F6E7854F25672E5340991, + 32D795DD8B6BBBE5450AF17C, ); name = mpe; sourceTree = ""; }; + BCC14FB1DB5AF2D57E552587 = {isa = PBXGroup; children = ( + 902C20CD7DEB18B69F0E1BE7, + 65746338AF0FDE118A3D02C1, + DD6265BDB310A14072805592, + FACE861A61DE757C5D446CE6, + EE77BB1682ABC799703B5972, + D9B8313EC8799E313E1F7948, + D62FB517B25339128E860F9F, + 9C68E54122484FE80D919763, + EA53F7F4674786EB152A2273, + 46CE1F3B0AB174ABD1B4E2AB, + 729F27B2D82EF129C024F3F6, + D56935CBCD13662FDB475D86, + 4A0C286E6CB8D31A8C048A88, + 1377617053AF07B0E571F77B, + C74BED74D8B891801A2EC0FD, + D080322D3DB943F3FAFE56CA, ); name = sources; sourceTree = ""; }; + B1873441490E1D82AFF483A9 = {isa = PBXGroup; children = ( + BA6D9591DBD5CDA91ED632A2, + 1F13AE4603A0990EF106C23D, ); name = synthesisers; sourceTree = ""; }; + 81E8B4FDE23F10677BD70DCD = {isa = PBXGroup; children = ( + 403063849E9ABF0AFAA5F77A, + 18CF79E3FDF919020AE9FAD3, + C14C9964E9305EADA7B6408C, + 535BC18EA5604A8E324D5E7B, + BCC14FB1DB5AF2D57E552587, + B1873441490E1D82AFF483A9, + 3180211C7FFE65342212F8DC, + A23791E205B22F21521DF9F4, ); name = "juce_audio_basics"; sourceTree = ""; }; + 4BEC77BC6E7CFADDDF9B8150 = {isa = PBXGroup; children = ( + A64B09FC5A333C71F069C890, + 0566C8771A3278C82D183A98, + 50E3DBC3F2D136A9A59ED1D8, + 2E03472E7A539A88DE0273A0, + 5C82D0E8AB39B155A987109A, + 0EAE4A004CEB66D275142FCA, + 3913A6C3147F55D7390405B5, ); name = "audio_io"; sourceTree = ""; }; + E59E95D4515B03C9EA7E9340 = {isa = PBXGroup; children = ( + DC9C7030E63CDD457DE54498, + 9E2535830FEEC2462D0A01C0, + C8C33E8254DF7A03B953FF91, + B19456B2F153DD805FB2F660, + 5D17004F2CE0F2DBFDE79EA4, ); name = "midi_io"; sourceTree = ""; }; + DC49ACA858E5F3CF488CE4A0 = {isa = PBXGroup; children = ( + 7F64D580AA191FBC2A74E943, + 8F2FACABB024833B7F932BC5, + 03F0E358E328911FE44415CC, + 666F7A0F487C9974AF12E8A9, ); name = sources; sourceTree = ""; }; + C66C381D76BA1142DA9D14B3 = {isa = PBXGroup; children = ( + A127A78E54490885EA61239C, + 7E9DE536E504F1EDDF5532C3, + EC97D7ABC489A5E1BD7BAF41, ); name = "audio_cd"; sourceTree = ""; }; + 96990D0DA7180EC733377986 = {isa = PBXGroup; children = ( + 25F7E2E0BF7DF2E71648BFFE, + 51FFA102D25322925C454ACD, + EFD1CE8574994B5B6D078FD9, + 1DE819F8D407705C57EACD26, + 008187B05C0B633EE28ABE56, + 4E1AFB1AF80B103D7392B44A, + 251F11F4407E34F0F88AA1A2, + 71894D722D549F75275D3D53, + 4FEBD56CB96D3AE8E963098C, + 1DE2689A8FBB19007E892906, + CB46FEDCD501D06F0B024134, + 99F278EFA35A61B6E2AE1A61, + F6F314A674A9535D6425F794, + C2018A1CDB83486F8EC3CD32, + 085FC01079EE77D52D1ED893, + 84BD8495CE3D747852CB0463, + 5614CF8ACD28587D8E9FC249, + 2B14736595E3FFC604AFBD7C, + 1E206D97A7B91545FE0D27CD, ); name = native; sourceTree = ""; }; + 05C8723D6B99C1C95FA1860E = {isa = PBXGroup; children = ( + 4BEC77BC6E7CFADDDF9B8150, + E59E95D4515B03C9EA7E9340, + DC49ACA858E5F3CF488CE4A0, + C66C381D76BA1142DA9D14B3, + 96990D0DA7180EC733377986, + 9270C4E5EF60DE6108311112, + B8072A5DFFD892216550F18B, ); name = "juce_audio_devices"; sourceTree = ""; }; + 1554E277DE02E3B888375604 = {isa = PBXGroup; children = ( + 282B495AB94F47BD60C7E62F, + 9002A3D1CD5740D9C50A834C, + 5D2856B19DC13C57D70E42DE, + CD5B4BF3641DA629049AF981, + 72F927799B30E12B01E9C00A, + 5F43B58D079ECA063DEFCD0E, + 60DD038BF3685FF524C3A720, + 101637AD0747ECC48982FDAA, + 8784634AAD6079EF097FD751, + B4B9CE9038C38B848A3DEF42, + AD5D3156CBD517EB3835798A, + 2AA07C55625E1ADD22E9A4D5, + B599D417EDB736AB6D22321A, + 806774C77EBD99266FE68583, + A61EAEE68793E336E6F8BCF7, ); name = format; sourceTree = ""; }; + 8B72B48B4486011378022F46 = {isa = PBXGroup; children = ( + 382C1DB36E41E2DEB77B11ED, + 66E12916E12BBC042F715891, + 5484B58D02279CE228079C12, + 6D8A6213F2A881CAD1DE5A7E, + 02B2B5127DF9BF906368E988, + 2DAA78D998963C52C0DC9AC5, + 9271A906B51A234888B79D68, + D9958673B7BFB76E4F815126, + AD18F0927230674E2BF6552A, + B682CF505958CB8A57B4BA2F, + A39FC18F44E512E5047DBB15, + 7CE6320BC8094DB37E65721C, + 8B7B53B20BE2BD10F219B06A, + 01E2D0EC4D596AB94D022EA3, + 2F73502BA5E56A33469D93EC, + 1172DC1C9E21CAAF0C82687D, + 5864A3A4338CCCB6524CE499, + F168A7541EBE16D46968C97D, ); name = codecs; sourceTree = ""; }; + AD3107F336CFB1ECE81D56C6 = {isa = PBXGroup; children = ( + 505B41AE1B6E2B7FF4B0D859, + E26BB7E510E3BEE029962DD3, ); name = sampler; sourceTree = ""; }; + E645944AAADA77E0BF55B753 = {isa = PBXGroup; children = ( + 1554E277DE02E3B888375604, + 8B72B48B4486011378022F46, + AD3107F336CFB1ECE81D56C6, + E325C8811CC4773321407E9B, + 1ED0FAAEFF9D4A6426E76E89, ); name = "juce_audio_formats"; sourceTree = ""; }; + 7BB74D988E491E6D61D92993 = {isa = PBXGroup; children = ( + E8649B16BA011770D16BF051, + 0DB078E2523AD3ABE77A95F6, + 47C8219AACA73B2EBE302A35, + 904D7BEE6279D62983E57DCA, + 3193E205AA627C635FF236E0, + E33B4A0A655F6365B17CE1F4, + 2C3C1AC071BC4252A33CD5AC, + 21DB75038D3D7619DD53E851, + 8A26883DAA6CE47336C86A40, + 21AC48EBF734FA48E43F62BE, + 4A3A8B6069E903B8F0F62DDF, + 87204C5BCC65051CF188DF6D, + D64370EA15694620740DAEF4, + 174350B11E9207B7038E2BFA, + A42479D8A3AE579891E8741A, + 487F7DFCFB0CF15BDFEBD24E, ); name = processors; sourceTree = ""; }; + 7DFB429912E7CFEEA12BA501 = {isa = PBXGroup; children = ( + 6E27EBF864367EBA8B44DFA9, + E45C1684DCDBFD3B76F0B209, + DC50301B6C3FDAE98E224E76, + 9671131059C459A1E119535E, ); name = format; sourceTree = ""; }; + BCF1810AF6CFAC9FA7F520BA = {isa = PBXGroup; children = ( + 3F6BE2A8CAF1C23380D884F5, + 1D153366F6EA459B397CA356, + E44B8F906461AB6AC47B374A, + 914ED3B5EEB409125EADBB2F, + 10D5F9D8D44A252288D19F42, + 7A41A9C37A8BA7EFB6D1F518, + 264B51063F7AA584D23B426E, + 545C5A5F29523968A387FD91, + CE06CB9CD28DE31FA1528DE5, + F906FBF064A716C5EADF5708, + 5B8CE8EC0CEDF800AD5B71E1, ); name = "format_types"; sourceTree = ""; }; + 355D27971E753065A8756A77 = {isa = PBXGroup; children = ( + 9411003BA4D471F2C95269ED, + 4AA0B96439AA013BFDFED0FF, + C30F3519F6ADB14DD19DE1A9, + 3BEA5E0CD39AABEAB92B425E, + BE05CCA102CA2AF18244AD0E, + A6B7388C11968139DFB7F95B, ); name = scanning; sourceTree = ""; }; + CF3502266720B326C5ED5310 = {isa = PBXGroup; children = ( + 1D0F3060DD65B305A1C0E72A, + D7C7D8F1CD5FCCAD941DAB9A, + D432518F3EB9C5C792A50233, + AFE354D63186BB3CF00492E3, + 96664A31FD92DEA43D231D23, + DC3AA6076CA4CFB066F146D2, + 5ED809701F235D958635DACA, + 877FC50B817B57928FD4395C, ); name = utilities; sourceTree = ""; }; + 5102C5BFB76FB218BB512EC7 = {isa = PBXGroup; children = ( + 7BB74D988E491E6D61D92993, + 7DFB429912E7CFEEA12BA501, + BCF1810AF6CFAC9FA7F520BA, + 355D27971E753065A8756A77, + CF3502266720B326C5ED5310, + 9905205B6EDA5FAFA31EA03F, + A94C6EB19B9BF24D83054D60, ); name = "juce_audio_processors"; sourceTree = ""; }; + 3622CFF351CF31035D444625 = {isa = PBXGroup; children = ( + 26DDCC5B563483D67D645398, + 6FDDB32B35EF2BC6C4E353C0, + D3DC14B9B3C655A7E8383209, + 51A7CB5736B53C5EEC163116, + 1F2CA6A50920B655340552D6, + E7230A4CC16B57C93FCE675A, + 5EEA4C0CF28336697C027202, + 1FEF9A01DC5486A9FA1CDF04, + 0186D1FA79D760C30575B900, + 284179F9F53CAA88CAC51B44, + 9ED2DC39AEEFE9E28CF7E7B0, + DDD307F9E18E442E43786B0E, + BE6C77497C8F42747F797BBD, + 181C1A360C01EFF44A3BB18A, ); name = gui; sourceTree = ""; }; + 56DDB21277B7847412918A37 = {isa = PBXGroup; children = ( + E75749124D1F2FD391C01787, + 97188A2D8CC4C0DACC6A4D2F, ); name = players; sourceTree = ""; }; + D8843096A672D4F2E84BA70B = {isa = PBXGroup; children = ( + E78FFEA6B1BE4AD1EE43C60D, + 7B0648C17B0C62706424B080, + 7F23EFF727A93D53C8654687, + B0DD6412314A0666002F9CB5, + 1B9BCCBA7BA4D87454EC8710, ); name = native; sourceTree = ""; }; + 738E94C7871EC777AE05CA28 = {isa = PBXGroup; children = ( + 3622CFF351CF31035D444625, + 56DDB21277B7847412918A37, + D8843096A672D4F2E84BA70B, + 6894C4ABEF5203014A0B665F, + 0C573FF1309CE106DA2D2CF9, ); name = "juce_audio_utils"; sourceTree = ""; }; + 24F1C7CE0BA8B996E80B5383 = {isa = PBXGroup; children = ( + 23F3CBC829C0363C6C760957, + F70EF841DE659606631FBD20, + 0DBCEADB9A04439E66BE176E, + 0B37C06B070C6F069F23A812, + 2931409E5426C745CB3B6EE6, + 579117EBA45C1878DC55FF65, + 999ECAD45309F13369547FDB, + 210B445861AC2BD744D97F6D, + DE66F892ACF4DCAE897F3BE4, + C041D609CA330DE35D88B7EE, + 6BB634F1841C4BCE4775FF8D, + 9AFB00C8011E7902EF67789C, + 7CDAE6FBB85B787E8FA15B0C, + E8B02F47799FC984D3FE1083, + 0679221D71CD972EE07343B5, + 482D7E87F00C2888C2B8FC9E, + 74E60A8C1056FF1D64053A62, + 01641AA0EEDDC5059FC28EF9, + 8EE86B89C69AD4D9A802526D, + EAED7C0A5FFE6D29DD0A0D9A, + E27E9AF73E442C75C0091F8D, + A073692401C6D5C86D77E53C, + 0F98FB16D69403E94F1BB9C7, + B3D45312AB6F986CB3B4051C, ); name = text; sourceTree = ""; }; + C6B0A793A79BB7918A5A2337 = {isa = PBXGroup; children = ( + 1C99350395AE046857697B14, + 6B23639B2FD8C8FCFC241070, + C3538736DEAAF93829AB60A0, + 08CCA1B6C1824CE73281A769, + AC61701F361E5327D6BEEEDD, + 30D2B2F180671715D1CFAD5E, + EA8A250986871A036D42DB94, + 4E451FB3A0D657682324CEED, + 52058B3A331BFA856932EEED, ); name = maths; sourceTree = ""; }; + 167969AC10CCB46C3FB57BD8 = {isa = PBXGroup; children = ( + FF7509FDC5B23104C7AF1665, + 42DA53757E1591ED0395C94E, + 4BE9A59D703E4CA4661252C1, + 9C20682A5F49B7BD2CEC3E2B, + 3601DA62C81D9C4FEB9CAA23, + 042DAFB982DBCB0940DAC979, + 81E803F2EB73BF09CB0CF2DE, + B6B133F816AD44FBFFBF8146, + AB6D9BF527527D3143CAC2A2, + B785E11D273E197A78C90597, + FF796B6850F1EE2F18668D06, + 6DAF8D36A60A6F606DCDBADB, + D05C8EB1FF06FB0A06C39518, + 3957E1F6F24F89D6DCB8829E, ); name = memory; sourceTree = ""; }; + 7A48C4CD434CC8B40E417307 = {isa = PBXGroup; children = ( + 15D277FFB993448CDB52E307, + 10F958EF56CFB17EA747F3B9, + 8EF093827B72F444E74F5682, + A89C8222531A7CBACE054C1A, + B541B5E33CE3B2054B30FF03, + 858198BBDF9BB692E58AB16D, + 61D67AE4149D2EF04BFC2F15, + B14FEADC75BB9C57CF45D850, + 729B6245E3A797878E3F4ADC, + D45979081B92930C507C3B87, + 94F0F55A3456014AA91FE44C, + 3D7BB39A9FCE43D8EAF6B6CD, + 607E088C34B7AB707A5ECE4C, + 600D84E21A1728A803F7BD26, + 3737EA20E16E2ACBFB968CD4, + 1A5086FB7B39D1C8FFAE63D9, + 015F1D2D5F78A62C40AD1B67, + 7414371325D7C8E4ECB043D0, + 51D8A242315E93AECE0D1B0E, + BE65BDFEC645F36487A68F71, + DA768EEF9A95E554F7903B60, ); name = containers; sourceTree = ""; }; + E2522538E4E168520D3AE9E6 = {isa = PBXGroup; children = ( + 11561CA1FD46FA08C2EF0C9E, + 3020CB57085A70221FC0042D, + 9DCB9FE79EDD770E0EC8A370, + B3B317778509714561A5E52F, + EB267F3D6CA06EDB2EB92BBE, + 6F3E59877038096FDA5B28DE, + 1ADD2315C0E364D635A88C2D, + 862A547990420303EBE1C849, + B8D70BA0254864A54E587B21, + B2A4F9CD6F95FB4EECC2FB10, + 55037EF642A280DAC85CE34D, + EE8916C220D09A855BDCB95C, + 6256BA6104CE254172D02804, + 306D2FC4CE156DB61D67C0E0, + B8D0006C486909BB51D8D818, + 64223866AD9D3D69464C198B, + 8AAEBEE37A67A5D01EBA6BB7, + 8FC33441590BA03C2EB5CD63, + C9EF40785DAD416946D6AAE1, + A54E763170141C2FC3BBD197, + 9DF463C5E206ADC98851C78A, + 16A3BFE2C5679BDD49A4F424, ); name = threads; sourceTree = ""; }; + 5287498162903ADA659A8E12 = {isa = PBXGroup; children = ( + BED621A030C4C37B2326EE4A, + 34CAFBB1E014F17C6111C716, + D4C5D7EE1A40AD018E5E6F02, + 724D1A80CA91E8ADB78287BE, + 32E5AD1B0A329492EDB0D49C, + 9D29AC99CA678DE27CAAAE31, ); name = time; sourceTree = ""; }; + 12BF6A615E82605F03493444 = {isa = PBXGroup; children = ( + 890BD2A64C7C25201E20C02F, + 8E32705B99BB15E3586C067C, + 4C816FF16C50AA5C87C8F7D3, + D34AB4BF5DF2B8C181D8D344, + C881040590095369DFB1A19A, + 1989B5707DDA6E738FAABBD0, + 6E41B744374D33094F868FF3, + DCB2FAD653F074F08A916315, + 1AFAD88BA98AA530A435A680, + 08F0F20CA590351DD32B176E, + 01F6751F1A5EC2C9578F9D65, + 75CBB4C7E9CBA8B36FA40FB8, + 5D9CB6E9C215ED15E30B685C, + 5C5FBFC0D457D62BDC602F17, + 74D4B2EEC36940893BF7AC25, + 09802FE2689EB8288E554B4B, + 08EF9C1A184B049FA45DF95F, ); name = files; sourceTree = ""; }; + 5EFEFD2A4E3AAB61D642FFE8 = {isa = PBXGroup; children = ( + 621893AE2A99F8D4331194AD, + DC4E35EEAF01C08CFC4A4CAC, + 95139F961E2C7FB6421D04A5, + A6AC587CC82C4689D4C0D90E, + 4B2D5FBEF56C3D584E65D9AD, + 04609F32D6A859ED385DCBE6, + B4E70AE3447587BABF51A076, + 2AAA2414F61ABBBF1C571901, + 8FD227DE98DB156FBBC8DD1D, + 90348A625874E8DD3DCBF583, ); name = network; sourceTree = ""; }; + 72CEB8F82E75A1CFB00029A5 = {isa = PBXGroup; children = ( + E4546F8D14174EB8C05A47C3, + BAE421BF414A8713DC446E10, + E428D9BEA0B66A12448F3649, + F4825162600591FAF2F1F79E, + 60DC6B904E0A0ED7D5BACBD3, + 30B528362C388E5B51DF91D6, + D1CA4E7E20D80D0AC1614F98, + 357FB6126252FB4FC7551A59, + B594FC49609DB3E2CF3DCB0C, + C26C5CA5E6514CF7457B1ACB, + DE42EED0A04BB9F90D623BAF, + C0C7CB3229B2E54FFB785CA6, + 2253863C60C8AAB3DBA4B5F1, + 861F5C579BDAA33718FFE9CA, + FCFEAB9C67D9B7FB03AB51BD, ); name = streams; sourceTree = ""; }; + 1CE1CE477EC30641FD179C4A = {isa = PBXGroup; children = ( + 7E79FB8A1C88684D9961874F, + 2ACEBF748334BD2B0CBAE26E, + CC04871FDDC918BBD27FBA04, + B32E8849197AC0716AF288A3, ); name = logging; sourceTree = ""; }; + 2D1E53D6474EF042D74F7EB1 = {isa = PBXGroup; children = ( + 0F26080D0E46879414836AE2, + 01A0FE7CE574B63A82297143, + F13FB76427772F29EAD88728, + C41176B7A1D16BC5C67A5727, + 5DC79394D56549821815B376, + 2A10DFB3A22E8AABF4763F68, ); name = system; sourceTree = ""; }; + B639BECD83CD833126B067A3 = {isa = PBXGroup; children = ( + 50385CBC88D67EF57CBAF9F6, + D0E00FC62C3DA68962100AD6, + A8F0A5C9A372D5C57033B581, + D65C8F172D8C1FD532B67348, ); name = xml; sourceTree = ""; }; + AD49AC0FCF415EB54E2E0633 = {isa = PBXGroup; children = ( + 43BE50DA24ABCAF9183FC535, + F6943E7562D614D4D2F687E4, + E74B5E2C22C81CA99C9CB473, + B37C746F12C8413EA4DF8157, ); name = javascript; sourceTree = ""; }; + 3337230947C52C4E45CDDA71 = {isa = PBXGroup; children = ( + 777AA662407B7A91748C92A8, + FC4F3DA26D3500959DF7662A, + 1EE2B1FB37648506A369D269, + 8F9E95F991B215FFDD3F8E9B, + 10E1C3C331DF35D35508268B, + AABBDC405E85A02000A3991B, ); name = zip; sourceTree = ""; }; + 1008A5ADA2C02169D7BD422F = {isa = PBXGroup; children = ( + C938DCCA334DE363B27C1E65, + F163668D4C2343C282574A78, ); name = "unit_tests"; sourceTree = ""; }; + 2D72BF9EB6B50E02583A57E9 = {isa = PBXGroup; children = ( + 9CAA1BFBE6B44233E6F1247E, + 3481CFA2138FAF27F8514E06, + BCDFDFFF924A8FDF40B82990, + 837FC46135954E8144A996FD, + 3F02521692ADDB7FFD0453AE, ); name = misc; sourceTree = ""; }; + C4BEFC49CBCE656D666CCC90 = {isa = PBXGroup; children = ( + AC2F6510662AD5D52E367FB8, + 174E22634C4ADC7062948B9D, + 8680FB438DEC3B3994B6CB9D, + F7BF997FD40A633D0B519290, + BFD53A594929B7CC58D46BCF, + 9D2C7F9E1E4B1A96183E2B32, + 9813552533EFFAACD0F7E1EC, + 7FDAFC6129A0497C57648A8C, + 0C58D2236F902CCD34EA4FCA, + 89A8ED7F8AF435841DFC5279, + 8F1630E85F43E88E4A40C2B1, + 1B4E025E8860D906F0ABA692, + 3234FA3655EA51C78D5E2D87, + E89452B0110096760B06397C, + 3F7FA0D8E610BE1172D0CC6E, + 42AA82D963C53D81EC596A0A, + 4AA5C3A1B7202460820F4017, + 24FD7D015B6C46BDFC98E2DE, + DB5365D435396965FC3974BC, + 2FB4483EADD06BB5F6BFC110, + 5CCB6DBE5D69271176CD9603, + 8C19D0C6E404A67C74D07A9F, + 7E7E7B2174155F2FA49E3E56, + 6EF18D083B3FAC255D719DA6, + C7E1D706A09E4E96883215BC, + 54358D8A9A8DE6AF4F781E8B, + 489FD44544F03774CBFA04E5, + B8D9A7FDB054852EF59BF4AE, ); name = native; sourceTree = ""; }; + F7B521C7EB8A7EFC4DE2AD31 = {isa = PBXGroup; children = ( + 24F1C7CE0BA8B996E80B5383, + C6B0A793A79BB7918A5A2337, + 167969AC10CCB46C3FB57BD8, + 7A48C4CD434CC8B40E417307, + E2522538E4E168520D3AE9E6, + 5287498162903ADA659A8E12, + 12BF6A615E82605F03493444, + 5EFEFD2A4E3AAB61D642FFE8, + 72CEB8F82E75A1CFB00029A5, + 1CE1CE477EC30641FD179C4A, + 2D1E53D6474EF042D74F7EB1, + B639BECD83CD833126B067A3, + AD49AC0FCF415EB54E2E0633, + 3337230947C52C4E45CDDA71, + 1008A5ADA2C02169D7BD422F, + 2D72BF9EB6B50E02583A57E9, + C4BEFC49CBCE656D666CCC90, + EF43908046753F20507CC3B0, + 5AAF6FD01A8ACE63E3FAEA56, ); name = "juce_core"; sourceTree = ""; }; + 83E7F8F4C0F653DE37DD0D26 = {isa = PBXGroup; children = ( + C7373F24FD2E886C50CB3903, + 268EAE33422B585DF545499A, + 84E76068048CB52123545F7B, + 6367B5EA6602CD73063A481A, + BDC7D9A7A14232DD7BBCB123, + 4C0B3826ABACE371F8681E61, ); name = encryption; sourceTree = ""; }; + 07E8C0ED0D5A016CCB79D6E7 = {isa = PBXGroup; children = ( + F9A9B6A4120CCCBBD2057F9B, + F22EB69681485A38365940DD, + 17CBE6045D10290C77948F0C, + 42248B6AB06E8D01893DBDB8, + 20193027F5E90E62F44027B0, + 9069DC6DF609DE1E4A57DA7F, ); name = hashing; sourceTree = ""; }; + 7C749B953A62BB34443CEA51 = {isa = PBXGroup; children = ( + 83E7F8F4C0F653DE37DD0D26, + 07E8C0ED0D5A016CCB79D6E7, + 23EC7FFD41859C9725D21B16, + 53AB900649E4156D953DB1CA, ); name = "juce_cryptography"; sourceTree = ""; }; + 0C891309AA75AF8EAD3F2410 = {isa = PBXGroup; children = ( + 1140A39FF348973EE6F372CB, + F39E719901F12B16AD7D600C, + BB3265EFC32ADB68A59A90CF, + 991A179EF480F6B3049D0CE2, + 4D3007B3F8AECBDB658F7259, + 82B25B30D756F75BDFDBBCD0, ); name = values; sourceTree = ""; }; + DB9E03F1DD7B48E3C0F38481 = {isa = PBXGroup; children = ( + 7C4111F98C8023097C14C138, + 60D9E4052C3FFFA026BB35C6, + D7F183070EDA8D6D7659BDA1, ); name = undomanager; sourceTree = ""; }; + 168252DC2B6D85C5D9B3C71D = {isa = PBXGroup; children = ( + 4F742E04B5AD194395A593C0, + 8DFA74E13F6E40A5B1C09C11, + D9FC957CB510399786D69D8D, + BDFEE2E6B40F3E47E3B16D38, ); name = "app_properties"; sourceTree = ""; }; + FF81165C6DC0BE3D7DDDDB3C = {isa = PBXGroup; children = ( + 0C891309AA75AF8EAD3F2410, + DB9E03F1DD7B48E3C0F38481, + 168252DC2B6D85C5D9B3C71D, + DC76782D8BA40A4CA365C279, + AC98912B3226C0D29B0C8861, ); name = "juce_data_structures"; sourceTree = ""; }; + 21928033EBAEE82B66D3F9F4 = {isa = PBXGroup; children = ( + E526AF80946C3F077C1C63C6, + 09532D678D2C41FEFACA71F3, + DCE64BC49FFC96654D30AD87, + C92F4F51EC54B859EAB7F09D, + CBE595558B9038547D418CEE, + F9E113AE1D2940394B95BC0F, + D0436D71AD541BF93E0585DB, + 56D6FF1634AE7B4B4B6AC323, + 3A132DEDF59503D8AEE2E1F8, + 445C1F432C6144BD2F6D3327, + EF337D9B43E0569DE3E48279, + 5016A40C1850BBD55197D30E, + 1AB81EC2CA06F18202F3049B, ); name = messages; sourceTree = ""; }; + BD202CDEBCAA90F124416FB7 = {isa = PBXGroup; children = ( + E540A462EBB080CF14B31764, + 9EEF2A75EDD5E8023F9AD6B0, + EE6895EE5020998469F17433, + C6CCDF5390C72C6C37F3446D, ); name = timers; sourceTree = ""; }; + 42068D6B4354DC77F34701E0 = {isa = PBXGroup; children = ( + 4E1C2B9C5692A96700C1A898, + 9F49BF4440F09115117F9615, + 5A26430C3B39E428B483F11D, + D88DBC78062ECA21D18C1D7C, + 3DD9BA50041192D1F28D87CC, + F57531462BB169A5F0224ADE, + C536B42EF0D28435B6410AC9, + 80D63910D7196D7DF849A239, ); name = broadcasters; sourceTree = ""; }; + 443BF89F57F585ED86F2ADA5 = {isa = PBXGroup; children = ( + 1F52A06FB3A565B54144FD8A, + 333E5AB794D5FC5A798A285C, + F540CB77351EAEFC2B3D05CA, + 208B3803558F7BECB0A0AA42, + 6821655BB8883B9A421666C3, + 1F999582FEA88311EC2EBF27, ); name = interprocess; sourceTree = ""; }; + 20360E9243409D2FA6F5E8B0 = {isa = PBXGroup; children = ( + B576434956BD89F0B571B6C4, + BB9242FB689B4DAEDF1963BE, + AB26977EA68E27838B54A8E4, + 15FB19A9D4DE60608E5E123A, + B060C1B4985F4D6071C6C1F5, + 001CA7EAF68DA335025FF01E, + CB3DD188BB8AAB1931436CD4, + DFC37DEA417DA0FC812FDAC2, ); name = native; sourceTree = ""; }; + 194518F009569975413BBA1F = {isa = PBXGroup; children = ( + 21928033EBAEE82B66D3F9F4, + BD202CDEBCAA90F124416FB7, + 42068D6B4354DC77F34701E0, + 443BF89F57F585ED86F2ADA5, + 20360E9243409D2FA6F5E8B0, + D697C54442250F5A720D2CBF, + 3BAA4C5AFD5E6AE8B7447E17, ); name = "juce_events"; sourceTree = ""; }; + DE5FE5E5C0261E389C091E12 = {isa = PBXGroup; children = ( + 61F74754A7B5F0BD930A51DD, + B42577EBD62A6AF7AC97DAF1, + 472EB91AAAB000217017E8EF, + F5A991062FE0EEEFE0CAAC17, + D7ECFEB15046C60EAACA0F54, + F8D8C58CEDD851E0274B5402, + 36DB2BF91B5D3D8462CB4AD5, + 27A192427FAA8C466F9D8EB2, + A210326040D3F2A40B2B9D15, ); name = colour; sourceTree = ""; }; + 312F6818F7C175E16EFA49E6 = {isa = PBXGroup; children = ( + 7D5322C5D58C267F5FC815B1, + 783AF1428118CFF4B105487B, + 7319C1AFC4D882F649320DDB, + 289B6067D3B3FED5F7A64AB6, + BBE01A9C5FD8C0656AEA9D3C, + AE6120B318B44C69CEDA6321, + A198E2290B15C62F68D21050, ); name = contexts; sourceTree = ""; }; + 0CFBDBCAC210067B8B49D659 = {isa = PBXGroup; children = ( + 965402AAAAF0A0D920DC7C36, + A55309C54076A01EA57315CE, + 5A2B63BC2433F17DB96CC411, + 3320CAFB079DBFED7E79D33E, + 276FBDD27027CDB3CDE7A1C3, + 21530C9C69B792CA80BE9398, + 3B92F7E81BAB71A0460668E6, + EA65F835FDB1DB86406C9471, ); name = images; sourceTree = ""; }; + 18A16F44D68A4E1E3545E4B8 = {isa = PBXGroup; children = ( + 39E116DC12FD26E3DB3F4DFA, + 8C2A93223809C1EFD6D7C404, + 9D05F58F8CE58D9D6952BF1D, ); name = "image_formats"; sourceTree = ""; }; + 9F785FD816CB0B5C3B2C3113 = {isa = PBXGroup; children = ( + 1296A96AEE50FD66957B71C1, + CF1F536ECAA15F7AF8B20746, + 4292602AC091358A3439FE9F, + 28861D0EC5C396B9FFCFF1B3, + 79C9759DA5A25C1D53AC2E93, + 70736236C82A9ACE63DB3D3D, + 9A39BF4B65A5B6A66D84F232, + F9668685A98E33554348BEA6, + 709EB992B73BB302F0D9FC8F, + 648610AB6A110B1ACD64CDAE, + 201270E933BAEFC855FF02FF, + 0402044CF4F834C138AA337F, + 2D4E5BBC19F41BB8512E5E03, + 6EA97857D017530AE58ECA66, + 672780D824A4CAD951DBB29B, ); name = geometry; sourceTree = ""; }; + 7A3AD3D13991794B6B51DD9A = {isa = PBXGroup; children = ( + B18369F3EF227348BAECC29F, + F3472E21D095DB91ADE8D714, + C56022F99B8FB808D00CE6D7, ); name = placement; sourceTree = ""; }; + 4A6A14045BB393F2E063EDDF = {isa = PBXGroup; children = ( + 5B59DE0C6545CCC3FA26750E, + 99FC512DFBE57AAC3894FC20, + 98C797055FB6A630BD2AF26B, + D34F5512C192C172CCC479F7, + 98FE786D6DCAA1F39D0428E4, + D5313BED337DBBC9A1F7D9CB, + 82A654CA5A700A19A9A673BC, + 9BB341CFFB496948D5E9A16E, + 2FAFDCAFBC5054B61699B4F0, + CF6BAD445F116D03D5AC2E69, + 944B844043D0815614FD4CFD, + 8AADBD01ED8B177F160939D3, ); name = fonts; sourceTree = ""; }; + 7AE62EF9190681EC903809C5 = {isa = PBXGroup; children = ( + 000EA162E25BC873954A9E48, + E41A33EB67E7E190A88A3AD3, + B1FD722E367F8B48B2C8F658, + 24711D9742CB31F36F71A36E, + 85D61362BF185DA51B00E00E, ); name = effects; sourceTree = ""; }; + 9D5DD150F3EAB90686880331 = {isa = PBXGroup; children = ( + B97A4BE39BF95F50E67A4683, + A1AF1E8ADB16AE21785390F5, + DCA560DA0C66BB6D6EA92500, + 2B27A56579939EAD06DD6061, + E07D1F3E8D8727F58F868B90, + 8621C4BB5D591743A1B86697, + 0456E3F8B40732E545A844CC, + C1688DC3A2F892F53F8F15DE, + E74DA5EF2C208608AF676212, + AF81BE7F88B9B754A9005DC0, + AE358D496192BAED93263F83, + 758A85BA2A15681252AAC852, + A6AFC4953E324CC5163256E6, ); name = native; sourceTree = ""; }; + 02D2BF1071BA036B1046217F = {isa = PBXGroup; children = ( + DE5FE5E5C0261E389C091E12, + 312F6818F7C175E16EFA49E6, + 0CFBDBCAC210067B8B49D659, + 18A16F44D68A4E1E3545E4B8, + 9F785FD816CB0B5C3B2C3113, + 7A3AD3D13991794B6B51DD9A, + 4A6A14045BB393F2E063EDDF, + 7AE62EF9190681EC903809C5, + 9D5DD150F3EAB90686880331, + 5794F3D9DC292B1603244735, + 0CFDFC8B0EE4F67F3140A95E, ); name = "juce_graphics"; sourceTree = ""; }; + DE106FCD14E351677236CC4A = {isa = PBXGroup; children = ( + 2DAF843B2C0DA27E8741E080, + FD362E3DD7D0ED06015A52CB, + 94363B04A83DFC9C02B023DE, + F31752A999520E521BC507D1, + B77EBFED3A56358BE8599594, + 43BEA6B7451F512AC9B1ED38, + 429925ABEF514DEDE33BF925, + D2C6697A783580EE58B2C5EF, + 91B931E774E4401630F74EE7, ); name = components; sourceTree = ""; }; + EAFD1F880E6790F3DFC2A32E = {isa = PBXGroup; children = ( + 5A99F85A02CACE2773FAF4AA, + FC4E3F4086054CB8E200F393, + 1197F204437B7E10650C45C9, + B2C692D20C6190AC831ED780, + 3F0618824A11684059926E73, + 13E0FBE11F1B5028F51D4A83, + 592C559B3CB1579907BC6452, + 9B88C701BE205AEB33ACC5FB, + BE92FB177CE8690F02DDCDCA, + 32053E605C421DA9F9C406BA, + 6F9461C9816AF7B764F73FC9, + E0069A75C60B6ECB8E8CBFDD, + 6BA526E7009CAA47F22B2FC3, + 883F407DDE5464DEC7ED1634, + 561DC7B5329A4719A85FB37E, + B7FC671CAA2FB61FA45FF25D, + 1199999650BF539117869187, + FCA5F5B553B92A4A49C3F1EF, + 6C42AAE33B1F86E496AA352C, + C00042157AE4788F1B7DD087, ); name = mouse; sourceTree = ""; }; + 2AA0EAA4D18373DEBC82DAF8 = {isa = PBXGroup; children = ( + BAC4FD0C99CEBD2133F79C24, + 1A5E7683202DE3D3B911F9C8, + EF8BAD426428948862257FC4, + FAF2AB8383B89E9A5AF5E946, + A42F8BC3DE25F1CC15D383E0, + DC15808BB97E1521C055A470, + E8DE188896E5791E338D4EE7, + C790F51988B04C4A38A737EE, + C1E7A30EDB756EF33710AB4C, + FC4C976D76A0B0F932B3188A, + FEF9EF55D1BF28C6A84DE4C0, + 2E551D5175FA94E0FFBF08F4, + 56FA5F3ABA3B0278767C107B, ); name = keyboard; sourceTree = ""; }; + FF93C45FC8A8E8F4935C575E = {isa = PBXGroup; children = ( + 1C36397644AEF2DC1576C3A6, + 0DA4C3278F6482DB3E59D9BA, + 2368F4F33C1FA1F250C0606C, + B700A20AB7FA4833FBE9FAF2, + E6526B2FBE4F9F3DF819A030, + 9AB6DA2CD6FC85ABC73DCA8C, + D8B377D58489B765A9369335, + 3EBDD668B2AAF5F5159D68F2, + B96670417A0708508B971C58, + 12F6DB893E5757C9F3D00F0D, + 67321193997802F731C9F3C8, + 06E0E9069EB3A4DED12A83DD, + 1D58402ABF05B2EF162769C7, + 14527382440E68E3F0EB8198, + 5E043C5F2F280FC934592EDD, + AD3AD8A8258B52524F9FD249, + 1D68D7036540404EFB82B35D, + 9E7319BC97DD7609E51BA8E6, + FF43622B9AAF3751B65DD81B, + 8A791C2E9E31061FB1114D0C, + B84FF21D1349C565A604B4D2, + 280CB58A46300BC229661DD6, + D93778DB7CCB4B438A59D8AB, + B0D4F13DF0278D8722F7C4B8, + BB422B25F3D67420F1A7A27C, + D9064DA71018E0FB2C02BD3B, + E4D861851BBC388FE4CB5DFA, ); name = widgets; sourceTree = ""; }; + 7E08533D7B37AC3A130E8033 = {isa = PBXGroup; children = ( + AB7E120B33CE6C4EA5AE1C03, + 9ABB34DD0089D3C1B2CB0448, + A93241AAFC2CA466E7F61D68, + 8034DEB0DE55C62EE0B5D2FB, + 1BFF9FF8A046E614580B8B78, + B4179816650495DEE17116FF, + 9473F75E32710D282051D93C, + 3FD16FE28FD9ABF22F0FF744, + 4A21D36388A0B6D9543A244D, + 874BD8915F9FC9EAF09AFB87, + A61D17AF31E2326EDA285C22, + C378389E66043AAF139C6426, + 334E1EA595F4B89AB02E1D2E, + 092152EAB569DB7795FD7B2F, + 6BE69871BE4A865ABF84BC7E, + C8E5F60ED66385553547961E, + CC8C5C667CA1A6EBAA1323E4, + 6ED2FF75E5F98253AA1C287F, + 0AD627D1D2B082D09E1AA078, ); name = windows; sourceTree = ""; }; + 73383E801888C9D719E5D2CD = {isa = PBXGroup; children = ( + BB7CA26CF4540A535BE229CA, + 8BD1742DEA98185FA7ED4152, + A84DBA7DBC8FBEA5740CB026, + 14340FB465ADE55CB3E9B66A, + FE11EB2D3A4040325E458261, + 7B441C4B6CF9473676EA3610, ); name = menus; sourceTree = ""; }; + C30EF995A31EC08218367298 = {isa = PBXGroup; children = ( + 097E290A4679C103208EF789, + C8A38D75BD930F3CC7634124, + 26407477D58D92220A6AA6E8, + F90875A12DE5F66F7E70CC89, + 1ADEA6673C57B57FC0BBCD04, + 3FCD20ECBA1032D55D90DAF9, + 546BB53FC47D83869F8DDCE9, + F6440E90EC3193EBD07AD3D7, + 2669CC5C7AE7A916B5F5CF89, + A7198BFD9B0CC598BD50B587, + E368DF5C372BB7CCE82DC763, + 58B4452DE10C4ABF8D8DC7EB, + 2ABA2A324D752641AD2EA84D, + 42203A96B0F67E68EDB0939E, + 864DAFF59D56AC67F7BE6F77, + 83E38E7D0548FCDF7B150F22, + 2AF3F242C6AE6B81BEA684EE, + B35603E21B57E534616F599B, + C78105C8AEE452AED0700AAC, + 91BDECC58244D65FC321A8E8, + 03CD52285663EB462E66AEDE, + D8E594FED69859E740E91543, + 877CA42D199DE2C3C4EF58A9, + AF7E3E7137C6F49674649968, + 9801E411857A072092954171, + D79506405903905814D5B32B, + 8745ACE2C81BA9685BF99233, + 029E06243E22D19B62C7FAC4, + C18944C7BB1D9143312BE3A7, + 75636F75113CD1ABF8B01F08, + 6E01440F1FACE2977203A70B, + 74C15BFC6E036DE767574778, + 971B377F39D4CAFA77AB790C, + 95738AF2EAF17A2FA9B8E069, + 035144F9C35671488A15E9F6, + 678B3B27F695152D396C09A3, ); name = layout; sourceTree = ""; }; + 1912E5DD1B0D040510925205 = {isa = PBXGroup; children = ( + 3CFD6B00875759345575ECFD, + 03C5EFBEA606B1857E2E7E70, + ECD46DBA26680A8F86569C2E, + 35E9781C54B1729BDD73DEC9, + 61F3AAB84249F782A56E88A2, + 3121B99F19132789145FDF58, + F765D762D0012A1607F5622A, + 13A6B8661E1D605FCD86F1E0, + 82CF205CD196BF77B68EA75A, + 8AF3D4A8845EBB742E3F521C, + 096F493E855364B082CA966C, + 3153401B1C69B651D2AD37E5, + 5C9AF08626A44F2AF6783A53, + 1AC73EEBD03A5926652CB682, + 22A9BA274F3AD6FAF4331D11, + 5DBA889C8116242666F3C93B, + 63DB40AFD30CEFB03779AB79, + 665FF99D0D1BF3755FE7B803, ); name = buttons; sourceTree = ""; }; + A44CD4C37170EFD44180E7D6 = {isa = PBXGroup; children = ( + 5A1C17DCA88F1D02ED5F401F, + 123CEDA734678EE95C34463D, + A118AD624CE30228686D51F3, + 00B6967A854897C9D379AAF4, + 6B59A53C3FB3B4462A5E10D0, + 648E0A0D55BE1D012C1D89B1, + 150135E20D3B4547F1B8A76F, + F81AAE65A3598A15825E6794, + 4D5112F69E06189A9318A69F, + A15770CD33E47FF114451904, + CCA843C191E1EC761E0C4B1B, + 382D4767A626A3D30826EE1B, + 82B807E750DB47D6FA6AA5F8, + 48EBF61EDF71322807F5AF4E, ); name = positioning; sourceTree = ""; }; + DCA8D2B60E2A3630B372680A = {isa = PBXGroup; children = ( + 4E8939ACD0CB224ABD3B3C00, + 57C8BBE1EFA839C458DEF2F6, + 9817FEEE6C1D99BCE7DB2395, + D15B6AC0F49F8BAAAF71FDF6, + 40178653E67E3C6585653D38, + C10AF8B74E855D60A481CBD4, + C4D626F9CEE1FD851551D91C, + A1F1F469B33048DD0609E02E, + 4006D8A53AC91D81816BF576, + AE20126D491A4FD52D059EFB, + 02181D9B5A755E385CD47FD2, + 8924F9B3C5A5EF7B9771465F, + 39F7F18157821A256E23B868, + 77234EEA6FC39172D3B4B455, + EF805FA4F575DBCAF69C1AE4, ); name = drawables; sourceTree = ""; }; + 35A6E785E6B623A66F7FEF46 = {isa = PBXGroup; children = ( + 4533B1E6786C588EEB5F17F1, + 2C8DB3B21316CF58A088AE4B, + 80B9B913DD55B0BD215AEC86, + ECB67354113361CDADA77BC6, + 57134B5B764CAAAEA07C56CE, + 1A89B025B5C028C536ED4A8F, + FD28016A7BC2B34138B3C986, + 27B46B69A1381640C0C14CF6, + 8D32D3B412213EC3153588E0, + D380F5AED297C4D7BE55911C, + 357921A7E994C213A2D768DE, + DDD38519DCDDE8BDE8AC092B, + 4D823926C18ED8ABD95035DB, + B7DA793390976975B7967E54, ); name = properties; sourceTree = ""; }; + 98C025B3DB9871C4A016D3D9 = {isa = PBXGroup; children = ( + 140159E9C38C975949494E5C, + DCE5AE0A528365094776BE17, + 047CB008052CCD126633FB9B, + 05FD1A2AE03215E9DF92132F, + EB990950081504EBD067FF9A, + 48A798B2097EF59A8A53F1F5, + F1AEC47949E75A0B4DBEA130, + CCCF7AA714938B03DE4407FA, ); name = lookandfeel; sourceTree = ""; }; + CA4B62998A983A5AE6AFE0F9 = {isa = PBXGroup; children = ( + 9808FC8EBDD993802B13E360, + 489251CA8BE0CA79BA247455, + CB0FCCF91CA21CA88D295932, + 8B73B43B30D1235C6F6C7472, + 918EAFFF65C0EBD273295D56, + 67706504E1E1E19B61E90903, + A6A0A10D492CB91AF88BCDCB, + A4C7C1D626E8F444FE84674C, + B94E7B4E08D0CE7D4B3AA470, + 9935025CC78B291623780878, + 1204FCBC82EA38A9512D0D81, + 0C487F069E493BF67537758A, + 4AB7557F71EB918F70B15F49, + D7D3D13E56861B7937B08EFF, + 78EB35E34BA8673695F92D6B, + 057E2AFB89FF0CF0CAA013AF, + 6B7EA4C617C2C129210C7F76, + E04A8F9E8B767CC682430498, + 27BC9669BDAA9F041FC21837, + 5BA3B4D0018FA0D5C976CA3E, + 4B73A2599617EEF450ACABAC, + 35A404D8F4164D65C3E4DCC4, ); name = filebrowser; sourceTree = ""; }; + 78416A0B2F412465845BA10F = {isa = PBXGroup; children = ( + CD3D15787DE0633AF0F41D14, + 14B4A539EBA209BC22B91F76, + A9FE7AE10A02329F18BAF8BB, + 11FC5BF4D4CE5451BA651132, + 0DD52BE61E4DCA9575F5649F, + A4A507E78D1082DF5EDA723E, + 5127ACB1400962FB70BF6D07, + 53F664A2A3FE1983E183A431, + 1A25D684574EDD045683D4E8, ); name = commands; sourceTree = ""; }; + EF2D0AF0B8A4EF73BDE12526 = {isa = PBXGroup; children = ( + 56E7EE3C43947842BB8BDC1A, + F80B331AD631D4F77A673691, + 3F05E519F0B0931CE0347455, + 0BAD16A58A9CBB0A2FC3C273, ); name = misc; sourceTree = ""; }; + 5FAD6E8C8995E6BB704305CF = {isa = PBXGroup; children = ( + 5BDA528B96063067AFD59CBB, + 0833B2844B74E56A7F375B99, ); name = application; sourceTree = ""; }; + D0B902078808A11AB68BCA1A = {isa = PBXGroup; children = ( + 051B1F5CA25863E123C662B0, + 82073AD531BE1009AE92477D, + 795FF599087653F77C7E98D2, + D4C20B86C7B0A9FFBCA8FE6B, + DF0C3025BC5B572CC28B8EEB, + C9A02E17EA16F69B823F9964, + 271E9E19BDC24378E6E73175, + A8A0AF041F30CB7F45D2FF47, + FE3080D1EC46C287930B7E18, + A5360675341F06F73AF96D1E, + 54E5C8F4F9BF6B8228482AD3, + BE28C3777F5A468E4BE1596B, + FFE74EF868B7D7FAA24DE742, + BA93F94CB1FC135E6F8D8910, + 5C2B9D77C8CEB8A1F6C121E1, + 94C3811F389418A6C4304554, ); name = native; sourceTree = ""; }; + A8198033A6100EDB28E54475 = {isa = PBXGroup; children = ( + DE106FCD14E351677236CC4A, + EAFD1F880E6790F3DFC2A32E, + 2AA0EAA4D18373DEBC82DAF8, + FF93C45FC8A8E8F4935C575E, + 7E08533D7B37AC3A130E8033, + 73383E801888C9D719E5D2CD, + C30EF995A31EC08218367298, + 1912E5DD1B0D040510925205, + A44CD4C37170EFD44180E7D6, + DCA8D2B60E2A3630B372680A, + 35A6E785E6B623A66F7FEF46, + 98C025B3DB9871C4A016D3D9, + CA4B62998A983A5AE6AFE0F9, + 78416A0B2F412465845BA10F, + EF2D0AF0B8A4EF73BDE12526, + 5FAD6E8C8995E6BB704305CF, + D0B902078808A11AB68BCA1A, + D01F1E62E142AEF92EFEF9A0, + 7FC7D527EA3B088288F8DA36, ); name = "juce_gui_basics"; sourceTree = ""; }; + 676457E043CCB749AD9C996E = {isa = PBXGroup; children = ( + 84DFB13BE79A86FC987A63C7, + B5612B7C73B7C8313932225C, + 06753930A82DF7E1BF429914, + 2A77EE2209FDF066386F30AD, + DEB62073956FBC23B33C3215, + A032B47E0B1DFE6656768078, + 0368A590FC29803595DF7D62, + 03CA60ABCF619E81CB165C97, + 1F3F5EE19B8CA78D9513AD94, + 8EF118DED70F115DEF3DB6AE, + 3AE3D7A50A8D7F598DB6F0AE, + 46D4E162A4C937BBFE26584A, ); name = "code_editor"; sourceTree = ""; }; + 4AB036697A8FC010D6FBA0B0 = {isa = PBXGroup; children = ( + 67701BB0717F9CBA6772BC42, + 7BF4C9B621AF133163D15675, ); name = documents; sourceTree = ""; }; + 961FD846C95FA83CB96E0E3E = {isa = PBXGroup; children = ( + 66EA0A2E6DCB92EB7CE24516, + A34D1DA226DFFEACE090BD72, + F199EA5517B054547E193F08, ); name = embedding; sourceTree = ""; }; + 57B905251571D00290681E12 = {isa = PBXGroup; children = ( + 58B5DEFABBF903630496C479, + 6110B87158ED828E5F9C8FA4, + 3235BA8BC4542F69C66DF218, + 63E2478C4D365C034FAEF66B, + B82B3B2DA336D3591A73280F, + FBC97D6777B3B66837ED4404, + 69995C9ACA8B57DDB8E49495, + 0A4955566797EBA0ECE56806, + D8E43470409EC218DC96B555, + ED2D3A163433149267F3C47D, + F4ED9D3E27226B0974BEC563, + 9247A389C11552FA21BAB71F, + 4A167D0C24B56DA19E2B0722, + E614AF9C124E2CEE229954DA, + 000DAE49A15BE8D4DA5ADA8E, + 6D584871C4325DBC6FA689A7, + DB85BDB1DF720391F80F0D94, + E0F302E28F1CA85EE2A60BEB, + 5BF77AE97FE5C121B30358AF, + 3E69925DB6558BBAEE5EB41B, ); name = misc; sourceTree = ""; }; + 34B0FDBBF6879DC73A0B59BD = {isa = PBXGroup; children = ( + D1696F4E539DDB4D7423051C, + 49EEE3FAA41505E20A1587BB, + 74A4500C4809EFB73D5FA36C, + CD63DD73C9818BDF67BF9828, + DE508CE9EE6F6AFC689CDA33, + 6F4CD56079CABCB8F4FBA0D2, + 60E6823DF3335C4F4A2B4A09, + 689962387B441B1770B53D6C, + A38836ADAE0113CFA40F16EF, + C13A62F3B2A01774AD8A9921, + F672C9D6819D4CEA39A76445, + 943A1F16EFDD0E6789C90656, ); name = native; sourceTree = ""; }; + F7B6291F4272BF387B067C4F = {isa = PBXGroup; children = ( + 676457E043CCB749AD9C996E, + 4AB036697A8FC010D6FBA0B0, + 961FD846C95FA83CB96E0E3E, + 57B905251571D00290681E12, + 34B0FDBBF6879DC73A0B59BD, + B94D80A7B5ADCC744E7CE7E6, + A7DF0F471086004A6B81CD11, ); name = "juce_gui_extra"; sourceTree = ""; }; + D0CC2C98FF18A9025221B221 = {isa = PBXGroup; children = ( + 1ABEE94704EA506C399E9BB7, + AC5460D2875AEE783D2A2AAD, + 2373A1F1357D75E328517966, + FCD17983F05312385F6C17F6, + C1BD7A3D23B873F716F6C68F, + 50B9979133759179FAFFA25F, + 71359267D6C329BC132B88CF, + 8BB63BFDE6F8C634381B9CF3, + 6D6C2ADFA12CB2A3AA90E10D, + 084DC67E578B4943704DF6A8, + 04F797332FEC7F3DEAE457B5, + C5104FA479708493D5396BAA, + 6386ADE8A90ABD189AB72936, + E73144B6B99143468DB98842, + 72887C393A61739FD6C803A3, + 60707845CE9EFAADCB5BB90F, + 94F05A309F81C027AF3AA82C, ); name = opengl; sourceTree = ""; }; + 848B383D0E793418373C92A0 = {isa = PBXGroup; children = ( + C3EE00C42BC5D0E1610F879A, + 26B7A212D6DBD337A4F8AB7C, + 93736C303F60B4DBF1D87989, + CB481B5E92CC1EF7898DD17F, ); name = geometry; sourceTree = ""; }; + 13F7942CD1F8C764749719FD = {isa = PBXGroup; children = ( + A630EDA780905F9CCC6EF5D8, + AB0C82D0A432008DA9B02B67, ); name = utils; sourceTree = ""; }; + 06E255E5C0ECC537CBF35414 = {isa = PBXGroup; children = ( + 55F8FDB2CE9EA9B6F6F750B1, + 613925F9A0F758ED88BBB3AB, + 118B1A6119520DC2CCE4E119, + F885D9146184104D5D7C05C2, + 414E7CA5C5AB18AE918F414D, + AEE7A4457DD1D960854EFFF2, + AA5DEFC178005AF6703DD8C2, ); name = native; sourceTree = ""; }; + 538DDB7E7BA2CEDE1BB9E479 = {isa = PBXGroup; children = ( + D0CC2C98FF18A9025221B221, + 848B383D0E793418373C92A0, + 13F7942CD1F8C764749719FD, + 06E255E5C0ECC537CBF35414, + B1EA7F743B1C77827CAB5707, + B93D72307AE413B7A9A074C5, ); name = "juce_opengl"; sourceTree = ""; }; + DCAAA3B7EE46E63D38167ABC = {isa = PBXGroup; children = ( + BF62BF87517BCECDF7BFC044, + EB5D5F550EC7617B00286524, + 0F98FC70765AB9D2566AFD47, + A6B8840048CE44449BF2E319, + CA5CAB4B48FE75C6760BB780, + 0543BDC4AF5B2ABF41749383, + 1C38EDA19B0B3A45BA47CE6E, + 15AF91E3F446F92E4B2F7093, + 5C99C4705F0D6CE613DE7711, + ED256A12202BBE4615053DD5, + B34A4D738811E54546CA93CD, + A09A20116F929D337AE95CB6, + 13BD4B06D1A341403533186D, + F0C6892CD64002A92B68F37B, + C2AF71A259E7FE29A378F063, + B3342B74DDD833F6D04A7AD3, ); name = osc; sourceTree = ""; }; + 3A7D17A61BAAFBFCAC026C49 = {isa = PBXGroup; children = ( + DCAAA3B7EE46E63D38167ABC, + D4F3296FB4D267CD9DBAEC22, + 913E0691329569D88E7AAB64, ); name = "juce_osc"; sourceTree = ""; }; + EF0AACA84F1CEE7F45F56339 = {isa = PBXGroup; children = ( + 81E8B4FDE23F10677BD70DCD, + 05C8723D6B99C1C95FA1860E, + E645944AAADA77E0BF55B753, + 5102C5BFB76FB218BB512EC7, + 738E94C7871EC777AE05CA28, + F7B521C7EB8A7EFC4DE2AD31, + 7C749B953A62BB34443CEA51, + FF81165C6DC0BE3D7DDDDB3C, + 194518F009569975413BBA1F, + 02D2BF1071BA036B1046217F, + A8198033A6100EDB28E54475, + F7B6291F4272BF387B067C4F, + 538DDB7E7BA2CEDE1BB9E479, + 3A7D17A61BAAFBFCAC026C49, ); name = "Juce Modules"; sourceTree = ""; }; + C20D4DECE1291BF6AF8711DC = {isa = PBXGroup; children = ( + 0555BAE6156EAF15CA77A2D8, + 74711D7544168CCAC4969A07, + 92800676AF753D1A60108F11, + 39BADA2042495195394900F3, + 44301EEC47F5688D9BC0582E, + F756FBC7A6836696BCADD2B4, + 814EF15FC580DB2A5F426071, + CAD2BDFE8443FE5648EF5A9C, + C63EFC8D5E9FDC58BD4A9CA2, + DD866BA894AC019F86C5F4C9, + A67B57899953E98B2B52FA2C, + 13BEE456E0A7D58819C06B21, + A80E52C517801112E8F19350, + 3C02F146BFD3D2C8B0B3D8B8, + D185AFBBD6B50B5CCC2A9A3D, + 556B39875D557171B3E0D68C, + 71274DD47D3EFC3EB83ED73C, + D12A0DFFE18728E84D9AB739, ); name = "Juce Library Code"; sourceTree = ""; }; + 4AA57E2B5FD5374D348EEF7F = {isa = PBXGroup; children = ( + 0D6692C87B6EEDFCB658A996, + A7050DB1488924F209A7B5CF, + 70F1CAF3C4C561DD81E6AFC1, ); name = Resources; sourceTree = ""; }; + 71F5560BE0EE3A17A9CE44F6 = {isa = PBXGroup; children = ( + 2E13A899F4E3C99054A3656F, + 9E8129263CD42C6029FC2CAD, + 080961C54C58ECF2346B4C23, + 6799B056504F9F017998B9E2, + 4D1DB6D77B6F3DE7A569780B, + DA40ED39AF4B56000E5A2743, + 448838BE6E937D450A3C84CE, + 9193D2A3C463BEAA07FD424D, + F7D557738137CA1A370BAA27, + C821C5805007FFDC2636BBE6, + 935CA85EF98714D3A17AE737, + 379F77D23BFAE3795282CEB3, ); name = Frameworks; sourceTree = ""; }; + 8B59A884C62D960EE9DFEF47 = {isa = PBXGroup; children = ( + 88B666E3E64434D066937972, ); name = Products; sourceTree = ""; }; + D2EB65517396C974F0415A7F = {isa = PBXGroup; children = ( + 856518502A948813C90E6761, + EF0AACA84F1CEE7F45F56339, + C20D4DECE1291BF6AF8711DC, + 4AA57E2B5FD5374D348EEF7F, + 71F5560BE0EE3A17A9CE44F6, + 8B59A884C62D960EE9DFEF47, ); name = Source; sourceTree = ""; }; + 48B76E3AFA2377D9DB65015D = {isa = XCBuildConfiguration; buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; + CLANG_LINK_OBJC_RUNTIME = NO; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = "$(PROJECT_DIR)/build/$(CONFIGURATION)"; + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_DEBUG=1", + "DEBUG=1", + "JUCER_XCODE_IPHONE_5BC26AE3=1", + "JUCE_APP_VERSION=1.0.0", + "JUCE_APP_VERSION_HEX=0x10000", ); + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + HEADER_SEARCH_PATHS = ("../../JuceLibraryCode", "../../../../modules", "$(inherited)"); + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_BUNDLE_IDENTIFIER = com.juce.NetworkGraphicsDemo; }; name = Debug; }; + 5E673C38F805EC668720414D = {isa = XCBuildConfiguration; buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; + CLANG_LINK_OBJC_RUNTIME = NO; + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = "$(PROJECT_DIR)/build/$(CONFIGURATION)"; + DEAD_CODE_STRIPPING = YES; + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_OPTIMIZATION_LEVEL = 3; + GCC_PREPROCESSOR_DEFINITIONS = ( + "_NDEBUG=1", + "NDEBUG=1", + "JUCER_XCODE_IPHONE_5BC26AE3=1", + "JUCE_APP_VERSION=1.0.0", + "JUCE_APP_VERSION_HEX=0x10000", ); + GCC_SYMBOLS_PRIVATE_EXTERN = YES; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + HEADER_SEARCH_PATHS = ("../../JuceLibraryCode", "../../../../modules", "$(inherited)"); + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_BUNDLE_IDENTIFIER = com.juce.NetworkGraphicsDemo; }; name = Release; }; + 3BF0365A560ACD4FD24D40CE = {isa = XCBuildConfiguration; buildSettings = { + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + ALWAYS_SEARCH_USER_PATHS = NO; + DEBUG_INFORMATION_FORMAT = "dwarf"; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_INLINES_ARE_PRIVATE_EXTERN = YES; + GCC_MODEL_TUNING = G5; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_MISSING_PARENTHESES = YES; + GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES; + GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_NAME = "JUCE Network Graphics Demo"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + WARNING_CFLAGS = -Wreorder; + ZERO_LINK = NO; }; name = Debug; }; + 9C6D2FD441D79104734762A5 = {isa = XCBuildConfiguration; buildSettings = { + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + ALWAYS_SEARCH_USER_PATHS = NO; + DEBUG_INFORMATION_FORMAT = "dwarf"; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_INLINES_ARE_PRIVATE_EXTERN = YES; + GCC_MODEL_TUNING = G5; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_MISSING_PARENTHESES = YES; + GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES; + GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + PRODUCT_NAME = "JUCE Network Graphics Demo"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + WARNING_CFLAGS = -Wreorder; + ZERO_LINK = NO; }; name = Release; }; + 02715337C584F3C721251428 = {isa = XCConfigurationList; buildConfigurations = ( + 3BF0365A560ACD4FD24D40CE, + 9C6D2FD441D79104734762A5, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + BDC88C5882EF70163B9C8B02 = {isa = XCConfigurationList; buildConfigurations = ( + 48B76E3AFA2377D9DB65015D, + 5E673C38F805EC668720414D, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + 27D13F64374981C0D070073D = {isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 521016BFC5181B3170BD9E8A, + 006DF460F8DF66EFFA80D968, ); runOnlyForDeploymentPostprocessing = 0; }; + 8FA3466A9C5DCEF1CEC9D134 = {isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 987CBD5330E76B404F0D966C, + 9F618C008A503063D10076C4, + F420418005A79DAF770E7735, + 96B6D565C6C5F9159EB6A55F, + 76B52030E43D3B5AB6127691, + 400043FD261C86FBBC627B22, + A1DF53840C31BE4F53C45FDC, + C0034230852C5B299E4E727F, + 723819DB39E466E20A7F3320, + C9E4DFC6834B1902D7B5ECB5, + 12BE09EBD1CD09058C84C052, + 6E0A0DA4E667AC2D4F11E690, + 47674ECBB496642ADA2FE208, + 5615BFDBF1F361687927B58C, + 2E23D07E4DE9480FB5B4C540, + B8AF173DBD1F487F943A2FE7, ); runOnlyForDeploymentPostprocessing = 0; }; + 6B8B22FD390097B066D6145E = {isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 80EE2C27B466BAFD83881D3F, + C4D6C466C41173D6970553D2, + 3CC6DC6E223415B506D0CB75, + 67DF295E93E54432043126DF, + 770AB74B1D3A0108F764DD47, + 366A216FDEBD7BDDC1BA12D9, + CA694B2A73FCF12D7F9E7E49, + 5A64B64E5B45AEA1A0EECC4B, + F918FB5901F09EA77DB32022, + A6AA70BD9364BB974CDEB337, + EC14DA30C090DDC62084DB4C, + F714F0C84F5945BF3539239E, ); runOnlyForDeploymentPostprocessing = 0; }; + AC6EE7CFEC691FF6322586E4 = {isa = PBXNativeTarget; buildConfigurationList = BDC88C5882EF70163B9C8B02; buildPhases = ( + 27D13F64374981C0D070073D, + 8FA3466A9C5DCEF1CEC9D134, + 6B8B22FD390097B066D6145E, ); buildRules = ( ); dependencies = ( ); name = "JUCE Network Graphics Demo"; productName = "JUCE Network Graphics Demo"; productReference = 88B666E3E64434D066937972; productInstallPath = "$(HOME)/Applications"; productType = "com.apple.product-type.application"; }; + A5398ADB6F5B128C00EB935C = {isa = PBXProject; buildConfigurationList = 02715337C584F3C721251428; attributes = { LastUpgradeCheck = 0440; }; compatibilityVersion = "Xcode 3.2"; hasScannedForEncodings = 0; mainGroup = D2EB65517396C974F0415A7F; projectDirPath = ""; projectRoot = ""; targets = ( AC6EE7CFEC691FF6322586E4 ); }; + }; + rootObject = A5398ADB6F5B128C00EB935C; +} diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Contents.json b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000000..c0af172f62 --- /dev/null +++ b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,128 @@ +{ + "images": [ + { + "idiom": "iphone", + "size": "29x29", + "filename": "Icon-29.png", + "scale": "1x" + }, + { + "idiom": "iphone", + "size": "29x29", + "filename": "Icon-29@2x.png", + "scale": "2x" + }, + { + "idiom": "iphone", + "size": "29x29", + "filename": "Icon-29@3x.png", + "scale": "3x" + }, + { + "idiom": "iphone", + "size": "40x40", + "filename": "Icon-Spotlight-40@2x.png", + "scale": "2x" + }, + { + "idiom": "iphone", + "size": "40x40", + "filename": "Icon-Spotlight-40@3x.png", + "scale": "3x" + }, + { + "idiom": "iphone", + "size": "57x57", + "filename": "Icon.png", + "scale": "1x" + }, + { + "idiom": "iphone", + "size": "57x57", + "filename": "Icon@2x.png", + "scale": "2x" + }, + { + "idiom": "iphone", + "size": "60x60", + "filename": "Icon-60@2x.png", + "scale": "2x" + }, + { + "idiom": "iphone", + "size": "60x60", + "filename": "Icon-@3x.png", + "scale": "3x" + }, + { + "idiom": "ipad", + "size": "29x29", + "filename": "Icon-Small-1.png", + "scale": "1x" + }, + { + "idiom": "ipad", + "size": "29x29", + "filename": "Icon-Small@2x-1.png", + "scale": "2x" + }, + { + "idiom": "ipad", + "size": "40x40", + "filename": "Icon-Spotlight-40.png", + "scale": "1x" + }, + { + "idiom": "ipad", + "size": "40x40", + "filename": "Icon-Spotlight-40@2x-1.png", + "scale": "2x" + }, + { + "idiom": "ipad", + "size": "50x50", + "filename": "Icon-Small-50.png", + "scale": "1x" + }, + { + "idiom": "ipad", + "size": "50x50", + "filename": "Icon-Small-50@2x.png", + "scale": "2x" + }, + { + "idiom": "ipad", + "size": "72x72", + "filename": "Icon-72.png", + "scale": "1x" + }, + { + "idiom": "ipad", + "size": "72x72", + "filename": "Icon-72@2x.png", + "scale": "2x" + }, + { + "idiom": "ipad", + "size": "76x76", + "filename": "Icon-76.png", + "scale": "1x" + }, + { + "idiom": "ipad", + "size": "76x76", + "filename": "Icon-76@2x.png", + "scale": "2x" + }, + { + "idiom": "ipad", + "size": "83.5x83.5", + "filename": "Icon-83.5@2x.png", + "scale": "2x" + } + ], + "info": { + "version": 1, + "author": "xcode" + } +} \ No newline at end of file diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-29.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-29.png new file mode 100644 index 0000000000000000000000000000000000000000..b4a6778bc9c70178e932d3569d852d9d68fcb51c GIT binary patch literal 1896 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 literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-60@2x.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..204a276565abc8290aae532e7c93b184b8d7ff2d GIT binary patch literal 10980 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 OLdi=jOI1pkg!~_DNuPfJ literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-72.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-72.png new file mode 100644 index 0000000000000000000000000000000000000000..4ad2adae160db0c97c527887219dfb2c85b7db5f GIT binary patch literal 4864 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 RuakiQ1sN6TDoNwe{|9+p`5OQL literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-76.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-76.png new file mode 100644 index 0000000000000000000000000000000000000000..2f6dfe68bc215d363a0c08bff7297c1f8b7142ac GIT binary patch literal 5558 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 Ef-e&g8UO$Q literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-76@2x.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-76@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..8c9da68255191090805e98d0f1eca89856fceb16 GIT binary patch literal 11395 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⩔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 G4E`UnPy4X| literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-@3x.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..40631d44c314e27836211719cc2e85090b89b475 GIT binary patch literal 15442 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%0A<=) zbhvp*(b<^6Z>~}C-}vs9RI=tk?mUj0H3)f9vP1liDZ%oU#lpVF`3EPqWJ>}R!&O(N zhcN{lPJ0)FnQKQytj;m@Z(-NPLtc8ao1A54>g%ZKS^hj;HU{+D2I*jo+sFTWNmg_z zZuZ4?JN2oLJA5?o74Ew-lImmC73@`OTJyl&Q!52M9G~jwKv*l|P-B)4NlY;7sJiry zPlxNVRwJycY>ccWk?pZv!nu|0nE_Y2x~spr4)B@T*x&k{Upsj30~0O!r_4#iPfz9k z?ZO)BMP7Id)_YPrL1H2Px-ItOhp+t`+tRhvz)~Ck=ak$JpAf~xoU7vQ8V)*w)z=d z1pB0dY_Tt(o_ZqXoQW&#fJ`DR^;i1Kj&OJrkE2Q8DDPvkieXjjvuaN>k(Vc{1QOn1RHm0A-6woHCq>{^}hP1^+tA4u!kto{bHfV zfjqZ1FU29En>RHf%q#(c83icF1!n-6eydM^Kj<1vCk?+DWbY>hMYuZ3u%IdS)<2La(k%Dg*OJmfw=miMX#?uyVd!LuP!AsZ4YKPn0Y|y6THS zGU+7e+A3%WYpAQ)GwY{#ZNPvoum4&CYAmbVIP(g))3{>E=TAqm6^8+&hOGNtrFgiC zJ=f8W`{4&U(2tXBnc$K<8oXnT4Yv|m5WSH2LZ*8-MXX;jE^>Wv$ttwc8Y@G^5WV-b zJ9y5}f7bl6GHhmc?g;Sz_K5tYKQLnxNV2C=*0J;-k>{LCZC4_6 z(1}DnTlZ^A(=AY1>(rNWRq-f=TU3-d%s6U%^0`xN#K$muSJjh3b3ggT^G3CeGCece zr>+SK8j}I%WItHkV!Y^7{(3EPCzno26qrGu($O<#qtZ=~jLQDaiKnA1f80zFR67xl z6=uSTtX~9eK*kHh20v9v>MY9 zNsMdzo7)UxcJaz|IEcKS&=jrS?rEqFm&$M~ynh!S|9~+H%=Pn25-eQWsL;l=B+_mGMH?KuC2T8LZdB&(w>4h zcIZ$}b!27KU@Ij!GZbD8B+dbn-KFSwGvXL-4rEr>&!-{CRF=VF%59j*9H^Ygl;!Z7 zNy1i1dQ(JpVx2We?p@ecmy112e?mFnV_gns^CHA(L63r}FL{+!zvDm=(m;nvUg6u~!crL3lB;_HsOlfv zx_RGCr_G-`Om;?q;$&t+`(CVJ!KiDT$3GF&Q+U{dW+{Hl-2ZBaAwABNWctOc^_xGi z6h}A#r;+1(uP5CK(t)|TGcT+DwLJE3G*?1Oh8^k82@qj|Qh(5VFh&-&{$%{35lVk(e}2oCcm3=q_?DBhqW32D`bR+V|C_gkjN&Ftejv=SKQo>%_RB(s PgaPu>DpJ)FCL#X^+pxb~ literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Small-1.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Small-1.png new file mode 100644 index 0000000000000000000000000000000000000000..b4a6778bc9c70178e932d3569d852d9d68fcb51c GIT binary patch literal 1896 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 literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Spotlight-40.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Spotlight-40.png new file mode 100644 index 0000000000000000000000000000000000000000..b7afba6a2a830ac02cd379950aa6729e3cc1c2d7 GIT binary patch literal 2453 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 Ef}9qAn*aa+ literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Spotlight-40@2x.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Spotlight-40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..4db42cda57841be057fba05e7b8e9eb6597ab2e1 GIT binary patch literal 5454 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 Ef}9qAn*aa+ literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Spotlight-40@3x.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon-Spotlight-40@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..204a276565abc8290aae532e7c93b184b8d7ff2d GIT binary patch literal 10980 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 OLdi=jOI1pkg!~_DNuPfJ literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon.png new file mode 100644 index 0000000000000000000000000000000000000000..5efcf0aff3423784e06dfbd8de4ef2943f6fb2a2 GIT binary patch literal 4434 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 YAK2HWw320)yZ`_I07*qoM6N<$f>Pj9PXGV_ literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon@2x.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/AppIcon.appiconset/Icon@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..f4dd12f2f91eb644c21e1afc410e814e5ad9c067 GIT binary patch literal 10319 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 literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/LaunchImage.launchimage/LaunchImage-ipad-landscape-2x.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/LaunchImage.launchimage/LaunchImage-ipad-landscape-2x.png new file mode 100644 index 0000000000000000000000000000000000000000..817cdf80576586c17f9ff786be3295e5fda14dd6 GIT binary patch literal 15969 zcmeI2Jxc>Y7=+)Lcpl**Nf$-rf>u_R76y|L(QBee!1fBU5k(M1(BiaGD@zLt%T%I; ztp@xLB9;NcLamI7O5*P2*544}*=DE62h7dP&c58?d}St;988Kx%9|}Oh}a5RVq0o! zoYYp;me?qHRa>oHd+9*L6|Y>ZZl69s6f=@b*DoG_cC5_g+S6!q>}+NEU40{5bKk9g zgI@;>a_a_3O#er?>~Vt%LCnA&$Dp)tP#|#w6Ip}!Nr6ixTttL>M2HO`FNK3bo!gv{ zR0FDks)-Sf2J*y0gt-FuUqY(*W ze*;M?q1nMzVDn;1a|oDDuL;O*YbuG$YMI2CzaGS;5_UDd;yQ{o|Wv{<>i^nna#mBu_On zXH;&U2V+0O1ft+Z5NUxM0b{>N3gjdC7%@PJGg2TQ$w%@rWB@B*1+0J-6a!o!yYm8B j%TKsEq|$Hg&8bqa1bcGpIPIb4VoU4Ro3514OaA^ZRUk+h literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/LaunchImage.launchimage/LaunchImage-ipad-portrait-1x.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/LaunchImage.launchimage/LaunchImage-ipad-portrait-1x.png new file mode 100644 index 0000000000000000000000000000000000000000..f3685597a1db3978e4081a1ff5b538679b85f0cb GIT binary patch literal 5350 zcmeAS@N?(olHy`uVBq!ia0y~yUBhlnw?4k-45O zjv*Cu-d;CkWKiHau%WU3`~#*wHLhP}XU|A7FeoJc=L71xX9y$&l7NK55g_5v!N|bS zAOJF55oER#50Ge)01_Od3P*!yG*OIZh0&5?w0s<`6-Fz~(Wb&^18KBbINE9+?JJD- ykVZR@quu7w!Gh5t65u$|XtQv%SxC59sK>{|@qgLJC=pn#1V;TDOc2iDSdVQAuB@ZY8IN*a4U|pC8aDamnV81XA-~b0lfIiAJfCC(q0By5* z00%fI0orEs01j|a0<_KM0UY4q2>fu{9A53VN9Vbzx8swGxwe@5$yCC~w>De$WG&|l zmZw{mVTV5LuJJm{^|&Qp07Nwb4`6@?)I|0L5g5QgE5WaMFxzzPh6ZdFfR4?*3A$Do z=!(Px7~p{tzylaW8c-8i3y}!yjensgo_{~X?d7~yII|WQxDtj3FwmV04`6@?N&pXF z5NSY7WGzG@us2c@sfpA?=DkE<00XTA|J#GT$I6RHY+wHuAgX(ea=J;|Umj;Y7#Z?) hpf>aVxjdR{kgzI~-I>p(bmykNqhO+#Kg`XSzW|b=YWn~H literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/LaunchImage.launchimage/LaunchImage-iphone-2x.png b/examples/NetworkGraphicsDemo/Builds/iOS/JUCE Network Graphics Demo/Images.xcassets/LaunchImage.launchimage/LaunchImage-iphone-2x.png new file mode 100644 index 0000000000000000000000000000000000000000..efe9e82a3257662a9e069038e1cc7cbcb64e0f90 GIT binary patch literal 4542 zcmeAS@N?(olHy`uVBq!ia0y~yU}|7sU_QXX1{7KP=)`Xz#Zv6#8NvYsH5@4&3=D#$ zo-U3d6?5KRGh}2?;5o3NvHtu6ram>UsMUNa9goaOh!VVdyX%RWup|qp4stBaD^>qs8H9jWAj%j5-}9PKQRju(s$nT(DajSifVICiM#G==lNaOBfjz>!D>Pgg&ebxsLQ E006gcSO5S3 literal 0 HcmV?d00001 diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/AppConfig.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/AppConfig.h new file mode 100644 index 0000000000..c0b5df891c --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/AppConfig.h @@ -0,0 +1,191 @@ +/* + + IMPORTANT! This file is auto-generated each time you save your + project - if you alter its contents, your changes may be overwritten! + + There's a section below where you can add your own custom code safely, and the + Introjucer will preserve the contents of that block, but the best way to change + any of these definitions is by using the Introjucer's project settings. + + Any commented-out settings will assume their default values. + +*/ + +#ifndef __JUCE_APPCONFIG_GWI5IR__ +#define __JUCE_APPCONFIG_GWI5IR__ + +//============================================================================== +// [BEGIN_USER_CODE_SECTION] + +// (You can add your own code in this section, and the Introjucer will not overwrite it) + +// [END_USER_CODE_SECTION] + +//============================================================================== +#define JUCE_MODULE_AVAILABLE_juce_audio_basics 1 +#define JUCE_MODULE_AVAILABLE_juce_audio_devices 1 +#define JUCE_MODULE_AVAILABLE_juce_audio_formats 1 +#define JUCE_MODULE_AVAILABLE_juce_audio_processors 1 +#define JUCE_MODULE_AVAILABLE_juce_audio_utils 1 +#define JUCE_MODULE_AVAILABLE_juce_core 1 +#define JUCE_MODULE_AVAILABLE_juce_cryptography 1 +#define JUCE_MODULE_AVAILABLE_juce_data_structures 1 +#define JUCE_MODULE_AVAILABLE_juce_events 1 +#define JUCE_MODULE_AVAILABLE_juce_graphics 1 +#define JUCE_MODULE_AVAILABLE_juce_gui_basics 1 +#define JUCE_MODULE_AVAILABLE_juce_gui_extra 1 +#define JUCE_MODULE_AVAILABLE_juce_opengl 1 +#define JUCE_MODULE_AVAILABLE_juce_osc 1 + +//============================================================================== +#ifndef JUCE_STANDALONE_APPLICATION + #define JUCE_STANDALONE_APPLICATION 1 +#endif + +//============================================================================== +// juce_audio_devices flags: + +#ifndef JUCE_ASIO + //#define JUCE_ASIO +#endif + +#ifndef JUCE_WASAPI + //#define JUCE_WASAPI +#endif + +#ifndef JUCE_WASAPI_EXCLUSIVE + //#define JUCE_WASAPI_EXCLUSIVE +#endif + +#ifndef JUCE_DIRECTSOUND + //#define JUCE_DIRECTSOUND +#endif + +#ifndef JUCE_ALSA + //#define JUCE_ALSA +#endif + +#ifndef JUCE_JACK + //#define JUCE_JACK +#endif + +#ifndef JUCE_USE_ANDROID_OPENSLES + //#define JUCE_USE_ANDROID_OPENSLES +#endif + +#ifndef JUCE_USE_CDREADER + //#define JUCE_USE_CDREADER +#endif + +#ifndef JUCE_USE_CDBURNER + //#define JUCE_USE_CDBURNER +#endif + +//============================================================================== +// juce_audio_formats flags: + +#ifndef JUCE_USE_FLAC + //#define JUCE_USE_FLAC +#endif + +#ifndef JUCE_USE_OGGVORBIS + //#define JUCE_USE_OGGVORBIS +#endif + +#ifndef JUCE_USE_MP3AUDIOFORMAT + //#define JUCE_USE_MP3AUDIOFORMAT +#endif + +#ifndef JUCE_USE_LAME_AUDIO_FORMAT + //#define JUCE_USE_LAME_AUDIO_FORMAT +#endif + +#ifndef JUCE_USE_WINDOWS_MEDIA_FORMAT + //#define JUCE_USE_WINDOWS_MEDIA_FORMAT +#endif + +//============================================================================== +// juce_audio_processors flags: + +#ifndef JUCE_PLUGINHOST_VST + //#define JUCE_PLUGINHOST_VST +#endif + +#ifndef JUCE_PLUGINHOST_VST3 + //#define JUCE_PLUGINHOST_VST3 +#endif + +#ifndef JUCE_PLUGINHOST_AU + //#define JUCE_PLUGINHOST_AU +#endif + +//============================================================================== +// juce_core flags: + +#ifndef JUCE_FORCE_DEBUG + //#define JUCE_FORCE_DEBUG +#endif + +#ifndef JUCE_LOG_ASSERTIONS + //#define JUCE_LOG_ASSERTIONS +#endif + +#ifndef JUCE_CHECK_MEMORY_LEAKS + //#define JUCE_CHECK_MEMORY_LEAKS +#endif + +#ifndef JUCE_DONT_AUTOLINK_TO_WIN32_LIBRARIES + //#define JUCE_DONT_AUTOLINK_TO_WIN32_LIBRARIES +#endif + +#ifndef JUCE_INCLUDE_ZLIB_CODE + //#define JUCE_INCLUDE_ZLIB_CODE +#endif + +#ifndef JUCE_USE_CURL + //#define JUCE_USE_CURL +#endif + +//============================================================================== +// juce_graphics flags: + +#ifndef JUCE_USE_COREIMAGE_LOADER + //#define JUCE_USE_COREIMAGE_LOADER +#endif + +#ifndef JUCE_USE_DIRECTWRITE + //#define JUCE_USE_DIRECTWRITE +#endif + +//============================================================================== +// juce_gui_basics flags: + +#ifndef JUCE_ENABLE_REPAINT_DEBUGGING + //#define JUCE_ENABLE_REPAINT_DEBUGGING +#endif + +#ifndef JUCE_USE_XSHM + //#define JUCE_USE_XSHM +#endif + +#ifndef JUCE_USE_XRENDER + //#define JUCE_USE_XRENDER +#endif + +#ifndef JUCE_USE_XCURSOR + //#define JUCE_USE_XCURSOR +#endif + +//============================================================================== +// juce_gui_extra flags: + +#ifndef JUCE_WEB_BROWSER + //#define JUCE_WEB_BROWSER +#endif + +#ifndef JUCE_ENABLE_LIVE_CONSTANT_EDITOR + //#define JUCE_ENABLE_LIVE_CONSTANT_EDITOR +#endif + + +#endif // __JUCE_APPCONFIG_GWI5IR__ diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/BinaryData.cpp b/examples/NetworkGraphicsDemo/JuceLibraryCode/BinaryData.cpp new file mode 100644 index 0000000000..11d86451f2 --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/BinaryData.cpp @@ -0,0 +1,683 @@ +/* ==================================== JUCER_BINARY_RESOURCE ==================================== + + This is an auto-generated file: Any edits you make may be overwritten! + +*/ + +namespace BinaryData +{ + +//================== juce_icon.png ================== +static const unsigned char temp_binary_data_0[] = +{ 137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,2,0,0,0,2,0,8,6,0,0,0,244,120,212,250,0,0,0,25,116,69,88,116,83,111,102,116,119,97,114,101,0,65,100,111,98,101,32,73,109,97,103,101,82,101,97,100,121,113,201,101,60,0,0,3,40,105,84,88,116,88,77,76,58, +99,111,109,46,97,100,111,98,101,46,120,109,112,0,0,0,0,0,60,63,120,112,97,99,107,101,116,32,98,101,103,105,110,61,34,239,187,191,34,32,105,100,61,34,87,53,77,48,77,112,67,101,104,105,72,122,114,101,83,122,78,84,99,122,107,99,57,100,34,63,62,32,60,120, +58,120,109,112,109,101,116,97,32,120,109,108,110,115,58,120,61,34,97,100,111,98,101,58,110,115,58,109,101,116,97,47,34,32,120,58,120,109,112,116,107,61,34,65,100,111,98,101,32,88,77,80,32,67,111,114,101,32,53,46,54,45,99,48,54,55,32,55,57,46,49,53,55, +55,52,55,44,32,50,48,49,53,47,48,51,47,51,48,45,50,51,58,52,48,58,52,50,32,32,32,32,32,32,32,32,34,62,32,60,114,100,102,58,82,68,70,32,120,109,108,110,115,58,114,100,102,61,34,104,116,116,112,58,47,47,119,119,119,46,119,51,46,111,114,103,47,49,57,57, +57,47,48,50,47,50,50,45,114,100,102,45,115,121,110,116,97,120,45,110,115,35,34,62,32,60,114,100,102,58,68,101,115,99,114,105,112,116,105,111,110,32,114,100,102,58,97,98,111,117,116,61,34,34,32,120,109,108,110,115,58,120,109,112,61,34,104,116,116,112, +58,47,47,110,115,46,97,100,111,98,101,46,99,111,109,47,120,97,112,47,49,46,48,47,34,32,120,109,108,110,115,58,120,109,112,77,77,61,34,104,116,116,112,58,47,47,110,115,46,97,100,111,98,101,46,99,111,109,47,120,97,112,47,49,46,48,47,109,109,47,34,32,120, +109,108,110,115,58,115,116,82,101,102,61,34,104,116,116,112,58,47,47,110,115,46,97,100,111,98,101,46,99,111,109,47,120,97,112,47,49,46,48,47,115,84,121,112,101,47,82,101,115,111,117,114,99,101,82,101,102,35,34,32,120,109,112,58,67,114,101,97,116,111, +114,84,111,111,108,61,34,65,100,111,98,101,32,80,104,111,116,111,115,104,111,112,32,67,67,32,50,48,49,53,32,40,77,97,99,105,110,116,111,115,104,41,34,32,120,109,112,77,77,58,73,110,115,116,97,110,99,101,73,68,61,34,120,109,112,46,105,105,100,58,53,52, +53,66,70,48,69,70,55,66,48,54,49,49,69,53,66,51,49,53,69,69,54,51,67,65,56,68,70,50,56,48,34,32,120,109,112,77,77,58,68,111,99,117,109,101,110,116,73,68,61,34,120,109,112,46,100,105,100,58,53,52,53,66,70,48,70,48,55,66,48,54,49,49,69,53,66,51,49,53,69, +69,54,51,67,65,56,68,70,50,56,48,34,62,32,60,120,109,112,77,77,58,68,101,114,105,118,101,100,70,114,111,109,32,115,116,82,101,102,58,105,110,115,116,97,110,99,101,73,68,61,34,120,109,112,46,105,105,100,58,53,52,53,66,70,48,69,68,55,66,48,54,49,49,69, +53,66,51,49,53,69,69,54,51,67,65,56,68,70,50,56,48,34,32,115,116,82,101,102,58,100,111,99,117,109,101,110,116,73,68,61,34,120,109,112,46,100,105,100,58,53,52,53,66,70,48,69,69,55,66,48,54,49,49,69,53,66,51,49,53,69,69,54,51,67,65,56,68,70,50,56,48,34, +47,62,32,60,47,114,100,102,58,68,101,115,99,114,105,112,116,105,111,110,62,32,60,47,114,100,102,58,82,68,70,62,32,60,47,120,58,120,109,112,109,101,116,97,62,32,60,63,120,112,97,99,107,101,116,32,101,110,100,61,34,114,34,63,62,115,115,54,90,0,0,175,140, +73,68,65,84,120,218,236,157,7,128,92,117,181,255,207,45,211,251,236,204,246,94,179,61,189,247,144,70,11,45,244,14,74,81,154,20,17,241,1,239,161,40,54,44,207,191,138,138,62,124,2,250,176,32,85,233,32,37,72,9,9,73,72,239,61,219,119,218,109,255,223,239, +55,155,80,4,201,220,123,103,167,157,79,24,118,179,73,238,220,185,237,124,207,249,157,194,105,154,6,8,130,32,8,130,20,22,60,30,2,4,65,16,4,65,1,128,32,8,130,32,8,10,0,4,65,16,4,65,80,0,32,8,130,32,8,130,2,0,65,16,4,65,16,20,0,8,130,32,8,130,160,0,64,16, +4,65,16,4,5,0,130,32,8,130,32,40,0,16,4,65,16,4,65,1,128,32,8,130,32,8,10,0,4,65,16,4,65,80,0,32,8,130,32,8,130,2,0,65,16,4,65,16,20,0,8,130,32,8,130,160,0,64,16,4,65,16,4,5,0,130,32,8,130,32,40,0,16,4,65,16,4,65,1,128,32,8,130,32,40,0,16,4,65,16,4,65, +1,128,32,8,130,32,8,10,0,4,65,16,4,65,80,0,32,8,130,32,8,130,2,0,65,16,4,65,16,20,0,8,130,32,8,130,160,0,64,16,4,65,16,4,5,0,130,32,8,130,32,40,0,16,4,65,16,4,65,1,128,32,8,130,32,8,10,0,4,65,16,4,65,204,70,204,228,155,39,18,9,60,3,8,242,41,104,154,70, +254,207,129,166,210,175,26,249,10,160,42,90,242,207,200,207,52,250,61,151,252,187,28,207,125,228,223,90,28,2,136,86,129,254,171,195,63,226,224,200,223,102,247,61,247,9,111,41,147,151,58,242,103,106,242,31,113,228,61,85,136,15,201,255,186,111,201,221, +98,239,205,9,220,200,126,16,175,66,224,217,31,28,222,39,186,141,79,124,55,4,65,64,20,69,224,249,204,248,226,25,19,0,146,36,193,130,5,11,96,231,206,157,120,5,32,5,13,51,234,228,63,85,86,129,218,85,250,123,142,163,134,52,105,53,109,30,11,8,22,94,180,186, +69,167,59,108,247,17,227,239,119,23,59,124,158,18,71,144,124,31,176,216,5,127,184,217,235,35,127,213,71,254,185,151,124,245,120,74,236,14,103,192,102,39,127,238,36,191,23,200,203,245,33,163,79,191,255,164,39,78,100,68,4,208,191,23,165,223,115,28,23,149, +98,74,172,103,219,16,253,253,16,121,13,240,60,55,208,187,125,184,47,210,19,31,32,6,191,55,62,40,31,234,217,58,216,79,12,126,127,124,64,234,27,58,24,31,34,251,31,143,13,74,160,74,42,168,106,82,188,80,113,64,182,199,62,23,21,12,60,143,194,0,65,238,186, +235,46,56,243,204,51,11,75,0,80,15,98,243,230,205,176,123,247,110,188,2,144,2,119,1,136,53,182,130,215,95,233,12,19,207,189,44,212,228,173,180,58,197,202,80,163,183,130,220,41,85,254,74,23,253,121,88,180,11,1,135,207,234,34,247,142,155,23,121,142,136, +2,96,138,129,69,4,134,142,184,249,148,65,101,16,6,134,52,115,246,143,108,84,168,251,168,94,8,212,2,4,57,203,72,132,194,2,85,9,43,48,177,16,149,135,163,253,210,0,177,243,251,251,119,69,14,202,49,101,119,223,206,200,174,72,111,124,199,240,193,248,142,129, +61,145,61,145,158,196,190,200,65,169,15,18,32,227,201,71,10,157,190,190,190,76,62,122,50,135,213,106,197,179,143,20,4,212,163,119,4,108,78,95,133,179,212,225,183,214,16,35,223,20,168,118,53,187,66,182,6,242,179,42,209,42,148,147,159,7,136,23,109,103, +134,29,52,226,57,143,68,8,104,100,64,101,170,153,121,211,28,36,163,239,144,248,136,141,254,8,212,229,55,53,195,71,249,183,250,0,172,34,93,110,0,135,197,99,117,184,253,92,136,236,106,125,113,93,128,236,3,199,62,59,93,14,160,75,22,170,162,41,137,136,220, +79,94,123,7,118,69,118,70,251,19,27,15,109,26,220,60,180,63,182,190,111,199,240,150,222,29,195,187,162,125,137,94,37,161,226,69,131,20,4,130,32,20,166,0,64,144,124,196,234,18,121,111,153,163,140,24,246,70,226,197,183,133,155,188,157,158,18,71,139,167, +212,81,103,243,136,101,196,192,219,233,58,57,91,199,39,47,69,214,152,113,87,228,164,209,147,227,202,191,221,190,150,133,159,121,36,16,193,34,123,138,170,141,8,151,79,121,222,89,248,160,51,96,13,186,195,246,54,142,227,22,53,31,83,206,142,131,42,107,74, +108,80,58,56,124,48,182,131,8,130,181,68,24,172,233,221,54,188,234,224,166,129,13,228,247,59,134,14,196,162,120,117,33,8,10,0,4,201,10,44,78,17,136,177,175,40,170,115,183,21,143,241,141,35,6,127,188,191,202,213,78,60,251,26,171,67,244,208,117,111,234, +201,51,239,151,122,242,228,171,36,43,255,222,165,206,115,180,145,156,0,85,86,62,30,74,16,44,14,161,36,88,235,46,9,53,120,38,214,207,44,97,130,66,142,41,82,124,88,222,49,176,59,178,238,208,150,161,119,14,174,31,120,107,207,234,222,213,253,187,34,91,163, +125,137,56,94,133,8,130,2,0,65,210,14,241,226,93,129,42,87,115,89,87,96,2,49,246,83,194,77,158,241,174,176,189,145,24,123,47,13,185,39,13,125,242,149,136,224,18,119,106,202,32,121,252,20,250,98,63,72,254,159,227,192,98,115,137,245,37,173,254,250,178, +206,192,177,116,73,65,138,169,82,164,55,190,109,96,119,116,21,17,3,43,14,172,31,120,125,255,218,190,247,250,118,70,246,107,170,134,199,18,65,80,0,32,136,97,131,239,41,110,241,117,86,116,7,166,149,118,4,102,4,106,220,227,236,94,177,150,174,211,83,207, +158,101,185,163,177,79,175,46,24,17,6,170,66,4,193,136,191,79,69,129,51,96,109,116,19,241,85,57,33,120,50,21,15,241,65,233,16,17,0,171,247,173,233,123,109,247,202,158,151,247,174,233,127,171,127,231,240,238,195,165,147,8,130,160,0,64,144,79,197,225,179, +90,66,77,158,182,154,41,225,217,229,221,193,185,129,26,215,68,135,223,86,205,11,192,214,234,21,98,240,229,4,121,197,49,73,45,227,162,128,69,90,62,88,70,224,69,190,40,220,232,153,83,210,234,155,211,117,106,205,151,227,67,82,127,255,142,200,187,251,214, +246,189,176,107,101,239,243,68,24,188,213,179,117,168,23,143,30,130,160,0,64,16,98,52,56,8,84,187,43,171,38,21,205,168,28,87,180,176,180,195,63,195,85,100,107,33,30,62,71,13,62,245,240,165,40,122,247,57,33,10,84,141,136,51,162,12,70,42,8,120,129,247, +133,26,61,179,138,91,125,179,58,79,169,185,53,62,40,237,57,184,113,240,181,157,111,31,122,122,199,138,131,47,238,93,219,191,70,138,200,168,228,16,20,0,8,82,40,208,44,125,226,221,119,86,79,14,45,168,28,31,92,66,4,192,100,155,91,244,209,144,190,146,80, +208,195,207,87,65,32,242,101,101,93,129,147,43,198,7,79,158,116,126,163,210,191,43,178,234,192,250,254,167,55,191,180,239,137,237,111,28,92,49,124,48,62,132,71,13,65,1,128,32,121,6,241,234,173,229,93,129,201,213,147,195,75,171,38,135,150,248,43,156,99, +137,65,224,169,193,167,158,254,199,91,221,34,121,42,8,98,35,75,6,28,8,222,50,199,216,64,181,107,108,243,194,242,27,134,246,199,182,31,218,52,248,236,150,87,246,63,178,245,213,3,47,244,110,27,234,193,35,134,160,0,64,144,92,53,250,33,155,181,106,98,104, +74,195,156,210,19,43,186,3,199,186,66,246,54,218,181,134,54,153,145,98,133,93,138,135,106,0,88,62,7,125,81,236,94,75,117,245,148,208,133,181,211,139,47,140,13,36,246,237,93,211,247,252,150,151,247,255,105,235,43,251,159,233,221,62,124,16,15,24,130,2, +0,65,178,28,171,75,132,138,238,224,148,230,99,202,78,174,153,86,124,2,17,1,109,244,97,79,155,235,96,166,62,242,105,208,74,1,53,154,20,133,188,200,151,84,79,10,157,81,59,181,248,140,88,63,17,3,107,251,254,78,196,192,31,54,60,179,231,133,161,3,177,126, +60,90,8,10,0,4,201,18,232,112,153,146,86,127,203,152,37,21,167,212,78,15,159,234,43,119,78,160,195,102,104,184,55,49,92,200,70,95,251,88,215,192,145,185,1,159,82,21,199,29,233,39,252,65,99,97,238,99,191,47,136,163,166,106,32,29,22,3,22,34,6,38,134,206, +37,98,224,220,73,231,55,108,223,181,178,247,209,13,207,238,249,253,214,127,236,127,41,129,9,132,8,10,0,4,201,12,129,106,87,81,211,130,178,165,228,117,78,176,214,51,87,180,243,118,37,126,56,188,159,127,166,156,118,197,35,126,234,145,175,234,200,215,164, +81,255,192,170,243,28,207,70,240,114,35,95,217,48,31,78,36,63,23,152,6,160,163,71,121,78,132,15,154,10,115,108,59,10,237,221,203,141,180,243,213,228,15,189,39,253,170,30,249,154,28,240,155,220,238,225,247,161,191,232,164,63,238,200,215,252,16,14,76,12, +140,44,23,217,60,150,234,230,5,101,87,146,235,237,202,254,157,195,43,183,188,178,255,247,239,63,185,235,255,246,174,233,95,143,205,135,16,20,0,8,146,102,104,136,191,114,124,209,180,214,165,21,231,84,79,14,159,236,240,91,203,21,73,97,235,250,137,161,220, +117,200,14,27,87,149,189,20,106,222,143,24,117,129,23,153,1,183,10,54,176,11,14,242,114,130,83,116,147,151,7,156,150,145,175,228,247,118,209,69,94,78,246,231,54,242,119,173,188,29,44,188,13,68,242,239,69,222,194,182,65,223,135,126,165,191,255,240,84, +1,250,94,146,26,63,34,6,36,37,193,246,35,174,198,200,207,19,144,80,98,16,147,163,16,87,34,16,37,175,136,60,4,195,210,0,68,229,225,35,223,199,200,207,227,74,148,189,36,34,38,152,136,208,180,35,194,128,10,147,195,47,14,248,156,59,71,116,153,224,240,50, +146,167,196,209,61,238,140,186,238,174,147,107,110,221,255,126,255,51,235,158,220,245,155,141,207,237,125,98,232,64,108,24,239,82,4,5,0,130,152,136,159,120,251,205,243,203,78,110,59,190,234,34,127,149,115,58,53,42,82,156,24,168,33,41,183,12,61,53,240, +212,219,166,70,158,188,168,129,164,6,145,26,106,106,196,221,86,31,248,172,69,16,176,133,193,79,94,65,242,242,218,130,228,103,65,112,89,188,224,32,70,222,33,184,70,12,120,246,64,141,125,156,136,132,40,17,3,84,16,12,36,122,161,63,209,3,125,241,131,208, +27,219,15,189,228,43,253,126,80,234,35,127,62,200,4,133,60,50,45,136,70,38,4,242,226,217,139,203,137,200,193,225,4,66,178,187,142,146,86,255,241,229,93,129,227,39,95,212,180,113,203,203,251,126,191,246,137,93,191,221,245,78,207,90,140,10,32,40,0,16,68, +39,116,132,108,221,244,240,216,214,99,43,47,172,158,28,90,238,8,216,202,233,186,126,114,125,54,55,60,122,106,232,15,123,194,2,47,48,239,220,111,13,16,195,94,12,197,142,10,40,118,86,64,152,124,45,178,151,48,35,239,182,248,178,206,184,31,13,52,170,144, +140,74,184,161,232,83,143,137,10,195,210,32,19,1,135,162,251,224,96,108,15,236,143,238,130,253,145,157,228,251,189,76,48,68,165,33,34,12,164,145,72,133,192,162,31,84,24,112,89,42,10,180,145,4,83,57,14,96,115,139,141,29,39,85,223,66,68,234,151,246,172, +234,125,226,189,191,238,248,229,166,23,246,254,45,54,32,73,120,55,35,40,0,16,228,40,176,185,45,98,219,241,149,75,90,22,149,127,190,180,221,191,132,120,251,22,230,237,15,102,239,115,84,101,198,254,131,176,183,133,183,18,99,238,133,32,49,236,165,206,106, +40,119,213,66,133,187,142,25,123,191,173,136,9,129,130,19,116,192,51,129,67,95,101,206,154,143,252,25,53,250,3,82,47,28,136,238,134,189,195,219,97,247,240,86,216,51,188,13,14,196,118,195,64,188,7,98,106,116,68,68,37,151,67,4,58,102,49,203,68,1,91,34, +24,102,121,20,118,218,112,168,114,124,240,228,254,221,205,239,110,120,102,207,47,222,125,120,219,3,125,59,177,156,16,65,1,128,32,159,136,183,220,233,239,62,181,230,204,134,185,165,159,11,214,184,199,43,172,13,111,118,122,251,204,179,39,70,139,126,165, +30,170,203,226,33,94,124,13,51,242,53,238,102,168,242,52,66,137,163,146,133,239,185,2,203,162,215,245,32,226,45,44,42,66,95,45,254,177,71,126,78,151,19,168,40,216,53,180,25,182,15,109,128,29,67,155,96,127,100,23,12,38,122,89,110,2,93,62,17,88,126,67, +22,69,9,104,84,32,166,0,93,224,112,6,109,93,19,207,171,255,97,251,9,85,55,111,123,253,192,253,111,63,184,229,87,123,86,245,174,199,51,142,160,0,64,16,66,105,135,191,178,109,105,229,197,77,11,202,46,118,133,237,53,244,225,153,109,107,251,116,189,94,30, +49,248,52,169,206,107,13,66,153,171,6,106,61,45,80,231,109,133,74,119,3,11,227,179,76,123,196,52,232,146,66,141,167,153,189,166,195,18,246,51,154,95,176,39,178,13,182,13,188,15,91,6,214,18,81,176,17,122,98,7,88,18,98,182,9,2,85,86,201,181,172,130,96, +227,203,91,22,149,127,185,97,78,201,23,247,174,238,123,248,173,7,54,255,100,211,11,251,94,199,51,140,160,0,64,10,211,240,183,251,155,198,159,93,127,69,195,236,146,243,45,78,177,72,138,200,89,19,230,167,235,213,52,73,141,26,125,106,76,168,193,167,222, +125,189,183,13,26,253,29,196,224,55,178,53,123,100,244,241,90,3,236,117,56,82,64,171,14,246,68,182,195,150,254,181,176,190,111,37,108,31,92,15,61,241,253,144,80,226,236,220,209,232,66,166,133,153,54,178,60,192,113,224,170,24,23,60,159,188,206,221,249, +86,207,99,171,255,188,253,135,155,95,218,247,52,54,169,66,80,0,32,5,65,205,212,112,71,251,241,85,95,32,222,208,121,162,93,112,209,48,127,54,24,126,133,121,249,9,182,158,79,203,235,106,60,245,196,216,119,194,24,255,56,168,246,52,129,223,22,194,147,151, +133,216,4,7,139,196,208,215,188,202,147,32,38,71,96,231,240,38,34,6,222,133,245,189,239,176,101,131,129,68,15,75,44,20,57,11,203,35,200,84,116,128,38,13,178,101,45,14,120,34,2,78,168,158,20,58,225,208,230,193,103,222,249,195,214,123,214,60,182,243,81, +9,133,0,50,138,112,154,150,153,82,149,68,34,1,45,45,45,176,117,235,86,60,11,5,66,195,220,210,174,241,103,213,93,91,49,54,120,54,199,113,54,250,32,204,212,245,119,24,234,225,203,154,196,18,212,168,129,175,243,142,129,214,224,4,104,246,119,67,185,179,134, +53,185,65,114,27,90,126,184,169,255,61,88,211,243,79,216,208,255,46,171,60,160,125,14,104,100,128,190,50,189,84,32,88,121,16,201,235,208,166,161,23,222,249,195,150,239,172,121,124,23,10,129,2,226,231,63,255,57,124,238,115,159,195,8,0,146,159,148,119, +7,219,102,92,209,114,35,241,120,206,38,191,181,102,58,177,143,26,125,154,64,70,215,242,195,142,114,102,236,59,138,166,64,163,175,147,133,150,145,252,130,10,187,9,197,115,216,139,246,31,216,54,180,1,222,59,180,130,9,130,93,195,91,88,51,35,26,21,160,149, +27,153,16,3,180,137,21,125,249,170,156,115,22,220,220,57,167,251,244,186,231,87,254,97,235,119,215,62,182,243,81,92,26,64,48,2,128,228,36,165,29,254,134,241,103,213,95,223,48,187,228,2,226,229,56,89,75,213,12,57,252,180,60,143,173,9,147,7,61,205,206, +111,13,142,135,238,208,116,104,240,117,20,100,73,30,146,204,243,216,49,184,9,222,235,89,1,239,30,122,141,124,191,145,137,129,100,231,68,107,198,34,3,201,136,128,0,135,182,12,254,253,173,223,109,254,214,170,63,109,127,6,207,22,70,0,48,2,128,228,4,197, +99,124,165,147,206,111,184,174,126,86,201,101,162,93,240,81,143,63,19,94,63,205,220,79,168,113,22,222,15,59,202,160,189,104,50,51,250,77,196,211,167,235,198,72,129,123,63,228,186,160,185,29,244,181,180,230,28,216,57,180,9,222,57,248,50,188,123,240,53, +246,125,76,137,177,168,192,104,55,102,58,28,17,240,87,56,23,30,243,149,174,133,99,22,87,252,133,8,129,187,54,189,136,85,3,8,10,0,36,75,241,150,59,61,99,151,215,94,209,177,172,234,58,187,215,82,154,136,140,254,52,62,154,232,37,17,79,159,38,244,209,208, +239,184,192,108,152,88,60,7,90,2,227,88,73,25,130,124,26,180,148,147,190,142,171,61,15,54,247,175,133,183,15,190,68,196,192,171,176,55,178,157,37,134,90,121,219,168,86,19,200,68,4,16,5,11,21,227,130,203,42,199,23,29,183,253,141,131,247,255,227,255,173, +251,230,222,213,125,216,71,0,49,71,4,227,18,0,98,20,155,91,228,186,79,171,61,103,252,57,245,95,117,6,108,99,18,81,153,149,61,141,38,178,38,51,195,111,23,29,172,84,111,66,241,92,230,237,211,158,250,8,162,23,90,98,248,126,239,219,176,98,255,179,176,166, +231,77,232,143,31,202,204,18,1,121,43,139,93,160,145,129,193,141,47,236,253,241,171,63,93,255,253,190,157,195,7,240,12,229,62,184,4,128,228,166,122,228,57,104,154,95,58,119,218,101,45,183,23,213,185,231,176,114,190,81,108,224,115,216,219,167,195,117, +104,95,253,113,225,153,48,169,100,1,43,7,67,16,83,196,173,224,128,46,34,36,233,235,80,108,31,91,34,88,177,239,89,216,54,248,62,200,138,196,38,52,142,74,84,96,164,124,144,220,115,158,49,139,43,190,82,51,37,124,206,170,63,109,187,235,141,223,108,250,69, +98,88,198,76,65,4,35,0,200,232,81,214,17,168,159,126,69,203,127,84,79,14,93,192,38,163,37,70,111,20,47,13,239,211,108,110,155,96,103,117,250,211,75,23,179,7,52,134,248,145,209,17,158,42,235,49,240,234,158,167,88,242,96,50,42,96,97,249,2,163,5,47,112, +32,58,4,232,219,54,252,218,235,247,109,188,109,237,99,59,254,166,225,240,65,140,0,96,4,0,73,39,142,128,213,49,229,162,166,171,59,78,170,190,73,180,241,193,209,92,227,167,165,123,180,132,143,134,245,103,150,45,133,105,101,139,89,184,31,65,70,213,107,2, +158,117,33,164,47,26,21,120,99,223,179,240,218,190,191,179,121,5,244,79,105,84,32,221,203,3,108,240,208,144,12,158,50,199,212,197,183,117,63,53,102,113,249,111,95,253,217,250,219,247,172,238,221,132,103,8,65,1,128,152,251,208,35,207,179,182,227,171,142, +157,114,73,211,157,254,42,215,56,106,248,71,35,179,255,112,152,159,122,93,229,174,122,152,78,140,254,228,146,5,184,182,143,100,5,116,254,195,146,154,179,96,126,213,41,176,234,224,171,240,210,158,199,224,253,222,149,68,172,198,193,202,219,217,108,130, +116,114,184,98,160,102,74,248,220,242,238,224,177,171,254,180,237,155,43,126,181,241,135,209,254,68,28,207,14,130,2,0,49,76,121,87,160,102,234,231,155,255,139,60,100,206,163,15,155,209,104,219,75,13,63,13,243,211,245,213,38,127,23,204,174,56,1,198,133, +102,18,239,202,158,215,199,90,147,162,160,197,7,65,27,62,8,234,240,33,80,135,246,147,239,15,145,159,13,177,68,48,206,230,1,222,83,10,66,184,9,132,162,6,0,193,146,241,125,86,135,183,129,58,176,46,249,53,222,75,63,4,112,130,131,236,107,17,112,116,64,146, +189,152,124,31,6,206,234,7,206,226,205,203,243,70,43,4,104,226,41,125,109,236,95,5,47,238,250,43,188,115,240,21,24,150,6,216,53,43,164,57,79,128,54,12,226,120,46,56,225,156,134,187,27,102,151,158,241,218,47,215,223,180,230,177,157,207,2,46,11,32,40,0, +16,61,216,189,22,24,127,78,253,149,19,206,174,191,77,176,9,197,163,17,238,215,52,34,48,212,24,123,160,142,13,207,132,121,21,203,160,45,56,41,255,12,61,49,242,42,49,242,218,192,94,80,250,119,18,3,186,135,188,246,130,22,33,198,62,54,64,108,104,12,52,37, +145,108,30,127,56,4,147,60,64,201,223,138,86,224,125,149,96,169,39,162,168,101,49,112,206,81,238,96,72,206,147,188,239,89,144,118,61,6,10,49,254,154,52,4,201,46,79,28,251,239,200,126,211,96,56,79,30,51,196,8,82,227,207,89,131,192,59,136,40,112,84,0,231, +170,6,222,89,65,4,66,25,17,8,116,255,243,163,237,50,237,40,73,95,123,134,183,194,139,187,31,101,73,131,180,29,49,93,26,16,56,49,141,167,68,99,73,184,238,98,251,132,37,183,143,125,166,101,81,197,207,94,188,103,205,109,135,54,15,238,195,167,25,242,73,96, +18,32,242,137,212,207,44,233,158,117,117,235,119,138,26,60,199,80,195,79,31,46,105,245,34,137,65,97,137,125,162,131,101,243,207,175,56,25,234,125,237,249,97,236,35,61,160,246,239,2,165,119,27,40,61,196,75,238,219,65,60,251,3,196,208,247,3,80,67,79,62, +59,179,155,212,75,228,5,90,94,49,98,240,185,127,27,35,1,69,102,34,129,247,148,128,109,220,153,96,29,179,100,84,62,143,210,255,30,36,214,255,63,80,250,86,38,141,54,77,126,251,183,161,110,109,68,16,168,116,44,30,19,15,236,51,83,113,32,88,147,194,192,22, +38,98,160,18,120,119,29,8,238,6,224,220,181,192,211,101,30,222,146,243,231,159,230,9,188,188,231,49,120,101,207,147,112,48,186,55,237,66,224,72,84,194,41,66,180,47,177,253,205,255,221,124,243,91,15,108,126,96,52,19,117,145,163,39,147,73,128,40,0,144, +143,123,253,214,233,151,183,220,216,121,114,205,45,228,183,78,57,158,222,117,126,106,8,98,74,148,77,223,155,24,158,11,243,42,79,102,157,217,114,214,216,75,81,98,236,119,131,122,104,19,40,7,55,18,131,191,37,233,217,83,175,94,145,62,102,232,133,15,60,123, +67,22,89,34,54,85,2,107,203,66,112,76,191,18,64,180,165,237,243,73,59,31,129,248,250,255,38,239,25,37,94,189,25,221,20,53,38,8,168,48,208,52,153,9,5,118,124,200,245,192,219,138,153,32,224,189,77,32,120,90,200,247,181,44,130,144,171,208,137,132,47,239, +126,156,69,5,14,68,119,131,133,8,1,49,205,66,128,86,11,88,93,34,236,124,187,231,15,47,222,179,230,166,61,171,122,241,129,139,2,0,5,0,242,137,94,255,100,226,245,255,128,120,253,83,105,134,113,58,175,13,186,198,31,87,34,96,23,92,48,169,120,30,44,168,58, +149,117,97,203,57,131,31,31,2,149,122,246,251,215,129,188,255,125,80,123,182,38,67,251,114,44,121,131,209,7,188,48,226,213,167,53,51,92,99,251,98,169,159,5,206,121,55,166,69,4,72,219,30,76,26,127,230,241,167,217,131,61,34,10,164,164,40,160,83,251,172, +1,224,93,213,32,120,199,0,239,239,32,162,160,25,56,123,113,206,93,51,131,137,62,120,137,136,128,164,16,216,53,146,35,144,222,227,105,113,8,32,199,213,253,111,254,118,211,87,87,220,183,241,23,180,116,23,65,1,128,2,0,1,187,207,98,153,126,89,203,87,70,188, +126,91,58,189,254,164,225,143,178,53,254,241,197,179,97,97,213,114,168,201,165,198,61,74,130,133,241,149,189,239,129,188,119,53,40,135,182,36,215,237,229,4,51,242,156,32,154,231,217,235,20,36,214,214,165,224,152,125,141,169,219,149,247,62,3,177,85,119, +16,227,111,251,140,112,127,250,174,28,38,10,84,137,232,1,133,69,9,104,82,33,239,170,1,193,215,14,66,112,44,240,222,22,224,44,254,220,17,2,82,31,60,191,243,47,68,8,60,2,61,177,253,172,233,80,58,155,10,113,52,26,224,20,97,247,59,61,15,191,112,207,154,27, +48,26,128,2,0,5,64,129,83,55,163,120,236,236,107,218,126,72,188,254,89,233,246,250,233,26,63,71,140,71,87,104,42,44,169,57,27,26,188,185,177,198,175,13,29,0,121,223,26,144,119,175,4,101,223,58,80,7,247,178,36,189,35,6,159,134,243,51,60,83,254,35,18,43, +17,1,231,220,47,129,165,121,161,41,91,84,163,187,33,186,226,242,100,162,95,54,173,201,211,124,2,85,102,75,7,52,209,144,179,133,88,84,64,8,78,0,33,48,150,45,25,192,40,246,238,215,75,111,252,0,60,179,227,97,120,121,207,227,44,58,64,219,89,115,105,76,136, +28,137,6,236,253,231,253,155,110,124,237,222,245,191,197,167,96,225,10,0,172,2,40,80,68,27,15,51,174,28,115,245,184,51,234,190,78,108,190,59,157,165,125,180,129,15,29,199,75,27,167,44,37,134,191,163,104,74,182,155,124,22,202,151,119,173,36,175,183,217, +90,190,26,237,99,63,167,161,104,160,198,198,154,173,35,132,147,137,117,177,55,127,7,98,245,100,224,236,62,227,194,109,211,175,64,139,31,34,23,77,150,117,90,164,198,93,16,200,39,78,46,119,104,137,94,144,15,188,12,210,254,23,129,19,93,44,58,32,6,199,129, +16,154,2,130,183,213,164,156,5,243,161,61,45,78,107,188,28,102,149,31,7,79,110,127,16,86,236,125,26,98,106,20,236,172,228,213,124,97,73,251,119,240,2,87,58,253,242,150,251,203,58,252,139,94,184,103,205,245,61,91,134,112,174,64,33,218,1,60,4,133,71,73, +171,175,122,254,151,59,127,76,110,254,19,232,196,190,116,101,248,83,163,159,80,226,80,233,174,103,134,127,74,233,49,105,245,108,140,217,124,149,24,250,13,32,239,124,27,228,29,255,4,133,8,0,234,73,3,207,143,100,170,231,208,248,96,193,194,202,10,19,239, +255,13,108,221,203,141,121,255,131,27,65,38,6,21,68,103,246,127,110,150,111,33,142,152,76,34,226,6,55,64,188,127,13,112,219,126,207,202,13,133,192,56,16,195,211,129,247,119,146,191,154,125,109,163,75,156,85,112,193,152,27,153,16,120,108,235,253,176,234, +224,107,108,41,137,46,151,153,13,237,36,72,69,127,237,180,226,243,74,59,2,211,94,250,193,154,47,174,126,100,199,83,248,116,68,1,128,228,49,227,207,170,63,101,202,165,77,63,178,185,197,242,248,80,122,234,250,233,58,127,76,142,128,223,86,4,39,212,93,0, +243,43,79,33,222,76,118,26,16,229,208,38,144,183,173,32,70,255,13,150,177,79,67,251,28,109,174,195,146,206,156,57,123,158,105,159,0,105,211,11,96,235,56,201,80,179,32,105,207,83,160,201,195,89,105,48,63,43,18,66,147,21,57,214,159,159,136,129,200,110, +80,134,182,178,42,6,206,81,14,98,209,4,16,139,103,131,64,196,64,182,69,6,104,123,235,171,186,238,130,183,15,188,4,143,18,33,176,117,96,93,218,74,7,105,3,33,209,198,55,46,188,181,235,137,170,201,161,187,158,251,246,123,183,199,250,19,18,32,40,0,144,252, +193,225,183,218,231,223,216,241,141,150,197,21,215,73,177,244,181,241,165,235,252,2,47,194,236,242,227,225,184,186,243,32,100,47,203,186,99,65,203,242,228,109,175,129,180,237,85,22,222,167,158,254,7,70,223,149,31,39,156,70,1,250,118,50,81,35,132,155, +117,30,40,137,252,251,55,71,140,104,46,195,37,207,237,72,254,130,22,223,15,137,29,127,6,105,215,163,192,19,175,91,12,77,5,161,120,14,17,3,237,144,61,185,28,0,227,194,179,160,189,104,50,188,176,235,47,240,212,246,135,160,55,118,0,236,162,211,244,57,3, +170,76,187,110,42,92,235,146,202,91,194,77,222,25,79,127,227,221,203,118,175,236,125,31,159,154,40,0,144,60,160,118,122,113,251,220,47,181,221,27,172,245,76,75,215,184,222,195,225,254,102,127,55,156,84,127,49,180,4,198,101,213,49,208,18,195,32,239,124, +139,121,197,52,131,95,141,246,19,131,64,215,144,173,249,99,244,63,102,244,104,101,130,114,96,131,110,1,160,198,246,146,227,180,55,253,37,127,163,31,30,33,255,137,35,145,129,93,16,223,250,0,112,59,254,200,18,8,197,146,57,44,50,64,163,4,217,0,13,255,47, +172,58,29,198,135,231,192,163,91,255,7,94,221,251,20,168,170,98,126,75,108,13,88,23,193,64,181,123,206,169,255,61,245,229,21,247,109,188,122,197,125,27,30,208,176,90,16,5,0,146,187,76,185,164,233,28,242,250,33,199,113,193,116,24,255,195,225,254,160,189, +24,150,54,158,13,115,42,78,28,149,46,103,71,45,76,136,135,79,141,190,188,245,53,80,6,118,143,60,255,109,57,29,222,79,197,241,165,29,8,117,159,219,216,62,114,0,35,201,210,191,124,61,64,71,34,3,26,185,62,214,130,220,183,10,248,45,191,101,149,4,98,217,98, +16,139,38,101,69,229,3,29,58,68,243,3,166,148,44,128,63,111,254,37,108,32,251,153,142,101,1,90,2,204,9,92,104,198,149,99,126,87,60,198,55,245,239,119,190,123,83,12,7,11,161,0,64,114,11,135,223,106,157,119,99,199,183,90,22,149,95,43,199,20,80,20,243,165, +60,157,120,70,153,89,126,44,156,88,119,17,123,72,101,133,183,47,69,147,33,254,13,207,129,76,188,125,250,123,186,38,158,83,137,124,102,69,1,232,16,33,221,81,147,129,100,169,93,129,28,43,42,116,56,242,210,148,56,155,115,32,239,123,30,120,119,61,136,165, +11,192,82,58,63,43,162,2,99,2,227,225,134,241,157,240,236,142,63,194,147,219,126,7,3,82,31,216,89,14,131,121,203,2,218,72,130,96,227,220,210,171,3,213,174,113,79,127,99,213,37,187,87,246,108,192,167,42,10,0,36,7,168,24,27,172,59,230,150,174,95,21,213, +187,231,198,233,0,31,147,147,252,105,223,126,218,197,175,202,211,4,167,212,127,14,186,66,211,178,226,115,171,196,195,151,54,60,11,210,230,151,64,233,219,201,50,168,57,161,64,188,253,127,19,163,49,160,164,14,143,247,41,48,221,196,3,140,36,173,170,195, +91,33,190,225,167,32,109,123,8,132,240,116,176,16,177,43,4,186,51,251,208,230,44,176,168,250,12,232,14,205,128,63,110,190,23,222,218,255,2,139,4,136,38,71,42,232,12,144,64,141,123,214,41,63,156,242,210,63,254,223,186,207,191,253,224,150,71,240,233,138, +2,0,201,98,58,150,85,47,154,115,93,219,175,68,187,80,145,142,44,127,154,228,39,242,86,88,90,123,46,28,87,115,46,56,196,204,175,159,43,251,214,66,98,221,147,32,109,127,29,52,186,182,95,144,222,126,154,188,226,66,103,164,146,64,83,162,32,239,122,28,228, +189,127,7,193,223,5,150,138,227,64,12,207,98,83,14,51,69,137,179,18,174,232,184,3,94,223,251,52,252,105,243,47,216,124,1,179,147,4,105,244,144,23,185,146,185,215,183,255,185,168,222,243,181,231,190,189,250,235,216,70,24,5,0,146,109,207,41,145,135,89, +95,28,115,237,248,115,234,239,150,227,138,133,222,184,230,123,253,81,168,247,181,193,233,141,87,66,19,121,8,102,214,177,85,65,222,190,2,18,107,159,0,121,247,187,44,108,203,137,246,60,77,232,67,50,175,133,132,145,94,8,26,40,61,111,131,220,243,38,155,90, +200,132,64,233,66,214,150,56,83,208,254,26,99,130,227,224,143,155,238,101,73,130,60,249,37,154,88,185,65,171,4,36,69,230,186,78,173,185,51,80,227,234,122,234,246,149,151,13,236,137,244,225,69,129,2,0,201,2,188,101,14,251,130,155,59,127,84,63,171,228, +82,186,118,103,118,55,223,195,94,63,173,233,63,150,120,254,214,76,38,133,201,9,144,182,188,76,12,255,227,108,0,15,11,81,211,48,191,197,137,23,2,50,58,81,17,226,245,83,31,91,29,222,6,241,117,63,128,196,182,63,128,165,124,9,17,3,199,103,108,56,145,207, +90,4,23,181,222,12,93,69,83,225,255,54,253,12,246,71,118,153,26,13,160,207,20,250,108,169,28,95,116,250,242,159,78,107,122,250,27,239,158,187,237,245,3,107,240,122,64,1,128,100,144,146,86,95,213,226,219,198,222,31,106,242,206,137,13,152,155,229,175,129, +10,81,57,2,245,222,86,56,189,233,139,208,156,65,175,159,38,242,73,27,95,32,134,255,49,80,14,109,102,51,5,64,180,99,144,26,201,28,212,203,166,203,3,137,67,16,223,244,75,144,118,253,21,68,226,141,91,171,78,206,88,194,224,132,226,185,208,232,239,132,255, +219,248,51,120,109,239,223,76,207,13,160,121,1,238,98,251,184,19,190,61,241,185,127,252,100,221,69,111,63,184,229,113,188,16,80,0,32,25,128,120,252,83,150,220,49,246,119,86,167,88,111,118,47,127,218,191,159,178,184,250,76,88,86,127,81,230,58,249,73,49, +72,108,120,6,18,107,30,99,237,121,233,240,29,92,223,71,178,43,40,32,178,78,137,154,52,8,137,173,191,3,121,207,83,172,132,48,83,66,128,70,3,46,105,187,5,218,130,19,225,225,77,63,131,190,248,65,83,239,95,90,42,200,139,92,241,156,235,218,30,241,150,57,174, +123,233,135,107,127,68,91,11,35,40,0,144,209,82,250,231,212,47,159,117,85,235,47,21,89,243,72,38,175,247,71,229,97,150,96,116,102,243,85,208,85,148,161,12,127,69,34,30,255,243,16,95,253,103,80,15,109,97,157,237,10,59,155,31,201,126,33,32,36,133,128,28, +25,17,2,79,130,165,108,41,88,170,79,203,200,210,192,180,210,69,208,232,235,128,7,214,255,16,86,30,124,5,108,130,221,180,113,195,52,47,64,83,20,97,210,249,141,63,116,6,109,245,207,222,189,250,122,226,132,96,118,32,10,0,36,189,207,24,14,230,94,215,126, +67,247,242,154,111,43,9,21,204,84,222,138,166,176,218,254,201,37,11,136,241,255,34,243,36,70,29,77,3,105,243,139,16,95,245,39,80,14,172,103,99,94,1,13,63,146,147,66,32,202,132,128,180,247,239,96,169,60,145,188,78,30,245,100,193,176,163,28,174,234,190, +11,158,218,246,32,252,117,235,111,32,65,238,111,179,114,120,104,94,64,180,63,1,173,75,43,175,13,84,187,106,30,185,225,159,23,13,29,136,245,227,5,128,2,0,73,3,118,175,133,159,127,83,231,247,91,143,171,184,58,62,64,231,160,155,103,252,227,74,140,205,33, +95,222,120,57,27,222,147,9,104,171,222,248,59,191,39,158,211,106,182,198,143,137,125,72,174,11,1,16,93,160,73,3,144,216,248,11,144,118,63,9,214,154,211,193,82,126,220,168,150,15,210,68,192,37,53,103,65,131,191,29,254,247,253,123,96,251,224,6,112,178, +242,93,115,50,104,104,135,209,226,86,255,201,167,253,116,90,249,223,239,92,121,250,174,183,123,182,227,201,207,13,120,60,4,185,129,59,108,119,157,242,227,169,15,142,89,90,113,117,172,95,50,209,248,107,16,149,135,160,202,211,0,95,26,251,221,140,24,127, +58,145,47,242,204,93,16,121,234,14,144,247,18,227,111,33,15,71,209,138,39,29,201,19,33,64,252,44,26,17,136,29,128,216,218,239,67,228,141,47,176,78,131,163,77,147,175,11,110,28,119,15,235,220,25,83,34,44,226,103,22,82,68,6,127,165,115,202,9,119,79,124, +174,122,82,104,44,158,116,20,0,136,73,132,155,188,37,203,190,63,249,177,146,86,223,114,51,147,253,84,242,0,136,42,81,242,64,56,14,110,32,15,134,58,111,235,168,126,46,45,210,3,177,87,127,14,195,127,253,50,72,155,95,78,206,114,23,237,120,194,145,60,125, +218,90,200,245,237,2,117,104,19,196,222,189,29,162,111,221,0,74,223,234,81,221,5,151,197,11,23,183,126,5,206,105,254,18,155,218,153,80,205,107,243,79,39,140,210,132,228,147,238,153,252,247,238,229,181,199,224,9,207,126,112,9,32,203,169,28,23,108,56,225, +219,19,255,100,243,88,58,105,9,142,105,55,43,185,241,45,188,141,60,8,174,37,94,255,201,163,251,161,84,5,18,235,158,128,248,202,135,65,29,220,203,178,250,49,179,31,41,28,33,144,92,131,87,14,173,128,104,239,59,96,169,88,10,214,186,243,129,179,133,71,109, +23,230,85,158,4,213,158,70,248,205,186,239,192,174,161,205,166,117,244,164,93,2,121,145,11,205,187,161,227,17,14,224,194,119,254,176,245,247,120,194,49,2,128,232,160,98,92,81,55,49,254,127,183,186,44,157,84,93,155,5,205,242,15,59,42,224,154,238,111,141, +186,241,151,119,175,132,225,71,111,134,232,203,63,1,45,218,155,236,220,199,225,101,136,20,32,35,67,124,18,219,255,4,145,215,47,7,105,251,195,163,58,124,169,193,215,1,55,142,191,7,38,22,207,101,203,128,180,239,135,41,250,94,214,64,73,40,142,57,215,183, +63,48,235,170,214,203,56,108,214,129,17,0,36,53,58,150,85,205,156,117,117,219,195,22,135,80,76,235,110,205,64,99,235,253,195,48,54,60,19,206,111,185,30,252,182,208,168,125,30,109,248,16,196,222,126,0,164,245,79,211,39,4,150,244,33,8,133,38,187,178,68, +193,62,136,173,251,62,155,64,104,109,188,116,212,6,14,121,44,126,184,162,243,14,248,235,150,122,120,116,235,253,192,17,107,77,135,13,25,22,1,10,121,218,104,42,63,229,226,166,159,218,125,22,223,223,191,254,238,221,128,173,2,80,0,32,159,77,247,242,218, +197,243,111,236,120,72,145,84,31,45,245,51,3,154,240,35,171,9,88,90,115,54,156,210,240,121,16,76,170,7,62,26,18,239,255,13,226,111,61,48,18,238,39,134,95,196,203,14,65,62,42,4,104,254,139,8,74,223,187,16,125,235,122,176,84,46,3,107,253,249,228,126,241, +141,198,155,195,9,117,23,66,185,187,22,126,75,68,200,176,52,0,86,19,170,20,52,85,99,101,130,93,167,212,124,139,24,127,239,211,223,120,247,86,13,69,0,10,0,228,223,26,255,147,231,221,208,254,91,41,174,56,53,83,106,252,57,144,212,88,114,189,127,204,141, +44,225,111,180,80,123,183,65,108,197,175,217,148,62,78,176,226,160,30,4,249,44,168,225,213,84,72,108,123,16,148,131,175,129,181,241,115,32,150,204,29,149,183,158,16,158,203,150,6,127,181,230,27,176,99,112,147,105,121,1,180,69,121,215,169,53,95,37,143, +34,247,211,223,88,117,45,21,6,72,118,128,139,175,217,101,252,151,207,163,158,127,66,53,201,248,211,250,254,8,4,108,197,112,117,247,55,71,207,248,107,10,36,86,253,41,153,221,191,125,69,210,235,231,81,107,34,200,209,105,118,158,53,18,82,163,187,33,246, +238,109,16,91,125,39,104,241,3,163,242,214,213,238,38,248,210,216,239,65,119,104,58,68,88,94,128,57,207,161,216,160,68,71,149,95,115,242,15,38,255,212,25,176,98,86,0,10,0,228,99,198,255,2,98,252,31,160,163,124,205,234,238,71,215,251,233,248,222,235,199, +125,15,154,253,163,179,166,72,7,245,12,63,126,43,68,95,189,23,52,57,142,217,253,8,162,251,233,108,5,16,108,172,129,80,100,197,149,32,239,125,122,84,222,214,107,13,192,23,186,238,132,133,85,203,217,8,112,58,10,220,184,83,144,28,36,84,55,189,248,178,19, +191,59,233,94,103,192,134,34,0,5,0,242,33,227,255,43,37,174,8,102,120,254,84,181,83,245,62,177,100,46,92,219,125,55,107,7,58,10,110,63,107,223,27,121,236,43,32,239,94,149,76,242,227,5,60,185,8,98,44,28,144,76,18,140,31,130,216,170,255,76,70,3,18,135, +210,254,174,116,138,224,89,205,87,195,233,141,87,178,126,33,138,102,78,9,50,141,4,148,119,5,47,57,241,187,19,239,117,96,36,0,5,0,26,127,98,252,111,104,167,198,159,55,195,243,167,106,61,70,84,251,162,234,51,224,178,246,219,193,33,186,211,254,25,212,254, +221,16,121,242,118,214,212,71,147,19,201,78,126,8,130,152,248,164,182,176,252,128,100,52,224,11,32,31,120,105,84,222,150,62,71,46,109,191,21,44,188,245,200,132,80,163,208,214,193,101,157,129,75,150,125,119,18,21,1,120,110,81,0,20,184,231,159,80,77,49, +254,84,165,203,154,68,84,251,21,112,102,211,23,129,31,133,250,122,105,195,51,48,252,232,77,32,237,248,103,50,201,15,189,126,4,73,111,52,32,182,15,98,43,191,6,241,247,127,72,110,250,104,218,223,149,246,9,248,98,215,93,224,179,6,217,146,128,25,208,229, +128,178,46,38,2,126,225,12,226,114,0,10,128,194,51,254,203,169,231,47,155,228,249,203,170,68,78,38,15,23,181,222,12,139,171,207,76,251,254,107,241,65,136,190,120,15,68,158,255,30,249,126,8,215,250,17,100,212,158,218,86,246,74,108,123,8,34,255,188,26, +148,129,117,105,127,203,102,127,23,92,59,246,219,80,238,170,101,115,4,76,17,1,67,50,148,19,17,112,252,55,39,220,43,88,208,20,161,0,40,28,227,127,242,188,27,58,126,75,61,127,227,107,254,28,107,235,107,23,157,112,69,231,127,178,25,224,233,70,217,183,134, +117,243,75,172,123,42,25,238,199,12,127,4,201,64,52,192,13,234,192,122,136,190,121,45,72,59,254,152,246,119,164,198,255,186,177,223,129,38,95,39,75,48,54,131,56,17,1,21,227,139,46,153,255,229,142,31,112,216,50,16,5,64,1,24,255,197,243,110,236,248,173, +156,80,172,170,9,198,159,134,228,104,104,142,206,252,238,40,154,146,246,253,79,172,250,51,12,63,241,31,160,246,110,31,169,235,199,155,22,65,50,6,237,27,160,202,16,91,251,61,150,36,168,73,253,105,125,59,218,61,244,170,238,111,30,41,19,52,39,18,32,209, +102,65,87,31,115,75,231,93,40,2,80,0,228,45,237,39,84,205,156,127,83,199,239,21,83,154,252,112,172,198,191,216,81,1,87,119,223,13,13,222,246,180,238,187,22,27,128,232,179,223,134,232,171,63,79,246,43,23,109,120,66,17,36,43,130,1,2,203,13,144,246,60,5, +81,186,36,208,255,94,90,223,206,41,186,225,242,142,59,96,106,233,66,211,68,192,72,179,160,155,137,8,248,42,138,0,20,0,121,71,197,184,96,215,156,107,219,30,86,18,170,215,140,53,255,152,50,12,149,238,6,184,102,236,183,200,215,250,180,238,187,114,96,61, +12,63,118,11,36,54,62,155,44,239,227,48,209,15,65,178,78,7,208,37,129,161,109,172,149,176,180,243,47,105,125,47,171,96,131,75,218,110,129,185,21,39,154,214,48,136,150,8,118,157,82,115,231,130,175,116,94,133,103,19,5,64,62,25,255,134,19,191,61,241,17, +209,33,20,211,113,153,198,141,127,4,234,188,99,88,119,63,26,1,72,39,52,203,63,242,196,215,88,91,95,108,229,139,32,89,14,49,204,160,74,16,95,251,29,136,175,251,46,251,62,109,111,197,137,112,222,152,27,96,81,245,233,16,147,35,198,69,0,249,231,177,33,22, +9,248,225,184,51,235,206,193,147,137,2,32,231,41,170,247,20,19,227,255,103,171,75,172,49,99,176,15,77,190,105,244,117,16,227,255,45,8,164,121,126,120,124,229,31,32,242,194,247,89,71,63,12,249,35,72,206,132,2,216,168,225,196,246,135,33,186,242,86,114, +255,14,167,239,173,200,175,51,155,174,98,149,71,102,137,0,90,34,56,231,186,182,95,117,47,175,93,130,39,19,5,64,206,226,14,219,93,75,254,115,220,255,217,60,150,14,57,110,134,231,63,12,77,254,78,248,66,231,215,217,24,207,116,146,120,239,175,16,123,253, +62,54,196,7,179,252,17,36,231,84,0,209,1,30,144,247,191,4,177,213,95,39,134,85,78,235,187,157,222,116,37,156,88,119,33,139,78,26,21,1,116,88,16,113,150,172,243,110,236,120,176,110,102,241,100,60,151,40,0,114,14,98,244,249,101,223,155,244,235,226,22,239, +44,41,170,24,247,252,21,234,249,19,227,223,69,140,191,53,189,198,95,217,179,138,24,255,95,2,103,177,177,193,36,8,130,228,168,12,176,16,17,176,239,121,72,108,186,47,237,239,181,172,254,98,56,177,246,66,83,34,1,52,79,138,142,67,95,124,219,216,135,43,198, +21,213,227,153,68,1,144,51,208,166,22,243,191,220,241,253,146,54,255,105,52,156,101,134,241,111,58,108,252,211,236,249,131,28,135,232,107,247,210,59,16,147,253,16,36,31,68,128,232,74,142,23,78,115,117,192,17,17,80,119,33,43,79,54,44,2,36,21,236,30,75, +229,177,119,142,251,163,167,196,17,196,51,137,2,32,39,152,117,77,235,245,237,199,85,93,29,31,52,158,128,67,67,106,204,248,119,222,153,126,227,79,72,108,120,22,148,3,27,112,205,31,65,242,70,1,144,199,188,154,128,196,230,251,71,229,237,168,8,88,82,115, +22,203,87,50,42,2,164,152,2,174,144,173,251,196,239,76,124,192,21,182,227,224,0,20,0,217,205,248,179,235,79,27,123,90,237,183,105,93,171,193,187,246,72,182,63,29,205,233,177,6,210,191,243,196,235,151,222,255,27,113,252,45,120,34,17,36,159,16,236,160, +244,188,9,234,224,134,81,121,187,211,26,46,135,37,35,137,129,96,84,4,68,21,40,105,243,47,90,116,107,215,127,243,34,246,8,64,1,144,165,212,205,40,158,52,251,154,214,251,20,73,229,52,205,200,69,159,108,242,83,229,110,128,43,153,231,31,24,149,253,87,122, +54,147,215,86,186,134,129,39,19,65,242,236,81,175,145,103,138,124,224,31,163,246,142,167,55,125,1,230,86,158,4,17,19,170,16,104,52,181,110,102,201,165,243,111,234,188,25,207,37,10,128,172,35,220,226,173,88,250,95,227,126,175,72,154,219,104,163,159,184, +26,133,98,103,37,49,254,255,149,246,82,191,143,8,128,125,235,146,37,127,216,222,23,65,242,14,142,19,65,233,95,51,170,239,121,110,203,117,48,163,108,137,41,29,3,105,203,224,142,147,170,239,162,81,86,60,155,40,0,178,6,79,137,195,190,244,142,113,15,88,157, +98,173,42,27,43,247,163,131,125,252,214,16,92,217,241,95,16,78,115,147,159,127,17,0,125,59,209,246,35,72,222,42,0,1,180,232,94,114,163,199,71,239,45,201,175,11,198,220,4,227,195,179,13,15,16,162,65,85,37,174,192,172,171,90,127,89,59,45,60,14,79,40,10, +128,140,35,218,4,56,230,150,206,31,135,154,188,179,104,194,138,17,232,72,95,135,232,130,43,58,238,128,10,119,221,168,127,22,45,62,128,222,63,130,228,111,8,0,52,37,6,154,26,31,213,183,21,121,11,92,218,254,85,24,19,24,103,120,148,48,141,174,106,170,230, +93,124,251,216,223,251,43,93,97,60,169,40,0,50,202,244,43,90,174,169,159,85,122,137,209,140,127,69,147,65,224,5,184,180,237,107,80,239,107,203,208,167,209,240,132,34,72,94,147,153,123,220,46,56,225,178,142,219,161,202,221,196,74,4,141,56,26,180,157,186, +195,103,109,60,225,238,137,247,219,125,86,172,85,70,1,144,25,218,79,168,58,102,226,185,13,223,137,15,38,140,169,90,77,37,2,64,129,243,90,110,128,142,162,204,53,190,226,44,46,20,1,8,146,207,182,159,120,227,92,134,58,123,122,173,1,184,162,243,14,8,217, +75,33,161,198,12,109,139,70,91,195,45,222,197,243,110,104,255,22,158,88,20,0,163,78,121,87,160,122,238,245,237,247,75,49,89,52,146,240,79,235,100,105,210,223,169,13,159,103,227,53,51,122,49,120,203,146,11,109,8,130,228,33,10,240,182,34,54,39,32,83,208, +225,101,151,117,222,14,78,209,5,178,102,44,106,26,31,146,96,204,146,138,235,39,158,223,112,54,158,91,20,0,163,134,221,103,177,46,188,181,251,126,209,46,148,170,178,49,131,73,19,99,22,85,157,206,134,105,100,26,33,220,8,156,128,125,255,17,36,47,3,0,170, +76,68,126,11,100,58,207,167,214,51,6,46,110,189,133,37,8,170,154,129,188,41,242,232,149,99,10,76,191,172,229,167,181,51,138,187,240,12,163,0,24,21,230,223,212,249,237,162,122,207,108,217,96,210,31,53,254,147,74,230,193,242,198,43,178,226,115,9,225,102, +224,61,165,0,170,140,39,25,65,242,12,142,19,64,44,154,146,21,251,210,21,154,198,166,8,74,106,194,80,183,64,86,114,205,129,103,209,215,186,255,215,87,225,244,226,89,70,1,144,86,38,95,220,116,86,203,162,138,171,227,195,198,194,87,49,37,202,198,250,94,56, +230,203,192,103,73,207,125,206,226,4,75,237,140,145,94,0,8,130,228,13,106,156,120,255,77,32,4,186,179,102,151,230,84,156,8,75,106,206,54,92,30,72,199,172,187,130,182,142,133,183,118,255,183,96,69,147,134,2,32,77,212,76,13,143,153,122,105,211,79,228,152, +108,40,87,142,214,250,135,236,37,240,185,246,91,89,217,95,54,97,105,59,22,120,103,32,57,12,8,65,144,188,64,83,37,176,86,47,39,79,252,236,106,167,127,74,253,165,48,181,228,24,195,34,32,17,145,161,122,74,232,220,105,159,111,190,2,207,54,10,0,211,113,248, +172,246,121,55,118,252,134,227,192,111,164,211,31,45,247,179,240,54,184,164,237,171,16,114,148,103,223,5,225,46,6,91,247,114,208,164,40,158,116,4,201,7,227,47,71,88,232,95,44,61,38,235,246,141,227,120,56,111,204,13,172,244,217,104,121,32,237,20,56,241, +220,134,239,54,206,45,29,143,103,29,5,128,169,204,187,169,227,174,96,141,123,178,28,215,223,233,143,174,117,209,102,63,103,53,95,13,77,254,236,205,89,177,118,156,8,150,186,233,160,37,134,241,196,35,72,46,163,38,88,230,191,173,245,186,172,29,239,77,163, +160,151,182,221,10,126,91,136,60,31,245,47,63,106,228,209,172,170,154,131,58,106,238,176,221,131,39,31,5,128,41,140,61,163,110,217,152,37,21,215,210,178,19,35,208,48,23,205,246,159,81,182,52,187,63,48,121,80,56,102,95,11,98,113,11,70,2,16,36,103,141, +191,196,66,254,246,206,175,2,239,172,202,234,93,45,113,86,194,69,173,95,102,17,1,218,23,69,47,52,31,192,93,108,239,88,112,115,231,247,104,231,67,4,5,128,33,194,77,222,138,105,159,111,254,169,20,53,150,25,79,141,255,216,240,76,56,185,225,115,57,241,185, +57,187,23,28,199,124,21,132,162,122,20,1,8,146,147,198,223,66,140,255,109,32,4,39,229,196,46,183,145,253,60,181,225,50,214,23,197,72,146,85,98,88,134,134,185,165,151,78,190,176,225,12,188,16,80,0,232,134,102,148,30,243,213,174,159,217,220,162,161,122, +255,132,26,135,82,87,53,92,48,230,6,16,184,220,233,92,201,187,195,224,90,244,31,40,2,16,36,23,141,127,215,109,32,134,167,231,212,174,31,83,117,26,204,42,59,206,112,82,160,20,145,105,197,214,143,75,90,125,181,120,65,160,0,208,197,140,43,199,92,85,214, +17,56,78,138,234,207,136,167,45,126,173,188,21,46,106,189,25,124,214,162,156,59,6,28,17,1,206,17,17,0,40,2,16,36,103,60,127,49,52,61,39,63,194,153,205,87,65,189,175,99,36,41,80,231,97,80,52,16,173,124,104,254,151,59,127,110,117,137,184,22,128,2,32,53, +106,166,134,59,198,159,89,127,23,45,47,209,143,198,122,94,159,214,120,5,171,249,207,217,139,100,36,18,192,99,36,0,65,114,195,248,135,167,231,236,199,160,131,131,104,62,128,219,226,3,89,211,255,252,165,142,91,121,87,112,225,244,203,91,174,197,139,3,5, +192,81,99,243,88,196,185,215,183,255,92,211,52,151,166,234,15,253,71,228,97,22,206,154,91,177,44,231,143,9,139,4,44,190,13,151,3,16,4,141,127,218,41,119,213,194,217,205,215,130,162,202,134,58,5,210,65,109,221,167,213,222,89,61,57,212,137,23,9,10,128, +163,130,40,198,175,20,213,123,166,201,113,253,161,127,234,249,215,122,91,224,140,230,47,230,207,197,226,10,97,78,0,130,160,241,31,21,104,155,244,99,170,78,53,148,15,144,156,109,166,57,169,67,103,115,91,44,120,177,124,20,156,252,242,49,106,167,134,39, +116,157,90,115,107,194,64,171,95,58,224,194,198,59,224,130,49,55,130,67,72,83,167,63,162,140,19,187,214,129,180,125,53,200,7,182,129,26,237,103,87,59,103,119,131,24,172,0,75,101,27,88,171,218,129,179,153,251,254,135,115,2,34,127,251,79,80,14,109,6,206, +226,192,139,6,65,242,214,248,107,160,36,54,130,28,95,3,138,180,13,52,181,47,89,112,207,59,129,23,75,65,180,182,128,104,107,3,142,79,79,217,253,41,13,159,135,173,3,239,195,198,254,85,96,211,57,197,144,246,110,9,53,122,167,78,251,124,243,77,207,127,239, +189,175,227,69,131,2,224,19,177,123,45,214,57,95,106,255,41,185,230,173,6,74,81,153,247,127,78,203,151,160,198,211,98,254,237,40,197,32,242,207,191,146,215,95,64,222,183,25,180,196,72,247,44,158,251,64,242,210,151,96,97,66,192,222,49,15,92,83,78,5,129, +124,111,90,36,96,36,39,96,24,69,0,130,100,222,248,119,165,33,225,79,75,64,124,248,41,136,15,61,193,4,128,166,142,68,252,56,254,67,174,181,198,122,134,240,98,9,88,157,51,193,238,57,133,124,95,97,234,110,88,120,43,156,63,230,6,248,214,91,87,177,164,64, +129,211,103,178,168,67,215,189,188,246,107,155,95,222,247,232,246,21,7,87,226,197,51,242,44,199,67,240,1,211,46,107,185,161,168,193,51,209,72,232,159,134,171,38,23,47,128,121,21,39,153,190,127,241,141,43,224,224,79,46,134,254,63,125,3,164,221,235,217, +205,72,61,126,206,238,2,206,234,76,190,136,199,207,126,102,177,129,210,183,7,134,158,253,21,28,248,201,133,48,244,226,253,73,229,110,114,36,0,171,3,16,36,195,158,191,201,198,95,138,189,1,3,123,175,132,225,131,119,19,239,121,45,115,48,56,222,149,124,113, +142,228,139,119,142,252,222,14,154,124,8,98,253,15,193,192,158,43,32,54,240,144,233,31,181,204,85,3,167,55,94,105,104,114,224,200,163,207,54,247,250,246,159,216,220,22,116,124,81,0,124,148,154,105,225,14,22,250,31,50,144,117,74,46,80,218,209,234,204, +230,171,77,223,191,225,127,60,0,61,247,93,3,210,222,13,71,12,252,103,118,186,18,44,192,57,60,160,69,135,96,224,175,223,133,158,255,185,30,212,225,94,115,35,1,139,147,213,1,40,2,16,36,3,198,223,228,176,127,172,255,127,96,104,223,205,32,19,175,63,105,224, +109,240,153,253,249,137,87,206,241,110,208,180,8,68,122,126,4,195,7,238,32,6,55,98,234,126,77,47,91,66,94,75,33,38,235,223,46,117,236,66,141,222,233,211,46,107,190,6,47,34,20,0,71,176,185,69,126,238,117,237,63,34,226,210,161,105,58,21,230,136,50,61,155, +92,91,94,107,192,212,253,27,122,238,62,232,255,203,221,204,224,115,22,123,234,27,16,68,38,4,98,171,159,131,67,191,186,10,148,190,189,230,69,2,92,88,29,128,32,249,96,252,35,189,63,38,175,159,177,176,62,245,236,83,39,41,4,226,195,127,131,161,3,255,65,4, +129,185,207,131,211,27,175,96,209,0,201,192,188,0,218,37,176,251,180,218,219,202,187,2,77,120,49,161,0,96,76,56,167,254,243,161,6,207,92,163,161,255,5,85,167,66,71,209,20,83,247,45,250,246,227,48,240,212,127,3,103,115,146,179,101,172,139,32,21,1,210, +206,53,208,243,155,235,76,21,1,180,58,192,137,213,1,8,146,211,198,63,214,255,32,51,224,70,205,2,77,8,148,162,175,66,228,208,247,76,221,71,218,23,224,236,150,107,128,35,251,167,129,190,229,76,90,214,77,252,40,207,236,107,218,126,32,88,208,252,21,252,17, +40,105,245,87,78,56,183,241,206,248,176,254,208,63,109,245,91,231,109,133,101,117,23,153,186,111,210,174,181,196,243,255,22,17,228,150,15,146,111,140,122,236,54,23,203,31,48,91,4,124,56,39,0,69,0,130,228,162,241,167,21,67,230,52,205,163,34,128,38,16, +198,6,30,52,117,95,219,2,19,89,187,224,168,129,165,0,41,166,64,197,216,224,210,73,23,52,158,131,2,160,144,63,188,192,193,140,47,180,124,75,180,241,69,122,27,254,208,201,85,34,39,178,208,191,222,50,149,79,220,110,164,31,250,254,112,59,168,241,8,11,225, +155,9,141,38,164,67,4,240,40,2,16,36,125,198,191,43,93,198,255,33,83,141,255,7,34,192,1,209,222,95,128,28,251,167,169,219,61,161,238,66,226,112,141,129,132,18,211,239,180,69,100,24,127,118,221,55,131,53,238,162,66,190,180,10,90,0,140,89,92,177,168,102, +106,248,108,35,237,126,227,74,4,22,215,156,5,13,190,118,83,247,173,255,145,187,153,145,214,181,230,159,37,34,0,19,3,17,196,68,207,223,228,108,255,72,207,97,207,223,105,186,241,79,66,151,44,85,86,77,160,42,251,77,219,170,77,176,195,89,205,87,131,200,91, +65,211,89,217,68,103,5,216,60,150,202,233,87,182,220,129,2,160,0,113,248,172,182,169,151,53,127,151,206,143,214,173,34,137,2,173,39,134,255,216,26,115,35,73,195,47,255,14,162,111,61,206,178,253,211,73,186,150,3,62,92,29,128,145,0,4,49,193,248,135,211, +96,252,7,30,76,139,231,255,209,135,140,21,20,101,15,68,14,125,151,252,70,49,109,179,141,190,78,88,88,181,28,162,138,254,165,0,234,248,53,205,43,187,188,97,78,233,100,20,0,5,198,228,139,27,175,241,87,186,58,244,10,0,170,60,69,114,115,158,217,116,21,107, +86,97,22,137,237,171,96,224,169,159,144,251,102,52,154,235,104,35,34,224,253,17,17,176,207,188,251,158,85,7,224,114,0,130,100,157,241,239,29,37,227,127,248,89,192,185,136,177,253,7,196,250,127,107,234,118,143,173,61,151,229,94,37,244,86,5,104,44,18,32, +204,184,162,229,123,22,135,80,144,182,176,32,63,116,73,171,175,186,235,148,154,175,36,12,36,254,81,229,73,179,254,205,12,253,171,209,65,232,123,248,191,64,147,227,134,51,254,83,19,1,238,17,17,112,173,201,213,1,97,156,29,128,32,217,102,252,251,71,207, +248,31,17,1,188,19,162,125,255,99,106,62,0,93,10,56,163,233,11,196,136,241,186,27,4,177,222,0,77,222,25,19,206,109,56,31,5,64,1,192,241,52,241,175,245,78,193,38,248,245,38,254,209,58,212,106,79,35,28,87,123,158,169,251,54,240,216,61,32,239,73,223,186, +255,103,71,2,176,58,0,65,50,138,150,127,198,255,3,83,163,193,240,161,239,131,166,244,153,182,213,102,127,55,204,173,92,102,104,96,16,29,27,60,246,244,218,59,189,165,142,64,161,93,110,5,39,0,26,231,150,206,172,153,26,58,71,210,153,248,167,141,104,205, +211,26,175,96,115,171,205,34,250,246,19,16,121,227,207,105,95,247,255,183,198,58,141,137,129,24,9,64,144,163,240,252,185,220,203,246,63,250,7,140,21,20,121,59,217,151,31,153,186,217,19,106,47,132,50,103,53,235,196,170,235,176,203,42,56,252,214,138,233, +87,180,220,140,2,32,143,161,235,60,228,36,127,83,77,168,186,63,55,109,69,57,189,116,49,116,4,205,203,27,81,14,237,132,254,199,190,7,156,104,201,220,205,153,102,17,128,179,3,16,228,51,140,127,206,102,251,167,240,28,224,92,16,31,250,59,36,134,30,55,109, +155,46,139,135,77,13,164,83,88,65,231,82,0,141,2,52,47,40,255,98,121,119,160,25,5,64,158,210,189,188,246,204,162,58,207,12,89,103,226,159,172,201,16,180,23,195,178,250,139,77,188,241,85,232,123,228,110,80,7,15,177,222,253,217,192,104,84,7,160,8,64,144, +79,48,254,185,154,237,159,202,243,133,183,178,150,195,170,188,211,180,109,78,40,158,3,227,195,179,33,166,232,123,174,208,229,96,222,202,59,103,92,57,166,160,198,5,23,140,0,240,20,219,93,19,207,107,184,67,138,25,24,246,163,196,217,186,127,192,22,54,109, +191,134,95,121,8,226,107,95,98,70,55,123,248,120,78,0,86,7,32,8,26,127,179,16,137,223,211,11,195,61,63,160,7,192,180,173,158,210,240,57,112,137,222,145,72,128,158,40,128,12,149,227,138,78,109,61,182,114,54,10,128,60,99,236,25,117,87,56,131,182,70,85, +214,23,34,138,43,49,150,112,50,171,252,56,211,246,73,222,187,17,6,159,254,217,40,149,252,233,21,1,35,213,1,253,230,86,7,56,23,225,0,33,4,141,127,190,148,250,165,236,8,112,78,144,34,175,65,108,240,143,166,109,179,196,89,5,139,170,79,39,207,106,157,207, +20,141,229,3,112,147,47,106,252,186,197,33,114,133,112,9,22,132,0,8,55,121,139,59,79,169,185,73,26,214,159,248,39,242,34,83,152,2,103,82,91,94,85,129,254,71,190,205,74,255,70,175,228,207,64,36,224,215,102,231,4,224,0,33,4,141,127,254,101,251,167,240, +12,224,237,16,237,187,15,20,105,171,105,219,164,115,2,170,60,77,186,19,2,233,242,112,81,189,103,102,235,146,138,83,80,0,228,9,19,47,104,184,222,238,17,195,170,206,178,63,154,248,55,181,116,17,52,249,187,76,219,39,22,250,223,184,34,57,229,47,203,193,217, +1,8,146,6,227,159,175,217,254,71,141,0,154,58,8,209,158,31,131,89,75,1,116,30,203,178,186,139,117,47,3,48,17,16,83,96,194,249,245,183,59,131,54,107,190,95,138,121,47,0,138,91,124,53,141,115,74,175,212,219,239,95,33,23,146,223,86,4,39,212,154,215,39,66, +62,176,21,6,159,190,55,75,67,255,153,19,1,152,24,136,20,138,241,119,164,35,219,191,55,123,178,253,143,250,185,194,57,33,17,125,29,226,131,143,152,182,205,113,225,153,208,77,142,109,76,103,155,96,69,82,33,88,227,233,24,119,70,221,121,249,126,57,230,189, +0,152,112,94,253,205,162,93,112,235,156,25,193,214,147,142,169,90,14,65,123,137,57,59,164,105,172,225,143,26,237,207,226,208,255,167,137,0,156,29,128,32,134,61,127,98,252,133,112,186,74,253,114,193,243,255,216,115,133,183,177,165,0,85,222,99,218,54,79, +172,191,136,69,3,84,157,15,254,68,68,130,246,101,85,183,184,66,25,108,204,130,2,192,24,165,29,254,230,198,185,165,23,208,236,78,61,208,117,164,42,119,3,204,175,60,217,188,27,245,173,71,33,182,246,197,44,203,250,63,106,245,130,213,1,8,98,208,248,23,78, +182,255,209,34,130,170,244,176,210,64,179,168,118,55,193,204,178,99,217,180,86,93,167,75,214,192,29,182,215,143,61,189,230,226,124,190,44,243,86,0,208,150,191,179,190,216,122,139,96,21,28,122,189,127,69,149,89,217,31,85,146,166,60,3,6,15,193,224,223, +126,10,156,152,203,75,75,31,171,14,192,217,1,8,146,57,227,223,155,235,198,255,240,243,218,73,188,238,231,64,138,188,104,218,54,151,214,158,205,74,182,21,77,167,3,24,85,160,253,196,234,47,17,33,224,65,1,144,99,212,78,15,183,85,140,15,158,165,215,251,167, +101,127,45,129,177,48,177,120,158,105,251,68,75,254,148,222,221,89,211,240,199,188,72,0,206,14,64,144,140,24,255,254,220,55,254,35,119,62,249,37,64,164,239,94,208,212,33,83,182,232,183,134,96,65,213,105,108,108,187,190,40,128,74,163,0,53,221,167,213, +92,142,2,32,151,62,20,241,254,39,158,219,240,101,98,167,172,122,58,67,210,178,63,158,227,224,248,218,243,201,87,115,14,81,98,203,91,16,249,231,35,57,26,250,255,148,91,22,103,7,32,200,103,27,255,130,207,246,63,218,7,138,21,148,196,22,136,13,252,206,180, +77,206,173,88,6,229,174,90,144,232,185,208,21,5,144,161,99,89,245,181,238,144,221,139,2,32,71,168,156,80,52,134,120,255,103,208,16,142,94,239,191,43,52,29,90,131,19,204,217,33,69,134,129,39,127,12,154,162,208,180,215,188,58,214,56,59,0,65,62,221,248, +99,182,127,138,247,61,249,76,177,129,63,130,34,109,50,101,123,14,209,5,139,170,207,0,89,247,160,32,13,92,97,123,121,247,233,53,23,162,0,200,17,218,79,172,186,142,227,56,155,158,127,171,129,10,86,222,10,199,214,156,107,218,254,12,191,241,103,72,108,121, +155,8,92,123,62,30,110,172,14,64,144,79,242,252,49,219,95,151,73,210,180,8,68,123,127,97,218,22,167,149,46,130,90,111,11,27,227,174,43,10,16,145,161,131,230,2,228,97,69,64,222,9,128,226,22,95,125,227,220,178,243,164,136,94,239,63,202,6,75,212,121,199, +152,243,44,24,234,129,161,231,238,3,206,98,131,252,229,99,57,1,253,88,29,128,160,241,199,108,127,157,247,60,235,13,240,10,36,76,74,8,20,137,67,183,184,250,44,80,84,125,54,65,85,88,20,160,166,123,121,237,57,40,0,178,156,9,231,214,95,101,177,243,14,77, +75,125,241,95,211,84,176,11,46,114,177,156,105,218,254,12,61,255,107,80,122,119,229,65,226,223,209,138,128,247,161,231,215,105,168,14,64,17,128,228,140,241,255,15,204,246,55,42,2,64,128,88,223,125,228,153,28,51,101,123,19,137,83,215,224,239,128,132,129, +40,0,141,44,187,66,246,188,242,228,242,74,0,148,140,241,149,53,206,45,189,80,111,215,191,152,26,133,201,37,243,161,210,221,96,202,254,208,97,63,195,43,254,148,87,137,127,41,69,2,204,204,9,112,97,117,0,146,205,151,254,135,61,255,25,230,27,255,254,194, +49,254,201,27,222,10,114,98,3,196,7,255,98,142,161,227,4,54,40,72,111,99,32,26,5,112,23,219,91,154,230,149,230,213,140,128,188,18,0,109,199,87,93,106,113,138,126,77,87,230,191,10,78,193,13,11,171,150,155,182,63,131,207,220,11,90,124,152,102,182,20,212, +179,16,103,7,32,5,231,249,115,233,44,245,123,168,176,140,255,225,231,8,111,135,216,192,239,65,83,14,154,178,189,113,161,153,208,232,107,215,29,5,144,227,10,116,157,86,123,157,197,33,228,205,3,61,111,62,136,167,212,225,105,94,88,246,121,73,175,247,47, +71,97,82,201,60,40,115,213,154,178,63,241,77,43,32,186,250,57,34,100,157,80,136,224,236,0,164,96,140,255,225,108,255,48,102,251,155,139,8,170,188,143,136,128,135,76,139,2,44,172,210,31,5,80,18,42,132,26,60,147,90,151,86,30,131,2,32,203,232,58,165,230, +44,87,200,94,73,67,53,169,123,255,26,216,69,39,204,175,52,41,186,67,46,176,193,103,126,193,190,230,91,217,95,106,34,192,149,214,62,1,60,138,0,36,11,140,63,102,251,167,51,10,224,132,216,224,99,160,72,219,77,217,222,216,176,177,40,128,34,171,208,122,92, +229,181,180,211,44,10,128,44,193,230,22,197,166,5,101,95,160,99,28,117,121,235,114,4,198,135,103,155,182,246,31,91,253,44,36,54,189,153,83,211,254,210,67,26,171,3,104,36,96,241,109,184,28,128,100,220,248,155,237,249,71,123,10,43,225,239,179,76,20,29, +25,28,27,248,95,83,182,38,112,2,235,14,168,119,92,176,18,87,160,172,195,191,176,110,70,113,55,10,128,44,161,97,110,233,194,96,173,187,139,142,113,212,227,253,91,5,59,185,40,78,53,199,228,201,9,24,124,254,55,57,55,233,47,253,34,224,112,117,128,121,34, +128,119,133,176,68,16,201,43,227,79,61,255,40,26,255,143,69,1,28,144,24,126,22,148,196,251,166,108,143,230,2,212,120,154,217,176,183,148,159,102,26,155,51,35,118,44,171,186,18,5,64,54,124,0,145,167,77,26,190,168,199,248,83,104,159,232,142,162,201,80, +235,105,49,71,189,175,124,10,164,29,239,229,121,221,191,145,72,192,181,88,29,128,228,240,165,140,131,125,50,19,5,136,67,180,255,183,166,108,77,36,231,111,94,197,73,32,235,109,15,28,81,160,122,114,248,140,112,179,183,20,5,64,134,169,158,84,212,81,62,46, +184,72,79,248,63,217,243,95,48,109,237,95,75,68,97,232,69,114,145,138,22,188,103,63,201,88,99,117,0,146,235,158,63,102,251,103,44,10,32,69,95,1,57,254,158,41,219,155,84,50,31,202,92,53,32,107,169,139,0,218,99,198,234,18,124,173,199,86,158,143,2,32,195, +180,29,87,117,9,167,129,168,75,201,17,85,217,228,235,132,150,192,56,115,188,255,183,31,7,121,207,250,28,31,247,155,251,34,0,19,3,145,180,24,127,204,246,207,228,147,131,24,94,217,180,92,0,58,226,125,86,217,177,32,41,122,27,3,41,48,102,113,197,37,206,128, +45,167,67,189,57,45,0,188,101,142,64,205,212,240,217,180,62,83,215,61,173,169,48,167,98,25,27,68,105,138,247,255,202,67,104,252,143,74,4,96,117,0,146,123,198,31,179,253,51,252,220,224,236,196,240,190,6,114,124,181,41,219,155,86,182,24,2,246,98,80,116, +36,4,178,198,64,97,91,115,227,252,210,69,40,0,50,68,243,194,242,83,156,1,107,177,158,210,63,58,29,170,210,93,15,99,77,186,161,233,218,191,188,103,3,0,10,128,163,145,75,31,36,6,178,234,0,147,167,8,98,117,0,146,6,227,143,189,253,179,32,10,0,178,105,125, +1,188,214,32,76,42,158,199,242,192,244,160,200,26,180,46,169,184,44,151,75,2,115,86,0,88,157,34,215,113,98,245,231,36,157,165,127,116,62,244,244,210,165,96,225,141,71,112,52,57,14,195,175,254,30,215,254,83,22,1,238,100,36,224,215,215,97,117,0,146,181, +198,223,129,9,127,89,20,5,112,128,20,121,21,228,248,26,83,182,55,171,252,120,54,50,152,118,130,77,217,137,140,43,80,210,30,56,166,172,35,208,132,2,96,148,41,31,27,156,228,175,118,77,214,147,253,79,107,64,3,182,16,76,41,53,167,161,19,173,251,151,118,173, +3,78,196,204,255,212,69,128,51,125,213,1,40,2,16,19,60,127,1,141,127,150,69,1,18,16,31,252,63,115,236,136,171,22,218,139,38,65,92,79,46,128,70,3,190,188,173,245,184,138,243,80,0,140,50,109,199,85,94,192,233,188,123,226,106,12,198,23,207,6,159,53,104, +194,131,66,129,225,87,254,128,117,255,70,110,233,116,37,6,162,8,64,12,26,255,180,101,251,115,104,252,245,71,1,236,144,136,188,2,138,180,217,156,40,64,217,113,196,16,234,59,23,82,84,134,250,89,37,231,56,131,182,156,236,250,150,147,2,192,87,238,244,87, +79,9,157,42,233,44,253,179,241,118,152,81,182,212,148,125,137,175,127,5,18,219,223,5,206,98,199,59,51,75,69,128,11,171,3,144,20,141,63,102,251,103,183,217,210,212,97,136,15,254,217,148,173,141,9,78,128,106,79,147,174,198,64,52,255,204,83,236,168,111, +154,95,186,0,5,192,40,209,188,176,252,56,103,192,86,162,169,169,39,255,209,178,143,38,127,23,212,152,212,248,103,248,213,63,224,253,104,154,8,72,211,40,97,172,14,64,82,244,252,49,219,63,203,159,21,196,137,75,12,63,79,12,176,241,220,33,145,19,97,106,233, +34,150,24,174,235,178,81,84,104,156,91,118,65,46,158,214,156,19,0,180,243,95,243,49,101,23,40,9,157,165,127,228,215,244,178,37,166,236,139,180,99,53,196,55,190,129,222,191,105,124,124,118,128,217,213,1,73,17,128,203,1,200,167,26,255,46,204,246,207,13, +4,98,120,123,32,62,248,184,41,91,155,88,60,15,252,182,176,174,25,1,82,92,129,242,238,192,226,226,102,95,5,10,128,52,19,110,242,54,6,235,61,179,229,68,234,201,127,138,38,67,177,163,2,186,138,166,153,227,253,191,254,48,171,0,40,228,137,127,105,21,1,191, +78,223,114,0,138,0,228,227,198,159,133,253,67,104,252,115,43,10,240,55,208,212,33,195,219,242,219,138,160,43,52,77,95,73,32,49,69,22,135,232,105,152,83,114,50,10,128,52,211,118,92,197,105,162,77,176,65,234,209,127,114,114,227,108,234,31,45,251,48,138, +210,187,27,98,107,94,64,239,63,109,34,192,153,182,229,0,108,27,140,252,139,231,143,217,254,57,136,8,138,180,19,18,145,231,77,217,218,212,210,133,32,240,22,246,252,73,21,57,161,208,165,233,179,45,14,33,167,78,116,78,9,0,139,83,224,107,166,21,159,174,196, +117,38,255,137,14,152,108,82,174,70,228,205,71,65,29,234,197,236,255,116,42,252,116,182,13,198,234,0,36,237,217,254,104,252,211,254,140,224,68,136,15,209,101,0,197,240,182,104,91,248,100,50,160,164,227,82,82,33,80,229,154,92,218,17,232,64,1,144,38,202, +58,2,227,253,149,206,110,85,78,61,252,79,147,255,26,188,237,80,237,54,222,179,65,75,68,32,250,206,83,56,241,47,151,69,128,11,103,7,160,241,79,119,182,63,26,255,244,63,32,172,160,196,215,130,28,91,105,252,153,192,9,48,177,120,174,174,100,64,58,38,152, +23,121,161,97,78,201,105,40,0,210,68,203,226,138,229,28,207,241,154,142,240,63,237,247,76,39,64,153,65,108,237,203,32,31,216,2,32,96,231,191,209,17,1,31,106,27,140,179,3,16,19,61,127,204,246,207,249,167,3,49,190,202,72,20,192,56,19,138,231,128,219,234, +103,115,98,82,118,50,99,10,237,9,112,138,221,103,21,115,229,232,229,140,0,112,6,108,150,186,233,197,39,233,25,251,75,51,59,253,182,16,116,135,204,73,254,139,188,249,87,154,129,130,247,222,168,241,161,182,193,105,154,29,128,213,1,133,103,252,205,246,252, +163,152,240,151,25,9,192,219,136,126,127,29,84,217,248,115,33,100,47,131,22,255,88,54,41,54,229,75,75,86,193,87,225,236,168,158,84,52,1,5,128,201,84,77,42,154,228,10,217,154,245,12,254,73,144,147,217,26,156,0,62,107,145,225,253,160,70,40,177,229,45,76, +254,203,136,8,72,87,117,64,8,171,3,10,200,248,59,210,52,216,39,138,198,63,67,208,146,192,62,72,68,158,53,101,107,180,36,80,211,147,101,206,174,49,128,134,57,165,57,83,13,144,51,2,160,97,46,57,168,58,207,9,29,247,75,215,118,76,81,249,239,60,1,90,60,130, +165,127,25,19,1,88,29,128,232,185,116,48,219,63,175,163,0,156,5,18,195,207,38,207,179,65,58,138,38,65,145,189,148,149,141,167,10,173,6,168,28,95,116,162,195,103,205,137,245,225,156,16,0,206,160,205,90,49,54,120,130,172,35,251,159,158,196,176,163,2,198, +4,198,25,127,134,196,135,33,250,222,115,152,252,151,233,155,29,171,3,144,84,61,127,14,179,253,243,251,161,96,37,198,119,19,72,241,119,140,219,27,209,3,109,193,137,250,90,3,203,26,184,139,237,173,85,147,67,227,81,0,152,68,121,87,96,130,59,108,111,209, +27,254,239,40,154,12,118,193,105,120,63,226,235,95,3,229,224,14,76,254,203,10,17,224,194,217,1,200,209,25,127,44,245,43,16,20,72,12,61,109,202,150,38,132,103,179,170,0,125,209,8,128,234,137,161,147,80,0,152,68,245,164,208,9,122,35,238,2,39,194,184,208, +12,115,110,248,119,158,196,251,60,107,208,62,90,29,208,143,179,3,16,52,254,5,237,20,112,54,144,98,111,128,166,244,24,222,22,157,23,19,118,148,235,91,6,136,171,80,49,46,120,172,197,46,100,125,147,152,172,23,0,22,135,40,84,79,13,31,75,15,106,202,39,66, +147,160,196,81,1,13,62,227,189,25,148,222,61,144,216,242,38,112,34,134,255,179,75,4,184,147,34,128,37,6,238,51,239,97,50,82,29,128,203,1,104,252,63,78,20,75,253,178,20,1,84,249,0,36,162,175,24,222,146,77,112,64,107,96,2,235,30,155,178,173,144,84,240, +87,187,218,203,58,3,237,40,0,12,82,49,54,216,230,175,116,117,208,131,154,42,146,146,128,214,224,68,176,10,198,51,246,99,107,158,199,206,127,89,45,2,232,114,192,181,166,87,7,124,52,49,16,31,246,185,100,252,49,219,191,16,195,0,2,155,18,104,6,99,195,51, +64,224,245,149,244,11,34,47,212,207,41,93,154,237,135,43,235,5,64,213,164,162,69,188,160,111,49,70,36,39,111,108,104,166,41,70,38,186,250,89,122,86,241,6,203,90,17,224,76,75,179,32,238,35,137,129,17,60,212,57,228,249,11,56,213,175,240,236,63,77,6,140, +191,71,188,240,237,134,183,69,91,3,211,101,0,89,213,87,13,80,222,21,56,150,207,242,209,0,89,45,0,232,232,223,202,241,69,75,21,41,245,236,127,26,254,15,179,240,127,155,225,253,144,246,110,4,105,231,90,224,68,43,222,97,217,124,243,167,49,49,16,171,3,114, +203,248,139,88,234,87,160,240,108,58,160,20,125,217,240,150,232,50,0,173,30,147,53,29,213,0,146,10,69,117,238,137,225,102,111,21,10,0,157,248,43,157,101,193,90,247,100,61,225,127,153,60,12,104,71,39,122,18,141,18,95,243,34,104,241,33,236,254,87,224,34, +192,133,34,32,235,141,191,163,11,19,254,48,10,32,130,20,161,121,0,154,225,109,209,209,241,156,142,115,78,219,213,91,156,162,179,122,114,104,46,10,0,157,84,77,10,205,180,185,45,30,29,109,153,217,73,235,44,154,98,194,131,69,129,216,218,23,1,4,244,254,115, +3,45,109,34,128,195,18,193,236,246,252,137,241,23,66,104,252,81,1,208,158,0,27,64,73,108,50,188,169,70,95,7,4,236,197,108,150,76,202,151,165,172,66,213,132,208,98,46,139,155,198,101,183,0,24,95,180,88,83,83,87,113,201,222,255,97,104,244,119,26,222,7, +105,207,122,242,218,128,225,255,156,20,1,135,115,2,176,58,32,239,141,63,13,251,135,48,219,31,73,186,127,154,58,76,52,186,241,106,0,151,197,11,13,190,118,93,77,129,228,132,10,225,22,239,44,103,145,205,153,173,71,42,107,5,128,221,107,181,148,118,6,102, +209,100,138,148,141,54,57,89,245,222,86,112,91,124,134,247,35,254,254,43,160,37,162,216,250,55,39,69,192,72,137,32,171,14,48,79,4,252,107,117,0,146,113,227,143,217,254,200,135,37,0,109,13,28,93,1,102,44,3,180,7,39,147,205,164,30,134,166,206,171,195,111, +173,14,55,123,187,81,0,164,72,81,131,167,205,85,100,109,212,211,253,143,142,114,164,173,28,141,219,16,21,98,239,255,3,64,196,206,127,185,29,9,48,191,68,144,195,182,193,121,109,252,49,225,47,215,21,128,21,148,196,70,80,164,173,134,55,213,226,239,6,151, +213,11,42,164,40,2,52,90,149,200,67,221,140,226,249,217,122,152,178,86,0,212,78,13,205,17,44,228,232,105,169,30,115,21,156,22,55,52,251,141,139,46,121,255,150,100,248,31,91,255,230,246,179,32,93,179,3,92,56,64,40,239,140,63,203,246,127,8,141,127,238, +223,245,35,203,0,43,12,111,41,228,40,131,10,87,61,75,44,79,253,82,85,161,180,221,63,143,23,179,243,90,202,74,1,64,147,237,203,199,6,231,41,178,158,236,127,25,202,156,53,80,226,50,94,125,17,223,176,2,180,24,102,255,231,135,8,112,165,109,128,208,225,234, +0,76,12,204,3,227,207,214,252,157,104,252,243,225,158,231,4,83,4,0,77,40,167,21,101,138,142,126,0,106,178,43,224,120,111,137,163,40,27,143,81,86,90,54,87,145,221,21,172,117,79,84,117,150,255,209,228,63,222,132,143,22,219,240,10,118,254,203,27,210,95, +29,128,179,3,70,201,248,99,169,31,114,84,55,38,93,6,216,0,170,98,60,255,135,246,3,16,121,11,164,154,83,160,170,26,216,61,150,64,73,155,127,98,54,30,162,172,20,0,197,45,222,46,71,192,86,169,103,253,159,78,112,106,13,24,159,196,168,14,236,7,105,231,58, +204,254,207,75,17,144,190,234,0,30,151,3,210,111,252,49,219,31,57,74,243,166,42,125,32,199,86,26,222,82,181,167,9,2,182,176,174,114,64,26,65,40,31,27,156,141,2,224,40,33,7,107,58,207,167,126,35,210,242,63,159,53,8,53,158,102,195,251,16,223,186,18,212, +161,30,140,0,228,165,8,248,208,236,128,126,115,171,3,176,89,80,250,140,191,35,13,165,126,152,237,159,255,72,209,55,12,111,195,33,186,153,93,145,116,228,1,208,78,182,165,237,254,153,217,216,22,56,235,4,0,173,182,43,235,12,204,212,53,252,71,147,160,210, +93,15,94,34,2,140,146,216,104,78,9,9,146,205,145,0,34,2,126,125,173,233,203,1,88,29,96,230,169,250,80,147,31,204,246,71,82,189,31,249,228,108,0,77,51,126,47,54,5,186,200,118,82,183,75,138,172,65,160,218,213,233,41,115,134,80,0,124,6,174,34,187,35,88, +235,30,175,103,253,95,85,21,168,247,25,159,192,168,201,113,136,111,91,137,221,255,242,94,4,96,117,64,214,123,254,92,122,154,252,96,182,127,161,64,71,4,239,99,185,0,70,105,244,117,130,77,176,147,39,71,106,142,33,237,7,96,243,88,2,165,109,190,172,235,7, +144,117,2,192,95,237,106,177,123,45,149,122,218,255,210,233,127,180,117,163,81,228,125,155,65,233,217,9,28,78,255,203,127,15,33,93,34,192,141,34,192,176,241,199,108,127,196,248,29,78,188,246,4,200,177,119,12,111,169,220,89,3,65,123,9,168,154,172,103, +55,104,100,123,42,10,128,207,58,200,221,129,137,188,149,231,83,85,89,116,253,159,134,254,171,220,141,134,247,33,177,229,109,208,226,216,253,175,112,68,128,43,45,163,132,89,137,32,206,14,200,82,227,143,158,127,225,220,224,2,72,38,36,2,90,137,247,95,229, +110,208,53,30,88,149,53,218,220,14,5,192,103,17,110,242,77,213,145,104,201,198,255,150,187,106,193,99,245,27,222,135,248,230,183,200,145,193,218,255,194,225,195,109,131,175,51,53,49,240,112,199,64,172,14,64,227,143,100,200,254,115,22,80,164,205,160,41, +135,12,111,139,206,5,80,117,132,167,217,120,224,122,79,151,51,104,115,100,211,177,201,42,43,103,177,139,92,168,201,51,94,79,2,160,162,42,80,235,29,99,220,20,196,134,216,0,32,14,215,255,11,87,4,252,218,236,234,0,28,37,156,138,241,119,164,171,189,47,26, +255,2,69,0,85,233,5,57,177,209,240,150,106,189,173,96,101,182,33,245,126,0,14,175,165,50,80,237,106,66,1,240,41,120,203,29,101,158,98,123,147,166,163,254,95,224,4,54,0,200,40,210,222,141,172,7,0,8,88,254,87,152,34,32,141,213,1,152,19,240,111,14,61,102, +251,35,233,188,190,20,144,227,171,12,111,166,204,85,3,94,107,81,234,253,0,136,73,19,108,60,95,222,21,28,139,2,224,83,40,170,247,180,91,156,162,59,213,17,192,52,36,227,180,120,160,210,221,96,120,31,18,219,87,145,103,81,28,31,20,5,12,38,6,102,192,243,199, +108,127,36,173,55,181,192,202,1,141,226,18,61,80,230,172,214,151,7,160,2,132,154,188,89,213,17,48,171,4,64,184,217,59,78,207,61,170,104,50,132,236,165,172,83,147,25,2,0,123,255,35,40,2,70,209,248,167,189,189,47,102,251,23,252,253,204,242,0,182,129,166, +244,26,222,86,181,167,153,37,157,167,126,169,107,16,172,115,143,203,166,193,64,89,101,233,66,141,222,241,122,194,255,84,0,84,184,235,89,27,96,35,104,137,40,200,123,55,0,135,227,127,17,72,115,117,192,71,6,8,21,168,113,74,99,123,95,76,248,67,62,138,64, +140,127,31,75,6,52,74,173,183,133,216,154,212,77,167,42,171,224,45,177,183,184,195,14,127,182,28,149,172,17,0,22,135,40,4,170,93,109,84,37,165,108,184,53,13,106,60,198,115,43,228,131,219,65,233,223,79,142,10,214,255,35,236,202,250,88,117,128,217,29,3, +15,207,14,136,20,174,241,239,68,227,143,140,210,221,172,73,32,199,215,26,222,78,185,171,14,28,162,139,141,158,79,233,253,85,13,172,94,107,40,80,227,170,71,1,240,49,124,229,206,18,87,216,86,167,103,0,144,69,176,66,149,219,184,0,144,118,175,99,81,0,172, +255,71,254,85,4,208,196,64,115,69,64,193,206,14,192,108,127,36,19,16,175,93,78,188,111,120,51,69,246,18,240,219,66,186,6,3,9,2,199,133,155,189,29,217,114,72,178,71,0,84,58,27,89,2,160,150,122,3,32,183,197,7,197,206,74,227,2,96,231,90,188,73,144,79,17, +1,174,15,68,0,86,7,24,56,148,152,237,143,100,200,254,131,8,138,180,149,214,122,27,218,142,133,183,66,169,179,26,20,29,137,128,212,190,249,43,93,89,211,18,56,107,4,64,176,222,221,206,235,240,188,169,10,11,218,74,192,99,49,186,172,162,177,250,127,12,255, +35,159,46,2,48,49,208,176,231,159,174,108,255,30,204,246,71,62,75,1,136,160,202,7,64,145,247,24,222,20,29,58,167,171,33,144,172,65,168,193,211,158,45,147,1,179,70,0,20,55,123,59,85,85,95,2,96,153,171,90,87,82,198,71,78,204,96,15,40,61,187,176,255,63, +242,239,159,33,163,32,2,242,178,109,112,186,179,253,7,48,219,31,249,236,24,128,166,69,64,73,24,79,4,76,38,157,235,75,4,244,148,58,26,109,30,139,13,5,192,225,157,16,121,240,150,58,199,168,74,234,138,138,134,84,104,82,134,81,104,2,160,58,220,135,45,128, +145,163,16,1,31,174,14,48,177,99,224,200,236,0,62,223,68,64,58,179,253,113,205,31,73,205,96,152,50,25,144,46,1,216,4,135,222,201,128,21,222,50,71,25,10,128,17,236,30,139,195,83,98,175,211,100,29,29,0,121,129,8,128,26,227,2,96,223,70,208,228,4,62,68,144, +163,185,141,63,36,2,174,53,183,58,32,223,102,7,28,78,248,75,87,169,31,174,249,35,41,221,96,66,50,15,192,32,65,91,49,120,172,129,148,251,1,208,20,55,209,46,216,189,229,206,172,168,4,200,10,1,224,173,112,148,217,188,150,178,84,59,0,210,50,12,187,224,132, +98,71,133,225,125,144,246,108,196,236,127,36,197,72,192,135,171,3,112,118,192,167,26,255,206,219,64,192,82,63,36,27,238,89,160,2,96,39,49,196,198,18,1,105,25,32,173,6,208,83,9,192,243,28,109,8,212,130,2,96,4,103,192,86,43,88,4,91,138,5,0,44,9,195,75, +84,24,45,201,48,44,0,14,108,33,71,3,251,255,35,122,34,1,233,153,29,224,202,229,196,192,116,103,251,163,241,71,116,70,0,52,181,7,52,249,128,225,77,81,199,83,85,83,23,0,212,209,45,170,243,160,0,56,76,81,189,167,81,79,86,36,157,0,24,176,21,179,181,24,67, +207,170,216,32,40,189,123,201,3,5,19,0,17,61,34,32,61,137,129,92,174,86,7,96,182,63,146,181,240,196,104,71,64,145,119,26,222,18,77,62,79,53,7,224,176,0,32,78,111,19,199,115,89,112,52,178,128,96,173,187,89,211,81,1,160,130,98,74,248,95,38,15,109,117,184, +23,35,0,136,126,99,141,213,1,31,24,255,195,29,254,48,219,31,201,74,205,174,176,185,0,198,35,0,149,108,10,109,202,142,43,109,9,92,225,168,177,56,50,63,114,54,43,4,128,43,100,111,72,181,1,16,59,143,228,223,148,152,208,0,72,57,180,19,59,0,34,38,136,128, +52,206,14,200,133,234,128,81,25,236,131,158,63,98,244,70,229,76,17,0,33,71,41,88,5,123,234,149,0,228,175,91,157,98,153,35,96,11,20,180,0,96,109,127,45,192,249,42,156,213,84,21,165,188,243,28,15,97,71,185,241,8,192,193,237,116,103,240,198,64,140,186,22, +31,21,1,38,38,6,102,125,117,0,14,246,65,114,6,1,84,121,183,225,173,248,172,69,224,178,120,82,175,4,160,165,128,110,209,239,10,217,202,51,125,36,50,27,1,208,232,51,131,115,139,54,190,44,213,165,20,170,186,44,188,13,130,246,18,227,2,224,192,118,244,254, +17,19,35,1,238,15,37,6,154,91,29,64,7,8,101,93,78,0,14,246,65,114,233,254,100,2,224,0,107,10,100,4,151,197,11,94,107,48,245,142,128,26,235,125,195,23,213,186,43,51,125,44,50,27,1,32,94,191,175,194,81,108,247,91,131,169,14,1,210,200,65,119,90,220,224, +183,21,25,222,15,165,119,23,174,255,35,105,136,4,172,79,246,9,232,51,121,128,80,54,37,6,166,115,205,31,179,253,145,180,40,0,158,120,225,253,160,201,61,6,133,4,7,1,91,56,229,8,0,251,183,196,225,180,121,44,181,5,31,1,160,107,33,60,207,165,220,22,81,37, +191,220,68,129,185,68,175,177,93,72,68,65,25,56,128,2,0,73,131,8,200,243,234,128,116,27,127,108,242,131,164,41,6,160,169,81,80,149,253,134,183,68,123,1,232,201,95,83,201,191,41,106,240,212,100,250,72,100,84,0,40,10,29,140,224,174,20,44,60,164,186,4,64, +235,47,233,26,140,72,30,64,134,158,97,195,189,236,197,113,40,0,144,52,60,106,142,68,2,242,108,128,208,168,100,251,163,241,71,210,36,0,52,25,20,217,248,253,88,100,47,213,85,10,72,255,137,205,37,86,23,180,0,160,203,238,54,183,69,215,58,8,141,0,208,240, +139,97,17,50,112,16,180,120,148,102,20,226,125,129,164,41,18,144,198,234,128,197,25,40,17,196,176,63,146,243,168,166,36,2,210,62,52,122,135,2,249,171,93,44,9,80,79,9,124,206,11,0,26,53,161,205,127,138,26,61,149,122,166,0,210,176,75,192,94,108,92,0,244, +239,3,77,193,25,0,72,186,69,128,59,61,213,1,174,207,168,14,208,49,178,244,35,110,202,199,189,27,244,252,145,188,8,2,240,196,8,27,95,2,240,219,67,44,10,173,165,158,197,78,19,1,75,129,214,193,21,106,4,96,228,64,232,238,228,19,48,161,5,48,243,200,84,21, +111,8,100,148,68,64,122,170,3,92,135,171,3,18,31,202,108,150,19,192,123,74,245,63,35,29,149,44,99,26,14,39,57,169,137,35,189,253,177,206,31,201,109,136,0,80,140,183,3,246,90,252,96,163,189,0,82,204,3,208,20,218,13,208,26,180,20,129,71,149,11,50,2,64, +199,34,90,193,95,229,42,81,83,238,1,160,129,192,139,44,7,192,120,4,96,63,150,0,34,163,40,2,210,83,29,192,141,84,7,136,101,29,201,72,0,121,137,85,19,193,218,113,162,238,109,10,254,54,176,212,158,149,20,0,242,48,112,86,31,246,246,71,242,35,0,64,132,173, +166,244,209,44,112,67,219,161,125,0,232,96,32,58,152,46,85,251,39,216,120,15,103,129,160,158,36,66,179,200,92,243,123,141,206,101,224,4,209,46,132,116,68,79,64,224,68,86,131,105,120,55,162,3,248,208,65,70,89,4,124,80,29,16,188,224,251,196,208,150,154, +178,101,90,29,224,58,246,235,32,239,89,197,68,173,88,218,65,110,20,35,17,70,14,108,77,151,131,165,100,30,168,177,125,32,248,218,200,190,135,76,61,26,81,204,246,71,50,36,1,52,45,78,94,18,185,85,172,186,183,66,167,209,58,69,15,244,196,14,64,170,227,108, +104,245,27,141,2,104,25,12,64,103,46,2,160,106,96,247,138,46,139,67,8,164,60,6,152,40,38,171,96,99,101,128,8,146,147,143,159,52,149,8,82,131,47,86,142,7,177,98,156,65,227,255,161,135,132,183,5,196,226,217,166,27,127,26,246,143,162,241,71,114,24,158,19, +192,101,241,233,106,7,44,88,5,26,1,47,214,148,2,92,2,160,141,127,220,97,187,207,225,183,186,83,22,0,228,151,93,112,128,67,116,26,127,16,59,168,136,192,28,0,36,19,34,32,61,213,1,185,0,174,249,35,153,69,35,158,191,205,144,247,127,24,15,17,0,122,154,1,81, +205,160,72,106,56,147,71,33,179,125,0,36,213,71,140,127,202,86,156,118,1,164,161,23,155,224,50,188,15,98,168,10,64,195,219,1,201,208,67,40,77,213,1,104,252,17,228,223,221,121,10,240,98,152,141,173,54,44,0,172,126,0,157,189,0,124,101,142,112,38,199,2, +103,116,9,192,87,238,244,11,34,207,167,126,220,52,112,90,60,134,155,0,81,44,21,173,228,26,176,3,170,0,36,179,34,192,252,234,128,172,52,254,152,240,135,100,197,109,167,128,96,29,99,202,166,220,116,9,64,143,253,39,255,200,87,225,12,101,242,54,200,168,0, +240,148,56,130,188,133,75,249,224,209,225,11,14,209,109,202,113,179,150,183,128,24,174,1,144,37,188,41,144,12,138,128,244,84,7,100,157,241,199,53,127,36,27,238,55,222,10,22,199,20,147,4,128,254,92,52,69,82,139,50,233,123,102,122,9,32,160,47,114,162,130, +139,8,0,83,16,173,224,24,187,24,52,41,142,247,5,146,97,17,144,166,196,192,44,0,179,253,145,172,185,211,180,56,121,236,183,129,104,51,39,2,224,20,189,186,186,1,82,39,216,225,183,6,5,107,230,204,112,70,5,128,213,37,250,117,31,116,139,199,180,253,112,78, +58,9,132,162,10,162,72,18,120,119,32,25,37,31,69,0,245,252,49,219,31,201,22,161,77,95,118,223,25,228,171,57,243,95,92,22,247,136,0,72,205,155,165,137,240,222,114,151,215,234,204,220,28,154,140,9,0,154,248,16,106,242,250,245,212,64,210,181,19,167,224, +54,239,32,184,2,224,57,230,50,208,164,4,96,46,0,146,121,17,144,63,213,1,216,222,23,201,42,243,175,14,131,213,57,15,44,142,153,166,109,147,46,71,211,114,64,77,215,254,104,30,173,80,151,0,8,58,23,79,136,130,51,161,4,240,35,81,128,137,39,130,115,242,201, +160,70,7,241,46,65,50,238,165,164,107,138,224,104,126,134,40,102,251,35,217,35,171,137,227,24,5,193,82,7,174,224,85,166,110,153,182,2,166,141,233,244,56,143,196,248,187,105,83,192,66,21,0,250,226,248,28,199,218,47,154,141,111,217,151,193,209,185,16,212, +200,0,128,134,145,0,36,11,34,1,187,214,65,239,131,183,130,150,136,230,212,190,71,251,239,39,175,223,161,241,71,178,198,243,23,196,82,112,23,255,39,112,66,145,169,219,166,77,233,216,64,160,84,59,218,146,191,111,113,8,46,171,83,176,102,234,184,100,78,0, +104,201,240,135,190,157,230,137,234,114,154,190,75,156,197,6,129,179,190,14,174,105,167,177,161,42,154,140,57,1,72,134,35,1,118,55,36,182,188,5,137,109,239,228,208,110,199,32,49,244,4,209,233,14,52,254,72,134,81,137,157,25,4,209,214,66,140,255,221,44, +2,96,54,22,142,8,0,78,76,189,27,160,162,129,171,200,106,245,20,59,108,5,39,0,44,78,1,188,101,14,151,170,163,13,34,71,123,148,11,233,57,102,84,4,248,79,253,26,4,206,184,19,196,64,25,121,150,13,38,43,4,52,236,22,136,100,44,22,192,198,151,230,142,108,249, +215,239,16,100,116,189,75,137,60,178,135,128,142,187,113,248,206,5,79,201,61,196,248,215,164,199,150,17,91,36,232,236,73,67,103,226,105,154,102,207,212,145,202,216,48,32,209,198,131,51,96,179,15,12,105,41,202,16,218,194,145,7,171,144,222,99,230,24,127, +44,216,90,103,66,244,237,199,33,250,206,147,32,237,221,4,90,124,56,25,183,97,211,3,209,179,65,70,225,81,38,199,193,222,50,29,172,53,221,185,35,87,56,59,216,220,75,33,210,251,19,250,1,112,218,38,50,74,70,95,27,185,254,172,192,139,101,196,201,156,70,174, +195,99,211,226,245,127,196,150,113,22,22,1,208,41,120,173,35,175,194,18,0,90,114,9,192,161,239,1,195,129,133,79,127,212,132,119,120,193,53,253,76,112,77,59,3,228,125,155,32,177,123,29,200,251,183,130,58,116,136,60,215,254,63,123,231,1,47,71,89,245,255, +179,51,179,237,246,126,211,147,155,222,72,2,161,6,233,72,145,162,2,214,191,149,87,254,250,250,250,170,20,11,254,241,125,21,21,21,20,17,20,72,40,210,91,66,73,40,161,164,87,82,110,239,189,238,189,119,123,239,51,187,255,231,121,54,137,160,160,185,179,51, +91,207,55,159,225,134,36,187,59,59,237,252,206,121,78,17,81,3,32,234,18,139,129,80,49,19,10,63,241,229,99,221,42,179,7,67,233,87,217,90,171,24,106,252,123,20,3,65,212,50,254,196,139,212,240,37,204,240,11,186,69,192,147,45,177,4,165,62,188,134,7,45,175, +99,213,105,50,46,115,33,47,5,192,241,99,39,231,84,211,37,0,65,163,77,221,94,178,209,170,11,217,134,32,200,73,221,52,196,251,186,138,109,8,146,211,87,58,177,15,84,4,36,97,131,243,48,9,48,241,217,178,82,249,105,205,165,192,9,120,229,33,8,130,32,105,37, +97,143,244,172,67,173,28,39,56,30,139,167,205,152,165,59,179,72,70,92,48,206,170,0,18,107,46,8,130,32,8,146,165,226,129,215,128,177,52,125,189,128,185,108,61,112,113,204,48,70,16,4,65,210,238,197,106,64,199,233,166,94,6,24,143,131,96,224,161,108,78,81, +81,186,246,61,157,2,128,186,240,83,95,2,160,69,3,26,14,120,92,2,64,16,4,65,50,65,4,208,50,93,89,189,128,19,67,129,242,81,0,208,240,191,172,36,64,186,230,194,167,50,9,16,65,16,4,65,114,140,116,47,1,196,211,242,82,4,65,16,4,65,1,128,32,8,130,32,8,10,0, +4,65,16,4,65,80,0,100,34,52,219,50,142,189,249,17,4,65,16,36,43,5,128,72,182,192,84,95,68,219,138,75,49,17,162,49,156,212,135,32,8,130,100,49,26,214,11,32,109,125,178,211,41,0,104,22,159,132,87,0,130,32,8,146,173,208,136,116,68,10,179,150,192,83,118, +102,163,49,240,89,67,193,124,20,0,199,244,143,188,3,142,141,128,16,4,65,144,76,17,1,114,204,159,20,142,129,103,60,16,206,215,8,128,95,214,65,139,139,16,149,162,120,213,33,8,130,32,233,53,254,241,56,196,226,146,60,127,86,3,113,13,159,190,73,153,233,108, +167,151,212,18,128,20,79,253,234,129,100,182,129,52,97,134,152,211,13,241,96,16,175,124,68,237,39,11,8,179,103,130,118,213,178,172,220,125,79,32,2,102,103,128,60,28,227,56,12,24,81,213,144,240,28,7,6,29,15,69,6,45,20,23,232,200,255,167,238,138,163,198, +95,140,69,88,75,96,25,80,79,54,148,127,2,64,195,198,40,6,101,188,140,28,240,24,68,98,169,49,192,226,192,8,132,182,237,133,240,251,13,32,142,154,32,230,245,147,83,134,209,7,36,53,2,0,200,131,173,232,107,55,64,241,247,255,35,171,118,125,216,236,133,109, +77,228,222,137,72,104,252,145,212,152,20,141,6,116,2,7,133,70,45,76,47,47,132,5,51,74,97,86,149,250,109,246,99,228,151,24,139,78,57,7,224,184,95,9,137,132,248,252,18,0,113,49,14,209,144,20,158,250,49,211,176,7,163,218,85,0,212,211,247,61,250,60,4,223, +219,3,113,143,15,200,149,5,26,65,75,54,30,64,139,115,8,144,20,33,73,224,123,246,85,48,92,118,1,104,151,46,204,138,93,142,197,226,112,184,103,18,194,196,248,211,7,50,130,164,236,118,33,215,158,203,23,6,187,39,4,29,163,14,152,81,81,8,107,23,214,192,172, +234,34,21,63,83,100,2,64,38,212,144,165,45,7,32,109,150,44,236,19,193,49,236,11,112,117,220,148,23,2,168,226,138,72,234,69,77,168,199,239,249,195,195,32,77,90,65,83,104,4,77,113,33,222,89,72,122,224,137,224,12,133,137,32,181,100,141,0,16,165,24,4,194, +98,74,195,176,8,146,136,2,144,91,134,252,231,248,181,103,178,251,96,194,225,135,85,117,85,112,246,178,105,192,169,80,113,71,157,81,49,46,130,156,28,0,13,167,9,211,45,93,199,43,221,242,220,39,43,122,64,4,64,72,82,103,9,192,255,236,43,224,188,253,183,32, +57,221,9,195,207,161,7,131,164,143,120,56,2,124,117,37,232,86,44,206,154,125,214,106,121,168,45,43,128,168,132,205,186,144,52,95,139,60,199,140,126,67,159,5,222,173,31,97,226,84,121,1,16,78,44,1,76,81,0,16,195,15,33,79,52,18,116,69,210,150,3,144,110, +235,230,145,245,80,140,199,33,44,6,20,223,153,192,150,119,192,243,199,13,160,209,10,160,209,225,180,65,36,205,198,63,74,30,42,122,29,148,222,241,67,224,106,170,178,199,11,35,219,39,86,204,128,26,42,2,68,20,1,72,250,163,2,122,34,74,251,198,93,176,179, +121,140,165,214,40,9,141,70,211,101,128,169,6,23,232,4,225,16,49,254,1,71,56,109,93,237,210,42,0,56,94,227,145,121,74,33,40,249,21,221,151,104,103,47,120,239,121,152,60,112,181,137,176,43,130,164,19,106,252,181,90,40,191,235,167,160,63,239,204,172,219, +253,34,163,22,62,117,198,60,168,42,53,160,8,64,50,2,42,2,186,199,156,208,216,111,85,244,125,195,82,24,196,120,20,100,46,1,120,201,150,182,36,192,244,9,0,162,194,156,35,126,183,220,37,153,128,168,160,0,16,37,240,222,187,1,98,129,32,128,128,9,126,72,250, +141,63,156,48,254,103,101,237,215,72,136,128,58,34,2,140,40,2,144,140,64,43,240,208,208,107,6,135,87,185,168,123,136,56,163,180,44,93,142,41,99,2,64,147,190,174,118,105,19,0,52,140,239,183,132,220,178,122,39,144,35,22,136,122,149,59,129,59,247,67,184, +190,5,52,5,70,188,67,144,12,242,252,207,202,250,175,243,247,72,128,17,115,2,144,180,67,115,3,195,68,140,54,244,41,23,5,8,136,190,99,195,233,166,158,3,16,116,134,189,98,36,125,247,69,122,151,0,180,156,67,206,235,104,178,5,61,232,10,41,17,8,188,178,21, +147,253,144,140,241,252,203,114,196,248,255,147,8,40,193,72,0,146,1,81,0,158,131,97,139,135,53,170,82,2,191,232,133,152,140,158,118,28,175,1,207,68,192,25,13,164,111,36,78,218,172,30,245,226,195,222,168,51,30,139,203,120,45,167,152,0,144,70,199,33,218, +209,195,146,173,16,36,221,198,191,60,199,140,255,71,70,2,80,4,32,105,132,46,59,135,194,34,17,1,202,68,145,253,17,183,236,196,66,34,2,236,233,236,148,149,62,1,64,212,143,125,208,227,20,35,177,248,84,243,0,56,22,1,240,42,210,14,56,210,218,5,49,175,15,35, +0,72,218,136,231,184,241,71,17,128,100,158,8,208,192,132,93,25,39,210,23,245,200,126,173,20,141,217,210,121,28,210,92,5,192,121,104,32,64,78,4,32,40,250,33,162,64,47,0,113,104,4,20,175,11,65,144,41,120,254,154,60,48,254,255,44,2,176,58,0,73,163,237,225, +52,224,14,68,88,46,90,178,120,163,46,89,109,128,105,14,128,185,203,99,139,75,233,179,63,233,139,0,112,108,9,192,21,9,74,126,205,20,59,134,209,28,128,48,49,254,74,84,2,196,236,46,244,254,145,180,25,127,200,35,227,255,97,17,128,213,1,72,26,35,0,100,139, +68,37,69,18,83,189,17,34,0,228,152,210,132,217,179,228,101,4,128,38,64,120,205,33,111,208,21,117,77,89,0,104,184,99,2,32,249,16,78,92,20,241,110,64,114,202,248,139,225,40,217,148,187,174,105,154,142,39,172,236,125,130,213,1,72,46,64,35,8,190,168,27,56, +205,212,77,105,140,136,95,191,61,108,213,164,209,255,76,107,209,187,134,215,68,136,16,160,107,32,11,166,42,156,162,49,145,40,47,103,242,66,196,104,196,37,0,36,103,140,127,203,198,195,208,183,179,147,37,58,45,184,112,25,156,114,253,25,160,73,162,39,255, +246,126,59,220,187,119,16,108,129,8,172,153,94,2,191,252,228,34,152,86,164,87,84,4,188,117,100,8,108,238,32,104,113,112,16,146,74,39,148,220,36,154,36,103,3,68,98,33,86,5,48,85,1,64,63,86,138,198,36,247,88,192,78,243,225,242,46,2,64,31,74,17,111,20,220, +99,126,171,70,152,234,1,208,128,20,23,193,29,177,39,127,0,170,42,80,0,32,105,48,254,183,43,110,252,143,252,109,15,52,60,115,0,2,54,47,248,173,94,168,127,106,31,244,19,49,32,151,17,87,8,126,248,122,39,52,79,122,193,30,136,194,150,78,11,124,125,99,11,140, +123,148,155,93,130,37,130,72,58,160,81,45,189,78,96,37,129,201,224,143,122,89,62,154,70,70,42,127,60,30,247,145,87,57,210,121,28,210,42,185,165,72,12,162,1,113,92,142,10,163,161,23,103,56,249,4,74,126,90,53,128,6,167,150,33,234,243,225,108,127,101,219, +251,82,227,223,190,185,1,116,133,122,224,180,252,137,109,162,117,84,246,123,54,78,120,192,17,140,64,145,142,7,129,8,246,50,131,0,237,102,31,124,115,19,17,1,94,133,69,192,153,243,160,18,115,2,144,84,221,139,228,87,161,33,249,0,56,173,0,8,75,1,182,44,61, +37,195,43,112,224,183,69,92,17,43,184,120,109,250,204,112,26,251,0,80,21,22,7,247,120,208,36,43,131,146,188,198,25,74,62,127,130,9,0,173,0,128,65,0,68,101,207,95,173,108,255,19,198,191,64,247,225,102,100,52,196,153,68,145,177,72,220,164,15,142,79,165, +183,8,21,3,237,22,34,2,88,36,64,185,118,170,84,4,92,133,213,1,72,170,4,0,177,61,244,154,75,22,26,133,142,178,73,128,50,246,33,22,55,199,99,16,74,231,113,72,107,4,128,118,79,244,219,66,163,26,89,9,148,156,34,17,0,174,186,10,52,6,67,98,103,16,68,37,227, +15,170,25,255,189,208,190,165,145,24,127,253,71,71,178,146,8,110,125,220,75,139,143,139,128,151,91,85,88,14,192,234,0,36,37,46,40,148,24,147,111,254,230,12,91,217,36,192,169,222,104,52,2,224,26,241,79,178,61,225,242,48,7,32,241,197,1,2,206,200,104,76, +70,29,36,77,186,112,19,1,16,135,228,30,20,92,69,25,112,37,197,137,69,33,4,201,42,227,191,7,58,182,212,131,206,168,131,84,118,19,139,31,19,1,29,116,57,224,101,117,114,2,42,177,58,0,81,211,246,144,251,165,184,32,121,1,96,15,77,202,86,215,209,160,56,146, +238,227,144,222,70,64,180,25,131,41,48,17,151,98,83,30,165,68,5,128,39,234,2,127,52,185,82,64,174,184,16,248,170,114,136,75,18,222,21,72,118,121,254,155,27,64,107,212,67,58,90,137,158,88,14,80,73,4,92,133,137,129,136,138,215,46,77,254,43,86,32,2,96,15, +78,202,170,36,160,182,207,214,231,25,206,107,1,192,166,33,185,162,230,72,64,154,242,88,96,142,205,3,240,130,55,154,100,41,32,249,96,126,122,45,0,10,0,68,201,135,140,202,158,127,59,245,252,11,210,99,252,255,49,18,208,174,98,36,0,151,3,16,197,175,219,120, +28,116,90,94,145,36,64,71,216,2,188,134,151,245,218,136,95,204,115,1,192,107,32,64,51,33,253,162,121,234,221,0,57,136,72,97,112,40,145,8,56,107,58,46,1,32,138,26,127,213,19,254,140,233,53,254,31,41,2,212,168,14,56,3,171,3,16,165,5,0,16,227,175,5,189, +54,57,1,16,146,130,224,14,219,137,51,58,69,1,64,123,0,144,235,217,214,239,195,37,0,144,64,244,140,7,70,57,25,77,64,196,88,20,108,193,137,164,247,67,152,59,43,35,30,166,72,14,144,142,108,255,12,16,1,234,87,7,160,8,64,148,33,70,156,189,18,114,15,37,91, +253,237,137,56,192,39,122,100,53,1,138,134,36,127,192,25,49,229,181,0,96,15,49,242,244,8,58,35,253,114,219,33,154,131,163,73,239,134,48,103,102,98,28,48,54,4,66,146,52,254,106,133,253,143,50,227,255,47,178,253,51,0,117,171,3,80,4,32,202,9,214,178,194, +228,187,89,58,66,102,8,139,129,41,155,209,99,77,240,38,189,230,160,53,191,5,192,49,236,131,222,62,78,198,64,30,26,122,177,4,146,23,81,252,244,26,208,176,74,0,124,184,32,153,103,252,19,165,126,153,231,249,127,212,131,245,131,213,1,38,172,14,64,50,16,122, +11,149,43,208,206,218,18,52,177,40,244,84,111,73,54,7,199,18,26,147,194,82,56,221,199,34,35,4,0,57,24,189,114,198,50,210,228,11,90,134,65,79,66,82,7,161,162,12,248,218,106,172,4,64,50,208,248,239,73,107,182,191,28,17,112,188,58,224,70,172,14,64,50,16, +129,231,160,76,1,1,48,225,31,145,213,63,142,230,190,5,29,145,62,41,154,254,107,56,35,4,128,115,216,55,40,137,177,41,91,95,26,1,112,71,28,224,73,182,18,128,227,216,50,0,136,40,0,144,12,51,254,172,201,143,46,171,114,84,254,185,58,64,217,156,0,92,14,64, +228,66,187,207,26,245,2,203,1,72,22,186,252,204,201,168,0,160,209,110,251,160,183,59,19,142,71,70,8,0,183,41,48,22,241,68,237,220,20,167,34,209,54,165,129,168,79,153,68,192,5,115,177,18,0,153,154,161,75,129,231,159,234,38,63,170,136,128,77,152,19,128, +100,136,0,136,209,6,64,180,2,128,79,234,125,162,177,8,235,1,32,167,4,144,205,177,25,241,161,0,56,78,200,29,117,251,109,225,145,169,143,69,212,64,52,30,129,201,64,242,213,20,218,69,117,0,60,143,119,8,114,210,158,127,190,101,251,203,17,1,39,170,3,54,97, +159,0,36,51,34,0,229,133,134,228,157,214,136,29,220,97,135,172,8,0,29,3,236,26,245,247,163,0,56,134,24,150,226,30,115,176,139,147,49,23,89,67,158,50,227,190,193,228,35,0,117,179,129,43,41,196,68,64,228,164,140,191,250,97,127,125,206,76,169,252,123,117, +0,77,12,84,97,57,160,196,8,17,20,1,200,73,66,69,99,178,152,3,99,16,148,124,83,46,1,164,54,46,236,137,90,220,166,224,72,38,28,11,46,83,78,138,99,200,215,206,201,152,205,204,113,2,140,7,146,111,168,68,147,0,89,34,32,230,1,32,105,52,254,29,91,178,55,236, +255,175,34,1,199,171,3,110,84,163,68,240,204,99,145,0,172,14,64,254,157,163,71,12,112,101,73,242,17,0,147,127,16,68,54,4,104,138,14,43,249,124,191,53,52,24,242,68,188,40,0,62,44,0,218,228,172,192,211,53,24,107,112,28,130,162,63,201,43,67,0,97,254,28, +0,81,196,187,4,73,143,231,191,185,49,107,178,253,229,136,128,34,21,19,3,177,58,0,249,119,176,4,64,157,160,72,5,128,201,55,32,111,6,0,113,114,61,230,96,135,20,201,140,235,52,99,4,128,173,215,219,45,6,197,232,212,135,2,241,224,9,59,192,26,26,79,122,31, +180,203,22,225,18,0,146,30,227,191,37,251,215,252,79,54,18,144,16,1,152,24,136,164,88,0,196,226,204,248,27,146,76,0,164,19,104,39,252,195,196,249,156,122,43,97,186,4,96,237,245,182,100,202,49,201,24,1,224,53,7,71,195,62,113,108,234,51,1,52,16,142,133, +136,34,75,62,15,128,9,0,157,22,59,2,34,31,190,225,213,14,251,103,80,111,255,212,138,0,117,102,7,160,8,64,62,46,2,160,196,250,191,43,108,7,91,72,94,5,0,221,7,107,143,7,5,192,63,18,116,134,67,158,137,96,23,47,99,38,0,53,216,35,222,158,164,247,65,152,63, +23,248,138,114,0,92,75,68,62,224,249,171,157,237,175,205,113,207,255,163,68,192,137,229,128,141,88,29,128,164,6,26,178,175,45,43,72,250,125,104,213,153,63,234,158,114,5,0,253,252,168,79,244,57,6,189,189,40,0,254,217,134,131,99,192,219,200,9,114,102,43, +11,48,234,235,75,254,96,148,151,130,48,111,22,196,49,15,0,57,102,252,213,15,251,231,78,182,255,84,249,96,117,0,54,11,66,212,22,157,180,246,191,74,129,4,192,17,98,191,229,36,0,82,219,230,179,134,6,60,147,193,73,20,0,31,129,165,199,211,32,231,89,40,104, +4,54,19,192,27,117,37,189,15,218,21,75,48,17,16,73,81,182,191,62,175,167,80,126,120,118,128,90,57,1,6,172,14,64,78,76,0,84,162,3,224,144,167,123,202,229,127,9,1,192,129,115,196,223,34,134,50,231,130,204,40,1,96,235,243,180,73,209,184,140,68,64,14,60, +17,39,75,204,72,22,221,234,229,216,16,8,141,63,102,251,167,80,4,20,169,218,54,184,14,171,3,16,38,0,170,75,141,178,50,247,63,244,104,136,69,192,228,31,0,158,155,122,2,32,93,49,176,245,122,142,102,210,113,201,44,1,208,235,25,242,89,67,35,156,156,142,128, +228,196,12,121,186,146,143,0,44,89,192,150,2,48,15,0,141,63,118,248,75,109,36,0,171,3,16,53,175,177,233,21,133,73,191,143,53,104,2,71,200,34,171,2,128,238,4,141,114,163,0,248,24,66,222,104,216,61,30,104,230,4,57,163,129,57,24,244,116,38,127,64,106,170, +64,168,155,147,200,252,70,242,235,33,145,18,227,143,158,255,191,21,1,216,54,24,81,242,218,138,39,214,255,107,203,147,79,0,28,242,244,64,72,10,176,234,179,41,185,168,156,6,66,158,168,131,56,185,157,153,116,108,184,76,59,89,147,173,206,195,114,18,1,121, +78,11,163,190,126,8,75,201,135,16,217,50,0,118,4,204,59,207,31,123,251,167,95,4,224,236,0,68,105,104,233,93,89,161,30,74,11,146,111,0,52,224,105,151,103,104,137,77,243,76,4,59,137,131,107,67,1,240,47,176,244,184,15,201,25,178,76,107,50,29,97,139,34,131, +129,116,107,87,17,79,16,243,0,242,201,248,99,182,127,230,80,252,1,17,96,82,169,58,0,103,7,228,15,82,44,206,188,255,100,111,191,88,92,98,9,128,114,194,255,180,188,221,222,239,61,28,207,176,137,179,25,39,0,172,221,158,214,176,55,234,144,213,16,72,12,194, +160,167,35,233,125,160,13,129,248,234,74,140,2,160,241,79,138,163,152,237,47,59,18,192,170,3,44,42,205,14,32,34,160,26,171,3,242,6,106,248,103,86,21,37,111,155,130,19,96,9,154,100,37,0,82,75,107,106,178,31,200,180,99,147,113,2,192,109,10,216,93,99,129, +86,94,198,50,128,70,195,65,175,171,53,249,131,82,90,12,218,165,139,48,15,32,231,141,191,168,162,231,191,23,218,48,219,63,41,17,80,164,106,78,0,86,7,228,197,117,68,46,164,2,189,22,166,41,177,254,239,237,130,128,232,37,70,115,106,102,147,86,30,136,33,41, +108,238,112,215,163,0,248,55,196,164,56,76,182,59,15,242,50,66,240,2,167,37,39,169,27,194,82,48,233,253,208,159,185,6,64,194,8,64,110,123,254,130,138,107,254,245,184,230,175,80,36,224,239,205,130,48,39,0,153,26,82,44,198,162,61,5,122,33,233,247,234,113, +53,201,139,64,208,9,128,246,112,55,113,110,71,50,237,248,112,153,120,210,198,155,156,123,227,50,18,1,88,30,64,208,204,234,52,147,69,119,250,42,208,20,21,210,133,31,188,139,114,205,176,164,160,206,31,179,253,21,22,1,102,20,1,136,12,135,50,30,135,153,149, +201,135,255,197,184,8,3,238,78,214,116,110,202,118,73,203,209,254,255,7,195,190,104,198,121,148,25,41,0,204,29,174,6,114,176,60,156,140,60,128,72,44,76,148,90,115,210,251,32,204,155,147,40,7,20,113,25,32,215,60,127,13,78,245,67,17,128,34,32,47,208,242, +60,204,170,78,94,0,76,250,135,143,173,255,107,167,110,100,121,13,140,55,59,118,103,226,241,201,72,1,224,158,8,76,186,70,3,205,156,118,234,187,71,163,0,93,206,166,228,119,130,231,64,127,198,106,128,8,10,128,92,50,254,170,103,251,227,154,191,250,34,96, +147,122,179,3,176,58,32,119,160,217,255,229,197,122,168,40,78,190,255,127,143,171,5,66,162,140,250,127,242,207,165,168,20,158,104,113,30,70,1,112,146,196,196,56,152,219,93,187,228,8,0,129,245,3,232,3,79,196,145,244,126,232,215,157,14,26,28,15,140,198, +255,36,140,63,102,251,167,78,4,116,88,212,235,24,136,213,1,185,37,0,102,85,21,1,167,64,249,109,151,179,65,118,255,127,151,41,208,97,235,247,14,102,226,49,226,50,245,228,153,154,29,187,228,24,94,58,162,209,19,118,64,159,187,61,233,125,160,131,129,248, +217,51,176,28,48,235,141,191,186,217,254,108,164,47,26,255,148,137,128,34,85,151,3,176,58,32,87,224,57,13,204,169,41,73,250,125,124,81,15,171,255,23,184,169,15,18,226,117,28,76,182,185,246,68,252,153,121,65,101,172,0,152,108,119,53,132,188,81,139,12, +209,5,177,120,12,58,28,71,146,222,7,141,65,15,186,211,87,67,60,18,193,187,41,171,61,127,181,179,253,209,248,167,35,18,160,110,78,128,1,69,64,150,123,255,37,133,58,168,45,51,38,253,94,180,251,159,51,108,101,203,203,83,182,33,26,13,76,180,56,183,103,234, +113,202,88,1,224,30,243,187,108,189,222,131,188,110,234,7,93,203,235,216,154,13,29,16,148,44,6,98,52,52,56,29,48,59,13,5,102,251,231,135,8,80,171,79,0,38,6,102,181,0,152,85,89,4,2,159,188,137,107,183,31,97,93,0,167,108,252,201,71,135,60,17,215,200,17, +219,33,20,0,83,189,193,201,29,62,214,96,223,198,203,24,12,68,75,53,44,193,49,24,246,246,36,189,31,186,83,87,2,63,115,90,34,140,140,100,149,231,143,189,253,243,68,4,96,159,0,228,31,13,27,241,188,235,166,37,31,254,23,227,81,232,118,53,129,86,78,248,95, +203,129,99,200,127,196,51,17,176,160,0,144,193,200,17,235,118,73,140,201,176,188,26,136,74,17,162,220,146,79,188,212,20,24,65,119,230,169,184,12,144,101,198,31,167,250,229,107,36,0,171,3,242,157,24,241,254,75,11,117,48,77,129,241,191,35,222,94,48,7,70, +101,181,255,165,205,236,70,143,218,222,165,73,237,40,0,100,96,237,246,116,187,77,254,118,94,86,53,128,0,29,206,163,44,31,32,89,140,151,156,75,206,38,143,213,0,104,252,19,217,254,104,252,51,82,4,168,94,29,128,34,32,43,16,137,0,152,83,83,12,90,5,194,255, +109,246,67,16,145,194,83,46,255,163,72,209,88,140,8,128,247,50,58,82,146,201,59,71,51,39,205,157,238,247,104,38,229,212,5,128,14,198,124,3,48,238,79,190,250,66,187,122,5,8,115,103,65,92,196,101,128,204,54,254,152,237,159,207,34,224,131,213,1,38,204,9, +200,91,104,246,255,252,105,165,201,71,18,136,243,216,102,63,194,156,201,41,27,86,65,3,126,107,168,139,216,175,246,76,62,86,92,166,159,204,129,61,150,183,228,60,113,169,98,163,141,27,218,28,10,44,3,24,244,96,56,239,76,128,48,46,3,100,182,231,47,168,104, +252,49,219,63,91,34,1,84,4,220,168,70,78,192,153,88,29,144,233,208,228,63,218,248,71,137,225,63,212,121,164,109,229,229,148,255,9,122,158,150,178,191,23,246,102,118,242,88,198,11,128,209,35,182,195,62,75,112,140,182,83,156,186,18,20,160,197,118,16,228, +204,21,248,71,12,151,158,71,132,128,1,151,1,50,214,248,171,24,246,199,53,255,172,20,1,44,39,192,171,160,8,48,96,36,32,27,4,0,77,254,155,106,27,249,143,162,197,126,80,86,247,191,227,23,98,223,174,201,55,50,253,120,101,188,0,8,56,195,126,91,159,119,155, +156,101,0,154,185,73,147,56,38,252,67,73,239,135,118,217,34,208,46,93,136,201,128,121,102,252,105,123,95,45,102,251,103,167,8,176,168,85,34,136,213,1,153,122,222,117,2,7,11,166,39,31,254,143,199,99,204,121,148,19,254,215,16,241,17,116,69,76,227,205,206, +247,81,0,40,192,224,126,203,102,186,166,50,229,19,65,126,5,69,63,52,89,247,43,112,164,56,22,5,192,114,192,204,50,254,170,151,250,225,154,127,86,139,128,14,172,14,200,31,239,95,138,65,109,121,161,34,189,255,71,125,253,196,121,236,147,25,254,231,192,220, +233,222,230,183,133,124,40,0,20,17,0,230,93,33,119,212,170,145,17,214,161,179,1,154,108,7,20,169,6,48,92,114,46,112,21,101,52,206,132,119,91,134,120,254,101,152,237,143,252,11,17,80,132,213,1,121,3,157,220,190,104,102,169,34,239,213,100,219,7,97,41,40, +43,252,79,157,213,254,61,147,175,102,195,49,203,10,1,224,54,5,92,147,237,174,93,130,78,222,112,160,49,95,31,81,115,201,55,5,226,167,213,128,254,172,211,32,30,14,227,221,150,86,227,175,118,182,127,35,102,251,231,152,8,80,179,99,96,37,46,7,100,128,241, +143,67,49,57,31,117,181,201,11,0,218,122,166,153,56,141,90,25,163,127,19,225,255,168,109,232,128,117,15,10,0,5,25,216,107,222,164,209,202,91,6,8,75,33,168,183,42,51,142,217,120,213,37,180,205,20,222,113,105,245,252,213,206,246,199,53,255,92,19,1,106, +118,12,188,10,103,7,164,29,81,138,195,188,218,18,48,232,146,111,219,62,232,233,32,78,227,32,240,50,4,0,13,255,79,182,185,182,121,38,2,78,20,0,10,50,184,223,242,158,220,101,0,58,27,128,42,186,72,44,249,27,95,127,198,26,16,22,214,97,50,96,58,30,228,152, +237,143,36,43,2,84,157,29,128,34,32,93,8,196,46,44,153,85,174,204,179,192,178,19,196,88,68,86,248,95,147,8,255,191,152,45,199,45,107,4,128,219,20,112,154,219,93,239,81,133,53,229,139,67,163,133,73,255,8,116,59,155,146,223,17,157,22,10,46,191,16,32,18, +197,187,46,197,198,95,131,217,254,136,82,145,0,28,32,148,67,222,63,77,254,43,128,26,5,106,255,105,210,120,171,253,125,208,241,250,169,27,127,34,66,66,174,168,121,232,128,117,7,10,0,21,232,223,99,126,145,19,228,237,114,140,252,58,108,222,166,200,126,24, +174,184,16,184,138,114,76,6,76,21,152,237,143,40,44,2,58,44,88,29,144,43,208,228,191,165,179,43,20,185,125,105,235,95,107,112,28,120,205,212,203,255,104,243,159,201,118,215,155,158,137,128,7,5,128,10,244,237,152,216,225,179,4,77,114,74,2,117,156,30,218, +29,71,193,21,182,37,189,31,44,25,144,24,162,120,40,132,119,95,10,140,63,246,246,71,148,22,1,88,29,144,43,198,63,49,248,71,137,214,191,148,67,230,237,242,26,255,64,98,252,111,215,214,177,23,178,233,248,101,149,0,240,219,195,62,83,163,99,11,85,90,83,254, +162,26,30,220,97,59,52,40,148,156,89,240,153,203,65,163,211,98,103,64,85,141,191,168,242,84,63,204,246,207,119,17,160,110,78,0,46,7,168,13,77,254,91,52,163,12,116,218,228,77,25,157,250,215,195,70,255,78,61,252,79,157,82,175,37,52,48,120,192,178,23,5, +128,138,244,108,159,120,142,217,92,25,15,109,218,26,248,176,121,135,34,61,1,116,171,151,131,110,205,74,136,227,124,0,21,61,127,65,213,193,62,152,237,143,34,64,205,234,0,236,24,168,242,249,35,39,208,160,229,97,233,108,101,146,255,14,19,239,223,31,245, +16,103,81,70,158,25,237,253,95,111,127,37,228,142,102,85,88,56,235,4,192,208,1,235,251,238,49,127,27,47,99,25,128,182,6,30,242,116,65,191,187,45,249,29,209,104,160,224,186,79,97,30,128,26,55,182,218,237,125,49,219,31,249,71,17,96,70,17,144,117,62,2,121, +246,206,173,45,129,210,66,125,210,239,69,43,196,142,88,118,201,242,254,233,115,36,38,197,165,246,55,70,159,203,182,99,152,117,2,32,26,20,197,193,125,150,231,229,44,3,208,181,157,104,44,2,7,38,222,86,100,95,12,23,156,13,194,162,58,114,245,96,20,64,73, +227,175,118,182,63,122,254,200,199,138,0,156,29,144,53,208,177,191,43,231,85,42,242,94,237,246,35,108,102,140,32,163,246,159,215,114,224,26,241,31,153,104,85,162,204,12,5,192,191,165,115,235,216,139,98,36,22,210,200,120,136,235,121,3,52,219,15,42,146, +12,8,122,29,20,124,246,10,136,99,73,160,66,234,14,179,253,145,244,138,0,172,14,200,14,104,233,223,172,170,34,69,198,254,82,246,79,188,37,251,181,212,25,237,126,111,252,153,104,80,202,186,132,176,172,20,0,214,94,111,191,185,211,189,157,215,201,75,6,116, +133,237,44,219,83,9,140,159,186,24,248,89,211,201,21,137,67,130,146,53,254,152,237,143,164,91,4,124,184,58,64,121,17,128,213,1,202,157,171,149,243,170,20,121,47,147,127,16,186,156,141,160,227,167,62,68,136,58,161,17,191,232,238,223,51,185,41,27,143,99, +86,10,128,24,185,129,186,182,154,30,231,101,102,126,210,30,207,7,39,223,97,203,1,73,31,192,146,98,40,184,230,50,136,135,112,62,128,124,227,127,60,219,255,118,204,246,71,50,66,4,36,114,2,90,177,58,32,19,189,255,88,156,120,254,133,48,167,166,88,33,239, +127,43,107,0,36,167,252,79,48,240,96,106,118,188,110,237,246,152,81,0,164,144,222,29,19,111,251,172,161,33,142,151,151,12,104,242,13,176,166,15,74,64,151,1,184,234,74,58,143,18,239,78,89,158,255,241,108,255,51,85,48,254,184,230,143,76,93,4,96,78,64,6, +159,31,34,0,78,153,87,169,200,72,22,95,212,13,71,205,59,101,117,254,99,17,0,158,131,206,55,199,30,203,214,99,153,181,2,32,224,8,7,6,246,154,159,211,26,229,15,127,216,109,122,93,153,131,72,140,127,193,85,151,64,60,136,141,129,166,116,35,171,26,246,223, +139,189,253,145,228,69,192,241,156,0,47,138,128,76,241,254,171,201,113,91,48,93,153,198,63,180,244,207,30,154,148,213,249,143,23,56,112,143,249,91,6,247,89,246,161,0,72,3,29,111,142,61,41,69,99,97,57,15,120,186,222,211,237,106,132,65,79,167,50,81,128, +47,92,11,92,101,57,70,1,166,224,249,171,155,237,95,15,90,52,254,136,82,34,96,163,58,145,0,28,37,60,53,98,212,251,175,171,2,78,1,247,159,14,252,217,55,254,22,8,156,78,214,235,5,3,7,61,219,198,31,11,251,162,89,155,0,150,213,2,96,178,205,217,51,209,234, +122,71,118,73,160,20,134,93,166,205,138,236,11,109,15,92,112,245,39,49,10,144,9,198,31,179,253,17,133,69,64,199,137,102,65,202,38,6,94,133,213,1,39,141,68,140,127,85,137,1,22,206,80,198,251,111,182,29,132,17,95,31,91,18,158,178,253,32,2,36,236,19,157, +109,175,141,190,144,205,199,52,171,5,64,76,138,67,235,107,35,15,201,153,13,144,136,2,24,161,209,186,15,44,193,49,101,162,0,95,196,40,192,201,24,127,26,246,47,195,108,127,36,139,68,0,171,14,56,150,24,104,194,234,128,52,9,128,24,172,158,95,13,2,207,41, +112,78,227,204,249,147,219,247,95,107,224,97,228,176,109,163,107,204,111,65,1,144,70,6,246,154,183,123,198,131,109,188,140,41,129,180,229,163,63,234,38,23,194,22,229,162,0,215,94,134,81,128,143,53,254,216,219,31,201,110,17,64,19,3,111,196,234,128,148, +67,215,254,107,202,10,96,209,204,50,69,222,175,199,217,4,61,174,102,217,201,127,177,88,92,106,223,50,250,112,182,31,215,172,23,0,97,111,52,218,179,109,124,61,45,199,144,3,109,12,116,104,114,27,184,34,118,69,246,167,240,203,159,5,190,166,138,118,170,192, +187,246,159,60,127,65,229,246,190,152,237,143,168,43,2,212,175,14,192,72,192,71,30,123,34,0,214,16,239,159,231,148,185,193,183,143,189,2,82,92,146,87,250,167,231,193,214,231,221,53,116,208,210,136,2,32,3,104,122,105,232,217,160,59,98,145,83,18,200,105, +4,112,133,173,176,87,169,138,128,170,10,40,184,225,42,140,2,124,240,230,197,222,254,72,174,137,128,227,57,1,94,21,34,1,37,24,9,248,144,247,47,197,96,90,69,33,44,80,104,237,127,200,219,5,173,246,247,153,243,39,235,25,47,104,160,245,213,225,251,99,82,246, +79,130,205,9,1,224,157,12,58,135,14,88,158,148,27,5,160,21,1,251,38,222,98,53,161,74,80,240,249,107,129,159,51,35,225,245,162,241,79,65,111,127,52,254,72,14,69,2,206,196,18,193,127,100,237,162,26,226,172,41,115,147,191,55,178,145,53,129,147,227,253,211, +230,115,158,137,96,123,215,86,211,214,92,56,174,92,174,92,32,13,207,13,60,44,134,99,65,57,223,136,214,128,218,130,147,176,119,252,77,101,14,106,105,49,20,125,245,122,28,21,140,217,254,72,62,136,0,21,167,8,230,123,117,0,157,248,71,59,254,205,85,168,235, +223,152,175,31,154,108,251,137,247,111,148,245,122,234,100,118,189,109,122,48,18,16,115,194,187,203,25,1,96,233,242,12,76,180,58,55,105,245,242,162,0,90,94,15,187,77,91,192,47,122,20,217,31,227,181,151,129,118,217,162,252,21,1,216,219,31,201,51,17,128, +213,1,202,67,215,252,79,95,92,171,216,251,189,55,186,17,194,98,64,150,247,79,67,255,62,75,104,188,121,227,208,179,185,114,124,115,70,0,196,227,113,104,120,118,224,62,208,104,100,101,223,9,26,1,172,65,19,236,49,189,161,200,254,104,244,122,40,250,214,151, +243,179,36,16,179,253,145,60,20,1,88,29,160,44,52,250,177,104,102,57,212,150,41,51,241,207,228,31,128,122,203,110,208,11,242,188,127,173,65,128,193,125,150,13,62,107,200,157,43,199,152,203,165,11,102,240,128,165,97,172,222,254,182,214,32,55,10,96,72, +68,1,162,202,68,1,12,23,173,3,253,186,211,33,30,8,230,207,3,17,179,253,145,124,142,4,168,84,29,80,153,103,137,129,49,114,80,141,228,152,158,190,168,70,177,247,124,123,248,5,8,73,212,251,159,186,217,163,141,127,34,1,209,213,244,210,224,250,92,58,206,57, +37,0,104,169,72,203,166,225,123,56,65,222,215,58,30,5,216,105,122,77,153,29,210,104,160,248,59,95,3,141,94,151,184,162,243,192,248,171,185,230,143,189,253,145,140,23,1,22,117,68,192,85,52,49,48,143,68,0,93,251,95,85,87,5,37,5,58,69,222,111,216,219,67, +188,255,93,178,51,255,117,70,129,14,160,251,155,181,215,51,137,2,32,131,25,58,104,217,109,31,240,238,226,117,242,190,154,238,88,20,192,29,113,40,178,63,218,21,139,193,120,237,229,16,15,4,114,252,142,85,63,219,31,123,251,35,249,44,2,242,165,58,128,182, +252,173,44,54,192,170,249,213,138,189,231,214,225,103,33,194,198,198,200,240,254,53,204,251,247,55,60,51,240,64,174,29,235,156,19,0,228,68,65,227,11,131,119,11,50,147,1,105,69,128,35,100,134,109,163,155,20,219,167,226,111,125,137,117,9,132,236,157,25, +241,111,141,191,154,83,253,48,219,31,201,86,17,96,194,234,128,41,19,139,199,225,204,197,181,160,19,148,49,79,189,174,22,104,178,202,207,252,167,19,103,199,26,237,207,90,251,60,131,40,0,178,128,206,183,198,222,182,247,123,247,9,50,163,0,244,66,217,59, +254,6,88,131,227,202,28,228,170,10,40,186,241,139,185,89,17,160,246,72,223,45,245,24,246,71,178,82,4,208,1,66,55,170,48,64,40,151,171,3,168,176,153,87,91,162,88,211,31,122,54,222,28,122,26,164,184,40,175,239,191,134,37,152,135,154,94,28,252,99,46,94, +171,57,41,0,162,33,41,222,248,194,224,93,188,94,222,215,227,52,60,120,35,46,216,58,252,156,98,251,84,240,217,43,65,183,246,148,220,234,16,168,122,182,127,3,102,251,35,89,43,2,138,78,148,8,170,83,29,144,107,163,132,137,227,15,122,45,15,103,45,157,166, +216,123,54,217,14,64,187,227,136,124,239,223,192,195,232,81,251,179,67,7,173,61,40,0,178,41,10,176,213,244,182,173,223,183,79,174,8,48,8,70,120,127,242,61,150,60,162,8,2,15,37,223,255,15,182,78,14,177,28,184,105,49,219,31,65,78,42,18,160,86,179,160,227, +163,132,115,69,4,68,164,24,172,174,171,98,235,255,74,32,198,163,204,251,215,104,100,154,57,13,243,6,67,71,159,238,191,59,87,175,209,156,21,0,209,160,24,111,122,97,240,46,65,199,203,60,247,28,68,98,33,120,125,240,9,197,246,73,187,106,89,98,78,128,63,187, +203,2,213,238,237,143,217,254,72,78,138,128,77,106,204,14,200,13,17,32,74,113,168,46,49,192,154,133,202,37,254,237,31,223,10,3,238,14,208,113,242,38,254,209,204,255,129,221,147,79,142,28,178,245,228,234,245,201,229,242,205,215,185,117,108,171,125,192, +187,83,110,66,32,13,27,53,219,14,66,139,253,160,114,55,237,77,95,6,161,110,54,196,35,217,153,15,16,199,108,127,4,145,39,2,104,98,224,70,245,218,6,103,179,8,160,183,251,186,229,211,65,203,43,99,146,104,47,151,183,135,159,39,239,39,175,140,144,214,253, +71,195,146,255,192,67,221,191,163,77,230,80,0,100,101,20,64,130,163,79,245,223,73,91,56,202,187,40,53,172,4,100,203,192,223,216,240,8,69,14,120,73,49,91,10,0,41,150,88,244,202,170,3,170,158,241,63,138,189,253,145,124,17,1,155,80,4,124,144,136,40,193, +210,57,21,48,187,186,88,177,247,124,103,228,5,176,4,199,64,208,104,101,189,94,91,32,64,239,246,137,13,182,126,239,80,46,95,151,92,174,223,120,29,111,140,237,26,171,183,191,65,75,57,228,64,195,71,131,158,78,216,99,218,162,216,62,233,47,90,7,198,79,93, +12,113,127,22,245,6,80,123,164,47,246,246,71,242,73,4,168,84,29,144,109,34,128,214,252,151,146,251,254,172,37,202,245,251,31,247,15,193,46,211,102,208,243,242,90,8,211,148,129,104,64,116,214,63,51,112,79,174,95,147,57,47,0,104,248,134,156,200,95,16,79, +94,118,17,62,109,14,180,117,248,121,112,134,173,138,237,23,141,2,240,51,167,101,199,200,96,149,179,253,59,176,183,63,146,111,34,64,181,234,128,121,89,85,29,64,107,254,105,232,223,168,23,20,123,207,205,3,143,65,64,244,1,39,51,249,79,87,192,186,254,221, +103,235,243,76,160,0,200,1,6,15,88,234,71,142,216,158,211,26,229,93,100,180,57,16,53,254,175,15,62,169,220,129,175,170,128,146,31,124,11,226,162,152,217,75,1,41,200,246,215,98,182,63,146,183,34,32,127,171,3,104,205,255,210,89,229,48,127,122,169,98,239, +73,71,253,54,88,247,129,65,102,217,31,199,107,192,111,11,143,29,92,223,115,127,62,92,139,121,33,0,232,140,128,189,15,116,222,41,69,99,126,154,220,33,7,131,80,0,7,38,222,134,30,87,139,98,251,101,248,228,249,96,188,242,146,140,93,10,192,108,127,4,73,129, +8,200,195,234,128,68,232,95,7,103,47,155,174,216,123,134,165,32,188,54,240,232,49,207,95,222,67,69,87,168,133,182,205,163,191,241,76,4,92,40,0,114,8,75,151,187,191,111,231,196,3,186,2,185,101,129,26,136,197,37,120,165,127,61,171,47,85,138,146,31,126, +11,132,217,51,32,30,201,172,165,0,204,246,71,144,20,137,0,21,171,3,50,117,57,128,6,61,207,93,57,3,10,20,12,253,191,59,242,34,140,120,251,64,203,201,203,252,167,243,99,236,131,222,214,250,231,6,30,207,151,107,144,203,167,27,110,255,131,93,247,4,156,145, +113,26,230,145,165,14,121,3,244,186,90,97,215,216,107,202,157,128,202,114,40,249,209,127,38,154,3,101,202,82,64,74,178,253,49,236,143,32,255,156,24,152,251,203,1,225,168,4,43,230,86,64,93,109,137,98,239,57,238,31,132,119,71,55,202,14,253,83,104,215,191, +134,103,7,110,15,185,35,145,124,185,254,242,74,0,120,38,130,142,230,77,195,191,20,100,86,4,36,68,128,30,222,28,122,70,177,57,1,20,106,100,11,191,112,45,196,125,25,176,20,144,178,108,127,180,254,8,242,33,17,112,44,39,192,148,195,213,1,172,225,15,217,151, +179,151,77,83,244,8,110,234,123,24,130,162,159,181,113,151,131,64,140,255,120,179,115,107,231,91,99,111,230,211,181,199,229,219,205,86,255,116,255,227,174,17,127,189,220,113,193,52,33,208,27,117,193,203,253,235,21,221,175,226,239,126,29,180,167,44,73, +239,172,0,236,237,143,32,105,23,1,55,170,84,29,144,110,17,64,3,156,60,167,129,11,86,205,2,157,192,43,246,190,251,39,222,97,205,218,146,241,254,53,188,38,242,254,163,61,63,137,134,164,188,186,238,242,78,0,68,2,162,248,254,35,61,63,230,181,242,191,186, +129,47,128,122,203,110,56,98,217,169,216,126,105,10,140,80,250,179,239,179,159,32,165,225,34,76,73,111,127,52,254,8,114,178,145,128,92,19,1,81,242,92,59,99,73,45,76,43,47,80,236,61,157,97,27,75,252,147,187,238,79,209,23,105,161,111,219,196,131,131,7, +44,173,249,118,205,113,249,120,163,117,189,109,218,49,124,208,250,60,173,247,148,11,141,4,208,40,128,39,226,84,108,191,180,203,22,65,201,247,190,9,241,96,56,165,199,3,179,253,17,36,3,69,64,14,85,7,208,146,191,186,105,165,176,102,65,181,162,239,75,147, +178,29,33,11,121,30,203,235,248,71,187,196,6,221,145,241,253,15,119,255,26,226,249,119,189,229,165,0,160,161,168,125,15,118,221,30,13,73,110,185,101,129,2,167,5,107,96,156,92,128,27,20,221,183,130,207,95,147,232,18,232,243,167,196,96,98,182,63,130,100, +166,8,232,200,145,217,1,180,228,175,164,64,7,23,156,50,83,209,199,0,141,194,190,63,185,141,149,104,203,118,186,140,2,52,60,55,112,135,115,216,103,207,199,107,141,203,215,155,204,210,229,30,110,121,101,248,215,186,66,249,81,0,122,225,237,159,120,27,26, +172,123,21,221,183,146,31,255,39,8,11,235,212,143,4,168,109,252,177,183,63,130,200,22,1,133,42,86,7,164,74,4,28,47,108,186,112,213,44,40,52,104,21,123,95,119,196,1,27,251,30,34,158,63,207,74,180,101,57,113,122,14,172,61,238,61,13,207,41,216,225,13,5, +64,246,112,248,241,222,251,93,163,254,38,185,249,0,244,194,227,53,28,108,236,125,144,37,6,42,118,82,74,75,160,236,127,111,1,141,65,79,211,102,85,51,254,234,133,253,247,66,7,246,246,71,144,164,249,112,78,64,246,85,7,68,201,243,235,140,197,181,48,187,186, +72,209,247,125,185,111,61,171,196,162,145,88,153,15,111,224,4,46,122,224,161,238,155,163,193,44,159,165,140,2,64,30,33,79,52,114,240,225,238,155,5,61,47,123,245,71,224,116,96,9,154,152,26,85,18,237,202,37,80,114,243,255,133,120,56,172,124,127,0,85,179, +253,137,241,223,92,143,217,254,8,162,80,36,64,237,217,1,85,37,234,136,0,186,238,191,112,70,25,172,93,84,163,236,51,198,178,19,14,78,190,3,198,36,66,255,250,2,1,58,223,26,187,191,127,143,185,33,159,175,47,46,223,111,176,174,119,199,119,13,238,183,60,154, +204,82,0,189,16,15,78,188,3,135,205,219,21,221,183,130,235,174,132,130,207,95,11,113,175,95,97,207,95,205,108,255,122,92,243,71,16,213,68,128,10,203,1,103,38,34,1,17,5,69,64,84,138,65,101,177,1,46,88,53,83,209,99,65,19,254,94,234,253,43,240,156,0,114, +31,50,196,243,135,128,51,50,176,255,161,238,59,243,253,218,202,123,1,64,231,4,236,250,99,219,207,130,174,136,73,110,135,64,122,33,210,11,242,165,222,7,193,30,154,84,116,255,74,110,185,9,244,23,156,77,68,128,47,249,239,26,142,96,182,63,130,100,187,8,80, +169,58,160,154,137,128,228,151,28,69,98,252,11,244,90,248,228,105,115,192,160,19,20,61,14,47,244,62,0,142,176,5,4,141,252,124,2,173,129,131,3,15,119,255,208,59,25,244,160,0,64,192,57,226,183,29,125,170,255,182,100,162,0,244,130,116,69,108,240,108,207, +125,228,102,85,46,100,175,209,233,152,193,54,92,124,46,196,61,222,68,203,96,57,15,16,127,0,184,242,82,40,191,231,231,152,237,143,32,217,44,2,44,199,68,128,194,145,128,171,207,170,131,89,85,197,172,85,175,220,85,71,42,32,78,204,33,40,49,40,250,253,119, +140,189,202,50,255,141,124,161,124,227,111,228,97,172,193,241,124,235,107,195,175,227,21,133,2,224,4,77,47,14,189,96,106,116,188,170,77,162,77,48,109,16,212,108,61,192,134,82,40,137,166,168,16,202,239,190,3,138,190,245,101,58,64,27,226,129,224,73,231, +5,80,175,159,182,24,214,159,125,26,84,109,184,155,253,84,220,248,99,111,127,4,73,125,36,64,225,229,0,58,152,231,42,34,2,78,91,88,195,62,135,46,9,156,172,16,160,165,126,244,223,207,169,41,129,79,159,179,0,106,202,140,138,126,239,17,111,47,188,218,255, +40,155,199,34,219,216,241,26,136,134,36,203,174,123,219,111,141,199,240,90,66,1,240,1,196,136,4,59,255,208,254,3,49,28,179,201,95,10,0,208,243,70,216,50,248,4,12,120,58,148,221,65,65,128,226,255,190,17,42,30,188,11,244,231,158,145,16,2,62,63,107,29,204, +26,249,208,208,29,221,162,34,196,67,225,196,223,145,159,218,69,117,80,118,231,109,80,241,215,187,128,159,59,75,97,227,255,193,108,127,180,254,8,146,30,17,160,92,117,128,192,105,96,221,242,233,112,237,217,243,97,254,180,18,118,91,71,162,18,91,211,167, +70,62,22,63,182,145,223,211,80,63,53,250,244,239,202,139,12,112,241,234,217,112,245,153,117,172,230,95,73,232,152,223,167,187,255,0,33,41,192,202,254,228,66,27,191,29,121,162,255,86,75,151,123,2,175,162,99,231,27,15,193,223,49,119,186,70,143,60,217,255, +147,115,191,187,228,177,176,87,222,120,94,58,139,58,34,133,225,169,174,123,224,199,167,221,15,5,66,177,162,251,168,59,117,37,84,144,45,218,209,11,225,125,135,32,210,218,5,210,132,133,24,251,196,67,128,214,245,115,213,149,160,93,186,0,244,231,156,14,250, +211,87,179,164,63,165,57,145,237,143,97,127,4,73,179,8,104,133,191,93,191,10,102,148,232,21,123,255,233,21,5,100,155,7,118,34,46,134,45,94,152,116,248,193,19,136,48,99,79,195,2,28,17,10,116,157,191,178,212,0,115,170,139,97,54,217,120,78,157,7,193,43, +253,143,64,191,187,131,60,75,229,151,18,210,134,63,99,13,142,205,245,207,244,63,131,87,15,10,128,143,165,254,233,190,199,235,206,173,190,118,218,138,178,79,71,131,242,18,98,232,196,192,81,111,31,188,216,251,87,248,230,178,159,170,178,159,218,229,139, +216,198,30,6,212,227,103,229,130,84,0,8,160,41,44,80,245,24,97,111,127,4,201,188,72,128,210,34,128,66,215,241,19,107,249,213,44,2,112,188,92,144,227,64,209,129,62,31,7,173,172,218,49,246,10,24,5,249,235,254,26,94,3,98,72,180,236,252,67,219,247,164,40, +198,254,63,228,176,226,33,248,48,98,36,70,151,2,190,151,236,82,0,189,96,247,143,111,133,221,227,91,84,223,103,218,48,136,54,15,226,202,74,82,96,252,247,98,182,63,130,100,168,8,80,178,58,224,31,161,30,190,129,124,22,221,82,97,252,39,2,35,240,124,207,253, +228,115,181,178,187,253,49,135,172,64,128,195,79,244,221,98,233,118,143,225,21,131,2,224,223,98,238,112,141,29,121,178,239,7,218,130,100,2,36,26,208,242,122,216,216,251,144,242,249,0,105,34,145,237,143,97,127,4,201,88,17,160,112,117,64,186,8,75,33,120, +162,243,247,224,139,186,65,208,200,127,14,83,227,111,106,114,188,80,255,204,192,179,120,165,160,0,56,105,14,63,222,251,220,224,62,243,179,201,148,6,210,132,149,72,44,124,226,66,206,122,227,143,189,253,17,36,59,34,1,89,46,2,54,246,61,8,189,174,22,150, +84,45,219,184,9,28,157,244,55,186,237,174,150,31,96,232,31,5,192,212,110,40,114,71,237,250,99,251,15,66,158,232,16,29,25,41,91,129,114,122,48,249,6,225,233,238,123,21,237,15,144,90,227,191,151,213,249,99,216,31,65,178,41,18,16,202,202,239,177,119,252, +13,216,101,218,156,212,186,63,133,150,116,31,120,168,235,59,246,126,175,5,175,14,20,0,83,198,57,226,183,239,190,183,253,38,65,199,199,146,49,124,244,66,62,98,222,1,111,14,61,149,149,198,159,102,251,163,231,143,32,89,36,2,88,179,160,86,48,101,89,36,160, +207,221,198,146,167,169,227,148,204,186,191,190,88,11,29,111,142,221,215,242,202,200,91,120,85,160,0,144,13,185,136,182,117,189,99,250,189,190,40,185,81,150,116,94,192,235,131,79,66,131,117,79,118,121,254,88,234,135,32,89,43,2,254,227,229,86,176,248, +35,89,177,223,174,176,13,254,214,241,91,136,198,194,192,37,81,239,47,232,121,234,188,213,239,189,191,243,103,120,53,160,0,72,154,157,247,180,253,175,173,207,187,95,48,200,191,40,53,228,80,107,52,28,60,221,245,71,24,243,245,103,252,119,110,125,249,8,51, +254,186,2,236,240,135,32,217,40,2,138,136,8,104,157,244,192,247,183,116,64,40,195,39,222,70,99,17,120,188,243,183,96,14,140,129,150,147,95,202,168,225,52,180,121,145,111,251,111,91,190,225,183,133,130,120,37,160,0,72,154,144,39,26,125,239,215,205,223, +136,137,49,135,38,137,210,64,58,47,192,39,122,224,209,142,95,131,55,234,202,216,239,59,209,58,10,77,47,30,2,45,107,239,139,214,31,65,178,149,98,189,0,187,7,29,240,199,189,131,25,189,159,47,245,61,8,109,246,195,96,16,146,43,99,214,23,9,112,228,169,254, +91,70,14,219,218,240,236,163,0,80,208,40,58,251,14,61,214,251,93,93,65,114,189,147,244,156,1,70,125,253,240,183,142,223,129,20,23,51,238,123,74,17,17,234,159,218,199,166,36,106,56,52,254,8,146,11,34,224,241,250,49,104,24,207,204,225,119,219,70,55,178, +65,63,201,38,253,209,138,173,161,131,214,167,223,127,164,231,17,60,235,40,0,20,231,200,147,125,47,246,238,152,120,32,153,210,64,10,157,102,213,100,219,207,198,7,103,26,131,123,187,193,222,103,6,65,143,77,34,17,36,39,30,242,68,199,135,197,24,252,245,253, +225,140,219,183,102,242,28,220,212,191,158,56,70,201,37,253,241,90,14,124,214,80,251,123,119,181,96,183,63,20,0,234,64,39,72,189,123,103,243,143,236,3,190,131,201,228,3,48,17,64,212,238,182,177,77,240,222,232,75,153,243,253,164,24,244,110,107,7,142,231, +241,100,35,72,14,81,160,229,97,239,160,19,186,172,254,140,217,39,58,225,239,111,157,191,103,9,11,201,36,253,209,72,37,39,112,254,237,191,107,253,170,199,20,240,224,217,70,1,160,26,97,111,52,252,222,175,155,191,34,69,98,214,100,90,5,83,181,75,151,3,54, +245,173,135,122,235,238,140,248,110,206,17,59,56,134,108,192,235,208,251,71,144,92,139,2,248,34,34,108,235,179,101,196,254,56,66,22,88,223,254,75,8,136,94,16,184,228,42,172,104,68,246,224,134,238,239,13,236,49,55,226,153,70,1,160,58,19,173,206,129,125, +127,233,252,166,96,224,227,201,228,200,81,213,75,43,3,158,236,188,27,122,221,173,105,255,94,214,158,73,16,67,81,204,250,71,144,28,132,142,250,61,58,150,254,142,164,65,209,15,27,218,239,4,115,96,20,116,156,252,78,127,52,114,64,235,253,123,119,76,60,120, +232,241,222,39,240,12,163,0,72,25,77,47,13,189,217,242,202,240,255,232,146,236,15,64,251,92,211,190,215,27,218,126,201,134,95,164,19,247,152,3,79,44,130,228,176,0,24,243,132,210,90,18,72,19,159,105,185,31,109,243,107,224,11,18,86,92,38,218,2,30,108,253, +222,125,59,126,223,118,75,150,54,89,69,1,144,205,236,190,183,227,215,163,71,237,155,244,73,38,5,210,186,87,218,4,227,225,214,255,97,63,211,69,216,19,196,204,127,4,201,213,135,189,70,3,254,136,4,193,168,148,182,125,120,182,251,62,168,183,236,78,58,227, +159,23,56,136,248,37,211,187,191,108,250,178,223,22,10,227,217,69,1,144,114,196,176,4,239,252,162,233,91,238,137,96,179,160,79,230,80,198,217,208,11,147,127,16,30,110,251,5,4,68,95,90,190,79,28,147,103,17,36,167,137,39,229,115,39,199,171,3,143,192,110, +211,102,40,16,138,146,122,31,186,236,202,235,184,200,206,63,180,253,159,201,118,215,40,158,85,20,0,105,195,51,17,112,191,251,171,230,47,74,209,184,45,153,161,65,20,26,18,163,161,177,71,219,127,197,166,8,166,26,193,40,64,60,142,177,52,4,201,73,227,31, +167,209,70,13,232,210,16,229,123,103,228,69,120,115,232,25,48,36,233,249,179,231,100,137,142,54,251,249,126,231,91,99,187,241,172,162,0,72,59,163,71,108,93,251,254,210,249,53,94,203,75,201,54,206,163,161,177,38,219,1,54,66,56,22,79,109,168,174,168,166, +20,112,45,13,65,114,19,137,40,128,234,66,29,20,166,184,199,199,158,241,55,224,229,190,135,137,240,48,36,85,235,207,140,63,29,242,179,117,236,190,131,235,187,215,227,25,69,1,144,49,52,189,52,180,181,225,249,129,155,13,165,186,164,223,139,134,200,222,159, +124,15,158,233,254,19,164,210,34,87,45,172,5,13,143,151,4,130,228,34,81,41,6,43,107,139,83,90,228,115,216,188,13,158,35,207,49,158,211,2,167,73,238,217,66,199,251,78,116,184,222,216,241,251,214,219,176,217,15,10,128,140,99,223,95,187,30,104,127,125,244, +207,180,31,181,18,34,128,206,196,166,163,49,83,69,245,226,90,40,170,46,134,152,136,55,23,130,228,26,60,199,193,69,11,42,83,246,121,116,242,233,19,93,247,176,82,103,94,147,92,115,49,58,225,47,232,138,180,188,249,211,250,175,134,220,105,204,98,68,1,128, +124,28,49,162,74,183,255,182,245,150,201,118,215,230,100,103,6,80,232,114,192,187,35,47,178,65,25,169,128,142,253,157,123,206,66,16,195,81,60,153,8,146,67,208,210,191,101,213,133,112,206,156,178,148,124,30,29,236,243,88,199,93,16,139,199,136,241,79,238, +89,72,219,252,70,2,226,196,27,63,173,191,222,109,10,184,240,108,162,0,200,88,200,133,26,219,114,219,209,175,186,70,253,135,105,200,42,25,232,122,25,77,154,121,103,248,5,216,60,240,120,74,246,127,233,149,171,193,88,94,8,49,9,163,0,8,146,51,207,37,114, +63,127,235,204,217,228,121,162,254,35,191,205,113,24,214,183,255,2,164,152,200,250,156,36,245,12,228,52,52,227,63,176,231,190,142,207,155,26,29,125,120,38,81,0,100,60,62,107,200,251,206,157,205,55,132,189,209,1,170,94,147,23,1,5,176,101,240,137,148,136, +128,194,234,98,88,245,185,51,18,29,1,17,4,201,122,188,97,9,46,93,88,5,215,173,168,77,137,231,191,190,245,23,16,149,34,73,183,248,165,9,213,196,137,138,239,188,167,237,27,237,175,143,238,195,51,137,2,32,107,24,111,118,140,190,241,211,250,235,136,253,182, +39,51,51,224,67,34,96,40,53,34,96,217,149,171,97,193,249,75,33,226,199,254,26,8,146,173,208,167,78,32,42,193,156,50,3,220,117,217,98,224,53,234,166,255,29,247,252,163,177,228,141,63,133,182,249,109,121,121,248,135,77,47,13,109,196,179,137,2,32,235,24, +61,106,111,222,125,111,251,231,121,29,31,212,40,33,2,248,2,120,125,232,73,216,212,247,176,202,79,14,13,156,253,159,151,192,172,181,117,40,2,16,36,75,241,19,227,95,83,168,131,245,159,89,9,179,74,13,42,123,254,135,96,125,219,47,21,241,252,41,116,192,15, +49,254,119,237,184,187,237,126,60,147,40,0,178,150,230,77,195,59,118,254,161,237,27,188,150,139,37,219,102,151,77,16,228,141,176,117,248,89,213,171,3,180,70,45,92,248,163,79,193,194,139,150,65,36,16,134,120,12,27,4,32,72,182,64,195,254,75,170,10,225, +169,207,175,134,85,211,139,85,253,44,154,237,255,80,219,255,18,207,63,172,152,231,63,124,200,246,200,182,187,90,254,31,62,119,80,0,100,191,8,216,56,244,82,253,51,3,223,165,77,44,146,45,194,61,158,24,248,238,200,11,240,116,247,31,33,14,234,37,235,9,6, +45,124,226,7,151,195,25,95,63,143,117,8,148,34,88,125,131,32,153,76,140,220,167,158,176,8,87,47,173,134,23,190,116,42,44,175,41,82,245,243,14,153,183,193,163,29,191,97,67,126,4,141,50,158,255,120,179,99,211,219,255,211,248,159,216,148,20,5,64,206,176, +255,161,174,245,205,155,134,126,202,68,64,146,28,23,1,187,198,94,131,199,59,126,11,98,44,162,234,190,175,248,204,90,184,248,167,215,64,65,101,17,68,131,17,60,153,8,146,97,80,191,34,44,198,128,22,239,220,126,193,2,88,255,217,149,80,89,160,85,245,51,247, +140,191,14,127,235,248,29,113,14,98,202,24,255,2,129,142,90,127,119,243,173,71,190,22,112,132,209,219,64,1,144,59,196,165,56,108,187,171,245,247,45,47,15,255,198,80,162,76,36,192,40,20,193,254,137,183,217,218,91,72,10,168,186,255,51,214,204,129,203,127, +117,253,137,188,0,12,205,33,72,230,224,33,246,114,122,137,30,30,189,254,20,248,239,117,115,85,255,188,119,70,94,128,103,186,238,101,221,253,146,173,243,63,110,252,29,67,190,3,91,110,61,250,185,160,51,18,196,51,138,2,32,247,68,64,156,137,128,59,90,94, +25,254,179,18,141,130,40,180,99,96,131,117,47,252,165,229,103,224,137,56,84,221,127,218,37,240,226,219,175,129,83,191,116,14,19,0,82,68,196,147,138,32,105,68,138,197,153,241,191,124,113,21,108,250,242,169,112,209,252,10,213,63,243,149,129,71,96,99,223, +67,32,112,58,34,0,248,164,223,143,118,249,11,56,195,245,239,252,162,233,51,228,167,7,207,42,10,128,220,22,1,191,105,249,225,240,251,214,13,74,44,7,80,104,199,192,46,103,35,252,169,249,199,96,14,142,169,186,255,52,145,113,245,23,206,34,66,224,106,40,174, +45,133,72,0,151,4,16,36,29,4,163,49,208,104,52,240,255,46,156,15,143,17,207,127,70,137,186,153,254,116,157,255,169,174,63,192,27,131,79,177,100,228,100,123,251,31,55,254,33,79,164,117,243,173,71,62,61,217,225,178,226,89,69,1,144,7,34,0,224,237,255,109, +250,142,169,217,241,152,174,72,153,72,0,45,17,28,245,246,193,125,141,183,193,160,167,83,245,239,48,99,205,92,184,252,215,55,192,130,243,151,64,52,24,197,249,1,8,146,194,231,7,77,244,91,82,93,8,207,124,97,53,252,215,57,115,85,31,240,19,20,125,240,112, +219,47,216,124,18,26,117,212,40,240,137,204,248,187,35,237,196,248,127,106,178,205,101,194,51,139,2,32,111,8,56,194,113,114,225,127,107,162,197,249,24,205,124,85,74,4,216,195,22,248,115,243,79,160,217,118,64,245,239,96,44,43,128,243,110,190,2,214,125, +247,18,208,21,234,48,65,16,65,84,38,44,197,32,68,182,111,172,157,197,66,254,103,206,42,85,253,51,237,33,51,121,166,252,20,26,44,187,153,241,87,130,99,158,127,223,230,219,142,92,75,140,255,24,158,89,20,0,121,71,208,25,1,34,2,110,154,104,117,62,166,47, +82,98,57,32,14,58,78,15,33,49,192,212,250,110,211,150,148,124,143,69,151,174,128,203,127,117,3,204,60,117,30,68,3,17,156,35,128,32,74,123,253,64,107,251,69,152,81,108,128,245,159,89,193,58,251,149,24,4,213,63,119,216,219,13,127,106,186,21,250,220,173, +44,233,88,17,227,111,96,158,127,31,121,246,93,73,140,255,0,158,93,20,0,249,44,2,226,91,110,61,122,211,120,139,67,33,17,0,172,25,7,13,208,61,211,125,47,188,220,191,158,60,60,212,207,216,47,157,89,14,151,222,241,105,56,227,155,231,131,160,19,216,178,0, +130,32,201,67,7,249,208,245,254,207,175,154,14,175,126,229,52,184,98,113,117,74,62,183,201,182,15,238,107,250,17,88,130,38,48,240,133,202,121,254,238,72,219,230,219,142,94,65,140,63,14,247,65,1,128,4,156,97,34,2,142,220,52,214,104,87,44,39,128,102,231, +234,120,3,188,53,244,12,108,104,187,19,2,162,79,253,47,66,84,199,242,107,79,133,203,239,188,30,102,174,153,131,209,0,4,73,198,235,143,39,188,254,233,197,122,248,235,181,203,225,79,87,45,131,154,34,93,74,62,251,189,209,151,224,225,182,95,66,80,12,128, +142,51,28,139,65,40,96,252,19,9,127,196,243,119,246,227,25,70,1,128,156,16,1,145,248,43,223,123,255,91,109,175,141,254,89,169,234,128,227,189,2,14,155,183,49,37,111,14,140,166,228,187,148,207,171,130,75,127,254,105,56,235,166,11,65,87,160,99,66,0,176, +109,0,130,156,52,33,49,198,214,251,255,207,154,153,240,234,87,215,194,53,203,106,82,242,185,98,44,10,207,246,252,137,181,26,231,200,243,67,137,214,190,20,109,129,64,141,255,209,99,9,127,184,230,143,2,0,249,167,155,47,28,131,109,191,105,254,97,203,43, +195,191,99,205,130,20,130,138,0,90,25,240,135,198,91,216,208,142,148,160,209,192,210,79,173,134,43,126,243,57,152,119,238,98,16,35,81,144,162,216,220,11,65,254,21,137,186,126,17,22,87,21,178,210,190,187,175,92,194,6,250,164,2,71,216,10,247,55,255,20, +182,143,190,114,172,204,143,87,228,125,89,147,159,65,239,62,52,254,40,0,144,127,3,13,251,189,119,87,203,237,68,4,252,92,137,217,1,199,161,55,52,109,20,244,215,214,59,88,120,47,85,148,76,47,131,11,110,187,18,46,184,229,74,40,158,86,138,93,4,17,228,163, +238,123,178,249,35,18,104,121,14,110,62,183,14,94,249,202,105,112,201,130,202,148,125,126,175,171,5,254,216,120,51,116,56,143,42,86,230,199,140,127,161,0,19,109,206,119,55,126,231,224,213,196,248,99,157,127,134,33,224,33,200,204,167,193,182,223,180,252, +154,136,1,247,170,235,230,222,31,241,139,138,24,77,45,167,131,88,92,130,23,122,255,2,38,223,32,124,113,209,247,216,76,129,84,48,119,221,34,152,182,106,54,180,191,90,15,93,239,180,178,101,1,58,113,16,65,242,29,218,195,95,36,55,251,165,11,171,224,182,243, +234,96,69,109,81,74,63,159,86,11,209,206,126,116,154,31,45,37,86,10,58,213,143,14,246,161,189,253,177,189,47,10,0,100,138,145,0,34,2,30,112,12,120,29,231,255,112,249,99,98,36,166,167,243,4,146,133,134,245,140,124,33,236,25,127,3,76,254,65,248,198,178, +31,195,204,194,249,41,249,78,250,34,3,156,246,213,115,97,238,185,139,160,249,133,67,48,86,63,200,58,11,242,58,188,12,145,252,67,36,162,62,16,149,88,67,159,31,174,171,131,79,47,175,73,233,231,135,165,32,188,212,247,32,19,0,90,78,207,54,69,208,36,194,254, +195,7,45,27,182,254,188,233,187,196,248,227,218,95,134,130,75,0,25,78,195,243,131,207,238,252,67,251,117,130,158,119,241,130,114,167,139,134,249,134,60,93,240,199,134,155,225,176,121,123,74,191,83,229,252,26,184,248,103,215,192,249,183,94,9,101,179,43, +33,26,8,99,39,65,36,111,136,29,203,238,47,212,241,240,163,243,231,195,230,175,174,77,185,241,31,39,226,255,222,166,219,96,231,216,107,108,121,144,87,104,189,95,67,140,63,93,186,108,123,109,228,174,87,126,112,248,219,1,39,78,245,195,8,0,146,20,205,27, +135,222,242,154,131,87,92,118,199,234,141,250,18,237,108,49,164,204,61,69,111,252,160,228,135,71,219,127,13,3,158,78,184,126,193,77,202,121,1,39,193,188,117,139,96,214,105,243,160,251,237,22,232,120,179,9,2,54,47,8,6,29,139,10,32,72,174,65,227,119,1, +226,12,235,137,144,255,194,170,25,108,106,95,93,185,49,229,251,241,190,249,61,120,177,231,175,224,139,186,20,235,236,199,140,63,185,111,181,70,62,222,180,113,248,230,29,191,107,249,115,28,83,125,80,0,32,202,48,176,199,124,232,245,159,28,189,232,83,191, +62,109,83,97,165,126,77,84,33,17,192,107,180,192,241,2,188,59,242,34,235,250,245,149,197,55,195,204,162,249,169,187,0,13,90,88,241,153,181,48,239,19,139,161,227,245,70,232,219,209,1,17,95,24,4,163,150,13,58,65,144,92,128,54,242,161,92,180,160,18,254, +251,156,185,112,70,10,90,248,254,35,52,228,255,114,255,6,230,245,243,156,192,28,0,165,224,181,28,221,252,59,239,105,187,177,233,165,161,151,240,140,103,7,184,4,144,69,152,26,29,253,47,126,107,255,165,214,94,207,219,74,150,9,210,140,95,234,9,244,185,90, +225,15,141,55,195,190,137,183,82,254,221,10,171,138,89,23,193,43,127,243,57,88,120,209,50,230,46,177,110,130,232,70,32,89,12,173,231,167,217,253,167,205,44,129,71,174,91,9,79,125,110,85,90,140,255,144,183,139,221,219,219,70,55,129,142,215,131,160,81, +206,247,163,13,126,196,144,100,122,239,55,205,87,162,241,71,1,128,168,136,103,34,104,223,124,203,145,79,15,236,53,111,160,173,131,149,116,146,169,71,16,146,2,240,68,231,221,240,120,231,111,193,27,117,165,252,251,149,205,169,132,115,191,127,25,92,246, +203,235,96,238,217,11,32,38,197,201,195,37,138,141,132,144,172,130,102,246,123,195,18,44,175,41,130,63,95,179,140,13,238,185,108,81,85,90,246,133,26,253,123,27,111,133,33,79,183,162,37,126,20,173,129,117,247,107,220,114,219,145,139,219,54,143,238,197, +51,159,93,224,18,64,22,226,179,134,34,175,221,114,228,219,151,252,244,148,193,149,215,206,249,173,68,60,140,152,164,140,133,228,137,103,192,243,60,236,31,223,10,3,238,14,248,226,162,255,134,149,149,103,166,252,59,86,47,158,6,23,254,248,42,48,119,152, +160,125,115,3,152,26,135,89,91,97,173,94,0,192,165,1,36,131,61,126,154,221,79,13,255,55,215,206,130,235,86,214,18,97,157,30,63,203,30,154,132,23,123,255,2,245,214,61,172,157,175,158,55,40,250,254,180,204,207,220,238,218,242,214,29,13,223,112,142,248, +157,120,246,81,0,32,41,130,150,4,110,251,77,203,239,156,195,190,254,79,252,215,178,71,52,92,188,84,138,42,149,73,79,91,8,23,130,53,56,14,127,105,253,25,92,50,235,122,184,182,238,27,138,174,25,158,44,181,203,103,178,109,178,109,12,58,223,106,6,83,195, +16,72,145,40,8,122,45,38,11,34,25,101,248,105,23,191,149,211,138,225,171,167,206,128,207,46,159,6,70,109,250,2,172,135,204,219,96,83,223,122,112,134,45,172,236,87,73,88,166,127,137,14,58,182,142,221,183,235,158,182,219,2,88,230,135,2,0,73,15,245,207, +12,108,116,12,250,6,47,251,249,234,103,140,101,186,37,74,37,7,82,104,227,160,56,196,224,237,225,231,160,203,217,0,95,88,244,61,88,92,182,58,45,223,115,218,202,89,108,51,119,142,67,247,214,102,24,171,31,98,205,132,4,131,64,132,0,174,100,33,105,16,225, +113,128,160,152,184,223,78,155,81,202,12,63,237,217,175,227,211,119,61,186,194,54,120,165,127,3,28,156,124,143,149,246,41,217,216,135,194,9,28,240,58,46,124,232,241,222,31,238,251,107,215,195,216,213,19,5,0,146,102,6,247,91,142,190,120,211,129,11,174, +249,253,218,191,85,47,41,189,50,236,83,110,205,92,3,28,155,37,48,234,235,131,63,55,255,24,46,153,117,3,92,53,239,43,105,137,6,176,136,192,178,25,108,115,12,88,161,251,221,86,24,121,191,31,130,110,63,8,58,45,123,56,33,136,218,72,196,242,211,172,126,26, +218,63,191,174,2,190,186,102,38,92,186,176,18,248,52,71,164,14,91,118,192,43,125,27,88,228,206,32,20,40,186,214,207,28,2,35,15,17,191,56,178,253,119,45,223,232,120,99,108,39,94,9,40,0,144,12,193,53,234,55,111,250,238,251,215,92,120,219,138,223,45,189, +124,230,109,180,87,128,82,121,1,20,186,134,24,139,199,224,141,161,167,160,221,113,4,110,88,248,29,88,86,126,90,218,190,111,197,252,106,56,231,59,23,195,202,207,172,133,254,157,157,48,176,183,27,188,19,174,132,135,162,21,0,112,117,0,81,152,40,185,159, +66,196,227,47,51,106,225,138,197,213,240,21,98,248,207,154,93,154,246,253,114,132,204,196,235,127,4,14,89,182,3,79,126,25,85,104,239,77,215,251,109,253,222,221,219,126,221,252,245,241,22,231,48,94,13,40,0,144,12,35,232,138,72,91,239,104,252,145,189,207, +219,124,246,77,139,255,194,243,154,82,41,162,92,135,61,78,195,177,44,226,68,52,224,39,112,193,204,107,224,154,121,95,131,34,109,89,218,190,51,29,48,180,230,75,103,195,242,107,214,192,208,129,94,38,6,108,125,22,34,126,36,204,19,64,146,134,134,249,143, +175,239,207,45,55,192,213,75,107,224,115,167,76,135,133,149,5,25,177,127,123,199,223,132,45,131,79,48,17,160,134,215,79,239,31,218,214,183,111,231,228,95,119,220,221,122,171,207,18,10,227,85,129,2,0,201,96,14,63,209,247,140,109,192,219,126,233,237,171, +254,86,88,165,95,77,135,9,41,137,142,211,179,220,128,109,35,155,160,221,126,24,62,61,255,70,56,163,230,226,180,126,103,93,145,1,22,95,118,10,44,186,116,37,76,180,140,66,255,174,78,24,111,26,134,144,59,8,156,150,248,69,90,62,63,47,6,77,90,94,154,245,208, +76,254,96,84,34,70,149,103,117,251,55,172,156,198,188,254,50,99,102,60,50,169,8,127,149,120,253,45,246,247,65,224,116,170,120,253,188,142,3,142,215,120,15,172,239,254,225,161,199,122,30,143,99,183,110,20,0,72,118,48,176,199,220,184,113,232,192,5,151, +220,190,234,254,57,103,86,125,77,169,137,130,127,55,14,28,123,232,216,130,19,176,161,237,78,56,90,189,11,62,51,255,63,96,122,225,220,244,218,59,226,177,204,88,51,135,109,222,73,55,139,10,12,147,205,57,108,99,101,132,130,78,0,13,159,39,185,2,196,125,165, +3,152,228,82,162,23,242,170,226,146,222,30,97,81,2,186,114,54,163,88,15,151,18,79,255,51,43,106,225,204,89,165,25,179,143,180,79,199,59,35,47,192,246,209,151,33,32,250,20,79,242,59,33,168,11,5,32,222,126,203,206,63,180,221,72,188,255,122,124,162,162, +0,64,178,12,231,136,223,253,234,15,14,125,125,221,119,150,28,90,251,229,249,247,196,98,241,2,37,151,4,216,5,68,188,15,1,226,80,111,221,13,93,174,70,184,116,246,13,240,201,217,159,83,237,193,52,21,232,242,192,41,215,157,14,43,174,61,149,69,5,134,246,245, +194,120,243,48,4,28,126,34,2,52,44,87,32,167,151,8,136,33,43,154,38,223,120,213,18,35,104,16,56,22,6,207,85,33,64,37,113,68,140,65,132,136,195,34,34,120,214,205,45,135,107,151,213,178,164,190,234,66,93,70,237,107,3,185,199,104,184,127,212,219,199,146, +112,213,184,199,232,253,160,47,18,96,232,160,245,201,237,191,107,253,129,107,212,239,198,39,41,10,0,36,75,161,6,127,239,253,157,15,78,182,187,234,47,188,121,197,250,162,90,131,226,75,2,52,30,64,31,70,81,41,12,175,245,63,10,245,150,221,112,205,188,175, +195,218,154,11,50,226,24,112,2,15,51,79,155,199,182,128,221,199,74,8,135,15,246,129,173,119,18,34,254,48,75,28,164,203,4,185,54,123,128,126,167,202,186,106,217,175,159,87,110,132,154,34,61,76,120,195,160,205,161,99,67,141,62,77,232,163,222,190,142,156, +251,197,213,133,240,201,133,85,112,229,146,106,88,81,83,148,113,251,59,234,235,135,215,137,225,111,178,238,35,215,104,162,42,71,13,88,200,159,211,120,15,61,222,123,219,193,13,61,27,148,118,22,16,20,0,72,154,232,221,62,113,104,178,205,121,254,197,63,57, +229,158,5,23,76,251,191,209,128,168,104,149,0,51,56,26,158,61,156,38,252,195,240,112,251,47,96,213,228,57,44,73,112,94,201,210,140,57,14,5,149,69,176,248,178,149,108,115,141,218,97,244,200,32,17,4,131,172,172,48,26,140,228,140,24,160,227,149,139,170, +139,161,124,158,124,1,80,164,227,225,212,233,37,48,228,52,131,86,151,221,57,20,39,140,62,237,38,73,188,220,185,101,70,184,96,126,5,92,177,168,10,78,159,85,154,214,218,253,143,195,19,113,194,123,163,47,193,110,211,150,99,225,126,35,168,149,153,65,179, +252,157,35,190,195,59,239,110,251,54,241,254,155,240,137,137,2,0,201,49,188,230,144,103,243,45,71,190,125,214,127,44,218,117,198,215,23,222,167,53,242,53,209,160,242,77,188,104,3,33,250,200,109,182,237,135,110,103,3,172,155,126,37,92,62,231,139,80,105, +168,205,168,227,81,54,187,146,109,116,153,192,222,111,97,93,6,105,203,97,154,47,64,155,12,209,92,1,154,60,152,141,203,4,98,88,132,89,107,235,64,107,76,110,104,20,157,83,255,90,135,57,59,141,62,177,250,52,180,79,55,106,224,231,150,27,97,221,156,114,214, +147,159,26,253,162,12,21,53,98,44,10,123,39,222,100,19,58,45,1,147,106,225,126,38,218,137,224,165,253,252,59,223,28,187,119,239,3,157,63,247,89,67,1,124,82,162,0,64,114,152,67,143,245,62,63,114,216,118,248,194,91,87,60,48,99,85,249,149,97,175,72,30,150, +74,119,244,74,44,11,208,222,1,52,97,169,193,178,7,46,158,245,89,184,112,214,103,20,157,65,174,20,149,11,106,216,182,234,115,103,130,99,200,6,19,45,35,48,78,196,128,99,208,10,33,79,144,125,31,42,6,56,234,41,102,184,30,160,201,158,250,34,61,44,190,252, +148,164,223,235,130,186,10,56,117,70,9,52,79,120,192,152,5,149,20,180,92,143,122,249,244,103,161,78,128,165,53,69,112,238,220,114,184,136,120,251,107,166,151,144,63,203,236,239,208,96,221,3,91,135,159,99,115,56,180,42,101,247,31,135,150,247,5,221,145, +161,189,127,238,248,126,211,198,161,215,241,201,152,127,104,226,105,26,183,26,137,68,96,201,146,37,48,52,52,132,103,33,77,208,100,159,117,223,89,114,203,170,235,230,253,138,78,4,22,195,234,181,244,150,226,34,241,196,194,48,163,112,46,92,58,251,115,176, +110,250,229,228,1,167,207,130,168,137,27,44,29,227,48,78,4,129,173,199,12,126,155,7,232,240,37,22,29,32,222,83,38,86,20,68,124,97,88,249,217,181,112,250,55,206,83,228,253,118,15,58,224,107,27,91,88,231,187,76,11,134,196,200,243,139,134,246,169,151,79, +59,241,85,21,232,96,101,109,17,75,230,163,134,159,10,0,109,22,68,112,104,171,109,106,248,59,28,245,108,249,73,167,226,189,193,241,26,208,18,227,111,106,180,63,183,243,158,182,91,45,221,158,73,124,26,166,143,13,27,54,192,77,55,221,132,2,0,73,15,243,214, +213,156,122,254,15,150,61,80,181,176,228,220,136,79,141,104,192,223,161,225,205,104,60,2,243,138,151,194,101,115,62,199,250,7,208,220,129,108,128,46,11,56,134,172,108,48,17,157,73,224,26,177,179,62,3,113,98,124,50,69,16,68,67,81,150,248,119,217,157,215, +17,15,79,57,35,242,203,237,125,240,208,161,17,40,51,164,55,104,120,220,224,71,143,149,180,210,82,197,186,10,35,235,197,127,206,156,50,22,173,152,94,172,207,154,123,143,122,250,239,142,190,8,77,214,253,76,36,39,38,246,169,39,88,104,59,223,104,72,154,60, +250,84,255,79,142,60,217,255,20,205,21,65,80,0,160,0,200,247,104,64,177,86,183,238,255,46,254,241,170,235,231,254,140,184,32,70,53,163,1,204,80,197,194,108,121,96,126,233,10,184,116,246,245,176,182,250,66,214,105,48,155,160,21,5,116,137,128,138,1,123, +159,25,220,99,78,8,121,2,32,145,135,42,71,188,78,238,152,32,72,85,66,161,72,140,127,97,117,49,92,122,199,167,161,116,86,133,178,247,43,17,57,255,181,185,3,222,232,178,64,105,138,68,0,125,52,73,199,12,190,24,35,199,148,28,71,250,217,115,202,140,112,202, +180,98,214,160,135,134,245,235,202,141,105,239,195,63,85,70,188,61,196,240,191,196,150,198,34,228,94,160,235,252,26,21,13,255,9,175,191,193,254,202,238,251,58,110,157,108,119,225,131,23,5,0,10,0,228,159,162,1,167,159,255,253,101,127,172,90,84,114,190, +210,205,131,62,242,58,32,15,191,248,9,33,112,3,17,2,231,103,77,68,224,159,4,129,195,207,162,2,54,34,6,236,3,22,112,143,58,200,159,249,152,87,78,187,204,208,222,3,52,135,128,78,47,84,52,177,144,38,187,5,195,80,54,171,18,46,184,237,83,80,62,183,82,149, +239,71,59,227,221,250,86,23,188,218,110,102,9,116,74,26,221,227,198,158,118,224,163,27,253,127,131,150,131,170,2,45,204,43,47,96,97,125,234,221,175,168,45,134,57,165,134,172,51,248,31,52,252,219,198,18,57,49,180,169,143,218,134,63,225,245,11,228,26,20, +39,234,159,238,255,201,225,39,250,159,70,175,31,5,0,10,0,228,95,69,3,248,117,223,94,124,243,170,235,230,222,65,172,113,169,24,82,127,220,247,7,133,0,77,22,92,91,125,1,8,156,54,171,143,35,245,200,125,22,15,56,137,40,160,101,134,180,236,144,118,39,12,186, +252,16,13,70,217,210,1,125,246,127,80,20,76,73,24,144,91,87,140,136,204,122,206,57,123,33,156,245,173,11,192,88,94,168,234,119,162,79,139,251,15,12,195,67,135,134,193,75,174,139,2,29,7,252,20,34,28,84,79,210,48,190,116,204,208,211,223,83,207,222,72,140, +125,185,81,203,188,251,69,149,133,176,172,166,136,108,133,196,187,47,128,202,2,109,214,223,83,253,158,118,150,12,219,98,59,64,12,127,16,244,156,129,213,244,171,9,39,104,64,208,243,96,106,114,60,179,231,79,29,183,79,118,184,198,240,233,134,2,0,5,0,114, +82,204,60,181,114,217,39,190,183,244,247,51,215,84,92,163,70,223,128,143,19,2,177,184,4,115,139,23,195,5,51,175,101,57,2,106,102,66,167,26,26,13,8,218,125,224,153,116,129,107,196,1,158,113,39,75,52,164,203,9,33,111,8,196,96,132,181,44,102,150,86,147, +16,4,116,57,225,120,43,62,122,191,198,99,177,19,109,141,171,22,77,131,101,87,175,129,185,68,0,164,146,118,179,15,30,62,60,2,59,251,137,184,33,98,134,138,0,129,238,43,221,79,77,66,41,80,143,254,184,177,167,80,175,157,86,18,148,234,5,214,101,112,22,241, +228,23,84,20,16,131,95,0,117,228,231,172,18,3,84,228,128,177,255,32,29,142,163,176,211,244,26,155,153,145,8,245,27,88,27,109,117,159,234,199,50,252,157,145,158,131,143,244,252,164,245,149,225,215,82,113,239,34,40,0,80,0,228,24,212,131,56,253,107,11,190, +118,218,151,234,238,212,23,107,231,70,2,98,194,56,169,109,40,99,17,98,64,162,48,173,96,46,156,59,253,74,56,103,218,101,80,166,175,202,217,227,28,9,132,33,228,10,130,223,230,5,159,213,3,126,139,135,252,244,38,132,129,39,200,234,250,169,93,229,137,241, +44,172,44,130,202,133,181,48,99,205,92,168,89,58,61,173,251,61,224,8,176,42,129,35,99,110,24,38,251,239,9,137,236,242,160,98,128,122,244,53,133,58,152,73,12,253,76,98,220,231,150,25,96,6,249,89,91,164,135,10,242,119,185,218,94,152,94,187,180,107,223, +238,241,215,161,215,213,66,174,99,233,152,225,215,164,228,126,229,120,77,164,115,171,233,254,131,27,186,239,114,155,2,78,124,138,161,0,64,1,128,36,69,213,130,226,234,115,190,189,248,127,23,92,56,253,59,113,41,198,139,225,212,172,35,178,170,1,242,64,45, +55,84,195,233,53,23,50,49,48,187,104,97,94,29,123,41,34,130,36,74,204,124,112,90,33,99,39,27,82,143,63,16,137,17,1,16,103,17,129,66,93,126,77,96,244,68,28,112,200,188,29,14,78,190,195,250,245,83,131,175,229,245,41,49,252,199,147,252,172,61,158,157,196, +240,255,180,111,231,228,97,124,106,161,0,64,1,128,40,202,162,139,167,175,35,66,224,174,170,5,37,23,68,137,183,23,19,83,115,253,80,47,42,34,133,216,114,192,242,138,51,224,19,68,8,172,168,60,131,24,26,236,101,133,164,23,58,154,247,224,196,59,112,212,178, +27,236,161,73,150,187,146,232,134,153,138,39,120,34,220,31,114,71,71,27,95,28,252,101,195,115,3,143,71,252,34,198,251,81,0,156,20,248,244,68,166,68,239,142,137,3,195,135,172,23,157,254,149,5,223,92,117,195,220,255,49,150,233,230,210,118,194,106,87,11, +240,108,206,64,33,241,45,99,208,104,221,3,77,182,125,48,167,104,17,156,53,237,18,86,66,88,97,168,193,147,131,164,206,129,33,98,180,213,126,136,121,251,93,206,70,8,138,126,208,17,111,63,149,249,42,130,129,167,249,33,225,222,237,19,15,30,220,208,243,59, +251,128,215,130,103,6,65,1,128,168,251,240,35,30,198,129,245,221,143,183,191,62,186,101,221,119,150,220,182,240,226,105,223,19,244,124,161,26,115,5,254,217,225,225,88,233,212,113,207,107,176,167,19,222,30,126,1,78,169,60,155,136,129,75,97,113,217,106, +38,22,16,68,13,198,253,67,112,196,178,19,26,136,183,63,238,31,6,154,16,147,106,195,79,167,246,209,181,254,137,22,199,235,71,158,232,255,69,223,238,201,6,60,51,136,172,231,41,46,1,32,201,50,235,180,202,229,68,8,252,124,198,234,138,47,210,210,54,49,197, +99,68,105,213,0,205,176,22,52,2,204,46,94,8,107,107,46,132,211,170,206,131,154,130,89,120,114,144,164,241,139,94,104,35,222,254,17,243,14,232,113,53,131,63,234,101,33,254,84,151,169,210,178,62,26,238,183,15,250,26,27,95,24,252,69,251,150,145,45,169,202, +197,65,212,3,115,0,144,156,96,197,53,179,47,62,253,107,11,126,94,89,87,124,33,237,36,40,69,83,251,112,162,201,103,52,105,144,110,197,186,82,88,84,182,10,78,175,185,8,150,87,156,14,197,218,50,60,65,200,73,35,198,69,232,119,181,194,81,235,110,102,252,173, +193,9,150,202,71,123,244,107,82,220,177,146,150,130,234,10,120,240,217,194,67,29,111,140,221,93,255,108,255,99,65,39,121,128,34,40,0,146,4,151,0,16,197,104,127,125,116,71,239,246,137,29,203,175,154,245,185,83,191,84,119,123,197,188,162,83,105,217,96, +170,18,5,89,214,53,241,204,232,22,145,34,172,191,122,163,117,31,27,67,76,69,192,169,213,231,193,162,210,85,57,213,87,0,81,86,64,14,123,186,161,201,182,31,90,236,239,195,184,111,144,85,160,208,16,191,225,216,178,83,170,13,63,235,221,31,148,108,29,111, +154,30,56,248,72,207,95,220,99,126,7,158,41,4,5,0,146,145,80,131,223,180,113,104,99,207,246,137,45,167,125,185,238,235,203,175,158,125,107,81,181,97,113,52,152,58,33,64,161,115,5,142,231,10,120,34,78,216,59,254,38,236,159,120,27,170,13,51,136,24,88,11, +171,170,214,193,162,178,83,84,155,179,142,100,7,116,30,133,201,63,0,45,182,131,208,74,140,254,136,183,15,194,82,144,133,247,143,111,169,183,252,0,58,214,190,87,242,118,110,29,219,208,248,252,224,159,205,157,238,81,60,91,136,226,151,26,46,1,32,106,82, +60,205,88,188,250,250,185,55,18,33,240,125,34,4,230,167,178,116,240,163,160,161,93,81,138,0,199,241,80,99,156,1,139,203,214,192,41,149,103,193,66,34,6,112,153,32,63,160,94,253,136,183,151,133,246,219,29,71,136,0,24,132,144,24,32,198,94,32,155,46,37,117, +251,31,103,248,181,6,158,118,125,12,14,236,49,63,121,232,177,158,123,137,225,239,197,51,150,219,96,14,0,146,15,66,160,116,245,13,243,190,189,226,234,89,223,45,172,50,204,77,183,16,56,33,6,136,49,160,149,5,21,134,106,168,43,89,14,43,42,78,103,162,160, +22,19,8,115,10,111,196,5,3,158,14,98,240,15,179,68,62,115,96,12,34,82,248,132,151,159,54,163,15,137,80,63,45,233,131,88,60,56,86,111,127,166,254,249,193,251,6,247,153,59,240,172,161,0,64,1,128,228,154,16,40,95,125,253,220,175,46,191,102,246,127,23,85, +27,22,166,122,105,224,227,160,141,134,168,24,160,235,192,133,66,49,204,44,170,99,66,96,73,249,26,214,111,160,80,91,130,39,47,139,160,137,160,180,100,175,215,221,2,93,142,70,24,246,118,131,43,108,99,21,35,212,203,231,137,183,159,78,163,127,220,240,211, +53,254,72,64,244,142,55,57,158,109,222,56,252,192,0,26,126,20,0,40,0,144,60,16,2,37,171,111,152,251,229,229,87,207,254,175,162,42,195,74,49,34,129,20,201,140,146,38,186,46,44,198,163,32,197,68,230,29,150,235,171,97,78,241,34,86,85,176,176,116,37,204, +40,156,119,34,191,0,129,140,57,103,150,160,137,24,250,46,232,118,54,195,160,167,147,253,63,13,237,211,124,16,102,244,51,164,63,4,107,219,203,12,191,100,239,219,57,249,100,195,243,3,15,89,186,220,125,120,22,81,0,160,0,64,242,75,8,212,26,13,11,47,154,118, +253,170,207,206,249,110,229,130,146,117,146,72,140,111,88,74,201,192,161,147,35,126,44,58,16,101,70,134,14,117,169,48,212,194,172,162,5,176,160,116,5,212,149,44,133,105,5,115,160,72,91,138,39,51,149,207,143,88,24,44,1,106,240,123,136,177,239,128,33,79, +55,51,248,196,153,102,127,47,104,180,25,225,229,127,200,240,11,28,51,252,62,75,112,116,232,128,245,177,166,141,67,143,17,195,143,35,122,81,0,96,25,32,146,159,120,205,193,80,227,11,131,207,182,111,25,125,118,249,85,179,174,88,122,197,204,255,154,182,162, +236,83,26,226,182,69,67,234,183,24,62,9,141,204,230,13,240,188,112,76,14,196,193,22,156,0,115,96,148,53,134,209,242,58,40,213,85,194,116,34,2,102,23,47,130,121,197,75,88,132,128,150,30,234,136,88,64,148,144,96,113,112,134,173,48,233,31,129,17,95,47,43, +213,163,137,123,142,144,5,66,82,128,253,27,122,142,104,35,168,140,171,234,32,250,67,208,113,204,248,123,38,130,205,221,239,152,30,109,222,52,252,28,185,238,177,156,15,73,59,40,0,144,204,240,232,18,229,131,111,55,109,26,122,123,193,249,211,78,95,113,237, +236,155,230,156,81,121,131,190,72,91,193,242,4,50,100,158,57,245,40,89,226,24,104,79,24,39,58,5,206,73,140,17,237,13,79,195,205,180,207,0,29,93,92,107,156,77,68,193,2,152,89,56,159,37,21,210,121,5,5,66,49,158,236,127,227,217,187,195,118,230,205,155,124, +3,48,70,182,201,192,8,216,66,19,172,3,31,141,196,208,99,204,68,25,39,100,108,25,39,91,223,55,240,16,139,197,99,246,126,239,123,173,175,141,172,39,198,255,141,144,39,26,197,179,140,160,0,64,144,143,118,247,160,127,247,228,81,186,77,91,81,246,171,37,151, +207,252,210,146,79,206,248,122,97,181,126,5,77,22,204,172,229,129,132,32,248,96,132,128,66,115,7,104,120,122,194,63,12,13,214,61,39,122,18,20,235,202,88,100,160,198,56,11,166,21,204,102,173,138,171,13,211,161,68,95,193,150,16,50,41,92,173,54,116,109, +222,19,117,130,61,56,9,214,208,56,57,86,35,44,170,66,167,233,185,35,118,54,92,71,36,199,81,163,57,118,124,53,252,137,38,79,153,12,175,229,88,175,254,176,79,180,145,107,248,229,246,55,198,30,27,220,111,57,18,19,177,101,47,130,2,0,65,78,154,201,118,215, +24,217,238,57,250,84,223,253,139,46,158,254,169,37,151,205,252,70,237,242,210,203,4,29,103,160,131,135,50,37,42,240,79,162,128,38,157,209,13,180,31,208,53,113,150,133,110,15,153,217,244,56,154,123,67,141,26,93,38,40,212,22,67,137,174,130,37,27,82,129, +64,55,250,123,186,21,17,209,80,164,45,33,2,162,32,107,134,28,209,137,141,180,196,206,23,245,128,95,244,144,239,109,103,223,157,46,157,56,194,102,22,186,167,94,62,253,123,26,194,167,94,61,133,35,223,143,126,71,142,25,123,61,219,178,1,42,82,4,3,199,188, +126,183,41,208,208,187,115,226,201,246,45,163,27,29,131,190,9,188,139,17,20,0,8,146,4,126,91,56,220,244,210,208,171,205,155,134,95,157,177,186,98,233,178,43,102,126,121,254,121,53,95,44,170,49,46,138,209,225,67,52,87,32,195,39,160,159,136,20,104,132, +127,48,150,116,9,193,197,140,228,144,167,139,9,3,250,43,145,185,174,101,73,135,6,190,16,10,180,69,172,81,17,141,20,208,173,88,151,248,61,93,82,40,20,138,192,72,54,42,38,244,124,194,112,106,201,79,186,38,206,49,131,202,177,159,199,247,227,223,27,112,242, +43,30,99,73,143,180,108,142,38,65,70,99,97,136,196,34,108,12,46,13,211,135,136,135,30,16,125,224,167,70,62,234,5,111,212,77,54,39,248,34,110,98,216,221,108,128,14,245,226,195,196,211,143,30,171,168,56,110,44,143,27,122,218,127,65,75,190,99,166,123,245, +31,115,66,129,23,18,83,249,34,1,209,49,114,196,246,70,231,155,99,79,15,236,179,236,12,123,163,18,222,181,8,10,0,4,81,210,179,140,197,193,212,104,239,34,219,255,20,62,98,248,237,162,139,166,125,114,193,133,211,190,50,99,85,249,101,58,163,80,202,6,16,209, +80,107,60,123,190,83,66,24,240,31,233,221,83,67,76,103,26,132,137,209,117,133,173,9,131,12,137,80,242,241,234,157,132,113,39,222,39,121,61,53,248,44,63,225,88,6,60,21,27,58,98,92,57,46,241,147,190,130,14,179,161,255,62,254,15,7,137,238,71,226,243,194, +240,247,202,135,8,49,252,137,225,74,18,107,154,36,178,242,200,68,69,132,116,66,36,28,127,47,106,220,169,81,63,177,79,244,23,249,169,211,16,79,62,75,188,249,127,7,157,200,71,141,126,92,138,199,157,35,254,3,61,219,39,94,24,216,61,249,170,185,203,109,194, +59,20,65,1,128,32,41,137,10,132,130,77,27,135,182,208,173,118,121,217,156,249,231,213,126,122,241,165,211,63,95,54,187,240,28,242,144,230,197,16,49,78,89,190,238,154,48,160,212,99,231,224,95,59,238,9,19,124,220,128,71,32,116,194,40,31,143,40,36,84,81, +194,200,255,171,112,73,226,243,78,124,58,253,131,99,31,173,57,254,39,199,146,240,56,128,60,201,89,96,157,250,244,28,59,54,62,107,168,119,172,97,242,53,226,237,191,100,106,118,28,165,75,81,8,130,2,0,65,210,132,185,195,53,66,182,7,142,62,213,247,192,140, +213,21,107,136,24,184,110,254,39,106,62,93,50,163,96,21,181,119,180,201,80,38,116,27,84,87,42,252,163,1,63,241,87,72,18,70,159,227,57,8,186,34,227,227,205,142,173,93,239,140,111,28,58,104,217,19,176,135,131,120,132,16,20,0,8,146,65,80,111,108,248,125, +107,19,221,222,127,84,119,231,156,51,170,206,92,112,193,180,107,103,174,169,184,170,168,218,176,146,26,67,218,109,48,219,150,9,144,20,25,125,94,147,168,217,39,63,131,238,168,217,212,228,216,62,184,215,188,105,232,160,117,151,107,204,239,196,35,132,160, +0,64,144,44,32,232,140,136,221,239,142,31,160,91,65,185,238,231,179,207,168,58,131,8,130,171,103,172,174,184,162,108,78,225,26,242,144,215,72,209,24,196,200,22,71,49,144,167,22,63,209,150,87,208,241,76,15,134,92,145,81,83,3,49,250,251,204,155,135,222, +183,238,117,141,250,237,120,144,16,20,0,8,146,197,4,156,145,232,113,49,160,53,242,119,204,88,85,177,122,193,5,181,159,156,190,170,252,138,138,185,69,103,234,10,132,66,42,4,152,32,144,80,13,228,180,205,231,52,137,90,125,178,145,243,29,247,89,67,29,19, +45,206,247,250,247,76,190,57,222,236,60,228,53,7,189,120,148,16,20,0,8,146,131,68,131,82,108,248,144,181,145,110,196,251,187,187,122,113,233,188,185,103,85,157,63,107,109,229,39,171,23,151,156,107,44,211,213,81,35,193,4,129,24,207,128,86,196,72,178,94, +62,45,215,163,205,121,104,126,68,200,19,113,216,7,188,71,71,143,218,223,29,61,106,219,110,238,112,181,133,60,81,17,15,20,130,2,0,65,242,8,234,237,155,59,93,67,116,59,252,68,223,83,197,53,134,130,234,37,165,107,230,173,171,190,104,218,242,178,11,203,102, +23,158,170,47,214,86,178,127,43,210,8,1,10,130,140,183,247,180,112,129,167,30,190,134,37,240,17,47,63,228,54,249,59,38,219,93,251,198,91,156,59,136,225,63,228,26,245,79,226,121,68,16,20,0,8,114,2,175,37,20,32,219,129,129,189,230,3,26,78,243,155,178,89, +5,181,181,203,203,78,155,177,186,226,188,218,229,165,231,150,207,42,92,161,47,33,130,64,3,172,170,128,70,9,98,212,144,160,45,73,159,193,231,52,172,54,159,122,249,244,188,136,97,41,24,176,135,186,173,189,222,131,19,45,142,61,227,173,174,163,214,30,119, +95,196,143,78,62,130,160,0,64,144,147,128,122,136,206,17,191,153,108,91,187,222,54,109,165,225,227,210,89,5,53,181,203,74,87,17,65,112,118,229,252,162,179,43,235,138,79,33,130,96,182,160,227,53,244,223,211,234,130,24,46,27,168,107,236,249,132,193,167, +63,227,49,128,144,55,98,115,141,132,58,109,3,222,195,227,77,142,131,230,78,87,163,219,20,24,12,121,162,120,18,16,4,5,0,130,40,32,8,226,113,112,141,250,45,100,219,214,253,238,248,54,250,103,69,53,134,162,178,217,133,11,103,172,42,95,93,181,176,120,109, +249,220,226,53,197,181,134,197,134,98,109,45,53,82,180,186,128,69,10,136,48,160,162,0,171,13,78,214,210,3,112,196,216,211,178,60,142,255,187,177,39,94,188,199,109,14,14,146,115,208,102,235,243,28,181,116,121,26,172,189,158,78,207,120,192,138,201,155, +8,130,2,0,65,82,134,207,18,242,145,173,105,172,222,222,68,254,247,73,106,244,139,170,141,21,21,117,133,117,53,139,75,87,150,204,44,56,165,106,126,241,138,226,233,198,133,250,98,237,76,157,158,55,82,163,70,141,21,21,4,9,97,0,121,27,49,160,30,61,109,40, +72,215,234,143,255,164,66,75,138,198,164,176,55,106,38,199,118,208,103,13,117,90,123,60,45,150,110,119,171,99,200,215,235,157,12,142,71,131,104,237,17,4,5,0,130,100,16,212,219,247,76,4,28,116,27,58,96,173,63,254,231,5,21,122,67,201,116,227,180,226,105, +198,186,202,249,197,75,43,235,138,150,24,203,117,139,74,103,22,206,209,26,249,25,250,34,109,57,17,15,26,106,16,227,82,252,88,228,32,209,159,32,17,57,56,102,239,178,105,198,193,177,14,132,52,33,143,254,158,138,35,250,27,234,217,179,89,3,116,180,115,72, +242,134,60,81,139,215,28,26,11,185,34,189,182,126,111,47,241,238,187,220,166,192,128,115,196,63,26,116,133,221,185,221,193,17,65,80,0,32,72,78,19,112,132,67,100,27,154,108,119,13,245,110,159,216,121,252,207,245,197,90,222,88,170,171,40,172,54,204,168, +152,91,56,147,252,127,93,213,130,226,217,186,66,97,94,217,156,194,105,188,150,155,110,44,211,149,11,122,190,152,136,3,3,45,101,75,180,242,255,123,226,33,253,253,7,141,36,251,43,137,206,64,248,168,30,192,39,177,12,161,249,184,137,129,241,99,30,187,230, +67,30,60,13,207,159,120,29,75,193,63,81,49,33,17,241,226,241,91,67,110,242,211,236,28,245,155,137,231,62,108,235,245,140,68,2,226,144,173,207,75,12,124,196,228,179,4,109,33,111,52,132,137,148,8,146,103,2,192,235,197,158,27,72,254,66,199,198,146,205,234, +26,243,91,77,141,246,230,143,248,39,58,190,2,138,180,70,168,48,148,232,42,202,231,20,86,199,164,120,109,113,141,161,178,100,102,65,53,49,177,85,134,18,109,25,249,125,105,92,130,98,242,239,139,5,3,103,44,252,255,236,221,75,106,194,64,0,128,225,104,226, +139,90,104,233,190,208,131,120,75,47,215,19,20,173,90,84,218,196,81,155,206,152,62,20,234,174,208,133,223,7,1,5,31,193,133,243,79,72,50,119,189,126,28,232,211,26,187,157,163,173,125,184,235,93,63,63,123,36,33,141,223,233,102,72,187,240,189,136,82,136, +91,90,237,38,196,193,61,196,125,173,226,140,61,45,23,184,110,229,217,186,92,132,213,122,82,46,227,27,103,241,125,207,211,199,229,60,126,196,244,117,182,153,174,158,222,94,222,247,217,60,76,178,101,124,189,123,231,195,25,33,132,203,11,128,162,40,178,241, +120,44,2,224,183,249,118,115,121,97,136,3,254,34,62,94,52,51,251,250,103,182,253,57,19,79,119,180,235,118,138,172,46,234,230,105,63,239,12,175,6,131,56,213,79,235,239,118,143,182,162,119,221,105,223,222,15,135,231,206,57,72,231,39,196,25,123,21,7,245, +144,53,153,80,197,45,93,63,183,137,223,183,41,119,161,42,55,135,127,171,109,154,237,239,110,246,217,182,191,255,58,64,144,213,15,205,145,137,195,145,130,188,217,209,188,104,157,236,47,112,106,52,26,253,219,119,183,106,167,38,3,192,197,105,251,9,0,64, +0,0,0,2,0,0,16,0,0,128,0,0,0,4,0,0,32,0,0,0,1,0,0,8,0,0,64,0,0,0,2,0,0,16,0,0,128,0,0,0,4,0,0,32,0,0,0,1,0,0,8,0,0,64,0,0,128,0,0,0,4,0,0,32,0,0,0,1,0,0,8,0,0,64,0,0,0,2,0,0,16,0,0,128,0,0,0,4,0,0,32,0,0,128,191,246,33,192,0,100,235,173,153,70,62,64, +37,0,0,0,0,73,69,78,68,174,66,96,130,0,0 }; + +const char* juce_icon_png = (const char*) temp_binary_data_0; + + +const char* getNamedResource (const char*, int&) throw(); +const char* getNamedResource (const char* resourceNameUTF8, int& numBytes) throw() +{ + unsigned int hash = 0; + if (resourceNameUTF8 != 0) + while (*resourceNameUTF8 != 0) + hash = 31 * hash + (unsigned int) *resourceNameUTF8++; + + switch (hash) + { + case 0x154a7275: numBytes = 45854; return juce_icon_png; + default: break; + } + + numBytes = 0; + return 0; +} + +const char* namedResourceList[] = +{ + "juce_icon_png" +}; + +} diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/BinaryData.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/BinaryData.h new file mode 100644 index 0000000000..5a7a9e045f --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/BinaryData.h @@ -0,0 +1,26 @@ +/* ========================================================================================= + + This is an auto-generated file: Any edits you make may be overwritten! + +*/ + +#ifndef BINARYDATA_H_78586917_INCLUDED +#define BINARYDATA_H_78586917_INCLUDED + +namespace BinaryData +{ + extern const char* juce_icon_png; + const int juce_icon_pngSize = 45854; + + // Points to the start of a list of resource names. + extern const char* namedResourceList[]; + + // Number of elements in the namedResourceList array. + const int namedResourceListSize = 1; + + // If you provide the name of one of the binary resource variables above, this function will + // return the corresponding data and its size (or a null pointer if the name isn't found). + const char* getNamedResource (const char* resourceNameUTF8, int& dataSizeInBytes) throw(); +} + +#endif diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/JuceHeader.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/JuceHeader.h new file mode 100644 index 0000000000..3073187aec --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/JuceHeader.h @@ -0,0 +1,48 @@ +/* + + IMPORTANT! This file is auto-generated each time you save your + project - if you alter its contents, your changes may be overwritten! + + This is the header file that your files should include in order to get all the + JUCE library headers. You should avoid including the JUCE headers directly in + your own source files, because that wouldn't pick up the correct configuration + options for your app. + +*/ + +#ifndef __APPHEADERFILE_GWI5IR__ +#define __APPHEADERFILE_GWI5IR__ + +#include "AppConfig.h" +#include "modules/juce_audio_basics/juce_audio_basics.h" +#include "modules/juce_audio_devices/juce_audio_devices.h" +#include "modules/juce_audio_formats/juce_audio_formats.h" +#include "modules/juce_audio_processors/juce_audio_processors.h" +#include "modules/juce_audio_utils/juce_audio_utils.h" +#include "modules/juce_core/juce_core.h" +#include "modules/juce_cryptography/juce_cryptography.h" +#include "modules/juce_data_structures/juce_data_structures.h" +#include "modules/juce_events/juce_events.h" +#include "modules/juce_graphics/juce_graphics.h" +#include "modules/juce_gui_basics/juce_gui_basics.h" +#include "modules/juce_gui_extra/juce_gui_extra.h" +#include "modules/juce_opengl/juce_opengl.h" +#include "modules/juce_osc/juce_osc.h" +#include "BinaryData.h" + +#if ! DONT_SET_USING_JUCE_NAMESPACE + // If your code uses a lot of JUCE classes, then this will obviously save you + // a lot of typing, but can be disabled by setting DONT_SET_USING_JUCE_NAMESPACE. + using namespace juce; +#endif + +#if ! JUCE_DONT_DECLARE_PROJECTINFO +namespace ProjectInfo +{ + const char* const projectName = "JUCE Network Graphics Demo"; + const char* const versionString = "1.0.0"; + const int versionNumber = 0x10000; +} +#endif + +#endif // __APPHEADERFILE_GWI5IR__ diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/ReadMe.txt b/examples/NetworkGraphicsDemo/JuceLibraryCode/ReadMe.txt new file mode 100644 index 0000000000..f6c3564e99 --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/ReadMe.txt @@ -0,0 +1,12 @@ + + Important Note!! + ================ + +The purpose of this folder is to contain files that are auto-generated by the Introjucer, +and ALL files in this folder will be mercilessly DELETED and completely re-written whenever +the Introjucer saves your project. + +Therefore, it's a bad idea to make any manual changes to the files in here, or to +put any of your own files in here if you don't want to lose them. (Of course you may choose +to add the folder's contents to your version-control system so that you can re-merge your own +modifications after the Introjucer has saved its changes). diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_basics/juce_audio_basics.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_basics/juce_audio_basics.h new file mode 100644 index 0000000000..9befea8142 --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_basics/juce_audio_basics.h @@ -0,0 +1,4 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_audio_basics/juce_audio_basics.h" diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_devices/juce_audio_devices.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_devices/juce_audio_devices.h new file mode 100644 index 0000000000..eba6d3a9e5 --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_devices/juce_audio_devices.h @@ -0,0 +1,4 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_audio_devices/juce_audio_devices.h" diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_formats/juce_audio_formats.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_formats/juce_audio_formats.h new file mode 100644 index 0000000000..4629b0ef2c --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_formats/juce_audio_formats.h @@ -0,0 +1,4 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_audio_formats/juce_audio_formats.h" diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_processors/juce_audio_processors.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_processors/juce_audio_processors.h new file mode 100644 index 0000000000..7d4583dbf8 --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_processors/juce_audio_processors.h @@ -0,0 +1,4 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_audio_processors/juce_audio_processors.h" diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_utils/juce_audio_utils.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_utils/juce_audio_utils.h new file mode 100644 index 0000000000..bb997d30d3 --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_audio_utils/juce_audio_utils.h @@ -0,0 +1,4 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_audio_utils/juce_audio_utils.h" diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_core/juce_core.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_core/juce_core.h new file mode 100644 index 0000000000..06e88f9352 --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_core/juce_core.h @@ -0,0 +1,4 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_core/juce_core.h" diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_cryptography/juce_cryptography.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_cryptography/juce_cryptography.h new file mode 100644 index 0000000000..e4574f4749 --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_cryptography/juce_cryptography.h @@ -0,0 +1,4 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_cryptography/juce_cryptography.h" diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_data_structures/juce_data_structures.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_data_structures/juce_data_structures.h new file mode 100644 index 0000000000..9d814fd953 --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_data_structures/juce_data_structures.h @@ -0,0 +1,4 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_data_structures/juce_data_structures.h" diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_events/juce_events.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_events/juce_events.h new file mode 100644 index 0000000000..509b1df8d2 --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_events/juce_events.h @@ -0,0 +1,4 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_events/juce_events.h" diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_graphics/juce_graphics.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_graphics/juce_graphics.h new file mode 100644 index 0000000000..28edbf35e3 --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_graphics/juce_graphics.h @@ -0,0 +1,4 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_graphics/juce_graphics.h" diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_gui_basics/juce_gui_basics.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_gui_basics/juce_gui_basics.h new file mode 100644 index 0000000000..81ad4b7297 --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_gui_basics/juce_gui_basics.h @@ -0,0 +1,4 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_gui_basics/juce_gui_basics.h" diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_gui_extra/juce_gui_extra.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_gui_extra/juce_gui_extra.h new file mode 100644 index 0000000000..5c9b7a96b5 --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_gui_extra/juce_gui_extra.h @@ -0,0 +1,4 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_gui_extra/juce_gui_extra.h" diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_opengl/juce_opengl.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_opengl/juce_opengl.h new file mode 100644 index 0000000000..718392ff72 --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_opengl/juce_opengl.h @@ -0,0 +1,4 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_opengl/juce_opengl.h" diff --git a/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_osc/juce_osc.h b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_osc/juce_osc.h new file mode 100644 index 0000000000..40bdd4441b --- /dev/null +++ b/examples/NetworkGraphicsDemo/JuceLibraryCode/modules/juce_osc/juce_osc.h @@ -0,0 +1,4 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_osc/juce_osc.h" diff --git a/examples/NetworkGraphicsDemo/NetworkGraphicsDemo.jucer b/examples/NetworkGraphicsDemo/NetworkGraphicsDemo.jucer new file mode 100644 index 0000000000..cccb1f10e9 --- /dev/null +++ b/examples/NetworkGraphicsDemo/NetworkGraphicsDemo.jucer @@ -0,0 +1,162 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/NetworkGraphicsDemo/README.txt b/examples/NetworkGraphicsDemo/README.txt new file mode 100644 index 0000000000..f42ec3d078 --- /dev/null +++ b/examples/NetworkGraphicsDemo/README.txt @@ -0,0 +1,39 @@ + + JUCE Network graphics demo + ========================== + +This example is an app that we threw together to run as a demo of JUCE on our +booth at CES 2016. + +It allows a collection of heterogenous devices on a local network to collectively +draw parts of a large animated vector graphic image that is being generated and +broadcast by one of the machines (the 'master'). + +Each 'slave' device can be positioned within the overall canvas so that if you put +all of their displays on a wall next to each other and line things up correctly, they +all form a bigger display. At CES we set up a bunch of machines including a Mac, a +Linux box, a PC, and some tablets and phones running iOS and Android, to show how the +same app can run uniformly across all these platforms. + +We wrote a few simple animations to run in this context, mainly around the idea of +flocking bird-type objects, because this creates a nice effect as they fly between +each monitor, which helps to create the illusion of a bigger picture. + +Any touchs/mouse-clicks on each slave display are sent back to the master, so that +it can react to these. In our demos we used this to cause the flock to swarm towards +the place that was being touched. + +To run it, there's a command line flag "master" that will cause the app to run in +master-mode. Other instances running without this will act as slaves. The master +will open a special window that lets you modify the positions of all the networked +devices by dragging/mouse-wheeling. In this window you can also press cursor +left/right to select the demo to run. + +These are some interesting bits of code in here - notably a special +LowLevelGraphicsContext class which allows the content generator to simply +draw to a Graphics object as you normally would, but instead of painting to the +screen, everything that is drawn gets serialised into binary packets and broadcast +over UDP to the slaves, which each render their own part of it. + +The content should be easy to hack - have a look in Demos.h. Have fun tweaking it +with your own code and ideas! diff --git a/examples/NetworkGraphicsDemo/Source/Demos.h b/examples/NetworkGraphicsDemo/Source/Demos.h new file mode 100644 index 0000000000..3a2bdba0ae --- /dev/null +++ b/examples/NetworkGraphicsDemo/Source/Demos.h @@ -0,0 +1,504 @@ +/* + ============================================================================== + + This file is part of the JUCE library. + Copyright (c) 2015 - ROLI Ltd. + + Permission is granted to use this software under the terms of either: + a) the GPL v2 (or any later version) + b) the Affero GPL v3 + + Details of these licenses can be found at: www.gnu.org/licenses + + JUCE is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + ------------------------------------------------------------------------------ + + To release a closed-source product which uses JUCE, commercial licenses are + available: visit www.juce.com for more information. + + ============================================================================== +*/ + + +struct BlankCanvas : public AnimatedContent +{ + String getName() const override { return "Blank Canvas"; } + void reset() override {} + void handleTouch (Point) override {} + void generateCanvas (Graphics&, SharedCanvasDescription&, Rectangle) override {} +}; + +//============================================================================== +struct GridLines : public AnimatedContent +{ + String getName() const override { return "Grid Lines"; } + void reset() override {} + void handleTouch (Point) override {} + + void generateCanvas (Graphics& g, SharedCanvasDescription& canvas, Rectangle) override + { + auto limits = canvas.getLimits(); + float lineThickness = 0.1f; + + g.setColour (Colours::blue); + g.drawRect (canvas.getLimits(), lineThickness); + + for (float y = limits.getY(); y < limits.getBottom(); y += 2.0f) + g.drawLine (limits.getX(), y, limits.getRight(), y, lineThickness); + + for (float x = limits.getX(); x < limits.getRight(); x += 2.0f) + g.drawLine (x, limits.getY(), x, limits.getBottom(), lineThickness); + + g.setColour (Colours::darkred); + g.drawLine (limits.getX(), limits.getCentreY(), limits.getRight(), limits.getCentreY(), lineThickness); + g.drawLine (limits.getCentreX(), limits.getY(), limits.getCentreX(), limits.getBottom(), lineThickness); + + g.setColour (Colours::lightgrey); + g.drawLine (limits.getX(), limits.getY(), limits.getRight(), limits.getBottom(), lineThickness); + g.drawLine (limits.getX(), limits.getBottom(), limits.getRight(), limits.getY(), lineThickness); + } +}; + +//============================================================================== +struct BackgroundLogo : public AnimatedContent +{ + BackgroundLogo() + { + static const char logoData[] = R"blahblah( + + + + + + + + + + + + )blahblah"; + + ScopedPointer svg (XmlDocument::parse (logoData)); + logo = Drawable::createFromSVG (*svg); + } + + String getName() const override { return "Background Image"; } + void reset() override {} + void handleTouch (Point) override {} + + void generateCanvas (Graphics& g, SharedCanvasDescription& canvas, Rectangle activeArea) override + { + logo->drawWithin (g, canvas.getLimits().reduced (3.0f), RectanglePlacement (RectanglePlacement::centred), 0.6f); + } + + ScopedPointer logo; +}; + +//============================================================================== +struct FlockDemo : public BackgroundLogo +{ + String getName() const override { return "Flock"; } + + void setNumBirds (int numBirds) + { + BackgroundLogo::reset(); + + birds.clear(); + + for (int i = numBirds; --i >= 0;) + birds.add ({}); + + centreOfGravity = {}; + lastGravityMove = {}; + fakeMouseTouchLengthToRun = 0; + fakeMouseTouchPosition = {}; + fakeMouseTouchVelocity = {}; + } + + void reset() override + { + BackgroundLogo::reset(); + setNumBirds (100); + } + + void generateCanvas (Graphics& g, SharedCanvasDescription& canvas, Rectangle activeArea) override + { + BackgroundLogo::generateCanvas (g, canvas, activeArea); + + if (Time::getCurrentTime() > lastGravityMove + RelativeTime::seconds (0.5)) + { + if (fakeMouseTouchLengthToRun > 0) + { + --fakeMouseTouchLengthToRun; + fakeMouseTouchPosition += fakeMouseTouchVelocity; + centreOfGravity = fakeMouseTouchPosition; + } + else + { + centreOfGravity = {}; + + if (rng.nextInt (300) == 2 && canvas.clients.size() > 0) + { + fakeMouseTouchLengthToRun = 50; + fakeMouseTouchPosition = canvas.clients.getReference (rng.nextInt (canvas.clients.size())).centre; + fakeMouseTouchVelocity = { rng.nextFloat() * 0.3f - 0.15f, + rng.nextFloat() * 0.3f - 0.15f }; + } + } + } + + g.setColour (Colours::white.withAlpha (0.2f)); + + if (! centreOfGravity.isOrigin()) + g.fillEllipse (centreOfGravity.getX() - 1.0f, centreOfGravity.getY() - 1.0f, 2.0f, 2.0f); + + for (int i = 0; i < birds.size(); ++i) + for (int j = i + 1; j < birds.size(); ++j) + attractBirds (birds.getReference(i), birds.getReference(j)); + + for (auto& b : birds) + { + if (! centreOfGravity.isOrigin()) + b.move (centreOfGravity, 0.4f); + + b.update(); + b.draw (g); + b.bounceOffEdges (canvas.getLimits().expanded (1.0f)); + } + + for (int i = rings.size(); --i >= 0;) + { + if (rings.getReference(i).update()) + rings.getReference(i).draw (g); + else + rings.remove (i); + } + } + + bool isRingNear (Point p) const + { + for (auto& r : rings) + if (r.centre.getDistanceFrom (p) < 1.0f) + return true; + + return false; + } + + void handleTouch (Point position) override + { + lastGravityMove = Time::getCurrentTime(); + centreOfGravity = position; + fakeMouseTouchLengthToRun = 0; + + if (! isRingNear (position)) + rings.add ({ position, 1.0f, 0.5f }); + } + + //============================================================================== + struct Bird + { + Bird() + { + Random rng; + pos.x = rng.nextFloat() * 10.0f - 5.0f; + pos.y = rng.nextFloat() * 10.0f - 5.0f; + velocity.x = rng.nextFloat() * 0.001f; + velocity.y = rng.nextFloat() * 0.001f; + + colour = Colour::fromHSV (rng.nextFloat(), 0.2f, 0.9f, rng.nextFloat() * 0.4f + 0.2f); + + shape.addTriangle (0.0f, 0.0f, -0.3f, 1.0f, 0.3f, 1.0f); + shape = shape.createPathWithRoundedCorners (0.2f); + + shape.applyTransform (AffineTransform::scale (rng.nextFloat() + 1.0f)); + } + + Point pos, velocity, acc; + Colour colour; + Path shape; + + void move (Point target, float strength) + { + auto r = target - pos; + float rSquared = jmax (0.1f, (r.x * r.x) + (r.y * r.y)); + + if (rSquared > 1.0f) + velocity += (r * strength / rSquared); + + acc = {}; + } + + void accelerate (Point acceleration) + { + acc += acceleration; + } + + void bounceOffEdges (Rectangle limits) + { + if (pos.x < limits.getX()) { velocity.x = std::abs (velocity.x); acc = {}; } + if (pos.x > limits.getRight()) { velocity.x = -std::abs (velocity.x); acc = {}; } + if (pos.y < limits.getY()) { velocity.y = std::abs (velocity.y); acc = {}; } + if (pos.y > limits.getBottom()) { velocity.y = -std::abs (velocity.y); acc = {}; } + } + + void update() + { + velocity += acc; + + float length = velocity.getDistanceFromOrigin(); + const float maxSpeed = 0.5f; + + if (length > maxSpeed) + velocity = getVectorWithLength (velocity, maxSpeed); + + pos += velocity; + } + + void draw (Graphics& g) + { + g.setColour (colour); + g.fillPath (shape, AffineTransform::rotation (Point().getAngleToPoint (velocity)).translated (pos)); + } + }; + + static Point getVectorWithLength (Point v, float newLength) + { + return v * (newLength / v.getDistanceFromOrigin()); + } + + static void attractBirds (Bird& b1, Bird& b2) + { + auto delta = b1.pos - b2.pos; + + const float zoneRadius = 10.0f; + const float low = 0.4f; + const float high = 0.65f; + const float strength = 0.01f; + + const float distanceSquared = (delta.x * delta.x) * (delta.y * delta.y); + + if (distanceSquared < zoneRadius * zoneRadius && distanceSquared > 0.01f) + { + float proportion = distanceSquared / (zoneRadius * zoneRadius); + + if (proportion < low) + { + const float F = (low / proportion - 1.0f) * strength * 0.003f; + delta = getVectorWithLength (delta, F); + + b1.accelerate (delta); + b2.accelerate (-delta); + } + else if (proportion < high) + { + const float regionSize = high - low; + const float adjustedProportion = (proportion - low) / regionSize; + const float F = (0.5f - cos (adjustedProportion * float_Pi * 2.0f) * 0.5f + 0.5f) * strength; + + b1.accelerate (getVectorWithLength (b2.velocity, F)); + b2.accelerate (getVectorWithLength (b1.velocity, F)); + } + else + { + const float regionSize = 1.0f - high; + const float adjustedProportion = (proportion - high) / regionSize; + const float F = (0.5f - cos (adjustedProportion * float_Pi * 2.0f) * 0.5f + 0.5f) * strength; + delta = getVectorWithLength (delta, F); + + b1.accelerate (-delta); + b2.accelerate (delta); + } + } + } + + Random rng; + Array birds; + Point centreOfGravity; + Time lastGravityMove; + + int fakeMouseTouchLengthToRun = 0; + Point fakeMouseTouchPosition, fakeMouseTouchVelocity; + + //============================================================================== + struct Ring + { + Point centre; + float diameter, opacity; + + bool update() + { + diameter += 0.7f; + opacity -= 0.01f; + + return opacity > 0; + } + + void draw (Graphics& g) + { + const float thickness = 0.2f; + + auto r = Rectangle (diameter, diameter).withCentre (centre); + + Path p; + p.addEllipse (r); + p.addEllipse (r.reduced (thickness)); + p.setUsingNonZeroWinding (false); + + g.setColour (Colours::white.withAlpha (opacity)); + g.fillPath (p); + + } + }; + + Array rings; +}; + +//============================================================================== +struct FlockWithText : public FlockDemo +{ + FlockWithText() + { + messages.add ("JUCE is our cross-platform C++ framework\n\n" + "In this demo, the same C++ app is running natively on NUMDEVICES devices,\n" + "which are sharing their graphic state via the network"); + + messages.add ("No other libraries were needed to create this demo.\n" + "JUCE provides thousands of classes for cross-platform GUI,\n" + "audio, networking, data-structures and many other common tasks"); + + messages.add ("As well as a code library, JUCE provides tools for managing\n" + "cross-platform projects that are built with Xcode,\n" + "Visual Studio, Android Studio, GCC and other compilers"); + + messages.add ("JUCE can be used to build desktop or mobile apps, and also\n" + "audio plug-ins in the VST2, VST3, AudioUnit, AAX and RTAS formats"); + } + + String getName() const override { return "Flock with text"; } + + void reset() override + { + FlockDemo::reset(); + + currentMessage = 0; + currentMessageStart = {}; + clientIndex = 0; + } + + void generateCanvas (Graphics& g, SharedCanvasDescription& canvas, Rectangle activeArea) override + { + FlockDemo::generateCanvas (g, canvas, activeArea); + + const float textSize = 0.5f; // inches + const float textBlockWidth = 20.0f; // inches + + tick(); + + Graphics::ScopedSaveState ss (g); + const float scale = 20.0f; // scaled to allow the fonts to use more reasonable sizes + g.addTransform (AffineTransform::scale (1.0f / scale)); + + String text = String (messages[currentMessage]).replace ("NUMDEVICES", String (canvas.clients.size())); + + AttributedString as; + as.append (text, Font ("Contax Pro 65 Med", String(), textSize * scale), Colour (0x80ffffff).withMultipliedAlpha (alpha)); + + as.setJustification (Justification::centred); + auto centre = canvas.clients[clientIndex % canvas.clients.size()].centre * scale; + as.draw (g, Rectangle (textBlockWidth * scale, textBlockWidth * scale).withCentre (centre)); + } + + void tick() + { + const double displayTimeSeconds = 5.0; + const double fadeTimeSeconds = 1.0; + + Time now = Time::getCurrentTime(); + const double secondsSinceStart = (now - currentMessageStart).inSeconds(); + + if (secondsSinceStart > displayTimeSeconds) + { + currentMessageStart = now; + currentMessage = (currentMessage + 1) % messages.size(); + ++clientIndex; + alpha = 0; + } + else if (secondsSinceStart > displayTimeSeconds - fadeTimeSeconds) + { + alpha = (float) jlimit (0.0, 1.0, (displayTimeSeconds - secondsSinceStart) / fadeTimeSeconds); + } + else if (secondsSinceStart < fadeTimeSeconds) + { + alpha = (float) jlimit (0.0, 1.0, secondsSinceStart / fadeTimeSeconds); + } + } + + StringArray messages; + int currentMessage = 0, clientIndex = 0; + float alpha = 0; + Point centre; + Time currentMessageStart; +}; + +//============================================================================== +struct SmallFlock : public FlockDemo +{ + String getName() const override { return "Small Flock"; } + + void reset() override + { + setNumBirds (20); + } +}; + +//============================================================================== +struct BigFlock : public FlockDemo +{ + String getName() const override { return "Big Flock"; } + + void reset() override + { + setNumBirds (200); + } +}; + +//============================================================================== +template +struct MultiLogo : public BackgroundLogo +{ + String getName() const override { return "Multi-Logo " + String ((int) numHorizontalLogos); } + + void generateCanvas (Graphics& g, SharedCanvasDescription& canvas, Rectangle activeArea) override + { + float indent = 0.5f; + float logoSize = canvas.getLimits().getWidth() / numHorizontalLogos; + auto limits = canvas.getLimits(); + + for (float x = limits.getX(); x < limits.getRight(); x += logoSize) + { + for (float y = limits.getY(); y < limits.getBottom(); y += logoSize) + { + logo->drawWithin (g, Rectangle (x, y, logoSize, logoSize).reduced (indent), + RectanglePlacement (RectanglePlacement::centred), 0.5f); + } + } + } +}; + +//============================================================================== +void createAllDemos (OwnedArray& demos) +{ + demos.add (new FlockDemo()); + demos.add (new FlockWithText()); + demos.add (new SmallFlock()); + demos.add (new BigFlock()); + demos.add (new BackgroundLogo()); + demos.add (new MultiLogo<5>()); + demos.add (new MultiLogo<10>()); + demos.add (new GridLines()); + demos.add (new BlankCanvas()); +} diff --git a/examples/NetworkGraphicsDemo/Source/Main.cpp b/examples/NetworkGraphicsDemo/Source/Main.cpp new file mode 100644 index 0000000000..ae92a42963 --- /dev/null +++ b/examples/NetworkGraphicsDemo/Source/Main.cpp @@ -0,0 +1,163 @@ +/* + ============================================================================== + + This file is part of the JUCE library. + Copyright (c) 2015 - ROLI Ltd. + + Permission is granted to use this software under the terms of either: + a) the GPL v2 (or any later version) + b) the Affero GPL v3 + + Details of these licenses can be found at: www.gnu.org/licenses + + JUCE is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + ------------------------------------------------------------------------------ + + To release a closed-source product which uses JUCE, commercial licenses are + available: visit www.juce.com for more information. + + ============================================================================== +*/ + +#include "../JuceLibraryCode/JuceHeader.h" + +namespace +{ + String getIPAddress() + { + Array addresses; + IPAddress::findAllAddresses (addresses); + return addresses[1].toString(); + } + + String getBroadcastIPAddress() + { + return getIPAddress().upToLastOccurrenceOf (".", false, false) + ".255"; + } + + static const int masterPortNumber = 9001; // the UDP port the master sends on / the clients receive. + static const int clientPortNumber = 9002; // the UDP port the clients send on / the master receives. + + static const String canvasStateOSCAddress = "/juce/nfd/canvasState"; + static const String newClientOSCAddress = "/juce/nfd/newClient"; + static const String userInputOSCAddress = "/juce/nfd/userInput"; +}; + +#include "SharedCanvas.h" +#include "SlaveComponent.h" +#include "Demos.h" +#include "MasterComponent.h" + + +//============================================================================== +class NetworkGraphicsDemoApplication : public JUCEApplication +{ +public: + NetworkGraphicsDemoApplication() : properties (getPropertyFileOptions()) + {} + + const String getApplicationName() override { return ProjectInfo::projectName; } + const String getApplicationVersion() override { return ProjectInfo::versionString; } + bool moreThanOneInstanceAllowed() override { return true; } + void anotherInstanceStarted (const String&) override {} + + //============================================================================== + void initialise (const String& commandLine) override + { + #if ! JUCE_IOS && ! JUCE_ANDROID + // Run as the master if we have a command-line flag "master" or if the exe itself + // has been renamed to include the word "master".. + bool isMaster = commandLine.containsIgnoreCase ("master") + || File::getSpecialLocation (File::currentApplicationFile) + .getFileName().containsIgnoreCase ("master"); + + if (isMaster) + mainWindows.add (new MainWindow (properties)); + #endif + + mainWindows.add (new MainWindow (properties, 0)); + + Desktop::getInstance().setScreenSaverEnabled (false); + } + + void shutdown() override + { + mainWindows.clear(); + properties.saveIfNeeded(); + } + + void systemRequestedQuit() override + { + quit(); + } + + //============================================================================== + struct MainWindow : public DocumentWindow + { + MainWindow (PropertiesFile& props) + : DocumentWindow ("JUCE Networked Graphics Demo - Master", Colours::white, DocumentWindow::allButtons) + { + setUsingNativeTitleBar (true); + setContentOwned (new MasterContentComponent (props), true); + setBounds (100, 50, getWidth(), getHeight()); + setResizable (true, false); + setVisible (true); + + glContext.attachTo (*this); + } + + MainWindow (PropertiesFile& props, int windowIndex) + : DocumentWindow ("JUCE Networked Graphics Demo", Colours::black, DocumentWindow::allButtons) + { + setUsingNativeTitleBar (true); + setContentOwned (new SlaveCanvasComponent (props, windowIndex), true); + setBounds (500, 100, getWidth(), getHeight()); + setResizable (true, false); + setVisible (true); + + #if ! JUCE_IOS + glContext.attachTo (*this); + #endif + + #if JUCE_IOS || JUCE_ANDROID + setFullScreen (true); + #endif + } + + ~MainWindow() + { + glContext.detach(); + } + + void closeButtonPressed() override + { + JUCEApplication::getInstance()->systemRequestedQuit(); + } + + OpenGLContext glContext; + + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (MainWindow) + }; + + static PropertiesFile::Options getPropertyFileOptions() + { + PropertiesFile::Options o; + o.applicationName = "JUCE Network Graphics Demo"; + o.filenameSuffix = ".settings"; + o.folderName = "JUCE Network Graphics Demo"; + o.osxLibrarySubFolder = "Application Support/JUCE Network Graphics Demo"; + o.millisecondsBeforeSaving = 2000; + return o; + } + + PropertiesFile properties; + OwnedArray mainWindows; +}; + + +//============================================================================== +// This macro generates the main() routine that launches the app. +START_JUCE_APPLICATION (NetworkGraphicsDemoApplication) diff --git a/examples/NetworkGraphicsDemo/Source/MasterComponent.h b/examples/NetworkGraphicsDemo/Source/MasterComponent.h new file mode 100644 index 0000000000..3ddbded323 --- /dev/null +++ b/examples/NetworkGraphicsDemo/Source/MasterComponent.h @@ -0,0 +1,416 @@ +/* + ============================================================================== + + This file is part of the JUCE library. + Copyright (c) 2015 - ROLI Ltd. + + Permission is granted to use this software under the terms of either: + a) the GPL v2 (or any later version) + b) the Affero GPL v3 + + Details of these licenses can be found at: www.gnu.org/licenses + + JUCE is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + ------------------------------------------------------------------------------ + + To release a closed-source product which uses JUCE, commercial licenses are + available: visit www.juce.com for more information. + + ============================================================================== +*/ + + +/** + Runs the master node, calls the demo to update the canvas, broadcasts those changes + out to slaves, and shows a view of all the clients to allow them to be dragged around. +*/ +struct MasterContentComponent : public Component, + private Timer, + private OSCSender, + private OSCReceiver, + private OSCReceiver::Listener +{ + MasterContentComponent (PropertiesFile& props) + : properties (props) + { + setWantsKeyboardFocus (true); + createAllDemos (demos); + setContent (0); + + setSize (15.0f * currentCanvas.getLimits().getWidth(), + 15.0f * currentCanvas.getLimits().getHeight()); + + if (! OSCSender::connect (getBroadcastIPAddress(), masterPortNumber)) + error = "Master app OSC sender: network connection error."; + + if (! OSCReceiver::connect (clientPortNumber)) + error = "Master app OSC receiver: network connection error."; + + OSCReceiver::addListener (this); + + startTimerHz (30); + } + + ~MasterContentComponent() + { + OSCReceiver::removeListener (this); + } + + //========================================================================== + struct Client + { + String name, ipAddress; + float widthInches, heightInches; + Point centre; // in inches + float scaleFactor; + }; + + Array clients; + + void addClient (String name, String ipAddress, String areaDescription) + { + auto area = Rectangle::fromString (areaDescription); + + if (auto c = getClient (name)) + { + c->ipAddress = ipAddress; + c->widthInches = area.getWidth(); + c->heightInches = area.getHeight(); + return; + } + + DBG (name + " " + ipAddress); + + removeClient (name); + clients.add ({ name, ipAddress, area.getWidth(), area.getHeight(), {}, 1.0f }); + + String lastX = properties.getValue ("lastX_" + name); + String lastY = properties.getValue ("lastY_" + name); + String lastScale = properties.getValue ("scale_" + name); + + if (lastX.isEmpty() || lastY.isEmpty()) + setClientCentre (name, { Random().nextFloat() * 10.0f, + Random().nextFloat() * 10.0f }); + else + setClientCentre (name, Point (lastX.getFloatValue(), + lastY.getFloatValue())); + + if (lastScale.isNotEmpty()) + setClientScale (name, lastScale.getFloatValue()); + else + setClientScale (name, 1.0f); + + updateDeviceComponents(); + } + + void removeClient (String name) + { + for (int i = clients.size(); --i >= 0;) + if (clients.getReference (0).name == name) + clients.remove (i); + + updateDeviceComponents(); + } + + void setClientCentre (const String& name, Point newCentre) + { + if (auto c = getClient (name)) + { + newCentre = currentCanvas.getLimits().getConstrainedPoint (newCentre); + c->centre = newCentre; + + properties.setValue ("lastX_" + name, String (newCentre.x)); + properties.setValue ("lastY_" + name, String (newCentre.y)); + + startTimer (1); + } + } + + float getClientScale (const String& name) const + { + if (auto c = getClient (name)) + return c->scaleFactor; + + return 1.0f; + } + + void setClientScale (const String& name, float newScale) + { + if (auto c = getClient (name)) + { + c->scaleFactor = jlimit (0.5f, 2.0f, newScale); + properties.setValue ("scale_" + name, String (newScale)); + } + } + + Point getClientCentre (const String& name) const + { + if (auto c = getClient (name)) + return c->centre; + + return {}; + } + + Rectangle getClientArea (const String& name) const + { + if (auto c = getClient (name)) + return Rectangle (c->widthInches, c->heightInches) + .withCentre (c->centre); + + return {}; + } + + Rectangle getActiveCanvasArea() const + { + Rectangle r; + + if (clients.size() > 0) + r = Rectangle (1.0f, 1.0f).withCentre (clients.getReference (0).centre); + + for (int i = 1; i < clients.size(); ++i) + r = r.getUnion (Rectangle (1.0f, 1.0f).withCentre (clients.getReference (i).centre)); + + return r.expanded (6.0f); + } + + int getContentIndex() const + { + return demos.indexOf (content); + } + + void setContent (int demoIndex) + { + content = demos[demoIndex]; + + if (content != nullptr) + content->reset(); + } + + bool keyPressed (const KeyPress& key) override + { + if (key == KeyPress::spaceKey || key == KeyPress::rightKey || key == KeyPress::downKey) + { + setContent ((getContentIndex() + 1) % demos.size()); + return true; + } + + if (key == KeyPress::upKey || key == KeyPress::leftKey) + { + setContent ((getContentIndex() + demos.size() - 1) % demos.size()); + return true; + } + + return Component::keyPressed (key); + } + +private: + //============================================================================== + void paint (Graphics& g) override + { + g.fillAll (Colours::black); + + currentCanvas.draw (g, getLocalBounds().toFloat(), currentCanvas.getLimits()); + + if (error.isNotEmpty()) + { + g.setColour (Colours::red); + g.setFont (20.0f); + g.drawText (error, getLocalBounds().reduced (10).removeFromBottom (80), + Justification::centredRight, true); + } + + if (content != nullptr) + { + g.setColour (Colours::white); + g.setFont (17.0f); + g.drawText ("Demo: " + content->getName(), + getLocalBounds().reduced (10).removeFromTop (30), + Justification::centredLeft, true); + } + } + + void resized() override + { + updateDeviceComponents(); + } + + void updateDeviceComponents() + { + for (int i = devices.size(); --i >= 0;) + if (getClient (devices.getUnchecked(i)->getName()) == nullptr) + devices.remove (i); + + for (const auto& c : clients) + if (getDeviceComponent (c.name) == nullptr) + addAndMakeVisible (devices.add (new DeviceComponent (*this, c.name))); + + for (auto d : devices) + d->setBounds (virtualSpaceToLocal (getClientArea (d->getName())).getSmallestIntegerContainer()); + } + + Point virtualSpaceToLocal (Point p) const + { + auto total = currentCanvas.getLimits(); + + return { getWidth() * (p.x - total.getX()) / total.getWidth(), + getHeight() * (p.y - total.getY()) / total.getHeight() }; + } + + Rectangle virtualSpaceToLocal (Rectangle p) const + { + return { virtualSpaceToLocal (p.getTopLeft()), + virtualSpaceToLocal (p.getBottomRight()) }; + } + + Point localSpaceToVirtual (Point p) const + { + auto total = currentCanvas.getLimits(); + + return { total.getX() + total.getWidth() * (p.x / getWidth()), + total.getY() + total.getHeight() * (p.y / getHeight()) }; + } + + //========================================================================== + struct DeviceComponent : public Component + { + DeviceComponent (MasterContentComponent& e, String name) + : Component (name), editor (e) + { + setMouseCursor (MouseCursor::DraggingHandCursor); + } + + void paint (Graphics& g) override + { + g.fillAll (Colours::blue.withAlpha (0.4f)); + + g.setColour (Colours::white); + g.setFont (11.0f); + g.drawFittedText (getName(), getLocalBounds(), Justification::centred, 2); + } + + void mouseDown (const MouseEvent&) override + { + dragStartLocation = editor.getClientCentre (getName()); + } + + void mouseDrag (const MouseEvent& e) override + { + editor.setClientCentre (getName(), dragStartLocation + + editor.localSpaceToVirtual (e.getPosition().toFloat()) + - editor.localSpaceToVirtual (e.getMouseDownPosition().toFloat())); + } + + void mouseWheelMove (const MouseEvent&, const MouseWheelDetails& e) override + { + editor.setClientScale (getName(), editor.getClientScale (getName()) + 0.1f * e.deltaY); + } + + void mouseDoubleClick (const MouseEvent&) override + { + editor.setClientScale (getName(), 1.0f); + } + + MasterContentComponent& editor; + Point dragStartLocation; + Rectangle clientArea; + }; + + DeviceComponent* getDeviceComponent (const String& name) const + { + for (auto d : devices) + if (d->getName() == name) + return d; + + return nullptr; + } + + //========================================================================== + void broadcastNewCanvasState (const MemoryBlock& canvasData) + { + BlockPacketiser packetiser; + packetiser.createBlocksFromData (canvasData, 1000); + + for (const auto& client : clients) + for (auto& b : packetiser.blocks) + sendToIPAddress (client.ipAddress, masterPortNumber, canvasStateOSCAddress, b); + } + + void timerCallback() override + { + startTimerHz (30); + + currentCanvas.reset(); + updateCanvasInfo (currentCanvas); + + { + ScopedPointer context (new CanvasGeneratingContext (currentCanvas)); + Graphics g (*context); + + if (content != nullptr) + content->generateCanvas (g, currentCanvas, getActiveCanvasArea()); + } + + broadcastNewCanvasState (currentCanvas.toMemoryBlock()); + + updateDeviceComponents(); + repaint(); + } + + void updateCanvasInfo (SharedCanvasDescription& canvas) + { + canvas.backgroundColour = Colours::black; + + for (const auto& c : clients) + canvas.clients.add ({ c.name, c.centre, c.scaleFactor }); + } + + Client* getClient (const String& name) const + { + for (auto& c : clients) + if (c.name == name) + return &c; + + return nullptr; + } + + //========================================================================== + void oscMessageReceived (const OSCMessage& message) override + { + auto address = message.getAddressPattern(); + + if (address.matches (newClientOSCAddress)) newClientOSCMessageReceived (message); + else if (address.matches (userInputOSCAddress)) userInputOSCMessageReceived (message); + } + + void newClientOSCMessageReceived (const OSCMessage& message) + { + if (message.empty() || ! message[0].isString()) + return; + + StringArray tokens = StringArray::fromTokens (message[0].getString(), ":", ""); + addClient (tokens[0], tokens[1], tokens[2]); + } + + void userInputOSCMessageReceived (const OSCMessage& message) + { + if (message.size() == 3 && message[0].isString() && message[1].isFloat32() && message[2].isFloat32()) + { + content->handleTouch ({ message[1].getFloat32(), + message[2].getFloat32() }); + } + } + + //========================================================================== + AnimatedContent* content = nullptr; + PropertiesFile& properties; + OwnedArray devices; + SharedCanvasDescription currentCanvas; + String error; + + OwnedArray demos; + + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (MasterContentComponent) +}; diff --git a/examples/NetworkGraphicsDemo/Source/SharedCanvas.h b/examples/NetworkGraphicsDemo/Source/SharedCanvas.h new file mode 100644 index 0000000000..f7746508dd --- /dev/null +++ b/examples/NetworkGraphicsDemo/Source/SharedCanvas.h @@ -0,0 +1,526 @@ +/* + ============================================================================== + + This file is part of the JUCE library. + Copyright (c) 2015 - ROLI Ltd. + + Permission is granted to use this software under the terms of either: + a) the GPL v2 (or any later version) + b) the Affero GPL v3 + + Details of these licenses can be found at: www.gnu.org/licenses + + JUCE is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + ------------------------------------------------------------------------------ + + To release a closed-source product which uses JUCE, commercial licenses are + available: visit www.juce.com for more information. + + ============================================================================== +*/ + + +/** + This scene description is broadcast to all the clients, and contains a list of all + the clients involved, as well as the set of shapes to be drawn. + + Each client will draw the part of the path that lies within its own area. It can + find its area by looking at the list of clients contained in this structure. + + All the path coordinates are roughly in units of inches, and devices will convert + this to pixels based on their screen size and DPI +*/ +struct SharedCanvasDescription +{ + SharedCanvasDescription() {} + + Colour backgroundColour = Colours::black; + + struct ColouredPath + { + Path path; + FillType fill; + }; + + Array paths; + + struct ClientArea + { + String name; + Point centre; // in inches + float scaleFactor; // extra scaling + }; + + Array clients; + + //============================================================================== + void reset() + { + paths.clearQuick(); + clients.clearQuick(); + } + + void swapWith (SharedCanvasDescription& other) + { + std::swap (backgroundColour, other.backgroundColour); + paths.swapWith (other.paths); + clients.swapWith (other.clients); + } + + // This is a fixed size that represents the overall canvas limits that + // content should lie within + Rectangle getLimits() const + { + float inchesX = 60.0f; + float inchesY = 30.0f; + + return { inchesX * -0.5f, inchesY * -0.5f, inchesX, inchesY }; + } + + //============================================================================== + void draw (Graphics& g, Rectangle targetArea, Rectangle clientArea) const + { + draw (g, clientArea, + AffineTransform::fromTargetPoints (clientArea.getX(), clientArea.getY(), + targetArea.getX(), targetArea.getY(), + clientArea.getRight(), clientArea.getY(), + targetArea.getRight(), targetArea.getY(), + clientArea.getRight(), clientArea.getBottom(), + targetArea.getRight(), targetArea.getBottom())); + } + + void draw (Graphics& g, Rectangle clientArea, AffineTransform t) const + { + g.saveState(); + g.addTransform (t); + + for (const auto& p : paths) + { + if (p.path.getBounds().intersects (clientArea)) + { + g.setFillType (p.fill); + g.fillPath (p.path); + } + } + + g.restoreState(); + } + + const ClientArea* findClient (const String& clientName) const + { + for (const auto& c : clients) + if (c.name == clientName) + return &c; + + return nullptr; + } + + //============================================================================== + // Serialisation... + + void save (OutputStream& out) const + { + out.writeInt (magic); + out.writeInt ((int) backgroundColour.getARGB()); + + out.writeInt (clients.size()); + + for (const auto& c : clients) + { + out.writeString (c.name); + writePoint (out, c.centre); + out.writeFloat (c.scaleFactor); + } + + out.writeInt (paths.size()); + + for (const auto& p : paths) + { + writeFill (out, p.fill); + p.path.writePathToStream (out); + } + } + + void load (InputStream& in) + { + if (in.readInt() != magic) + return; + + backgroundColour = Colour ((uint32) in.readInt()); + + { + const int numClients = in.readInt(); + clients.clearQuick(); + + for (int i = 0; i < numClients; ++i) + { + ClientArea c; + c.name = in.readString(); + c.centre = readPoint (in); + c.scaleFactor = in.readFloat(); + clients.add (c); + } + } + + { + const int numPaths = in.readInt(); + paths.clearQuick(); + + for (int i = 0; i < numPaths; ++i) + { + ColouredPath p; + p.fill = readFill (in); + p.path.loadPathFromStream (in); + + paths.add (std::move (p)); + } + } + } + + MemoryBlock toMemoryBlock() const + { + MemoryOutputStream o; + save (o); + return o.getMemoryBlock(); + } + +private: + //============================================================================== + static void writePoint (OutputStream& out, Point p) + { + out.writeFloat (p.x); + out.writeFloat (p.y); + } + + static void writeRect (OutputStream& out, Rectangle r) + { + writePoint (out, r.getPosition()); + out.writeFloat (r.getWidth()); + out.writeFloat (r.getHeight()); + } + + static Point readPoint (InputStream& in) + { + Point p; + p.x = in.readFloat(); + p.y = in.readFloat(); + return p; + } + + static Rectangle readRect (InputStream& in) + { + Rectangle r; + r.setPosition (readPoint (in)); + r.setWidth (in.readFloat()); + r.setHeight (in.readFloat()); + return r; + } + + static void writeFill (OutputStream& out, const FillType& f) + { + if (f.isColour()) + { + out.writeByte (0); + out.writeInt ((int) f.colour.getARGB()); + } + else if (f.isGradient()) + { + const ColourGradient& cg = *f.gradient; + jassert (cg.getNumColours() >= 2); + + out.writeByte (cg.isRadial ? 2 : 1); + + writePoint (out, cg.point1); + writePoint (out, cg.point2); + + out.writeCompressedInt (cg.getNumColours()); + + for (int i = 0; i < cg.getNumColours(); ++i) + { + out.writeDouble (cg.getColourPosition (i)); + out.writeInt ((int) cg.getColour(i).getARGB()); + } + } + else + { + jassertfalse; + } + } + + static FillType readFill (InputStream& in) + { + int type = in.readByte(); + + if (type == 0) + return FillType (Colour ((uint32) in.readInt())); + + if (type > 2) + { + jassertfalse; + return FillType(); + } + + ColourGradient cg; + cg.point1 = readPoint (in); + cg.point2 = readPoint (in); + + cg.clearColours(); + + int numColours = in.readCompressedInt(); + + for (int i = 0; i < numColours; ++i) + { + const double pos = in.readDouble(); + cg.addColour (pos, Colour ((uint32) in.readInt())); + } + + jassert (cg.getNumColours() >= 2); + + return FillType (cg); + } + + const int magic = 0x2381239a; + + JUCE_DECLARE_NON_COPYABLE (SharedCanvasDescription) +}; + +//============================================================================== +class CanvasGeneratingContext : public LowLevelGraphicsContext +{ +public: + CanvasGeneratingContext (SharedCanvasDescription& c) : canvas (c) + { + stateStack.add (new SavedState()); + } + + //============================================================================== + bool isVectorDevice() const override { return true; } + float getPhysicalPixelScaleFactor() override { return 1.0f; } + void setOrigin (Point o) override { addTransform (AffineTransform::translation ((float) o.x, (float) o.y)); } + + void addTransform (const AffineTransform& t) override + { + getState().transform = t.followedBy (getState().transform); + } + + bool clipToRectangle (const Rectangle&) override { return true; } + bool clipToRectangleList (const RectangleList&) override { return true; } + void excludeClipRectangle (const Rectangle&) override {} + void clipToPath (const Path&, const AffineTransform&) override {} + void clipToImageAlpha (const Image&, const AffineTransform&) override {} + + void saveState() override + { + stateStack.add (new SavedState (getState())); + } + + void restoreState() override + { + jassert (stateStack.size() > 0); + + if (stateStack.size() > 0) + stateStack.removeLast(); + } + + void beginTransparencyLayer (float alpha) override + { + saveState(); + getState().transparencyLayer = new SharedCanvasHolder(); + getState().transparencyOpacity = alpha; + } + + void endTransparencyLayer() override + { + const ReferenceCountedObjectPtr finishedTransparencyLayer (getState().transparencyLayer); + float alpha = getState().transparencyOpacity; + restoreState(); + + if (SharedCanvasHolder* c = finishedTransparencyLayer) + { + for (auto& path : c->canvas.paths) + { + path.fill.setOpacity (path.fill.getOpacity() * alpha); + getTargetCanvas().paths.add (path); + } + } + } + + Rectangle getClipBounds() const override + { + return canvas.getLimits().getSmallestIntegerContainer() + .transformedBy (getState().transform.inverted()); + } + + bool clipRegionIntersects (const Rectangle&) override { return true; } + bool isClipEmpty() const override { return false; } + + //============================================================================== + void setFill (const FillType& fillType) override { getState().fillType = fillType; } + void setOpacity (float op) override { getState().fillType.setOpacity (op); } + void setInterpolationQuality (Graphics::ResamplingQuality) override {} + + //============================================================================== + void fillRect (const Rectangle& r, bool) override { fillRect (r.toFloat()); } + void fillRectList (const RectangleList& list) override { fillPath (list.toPath(), AffineTransform()); } + + void fillRect (const Rectangle& r) override + { + Path p; + p.addRectangle (r.toFloat()); + fillPath (p, AffineTransform()); + } + + void fillPath (const Path& p, const AffineTransform& t) override + { + Path p2 (p); + p2.applyTransform (t.followedBy (getState().transform)); + + getTargetCanvas().paths.add ({ std::move (p2), getState().fillType }); + } + + void drawImage (const Image&, const AffineTransform&) override {} + + void drawLine (const Line& line) override + { + Path p; + p.addLineSegment (line, 1.0f); + fillPath (p, AffineTransform()); + } + + //============================================================================== + const Font& getFont() override { return getState().font; } + void setFont (const Font& newFont) override { getState().font = newFont; } + + void drawGlyph (int glyphNumber, const AffineTransform& transform) override + { + Path p; + Font& font = getState().font; + font.getTypeface()->getOutlineForGlyph (glyphNumber, p); + fillPath (p, AffineTransform::scale (font.getHeight() * font.getHorizontalScale(), font.getHeight()).followedBy (transform)); + } + +private: + //============================================================================== + struct SharedCanvasHolder : public ReferenceCountedObject + { + SharedCanvasDescription canvas; + }; + + struct SavedState + { + FillType fillType; + AffineTransform transform; + Font font; + ReferenceCountedObjectPtr transparencyLayer; + float transparencyOpacity = 1.0f; + }; + + SharedCanvasDescription& getTargetCanvas() const + { + if (SharedCanvasHolder* c = getState().transparencyLayer) + return c->canvas; + + return canvas; + } + + SavedState& getState() const noexcept + { + jassert (stateStack.size() > 0); + return *stateStack.getLast(); + } + + SharedCanvasDescription& canvas; + OwnedArray stateStack; + + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (CanvasGeneratingContext) +}; + +//============================================================================== +/** Helper for breaking and reassembling a memory block into smaller checksummed + blocks that will fit inside UDP packets +*/ +struct BlockPacketiser +{ + void createBlocksFromData (const MemoryBlock& data, size_t maxBlockSize) + { + jassert (blocks.size() == 0); + + int offset = 0; + size_t remaining = data.getSize(); + + while (remaining > 0) + { + const int num = jmin (maxBlockSize, remaining); + blocks.add (MemoryBlock (addBytesToPointer (data.getData(), offset), (size_t) num)); + offset += num; + remaining -= num; + } + + MemoryOutputStream checksumBlock; + checksumBlock << getLastPacketPrefix() << MD5 (data).toHexString() << (char) 0 << (char) 0; + blocks.add (checksumBlock.getMemoryBlock()); + + for (int i = 0; i < blocks.size(); ++i) + { + uint32 index = ByteOrder::swapIfBigEndian (i); + blocks.getReference(i).append (&index, sizeof (index)); + } + } + + // returns true if this is an end-of-sequence block + bool appendIncomingBlock (MemoryBlock data) + { + if (data.getSize() > 4) + blocks.addSorted (*this, data); + + return String (CharPointer_ASCII ((const char*) data.getData())).startsWith (getLastPacketPrefix()); + } + + bool reassemble (MemoryBlock& result) + { + result.reset(); + + if (blocks.size() > 1) + { + for (int i = 0; i < blocks.size() - 1; ++i) + result.append (blocks.getReference(i).getData(), blocks.getReference(i).getSize() - 4); + + String storedMD5 (String (CharPointer_ASCII ((const char*) blocks.getLast().getData())) + .fromFirstOccurrenceOf (getLastPacketPrefix(), false, false)); + + blocks.clearQuick(); + + if (MD5 (result).toHexString().trim().equalsIgnoreCase (storedMD5.trim())) + return true; + } + + result.reset(); + return false; + } + + static int compareElements (const MemoryBlock& b1, const MemoryBlock& b2) + { + int i1 = ByteOrder::littleEndianInt (addBytesToPointer (b1.getData(), b1.getSize() - 4)); + int i2 = ByteOrder::littleEndianInt (addBytesToPointer (b2.getData(), b2.getSize() - 4)); + return i1 - i2; + } + + static const char* getLastPacketPrefix() { return "**END_OF_PACKET_LIST** "; } + + Array blocks; +}; + + +//============================================================================== +struct AnimatedContent +{ + virtual ~AnimatedContent() {} + + virtual String getName() const = 0; + virtual void reset() = 0; + virtual void generateCanvas (Graphics&, SharedCanvasDescription& canvas, Rectangle activeArea) = 0; + virtual void handleTouch (Point position) = 0; +}; diff --git a/examples/NetworkGraphicsDemo/Source/SlaveComponent.h b/examples/NetworkGraphicsDemo/Source/SlaveComponent.h new file mode 100644 index 0000000000..6c3a3676d4 --- /dev/null +++ b/examples/NetworkGraphicsDemo/Source/SlaveComponent.h @@ -0,0 +1,221 @@ +/* + ============================================================================== + + This file is part of the JUCE library. + Copyright (c) 2015 - ROLI Ltd. + + Permission is granted to use this software under the terms of either: + a) the GPL v2 (or any later version) + b) the Affero GPL v3 + + Details of these licenses can be found at: www.gnu.org/licenses + + JUCE is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + ------------------------------------------------------------------------------ + + To release a closed-source product which uses JUCE, commercial licenses are + available: visit www.juce.com for more information. + + ============================================================================== +*/ + + +/** + This component runs in a slave process, draws the part of the canvas that this + particular client covers, and updates itself when messages arrive from the master + containing new canvas states. +*/ +class SlaveCanvasComponent : public Component, + private OSCSender, + private OSCReceiver, + private OSCReceiver::Listener, + private AsyncUpdater, + private Timer +{ +public: + SlaveCanvasComponent (PropertiesFile& p, int windowIndex) : properties (p) + { + { + String uuidPropName ("UUID" + String (windowIndex)); + clientName = properties.getValue (uuidPropName); + + if (clientName.isEmpty()) + { + clientName = "CLIENT_" + String (Random().nextInt (10000)).toUpperCase(); + properties.setValue (uuidPropName, clientName); + } + } + + setOpaque (true); + setSize (1500, 900); + + if (! OSCSender::connect (getBroadcastIPAddress(), clientPortNumber)) + error = "Client app OSC sender: network connection error."; + + if (! OSCReceiver::connect (masterPortNumber)) + error = "Client app OSC receiver: network connection error."; + + OSCReceiver::addListener (this); + + timerCallback(); + startTimer (2000); + } + + ~SlaveCanvasComponent() + { + OSCReceiver::removeListener (this); + } + +private: + void mouseDrag (const MouseEvent& e) override + { + auto clientArea = getAreaInGlobalSpace(); + + if (! clientArea.isEmpty()) + { + OSCMessage message (userInputOSCAddress); + + message.addString (clientName); + message.addFloat32 (e.position.x * clientArea.getWidth() / getWidth() + clientArea.getX()); + message.addFloat32 (e.position.y * clientArea.getHeight() / getHeight() + clientArea.getY()); + + send (message); + } + } + + //========================================================================== + void oscMessageReceived (const OSCMessage& message) override + { + auto address = message.getAddressPattern(); + + if (address.matches (canvasStateOSCAddress)) + canvasStateOSCMessageReceived (message); + } + + struct NewStateMessage : public Message + { + NewStateMessage (const MemoryBlock& d) : data (d) {} + MemoryBlock data; + }; + + void canvasStateOSCMessageReceived (const OSCMessage& message) + { + if (message.empty() || ! message[0].isBlob()) + return; + + if (packetiser.appendIncomingBlock (message[0].getBlob())) + { + const ScopedLock sl (canvasLock); + + MemoryBlock newCanvasData; + + if (packetiser.reassemble (newCanvasData)) + { + MemoryInputStream i (newCanvasData.getData(), newCanvasData.getSize(), false); + canvas2.load (i); + triggerAsyncUpdate(); + } + } + } + + //========================================================================== + String getMachineInfoToDisplay() const + { + //auto display = Desktop::getInstance().getDisplays().getDisplayContaining (getScreenBounds().getCentre()); + return getOSName();// + " " + String (display.dpi) + " " + String (display.scale); + } + + static String getOSName() + { + #if JUCE_MAC + return "Mac OSX"; + #elif JUCE_ANDROID + return "Android"; + #elif JUCE_IOS + return "iOS"; + #elif JUCE_WINDOWS + return "Windows"; + #elif JUCE_LINUX + return "Linux"; + #endif + } + + void paint (Graphics& g) override + { + g.fillAll (canvas.backgroundColour); + + auto clientArea = getAreaInGlobalSpace(); + + if (clientArea.isEmpty()) + { + g.setColour (Colours::red.withAlpha (0.5f)); + g.setFont (20.0f); + g.drawText ("Not Connected", getLocalBounds(), Justification::centred, false); + return; + } + + canvas.draw (g, getLocalBounds().toFloat(), clientArea); + + g.setFont (Font (34.0f)); + g.setColour (Colours::white.withAlpha (0.6f)); + + g.drawText (getMachineInfoToDisplay(), + getLocalBounds().reduced (10).removeFromBottom (20), + Justification::centredRight, true); + + if (error.isNotEmpty()) + { + g.setColour (Colours::red); + g.drawText (error, getLocalBounds().reduced (10).removeFromBottom (80), + Justification::centredRight, true); + } + } + + Rectangle getAreaInGlobalSpace() const + { + if (auto client = canvas.findClient (clientName)) + { + auto screenBounds = getScreenBounds(); + auto display = Desktop::getInstance().getDisplays().getDisplayContaining (screenBounds.getCentre()); + return ((screenBounds - display.userArea.getCentre()).toFloat() / (client->scaleFactor * display.dpi / display.scale)) + client->centre; + } + + return {}; + } + + Rectangle getScreenAreaInGlobalSpace() const + { + if (auto client = canvas.findClient (clientName)) + { + auto display = Desktop::getInstance().getDisplays().getDisplayContaining (getScreenBounds().getCentre()); + return (display.userArea.toFloat() / (client->scaleFactor * display.dpi / display.scale)).withCentre (client->centre); + } + + return {}; + } + + void timerCallback() override + { + send (newClientOSCAddress, clientName + ":" + getIPAddress() + + ":" + getScreenAreaInGlobalSpace().toString()); + } + + void handleAsyncUpdate() override + { + const ScopedLock sl (canvasLock); + canvas.swapWith (canvas2); + repaint(); + } + + SharedCanvasDescription canvas, canvas2; + PropertiesFile& properties; + String clientName, error; + + CriticalSection canvasLock; + BlockPacketiser packetiser; + + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (SlaveCanvasComponent) +}; diff --git a/examples/NetworkGraphicsDemo/Source/juce_icon.png b/examples/NetworkGraphicsDemo/Source/juce_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2564a24f7846d841e57b35b191bd8fa82ce648aa GIT binary patch literal 45854 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 A=Kufz literal 0 HcmV?d00001 diff --git a/examples/OSCReceiver/OSCReceiver.jucer b/examples/OSCReceiver/OSCReceiver.jucer index 89eb24c8d5..8c76792032 100644 --- a/examples/OSCReceiver/OSCReceiver.jucer +++ b/examples/OSCReceiver/OSCReceiver.jucer @@ -86,7 +86,7 @@ androidMinimumSDK="10" androidInternetNeeded="1" androidBluetoothNeeded="1" androidKeyStore="${user.home}/.android/debug.keystore" androidKeyStorePass="android" androidKeyAlias="androiddebugkey" androidKeyAliasPass="android" - androidCpp11="1" targetFolder="Builds/AndroidStudio"> + androidCpp11="1" targetFolder="Builds/AndroidStudio" androidScreenOrientation="unspecified"> diff --git a/examples/OSCSender/OSCSender.jucer b/examples/OSCSender/OSCSender.jucer index 8d3ee6243a..da61fa6238 100644 --- a/examples/OSCSender/OSCSender.jucer +++ b/examples/OSCSender/OSCSender.jucer @@ -79,7 +79,7 @@ androidKeyStore="${user.home}/.android/debug.keystore" androidKeyStorePass="android" androidKeyAlias="androiddebugkey" androidKeyAliasPass="android" androidCpp11="1" targetFolder="Builds/AndroidStudio" androidSDKPath="" - androidNDKPath=""> + androidNDKPath="" androidScreenOrientation="unspecified">