From 271c6e1aeb2a1ec56dbb718a87e506d34df3ff3f Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 20 Sep 2024 18:25:27 +0100 Subject: [PATCH 001/122] latest raylib version --- raygui | 2 +- raylib-c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/raygui b/raygui index 25c8c65..b5a81fb 160000 --- a/raygui +++ b/raygui @@ -1 +1 @@ -Subproject commit 25c8c65a6e5f0f4d4b564a0343861898c6f2778b +Subproject commit b5a81fb76eec3521f4cbd6c02ace0dcc7b1cc810 diff --git a/raylib-c b/raylib-c index ae50bfa..e5d0cc9 160000 --- a/raylib-c +++ b/raylib-c @@ -1 +1 @@ -Subproject commit ae50bfa2cc569c0f8d5bc4315d39db64005b1b08 +Subproject commit e5d0cc978ae933ccccd41758d50d1cd57e3474d1 From a48757b815f7d0fb2e035823261d2f2e7efa14ac Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 20 Sep 2024 18:30:26 +0100 Subject: [PATCH 002/122] add libwayland-dev --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 71718c4..a166094 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -186,7 +186,7 @@ jobs: - name: Build raylib run: | sudo apt update - sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev + sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev cd raylib-c mkdir build cd build From 9b81a6d6995a6835d010bba363d9ef3c3c0718d7 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 20 Sep 2024 18:36:17 +0100 Subject: [PATCH 003/122] update headers --- raylib/raygui.h.modified | 84 +++++++++++++++--------- raylib/raylib.h.modified | 132 +++++++++++++++++++++++--------------- raylib/raymath.h.modified | 44 ++++++++++--- raylib/rlgl.h.modified | 81 ++++++++++++++--------- 4 files changed, 219 insertions(+), 122 deletions(-) diff --git a/raylib/raygui.h.modified b/raylib/raygui.h.modified index 5991183..34568d3 100644 --- a/raylib/raygui.h.modified +++ b/raylib/raygui.h.modified @@ -1,6 +1,6 @@ /******************************************************************************************* * -* raygui v4.0 - A simple and easy-to-use immediate-mode gui library +* raygui v4.5-dev - A simple and easy-to-use immediate-mode gui library * * DESCRIPTION: * raygui is a tools-dev-focused immediate-mode-gui library based on raylib but also @@ -26,7 +26,7 @@ * NOTES: * - WARNING: GuiLoadStyle() and GuiLoadStyle{Custom}() functions, allocate memory for * font atlas recs and glyphs, freeing that memory is (usually) up to the user, -* no unload function is explicitly provided... but note that GuiLoadStyleDefaulf() unloads +* no unload function is explicitly provided... but note that GuiLoadStyleDefault() unloads * by default any previously loaded font (texture, recs, glyphs). * - Global UI alpha (guiAlpha) is applied inside GuiDrawRectangle() and GuiDrawText() functions * @@ -136,11 +136,29 @@ * * #define RAYGUI_DEBUG_RECS_BOUNDS * Draw control bounds rectangles for debug -* +* * #define RAYGUI_DEBUG_TEXT_BOUNDS * Draw text bounds rectangles for debug * * VERSIONS HISTORY: +* 4.5-dev (Sep-2024) Current dev version... +* ADDED: guiControlExclusiveMode and guiControlExclusiveRec for exclusive modes +* ADDED: GuiValueBoxFloat() +* ADDED: GuiDropdonwBox() properties: DROPDOWN_ARROW_HIDDEN, DROPDOWN_ROLL_UP +* ADDED: GuiListView() property: LIST_ITEMS_BORDER_WIDTH +* ADDED: Multiple new icons +* REVIEWED: GuiTabBar(), close tab with mouse middle button +* REVIEWED: GuiScrollPanel(), scroll speed proportional to content +* REVIEWED: GuiDropdownBox(), support roll up and hidden arrow +* REVIEWED: GuiTextBox(), cursor position initialization +* REVIEWED: GuiSliderPro(), control value change check +* REVIEWED: GuiGrid(), simplified implementation +* REVIEWED: GuiIconText(), increase buffer size and reviewed padding +* REVIEWED: GuiDrawText(), improved wrap mode drawing +* REVIEWED: GuiScrollBar(), minor tweaks +* REVIEWED: Functions descriptions, removed wrong return value reference +* REDESIGNED: GuiColorPanel(), improved HSV <-> RGBA convertion +* * 4.0 (12-Sep-2023) ADDED: GuiToggleSlider() * ADDED: GuiColorPickerHSV() and GuiColorPanelHSV() * ADDED: Multiple new icons, mostly compiler related @@ -246,7 +264,7 @@ * 0.8 (27-Aug-2015) Initial release. Implemented by Kevin Gato, Daniel Nicolás and Ramon Santamaria. * * DEPENDENCIES: -* raylib 4.6-dev Inputs reading (keyboard/mouse), shapes drawing, font loading and text drawing +* raylib 5.0 - Inputs reading (keyboard/mouse), shapes drawing, font loading and text drawing * * STANDALONE MODE: * By default raygui depends on raylib mostly for the inputs and the drawing functionality but that dependency can be disabled @@ -291,7 +309,7 @@ * * LICENSE: zlib/libpng * -* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* Copyright (c) 2014-2024 Ramon Santamaria (@raysan5) * * This software is provided "as-is", without any express or implied warranty. In no event * will the authors be held liable for any damages arising from the use of this software. @@ -431,11 +449,11 @@ typedef enum { TEXT_ALIGNMENT_VERTICAL, // Text vertical alignment inside text bounds (after border and padding) TEXT_WRAP_MODE // Text wrap-mode inside text bounds //TEXT_DECORATION // Text decoration: 0-None, 1-Underline, 2-Line-through, 3-Overline - //TEXT_DECORATION_THICK // Text decoration line thikness + //TEXT_DECORATION_THICK // Text decoration line thickness } GuiDefaultProperty; // Other possible text properties: // TEXT_WEIGHT // Normal, Italic, Bold -> Requires specific font change -// TEXT_INDENT // Text indentation -> Now using TEXT_PADDING... +// TEXT_INDENT // Text indentation -> Now using TEXT_PADDING... // Label //typedef enum { } GuiLabelProperty; // Button/Spinner @@ -474,7 +492,9 @@ typedef enum { // DropdownBox typedef enum { ARROW_PADDING = 16, // DropdownBox arrow separation from border and items - DROPDOWN_ITEMS_SPACING // DropdownBox items separation + DROPDOWN_ITEMS_SPACING, // DropdownBox items separation + DROPDOWN_ARROW_HIDDEN, // DropdownBox arrow hidden + DROPDOWN_ROLL_UP // DropdownBox roll up flag (default rolls down) } GuiDropdownBoxProperty; // TextBox/TextBoxMulti/ValueBox/Spinner typedef enum { @@ -491,6 +511,7 @@ typedef enum { LIST_ITEMS_SPACING, // ListView items separation SCROLLBAR_WIDTH, // ListView scrollbar size (usually width) SCROLLBAR_SIDE, // ListView scrollbar side (0-SCROLLBAR_LEFT_SIDE, 1-SCROLLBAR_RIGHT_SIDE) + LIST_ITEMS_BORDER_WIDTH // ListView items border width } GuiListViewProperty; // ColorPicker typedef enum { @@ -545,26 +566,27 @@ typedef enum { /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiTabBar(Rectangle bounds, const char **text, int count, int *active); // Tab Bar control, returns TAB to be closed or -1 /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiScrollPanel(Rectangle bounds, const char *text, Rectangle content, Vector2 *scroll, Rectangle *view); // Scroll Panel control // Basic controls set -/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiLabel(Rectangle bounds, const char *text); // Label control, shows text +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiLabel(Rectangle bounds, const char *text); // Label control /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiButton(Rectangle bounds, const char *text); // Button control, returns true when clicked -/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiLabelButton(Rectangle bounds, const char *text); // Label button control, show true when clicked -/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiToggle(Rectangle bounds, const char *text, bool *active); // Toggle Button control, returns true when active -/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiToggleGroup(Rectangle bounds, const char *text, int *active); // Toggle Group control, returns active toggle index -/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiToggleSlider(Rectangle bounds, const char *text, int *active); // Toggle Slider control, returns true when clicked +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiLabelButton(Rectangle bounds, const char *text); // Label button control, returns true when clicked +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiToggle(Rectangle bounds, const char *text, bool *active); // Toggle Button control +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiToggleGroup(Rectangle bounds, const char *text, int *active); // Toggle Group control +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiToggleSlider(Rectangle bounds, const char *text, int *active); // Toggle Slider control /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiCheckBox(Rectangle bounds, const char *text, bool *checked); // Check Box control, returns true when active -/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiComboBox(Rectangle bounds, const char *text, int *active); // Combo Box control, returns selected item index -/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMode); // Dropdown Box control, returns selected item -/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiSpinner(Rectangle bounds, const char *text, int *value, int minValue, int maxValue, bool editMode); // Spinner control, returns selected value +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiComboBox(Rectangle bounds, const char *text, int *active); // Combo Box control +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMode); // Dropdown Box control +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiSpinner(Rectangle bounds, const char *text, int *value, int minValue, int maxValue, bool editMode); // Spinner control /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, int maxValue, bool editMode); // Value Box control, updates input text with numbers +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float *value, bool editMode); // Value box control for float values /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode); // Text Box control, updates input text -/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiSlider(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue); // Slider control, returns selected value -/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiSliderBar(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue); // Slider Bar control, returns selected value -/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiProgressBar(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue); // Progress Bar control, shows current progress value +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiSlider(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue); // Slider control +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiSliderBar(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue); // Slider Bar control +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiProgressBar(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue); // Progress Bar control /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiStatusBar(Rectangle bounds, const char *text); // Status Bar control, shows info text /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiDummyRec(Rectangle bounds, const char *text); // Dummy control for placeholders -/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiGrid(Rectangle bounds, const char *text, float spacing, int subdivs, Vector2 *mouseCell); // Grid control, returns mouse cell position +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiGrid(Rectangle bounds, const char *text, float spacing, int subdivs, Vector2 *mouseCell); // Grid control // Advance controls set -/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiListView(Rectangle bounds, const char *text, int *scrollIndex, int *active); // List View control, returns selected list item index +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiListView(Rectangle bounds, const char *text, int *scrollIndex, int *active); // List View control /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollIndex, int *active, int *focus); // List View with extended parameters /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiMessageBox(Rectangle bounds, const char *title, const char *message, const char *buttons); // Message Box control, displays a message /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, const char *buttons, char *text, int textMaxSize, bool *secretViewActive); // Text Input Box control, ask for text, supports secret @@ -573,7 +595,7 @@ typedef enum { /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiColorBarAlpha(Rectangle bounds, const char *text, float *alpha); // Color Bar Alpha control /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiColorBarHue(Rectangle bounds, const char *text, float *value); // Color Bar Hue control /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiColorPickerHSV(Rectangle bounds, const char *text, Vector3 *colorHsv); // Color Picker control that avoids conversion to RGB on each call (multiple color controls) -/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiColorPanelHSV(Rectangle bounds, const char *text, Vector3 *colorHsv); // Color Panel control that returns HSV color value, used by GuiColorPickerHSV() +/* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiColorPanelHSV(Rectangle bounds, const char *text, Vector3 *colorHsv); // Color Panel control that updates Hue-Saturation-Value color value, used by GuiColorPickerHSV() //---------------------------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------- // Icons enumeration @@ -799,15 +821,15 @@ typedef enum { ICON_FOLDER = 217, ICON_FILE = 218, ICON_SAND_TIMER = 219, - ICON_220 = 220, - ICON_221 = 221, - ICON_222 = 222, - ICON_223 = 223, - ICON_224 = 224, - ICON_225 = 225, - ICON_226 = 226, - ICON_227 = 227, - ICON_228 = 228, + ICON_WARNING = 220, + ICON_HELP_BOX = 221, + ICON_INFO_BOX = 222, + ICON_PRIORITY = 223, + ICON_LAYERS_ISO = 224, + ICON_LAYERS2 = 225, + ICON_MLAYERS = 226, + ICON_MAPS = 227, + ICON_HOT = 228, ICON_229 = 229, ICON_230 = 230, ICON_231 = 231, diff --git a/raylib/raylib.h.modified b/raylib/raylib.h.modified index 158519a..832e0e3 100644 --- a/raylib/raylib.h.modified +++ b/raylib/raylib.h.modified @@ -1,6 +1,6 @@ /********************************************************************************************** * -* raylib v5.0 - A simple and easy-to-use library to enjoy videogames programming (www.raylib.com) +* raylib v5.5-dev - A simple and easy-to-use library to enjoy videogames programming (www.raylib.com) * * FEATURES: * - NO external dependencies, all required libraries included with raylib @@ -57,7 +57,7 @@ * raylib is licensed under an unmodified zlib/libpng license, which is an OSI-certified, * BSD-like license that allows static linking with closed source software: * -* Copyright (c) 2013-2023 Ramon Santamaria (@raysan5) +* Copyright (c) 2013-2024 Ramon Santamaria (@raysan5) * * This software is provided "as-is", without any express or implied warranty. In no event * will the authors be held liable for any damages arising from the use of this software. @@ -75,8 +75,9 @@ * 3. This notice may not be removed or altered from any source distribution. * **********************************************************************************************/ -// Function specifiers in case library is build/used as a shared library (Windows) +// Function specifiers in case library is build/used as a shared library // NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll +// NOTE: visibility("default") attribute makes symbols "visible" when compiled with -fvisibility=hidden //---------------------------------------------------------------------------------- // Some basic Defines //---------------------------------------------------------------------------------- @@ -224,8 +225,10 @@ typedef struct Mesh { // Animation vertex data float *animVertices; // Animated vertex positions (after bones transformations) float *animNormals; // Animated normals (after bones transformations) - unsigned char *boneIds; // Vertex bone ids, max 255 bone ids, up to 4 bones influence by vertex (skinning) - float *boneWeights; // Vertex bone weight, up to 4 bones influence by vertex (skinning) + unsigned char *boneIds; // Vertex bone ids, max 255 bone ids, up to 4 bones influence by vertex (skinning) (shader-location = 6) + float *boneWeights; // Vertex bone weight, up to 4 bones influence by vertex (skinning) (shader-location = 7) + Matrix *boneMatrices; // Bones animated transformation matrices + int boneCount; // Number of bones // OpenGL identifiers unsigned int vaoId; // OpenGL Vertex Array Object id unsigned int *vboId; // OpenGL Vertex Buffer Objects id (default vertex data) @@ -282,7 +285,7 @@ typedef struct ModelAnimation { // Ray, ray for raycasting typedef struct Ray { Vector3 position; // Ray position (origin) - Vector3 direction; // Ray direction + Vector3 direction; // Ray direction (normalized) } Ray; // RayCollision, ray hit information typedef struct RayCollision { @@ -335,7 +338,6 @@ typedef struct VrDeviceInfo { int vResolution; // Vertical resolution in pixels float hScreenSize; // Horizontal size in meters float vScreenSize; // Vertical size in meters - float vScreenCenter; // Screen center in meters float eyeToScreenDistance; // Distance between eye and display in meters float lensSeparationDistance; // Lens separation distance in meters float interpupillaryDistance; // IPD (distance between pupils) in meters @@ -522,7 +524,7 @@ typedef enum { KEY_KP_EQUAL = 336, // Key: Keypad = // Android key buttons KEY_BACK = 4, // Key: Android back button - KEY_MENU = 82, // Key: Android menu button + KEY_MENU = 5, // Key: Android menu button KEY_VOLUME_UP = 24, // Key: Android volume up button KEY_VOLUME_DOWN = 25 // Key: Android volume down button } KeyboardKey; @@ -559,12 +561,12 @@ typedef enum { GAMEPAD_BUTTON_LEFT_FACE_DOWN, // Gamepad left DPAD down button GAMEPAD_BUTTON_LEFT_FACE_LEFT, // Gamepad left DPAD left button GAMEPAD_BUTTON_RIGHT_FACE_UP, // Gamepad right button up (i.e. PS3: Triangle, Xbox: Y) - GAMEPAD_BUTTON_RIGHT_FACE_RIGHT, // Gamepad right button right (i.e. PS3: Square, Xbox: X) + GAMEPAD_BUTTON_RIGHT_FACE_RIGHT, // Gamepad right button right (i.e. PS3: Circle, Xbox: B) GAMEPAD_BUTTON_RIGHT_FACE_DOWN, // Gamepad right button down (i.e. PS3: Cross, Xbox: A) - GAMEPAD_BUTTON_RIGHT_FACE_LEFT, // Gamepad right button left (i.e. PS3: Circle, Xbox: B) + GAMEPAD_BUTTON_RIGHT_FACE_LEFT, // Gamepad right button left (i.e. PS3: Square, Xbox: X) GAMEPAD_BUTTON_LEFT_TRIGGER_1, // Gamepad top/back trigger left (first), it could be a trailing button GAMEPAD_BUTTON_LEFT_TRIGGER_2, // Gamepad top/back trigger left (second), it could be a trailing button - GAMEPAD_BUTTON_RIGHT_TRIGGER_1, // Gamepad top/back trigger right (one), it could be a trailing button + GAMEPAD_BUTTON_RIGHT_TRIGGER_1, // Gamepad top/back trigger right (first), it could be a trailing button GAMEPAD_BUTTON_RIGHT_TRIGGER_2, // Gamepad top/back trigger right (second), it could be a trailing button GAMEPAD_BUTTON_MIDDLE_LEFT, // Gamepad center buttons, left one (i.e. PS3: Select) GAMEPAD_BUTTON_MIDDLE, // Gamepad center buttons, middle one (i.e. PS3: PS, Xbox: XBOX) @@ -622,7 +624,10 @@ typedef enum { SHADER_LOC_MAP_CUBEMAP, // Shader location: samplerCube texture: cubemap SHADER_LOC_MAP_IRRADIANCE, // Shader location: samplerCube texture: irradiance SHADER_LOC_MAP_PREFILTER, // Shader location: samplerCube texture: prefilter - SHADER_LOC_MAP_BRDF // Shader location: sampler2d texture: brdf + SHADER_LOC_MAP_BRDF, // Shader location: sampler2d texture: brdf + SHADER_LOC_VERTEX_BONEIDS, // Shader location: vertex attribute: boneIds + SHADER_LOC_VERTEX_BONEWEIGHTS, // Shader location: vertex attribute: boneWeights + SHADER_LOC_BONE_MATRICES // Shader location: array of matrices uniform: boneMatrices } ShaderLocationIndex; // Shader uniform data type typedef enum { @@ -732,11 +737,11 @@ typedef enum { } Gesture; // Camera system modes typedef enum { - CAMERA_CUSTOM = 0, // Custom camera - CAMERA_FREE, // Free camera - CAMERA_ORBITAL, // Orbital camera - CAMERA_FIRST_PERSON, // First person camera - CAMERA_THIRD_PERSON // Third person camera + CAMERA_CUSTOM = 0, // Camera custom, controlled by user (UpdateCamera() does nothing) + CAMERA_FREE, // Camera free mode + CAMERA_ORBITAL, // Camera orbital, around target, zoom supported + CAMERA_FIRST_PERSON, // Camera first person + CAMERA_THIRD_PERSON // Camera third person } CameraMode; // Camera projection typedef enum { @@ -750,7 +755,7 @@ typedef enum { NPATCH_THREE_PATCH_HORIZONTAL // Npatch layout: 3x1 tiles } NPatchLayout; // Callbacks to hook some internal functions -// WARNING: These callbacks are intended for advance users +// WARNING: These callbacks are intended for advanced users typedef void (*TraceLogCallback)(int logLevel, const char *text, void * args); // Logging: Redirect trace log messages typedef unsigned char *(*LoadFileDataCallback)(const char *fileName, int *dataSize); // FileIO: Load binary data typedef bool (*SaveFileDataCallback)(const char *fileName, void *data, int dataSize); // FileIO: Save binary data @@ -777,8 +782,8 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI bool IsWindowState(unsigned int flag); // Check if one specific window flag is enabled void SetWindowState(unsigned int flags); // Set window configuration state using flags (only PLATFORM_DESKTOP) void ClearWindowState(unsigned int flags); // Clear window configuration state flags - void ToggleFullscreen(void); // Toggle window state: fullscreen/windowed (only PLATFORM_DESKTOP) - void ToggleBorderlessWindowed(void); // Toggle window state: borderless windowed (only PLATFORM_DESKTOP) + void ToggleFullscreen(void); // Toggle window state: fullscreen/windowed [resizes monitor to match window resolution] (only PLATFORM_DESKTOP) + void ToggleBorderlessWindowed(void); // Toggle window state: borderless windowed [resizes window to match monitor resolution] (only PLATFORM_DESKTOP) void MaximizeWindow(void); // Set window state: maximized, if resizable (only PLATFORM_DESKTOP) void MinimizeWindow(void); // Set window state: minimized, if resizable (only PLATFORM_DESKTOP) void RestoreWindow(void); // Set window state: not minimized/maximized (only PLATFORM_DESKTOP) @@ -853,20 +858,21 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void SetShaderValueTexture(Shader shader, int locIndex, Texture2D texture); // Set shader uniform value for texture (sampler2d) void UnloadShader(Shader shader); // Unload shader from GPU memory (VRAM) // Screen-space-related functions - Ray GetMouseRay(Vector2 mousePosition, Camera camera); // Get a ray trace from mouse position - Matrix GetCameraMatrix(Camera camera); // Get camera transform matrix (view matrix) - Matrix GetCameraMatrix2D(Camera2D camera); // Get camera 2d transform matrix + Ray GetScreenToWorldRay(Vector2 position, Camera camera); // Get a ray trace from screen position (i.e mouse) + Ray GetScreenToWorldRayEx(Vector2 position, Camera camera, int width, int height); // Get a ray trace from screen position (i.e mouse) in a viewport Vector2 GetWorldToScreen(Vector3 position, Camera camera); // Get the screen space position for a 3d world space position - Vector2 GetScreenToWorld2D(Vector2 position, Camera2D camera); // Get the world space position for a 2d camera screen space position Vector2 GetWorldToScreenEx(Vector3 position, Camera camera, int width, int height); // Get size position for a 3d world space position Vector2 GetWorldToScreen2D(Vector2 position, Camera2D camera); // Get the screen space position for a 2d camera world space position + Vector2 GetScreenToWorld2D(Vector2 position, Camera2D camera); // Get the world space position for a 2d camera screen space position + Matrix GetCameraMatrix(Camera camera); // Get camera transform matrix (view matrix) + Matrix GetCameraMatrix2D(Camera2D camera); // Get camera 2d transform matrix // Timing-related functions void SetTargetFPS(int fps); // Set target FPS (maximum) float GetFrameTime(void); // Get time in seconds for last frame drawn (delta time) double GetTime(void); // Get elapsed time in seconds since InitWindow() int GetFPS(void); // Get current FPS // Custom frame control functions -// NOTE: Those functions are intended for advance users that want full control over the frame processing +// NOTE: Those functions are intended for advanced users that want full control over the frame processing // By default EndDrawing() does this job: draws everything + SwapScreenBuffer() + manage frame timing + PollInputEvents() // To avoid that behaviour and control frame processes manually, enable in config.h: SUPPORT_CUSTOM_FRAME_CONTROL void SwapScreenBuffer(void); // Swap back buffer with front buffer (screen drawing) @@ -889,7 +895,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void *MemRealloc(void *ptr, unsigned int size); // Internal memory reallocator void MemFree(void *ptr); // Internal memory free // Set custom callbacks -// WARNING: Callbacks setup is intended for advance users +// WARNING: Callbacks setup is intended for advanced users void SetTraceLogCallback(TraceLogCallback callback); // Set custom trace log void SetLoadFileDataCallback(LoadFileDataCallback callback); // Set custom file binary data loader void SetSaveFileDataCallback(SaveFileDataCallback callback); // Set custom file binary data saver @@ -918,8 +924,9 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI const char *GetApplicationDirectory(void); // Get the directory of the running application (uses static string) bool ChangeDirectory(const char *dir); // Change working directory, return true on success bool IsPathFile(const char *path); // Check if a given path is a file or a directory + bool IsFileNameValid(const char *fileName); // Check if fileName is valid for the platform/OS FilePathList LoadDirectoryFiles(const char *dirPath); // Load directory filepaths - FilePathList LoadDirectoryFilesEx(const char *basePath, const char *filter, bool scanSubdirs); // Load directory filepaths with extension filtering and recursive directory scan + FilePathList LoadDirectoryFilesEx(const char *basePath, const char *filter, bool scanSubdirs); // Load directory filepaths with extension filtering and recursive directory scan. Use 'DIR' in the filter string to include directories in the result void UnloadDirectoryFiles(FilePathList files); // Unload filepaths bool IsFileDropped(void); // Check if a file has been dropped into window FilePathList LoadDroppedFiles(void); // Load dropped filepaths @@ -932,7 +939,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI unsigned char *DecodeDataBase64(const unsigned char *data, int *outputSize); // Decode Base64 string data, memory must be MemFree() // Automation events functionality AutomationEventList LoadAutomationEventList(const char *fileName); // Load automation events list from file, NULL for empty list, capacity = MAX_AUTOMATION_EVENTS - void UnloadAutomationEventList(AutomationEventList *list); // Unload automation events list from file + void UnloadAutomationEventList(AutomationEventList list); // Unload automation events list from file bool ExportAutomationEventList(AutomationEventList list, const char *fileName); // Export automation events list as text file void SetAutomationEventList(AutomationEventList *list); // Set automation event list to record to void SetAutomationEventBaseFrame(int frame); // Set automation event internal base frame to start recording @@ -962,6 +969,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI int GetGamepadAxisCount(int gamepad); // Get gamepad axis count for a gamepad float GetGamepadAxisMovement(int gamepad, int axis); // Get axis movement value for a gamepad axis int SetGamepadMappings(const char *mappings); // Set internal gamepad mappings (SDL_GameControllerDB) + void SetGamepadVibration(int gamepad, float leftMotor, float rightMotor); // Set gamepad vibration for both motors // Input-related functions: mouse bool IsMouseButtonPressed(int button); // Check if a mouse button has been pressed once bool IsMouseButtonDown(int button); // Check if a mouse button is being pressed @@ -1006,18 +1014,20 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI // NOTE: It can be useful when using basic shapes and one single font, // defining a font char white rectangle would allow drawing everything in a single draw call void SetShapesTexture(Texture2D texture, Rectangle source); // Set texture and rectangle to be used on shapes drawing + Texture2D GetShapesTexture(void); // Get texture that is used for shapes drawing + Rectangle GetShapesTextureRectangle(void); // Get texture source rectangle that is used for shapes drawing // Basic shapes drawing functions void DrawPixel(int posX, int posY, Color color); // Draw a pixel void DrawPixelV(Vector2 position, Color color); // Draw a pixel (Vector version) void DrawLine(int startPosX, int startPosY, int endPosX, int endPosY, Color color); // Draw a line void DrawLineV(Vector2 startPos, Vector2 endPos, Color color); // Draw a line (using gl lines) void DrawLineEx(Vector2 startPos, Vector2 endPos, float thick, Color color); // Draw a line (using triangles/quads) - void DrawLineStrip(Vector2 *points, int pointCount, Color color); // Draw lines sequence (using gl lines) + void DrawLineStrip(const Vector2 *points, int pointCount, Color color); // Draw lines sequence (using gl lines) void DrawLineBezier(Vector2 startPos, Vector2 endPos, float thick, Color color); // Draw line segment cubic-bezier in-out interpolation void DrawCircle(int centerX, int centerY, float radius, Color color); // Draw a color-filled circle void DrawCircleSector(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color); // Draw a piece of a circle void DrawCircleSectorLines(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color); // Draw circle sector outline - void DrawCircleGradient(int centerX, int centerY, float radius, Color color1, Color color2); // Draw a gradient-filled circle + void DrawCircleGradient(int centerX, int centerY, float radius, Color inner, Color outer); // Draw a gradient-filled circle void DrawCircleV(Vector2 center, float radius, Color color); // Draw a color-filled circle (Vector version) void DrawCircleLines(int centerX, int centerY, float radius, Color color); // Draw circle outline void DrawCircleLinesV(Vector2 center, float radius, Color color); // Draw circle outline (Vector version) @@ -1029,26 +1039,27 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void DrawRectangleV(Vector2 position, Vector2 size, Color color); // Draw a color-filled rectangle (Vector version) void DrawRectangleRec(Rectangle rec, Color color); // Draw a color-filled rectangle void DrawRectanglePro(Rectangle rec, Vector2 origin, float rotation, Color color); // Draw a color-filled rectangle with pro parameters - void DrawRectangleGradientV(int posX, int posY, int width, int height, Color color1, Color color2);// Draw a vertical-gradient-filled rectangle - void DrawRectangleGradientH(int posX, int posY, int width, int height, Color color1, Color color2);// Draw a horizontal-gradient-filled rectangle - void DrawRectangleGradientEx(Rectangle rec, Color col1, Color col2, Color col3, Color col4); // Draw a gradient-filled rectangle with custom vertex colors + void DrawRectangleGradientV(int posX, int posY, int width, int height, Color top, Color bottom); // Draw a vertical-gradient-filled rectangle + void DrawRectangleGradientH(int posX, int posY, int width, int height, Color left, Color right); // Draw a horizontal-gradient-filled rectangle + void DrawRectangleGradientEx(Rectangle rec, Color topLeft, Color bottomLeft, Color topRight, Color bottomRight); // Draw a gradient-filled rectangle with custom vertex colors void DrawRectangleLines(int posX, int posY, int width, int height, Color color); // Draw rectangle outline void DrawRectangleLinesEx(Rectangle rec, float lineThick, Color color); // Draw rectangle outline with extended parameters void DrawRectangleRounded(Rectangle rec, float roundness, int segments, Color color); // Draw rectangle with rounded edges - void DrawRectangleRoundedLines(Rectangle rec, float roundness, int segments, float lineThick, Color color); // Draw rectangle with rounded edges outline + void DrawRectangleRoundedLines(Rectangle rec, float roundness, int segments, Color color); // Draw rectangle lines with rounded edges + void DrawRectangleRoundedLinesEx(Rectangle rec, float roundness, int segments, float lineThick, Color color); // Draw rectangle with rounded edges outline void DrawTriangle(Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw a color-filled triangle (vertex in counter-clockwise order!) void DrawTriangleLines(Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw triangle outline (vertex in counter-clockwise order!) - void DrawTriangleFan(Vector2 *points, int pointCount, Color color); // Draw a triangle fan defined by points (first vertex is the center) - void DrawTriangleStrip(Vector2 *points, int pointCount, Color color); // Draw a triangle strip defined by points + void DrawTriangleFan(const Vector2 *points, int pointCount, Color color); // Draw a triangle fan defined by points (first vertex is the center) + void DrawTriangleStrip(const Vector2 *points, int pointCount, Color color); // Draw a triangle strip defined by points void DrawPoly(Vector2 center, int sides, float radius, float rotation, Color color); // Draw a regular polygon (Vector version) void DrawPolyLines(Vector2 center, int sides, float radius, float rotation, Color color); // Draw a polygon outline of n sides void DrawPolyLinesEx(Vector2 center, int sides, float radius, float rotation, float lineThick, Color color); // Draw a polygon outline of n sides with extended parameters // Splines drawing functions - void DrawSplineLinear(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Linear, minimum 2 points - void DrawSplineBasis(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: B-Spline, minimum 4 points - void DrawSplineCatmullRom(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Catmull-Rom, minimum 4 points - void DrawSplineBezierQuadratic(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Quadratic Bezier, minimum 3 points (1 control point): [p1, c2, p3, c4...] - void DrawSplineBezierCubic(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Cubic Bezier, minimum 4 points (2 control points): [p1, c2, c3, p4, c5, c6...] + void DrawSplineLinear(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Linear, minimum 2 points + void DrawSplineBasis(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: B-Spline, minimum 4 points + void DrawSplineCatmullRom(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Catmull-Rom, minimum 4 points + void DrawSplineBezierQuadratic(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Quadratic Bezier, minimum 3 points (1 control point): [p1, c2, p3, c4...] + void DrawSplineBezierCubic(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Cubic Bezier, minimum 4 points (2 control points): [p1, c2, c3, p4, c5, c6...] void DrawSplineSegmentLinear(Vector2 p1, Vector2 p2, float thick, Color color); // Draw spline segment: Linear, 2 points void DrawSplineSegmentBasis(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float thick, Color color); // Draw spline segment: B-Spline, 4 points void DrawSplineSegmentCatmullRom(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float thick, Color color); // Draw spline segment: Catmull-Rom, 4 points @@ -1067,9 +1078,10 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI bool CheckCollisionPointRec(Vector2 point, Rectangle rec); // Check if point is inside rectangle bool CheckCollisionPointCircle(Vector2 point, Vector2 center, float radius); // Check if point is inside circle bool CheckCollisionPointTriangle(Vector2 point, Vector2 p1, Vector2 p2, Vector2 p3); // Check if point is inside a triangle - bool CheckCollisionPointPoly(Vector2 point, Vector2 *points, int pointCount); // Check if point is within a polygon described by array of vertices + bool CheckCollisionPointPoly(Vector2 point, const Vector2 *points, int pointCount); // Check if point is within a polygon described by array of vertices bool CheckCollisionLines(Vector2 startPos1, Vector2 endPos1, Vector2 startPos2, Vector2 endPos2, Vector2 *collisionPoint); // Check the collision between two lines defined by two points each, returns collision point by reference bool CheckCollisionPointLine(Vector2 point, Vector2 p1, Vector2 p2, int threshold); // Check if point belongs to line created between two points [p1] and [p2] with defined margin in pixels [threshold] + bool CheckCollisionCircleLine(Vector2 center, float radius, Vector2 p1, Vector2 p2); // Check if circle collides with a line created betweeen two points [p1] and [p2] Rectangle GetCollisionRec(Rectangle rec1, Rectangle rec2); // Get collision rectangle for two rectangles collision //------------------------------------------------------------------------------------ // Texture Loading and Drawing Functions (Module: textures) @@ -1080,6 +1092,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI Image LoadImageRaw(const char *fileName, int width, int height, int format, int headerSize); // Load image from RAW file data Image LoadImageSvg(const char *fileNameOrString, int width, int height); // Load image from SVG file data or string with specified size Image LoadImageAnim(const char *fileName, int *frames); // Load image sequence from file (frames appended to image.data) + Image LoadImageAnimFromMemory(const char *fileType, const unsigned char *fileData, int dataSize, int *frames); // Load image sequence from memory buffer Image LoadImageFromMemory(const char *fileType, const unsigned char *fileData, int dataSize); // Load image from memory buffer, fileType refers to extension: i.e. '.png' Image LoadImageFromTexture(Texture2D texture); // Load image from GPU texture data Image LoadImageFromScreen(void); // Load image from screen buffer and (screenshot) @@ -1101,6 +1114,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI // Image manipulation functions Image ImageCopy(Image image); // Create an image duplicate (useful for transformations) Image ImageFromImage(Image image, Rectangle rec); // Create an image from another image piece + Image ImageFromChannel(Image image, int selectedChannel); // Create an image from a selected channel of another image (GRAYSCALE) Image ImageText(const char *text, int fontSize, Color color); // Create an image from text (default font) Image ImageTextEx(Font font, const char *text, float fontSize, float spacing, Color tint); // Create an image from text (custom sprite font) void ImageFormat(Image *image, int newFormat); // Convert image data to desired format @@ -1111,6 +1125,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void ImageAlphaMask(Image *image, Image alphaMask); // Apply alpha mask to image void ImageAlphaPremultiply(Image *image); // Premultiply alpha channel void ImageBlurGaussian(Image *image, int blurSize); // Apply Gaussian blur using a box blur approximation + void ImageKernelConvolution(Image *image, const float *kernel, int kernelSize); // Apply custom square convolution kernel to image void ImageResize(Image *image, int newWidth, int newHeight); // Resize image (Bicubic scaling algorithm) void ImageResizeNN(Image *image, int newWidth,int newHeight); // Resize image (Nearest-Neighbor scaling algorithm) void ImageResizeCanvas(Image *image, int newWidth, int newHeight, int offsetX, int offsetY, Color fill); // Resize canvas and fill with color @@ -1140,6 +1155,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void ImageDrawPixelV(Image *dst, Vector2 position, Color color); // Draw pixel within an image (Vector version) void ImageDrawLine(Image *dst, int startPosX, int startPosY, int endPosX, int endPosY, Color color); // Draw line within an image void ImageDrawLineV(Image *dst, Vector2 start, Vector2 end, Color color); // Draw line within an image (Vector version) + void ImageDrawLineEx(Image *dst, Vector2 start, Vector2 end, int thick, Color color); // Draw a line defining thickness within an image void ImageDrawCircle(Image *dst, int centerX, int centerY, int radius, Color color); // Draw a filled circle within an image void ImageDrawCircleV(Image *dst, Vector2 center, int radius, Color color); // Draw a filled circle within an image (Vector version) void ImageDrawCircleLines(Image *dst, int centerX, int centerY, int radius, Color color); // Draw circle outline within an image @@ -1148,6 +1164,11 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void ImageDrawRectangleV(Image *dst, Vector2 position, Vector2 size, Color color); // Draw rectangle within an image (Vector version) void ImageDrawRectangleRec(Image *dst, Rectangle rec, Color color); // Draw rectangle within an image void ImageDrawRectangleLines(Image *dst, Rectangle rec, int thick, Color color); // Draw rectangle lines within an image + void ImageDrawTriangle(Image *dst, Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw triangle within an image + void ImageDrawTriangleEx(Image *dst, Vector2 v1, Vector2 v2, Vector2 v3, Color c1, Color c2, Color c3); // Draw triangle with interpolated colors within an image + void ImageDrawTriangleLines(Image *dst, Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw triangle outline within an image + void ImageDrawTriangleFan(Image *dst, Vector2 *points, int pointCount, Color color); // Draw a triangle fan defined by points within an image (first vertex is the center) + void ImageDrawTriangleStrip(Image *dst, Vector2 *points, int pointCount, Color color); // Draw a triangle strip defined by points within an image void ImageDraw(Image *dst, Image src, Rectangle srcRec, Rectangle dstRec, Color tint); // Draw a source image within a destination image (tint applied to source) void ImageDrawText(Image *dst, const char *text, int posX, int posY, int fontSize, Color color); // Draw text (using default font) within an image (destination) void ImageDrawTextEx(Image *dst, Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint); // Draw text (custom sprite font) within an image (destination) @@ -1175,8 +1196,9 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void DrawTexturePro(Texture2D texture, Rectangle source, Rectangle dest, Vector2 origin, float rotation, Color tint); // Draw a part of a texture defined by a rectangle with 'pro' parameters void DrawTextureNPatch(Texture2D texture, NPatchInfo nPatchInfo, Rectangle dest, Vector2 origin, float rotation, Color tint); // Draws a texture (or part of it) that stretches or shrinks nicely // Color/pixel related functions + bool ColorIsEqual(Color col1, Color col2); // Check if two colors are equal Color Fade(Color color, float alpha); // Get color with alpha applied, alpha goes from 0.0f to 1.0f - int ColorToInt(Color color); // Get hexadecimal value for a Color + int ColorToInt(Color color); // Get hexadecimal value for a Color (0xRRGGBBAA) Vector4 ColorNormalize(Color color); // Get Color normalized as float [0..1] Color ColorFromNormalized(Vector4 normalized); // Get Color from normalized values [0..1] Vector3 ColorToHSV(Color color); // Get HSV values for a Color, hue [0..360], saturation/value [0..1] @@ -1186,6 +1208,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI Color ColorContrast(Color color, float contrast); // Get color with contrast correction, contrast values between -1.0f and 1.0f Color ColorAlpha(Color color, float alpha); // Get color with alpha applied, alpha goes from 0.0f to 1.0f Color ColorAlphaBlend(Color dst, Color src, Color tint); // Get src alpha-blended into dst color with tint + Color ColorLerp(Color color1, Color color2, float factor); // Get color lerp interpolation between two colors, factor [0.0f..1.0f] Color GetColor(unsigned int hexValue); // Get Color structure from hexadecimal value Color GetPixelColor(void *srcPtr, int format); // Get Color from a source pixel pointer of certain format void SetPixelColor(void *dstPtr, Color color, int format); // Set color formatted into destination pixel pointer @@ -1196,7 +1219,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI // Font loading/unloading functions Font GetFontDefault(void); // Get the default Font Font LoadFont(const char *fileName); // Load font from file into GPU memory (VRAM) - Font LoadFontEx(const char *fileName, int fontSize, int *codepoints, int codepointCount); // Load font from file with extended parameters, use NULL for codepoints and 0 for codepointCount to load the default character set + Font LoadFontEx(const char *fileName, int fontSize, int *codepoints, int codepointCount); // Load font from file with extended parameters, use NULL for codepoints and 0 for codepointCount to load the default character set, font size is provided in pixels height Font LoadFontFromImage(Image image, Color key, int firstChar); // Load font from Image (XNA style) Font LoadFontFromMemory(const char *fileType, const unsigned char *fileData, int dataSize, int fontSize, int *codepoints, int codepointCount); // Load font from memory buffer, fileType refers to extension: i.e. '.ttf' bool IsFontReady(Font font); // Check if a font is ready @@ -1236,7 +1259,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI unsigned int TextLength(const char *text); // Get text length, checks for '\0' ending const char *TextFormat(const char *text, ...); // Text formatting with variables (sprintf() style) const char *TextSubtext(const char *text, int position, int length); // Get a piece of a text string - char *TextReplace(char *text, const char *replace, const char *by); // Replace text string (WARNING: memory must be freed!) + char *TextReplace(const char *text, const char *replace, const char *by); // Replace text string (WARNING: memory must be freed!) char *TextInsert(const char *text, const char *insert, int position); // Insert text in a position (WARNING: memory must be freed!) const char *TextJoin(const char **textList, int count, const char *delimiter); // Join text strings with delimiter const char **TextSplit(const char *text, char delimiter, int *count); // Split text into multiple strings @@ -1245,7 +1268,10 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI const char *TextToUpper(const char *text); // Get upper case version of provided string const char *TextToLower(const char *text); // Get lower case version of provided string const char *TextToPascal(const char *text); // Get Pascal case notation version of provided string + const char *TextToSnake(const char *text); // Get Snake case notation version of provided string + const char *TextToCamel(const char *text); // Get Camel case notation version of provided string int TextToInteger(const char *text); // Get integer value from text (negative values not supported) + float TextToFloat(const char *text); // Get float value from text (negative values not supported) //------------------------------------------------------------------------------------ // Basic 3d Shapes Drawing Functions (Module: models) //------------------------------------------------------------------------------------ @@ -1254,7 +1280,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void DrawPoint3D(Vector3 position, Color color); // Draw a point in 3D space, actually a small line void DrawCircle3D(Vector3 center, float radius, Vector3 rotationAxis, float rotationAngle, Color color); // Draw a circle in 3D world space void DrawTriangle3D(Vector3 v1, Vector3 v2, Vector3 v3, Color color); // Draw a color-filled triangle (vertex in counter-clockwise order!) - void DrawTriangleStrip3D(Vector3 *points, int pointCount, Color color); // Draw a triangle strip defined by points + void DrawTriangleStrip3D(const Vector3 *points, int pointCount, Color color); // Draw a triangle strip defined by points void DrawCube(Vector3 position, float width, float height, float length, Color color); // Draw cube void DrawCubeV(Vector3 position, Vector3 size, Color color); // Draw cube (Vector version) void DrawCubeWires(Vector3 position, float width, float height, float length, Color color); // Draw cube wires @@ -1285,8 +1311,10 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void DrawModelEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint); // Draw a model with extended parameters void DrawModelWires(Model model, Vector3 position, float scale, Color tint); // Draw a model wires (with texture if set) void DrawModelWiresEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint); // Draw a model wires (with texture if set) with extended parameters + void DrawModelPoints(Model model, Vector3 position, float scale, Color tint); // Draw a model as points + void DrawModelPointsEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint); // Draw a model as points with extended parameters void DrawBoundingBox(BoundingBox box, Color color); // Draw bounding box (wires) - void DrawBillboard(Camera camera, Texture2D texture, Vector3 position, float size, Color tint); // Draw a billboard texture + void DrawBillboard(Camera camera, Texture2D texture, Vector3 position, float scale, Color tint); // Draw a billboard texture void DrawBillboardRec(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector2 size, Color tint); // Draw a billboard texture defined by source void DrawBillboardPro(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector3 up, Vector2 size, Vector2 origin, float rotation, Color tint); // Draw a billboard texture defined by source and rotation // Mesh management functions @@ -1295,9 +1323,10 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void UnloadMesh(Mesh mesh); // Unload mesh data from CPU and GPU void DrawMesh(Mesh mesh, Material material, Matrix transform); // Draw a 3d mesh with material and transform void DrawMeshInstanced(Mesh mesh, Material material, const Matrix *transforms, int instances); // Draw multiple mesh instances with material and different transforms - bool ExportMesh(Mesh mesh, const char *fileName); // Export mesh data to file, returns true on success BoundingBox GetMeshBoundingBox(Mesh mesh); // Compute mesh bounding box limits void GenMeshTangents(Mesh *mesh); // Compute mesh tangents + bool ExportMesh(Mesh mesh, const char *fileName); // Export mesh data to file, returns true on success + bool ExportMeshAsCode(Mesh mesh, const char *fileName); // Export mesh as code file (.h) defining multiple arrays of vertex attributes // Mesh generation functions Mesh GenMeshPoly(int sides, float radius); // Generate polygonal mesh Mesh GenMeshPlane(float width, float length, int resX, int resZ); // Generate plane mesh (with subdivisions) @@ -1323,6 +1352,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void UnloadModelAnimation(ModelAnimation anim); // Unload animation data void UnloadModelAnimations(ModelAnimation *animations, int animCount); // Unload animation array data bool IsModelAnimationValid(Model model, ModelAnimation anim); // Check model animation skeleton match + void UpdateModelAnimationBoneMatrices(Model model, ModelAnimation anim, int frame); // Update model animation mesh bone matrices // Collision detection functions bool CheckCollisionSpheres(Vector3 center1, float radius1, Vector3 center2, float radius2); // Check collision between two spheres bool CheckCollisionBoxes(BoundingBox box1, BoundingBox box2); // Check collision between two bounding boxes @@ -1366,7 +1396,7 @@ typedef void (*AudioCallback)(void *bufferData, unsigned int frames); void SetSoundPitch(Sound sound, float pitch); // Set pitch for a sound (1.0 is base level) void SetSoundPan(Sound sound, float pan); // Set pan for a sound (0.5 is center) Wave WaveCopy(Wave wave); // Copy a wave to a new wave - void WaveCrop(Wave *wave, int initSample, int finalSample); // Crop a wave to defined samples range + void WaveCrop(Wave *wave, int initFrame, int finalFrame); // Crop a wave to defined frames range void WaveFormat(Wave *wave, int sampleRate, int sampleSize, int channels); // Convert wave data to desired format float *LoadWaveSamples(Wave wave); // Load samples data from wave as a 32bit float data array void UnloadWaveSamples(float *samples); // Unload samples data loaded with LoadWaveSamples() @@ -1403,7 +1433,7 @@ typedef void (*AudioCallback)(void *bufferData, unsigned int frames); void SetAudioStreamPan(AudioStream stream, float pan); // Set pan for audio stream (0.5 is centered) void SetAudioStreamBufferSizeDefault(int size); // Default size for new audio streams void SetAudioStreamCallback(AudioStream stream, AudioCallback callback); // Audio thread callback to request new data - void AttachAudioStreamProcessor(AudioStream stream, AudioCallback processor); // Attach audio stream processor to stream, receives the samples as s + void AttachAudioStreamProcessor(AudioStream stream, AudioCallback processor); // Attach audio stream processor to stream, receives the samples as 'float' void DetachAudioStreamProcessor(AudioStream stream, AudioCallback processor); // Detach audio stream processor from stream - void AttachAudioMixedProcessor(AudioCallback processor); // Attach audio stream processor to the entire audio pipeline, receives the samples as s + void AttachAudioMixedProcessor(AudioCallback processor); // Attach audio stream processor to the entire audio pipeline, receives the samples as 'float' void DetachAudioMixedProcessor(AudioCallback processor); // Detach audio stream processor from the entire audio pipeline \ No newline at end of file diff --git a/raylib/raymath.h.modified b/raylib/raymath.h.modified index f13964b..dc0dabf 100644 --- a/raylib/raymath.h.modified +++ b/raylib/raymath.h.modified @@ -29,7 +29,7 @@ * * LICENSE: zlib/libpng * -* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* Copyright (c) 2015-2024 Ramon Santamaria (@raysan5) * * This software is provided "as-is", without any express or implied warranty. In no event * will the authors be held liable for any damages arising from the use of this software. @@ -99,14 +99,21 @@ inline /* Functions may be inlined or external definition used*/ Vector2 Vector2 inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Normalize(Vector2 v);// Transforms a Vector2 by a given Matrix inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Transform(Vector2 v, Matrix mat);// Calculate linear interpolation between two vectors inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Lerp(Vector2 v1, Vector2 v2, float amount);// Calculate reflected vector to normal -inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Reflect(Vector2 v, Vector2 normal);// Rotate vector by angle +inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Reflect(Vector2 v, Vector2 normal);// Get min value for each pair of components +inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Min(Vector2 v1, Vector2 v2);// Get max value for each pair of components +inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Max(Vector2 v1, Vector2 v2);// Rotate vector by angle inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Rotate(Vector2 v, float angle);// Move Vector towards target inline /* Functions may be inlined or external definition used*/ Vector2 Vector2MoveTowards(Vector2 v, Vector2 target, float maxDistance);// Invert the given vector inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Invert(Vector2 v);// Clamp the components of the vector between // min and max values specified by the given vectors inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Clamp(Vector2 v, Vector2 min, Vector2 max);// Clamp the magnitude of the vector between two min and max values inline /* Functions may be inlined or external definition used*/ Vector2 Vector2ClampValue(Vector2 v, float min, float max);// Check whether two given vectors are almost equal -inline /* Functions may be inlined or external definition used*/ int Vector2Equals(Vector2 p, Vector2 q);//---------------------------------------------------------------------------------- +inline /* Functions may be inlined or external definition used*/ int Vector2Equals(Vector2 p, Vector2 q);// Compute the direction of a refracted ray +// v: normalized direction of the incoming ray +// n: normalized normal vector of the interface of two optical media +// r: ratio of the refractive index of the medium from where the ray comes +// to the refractive index of the medium on the other side of the surface +inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Refract(Vector2 v, Vector2 n, float r);//---------------------------------------------------------------------------------- // Module Functions Definition - Vector3 math //---------------------------------------------------------------------------------- // Vector with components value 0.0f @@ -136,8 +143,11 @@ inline /* Functions may be inlined or external definition used*/ Vector3 Vector3 inline /* Functions may be inlined or external definition used*/ void Vector3OrthoNormalize(Vector3 *v1, Vector3 *v2);// Transforms a Vector3 by a given Matrix inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Transform(Vector3 v, Matrix mat);// Transform a vector by quaternion rotation inline /* Functions may be inlined or external definition used*/ Vector3 Vector3RotateByQuaternion(Vector3 v, Quaternion q);// Rotates a vector around an axis -inline /* Functions may be inlined or external definition used*/ Vector3 Vector3RotateByAxisAngle(Vector3 v, Vector3 axis, float angle);// Calculate linear interpolation between two vectors -inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Lerp(Vector3 v1, Vector3 v2, float amount);// Calculate reflected vector to normal +inline /* Functions may be inlined or external definition used*/ Vector3 Vector3RotateByAxisAngle(Vector3 v, Vector3 axis, float angle);// Move Vector towards target +inline /* Functions may be inlined or external definition used*/ Vector3 Vector3MoveTowards(Vector3 v, Vector3 target, float maxDistance);// Calculate linear interpolation between two vectors +inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Lerp(Vector3 v1, Vector3 v2, float amount);// Calculate cubic hermite interpolation between two vectors and their tangents +// as described in the GLTF 2.0 specification: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#interpolation-cubic +inline /* Functions may be inlined or external definition used*/ Vector3 Vector3CubicHermite(Vector3 v1, Vector3 tangent1, Vector3 v2, Vector3 tangent2, float amount);// Calculate reflected vector to normal inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Reflect(Vector3 v, Vector3 normal);// Get min value for each pair of components inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Min(Vector3 v1, Vector3 v2);// Get max value for each pair of components inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Max(Vector3 v1, Vector3 v2);// Compute barycenter coordinates (u, v, w) for point p with respect to triangle (a, b, c) @@ -156,6 +166,21 @@ inline /* Functions may be inlined or external definition used*/ int Vector3Equa // r: ratio of the refractive index of the medium from where the ray comes // to the refractive index of the medium on the other side of the surface inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Refract(Vector3 v, Vector3 n, float r);//---------------------------------------------------------------------------------- +// Module Functions Definition - Vector4 math +//---------------------------------------------------------------------------------- +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Zero(void);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4One(void);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Add(Vector4 v1, Vector4 v2);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4AddValue(Vector4 v, float add);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Subtract(Vector4 v1, Vector4 v2);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4SubtractValue(Vector4 v, float add);inline /* Functions may be inlined or external definition used*/ float Vector4Length(Vector4 v);inline /* Functions may be inlined or external definition used*/ float Vector4LengthSqr(Vector4 v);inline /* Functions may be inlined or external definition used*/ float Vector4DotProduct(Vector4 v1, Vector4 v2);// Calculate distance between two vectors +inline /* Functions may be inlined or external definition used*/ float Vector4Distance(Vector4 v1, Vector4 v2);// Calculate square distance between two vectors +inline /* Functions may be inlined or external definition used*/ float Vector4DistanceSqr(Vector4 v1, Vector4 v2);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Scale(Vector4 v, float scale);// Multiply vector by vector +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Multiply(Vector4 v1, Vector4 v2);// Negate vector +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Negate(Vector4 v);// Divide vector by vector +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Divide(Vector4 v1, Vector4 v2);// Normalize provided vector +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Normalize(Vector4 v);// Get min value for each pair of components +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Min(Vector4 v1, Vector4 v2);// Get max value for each pair of components +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Max(Vector4 v1, Vector4 v2);// Calculate linear interpolation between two vectors +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Lerp(Vector4 v1, Vector4 v2, float amount);// Move Vector towards target +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4MoveTowards(Vector4 v, Vector4 target, float maxDistance);// Invert the given vector +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Invert(Vector4 v);// Check whether two given vectors are almost equal +inline /* Functions may be inlined or external definition used*/ int Vector4Equals(Vector4 p, Vector4 q);//---------------------------------------------------------------------------------- // Module Functions Definition - Matrix math //---------------------------------------------------------------------------------- // Compute matrix determinant @@ -182,7 +207,7 @@ inline /* Functions may be inlined or external definition used*/ Matrix MatrixRo // NOTE: Angle must be provided in radians inline /* Functions may be inlined or external definition used*/ Matrix MatrixRotateZYX(Vector3 angle);// Get scaling matrix inline /* Functions may be inlined or external definition used*/ Matrix MatrixScale(float x, float y, float z);// Get perspective projection matrix -inline /* Functions may be inlined or external definition used*/ Matrix MatrixFrustum(double left, double right, double bottom, double top, double near, double far);// Get perspective projection matrix +inline /* Functions may be inlined or external definition used*/ Matrix MatrixFrustum(double left, double right, double bottom, double top, double nearPlane, double farPlane);// Get perspective projection matrix // NOTE: Fovy angle must be provided in radians inline /* Functions may be inlined or external definition used*/ Matrix MatrixPerspective(double fovY, double aspect, double nearPlane, double farPlane);// Get orthographic projection matrix inline /* Functions may be inlined or external definition used*/ Matrix MatrixOrtho(double left, double right, double bottom, double top, double nearPlane, double farPlane);// Get camera look-at matrix (view matrix) @@ -204,7 +229,9 @@ inline /* Functions may be inlined or external definition used*/ Quaternion Quat inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionDivide(Quaternion q1, Quaternion q2);// Calculate linear interpolation between two quaternions inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionLerp(Quaternion q1, Quaternion q2, float amount);// Calculate slerp-optimized interpolation between two quaternions inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionNlerp(Quaternion q1, Quaternion q2, float amount);// Calculates spherical linear interpolation between two quaternions -inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionSlerp(Quaternion q1, Quaternion q2, float amount);// Calculate quaternion based on the rotation from one vector to another +inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionSlerp(Quaternion q1, Quaternion q2, float amount);// Calculate quaternion cubic spline interpolation using Cubic Hermite Spline algorithm +// as described in the GLTF 2.0 specification: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#interpolation-cubic +inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionCubicHermiteSpline(Quaternion q1, Quaternion outTangent1, Quaternion q2, Quaternion inTangent2, float t);// Calculate quaternion based on the rotation from one vector to another inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionFromVector3ToVector3(Vector3 from, Vector3 to);// Get a quaternion for a given rotation matrix inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionFromMatrix(Matrix mat);// Get a matrix for a given quaternion inline /* Functions may be inlined or external definition used*/ Matrix QuaternionToMatrix(Quaternion q);// Get rotation quaternion for an angle and axis @@ -216,4 +243,5 @@ inline /* Functions may be inlined or external definition used*/ Quaternion Quat // NOTE: Angles are returned in a Vector3 struct in radians inline /* Functions may be inlined or external definition used*/ Vector3 QuaternionToEuler(Quaternion q);// Transform a quaternion given a transformation matrix inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionTransform(Quaternion q, Matrix mat);// Check whether two given quaternions are almost equal -inline /* Functions may be inlined or external definition used*/ int QuaternionEquals(Quaternion p, Quaternion q); \ No newline at end of file +inline /* Functions may be inlined or external definition used*/ int QuaternionEquals(Quaternion p, Quaternion q);// Decompose a transformation matrix into its rotational, translational and scaling components +inline /* Functions may be inlined or external definition used*/ void MatrixDecompose(Matrix mat, Vector3 *translation, Quaternion *rotation, Vector3 *scale); \ No newline at end of file diff --git a/raylib/rlgl.h.modified b/raylib/rlgl.h.modified index 8af04cf..2e34841 100644 --- a/raylib/rlgl.h.modified +++ b/raylib/rlgl.h.modified @@ -1,6 +1,6 @@ /********************************************************************************************** * -* rlgl v4.5 - A multi-OpenGL abstraction layer with an immediate-mode style API +* rlgl v5.0 - A multi-OpenGL abstraction layer with an immediate-mode style API * * DESCRIPTION: * An abstraction layer for multiple OpenGL versions (1.1, 2.1, 3.3 Core, 4.3 Core, ES 2.0) @@ -62,18 +62,21 @@ * When loading a shader, the following vertex attributes and uniform * location names are tried to be set automatically: * -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_POSITION "vertexPosition" // Bound by default to shader location: 0 -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD "vertexTexCoord" // Bound by default to shader location: 1 -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_NORMAL "vertexNormal" // Bound by default to shader location: 2 -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR "vertexColor" // Bound by default to shader location: 3 -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TANGENT "vertexTangent" // Bound by default to shader location: 4 -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD2 "vertexTexCoord2" // Bound by default to shader location: 5 +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_POSITION "vertexPosition" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD "vertexTexCoord" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_NORMAL "vertexNormal" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_NORMAL +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR "vertexColor" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_COLOR +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TANGENT "vertexTangent" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TANGENT +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD2 "vertexTexCoord2" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD2 +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_BONEIDS "vertexBoneIds" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEIDS +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_BONEWEIGHTS "vertexBoneWeights" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEWEIGHTS * #define RL_DEFAULT_SHADER_UNIFORM_NAME_MVP "mvp" // model-view-projection matrix * #define RL_DEFAULT_SHADER_UNIFORM_NAME_VIEW "matView" // view matrix * #define RL_DEFAULT_SHADER_UNIFORM_NAME_PROJECTION "matProjection" // projection matrix * #define RL_DEFAULT_SHADER_UNIFORM_NAME_MODEL "matModel" // model matrix -* #define RL_DEFAULT_SHADER_UNIFORM_NAME_NORMAL "matNormal" // normal matrix (transpose(inverse(matModelView)) +* #define RL_DEFAULT_SHADER_UNIFORM_NAME_NORMAL "matNormal" // normal matrix (transpose(inverse(matModelView))) * #define RL_DEFAULT_SHADER_UNIFORM_NAME_COLOR "colDiffuse" // color diffuse (base tint color, multiplied by texture color) +* #define RL_DEFAULT_SHADER_UNIFORM_NAME_BONE_MATRICES "boneMatrices" // bone matrices * #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE0 "texture0" // texture0 (texture slot active 0) * #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE1 "texture1" // texture1 (texture slot active 1) * #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE2 "texture2" // texture2 (texture slot active 2) @@ -85,7 +88,7 @@ * * LICENSE: zlib/libpng * -* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* Copyright (c) 2014-2024 Ramon Santamaria (@raysan5) * * This software is provided "as-is", without any express or implied warranty. In no event * will the authors be held liable for any damages arising from the use of this software. @@ -103,8 +106,9 @@ * 3. This notice may not be removed or altered from any source distribution. * **********************************************************************************************/ -// Function specifiers in case library is build/used as a shared library (Windows) +// Function specifiers in case library is build/used as a shared library // NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll +// NOTE: visibility(default) attribute makes symbols "visible" when compiled with -fvisibility=hidden // Function specifiers definition // Support TRACELOG macros // Allow custom memory allocators @@ -133,6 +137,7 @@ // GL Shader type // GL blending factors // GL blending functions/equations +// Default shader vertex attribute locations //---------------------------------------------------------------------------------- // Types and Structures Definition //---------------------------------------------------------------------------------- @@ -141,10 +146,11 @@ typedef struct rlVertexBuffer { int elementCount; // Number of elements in the buffer (QUADS) float *vertices; // Vertex position (XYZ - 3 components per vertex) (shader-location = 0) float *texcoords; // Vertex texture coordinates (UV - 2 components per vertex) (shader-location = 1) + float *normals; // Vertex normal (XYZ - 3 components per vertex) (shader-location = 2) unsigned char *colors; // Vertex colors (RGBA - 4 components per vertex) (shader-location = 3) unsigned int *indices; // Vertex indices (in case vertex data comes indexed) (6 indices per quad) unsigned int vaoId; // OpenGL Vertex Array Object id - unsigned int vboId[4]; // OpenGL Vertex Buffer Objects id (4 types of vertex data) + unsigned int vboId[5]; // OpenGL Vertex Buffer Objects id (5 types of vertex data) } rlVertexBuffer; // Draw call type // NOTE: Only texture changes register a new draw, other state-change-related elements are not @@ -279,6 +285,10 @@ typedef enum { RL_SHADER_UNIFORM_IVEC2, // Shader uniform type: ivec2 (2 int) RL_SHADER_UNIFORM_IVEC3, // Shader uniform type: ivec3 (3 int) RL_SHADER_UNIFORM_IVEC4, // Shader uniform type: ivec4 (4 int) + RL_SHADER_UNIFORM_UINT, // Shader uniform type: unsigned int + RL_SHADER_UNIFORM_UIVEC2, // Shader uniform type: uivec2 (2 unsigned int) + RL_SHADER_UNIFORM_UIVEC3, // Shader uniform type: uivec3 (3 unsigned int) + RL_SHADER_UNIFORM_UIVEC4, // Shader uniform type: uivec4 (4 unsigned int) RL_SHADER_UNIFORM_SAMPLER2D // Shader uniform type: sampler2d } rlShaderUniformDataType; // Shader attribute data types @@ -332,6 +342,9 @@ typedef enum { void rlFrustum(double left, double right, double bottom, double top, double znear, double zfar); void rlOrtho(double left, double right, double bottom, double top, double znear, double zfar); void rlViewport(int x, int y, int width, int height); // Set the viewport area + void rlSetClipPlanes(double nearPlane, double farPlane); // Set clip planes distances + double rlGetCullDistanceNear(void); // Get cull plane distance near + double rlGetCullDistanceFar(void); // Get cull plane distance far //------------------------------------------------------------------------------------ // Functions Declaration - Vertex level operations //------------------------------------------------------------------------------------ @@ -355,10 +368,10 @@ typedef enum { void rlDisableVertexArray(void); // Disable vertex array (VAO, if supported) void rlEnableVertexBuffer(unsigned int id); // Enable vertex buffer (VBO) void rlDisableVertexBuffer(void); // Disable vertex buffer (VBO) - void rlEnableVertexBufferElement(unsigned int id);// Enable vertex buffer element (VBO element) + void rlEnableVertexBufferElement(unsigned int id); // Enable vertex buffer element (VBO element) void rlDisableVertexBufferElement(void); // Disable vertex buffer element (VBO element) void rlEnableVertexAttribute(unsigned int index); // Enable vertex attribute index - void rlDisableVertexAttribute(unsigned int index);// Disable vertex attribute index + void rlDisableVertexAttribute(unsigned int index); // Disable vertex attribute index // Textures state void rlActiveTextureSlot(int slot); // Select and active a texture slot void rlEnableTexture(unsigned int id); // Enable texture @@ -373,8 +386,10 @@ typedef enum { // Framebuffer state void rlEnableFramebuffer(unsigned int id); // Enable render texture (fbo) void rlDisableFramebuffer(void); // Disable render texture (fbo), return to default framebuffer + unsigned int rlGetActiveFramebuffer(void); // Get the currently active render texture (fbo), 0 for default framebuffer void rlActiveDrawBuffers(int count); // Activate multiple draw color buffers void rlBlitFramebuffer(int srcX, int srcY, int srcWidth, int srcHeight, int dstX, int dstY, int dstWidth, int dstHeight, int bufferMask); // Blit active framebuffer to main framebuffer + void rlBindFramebuffer(unsigned int target, unsigned int framebuffer); // Bind framebuffer (FBO) // General render state void rlEnableColorBlend(void); // Enable color blending void rlDisableColorBlend(void); // Disable color blending @@ -384,13 +399,14 @@ typedef enum { void rlDisableDepthMask(void); // Disable depth write void rlEnableBackfaceCulling(void); // Enable backface culling void rlDisableBackfaceCulling(void); // Disable backface culling + void rlColorMask(bool r, bool g, bool b, bool a); // Color mask control void rlSetCullFace(int mode); // Set face culling mode void rlEnableScissorTest(void); // Enable scissor test void rlDisableScissorTest(void); // Disable scissor test void rlScissor(int x, int y, int width, int height); // Scissor test void rlEnableWireMode(void); // Enable wire mode - void rlEnablePointMode(void); // Enable point mode - void rlDisableWireMode(void); // Disable wire mode ( and point ) maybe rename + void rlEnablePointMode(void); // Enable point mode + void rlDisableWireMode(void); // Disable wire (and point) mode void rlSetLineWidth(float width); // Set the line drawing width float rlGetLineWidth(void); // Get the line drawing width void rlEnableSmoothLines(void); // Enable line aliasing @@ -432,24 +448,24 @@ typedef enum { //------------------------------------------------------------------------------------------------------------------------ // Vertex buffers management unsigned int rlLoadVertexArray(void); // Load vertex array (vao) if supported - unsigned int rlLoadVertexBuffer(const void *buffer, int size, bool dynamic); // Load a vertex buffer attribute - unsigned int rlLoadVertexBufferElement(const void *buffer, int size, bool dynamic); // Load a new attributes element buffer - void rlUpdateVertexBuffer(unsigned int bufferId, const void *data, int dataSize, int offset); // Update GPU buffer with new data - void rlUpdateVertexBufferElements(unsigned int id, const void *data, int dataSize, int offset); // Update vertex buffer elements with new data - void rlUnloadVertexArray(unsigned int vaoId); - void rlUnloadVertexBuffer(unsigned int vboId); - void rlSetVertexAttribute(unsigned int index, int compSize, int type, bool normalized, int stride, const void *pointer); - void rlSetVertexAttributeDivisor(unsigned int index, int divisor); - void rlSetVertexAttributeDefault(int locIndex, const void *value, int attribType, int count); // Set vertex attribute default value - void rlDrawVertexArray(int offset, int count); - void rlDrawVertexArrayElements(int offset, int count, const void *buffer); - void rlDrawVertexArrayInstanced(int offset, int count, int instances); - void rlDrawVertexArrayElementsInstanced(int offset, int count, const void *buffer, int instances); + unsigned int rlLoadVertexBuffer(const void *buffer, int size, bool dynamic); // Load a vertex buffer object + unsigned int rlLoadVertexBufferElement(const void *buffer, int size, bool dynamic); // Load vertex buffer elements object + void rlUpdateVertexBuffer(unsigned int bufferId, const void *data, int dataSize, int offset); // Update vertex buffer object data on GPU buffer + void rlUpdateVertexBufferElements(unsigned int id, const void *data, int dataSize, int offset); // Update vertex buffer elements data on GPU buffer + void rlUnloadVertexArray(unsigned int vaoId); // Unload vertex array (vao) + void rlUnloadVertexBuffer(unsigned int vboId); // Unload vertex buffer object + void rlSetVertexAttribute(unsigned int index, int compSize, int type, bool normalized, int stride, int offset); // Set vertex attribute data configuration + void rlSetVertexAttributeDivisor(unsigned int index, int divisor); // Set vertex attribute data divisor + void rlSetVertexAttributeDefault(int locIndex, const void *value, int attribType, int count); // Set vertex attribute default value, when attribute to provided + void rlDrawVertexArray(int offset, int count); // Draw vertex array (currently active vao) + void rlDrawVertexArrayElements(int offset, int count, const void *buffer); // Draw vertex array elements + void rlDrawVertexArrayInstanced(int offset, int count, int instances); // Draw vertex array (currently active vao) with instancing + void rlDrawVertexArrayElementsInstanced(int offset, int count, const void *buffer, int instances); // Draw vertex array elements with instancing // Textures management - unsigned int rlLoadTexture(const void *data, int width, int height, int format, int mipmapCount); // Load texture in GPU + unsigned int rlLoadTexture(const void *data, int width, int height, int format, int mipmapCount); // Load texture data unsigned int rlLoadTextureDepth(int width, int height, bool useRenderBuffer); // Load depth texture/renderbuffer (to be attached to fbo) - unsigned int rlLoadTextureCubemap(const void *data, int size, int format); // Load texture cubemap - void rlUpdateTexture(unsigned int id, int offsetX, int offsetY, int width, int height, int format, const void *data); // Update GPU texture with new data + unsigned int rlLoadTextureCubemap(const void *data, int size, int format); // Load texture cubemap data + void rlUpdateTexture(unsigned int id, int offsetX, int offsetY, int width, int height, int format, const void *data); // Update texture with new data on GPU void rlGetGlTextureFormats(int format, unsigned int *glInternalFormat, unsigned int *glFormat, unsigned int *glType); // Get OpenGL internal formats const char *rlGetPixelFormatName(unsigned int format); // Get name string for pixel format void rlUnloadTexture(unsigned int id); // Unload texture from GPU memory @@ -457,7 +473,7 @@ typedef enum { void *rlReadTexturePixels(unsigned int id, int width, int height, int format); // Read texture pixel data unsigned char *rlReadScreenPixels(int width, int height); // Read screen pixel data (color buffer) // Framebuffer management (fbo) - unsigned int rlLoadFramebuffer(int width, int height); // Load an empty framebuffer + unsigned int rlLoadFramebuffer(void); // Load an empty framebuffer void rlFramebufferAttach(unsigned int fboId, unsigned int texId, int attachType, int texType, int mipLevel); // Attach texture/renderbuffer to a framebuffer bool rlFramebufferComplete(unsigned int id); // Verify framebuffer is complete void rlUnloadFramebuffer(unsigned int id); // Delete framebuffer from GPU @@ -470,6 +486,7 @@ typedef enum { int rlGetLocationAttrib(unsigned int shaderId, const char *attribName); // Get shader location attribute void rlSetUniform(int locIndex, const void *value, int uniformType, int count); // Set shader value uniform void rlSetUniformMatrix(int locIndex, Matrix mat); // Set shader value matrix + void rlSetUniformMatrices(int locIndex, const Matrix *mat, int count); // Set shader value matrices void rlSetUniformSampler(int locIndex, unsigned int textureId); // Set shader value sampler void rlSetShader(unsigned int id, int *locs); // Set shader currently active (id and locations) // Compute shader management From 6b7cffe86f1cbd60ab703bb1739ade2acf900c74 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 20 Sep 2024 18:40:56 +0100 Subject: [PATCH 004/122] add libxkbcommon-dev --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a166094..ebc2d8b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -186,7 +186,7 @@ jobs: - name: Build raylib run: | sudo apt update - sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev + sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev cd raylib-c mkdir build cd build From 0a0ceea1dd17afdbc73d590a9f3fa274da1faa91 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 20 Sep 2024 18:48:53 +0100 Subject: [PATCH 005/122] sdl --- .github/workflows/build.yml | 61 ++++++++++++++++++++++++++++++++++--- 1 file changed, 57 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ebc2d8b..4887760 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -161,7 +161,59 @@ jobs: # - build-linux: +# build-linux: +# runs-on: ubuntu-20.04 +# strategy: +# # You can use PyPy versions in python-version. +# # For example, pypy2 and pypy3 +# matrix: +# python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13.0-beta - 3.13.0', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] +# steps: +# # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it +# - uses: actions/checkout@v2 +# with: +# submodules: recursive +# +# - name: Setup Python +# uses: actions/setup-python@v2.2.2 +# with: +# # Version range or exact version of a Python version to use, using SemVer's version range syntax. +# python-version: ${{ matrix.python-version }} +# # The target architecture (x86, x64) of the Python interpreter. +# architecture: x64 +# +# # Runs a set of commands using the runners shell +# - name: Build raylib +# run: | +# sudo apt update +# sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev +# cd raylib-c +# mkdir build +# cd build +# cmake -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release -DOpenGL_GL_PREFERENCE=GLVND .. +# make -j2 +# sudo make install +# - name: Copy extras +# run: | +# sudo cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ +# sudo cp physac/src/physac.h /usr/local/include/ +# sudo cp raygui/src/raygui.h /usr/local/include/ +# - name: Build raylib-python-cffi +# run: | +# python -m pip install --upgrade pip +# pip3 install "cffi>=1.17.1" +# pip3 install wheel +# pip3 install setuptools +# python setup.py bdist_wheel --plat-name manylinux2014_x86_64 +# +# - name: Upload build Artifact wheel +# uses: actions/upload-artifact@v3.2.1 +# with: +# name: wheel +# path: dist/* + + + build-linux-sdl: runs-on: ubuntu-20.04 strategy: # You can use PyPy versions in python-version. @@ -186,11 +238,11 @@ jobs: - name: Build raylib run: | sudo apt update - sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev + sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev libsdl2-dev cd raylib-c mkdir build cd build - cmake -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release -DOpenGL_GL_PREFERENCE=GLVND .. + cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release -DOpenGL_GL_PREFERENCE=GLVND .. make -j2 sudo make install - name: Copy extras @@ -213,6 +265,7 @@ jobs: path: dist/* + # build-rpi: # runs-on: rpi # steps: @@ -319,7 +372,7 @@ jobs: - name: Build raylib run: | sudo apt update - sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev + sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev cd raylib-c mkdir build cd build From dd9916a8f887d8f8ec1d867e7d7d431fda5dbc94 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 20 Sep 2024 19:05:34 +0100 Subject: [PATCH 006/122] sdl dl --- .github/workflows/build.yml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4887760..44f03a4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -234,11 +234,21 @@ jobs: # The target architecture (x86, x64) of the Python interpreter. architecture: x64 + - name: Build SDL + run: | + wget https://github.com/libsdl-org/SDL/archive/refs/tags/release-2.30.7.tar.gz + tar xvfz release-2.30.7.tar.gz + mkdir build + cd build + cmake ../SDL-release-2.30.7 + cmake --build . + cmake --install . + # Runs a set of commands using the runners shell - name: Build raylib run: | sudo apt update - sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev libsdl2-dev + sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev cd raylib-c mkdir build cd build From 0bf42b291ec23c3d65970bf7851aad136f42c34a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 20 Sep 2024 19:10:51 +0100 Subject: [PATCH 007/122] sdl dl --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 44f03a4..c90d942 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -242,7 +242,7 @@ jobs: cd build cmake ../SDL-release-2.30.7 cmake --build . - cmake --install . + sudo cmake --install . # Runs a set of commands using the runners shell - name: Build raylib From dad06219c3de54c3b5b9f33823ddb5a6f8a90e91 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 20 Sep 2024 19:30:14 +0100 Subject: [PATCH 008/122] sdl2 link flags --- raylib/build.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/raylib/build.py b/raylib/build.py index ebe6d99..027f7b9 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -168,9 +168,9 @@ def build_unix(): else: #platform.system() == "Linux": print("BUILDING FOR LINUX") extra_link_args = get_lib_flags() + [ '-lm', '-lpthread', '-lGL', - '-lrt', '-lm', '-ldl', '-lX11', '-lpthread', '-latomic'] + '-lrt', '-lm', '-ldl', '-lX11', '-lpthread', '-latomic', '-lSDL2'] extra_compile_args = ["-Wno-incompatible-pointer-types", "-D_CFFI_NO_LIMITED_API"] - libraries = ['GL', 'm', 'pthread', 'dl', 'rt', 'X11', 'atomic'] + libraries = ['GL', 'm', 'pthread', 'dl', 'rt', 'X11', 'atomic', 'SDL2'] ffibuilder.set_source("raylib._raylib_cffi", ffi_includes, From a9f2884f39057b6cbf137c290df0dad657c525d7 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 24 Sep 2024 19:00:36 +0100 Subject: [PATCH 009/122] remove glfw header --- .github/workflows/build.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c90d942..eca8bfe 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -257,7 +257,6 @@ jobs: sudo make install - name: Copy extras run: | - sudo cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ sudo cp physac/src/physac.h /usr/local/include/ sudo cp raygui/src/raygui.h /usr/local/include/ - name: Build raylib-python-cffi From 216c4696f2f351eccf66368985eb1fb4f1e9763c Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 24 Sep 2024 23:23:30 +0100 Subject: [PATCH 010/122] try static sdl build --- .github/workflows/build.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index eca8bfe..ba74b33 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -4,9 +4,7 @@ name: Build on: # Triggers the workflow on push or pull request events but only for the master branch push: - branches: [ master ] pull_request: - branches: [ master ] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: @@ -240,8 +238,8 @@ jobs: tar xvfz release-2.30.7.tar.gz mkdir build cd build - cmake ../SDL-release-2.30.7 - cmake --build . + cmake ../SDL-release-2.30.7 -DSDL_SHARED=OFF -DSDL_STATIC=ON -DCMAKE_BUILD_TYPE=Release + cmake --build . --config Release sudo cmake --install . # Runs a set of commands using the runners shell From 8db9563c53ef3688babd0d54e9279de6314c92d4 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 24 Sep 2024 23:29:29 +0100 Subject: [PATCH 011/122] try to set fpic --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ba74b33..19f60d6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -238,7 +238,7 @@ jobs: tar xvfz release-2.30.7.tar.gz mkdir build cd build - cmake ../SDL-release-2.30.7 -DSDL_SHARED=OFF -DSDL_STATIC=ON -DCMAKE_BUILD_TYPE=Release + cmake ../SDL-release-2.30.7 -DSDL_SHARED=OFF -DSDL_STATIC=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release cmake --build . --config Release sudo cmake --install . From 957584a9d4a2770596de2c40372ed4c608135065 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 24 Sep 2024 23:56:31 +0100 Subject: [PATCH 012/122] install alsa etc before building sdl --- .github/workflows/build.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 19f60d6..f86b72e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -232,8 +232,12 @@ jobs: # The target architecture (x86, x64) of the Python interpreter. architecture: x64 - - name: Build SDL + - name: install prereqs run: | + sudo apt update + sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev + - name: Build SDL + run: | wget https://github.com/libsdl-org/SDL/archive/refs/tags/release-2.30.7.tar.gz tar xvfz release-2.30.7.tar.gz mkdir build @@ -245,8 +249,6 @@ jobs: # Runs a set of commands using the runners shell - name: Build raylib run: | - sudo apt update - sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev cd raylib-c mkdir build cd build From 55a0d150c4d944e981f2b56c41a69f6359e16b50 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 9 Oct 2024 18:53:33 +0100 Subject: [PATCH 013/122] windows --- .github/workflows/build.yml | 2 +- raylib/build.py | 2 +- setup.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f86b72e..02e5ed9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -336,7 +336,7 @@ jobs: cd raylib-c mkdir build cd build - cmake -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. msbuild raylib.sln /target:raylib /property:Configuration=Release copy raylib\Release\raylib.lib ..\.. cd ..\.. diff --git a/raylib/build.py b/raylib/build.py index 027f7b9..fbbfff5 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -203,7 +203,7 @@ def build_windows(): extra_link_args=['/NODEFAULTLIB:MSVCRTD'], extra_compile_args="/D_CFFI_NO_LIMITED_API", py_limited_api=False, - libraries=['raylib', 'gdi32', 'shell32', 'user32', 'OpenGL32', 'winmm'], + libraries=['raylib', 'gdi32', 'shell32', 'user32', 'OpenGL32', 'winmm', 'SDL2'], include_dirs=['D:\\a\\raylib-python-cffi\\raylib-python-cffi\\raylib-c\\src', 'D:\\a\\raylib-python-cffi\\raylib-python-cffi\\raylib-c\\src\\external\\glfw\\include', 'D:\\a\\raylib-python-cffi\\raylib-python-cffi\\raygui\\src', diff --git a/setup.py b/setup.py index a9be2f6..b5efa6f 100644 --- a/setup.py +++ b/setup.py @@ -18,7 +18,7 @@ class BinaryDistribution(Distribution): # This call to setup() does all the work setup( - name="raylib", + name="raylib_sdl", version=VERSION, description="Python CFFI bindings for Raylib", long_description=README, From 4a787f1c719e3567067e6ee073b19bc0c4af9818 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 9 Oct 2024 19:02:03 +0100 Subject: [PATCH 014/122] fix --- raylib/build.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/raylib/build.py b/raylib/build.py index fbbfff5..7121e22 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -201,7 +201,7 @@ def build_windows(): #include "physac.h" """, extra_link_args=['/NODEFAULTLIB:MSVCRTD'], - extra_compile_args="/D_CFFI_NO_LIMITED_API", + extra_compile_args=["/D_CFFI_NO_LIMITED_API"], py_limited_api=False, libraries=['raylib', 'gdi32', 'shell32', 'user32', 'OpenGL32', 'winmm', 'SDL2'], include_dirs=['D:\\a\\raylib-python-cffi\\raylib-python-cffi\\raylib-c\\src', From c12365d448594e52f20690336d21fe94632d92c6 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 11 Oct 2024 17:27:38 +0100 Subject: [PATCH 015/122] try --- .github/workflows/build.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 02e5ed9..85fa971 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -333,6 +333,10 @@ jobs: - name: Build raylib run: | + wget https://github.com/libsdl-org/SDL/releases/download/release-2.30.8/SDL2-devel-2.30.8-VC.zip + unzip SDL2-devel-2.30.8-VC.zip + pwd + echo $HOME cd raylib-c mkdir build cd build From 452881e916170ccfcdfd7f1fc89a5b08048ddd21 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 11 Oct 2024 17:33:25 +0100 Subject: [PATCH 016/122] try --- .github/workflows/build.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 85fa971..4ea716b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -333,10 +333,9 @@ jobs: - name: Build raylib run: | - wget https://github.com/libsdl-org/SDL/releases/download/release-2.30.8/SDL2-devel-2.30.8-VC.zip + curl -O https://github.com/libsdl-org/SDL/releases/download/release-2.30.8/SDL2-devel-2.30.8-VC.zip unzip SDL2-devel-2.30.8-VC.zip - pwd - echo $HOME + export SDL_DIR=/d/a/raylib-python-cffi/raylib-python-cffi/SDL2-devel-2.30.8-VC/cmake cd raylib-c mkdir build cd build From d8647daafae3ba2b0ef5fcff822cef395230c9db Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 11 Oct 2024 17:39:11 +0100 Subject: [PATCH 017/122] try --- .github/workflows/build.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4ea716b..0e73da8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -333,8 +333,9 @@ jobs: - name: Build raylib run: | - curl -O https://github.com/libsdl-org/SDL/releases/download/release-2.30.8/SDL2-devel-2.30.8-VC.zip - unzip SDL2-devel-2.30.8-VC.zip + curl -L -o SDL2.zip https://github.com/libsdl-org/SDL/releases/download/release-2.30.8/SDL2-devel-2.30.8-VC.zip + Expand-Archive -Path SDL2.zip -DestinationPath ${{ github.workspace }}\SDL2 + echo SDL_DIR=${{ github.workspace }}\SDL2\SDL2-2.30.8\cmake >> $GITHUB_ENV export SDL_DIR=/d/a/raylib-python-cffi/raylib-python-cffi/SDL2-devel-2.30.8-VC/cmake cd raylib-c mkdir build From 7323343ada7f076eeaab26ea608db03d0aaa4ae4 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 11 Oct 2024 17:40:35 +0100 Subject: [PATCH 018/122] try --- .github/workflows/build.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0e73da8..e08d31c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -308,7 +308,7 @@ jobs: build-windows: # The type of runner that the job will run on - runs-on: windows-2019 + runs-on: windows-2022 strategy: # You can use PyPy versions in python-version. # For example, pypy2 and pypy3 @@ -336,7 +336,6 @@ jobs: curl -L -o SDL2.zip https://github.com/libsdl-org/SDL/releases/download/release-2.30.8/SDL2-devel-2.30.8-VC.zip Expand-Archive -Path SDL2.zip -DestinationPath ${{ github.workspace }}\SDL2 echo SDL_DIR=${{ github.workspace }}\SDL2\SDL2-2.30.8\cmake >> $GITHUB_ENV - export SDL_DIR=/d/a/raylib-python-cffi/raylib-python-cffi/SDL2-devel-2.30.8-VC/cmake cd raylib-c mkdir build cd build From ecc3c08a45848b5dadf16cb9e8197df17bd91bc9 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 11 Oct 2024 17:43:40 +0100 Subject: [PATCH 019/122] try --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e08d31c..3b2b5d1 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -308,7 +308,7 @@ jobs: build-windows: # The type of runner that the job will run on - runs-on: windows-2022 + runs-on: windows-latest strategy: # You can use PyPy versions in python-version. # For example, pypy2 and pypy3 From 6286a2cf66b146f4987ee7b138bbeabceadf6925 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 11 Oct 2024 17:46:08 +0100 Subject: [PATCH 020/122] try --- .github/workflows/build.yml | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3b2b5d1..aa1b842 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -320,6 +320,16 @@ jobs: with: submodules: recursive + - name: Download SDL2 + run: curl -L -o SDL2.zip https://github.com/libsdl-org/SDL/releases/download/release-2.30.8/SDL2-devel-2.30.8-VC.zip + + - name: Unzip SDL2 + run: tar -xf SDL2.zip -C ${{ runner.temp }}\SDL2 + + - name: Set SDL_DIR environment variable + run: echo SDL_DIR=${{ runner.temp }}\SDL2\SDL2-2.30.8\cmake >> $GITHUB_ENV + + - name: Setup Python uses: actions/setup-python@v2.2.2 with: @@ -333,9 +343,6 @@ jobs: - name: Build raylib run: | - curl -L -o SDL2.zip https://github.com/libsdl-org/SDL/releases/download/release-2.30.8/SDL2-devel-2.30.8-VC.zip - Expand-Archive -Path SDL2.zip -DestinationPath ${{ github.workspace }}\SDL2 - echo SDL_DIR=${{ github.workspace }}\SDL2\SDL2-2.30.8\cmake >> $GITHUB_ENV cd raylib-c mkdir build cd build From e2f8b4fb11b67a3520a9fd106662ebbe4e6db163 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 11 Oct 2024 17:48:32 +0100 Subject: [PATCH 021/122] try --- .github/workflows/build.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index aa1b842..46ce4ad 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -323,12 +323,14 @@ jobs: - name: Download SDL2 run: curl -L -o SDL2.zip https://github.com/libsdl-org/SDL/releases/download/release-2.30.8/SDL2-devel-2.30.8-VC.zip + - name: Create extraction directory + run: mkdir ${{ runner.temp }}\SDL2 + - name: Unzip SDL2 - run: tar -xf SDL2.zip -C ${{ runner.temp }}\SDL2 + run: tar -xf SDL2.zip -C ${{ runner.temp }}\SDL2 --strip-components=1 - name: Set SDL_DIR environment variable - run: echo SDL_DIR=${{ runner.temp }}\SDL2\SDL2-2.30.8\cmake >> $GITHUB_ENV - + run: echo SDL_DIR=${{ runner.temp }}\SDL2\cmake >> $GITHUB_ENV - name: Setup Python uses: actions/setup-python@v2.2.2 From d693a846ce87fda7342c5dfce705257993d38b00 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 11 Oct 2024 17:52:39 +0100 Subject: [PATCH 022/122] try --- .github/workflows/build.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 46ce4ad..a04b503 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -329,8 +329,8 @@ jobs: - name: Unzip SDL2 run: tar -xf SDL2.zip -C ${{ runner.temp }}\SDL2 --strip-components=1 - - name: Set SDL_DIR environment variable - run: echo SDL_DIR=${{ runner.temp }}\SDL2\cmake >> $GITHUB_ENV + - name: Set SDL2_DIR environment variable + run: echo SDL2_DIR=${{ runner.temp }}\SDL2\cmake >> $GITHUB_ENV - name: Setup Python uses: actions/setup-python@v2.2.2 From b3d05efd05c1972b03332301d03e5ac026c305e3 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 11 Oct 2024 18:01:43 +0100 Subject: [PATCH 023/122] try --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a04b503..fed68f1 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -330,7 +330,7 @@ jobs: run: tar -xf SDL2.zip -C ${{ runner.temp }}\SDL2 --strip-components=1 - name: Set SDL2_DIR environment variable - run: echo SDL2_DIR=${{ runner.temp }}\SDL2\cmake >> $GITHUB_ENV + run: echo SDL2_DIR=${{ runner.temp }}\SDL2\cmake >> $env:GITHUB_ENV - name: Setup Python uses: actions/setup-python@v2.2.2 From edb2d55aa6e59b639f5de88af5e2789138dfb622 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 11 Oct 2024 18:08:26 +0100 Subject: [PATCH 024/122] try --- .github/workflows/build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index fed68f1..422a1a7 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -356,6 +356,7 @@ jobs: - name: Build raylib-python-cffi run: | + copy ${{ runner.temp }}\SDL2\lib\x64\SDL2.lib . python -m pip install --upgrade pip pip3 install "cffi>=1.17.1" pip3 install wheel From d0330043c1e0aa62082181ed51fa1403f5ebca5d Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Fri, 11 Oct 2024 18:14:10 +0100 Subject: [PATCH 025/122] try --- raylib/build.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/raylib/build.py b/raylib/build.py index 7121e22..947b2dc 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -184,7 +184,7 @@ def build_unix(): def build_windows(): print("BUILDING FOR WINDOWS") ffibuilder.cdef(open("raylib/raylib.h.modified").read()) - ffibuilder.cdef(open("raylib/glfw3.h.modified").read()) + #ffibuilder.cdef(open("raylib/glfw3.h.modified").read()) ffibuilder.cdef(open("raylib/rlgl.h.modified").read()) ffibuilder.cdef(open("raylib/raygui.h.modified").read()) ffibuilder.cdef(open("raylib/physac.h.modified").read()) @@ -193,7 +193,7 @@ def build_windows(): #include "raylib.h" #include "rlgl.h" #include "raymath.h" - #include "GLFW/glfw3.h" + #define RAYGUI_IMPLEMENTATION #define RAYGUI_SUPPORT_RICONS #include "raygui.h" From ea4b0a007dad950af8bb25aa6c56b96d036cae02 Mon Sep 17 00:00:00 2001 From: richard Date: Sat, 12 Oct 2024 16:21:46 +0100 Subject: [PATCH 026/122] try --- .github/workflows/build.yml | 56 ++----------------------------------- version.py | 2 +- 2 files changed, 4 insertions(+), 54 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 422a1a7..e2384a4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -159,65 +159,14 @@ jobs: # -# build-linux: -# runs-on: ubuntu-20.04 -# strategy: -# # You can use PyPy versions in python-version. -# # For example, pypy2 and pypy3 -# matrix: -# python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13.0-beta - 3.13.0', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] -# steps: -# # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it -# - uses: actions/checkout@v2 -# with: -# submodules: recursive -# -# - name: Setup Python -# uses: actions/setup-python@v2.2.2 -# with: -# # Version range or exact version of a Python version to use, using SemVer's version range syntax. -# python-version: ${{ matrix.python-version }} -# # The target architecture (x86, x64) of the Python interpreter. -# architecture: x64 -# -# # Runs a set of commands using the runners shell -# - name: Build raylib -# run: | -# sudo apt update -# sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev -# cd raylib-c -# mkdir build -# cd build -# cmake -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release -DOpenGL_GL_PREFERENCE=GLVND .. -# make -j2 -# sudo make install -# - name: Copy extras -# run: | -# sudo cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ -# sudo cp physac/src/physac.h /usr/local/include/ -# sudo cp raygui/src/raygui.h /usr/local/include/ -# - name: Build raylib-python-cffi -# run: | -# python -m pip install --upgrade pip -# pip3 install "cffi>=1.17.1" -# pip3 install wheel -# pip3 install setuptools -# python setup.py bdist_wheel --plat-name manylinux2014_x86_64 -# -# - name: Upload build Artifact wheel -# uses: actions/upload-artifact@v3.2.1 -# with: -# name: wheel -# path: dist/* - - build-linux-sdl: + build-linux: runs-on: ubuntu-20.04 strategy: # You can use PyPy versions in python-version. # For example, pypy2 and pypy3 matrix: - python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13.0-beta - 3.13.0', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 @@ -357,6 +306,7 @@ jobs: - name: Build raylib-python-cffi run: | copy ${{ runner.temp }}\SDL2\lib\x64\SDL2.lib . + copy ${{ runner.temp }}\SDL2\lib\x64\SDL2.dll raylib\ python -m pip install --upgrade pip pip3 install "cffi>=1.17.1" pip3 install wheel diff --git a/version.py b/version.py index ec17f13..6c8159a 100644 --- a/version.py +++ b/version.py @@ -1 +1 @@ -__version__ = "5.0.0.4.dev1" \ No newline at end of file +__version__ = "5.5.0.0.dev1" \ No newline at end of file From ac5b6b95e15234e5320b15831cef3f0b8504b398 Mon Sep 17 00:00:00 2001 From: richard Date: Sat, 12 Oct 2024 16:32:08 +0100 Subject: [PATCH 027/122] try --- MANIFEST.in | 1 + 1 file changed, 1 insertion(+) diff --git a/MANIFEST.in b/MANIFEST.in index 771f7b9..7d666e4 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -2,6 +2,7 @@ include raylib/*.so include raylib/*.pyi include pyray/*.pyi include raylib/*.pyd +include raylib/*.dll exclude raylib/*.a include raylib/*.h include raylib/*.h.modified From 192d2031a7249a2bad2b2fff343424f7d537d0b6 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 13 Oct 2024 18:06:27 +0100 Subject: [PATCH 028/122] try mac --- .github/workflows/build.yml | 13 +++++++++++-- raylib/build.py | 2 +- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e2384a4..706e676 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -22,6 +22,16 @@ jobs: with: submodules: recursive + - name: Build SDL + run: | + wget https://github.com/libsdl-org/SDL/archive/refs/tags/release-2.30.7.tar.gz + tar xvfz release-2.30.7.tar.gz + mkdir build + cd build + cmake ../SDL-release-2.30.7 -DSDL_SHARED=OFF -DSDL_STATIC=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release + cmake --build . --config Release + sudo cmake --install . + - name: Setup Python uses: actions/setup-python@v2.2.2 with: @@ -36,13 +46,12 @@ jobs: cd raylib-c mkdir build cd build - cmake -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. make -j2 sudo make install - name: Copy extras run: | - sudo cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ sudo cp physac/src/physac.h /usr/local/include/ sudo cp raygui/src/raygui.h /usr/local/include/ diff --git a/raylib/build.py b/raylib/build.py index 947b2dc..3f6ac30 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -162,7 +162,7 @@ def build_unix(): print("BUILDING FOR MAC") extra_link_args = [get_the_lib_path() + '/libraylib.a', '-framework', 'OpenGL', '-framework', 'Cocoa', '-framework', 'IOKit', '-framework', 'CoreFoundation', '-framework', - 'CoreVideo'] + 'CoreVideo', '-lSDL2'] libraries = [] extra_compile_args = ["-Wno-error=incompatible-function-pointer-types", "-D_CFFI_NO_LIMITED_API"] else: #platform.system() == "Linux": From 9d14fbfb23b1b3f71704c23849d546daf734dd6d Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 13 Oct 2024 18:13:37 +0100 Subject: [PATCH 029/122] try mac --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 706e676..d28f62d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -46,7 +46,7 @@ jobs: cd raylib-c mkdir build cd build - cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + cmake -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. make -j2 sudo make install From 19ab15d89ef9a7fc10adfcd69ecf6d350b033490 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 13 Oct 2024 18:20:06 +0100 Subject: [PATCH 030/122] try mac --- .github/workflows/build.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d28f62d..441c4fa 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -50,6 +50,15 @@ jobs: make -j2 sudo make install + - name: Build raylibsdl + run: | + cd raylib-c + mkdir build2 + cd build2 + cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + make -j2 + sudo make install + - name: Copy extras run: | sudo cp physac/src/physac.h /usr/local/include/ From 22f624d7caa01c6ad7a4b00cb339833f69cc6c5a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 13 Oct 2024 18:26:29 +0100 Subject: [PATCH 031/122] try mac --- .github/workflows/build.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 441c4fa..58f20e0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -41,7 +41,7 @@ jobs: architecture: x64 # Runs a set of commands using the runners shell - - name: Build raylib + - name: Build raylib without SDL because SDL version has incorrect pkg-config run: | cd raylib-c mkdir build @@ -50,14 +50,14 @@ jobs: make -j2 sudo make install - - name: Build raylibsdl + - name: Build raylib with SDL run: | cd raylib-c mkdir build2 cd build2 cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. make -j2 - sudo make install + sudo cp raylib/libraylib.a /usr/local/lib/libraylib.a - name: Copy extras run: | From fb417dbf719334f2e6d349d0087a19c556e01fb4 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 14 Oct 2024 18:48:15 +0100 Subject: [PATCH 032/122] try --- raylib/build.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/raylib/build.py b/raylib/build.py index 3f6ac30..d694fef 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -168,9 +168,9 @@ def build_unix(): else: #platform.system() == "Linux": print("BUILDING FOR LINUX") extra_link_args = get_lib_flags() + [ '-lm', '-lpthread', '-lGL', - '-lrt', '-lm', '-ldl', '-lX11', '-lpthread', '-latomic', '-lSDL2'] + '-lrt', '-lm', '-ldl', '-lX11', '-lpthread', '-latomic'] extra_compile_args = ["-Wno-incompatible-pointer-types", "-D_CFFI_NO_LIMITED_API"] - libraries = ['GL', 'm', 'pthread', 'dl', 'rt', 'X11', 'atomic', 'SDL2'] + libraries = ['GL', 'm', 'pthread', 'dl', 'rt', 'X11', 'atomic'] ffibuilder.set_source("raylib._raylib_cffi", ffi_includes, From 5fc35c919de73885d3bcaf99f11c04bee55dce7f Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 14 Oct 2024 19:01:12 +0100 Subject: [PATCH 033/122] try --- raylib/build.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/raylib/build.py b/raylib/build.py index d694fef..a34c496 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -168,9 +168,9 @@ def build_unix(): else: #platform.system() == "Linux": print("BUILDING FOR LINUX") extra_link_args = get_lib_flags() + [ '-lm', '-lpthread', '-lGL', - '-lrt', '-lm', '-ldl', '-lX11', '-lpthread', '-latomic'] + '-lrt', '-lm', '-ldl', '-lX11', '-lpthread', '-latomic', '-lSDL2'] extra_compile_args = ["-Wno-incompatible-pointer-types", "-D_CFFI_NO_LIMITED_API"] - libraries = ['GL', 'm', 'pthread', 'dl', 'rt', 'X11', 'atomic'] + libraries = [] ffibuilder.set_source("raylib._raylib_cffi", ffi_includes, From 7793b056a04aebe1b6b408af2dd6d8bfe66eb532 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 14 Oct 2024 19:35:17 +0100 Subject: [PATCH 034/122] try --- raylib/build.py | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/raylib/build.py b/raylib/build.py index a34c496..e6a3dab 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -26,11 +26,13 @@ import subprocess import time - +USE_SDL2 = True def check_raylib_installed(): return subprocess.run(['pkg-config', '--exists', 'raylib'], text=True, stdout=subprocess.PIPE).returncode == 0 +def check_SDL_installed(): + return subprocess.run(['pkg-config', '--exists', 'sdl2'], text=True, stdout=subprocess.PIPE).returncode == 0 def get_the_include_path(): return subprocess.run(['pkg-config', '--variable=includedir', 'raylib'], text=True, @@ -106,6 +108,9 @@ def build_unix(): if not check_raylib_installed(): raise Exception("ERROR: raylib not found by pkg-config. Please install pkg-config and Raylib.") + if USE_SDL2 and not check_SDL_installed(): + raise Exception("ERROR: SDL2 not found by pkg-config. Please install pkg-config and SDL2.") + raylib_h = get_the_include_path() + "/raylib.h" rlgl_h = get_the_include_path() + "/rlgl.h" raymath_h = get_the_include_path() + "/raymath.h" @@ -126,7 +131,7 @@ def build_unix(): """ glfw3_h = get_the_include_path() + "/GLFW/glfw3.h" - if check_header_exists(glfw3_h): + if not USE_SDL2 and check_header_exists(glfw3_h): ffi_includes += """ #include "GLFW/glfw3.h" """ @@ -154,7 +159,7 @@ def build_unix(): ffibuilder.cdef(pre_process_header(raygui_h)) if os.path.isfile(physac_h): ffibuilder.cdef(pre_process_header(physac_h)) - if os.path.isfile(glfw3_h): + if not USE_SDL2 and os.path.isfile(glfw3_h): ffibuilder.cdef(pre_process_header(glfw3_h)) @@ -162,15 +167,16 @@ def build_unix(): print("BUILDING FOR MAC") extra_link_args = [get_the_lib_path() + '/libraylib.a', '-framework', 'OpenGL', '-framework', 'Cocoa', '-framework', 'IOKit', '-framework', 'CoreFoundation', '-framework', - 'CoreVideo', '-lSDL2'] + 'CoreVideo'] + ['-lSDL2'] if USE_SDL2 else [] libraries = [] extra_compile_args = ["-Wno-error=incompatible-function-pointer-types", "-D_CFFI_NO_LIMITED_API"] else: #platform.system() == "Linux": print("BUILDING FOR LINUX") - extra_link_args = get_lib_flags() + [ '-lm', '-lpthread', '-lGL', - '-lrt', '-lm', '-ldl', '-lX11', '-lpthread', '-latomic', '-lSDL2'] + extra_link_args = (get_lib_flags() + [ '-lm', '-lpthread', '-lGL', + '-lrt', '-lm', '-ldl', '-lX11', '-lpthread', '-latomic'] + + ['-lSDL2'] if USE_SDL2 else []) extra_compile_args = ["-Wno-incompatible-pointer-types", "-D_CFFI_NO_LIMITED_API"] - libraries = [] + libraries = [] # Not sure why but we put them in extra_link_args instead so *shouldnt* be needed here ffibuilder.set_source("raylib._raylib_cffi", ffi_includes, @@ -184,7 +190,8 @@ def build_unix(): def build_windows(): print("BUILDING FOR WINDOWS") ffibuilder.cdef(open("raylib/raylib.h.modified").read()) - #ffibuilder.cdef(open("raylib/glfw3.h.modified").read()) + if not USE_SDL2: + ffibuilder.cdef(open("raylib/glfw3.h.modified").read()) ffibuilder.cdef(open("raylib/rlgl.h.modified").read()) ffibuilder.cdef(open("raylib/raygui.h.modified").read()) ffibuilder.cdef(open("raylib/physac.h.modified").read()) @@ -193,7 +200,9 @@ def build_windows(): #include "raylib.h" #include "rlgl.h" #include "raymath.h" - + """ + + """#include "GLFW/glfw3.h""" if not USE_SDL2 else "" + + """ #define RAYGUI_IMPLEMENTATION #define RAYGUI_SUPPORT_RICONS #include "raygui.h" @@ -203,7 +212,7 @@ def build_windows(): extra_link_args=['/NODEFAULTLIB:MSVCRTD'], extra_compile_args=["/D_CFFI_NO_LIMITED_API"], py_limited_api=False, - libraries=['raylib', 'gdi32', 'shell32', 'user32', 'OpenGL32', 'winmm', 'SDL2'], + libraries=['raylib', 'gdi32', 'shell32', 'user32', 'OpenGL32', 'winmm'] + ['SDL2'] if USE_SDL2 else [], include_dirs=['D:\\a\\raylib-python-cffi\\raylib-python-cffi\\raylib-c\\src', 'D:\\a\\raylib-python-cffi\\raylib-python-cffi\\raylib-c\\src\\external\\glfw\\include', 'D:\\a\\raylib-python-cffi\\raylib-python-cffi\\raygui\\src', From cbdba24ff2f6746616fbbb16bf8fd043abfda446 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Mon, 14 Oct 2024 19:41:34 +0100 Subject: [PATCH 035/122] try --- raylib/build.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/raylib/build.py b/raylib/build.py index e6a3dab..70ac585 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -201,7 +201,9 @@ def build_windows(): #include "rlgl.h" #include "raymath.h" """ + - """#include "GLFW/glfw3.h""" if not USE_SDL2 else "" + """ + #include "GLFW/glfw3.h" + """ if not USE_SDL2 else "" + """ #define RAYGUI_IMPLEMENTATION #define RAYGUI_SUPPORT_RICONS From 4c4c17d0def922e67e9f71fee0b73359aa8d860e Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 16:23:03 +0100 Subject: [PATCH 036/122] try --- .github/workflows/build.yml | 154 ++++++++++++++++++------------------ raylib/build.py | 22 ++++-- 2 files changed, 91 insertions(+), 85 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 58f20e0..3c3a6c4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -342,81 +342,81 @@ jobs: name: wheel path: dist/* - source-distro: - runs-on: ubuntu-20.04 +# source-distro: +# runs-on: ubuntu-20.04 +# +# steps: +# # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it +# - uses: actions/checkout@v2 +# with: +# submodules: recursive +# +# - name: Setup Python +# uses: actions/setup-python@v2.2.2 +# with: +# # Version range or exact version of a Python version to use, using SemVer's version range syntax. +# python-version: '3.12' +# # The target architecture (x86, x64) of the Python interpreter. +# architecture: x64 +# +# - name: Build raylib +# run: | +# sudo apt update +# sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev +# cd raylib-c +# mkdir build +# cd build +# cmake -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. +# make -j2 +# sudo make install +# - name: Copy extras +# run: | +# sudo cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ +# sudo cp physac/src/physac.h /usr/local/include/ +# sudo cp raygui/src/raygui.h /usr/local/include/ +# +# - name: Build raylib-python-cffi +# run: | +# python -m pip install --upgrade pip +# pip3 install "cffi>=1.17.1" +# pip3 install wheel +# pip3 install setuptools +# python setup.py sdist +# +# - name: Upload build Artifact wheel +# uses: actions/upload-artifact@v3.2.1 +# with: +# name: wheel +# path: dist/* - steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 - with: - submodules: recursive - - - name: Setup Python - uses: actions/setup-python@v2.2.2 - with: - # Version range or exact version of a Python version to use, using SemVer's version range syntax. - python-version: '3.12' - # The target architecture (x86, x64) of the Python interpreter. - architecture: x64 - - - name: Build raylib - run: | - sudo apt update - sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev - cd raylib-c - mkdir build - cd build - cmake -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. - make -j2 - sudo make install - - name: Copy extras - run: | - sudo cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ - sudo cp physac/src/physac.h /usr/local/include/ - sudo cp raygui/src/raygui.h /usr/local/include/ - - - name: Build raylib-python-cffi - run: | - python -m pip install --upgrade pip - pip3 install "cffi>=1.17.1" - pip3 install wheel - pip3 install setuptools - python setup.py sdist - - - name: Upload build Artifact wheel - uses: actions/upload-artifact@v3.2.1 - with: - name: wheel - path: dist/* - - dynamic-distro: - runs-on: ubuntu-20.04 - - steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 - with: - submodules: recursive - - - name: Setup Python - uses: actions/setup-python@v2.2.2 - with: - # Version range or exact version of a Python version to use, using SemVer's version range syntax. - python-version: '3.12' - # The target architecture (x86, x64) of the Python interpreter. - architecture: x64 - - - name: Build raylib-python-cffi-dynamic - run: | - python -m pip install --upgrade pip - pip3 install "cffi>=1.17.1" - pip3 install wheel - pip3 install setuptools - cd dynamic - python setup.py sdist - - - name: Upload build Artifact wheel - uses: actions/upload-artifact@v3.2.1 - with: - name: wheel - path: dynamic/dist/* +# dynamic-distro: +# runs-on: ubuntu-20.04 +# +# steps: +# # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it +# - uses: actions/checkout@v2 +# with: +# submodules: recursive +# +# - name: Setup Python +# uses: actions/setup-python@v2.2.2 +# with: +# # Version range or exact version of a Python version to use, using SemVer's version range syntax. +# python-version: '3.12' +# # The target architecture (x86, x64) of the Python interpreter. +# architecture: x64 +# +# - name: Build raylib-python-cffi-dynamic +# run: | +# python -m pip install --upgrade pip +# pip3 install "cffi>=1.17.1" +# pip3 install wheel +# pip3 install setuptools +# cd dynamic +# python setup.py sdist +# +# - name: Upload build Artifact wheel +# uses: actions/upload-artifact@v3.2.1 +# with: +# name: wheel +# path: dynamic/dist/* diff --git a/raylib/build.py b/raylib/build.py index 70ac585..74fc9af 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -196,21 +196,27 @@ def build_windows(): ffibuilder.cdef(open("raylib/raygui.h.modified").read()) ffibuilder.cdef(open("raylib/physac.h.modified").read()) ffibuilder.cdef(open("raylib/raymath.h.modified").read()) - ffibuilder.set_source("raylib._raylib_cffi", """ + + ffi_includes = """ #include "raylib.h" - #include "rlgl.h" + #include "rlgl.h" #include "raymath.h" - """ + """ - #include "GLFW/glfw3.h" - """ if not USE_SDL2 else "" - + """ + + if not USE_SDL2: + ffi_includes += + """ + #include "GLFW/glfw3.h" + """ + + ffi_includes += """ #define RAYGUI_IMPLEMENTATION #define RAYGUI_SUPPORT_RICONS #include "raygui.h" #define PHYSAC_IMPLEMENTATION - #include "physac.h" - """, + #include "physac.h" + """ + ffibuilder.set_source("raylib._raylib_cffi", ffi_includes, extra_link_args=['/NODEFAULTLIB:MSVCRTD'], extra_compile_args=["/D_CFFI_NO_LIMITED_API"], py_limited_api=False, From 730c9d46432635e2c4f43c648cca683e1224dd70 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 16:29:30 +0100 Subject: [PATCH 037/122] try --- raylib/build.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/raylib/build.py b/raylib/build.py index 74fc9af..52454e6 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -204,8 +204,7 @@ def build_windows(): """ if not USE_SDL2: - ffi_includes += - """ + ffi_includes += """ #include "GLFW/glfw3.h" """ From 2ffd22435a704d5c004175d280fd34ef2d3a1af8 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 16:54:32 +0100 Subject: [PATCH 038/122] try --- .github/workflows/build.yml | 40 +++++++------------------------------ 1 file changed, 7 insertions(+), 33 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3c3a6c4..9ee5c4f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -15,7 +15,9 @@ jobs: runs-on: macos-12 strategy: matrix: - python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13.0-beta - 3.13.0', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + env: + MACOSX_DEPLOYMENT_TARGET: 10.15 steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 @@ -61,6 +63,7 @@ jobs: - name: Copy extras run: | + sudo cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ sudo cp physac/src/physac.h /usr/local/include/ sudo cp raygui/src/raygui.h /usr/local/include/ @@ -224,6 +227,7 @@ jobs: sudo make install - name: Copy extras run: | + sudo cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ sudo cp physac/src/physac.h /usr/local/include/ sudo cp raygui/src/raygui.h /usr/local/include/ - name: Build raylib-python-cffi @@ -242,45 +246,15 @@ jobs: -# build-rpi: -# runs-on: rpi -# steps: -# # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it -# - uses: actions/checkout@v2 -# with: -# submodules: recursive -# -# - name: Build raylib -# run: | -# cd raylib-c -# mkdir build -# cd build -# cmake -DBUILD_EXAMPLES=off -DINCLUDE_EVERYTHING=on -DSUPPORT_FILEFORMAT_JPG=on -DWITH_PIC=on -DCMAKE_BUILD_TYPE=Release -DOpenGL_GL_PREFERENCE=GLVND .. -# make -j2 -# make install -# - name: Copy extras -# run: | -# cp physac/src/physac.h /usr/local/include/ -# cp raygui/src/raygui.h /usr/local/include/ -# -# - name: Build raylib-python-cffi -# run: | -# python3 setup.py bdist_wheel -# -# - name: Upload build Artifact wheel -# uses: actions/upload-artifact@v3.2.1 -# with: -# name: wheel -# path: dist/* build-windows: # The type of runner that the job will run on - runs-on: windows-latest + runs-on: windows-2019 strategy: # You can use PyPy versions in python-version. # For example, pypy2 and pypy3 matrix: - python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13.0-beta - 3.13.0', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 From 467263a43de43f97d189f42824eecedba5e1da8a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 17:07:26 +0100 Subject: [PATCH 039/122] try --- .github/workflows/build.yml | 69 +++++++++++++++++++++++++++++++++++-- 1 file changed, 66 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9ee5c4f..d965433 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -11,13 +11,11 @@ on: jobs: - build-mac: + build-mac-intel: runs-on: macos-12 strategy: matrix: python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] - env: - MACOSX_DEPLOYMENT_TARGET: 10.15 steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 @@ -81,7 +79,72 @@ jobs: name: wheel path: dist/* + build-mac-arm: + runs-on: macos-14 + strategy: + matrix: + python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - uses: actions/checkout@v2 + with: + submodules: recursive + - name: Build SDL + run: | + wget https://github.com/libsdl-org/SDL/archive/refs/tags/release-2.30.7.tar.gz + tar xvfz release-2.30.7.tar.gz + mkdir build + cd build + cmake ../SDL-release-2.30.7 -DSDL_SHARED=OFF -DSDL_STATIC=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release + cmake --build . --config Release + sudo cmake --install . + + - name: Setup Python + uses: actions/setup-python@v2.2.2 + with: + # Version range or exact version of a Python version to use, using SemVer's version range syntax. + python-version: ${{ matrix.python-version }} + + + # Runs a set of commands using the runners shell + - name: Build raylib without SDL because SDL version has incorrect pkg-config + run: | + cd raylib-c + mkdir build + cd build + cmake -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + make -j2 + sudo make install + + - name: Build raylib with SDL + run: | + cd raylib-c + mkdir build2 + cd build2 + cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + make -j2 + sudo cp raylib/libraylib.a /usr/local/lib/libraylib.a + + - name: Copy extras + run: | + sudo cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ + sudo cp physac/src/physac.h /usr/local/include/ + sudo cp raygui/src/raygui.h /usr/local/include/ + + - name: Build raylib-python-cffi + run: | + python -m pip install --upgrade pip + pip3 install "cffi>=1.17.1" + pip3 install wheel + pip3 install setuptools + python setup.py bdist_wheel + + - name: Upload build Artifact wheel + uses: actions/upload-artifact@v3.2.1 + with: + name: wheel + path: dist/* # build-mac12-arm64: # runs-on: macos-12 # strategy: From 65f89be6ee9d40e45712f1ccb1ec61e8b472eb35 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 17:32:19 +0100 Subject: [PATCH 040/122] try --- .github/workflows/build.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d965433..f70e38e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -84,6 +84,8 @@ jobs: strategy: matrix: python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + env: + MACOSX_DEPLOYMENT_TARGET: 11.0 steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 @@ -105,7 +107,7 @@ jobs: with: # Version range or exact version of a Python version to use, using SemVer's version range syntax. python-version: ${{ matrix.python-version }} - + architecture: arm64 # Runs a set of commands using the runners shell - name: Build raylib without SDL because SDL version has incorrect pkg-config From c98bdcd9618069959bd8e14866971682fc006261 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 17:44:42 +0100 Subject: [PATCH 041/122] try --- .github/workflows/build.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f70e38e..d7a6705 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -79,7 +79,7 @@ jobs: name: wheel path: dist/* - build-mac-arm: + build-mac-universal: runs-on: macos-14 strategy: matrix: @@ -98,7 +98,7 @@ jobs: tar xvfz release-2.30.7.tar.gz mkdir build cd build - cmake ../SDL-release-2.30.7 -DSDL_SHARED=OFF -DSDL_STATIC=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release + cmake ../SDL-release-2.30.7 -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DSDL_SHARED=OFF -DSDL_STATIC=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release cmake --build . --config Release sudo cmake --install . @@ -115,7 +115,7 @@ jobs: cd raylib-c mkdir build cd build - cmake -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + cmake -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. make -j2 sudo make install @@ -124,7 +124,7 @@ jobs: cd raylib-c mkdir build2 cd build2 - cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + cmake -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. make -j2 sudo cp raylib/libraylib.a /usr/local/lib/libraylib.a @@ -147,6 +147,7 @@ jobs: with: name: wheel path: dist/* + # build-mac12-arm64: # runs-on: macos-12 # strategy: From a5cb5ab6edc44192151441ec21b018c111cf1527 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 18:12:09 +0100 Subject: [PATCH 042/122] try --- .github/workflows/build.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d7a6705..54855fb 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -254,6 +254,7 @@ jobs: # For example, pypy2 and pypy3 matrix: python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + raylib-platform: ['Desktop', 'SDL'] steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 @@ -288,7 +289,7 @@ jobs: cd raylib-c mkdir build cd build - cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release -DOpenGL_GL_PREFERENCE=GLVND .. + cmake -DPLATFORM=${{ matrix.raylib_platform }} -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release -DOpenGL_GL_PREFERENCE=GLVND .. make -j2 sudo make install - name: Copy extras From afa5ae94639437fc685ecc5e78baf7abf8373d51 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 18:18:11 +0100 Subject: [PATCH 043/122] try --- .github/workflows/build.yml | 4 ++-- raylib/build.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 54855fb..3b28688 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -289,7 +289,7 @@ jobs: cd raylib-c mkdir build cd build - cmake -DPLATFORM=${{ matrix.raylib_platform }} -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release -DOpenGL_GL_PREFERENCE=GLVND .. + cmake -DPLATFORM=${{ matrix.raylib-platform }} -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release -DOpenGL_GL_PREFERENCE=GLVND .. make -j2 sudo make install - name: Copy extras @@ -303,7 +303,7 @@ jobs: pip3 install "cffi>=1.17.1" pip3 install wheel pip3 install setuptools - python setup.py bdist_wheel --plat-name manylinux2014_x86_64 + RAYLIB_PLATFORM=${{ matrix.raylib-platform }} python setup.py bdist_wheel --plat-name manylinux2014_x86_64 - name: Upload build Artifact wheel uses: actions/upload-artifact@v3.2.1 diff --git a/raylib/build.py b/raylib/build.py index 52454e6..8741b9a 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -25,8 +25,8 @@ import sys import subprocess import time - -USE_SDL2 = True +RAYLIB_PLATFORM = os.getenv("RAYLIB_PLATFORM", "Desktop") +USE_SDL2 = True if RAYLIB_PLATFORM == "SDL" else False def check_raylib_installed(): return subprocess.run(['pkg-config', '--exists', 'raylib'], text=True, stdout=subprocess.PIPE).returncode == 0 From 30913ef51a3191905b34764e614cd6486014dc89 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 18:25:57 +0100 Subject: [PATCH 044/122] try --- .cirrus.yml | 11 ++++++++++- setup.py | 4 +++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index bac33b9..5aff6d3 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -44,12 +44,21 @@ mac_task: setup_script: - brew update - brew install python@${PY_VER} + build_sdl_script: + - wget https://github.com/libsdl-org/SDL/archive/refs/tags/release-2.30.7.tar.gz + - tar xvfz release-2.30.7.tar.gz + - mkdir build + - cd build + - cmake ../SDL-release-2.30.7 -DSDL_SHARED=OFF -DSDL_STATIC=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release + - cmake --build . --config Release + - sudo cmake --install . + - cd .. build_raylib_script: - git submodule update --init --recursive - cd raylib-c - mkdir build - cd build - - cmake -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + - cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. - make -j8 - sudo make install build_script: diff --git a/setup.py b/setup.py index b5efa6f..18edb17 100644 --- a/setup.py +++ b/setup.py @@ -10,6 +10,8 @@ HERE = pathlib.Path(__file__).parent README = (HERE / "README.md").read_text() VERSION = (HERE / "version.py").read_text().split()[-1].strip("\"'") +RAYLIB_PLATFORM = os.getenv("RAYLIB_PLATFORM", "Desktop") +NAME = "raylib_sdl" if RAYLIB_PLATFORM == "SDL" else "raylib" class BinaryDistribution(Distribution): """Distribution which always forces a binary package with platform name""" @@ -18,7 +20,7 @@ class BinaryDistribution(Distribution): # This call to setup() does all the work setup( - name="raylib_sdl", + name=NAME, version=VERSION, description="Python CFFI bindings for Raylib", long_description=README, From 7f05708aadc72d84986c7bad232e1db0b010e553 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 18:47:47 +0100 Subject: [PATCH 045/122] try --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 18edb17..250a9fb 100644 --- a/setup.py +++ b/setup.py @@ -1,7 +1,7 @@ import pathlib from setuptools import setup from setuptools.dist import Distribution - +import os # The directory containing this file HERE = pathlib.Path(__file__).parent From e692b7ce994c7628f2b9a30910099abd99b7a050 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 18:57:55 +0100 Subject: [PATCH 046/122] try --- .github/workflows/build.yml | 173 ++++++++++++++++++------------------ 1 file changed, 88 insertions(+), 85 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3b28688..8710167 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -16,6 +16,7 @@ jobs: strategy: matrix: python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + raylib-platform: ['Desktop', 'SDL'] steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 @@ -50,12 +51,12 @@ jobs: make -j2 sudo make install - - name: Build raylib with SDL + - name: Build raylib with SDL if selected run: | cd raylib-c mkdir build2 cd build2 - cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + cmake -DPLATFORM=${{ matrix.raylib-platform }} -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. make -j2 sudo cp raylib/libraylib.a /usr/local/lib/libraylib.a @@ -71,7 +72,7 @@ jobs: pip3 install "cffi>=1.17.1" pip3 install wheel pip3 install setuptools - python setup.py bdist_wheel --plat-name macosx_10_15_x86_64 + RAYLIB_PLATFORM=${{ matrix.raylib-platform }} python setup.py bdist_wheel --plat-name macosx_10_15_x86_64 - name: Upload build Artifact wheel uses: actions/upload-artifact@v3.2.1 @@ -84,6 +85,7 @@ jobs: strategy: matrix: python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + raylib-platform: ['Desktop', 'SDL'] env: MACOSX_DEPLOYMENT_TARGET: 11.0 steps: @@ -119,12 +121,12 @@ jobs: make -j2 sudo make install - - name: Build raylib with SDL + - name: Build raylib with SDL if selected run: | cd raylib-c mkdir build2 cd build2 - cmake -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + cmake -DPLATFORM=${{ matrix.raylib-platform }} -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. make -j2 sudo cp raylib/libraylib.a /usr/local/lib/libraylib.a @@ -140,7 +142,7 @@ jobs: pip3 install "cffi>=1.17.1" pip3 install wheel pip3 install setuptools - python setup.py bdist_wheel + RAYLIB_PLATFORM=${{ matrix.raylib-platform }} python setup.py bdist_wheel - name: Upload build Artifact wheel uses: actions/upload-artifact@v3.2.1 @@ -322,6 +324,7 @@ jobs: # For example, pypy2 and pypy3 matrix: python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + raylib-platform: ['Desktop', 'SDL'] steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 @@ -356,7 +359,7 @@ jobs: cd raylib-c mkdir build cd build - cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + cmake -DPLATFORM=${{ matrix.raylib-platform }} -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. msbuild raylib.sln /target:raylib /property:Configuration=Release copy raylib\Release\raylib.lib ..\.. cd ..\.. @@ -374,7 +377,7 @@ jobs: del raylib\dynamic\*.dll >nul 2>&1 del raylib\dynamic\*.dylib >nul 2>&1 del raylib\dynamic\32bit\* >nul 2>&1 - python setup.py bdist_wheel + RAYLIB_PLATFORM=${{ matrix.raylib-platform }} python setup.py bdist_wheel shell: cmd - name: Upload build Artifact wheel @@ -383,81 +386,81 @@ jobs: name: wheel path: dist/* -# source-distro: -# runs-on: ubuntu-20.04 -# -# steps: -# # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it -# - uses: actions/checkout@v2 -# with: -# submodules: recursive -# -# - name: Setup Python -# uses: actions/setup-python@v2.2.2 -# with: -# # Version range or exact version of a Python version to use, using SemVer's version range syntax. -# python-version: '3.12' -# # The target architecture (x86, x64) of the Python interpreter. -# architecture: x64 -# -# - name: Build raylib -# run: | -# sudo apt update -# sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev -# cd raylib-c -# mkdir build -# cd build -# cmake -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. -# make -j2 -# sudo make install -# - name: Copy extras -# run: | -# sudo cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ -# sudo cp physac/src/physac.h /usr/local/include/ -# sudo cp raygui/src/raygui.h /usr/local/include/ -# -# - name: Build raylib-python-cffi -# run: | -# python -m pip install --upgrade pip -# pip3 install "cffi>=1.17.1" -# pip3 install wheel -# pip3 install setuptools -# python setup.py sdist -# -# - name: Upload build Artifact wheel -# uses: actions/upload-artifact@v3.2.1 -# with: -# name: wheel -# path: dist/* + source-distro: + runs-on: ubuntu-20.04 -# dynamic-distro: -# runs-on: ubuntu-20.04 -# -# steps: -# # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it -# - uses: actions/checkout@v2 -# with: -# submodules: recursive -# -# - name: Setup Python -# uses: actions/setup-python@v2.2.2 -# with: -# # Version range or exact version of a Python version to use, using SemVer's version range syntax. -# python-version: '3.12' -# # The target architecture (x86, x64) of the Python interpreter. -# architecture: x64 -# -# - name: Build raylib-python-cffi-dynamic -# run: | -# python -m pip install --upgrade pip -# pip3 install "cffi>=1.17.1" -# pip3 install wheel -# pip3 install setuptools -# cd dynamic -# python setup.py sdist -# -# - name: Upload build Artifact wheel -# uses: actions/upload-artifact@v3.2.1 -# with: -# name: wheel -# path: dynamic/dist/* + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - uses: actions/checkout@v2 + with: + submodules: recursive + + - name: Setup Python + uses: actions/setup-python@v2.2.2 + with: + # Version range or exact version of a Python version to use, using SemVer's version range syntax. + python-version: '3.12' + # The target architecture (x86, x64) of the Python interpreter. + architecture: x64 + + - name: Build raylib + run: | + sudo apt update + sudo apt install libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev + cd raylib-c + mkdir build + cd build + cmake -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + make -j2 + sudo make install + - name: Copy extras + run: | + sudo cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ + sudo cp physac/src/physac.h /usr/local/include/ + sudo cp raygui/src/raygui.h /usr/local/include/ + + - name: Build raylib-python-cffi + run: | + python -m pip install --upgrade pip + pip3 install "cffi>=1.17.1" + pip3 install wheel + pip3 install setuptools + python setup.py sdist + + - name: Upload build Artifact wheel + uses: actions/upload-artifact@v3.2.1 + with: + name: wheel + path: dist/* + + dynamic-distro: + runs-on: ubuntu-20.04 + + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - uses: actions/checkout@v2 + with: + submodules: recursive + + - name: Setup Python + uses: actions/setup-python@v2.2.2 + with: + # Version range or exact version of a Python version to use, using SemVer's version range syntax. + python-version: '3.12' + # The target architecture (x86, x64) of the Python interpreter. + architecture: x64 + + - name: Build raylib-python-cffi-dynamic + run: | + python -m pip install --upgrade pip + pip3 install "cffi>=1.17.1" + pip3 install wheel + pip3 install setuptools + cd dynamic + python setup.py sdist + + - name: Upload build Artifact wheel + uses: actions/upload-artifact@v3.2.1 + with: + name: wheel + path: dynamic/dist/* From 1f172355d386e8e13bd4be6fde38e9c7fe865427 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 19:12:08 +0100 Subject: [PATCH 047/122] try --- .cirrus.yml | 12 ++++++++++-- .github/workflows/build.yml | 10 +++++++--- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index 5aff6d3..8615d84 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -58,9 +58,17 @@ mac_task: - cd raylib-c - mkdir build - cd build - - cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + - cmake -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. - make -j8 - sudo make install + build_raylib_again_script: + - git submodule update --init --recursive + - cd raylib-c + - mkdir build + - cd build + - cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + - make -j8 + - sudo cp raylib/libraylib.a /usr/local/lib/libraylib.a build_script: - sudo cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ - sudo cp physac/src/physac.h /usr/local/include/ @@ -69,6 +77,6 @@ mac_task: - /opt/homebrew/bin/python${PY_VER} -m pip install --break-system-packages cffi - /opt/homebrew/bin/python${PY_VER} -m pip install --break-system-packages setuptools - /opt/homebrew/bin/python${PY_VER} -m pip install --break-system-packages wheel - - /opt/homebrew/bin/python${PY_VER} setup.py bdist_wheel + - RAYLIB_PLATFORM=SDL /opt/homebrew/bin/python${PY_VER} setup.py bdist_wheel artifacts: path: "dist/*" \ No newline at end of file diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 8710167..76ec0c4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -258,6 +258,8 @@ jobs: python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] raylib-platform: ['Desktop', 'SDL'] steps: + - env: + RAYLIB_PLATFORM: ${{ matrix.raylib-platform }} # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 with: @@ -305,7 +307,7 @@ jobs: pip3 install "cffi>=1.17.1" pip3 install wheel pip3 install setuptools - RAYLIB_PLATFORM=${{ matrix.raylib-platform }} python setup.py bdist_wheel --plat-name manylinux2014_x86_64 + python setup.py bdist_wheel --plat-name manylinux2014_x86_64 - name: Upload build Artifact wheel uses: actions/upload-artifact@v3.2.1 @@ -326,7 +328,9 @@ jobs: python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] raylib-platform: ['Desktop', 'SDL'] steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - env: + RAYLIB_PLATFORM: ${{ matrix.raylib-platform }} + - uses: actions/checkout@v2 with: submodules: recursive @@ -377,7 +381,7 @@ jobs: del raylib\dynamic\*.dll >nul 2>&1 del raylib\dynamic\*.dylib >nul 2>&1 del raylib\dynamic\32bit\* >nul 2>&1 - RAYLIB_PLATFORM=${{ matrix.raylib-platform }} python setup.py bdist_wheel + python setup.py bdist_wheel shell: cmd - name: Upload build Artifact wheel From 1b73f0f8b0e71507754ae78c8c43ebd25016847b Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 19:14:25 +0100 Subject: [PATCH 048/122] try --- .github/workflows/build.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 76ec0c4..87184b8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -258,8 +258,6 @@ jobs: python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] raylib-platform: ['Desktop', 'SDL'] steps: - - env: - RAYLIB_PLATFORM: ${{ matrix.raylib-platform }} # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 with: @@ -302,6 +300,8 @@ jobs: sudo cp physac/src/physac.h /usr/local/include/ sudo cp raygui/src/raygui.h /usr/local/include/ - name: Build raylib-python-cffi + env: + RAYLIB_PLATFORM: ${{ matrix.raylib-platform }} run: | python -m pip install --upgrade pip pip3 install "cffi>=1.17.1" @@ -328,9 +328,6 @@ jobs: python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] raylib-platform: ['Desktop', 'SDL'] steps: - - env: - RAYLIB_PLATFORM: ${{ matrix.raylib-platform }} - - uses: actions/checkout@v2 with: submodules: recursive @@ -370,6 +367,8 @@ jobs: shell: cmd - name: Build raylib-python-cffi + env: + RAYLIB_PLATFORM: ${{ matrix.raylib-platform }} run: | copy ${{ runner.temp }}\SDL2\lib\x64\SDL2.lib . copy ${{ runner.temp }}\SDL2\lib\x64\SDL2.dll raylib\ From 05e71eae622ad2e44824a4347c86839d2164fbd6 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 19:22:58 +0100 Subject: [PATCH 049/122] try --- raylib/build.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/raylib/build.py b/raylib/build.py index 8741b9a..482a342 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -178,6 +178,9 @@ def build_unix(): extra_compile_args = ["-Wno-incompatible-pointer-types", "-D_CFFI_NO_LIMITED_API"] libraries = [] # Not sure why but we put them in extra_link_args instead so *shouldnt* be needed here + print("extra_link_args: "+str(extra_link_args)) + print("extra_compile_args: "+str(extra_compile_args)) + print("libraries: "+str(libraries)) ffibuilder.set_source("raylib._raylib_cffi", ffi_includes, py_limited_api=False, @@ -215,11 +218,16 @@ def build_windows(): #define PHYSAC_IMPLEMENTATION #include "physac.h" """ + libraries = ['raylib', 'gdi32', 'shell32', 'user32', 'OpenGL32', 'winmm'] + if USE_SDL2: + libraries += 'SDL2' + + print("libraries: "+str(libraries)) ffibuilder.set_source("raylib._raylib_cffi", ffi_includes, extra_link_args=['/NODEFAULTLIB:MSVCRTD'], extra_compile_args=["/D_CFFI_NO_LIMITED_API"], py_limited_api=False, - libraries=['raylib', 'gdi32', 'shell32', 'user32', 'OpenGL32', 'winmm'] + ['SDL2'] if USE_SDL2 else [], + libraries=libraries, include_dirs=['D:\\a\\raylib-python-cffi\\raylib-python-cffi\\raylib-c\\src', 'D:\\a\\raylib-python-cffi\\raylib-python-cffi\\raylib-c\\src\\external\\glfw\\include', 'D:\\a\\raylib-python-cffi\\raylib-python-cffi\\raygui\\src', From 3b0238c61d163f3b9bcbc371c63312173580d060 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 19:28:21 +0100 Subject: [PATCH 050/122] try --- .cirrus.yml | 5 ++--- raylib/build.py | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index 8615d84..6903bf6 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -62,10 +62,9 @@ mac_task: - make -j8 - sudo make install build_raylib_again_script: - - git submodule update --init --recursive - cd raylib-c - - mkdir build - - cd build + - mkdir build2 + - cd build2 - cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. - make -j8 - sudo cp raylib/libraylib.a /usr/local/lib/libraylib.a diff --git a/raylib/build.py b/raylib/build.py index 482a342..a2b9b1d 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -220,7 +220,7 @@ def build_windows(): """ libraries = ['raylib', 'gdi32', 'shell32', 'user32', 'OpenGL32', 'winmm'] if USE_SDL2: - libraries += 'SDL2' + libraries += ['SDL2'] print("libraries: "+str(libraries)) ffibuilder.set_source("raylib._raylib_cffi", ffi_includes, From 05c455b17f0fe69e758c78b508012740ebaaae98 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 19:43:04 +0100 Subject: [PATCH 051/122] try --- .cirrus.yml | 15 +++++++++------ raylib/build.py | 7 ++++--- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index 6903bf6..4c4ec10 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -35,12 +35,15 @@ mac_task: macos_instance: matrix: - image: ghcr.io/cirruslabs/macos-sonoma-xcode:latest - env: - matrix: - - PY_VER: "3.9" - - PY_VER: "3.10" - - PY_VER: "3.11" - - PY_VER: "3.12" + + matrix: + - env: + PY_VER: "3.9" + RAYLIB_PLATFORM: Desktop + - env: + PY_VER: "3.9" + RAYLIB_PLATFORM: SDL + setup_script: - brew update - brew install python@${PY_VER} diff --git a/raylib/build.py b/raylib/build.py index a2b9b1d..18a6259 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -167,17 +167,18 @@ def build_unix(): print("BUILDING FOR MAC") extra_link_args = [get_the_lib_path() + '/libraylib.a', '-framework', 'OpenGL', '-framework', 'Cocoa', '-framework', 'IOKit', '-framework', 'CoreFoundation', '-framework', - 'CoreVideo'] + ['-lSDL2'] if USE_SDL2 else [] + 'CoreVideo'] libraries = [] extra_compile_args = ["-Wno-error=incompatible-function-pointer-types", "-D_CFFI_NO_LIMITED_API"] else: #platform.system() == "Linux": print("BUILDING FOR LINUX") - extra_link_args = (get_lib_flags() + [ '-lm', '-lpthread', '-lGL', + extra_link_args = get_lib_flags() + [ '-lm', '-lpthread', '-lGL', '-lrt', '-lm', '-ldl', '-lX11', '-lpthread', '-latomic'] - + ['-lSDL2'] if USE_SDL2 else []) extra_compile_args = ["-Wno-incompatible-pointer-types", "-D_CFFI_NO_LIMITED_API"] libraries = [] # Not sure why but we put them in extra_link_args instead so *shouldnt* be needed here + if USE_SDL2: + extra_link_args += ['-lSDL2'] print("extra_link_args: "+str(extra_link_args)) print("extra_compile_args: "+str(extra_compile_args)) print("libraries: "+str(libraries)) From 35c457ef7d16b46027a6307f02d79bb6037d84f6 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 19:44:20 +0100 Subject: [PATCH 052/122] try --- .cirrus.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.cirrus.yml b/.cirrus.yml index 4c4ec10..da671d7 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -68,7 +68,7 @@ mac_task: - cd raylib-c - mkdir build2 - cd build2 - - cmake -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + - cmake -DPLATFORM=${RAYLIB_PLATFORM} -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. - make -j8 - sudo cp raylib/libraylib.a /usr/local/lib/libraylib.a build_script: From 7e2da775ae9f8b1795091fa5253fb77f279cd7bf Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 19:51:44 +0100 Subject: [PATCH 053/122] try --- .cirrus.yml | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/.cirrus.yml b/.cirrus.yml index da671d7..dd1045a 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -43,6 +43,25 @@ mac_task: - env: PY_VER: "3.9" RAYLIB_PLATFORM: SDL + - env: + PY_VER: "3.10" + RAYLIB_PLATFORM: Desktop + - env: + PY_VER: "3.10" + RAYLIB_PLATFORM: SDL + - env: + PY_VER: "3.11" + RAYLIB_PLATFORM: Desktop + - env: + PY_VER: "3.12" + RAYLIB_PLATFORM: SDL + - env: + PY_VER: "3.13" + RAYLIB_PLATFORM: Desktop + - env: + PY_VER: "3.13" + RAYLIB_PLATFORM: SDL + setup_script: - brew update @@ -79,6 +98,6 @@ mac_task: - /opt/homebrew/bin/python${PY_VER} -m pip install --break-system-packages cffi - /opt/homebrew/bin/python${PY_VER} -m pip install --break-system-packages setuptools - /opt/homebrew/bin/python${PY_VER} -m pip install --break-system-packages wheel - - RAYLIB_PLATFORM=SDL /opt/homebrew/bin/python${PY_VER} setup.py bdist_wheel + - /opt/homebrew/bin/python${PY_VER} setup.py bdist_wheel artifacts: path: "dist/*" \ No newline at end of file From 10692d516821ee8d3c95491d4f59cdc0adf63381 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 20:29:41 +0100 Subject: [PATCH 054/122] try --- .github/workflows/build.yml | 182 ++++++++++-------------------------- raylib/build.py | 7 +- 2 files changed, 53 insertions(+), 136 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 87184b8..1925159 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -80,106 +80,76 @@ jobs: name: wheel path: dist/* - build-mac-universal: - runs-on: macos-14 - strategy: - matrix: - python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] - raylib-platform: ['Desktop', 'SDL'] - env: - MACOSX_DEPLOYMENT_TARGET: 11.0 - steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 - with: - submodules: recursive - - - name: Build SDL - run: | - wget https://github.com/libsdl-org/SDL/archive/refs/tags/release-2.30.7.tar.gz - tar xvfz release-2.30.7.tar.gz - mkdir build - cd build - cmake ../SDL-release-2.30.7 -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DSDL_SHARED=OFF -DSDL_STATIC=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release - cmake --build . --config Release - sudo cmake --install . - - - name: Setup Python - uses: actions/setup-python@v2.2.2 - with: - # Version range or exact version of a Python version to use, using SemVer's version range syntax. - python-version: ${{ matrix.python-version }} - architecture: arm64 - - # Runs a set of commands using the runners shell - - name: Build raylib without SDL because SDL version has incorrect pkg-config - run: | - cd raylib-c - mkdir build - cd build - cmake -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. - make -j2 - sudo make install - - - name: Build raylib with SDL if selected - run: | - cd raylib-c - mkdir build2 - cd build2 - cmake -DPLATFORM=${{ matrix.raylib-platform }} -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. - make -j2 - sudo cp raylib/libraylib.a /usr/local/lib/libraylib.a - - - name: Copy extras - run: | - sudo cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ - sudo cp physac/src/physac.h /usr/local/include/ - sudo cp raygui/src/raygui.h /usr/local/include/ - - - name: Build raylib-python-cffi - run: | - python -m pip install --upgrade pip - pip3 install "cffi>=1.17.1" - pip3 install wheel - pip3 install setuptools - RAYLIB_PLATFORM=${{ matrix.raylib-platform }} python setup.py bdist_wheel - - - name: Upload build Artifact wheel - uses: actions/upload-artifact@v3.2.1 - with: - name: wheel - path: dist/* - -# build-mac12-arm64: -# runs-on: macos-12 +# build-mac-universal: +# runs-on: macos-14 # strategy: # matrix: -# python-version: ['3.10', '3.11.0-alpha - 3.11.0' ] -# # Requires universal2 build of python, which we get if we ask for 3.10.5 x86! Pypy not available in universal2 +# python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] +# raylib-platform: ['Desktop', 'SDL'] +# env: +# MACOSX_DEPLOYMENT_TARGET: 11.0 # steps: +# # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it # - uses: actions/checkout@v2 # with: # submodules: recursive # +# - name: Build SDL +# run: | +# wget https://github.com/libsdl-org/SDL/archive/refs/tags/release-2.30.7.tar.gz +# tar xvfz release-2.30.7.tar.gz +# mkdir build +# cd build +# cmake ../SDL-release-2.30.7 -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DSDL_SHARED=OFF -DSDL_STATIC=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release +# cmake --build . --config Release +# sudo cmake --install . +# # - name: Setup Python # uses: actions/setup-python@v2.2.2 # with: +# # Version range or exact version of a Python version to use, using SemVer's version range syntax. # python-version: ${{ matrix.python-version }} -# architecture: x64 +# architecture: arm64 # -# # Only build raylib for arm64 (although we could make a fat universal2 binary by asking for x86_64 as well) -# - name: Build raylib +# # Runs a set of commands using the runners shell +# - name: Build raylib without SDL because SDL version has incorrect pkg-config # run: | # cd raylib-c # mkdir build # cd build -# cmake -DBUILD_EXAMPLES=off -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DINCLUDE_EVERYTHING=on -DSUPPORT_FILEFORMAT_JPG=on -DWITH_PIC=on -DCMAKE_BUILD_TYPE=Release .. +# cmake -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. # make -j2 # sudo make install +# +# - name: Build raylib with SDL if selected +# run: | +# cd raylib-c +# mkdir build2 +# cd build2 +# cmake -DPLATFORM=${{ matrix.raylib-platform }} -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DPLATFORM=SDL -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. +# make -j2 +# sudo cp raylib/libraylib.a /usr/local/lib/libraylib.a +# # - name: Copy extras # run: | +# sudo cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ # sudo cp physac/src/physac.h /usr/local/include/ # sudo cp raygui/src/raygui.h /usr/local/include/ +# +# - name: Build raylib-python-cffi +# run: | +# python -m pip install --upgrade pip +# pip3 install "cffi>=1.17.1" +# pip3 install wheel +# pip3 install setuptools +# RAYLIB_PLATFORM=${{ matrix.raylib-platform }} python setup.py bdist_wheel +# +# - name: Upload build Artifact wheel +# uses: actions/upload-artifact@v3.2.1 +# with: +# name: wheel +# path: dist/* + # # # Name defaults to universal2 and it technically is, but we override name to arm64. Why don't we make a working universal2 wheel? Because # # I'd rather have a separate x86_64 that I can test, and I want it to work on 10_15 but I'm not sure a 'macosx_10_15_universal2' is valid @@ -190,62 +160,6 @@ jobs: # pip3 install cffi # pip3 install wheel # python setup.py bdist_wheel --plat-name macosx_12_0_arm64 -# -# -# - name: Upload build Artifact wheel -# uses: actions/upload-artifact@v3.2.1 -# with: -# name: wheel -# path: dist/* -# -# -# build-mac11-arm64: -# runs-on: macos-11 -# strategy: -# matrix: -# python-version: [ '3.10.5' ] -# # Requires universal2 build of python, which we get if we ask for 3.10.5 x86! Pypy not available in universal2 -# env: -# MACOSX_DEPLOYMENT_TARGET: 11.6 -# steps: -# - uses: actions/checkout@v2 -# with: -# submodules: recursive -# -# - name: Setup Python -# uses: actions/setup-python@v2.2.2 -# with: -# python-version: ${{ matrix.python-version }} -# architecture: x64 -# -# # build raylib for arm64 and x86_64 as well -# - name: Build raylib -# run: | -# cd raylib-c -# mkdir build -# cd build -# cmake -DBUILD_EXAMPLES=off -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DINCLUDE_EVERYTHING=on -DSUPPORT_FILEFORMAT_JPG=on -DWITH_PIC=on -DCMAKE_BUILD_TYPE=Release .. -# make -j2 -# sudo make install -# - name: Copy extras -# run: | -# sudo cp physac/src/physac.h /usr/local/include/ -# sudo cp raygui/src/raygui.h /usr/local/include/ -# -# -# - name: Build raylib-python-cffi -# run: | -# python -m pip install --upgrade pip -# pip3 install cffi -# pip3 install wheel -# python setup.py bdist_wheel --plat-name macosx_11_0_arm64 -# -# - name: Upload build Artifact wheel -# uses: actions/upload-artifact@v3.2.1 -# with: -# name: wheel -# path: dist/* -# diff --git a/raylib/build.py b/raylib/build.py index 18a6259..c6a9325 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -168,17 +168,20 @@ def build_unix(): extra_link_args = [get_the_lib_path() + '/libraylib.a', '-framework', 'OpenGL', '-framework', 'Cocoa', '-framework', 'IOKit', '-framework', 'CoreFoundation', '-framework', 'CoreVideo'] + if USE_SDL2: + extra_link_args += ['/usr/local/lib/libSDL2.a'] libraries = [] extra_compile_args = ["-Wno-error=incompatible-function-pointer-types", "-D_CFFI_NO_LIMITED_API"] else: #platform.system() == "Linux": print("BUILDING FOR LINUX") extra_link_args = get_lib_flags() + [ '-lm', '-lpthread', '-lGL', '-lrt', '-lm', '-ldl', '-lX11', '-lpthread', '-latomic'] + if USE_SDL2: + extra_link_args += ['-lSDL2'] extra_compile_args = ["-Wno-incompatible-pointer-types", "-D_CFFI_NO_LIMITED_API"] libraries = [] # Not sure why but we put them in extra_link_args instead so *shouldnt* be needed here - if USE_SDL2: - extra_link_args += ['-lSDL2'] + print("extra_link_args: "+str(extra_link_args)) print("extra_compile_args: "+str(extra_compile_args)) print("libraries: "+str(libraries)) From 05ada5fa0d943da425fc47b4d6f9958f2806d743 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 21:00:59 +0100 Subject: [PATCH 055/122] try --- .github/workflows/build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1925159..0707dcf 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -222,6 +222,7 @@ jobs: pip3 install wheel pip3 install setuptools python setup.py bdist_wheel --plat-name manylinux2014_x86_64 + python3 -c 'import pyray; pyray.init_window(100,100,"test"); raise "foo" ' - name: Upload build Artifact wheel uses: actions/upload-artifact@v3.2.1 From 391e60069301fc8eb533a5610e6f4a4edd1a50fd Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 23:41:36 +0100 Subject: [PATCH 056/122] try --- .github/workflows/build.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0707dcf..1d828b1 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -222,7 +222,8 @@ jobs: pip3 install wheel pip3 install setuptools python setup.py bdist_wheel --plat-name manylinux2014_x86_64 - python3 -c 'import pyray; pyray.init_window(100,100,"test"); raise "foo" ' + pip3 install dist/*.whl + python3 -c 'import pyray; pyray.init_window(100,100,"test")' - name: Upload build Artifact wheel uses: actions/upload-artifact@v3.2.1 From 3314597eed367170d574f0c849a3c1ca363279e5 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Tue, 15 Oct 2024 23:47:34 +0100 Subject: [PATCH 057/122] try --- .github/workflows/build.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1d828b1..59f68cd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -222,7 +222,10 @@ jobs: pip3 install wheel pip3 install setuptools python setup.py bdist_wheel --plat-name manylinux2014_x86_64 + - name: Test + run: | pip3 install dist/*.whl + cd / python3 -c 'import pyray; pyray.init_window(100,100,"test")' - name: Upload build Artifact wheel From 7899b51bbdd5ad69e02ae60a147872d3a3bdefe8 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 00:00:10 +0100 Subject: [PATCH 058/122] try --- .github/workflows/build.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 59f68cd..5248a32 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -226,7 +226,13 @@ jobs: run: | pip3 install dist/*.whl cd / - python3 -c 'import pyray; pyray.init_window(100,100,"test")' + output=$(python3 -c 'import pyray; pyray.init_window(100,100,"test")' 2>&1) + if echo "$output" | grep -q "INFO: Initializing raylib"; then + exit 0 + else + exit 1 + fi + - name: Upload build Artifact wheel uses: actions/upload-artifact@v3.2.1 From a11016ba3420d2616c686a68aa7719e3b444f4ea Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 00:07:25 +0100 Subject: [PATCH 059/122] try --- .github/workflows/build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 5248a32..5490eb7 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -227,6 +227,7 @@ jobs: pip3 install dist/*.whl cd / output=$(python3 -c 'import pyray; pyray.init_window(100,100,"test")' 2>&1) + exit_code=$? if echo "$output" | grep -q "INFO: Initializing raylib"; then exit 0 else From 447b17446fb26843bd8b49f18a2765caafa5ebc7 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 00:18:19 +0100 Subject: [PATCH 060/122] try --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 5490eb7..b37289f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -226,7 +226,7 @@ jobs: run: | pip3 install dist/*.whl cd / - output=$(python3 -c 'import pyray; pyray.init_window(100,100,"test")' 2>&1) + (exec 2>/dev/null python3 -c 'import pyray; pyray.init_window(100,100,"test")' 2>/dev/null >output) exit_code=$? if echo "$output" | grep -q "INFO: Initializing raylib"; then exit 0 From 0bf913812234b557012d8e44ae6df0b8886f80ea Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 00:22:22 +0100 Subject: [PATCH 061/122] try --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b37289f..f330cd6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -228,7 +228,7 @@ jobs: cd / (exec 2>/dev/null python3 -c 'import pyray; pyray.init_window(100,100,"test")' 2>/dev/null >output) exit_code=$? - if echo "$output" | grep -q "INFO: Initializing raylib"; then + if cat output | grep -q "INFO: Initializing raylib"; then exit 0 else exit 1 From 3c7289c84443dc3b837b793e4d69b2f86cf6e95e Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 00:30:04 +0100 Subject: [PATCH 062/122] try --- .github/workflows/build.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f330cd6..bfe9294 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -226,11 +226,15 @@ jobs: run: | pip3 install dist/*.whl cd / + echo "moo" (exec 2>/dev/null python3 -c 'import pyray; pyray.init_window(100,100,"test")' 2>/dev/null >output) - exit_code=$? - if cat output | grep -q "INFO: Initializing raylib"; then + echo "woo" + cat output + if grep -q "INFO: Initializing raylib" output; then + echo "boo" exit 0 else + echo "foo" exit 1 fi From cadf3d1f0c8b4d1915c8ca43c6c41892c33186c2 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 00:53:49 +0100 Subject: [PATCH 063/122] try --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index bfe9294..2d7bf40 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -227,7 +227,7 @@ jobs: pip3 install dist/*.whl cd / echo "moo" - (exec 2>/dev/null python3 -c 'import pyray; pyray.init_window(100,100,"test")' 2>/dev/null >output) + python3 -c 'import pyray; pyray.init_window(100,100,"test")' >output 2>&1 || true echo "woo" cat output if grep -q "INFO: Initializing raylib" output; then From b14d0a2b3cc7b710c752a4e37cc9aa26a382da24 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 00:58:26 +0100 Subject: [PATCH 064/122] try --- .github/workflows/build.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2d7bf40..191106f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -227,10 +227,10 @@ jobs: pip3 install dist/*.whl cd / echo "moo" - python3 -c 'import pyray; pyray.init_window(100,100,"test")' >output 2>&1 || true + python3 -c 'import pyray; pyray.init_window(100,100,"test")' >/tmp/output 2>&1 || true echo "woo" - cat output - if grep -q "INFO: Initializing raylib" output; then + cat /tmp/output + if grep -q "INFO: Initializing raylib" /tmp/output; then echo "boo" exit 0 else From 29f5f42af7a553688d01c291d5f9f6ea9468f7d2 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 01:20:35 +0100 Subject: [PATCH 065/122] try --- .cirrus.yml | 16 ++++++++++++++-- .github/workflows/build.yml | 24 +++++++++++++++++++----- 2 files changed, 33 insertions(+), 7 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index dd1045a..48cadb6 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -4,13 +4,13 @@ pi_task: arm_container: matrix: - - image: dtcooper/raspberrypi-os:python-bullseye + - image: dtcooper/raspberrypi-os:python3.12-bullseye - image: dtcooper/raspberrypi-os:python3.11-bullseye - image: dtcooper/raspberrypi-os:python3.10-bullseye - image: dtcooper/raspberrypi-os:python3.9-bullseye setup_script: - apt update - - apt -y install cmake libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev + - apt -y install cmake libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev build_raylib_script: - git submodule update --init --recursive - cd raylib-c @@ -28,6 +28,18 @@ pi_task: - python -m pip install --break-system-packages setuptools - python -m pip install --break-system-packages wheel - python setup.py bdist_wheel --plat-name manylinux2014_aarch64 + test_script: + - python -m pip install --break-system-packages dist/*.whl + - cd / + - python -c 'import pyray; pyray.init_window(100,100,"test")' >/tmp/output 2>&1 || true + - cat /tmp/output + - if grep -q "INFO: Initializing raylib" /tmp/output; then + - echo "Passed" + - exit 0 + - else + - echo "Failed" + - exit 1 + - fi artifacts: path: "dist/*" diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 191106f..03b6c01 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -67,12 +67,28 @@ jobs: sudo cp raygui/src/raygui.h /usr/local/include/ - name: Build raylib-python-cffi + env: + RAYLIB_PLATFORM: ${{ matrix.raylib-platform }} run: | python -m pip install --upgrade pip pip3 install "cffi>=1.17.1" pip3 install wheel pip3 install setuptools - RAYLIB_PLATFORM=${{ matrix.raylib-platform }} python setup.py bdist_wheel --plat-name macosx_10_15_x86_64 + python setup.py bdist_wheel --plat-name macosx_10_15_x86_64 + + - name: Test + run: | + pip3 install dist/*.whl + cd / + python3 -c 'import pyray; pyray.init_window(100,100,"test")' >/tmp/output 2>&1 || true + cat /tmp/output + if grep -q "INFO: Initializing raylib" /tmp/output; then + echo "Passed" + exit 0 + else + echo "Failed" + exit 1 + fi - name: Upload build Artifact wheel uses: actions/upload-artifact@v3.2.1 @@ -226,15 +242,13 @@ jobs: run: | pip3 install dist/*.whl cd / - echo "moo" python3 -c 'import pyray; pyray.init_window(100,100,"test")' >/tmp/output 2>&1 || true - echo "woo" cat /tmp/output if grep -q "INFO: Initializing raylib" /tmp/output; then - echo "boo" + echo "Passed" exit 0 else - echo "foo" + echo "Failed" exit 1 fi From b8231d23b8b56b451ce9b4d4bf91180e3b38ee4a Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 01:44:19 +0100 Subject: [PATCH 066/122] try --- .cirrus.yml | 12 ++++++++++++ .github/workflows/build.yml | 15 +++++++++++++++ raylib/build.py | 2 +- 3 files changed, 28 insertions(+), 1 deletion(-) diff --git a/.cirrus.yml b/.cirrus.yml index 48cadb6..9c65d6b 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -111,5 +111,17 @@ mac_task: - /opt/homebrew/bin/python${PY_VER} -m pip install --break-system-packages setuptools - /opt/homebrew/bin/python${PY_VER} -m pip install --break-system-packages wheel - /opt/homebrew/bin/python${PY_VER} setup.py bdist_wheel + test_script: + - /opt/homebrew/bin/python${PY_VER} -m pip install --break-system-packages dist/*.whl + - cd / + - /opt/homebrew/bin/python${PY_VER} -c 'import pyray; pyray.init_window(100,100,"test")' >/tmp/output 2>&1 || true + - cat /tmp/output + - if grep -q "INFO: Initializing raylib" /tmp/output; then + - echo "Passed" + - exit 0 + - else + - echo "Failed" + - exit 1 + - fi artifacts: path: "dist/*" \ No newline at end of file diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 03b6c01..2c3aa90 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -326,6 +326,21 @@ jobs: del raylib\dynamic\32bit\* >nul 2>&1 python setup.py bdist_wheel shell: cmd + + - name: Test + shell: bash + run: | + pip3 install dist/*.whl + cd / + python3 -c 'import pyray; pyray.init_window(100,100,"test")' >/tmp/output 2>&1 || true + cat /tmp/output + if grep -q "INFO: Initializing raylib" /tmp/output; then + echo "Passed" + exit 0 + else + echo "Failed" + exit 1 + fi - name: Upload build Artifact wheel uses: actions/upload-artifact@v3.2.1 diff --git a/raylib/build.py b/raylib/build.py index c6a9325..ac0a217 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -169,7 +169,7 @@ def build_unix(): '-framework', 'IOKit', '-framework', 'CoreFoundation', '-framework', 'CoreVideo'] if USE_SDL2: - extra_link_args += ['/usr/local/lib/libSDL2.a'] + extra_link_args += ['/usr/local/lib/libSDL2.a', '-framework', 'CoreHaptics'] libraries = [] extra_compile_args = ["-Wno-error=incompatible-function-pointer-types", "-D_CFFI_NO_LIMITED_API"] else: #platform.system() == "Linux": From fb3f3f9b228194fe6256403e5a6792e05ce25552 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 01:57:56 +0100 Subject: [PATCH 067/122] try --- .cirrus.yml | 4 ++++ raylib/build.py | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/.cirrus.yml b/.cirrus.yml index 9c65d6b..d6eb997 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -8,6 +8,10 @@ pi_task: - image: dtcooper/raspberrypi-os:python3.11-bullseye - image: dtcooper/raspberrypi-os:python3.10-bullseye - image: dtcooper/raspberrypi-os:python3.9-bullseye + env: + matrix: + - RAYLIB_PLATFORM: "Desktop" + - RAYLIB_PLATFORM: "SDL" setup_script: - apt update - apt -y install cmake libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev diff --git a/raylib/build.py b/raylib/build.py index ac0a217..d92b41d 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -169,7 +169,8 @@ def build_unix(): '-framework', 'IOKit', '-framework', 'CoreFoundation', '-framework', 'CoreVideo'] if USE_SDL2: - extra_link_args += ['/usr/local/lib/libSDL2.a', '-framework', 'CoreHaptics'] + extra_link_args += ['/usr/local/lib/libSDL2.a', '-framework', 'CoreHaptics', '-framework', 'ForceFeedback', + '-framework', 'GameController'] libraries = [] extra_compile_args = ["-Wno-error=incompatible-function-pointer-types", "-D_CFFI_NO_LIMITED_API"] else: #platform.system() == "Linux": From b3ff23e6cff69917899a261168e72a5710546c68 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 01:59:21 +0100 Subject: [PATCH 068/122] try --- .cirrus.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.cirrus.yml b/.cirrus.yml index d6eb997..0d09163 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -20,7 +20,7 @@ pi_task: - cd raylib-c - mkdir build - cd build - - cmake -DPLATFORM="Desktop" -DOPENGL_VERSION=2.1 -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + - cmake -DPLATFORM=${RAYLIB_PLATFORM} -DOPENGL_VERSION=2.1 -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. - make -j2 - make install build_script: From 2154d36b415c1a7a69c612770e27b5fc17c16ea1 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 02:19:24 +0100 Subject: [PATCH 069/122] update raylib --- .github/workflows/build.yml | 2 +- raygui | 2 +- raylib-c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2c3aa90..d428568 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -330,7 +330,7 @@ jobs: - name: Test shell: bash run: | - pip3 install dist/*.whl + pip3 install --no-deps dist/*.whl cd / python3 -c 'import pyray; pyray.init_window(100,100,"test")' >/tmp/output 2>&1 || true cat /tmp/output diff --git a/raygui b/raygui index b5a81fb..1e03efc 160000 --- a/raygui +++ b/raygui @@ -1 +1 @@ -Subproject commit b5a81fb76eec3521f4cbd6c02ace0dcc7b1cc810 +Subproject commit 1e03efca48c50c5ea4b4a053d5bf04bad58d3e43 diff --git a/raylib-c b/raylib-c index e5d0cc9..c9c830c 160000 --- a/raylib-c +++ b/raylib-c @@ -1 +1 @@ -Subproject commit e5d0cc978ae933ccccd41758d50d1cd57e3474d1 +Subproject commit c9c830cb971d7aa744fe3c7444b768ccd5176c4c From b0da3164415ec7ef17650dbb4f3b783f601519e5 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 02:30:45 +0100 Subject: [PATCH 070/122] try --- raylib/build.py | 17 +++-- raylib/raylib.h.modified | 134 +++++++++++++++----------------------- raylib/raymath.h.modified | 44 +++---------- raylib/rlgl.h.modified | 81 +++++++++-------------- setup.py | 7 +- 5 files changed, 106 insertions(+), 177 deletions(-) diff --git a/raylib/build.py b/raylib/build.py index d92b41d..9124d6f 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -26,7 +26,6 @@ import subprocess import time RAYLIB_PLATFORM = os.getenv("RAYLIB_PLATFORM", "Desktop") -USE_SDL2 = True if RAYLIB_PLATFORM == "SDL" else False def check_raylib_installed(): return subprocess.run(['pkg-config', '--exists', 'raylib'], text=True, stdout=subprocess.PIPE).returncode == 0 @@ -108,7 +107,7 @@ def build_unix(): if not check_raylib_installed(): raise Exception("ERROR: raylib not found by pkg-config. Please install pkg-config and Raylib.") - if USE_SDL2 and not check_SDL_installed(): + if RAYLIB_PLATFORM=="SDL" and not check_SDL_installed(): raise Exception("ERROR: SDL2 not found by pkg-config. Please install pkg-config and SDL2.") raylib_h = get_the_include_path() + "/raylib.h" @@ -131,7 +130,7 @@ def build_unix(): """ glfw3_h = get_the_include_path() + "/GLFW/glfw3.h" - if not USE_SDL2 and check_header_exists(glfw3_h): + if RAYLIB_PLATFORM=="Desktop" and check_header_exists(glfw3_h): ffi_includes += """ #include "GLFW/glfw3.h" """ @@ -159,7 +158,7 @@ def build_unix(): ffibuilder.cdef(pre_process_header(raygui_h)) if os.path.isfile(physac_h): ffibuilder.cdef(pre_process_header(physac_h)) - if not USE_SDL2 and os.path.isfile(glfw3_h): + if RAYLIB_PLATFORM=="Desktop" and os.path.isfile(glfw3_h): ffibuilder.cdef(pre_process_header(glfw3_h)) @@ -168,7 +167,7 @@ def build_unix(): extra_link_args = [get_the_lib_path() + '/libraylib.a', '-framework', 'OpenGL', '-framework', 'Cocoa', '-framework', 'IOKit', '-framework', 'CoreFoundation', '-framework', 'CoreVideo'] - if USE_SDL2: + if RAYLIB_PLATFORM=="SDL": extra_link_args += ['/usr/local/lib/libSDL2.a', '-framework', 'CoreHaptics', '-framework', 'ForceFeedback', '-framework', 'GameController'] libraries = [] @@ -177,7 +176,7 @@ def build_unix(): print("BUILDING FOR LINUX") extra_link_args = get_lib_flags() + [ '-lm', '-lpthread', '-lGL', '-lrt', '-lm', '-ldl', '-lX11', '-lpthread', '-latomic'] - if USE_SDL2: + if RAYLIB_PLATFORM=="SDL": extra_link_args += ['-lSDL2'] extra_compile_args = ["-Wno-incompatible-pointer-types", "-D_CFFI_NO_LIMITED_API"] libraries = [] # Not sure why but we put them in extra_link_args instead so *shouldnt* be needed here @@ -198,7 +197,7 @@ def build_unix(): def build_windows(): print("BUILDING FOR WINDOWS") ffibuilder.cdef(open("raylib/raylib.h.modified").read()) - if not USE_SDL2: + if RAYLIB_PLATFORM=="Desktop": ffibuilder.cdef(open("raylib/glfw3.h.modified").read()) ffibuilder.cdef(open("raylib/rlgl.h.modified").read()) ffibuilder.cdef(open("raylib/raygui.h.modified").read()) @@ -211,7 +210,7 @@ def build_windows(): #include "raymath.h" """ - if not USE_SDL2: + if RAYLIB_PLATFORM=="Desktop": ffi_includes += """ #include "GLFW/glfw3.h" """ @@ -224,7 +223,7 @@ def build_windows(): #include "physac.h" """ libraries = ['raylib', 'gdi32', 'shell32', 'user32', 'OpenGL32', 'winmm'] - if USE_SDL2: + if RAYLIB_PLATFORM=="SDL": libraries += ['SDL2'] print("libraries: "+str(libraries)) diff --git a/raylib/raylib.h.modified b/raylib/raylib.h.modified index 832e0e3..158519a 100644 --- a/raylib/raylib.h.modified +++ b/raylib/raylib.h.modified @@ -1,6 +1,6 @@ /********************************************************************************************** * -* raylib v5.5-dev - A simple and easy-to-use library to enjoy videogames programming (www.raylib.com) +* raylib v5.0 - A simple and easy-to-use library to enjoy videogames programming (www.raylib.com) * * FEATURES: * - NO external dependencies, all required libraries included with raylib @@ -57,7 +57,7 @@ * raylib is licensed under an unmodified zlib/libpng license, which is an OSI-certified, * BSD-like license that allows static linking with closed source software: * -* Copyright (c) 2013-2024 Ramon Santamaria (@raysan5) +* Copyright (c) 2013-2023 Ramon Santamaria (@raysan5) * * This software is provided "as-is", without any express or implied warranty. In no event * will the authors be held liable for any damages arising from the use of this software. @@ -75,9 +75,8 @@ * 3. This notice may not be removed or altered from any source distribution. * **********************************************************************************************/ -// Function specifiers in case library is build/used as a shared library +// Function specifiers in case library is build/used as a shared library (Windows) // NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll -// NOTE: visibility("default") attribute makes symbols "visible" when compiled with -fvisibility=hidden //---------------------------------------------------------------------------------- // Some basic Defines //---------------------------------------------------------------------------------- @@ -225,10 +224,8 @@ typedef struct Mesh { // Animation vertex data float *animVertices; // Animated vertex positions (after bones transformations) float *animNormals; // Animated normals (after bones transformations) - unsigned char *boneIds; // Vertex bone ids, max 255 bone ids, up to 4 bones influence by vertex (skinning) (shader-location = 6) - float *boneWeights; // Vertex bone weight, up to 4 bones influence by vertex (skinning) (shader-location = 7) - Matrix *boneMatrices; // Bones animated transformation matrices - int boneCount; // Number of bones + unsigned char *boneIds; // Vertex bone ids, max 255 bone ids, up to 4 bones influence by vertex (skinning) + float *boneWeights; // Vertex bone weight, up to 4 bones influence by vertex (skinning) // OpenGL identifiers unsigned int vaoId; // OpenGL Vertex Array Object id unsigned int *vboId; // OpenGL Vertex Buffer Objects id (default vertex data) @@ -285,7 +282,7 @@ typedef struct ModelAnimation { // Ray, ray for raycasting typedef struct Ray { Vector3 position; // Ray position (origin) - Vector3 direction; // Ray direction (normalized) + Vector3 direction; // Ray direction } Ray; // RayCollision, ray hit information typedef struct RayCollision { @@ -338,6 +335,7 @@ typedef struct VrDeviceInfo { int vResolution; // Vertical resolution in pixels float hScreenSize; // Horizontal size in meters float vScreenSize; // Vertical size in meters + float vScreenCenter; // Screen center in meters float eyeToScreenDistance; // Distance between eye and display in meters float lensSeparationDistance; // Lens separation distance in meters float interpupillaryDistance; // IPD (distance between pupils) in meters @@ -524,7 +522,7 @@ typedef enum { KEY_KP_EQUAL = 336, // Key: Keypad = // Android key buttons KEY_BACK = 4, // Key: Android back button - KEY_MENU = 5, // Key: Android menu button + KEY_MENU = 82, // Key: Android menu button KEY_VOLUME_UP = 24, // Key: Android volume up button KEY_VOLUME_DOWN = 25 // Key: Android volume down button } KeyboardKey; @@ -561,12 +559,12 @@ typedef enum { GAMEPAD_BUTTON_LEFT_FACE_DOWN, // Gamepad left DPAD down button GAMEPAD_BUTTON_LEFT_FACE_LEFT, // Gamepad left DPAD left button GAMEPAD_BUTTON_RIGHT_FACE_UP, // Gamepad right button up (i.e. PS3: Triangle, Xbox: Y) - GAMEPAD_BUTTON_RIGHT_FACE_RIGHT, // Gamepad right button right (i.e. PS3: Circle, Xbox: B) + GAMEPAD_BUTTON_RIGHT_FACE_RIGHT, // Gamepad right button right (i.e. PS3: Square, Xbox: X) GAMEPAD_BUTTON_RIGHT_FACE_DOWN, // Gamepad right button down (i.e. PS3: Cross, Xbox: A) - GAMEPAD_BUTTON_RIGHT_FACE_LEFT, // Gamepad right button left (i.e. PS3: Square, Xbox: X) + GAMEPAD_BUTTON_RIGHT_FACE_LEFT, // Gamepad right button left (i.e. PS3: Circle, Xbox: B) GAMEPAD_BUTTON_LEFT_TRIGGER_1, // Gamepad top/back trigger left (first), it could be a trailing button GAMEPAD_BUTTON_LEFT_TRIGGER_2, // Gamepad top/back trigger left (second), it could be a trailing button - GAMEPAD_BUTTON_RIGHT_TRIGGER_1, // Gamepad top/back trigger right (first), it could be a trailing button + GAMEPAD_BUTTON_RIGHT_TRIGGER_1, // Gamepad top/back trigger right (one), it could be a trailing button GAMEPAD_BUTTON_RIGHT_TRIGGER_2, // Gamepad top/back trigger right (second), it could be a trailing button GAMEPAD_BUTTON_MIDDLE_LEFT, // Gamepad center buttons, left one (i.e. PS3: Select) GAMEPAD_BUTTON_MIDDLE, // Gamepad center buttons, middle one (i.e. PS3: PS, Xbox: XBOX) @@ -624,10 +622,7 @@ typedef enum { SHADER_LOC_MAP_CUBEMAP, // Shader location: samplerCube texture: cubemap SHADER_LOC_MAP_IRRADIANCE, // Shader location: samplerCube texture: irradiance SHADER_LOC_MAP_PREFILTER, // Shader location: samplerCube texture: prefilter - SHADER_LOC_MAP_BRDF, // Shader location: sampler2d texture: brdf - SHADER_LOC_VERTEX_BONEIDS, // Shader location: vertex attribute: boneIds - SHADER_LOC_VERTEX_BONEWEIGHTS, // Shader location: vertex attribute: boneWeights - SHADER_LOC_BONE_MATRICES // Shader location: array of matrices uniform: boneMatrices + SHADER_LOC_MAP_BRDF // Shader location: sampler2d texture: brdf } ShaderLocationIndex; // Shader uniform data type typedef enum { @@ -737,11 +732,11 @@ typedef enum { } Gesture; // Camera system modes typedef enum { - CAMERA_CUSTOM = 0, // Camera custom, controlled by user (UpdateCamera() does nothing) - CAMERA_FREE, // Camera free mode - CAMERA_ORBITAL, // Camera orbital, around target, zoom supported - CAMERA_FIRST_PERSON, // Camera first person - CAMERA_THIRD_PERSON // Camera third person + CAMERA_CUSTOM = 0, // Custom camera + CAMERA_FREE, // Free camera + CAMERA_ORBITAL, // Orbital camera + CAMERA_FIRST_PERSON, // First person camera + CAMERA_THIRD_PERSON // Third person camera } CameraMode; // Camera projection typedef enum { @@ -755,7 +750,7 @@ typedef enum { NPATCH_THREE_PATCH_HORIZONTAL // Npatch layout: 3x1 tiles } NPatchLayout; // Callbacks to hook some internal functions -// WARNING: These callbacks are intended for advanced users +// WARNING: These callbacks are intended for advance users typedef void (*TraceLogCallback)(int logLevel, const char *text, void * args); // Logging: Redirect trace log messages typedef unsigned char *(*LoadFileDataCallback)(const char *fileName, int *dataSize); // FileIO: Load binary data typedef bool (*SaveFileDataCallback)(const char *fileName, void *data, int dataSize); // FileIO: Save binary data @@ -782,8 +777,8 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI bool IsWindowState(unsigned int flag); // Check if one specific window flag is enabled void SetWindowState(unsigned int flags); // Set window configuration state using flags (only PLATFORM_DESKTOP) void ClearWindowState(unsigned int flags); // Clear window configuration state flags - void ToggleFullscreen(void); // Toggle window state: fullscreen/windowed [resizes monitor to match window resolution] (only PLATFORM_DESKTOP) - void ToggleBorderlessWindowed(void); // Toggle window state: borderless windowed [resizes window to match monitor resolution] (only PLATFORM_DESKTOP) + void ToggleFullscreen(void); // Toggle window state: fullscreen/windowed (only PLATFORM_DESKTOP) + void ToggleBorderlessWindowed(void); // Toggle window state: borderless windowed (only PLATFORM_DESKTOP) void MaximizeWindow(void); // Set window state: maximized, if resizable (only PLATFORM_DESKTOP) void MinimizeWindow(void); // Set window state: minimized, if resizable (only PLATFORM_DESKTOP) void RestoreWindow(void); // Set window state: not minimized/maximized (only PLATFORM_DESKTOP) @@ -858,21 +853,20 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void SetShaderValueTexture(Shader shader, int locIndex, Texture2D texture); // Set shader uniform value for texture (sampler2d) void UnloadShader(Shader shader); // Unload shader from GPU memory (VRAM) // Screen-space-related functions - Ray GetScreenToWorldRay(Vector2 position, Camera camera); // Get a ray trace from screen position (i.e mouse) - Ray GetScreenToWorldRayEx(Vector2 position, Camera camera, int width, int height); // Get a ray trace from screen position (i.e mouse) in a viewport - Vector2 GetWorldToScreen(Vector3 position, Camera camera); // Get the screen space position for a 3d world space position - Vector2 GetWorldToScreenEx(Vector3 position, Camera camera, int width, int height); // Get size position for a 3d world space position - Vector2 GetWorldToScreen2D(Vector2 position, Camera2D camera); // Get the screen space position for a 2d camera world space position - Vector2 GetScreenToWorld2D(Vector2 position, Camera2D camera); // Get the world space position for a 2d camera screen space position + Ray GetMouseRay(Vector2 mousePosition, Camera camera); // Get a ray trace from mouse position Matrix GetCameraMatrix(Camera camera); // Get camera transform matrix (view matrix) Matrix GetCameraMatrix2D(Camera2D camera); // Get camera 2d transform matrix + Vector2 GetWorldToScreen(Vector3 position, Camera camera); // Get the screen space position for a 3d world space position + Vector2 GetScreenToWorld2D(Vector2 position, Camera2D camera); // Get the world space position for a 2d camera screen space position + Vector2 GetWorldToScreenEx(Vector3 position, Camera camera, int width, int height); // Get size position for a 3d world space position + Vector2 GetWorldToScreen2D(Vector2 position, Camera2D camera); // Get the screen space position for a 2d camera world space position // Timing-related functions void SetTargetFPS(int fps); // Set target FPS (maximum) float GetFrameTime(void); // Get time in seconds for last frame drawn (delta time) double GetTime(void); // Get elapsed time in seconds since InitWindow() int GetFPS(void); // Get current FPS // Custom frame control functions -// NOTE: Those functions are intended for advanced users that want full control over the frame processing +// NOTE: Those functions are intended for advance users that want full control over the frame processing // By default EndDrawing() does this job: draws everything + SwapScreenBuffer() + manage frame timing + PollInputEvents() // To avoid that behaviour and control frame processes manually, enable in config.h: SUPPORT_CUSTOM_FRAME_CONTROL void SwapScreenBuffer(void); // Swap back buffer with front buffer (screen drawing) @@ -895,7 +889,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void *MemRealloc(void *ptr, unsigned int size); // Internal memory reallocator void MemFree(void *ptr); // Internal memory free // Set custom callbacks -// WARNING: Callbacks setup is intended for advanced users +// WARNING: Callbacks setup is intended for advance users void SetTraceLogCallback(TraceLogCallback callback); // Set custom trace log void SetLoadFileDataCallback(LoadFileDataCallback callback); // Set custom file binary data loader void SetSaveFileDataCallback(SaveFileDataCallback callback); // Set custom file binary data saver @@ -924,9 +918,8 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI const char *GetApplicationDirectory(void); // Get the directory of the running application (uses static string) bool ChangeDirectory(const char *dir); // Change working directory, return true on success bool IsPathFile(const char *path); // Check if a given path is a file or a directory - bool IsFileNameValid(const char *fileName); // Check if fileName is valid for the platform/OS FilePathList LoadDirectoryFiles(const char *dirPath); // Load directory filepaths - FilePathList LoadDirectoryFilesEx(const char *basePath, const char *filter, bool scanSubdirs); // Load directory filepaths with extension filtering and recursive directory scan. Use 'DIR' in the filter string to include directories in the result + FilePathList LoadDirectoryFilesEx(const char *basePath, const char *filter, bool scanSubdirs); // Load directory filepaths with extension filtering and recursive directory scan void UnloadDirectoryFiles(FilePathList files); // Unload filepaths bool IsFileDropped(void); // Check if a file has been dropped into window FilePathList LoadDroppedFiles(void); // Load dropped filepaths @@ -939,7 +932,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI unsigned char *DecodeDataBase64(const unsigned char *data, int *outputSize); // Decode Base64 string data, memory must be MemFree() // Automation events functionality AutomationEventList LoadAutomationEventList(const char *fileName); // Load automation events list from file, NULL for empty list, capacity = MAX_AUTOMATION_EVENTS - void UnloadAutomationEventList(AutomationEventList list); // Unload automation events list from file + void UnloadAutomationEventList(AutomationEventList *list); // Unload automation events list from file bool ExportAutomationEventList(AutomationEventList list, const char *fileName); // Export automation events list as text file void SetAutomationEventList(AutomationEventList *list); // Set automation event list to record to void SetAutomationEventBaseFrame(int frame); // Set automation event internal base frame to start recording @@ -969,7 +962,6 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI int GetGamepadAxisCount(int gamepad); // Get gamepad axis count for a gamepad float GetGamepadAxisMovement(int gamepad, int axis); // Get axis movement value for a gamepad axis int SetGamepadMappings(const char *mappings); // Set internal gamepad mappings (SDL_GameControllerDB) - void SetGamepadVibration(int gamepad, float leftMotor, float rightMotor); // Set gamepad vibration for both motors // Input-related functions: mouse bool IsMouseButtonPressed(int button); // Check if a mouse button has been pressed once bool IsMouseButtonDown(int button); // Check if a mouse button is being pressed @@ -1014,20 +1006,18 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI // NOTE: It can be useful when using basic shapes and one single font, // defining a font char white rectangle would allow drawing everything in a single draw call void SetShapesTexture(Texture2D texture, Rectangle source); // Set texture and rectangle to be used on shapes drawing - Texture2D GetShapesTexture(void); // Get texture that is used for shapes drawing - Rectangle GetShapesTextureRectangle(void); // Get texture source rectangle that is used for shapes drawing // Basic shapes drawing functions void DrawPixel(int posX, int posY, Color color); // Draw a pixel void DrawPixelV(Vector2 position, Color color); // Draw a pixel (Vector version) void DrawLine(int startPosX, int startPosY, int endPosX, int endPosY, Color color); // Draw a line void DrawLineV(Vector2 startPos, Vector2 endPos, Color color); // Draw a line (using gl lines) void DrawLineEx(Vector2 startPos, Vector2 endPos, float thick, Color color); // Draw a line (using triangles/quads) - void DrawLineStrip(const Vector2 *points, int pointCount, Color color); // Draw lines sequence (using gl lines) + void DrawLineStrip(Vector2 *points, int pointCount, Color color); // Draw lines sequence (using gl lines) void DrawLineBezier(Vector2 startPos, Vector2 endPos, float thick, Color color); // Draw line segment cubic-bezier in-out interpolation void DrawCircle(int centerX, int centerY, float radius, Color color); // Draw a color-filled circle void DrawCircleSector(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color); // Draw a piece of a circle void DrawCircleSectorLines(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color); // Draw circle sector outline - void DrawCircleGradient(int centerX, int centerY, float radius, Color inner, Color outer); // Draw a gradient-filled circle + void DrawCircleGradient(int centerX, int centerY, float radius, Color color1, Color color2); // Draw a gradient-filled circle void DrawCircleV(Vector2 center, float radius, Color color); // Draw a color-filled circle (Vector version) void DrawCircleLines(int centerX, int centerY, float radius, Color color); // Draw circle outline void DrawCircleLinesV(Vector2 center, float radius, Color color); // Draw circle outline (Vector version) @@ -1039,27 +1029,26 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void DrawRectangleV(Vector2 position, Vector2 size, Color color); // Draw a color-filled rectangle (Vector version) void DrawRectangleRec(Rectangle rec, Color color); // Draw a color-filled rectangle void DrawRectanglePro(Rectangle rec, Vector2 origin, float rotation, Color color); // Draw a color-filled rectangle with pro parameters - void DrawRectangleGradientV(int posX, int posY, int width, int height, Color top, Color bottom); // Draw a vertical-gradient-filled rectangle - void DrawRectangleGradientH(int posX, int posY, int width, int height, Color left, Color right); // Draw a horizontal-gradient-filled rectangle - void DrawRectangleGradientEx(Rectangle rec, Color topLeft, Color bottomLeft, Color topRight, Color bottomRight); // Draw a gradient-filled rectangle with custom vertex colors + void DrawRectangleGradientV(int posX, int posY, int width, int height, Color color1, Color color2);// Draw a vertical-gradient-filled rectangle + void DrawRectangleGradientH(int posX, int posY, int width, int height, Color color1, Color color2);// Draw a horizontal-gradient-filled rectangle + void DrawRectangleGradientEx(Rectangle rec, Color col1, Color col2, Color col3, Color col4); // Draw a gradient-filled rectangle with custom vertex colors void DrawRectangleLines(int posX, int posY, int width, int height, Color color); // Draw rectangle outline void DrawRectangleLinesEx(Rectangle rec, float lineThick, Color color); // Draw rectangle outline with extended parameters void DrawRectangleRounded(Rectangle rec, float roundness, int segments, Color color); // Draw rectangle with rounded edges - void DrawRectangleRoundedLines(Rectangle rec, float roundness, int segments, Color color); // Draw rectangle lines with rounded edges - void DrawRectangleRoundedLinesEx(Rectangle rec, float roundness, int segments, float lineThick, Color color); // Draw rectangle with rounded edges outline + void DrawRectangleRoundedLines(Rectangle rec, float roundness, int segments, float lineThick, Color color); // Draw rectangle with rounded edges outline void DrawTriangle(Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw a color-filled triangle (vertex in counter-clockwise order!) void DrawTriangleLines(Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw triangle outline (vertex in counter-clockwise order!) - void DrawTriangleFan(const Vector2 *points, int pointCount, Color color); // Draw a triangle fan defined by points (first vertex is the center) - void DrawTriangleStrip(const Vector2 *points, int pointCount, Color color); // Draw a triangle strip defined by points + void DrawTriangleFan(Vector2 *points, int pointCount, Color color); // Draw a triangle fan defined by points (first vertex is the center) + void DrawTriangleStrip(Vector2 *points, int pointCount, Color color); // Draw a triangle strip defined by points void DrawPoly(Vector2 center, int sides, float radius, float rotation, Color color); // Draw a regular polygon (Vector version) void DrawPolyLines(Vector2 center, int sides, float radius, float rotation, Color color); // Draw a polygon outline of n sides void DrawPolyLinesEx(Vector2 center, int sides, float radius, float rotation, float lineThick, Color color); // Draw a polygon outline of n sides with extended parameters // Splines drawing functions - void DrawSplineLinear(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Linear, minimum 2 points - void DrawSplineBasis(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: B-Spline, minimum 4 points - void DrawSplineCatmullRom(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Catmull-Rom, minimum 4 points - void DrawSplineBezierQuadratic(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Quadratic Bezier, minimum 3 points (1 control point): [p1, c2, p3, c4...] - void DrawSplineBezierCubic(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Cubic Bezier, minimum 4 points (2 control points): [p1, c2, c3, p4, c5, c6...] + void DrawSplineLinear(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Linear, minimum 2 points + void DrawSplineBasis(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: B-Spline, minimum 4 points + void DrawSplineCatmullRom(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Catmull-Rom, minimum 4 points + void DrawSplineBezierQuadratic(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Quadratic Bezier, minimum 3 points (1 control point): [p1, c2, p3, c4...] + void DrawSplineBezierCubic(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Cubic Bezier, minimum 4 points (2 control points): [p1, c2, c3, p4, c5, c6...] void DrawSplineSegmentLinear(Vector2 p1, Vector2 p2, float thick, Color color); // Draw spline segment: Linear, 2 points void DrawSplineSegmentBasis(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float thick, Color color); // Draw spline segment: B-Spline, 4 points void DrawSplineSegmentCatmullRom(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float thick, Color color); // Draw spline segment: Catmull-Rom, 4 points @@ -1078,10 +1067,9 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI bool CheckCollisionPointRec(Vector2 point, Rectangle rec); // Check if point is inside rectangle bool CheckCollisionPointCircle(Vector2 point, Vector2 center, float radius); // Check if point is inside circle bool CheckCollisionPointTriangle(Vector2 point, Vector2 p1, Vector2 p2, Vector2 p3); // Check if point is inside a triangle - bool CheckCollisionPointPoly(Vector2 point, const Vector2 *points, int pointCount); // Check if point is within a polygon described by array of vertices + bool CheckCollisionPointPoly(Vector2 point, Vector2 *points, int pointCount); // Check if point is within a polygon described by array of vertices bool CheckCollisionLines(Vector2 startPos1, Vector2 endPos1, Vector2 startPos2, Vector2 endPos2, Vector2 *collisionPoint); // Check the collision between two lines defined by two points each, returns collision point by reference bool CheckCollisionPointLine(Vector2 point, Vector2 p1, Vector2 p2, int threshold); // Check if point belongs to line created between two points [p1] and [p2] with defined margin in pixels [threshold] - bool CheckCollisionCircleLine(Vector2 center, float radius, Vector2 p1, Vector2 p2); // Check if circle collides with a line created betweeen two points [p1] and [p2] Rectangle GetCollisionRec(Rectangle rec1, Rectangle rec2); // Get collision rectangle for two rectangles collision //------------------------------------------------------------------------------------ // Texture Loading and Drawing Functions (Module: textures) @@ -1092,7 +1080,6 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI Image LoadImageRaw(const char *fileName, int width, int height, int format, int headerSize); // Load image from RAW file data Image LoadImageSvg(const char *fileNameOrString, int width, int height); // Load image from SVG file data or string with specified size Image LoadImageAnim(const char *fileName, int *frames); // Load image sequence from file (frames appended to image.data) - Image LoadImageAnimFromMemory(const char *fileType, const unsigned char *fileData, int dataSize, int *frames); // Load image sequence from memory buffer Image LoadImageFromMemory(const char *fileType, const unsigned char *fileData, int dataSize); // Load image from memory buffer, fileType refers to extension: i.e. '.png' Image LoadImageFromTexture(Texture2D texture); // Load image from GPU texture data Image LoadImageFromScreen(void); // Load image from screen buffer and (screenshot) @@ -1114,7 +1101,6 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI // Image manipulation functions Image ImageCopy(Image image); // Create an image duplicate (useful for transformations) Image ImageFromImage(Image image, Rectangle rec); // Create an image from another image piece - Image ImageFromChannel(Image image, int selectedChannel); // Create an image from a selected channel of another image (GRAYSCALE) Image ImageText(const char *text, int fontSize, Color color); // Create an image from text (default font) Image ImageTextEx(Font font, const char *text, float fontSize, float spacing, Color tint); // Create an image from text (custom sprite font) void ImageFormat(Image *image, int newFormat); // Convert image data to desired format @@ -1125,7 +1111,6 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void ImageAlphaMask(Image *image, Image alphaMask); // Apply alpha mask to image void ImageAlphaPremultiply(Image *image); // Premultiply alpha channel void ImageBlurGaussian(Image *image, int blurSize); // Apply Gaussian blur using a box blur approximation - void ImageKernelConvolution(Image *image, const float *kernel, int kernelSize); // Apply custom square convolution kernel to image void ImageResize(Image *image, int newWidth, int newHeight); // Resize image (Bicubic scaling algorithm) void ImageResizeNN(Image *image, int newWidth,int newHeight); // Resize image (Nearest-Neighbor scaling algorithm) void ImageResizeCanvas(Image *image, int newWidth, int newHeight, int offsetX, int offsetY, Color fill); // Resize canvas and fill with color @@ -1155,7 +1140,6 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void ImageDrawPixelV(Image *dst, Vector2 position, Color color); // Draw pixel within an image (Vector version) void ImageDrawLine(Image *dst, int startPosX, int startPosY, int endPosX, int endPosY, Color color); // Draw line within an image void ImageDrawLineV(Image *dst, Vector2 start, Vector2 end, Color color); // Draw line within an image (Vector version) - void ImageDrawLineEx(Image *dst, Vector2 start, Vector2 end, int thick, Color color); // Draw a line defining thickness within an image void ImageDrawCircle(Image *dst, int centerX, int centerY, int radius, Color color); // Draw a filled circle within an image void ImageDrawCircleV(Image *dst, Vector2 center, int radius, Color color); // Draw a filled circle within an image (Vector version) void ImageDrawCircleLines(Image *dst, int centerX, int centerY, int radius, Color color); // Draw circle outline within an image @@ -1164,11 +1148,6 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void ImageDrawRectangleV(Image *dst, Vector2 position, Vector2 size, Color color); // Draw rectangle within an image (Vector version) void ImageDrawRectangleRec(Image *dst, Rectangle rec, Color color); // Draw rectangle within an image void ImageDrawRectangleLines(Image *dst, Rectangle rec, int thick, Color color); // Draw rectangle lines within an image - void ImageDrawTriangle(Image *dst, Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw triangle within an image - void ImageDrawTriangleEx(Image *dst, Vector2 v1, Vector2 v2, Vector2 v3, Color c1, Color c2, Color c3); // Draw triangle with interpolated colors within an image - void ImageDrawTriangleLines(Image *dst, Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw triangle outline within an image - void ImageDrawTriangleFan(Image *dst, Vector2 *points, int pointCount, Color color); // Draw a triangle fan defined by points within an image (first vertex is the center) - void ImageDrawTriangleStrip(Image *dst, Vector2 *points, int pointCount, Color color); // Draw a triangle strip defined by points within an image void ImageDraw(Image *dst, Image src, Rectangle srcRec, Rectangle dstRec, Color tint); // Draw a source image within a destination image (tint applied to source) void ImageDrawText(Image *dst, const char *text, int posX, int posY, int fontSize, Color color); // Draw text (using default font) within an image (destination) void ImageDrawTextEx(Image *dst, Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint); // Draw text (custom sprite font) within an image (destination) @@ -1196,9 +1175,8 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void DrawTexturePro(Texture2D texture, Rectangle source, Rectangle dest, Vector2 origin, float rotation, Color tint); // Draw a part of a texture defined by a rectangle with 'pro' parameters void DrawTextureNPatch(Texture2D texture, NPatchInfo nPatchInfo, Rectangle dest, Vector2 origin, float rotation, Color tint); // Draws a texture (or part of it) that stretches or shrinks nicely // Color/pixel related functions - bool ColorIsEqual(Color col1, Color col2); // Check if two colors are equal Color Fade(Color color, float alpha); // Get color with alpha applied, alpha goes from 0.0f to 1.0f - int ColorToInt(Color color); // Get hexadecimal value for a Color (0xRRGGBBAA) + int ColorToInt(Color color); // Get hexadecimal value for a Color Vector4 ColorNormalize(Color color); // Get Color normalized as float [0..1] Color ColorFromNormalized(Vector4 normalized); // Get Color from normalized values [0..1] Vector3 ColorToHSV(Color color); // Get HSV values for a Color, hue [0..360], saturation/value [0..1] @@ -1208,7 +1186,6 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI Color ColorContrast(Color color, float contrast); // Get color with contrast correction, contrast values between -1.0f and 1.0f Color ColorAlpha(Color color, float alpha); // Get color with alpha applied, alpha goes from 0.0f to 1.0f Color ColorAlphaBlend(Color dst, Color src, Color tint); // Get src alpha-blended into dst color with tint - Color ColorLerp(Color color1, Color color2, float factor); // Get color lerp interpolation between two colors, factor [0.0f..1.0f] Color GetColor(unsigned int hexValue); // Get Color structure from hexadecimal value Color GetPixelColor(void *srcPtr, int format); // Get Color from a source pixel pointer of certain format void SetPixelColor(void *dstPtr, Color color, int format); // Set color formatted into destination pixel pointer @@ -1219,7 +1196,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI // Font loading/unloading functions Font GetFontDefault(void); // Get the default Font Font LoadFont(const char *fileName); // Load font from file into GPU memory (VRAM) - Font LoadFontEx(const char *fileName, int fontSize, int *codepoints, int codepointCount); // Load font from file with extended parameters, use NULL for codepoints and 0 for codepointCount to load the default character set, font size is provided in pixels height + Font LoadFontEx(const char *fileName, int fontSize, int *codepoints, int codepointCount); // Load font from file with extended parameters, use NULL for codepoints and 0 for codepointCount to load the default character set Font LoadFontFromImage(Image image, Color key, int firstChar); // Load font from Image (XNA style) Font LoadFontFromMemory(const char *fileType, const unsigned char *fileData, int dataSize, int fontSize, int *codepoints, int codepointCount); // Load font from memory buffer, fileType refers to extension: i.e. '.ttf' bool IsFontReady(Font font); // Check if a font is ready @@ -1259,7 +1236,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI unsigned int TextLength(const char *text); // Get text length, checks for '\0' ending const char *TextFormat(const char *text, ...); // Text formatting with variables (sprintf() style) const char *TextSubtext(const char *text, int position, int length); // Get a piece of a text string - char *TextReplace(const char *text, const char *replace, const char *by); // Replace text string (WARNING: memory must be freed!) + char *TextReplace(char *text, const char *replace, const char *by); // Replace text string (WARNING: memory must be freed!) char *TextInsert(const char *text, const char *insert, int position); // Insert text in a position (WARNING: memory must be freed!) const char *TextJoin(const char **textList, int count, const char *delimiter); // Join text strings with delimiter const char **TextSplit(const char *text, char delimiter, int *count); // Split text into multiple strings @@ -1268,10 +1245,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI const char *TextToUpper(const char *text); // Get upper case version of provided string const char *TextToLower(const char *text); // Get lower case version of provided string const char *TextToPascal(const char *text); // Get Pascal case notation version of provided string - const char *TextToSnake(const char *text); // Get Snake case notation version of provided string - const char *TextToCamel(const char *text); // Get Camel case notation version of provided string int TextToInteger(const char *text); // Get integer value from text (negative values not supported) - float TextToFloat(const char *text); // Get float value from text (negative values not supported) //------------------------------------------------------------------------------------ // Basic 3d Shapes Drawing Functions (Module: models) //------------------------------------------------------------------------------------ @@ -1280,7 +1254,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void DrawPoint3D(Vector3 position, Color color); // Draw a point in 3D space, actually a small line void DrawCircle3D(Vector3 center, float radius, Vector3 rotationAxis, float rotationAngle, Color color); // Draw a circle in 3D world space void DrawTriangle3D(Vector3 v1, Vector3 v2, Vector3 v3, Color color); // Draw a color-filled triangle (vertex in counter-clockwise order!) - void DrawTriangleStrip3D(const Vector3 *points, int pointCount, Color color); // Draw a triangle strip defined by points + void DrawTriangleStrip3D(Vector3 *points, int pointCount, Color color); // Draw a triangle strip defined by points void DrawCube(Vector3 position, float width, float height, float length, Color color); // Draw cube void DrawCubeV(Vector3 position, Vector3 size, Color color); // Draw cube (Vector version) void DrawCubeWires(Vector3 position, float width, float height, float length, Color color); // Draw cube wires @@ -1311,10 +1285,8 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void DrawModelEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint); // Draw a model with extended parameters void DrawModelWires(Model model, Vector3 position, float scale, Color tint); // Draw a model wires (with texture if set) void DrawModelWiresEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint); // Draw a model wires (with texture if set) with extended parameters - void DrawModelPoints(Model model, Vector3 position, float scale, Color tint); // Draw a model as points - void DrawModelPointsEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint); // Draw a model as points with extended parameters void DrawBoundingBox(BoundingBox box, Color color); // Draw bounding box (wires) - void DrawBillboard(Camera camera, Texture2D texture, Vector3 position, float scale, Color tint); // Draw a billboard texture + void DrawBillboard(Camera camera, Texture2D texture, Vector3 position, float size, Color tint); // Draw a billboard texture void DrawBillboardRec(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector2 size, Color tint); // Draw a billboard texture defined by source void DrawBillboardPro(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector3 up, Vector2 size, Vector2 origin, float rotation, Color tint); // Draw a billboard texture defined by source and rotation // Mesh management functions @@ -1323,10 +1295,9 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void UnloadMesh(Mesh mesh); // Unload mesh data from CPU and GPU void DrawMesh(Mesh mesh, Material material, Matrix transform); // Draw a 3d mesh with material and transform void DrawMeshInstanced(Mesh mesh, Material material, const Matrix *transforms, int instances); // Draw multiple mesh instances with material and different transforms + bool ExportMesh(Mesh mesh, const char *fileName); // Export mesh data to file, returns true on success BoundingBox GetMeshBoundingBox(Mesh mesh); // Compute mesh bounding box limits void GenMeshTangents(Mesh *mesh); // Compute mesh tangents - bool ExportMesh(Mesh mesh, const char *fileName); // Export mesh data to file, returns true on success - bool ExportMeshAsCode(Mesh mesh, const char *fileName); // Export mesh as code file (.h) defining multiple arrays of vertex attributes // Mesh generation functions Mesh GenMeshPoly(int sides, float radius); // Generate polygonal mesh Mesh GenMeshPlane(float width, float length, int resX, int resZ); // Generate plane mesh (with subdivisions) @@ -1352,7 +1323,6 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void UnloadModelAnimation(ModelAnimation anim); // Unload animation data void UnloadModelAnimations(ModelAnimation *animations, int animCount); // Unload animation array data bool IsModelAnimationValid(Model model, ModelAnimation anim); // Check model animation skeleton match - void UpdateModelAnimationBoneMatrices(Model model, ModelAnimation anim, int frame); // Update model animation mesh bone matrices // Collision detection functions bool CheckCollisionSpheres(Vector3 center1, float radius1, Vector3 center2, float radius2); // Check collision between two spheres bool CheckCollisionBoxes(BoundingBox box1, BoundingBox box2); // Check collision between two bounding boxes @@ -1396,7 +1366,7 @@ typedef void (*AudioCallback)(void *bufferData, unsigned int frames); void SetSoundPitch(Sound sound, float pitch); // Set pitch for a sound (1.0 is base level) void SetSoundPan(Sound sound, float pan); // Set pan for a sound (0.5 is center) Wave WaveCopy(Wave wave); // Copy a wave to a new wave - void WaveCrop(Wave *wave, int initFrame, int finalFrame); // Crop a wave to defined frames range + void WaveCrop(Wave *wave, int initSample, int finalSample); // Crop a wave to defined samples range void WaveFormat(Wave *wave, int sampleRate, int sampleSize, int channels); // Convert wave data to desired format float *LoadWaveSamples(Wave wave); // Load samples data from wave as a 32bit float data array void UnloadWaveSamples(float *samples); // Unload samples data loaded with LoadWaveSamples() @@ -1433,7 +1403,7 @@ typedef void (*AudioCallback)(void *bufferData, unsigned int frames); void SetAudioStreamPan(AudioStream stream, float pan); // Set pan for audio stream (0.5 is centered) void SetAudioStreamBufferSizeDefault(int size); // Default size for new audio streams void SetAudioStreamCallback(AudioStream stream, AudioCallback callback); // Audio thread callback to request new data - void AttachAudioStreamProcessor(AudioStream stream, AudioCallback processor); // Attach audio stream processor to stream, receives the samples as 'float' + void AttachAudioStreamProcessor(AudioStream stream, AudioCallback processor); // Attach audio stream processor to stream, receives the samples as s void DetachAudioStreamProcessor(AudioStream stream, AudioCallback processor); // Detach audio stream processor from stream - void AttachAudioMixedProcessor(AudioCallback processor); // Attach audio stream processor to the entire audio pipeline, receives the samples as 'float' + void AttachAudioMixedProcessor(AudioCallback processor); // Attach audio stream processor to the entire audio pipeline, receives the samples as s void DetachAudioMixedProcessor(AudioCallback processor); // Detach audio stream processor from the entire audio pipeline \ No newline at end of file diff --git a/raylib/raymath.h.modified b/raylib/raymath.h.modified index dc0dabf..f13964b 100644 --- a/raylib/raymath.h.modified +++ b/raylib/raymath.h.modified @@ -29,7 +29,7 @@ * * LICENSE: zlib/libpng * -* Copyright (c) 2015-2024 Ramon Santamaria (@raysan5) +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) * * This software is provided "as-is", without any express or implied warranty. In no event * will the authors be held liable for any damages arising from the use of this software. @@ -99,21 +99,14 @@ inline /* Functions may be inlined or external definition used*/ Vector2 Vector2 inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Normalize(Vector2 v);// Transforms a Vector2 by a given Matrix inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Transform(Vector2 v, Matrix mat);// Calculate linear interpolation between two vectors inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Lerp(Vector2 v1, Vector2 v2, float amount);// Calculate reflected vector to normal -inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Reflect(Vector2 v, Vector2 normal);// Get min value for each pair of components -inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Min(Vector2 v1, Vector2 v2);// Get max value for each pair of components -inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Max(Vector2 v1, Vector2 v2);// Rotate vector by angle +inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Reflect(Vector2 v, Vector2 normal);// Rotate vector by angle inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Rotate(Vector2 v, float angle);// Move Vector towards target inline /* Functions may be inlined or external definition used*/ Vector2 Vector2MoveTowards(Vector2 v, Vector2 target, float maxDistance);// Invert the given vector inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Invert(Vector2 v);// Clamp the components of the vector between // min and max values specified by the given vectors inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Clamp(Vector2 v, Vector2 min, Vector2 max);// Clamp the magnitude of the vector between two min and max values inline /* Functions may be inlined or external definition used*/ Vector2 Vector2ClampValue(Vector2 v, float min, float max);// Check whether two given vectors are almost equal -inline /* Functions may be inlined or external definition used*/ int Vector2Equals(Vector2 p, Vector2 q);// Compute the direction of a refracted ray -// v: normalized direction of the incoming ray -// n: normalized normal vector of the interface of two optical media -// r: ratio of the refractive index of the medium from where the ray comes -// to the refractive index of the medium on the other side of the surface -inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Refract(Vector2 v, Vector2 n, float r);//---------------------------------------------------------------------------------- +inline /* Functions may be inlined or external definition used*/ int Vector2Equals(Vector2 p, Vector2 q);//---------------------------------------------------------------------------------- // Module Functions Definition - Vector3 math //---------------------------------------------------------------------------------- // Vector with components value 0.0f @@ -143,11 +136,8 @@ inline /* Functions may be inlined or external definition used*/ Vector3 Vector3 inline /* Functions may be inlined or external definition used*/ void Vector3OrthoNormalize(Vector3 *v1, Vector3 *v2);// Transforms a Vector3 by a given Matrix inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Transform(Vector3 v, Matrix mat);// Transform a vector by quaternion rotation inline /* Functions may be inlined or external definition used*/ Vector3 Vector3RotateByQuaternion(Vector3 v, Quaternion q);// Rotates a vector around an axis -inline /* Functions may be inlined or external definition used*/ Vector3 Vector3RotateByAxisAngle(Vector3 v, Vector3 axis, float angle);// Move Vector towards target -inline /* Functions may be inlined or external definition used*/ Vector3 Vector3MoveTowards(Vector3 v, Vector3 target, float maxDistance);// Calculate linear interpolation between two vectors -inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Lerp(Vector3 v1, Vector3 v2, float amount);// Calculate cubic hermite interpolation between two vectors and their tangents -// as described in the GLTF 2.0 specification: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#interpolation-cubic -inline /* Functions may be inlined or external definition used*/ Vector3 Vector3CubicHermite(Vector3 v1, Vector3 tangent1, Vector3 v2, Vector3 tangent2, float amount);// Calculate reflected vector to normal +inline /* Functions may be inlined or external definition used*/ Vector3 Vector3RotateByAxisAngle(Vector3 v, Vector3 axis, float angle);// Calculate linear interpolation between two vectors +inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Lerp(Vector3 v1, Vector3 v2, float amount);// Calculate reflected vector to normal inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Reflect(Vector3 v, Vector3 normal);// Get min value for each pair of components inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Min(Vector3 v1, Vector3 v2);// Get max value for each pair of components inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Max(Vector3 v1, Vector3 v2);// Compute barycenter coordinates (u, v, w) for point p with respect to triangle (a, b, c) @@ -166,21 +156,6 @@ inline /* Functions may be inlined or external definition used*/ int Vector3Equa // r: ratio of the refractive index of the medium from where the ray comes // to the refractive index of the medium on the other side of the surface inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Refract(Vector3 v, Vector3 n, float r);//---------------------------------------------------------------------------------- -// Module Functions Definition - Vector4 math -//---------------------------------------------------------------------------------- -inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Zero(void);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4One(void);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Add(Vector4 v1, Vector4 v2);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4AddValue(Vector4 v, float add);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Subtract(Vector4 v1, Vector4 v2);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4SubtractValue(Vector4 v, float add);inline /* Functions may be inlined or external definition used*/ float Vector4Length(Vector4 v);inline /* Functions may be inlined or external definition used*/ float Vector4LengthSqr(Vector4 v);inline /* Functions may be inlined or external definition used*/ float Vector4DotProduct(Vector4 v1, Vector4 v2);// Calculate distance between two vectors -inline /* Functions may be inlined or external definition used*/ float Vector4Distance(Vector4 v1, Vector4 v2);// Calculate square distance between two vectors -inline /* Functions may be inlined or external definition used*/ float Vector4DistanceSqr(Vector4 v1, Vector4 v2);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Scale(Vector4 v, float scale);// Multiply vector by vector -inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Multiply(Vector4 v1, Vector4 v2);// Negate vector -inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Negate(Vector4 v);// Divide vector by vector -inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Divide(Vector4 v1, Vector4 v2);// Normalize provided vector -inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Normalize(Vector4 v);// Get min value for each pair of components -inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Min(Vector4 v1, Vector4 v2);// Get max value for each pair of components -inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Max(Vector4 v1, Vector4 v2);// Calculate linear interpolation between two vectors -inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Lerp(Vector4 v1, Vector4 v2, float amount);// Move Vector towards target -inline /* Functions may be inlined or external definition used*/ Vector4 Vector4MoveTowards(Vector4 v, Vector4 target, float maxDistance);// Invert the given vector -inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Invert(Vector4 v);// Check whether two given vectors are almost equal -inline /* Functions may be inlined or external definition used*/ int Vector4Equals(Vector4 p, Vector4 q);//---------------------------------------------------------------------------------- // Module Functions Definition - Matrix math //---------------------------------------------------------------------------------- // Compute matrix determinant @@ -207,7 +182,7 @@ inline /* Functions may be inlined or external definition used*/ Matrix MatrixRo // NOTE: Angle must be provided in radians inline /* Functions may be inlined or external definition used*/ Matrix MatrixRotateZYX(Vector3 angle);// Get scaling matrix inline /* Functions may be inlined or external definition used*/ Matrix MatrixScale(float x, float y, float z);// Get perspective projection matrix -inline /* Functions may be inlined or external definition used*/ Matrix MatrixFrustum(double left, double right, double bottom, double top, double nearPlane, double farPlane);// Get perspective projection matrix +inline /* Functions may be inlined or external definition used*/ Matrix MatrixFrustum(double left, double right, double bottom, double top, double near, double far);// Get perspective projection matrix // NOTE: Fovy angle must be provided in radians inline /* Functions may be inlined or external definition used*/ Matrix MatrixPerspective(double fovY, double aspect, double nearPlane, double farPlane);// Get orthographic projection matrix inline /* Functions may be inlined or external definition used*/ Matrix MatrixOrtho(double left, double right, double bottom, double top, double nearPlane, double farPlane);// Get camera look-at matrix (view matrix) @@ -229,9 +204,7 @@ inline /* Functions may be inlined or external definition used*/ Quaternion Quat inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionDivide(Quaternion q1, Quaternion q2);// Calculate linear interpolation between two quaternions inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionLerp(Quaternion q1, Quaternion q2, float amount);// Calculate slerp-optimized interpolation between two quaternions inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionNlerp(Quaternion q1, Quaternion q2, float amount);// Calculates spherical linear interpolation between two quaternions -inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionSlerp(Quaternion q1, Quaternion q2, float amount);// Calculate quaternion cubic spline interpolation using Cubic Hermite Spline algorithm -// as described in the GLTF 2.0 specification: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#interpolation-cubic -inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionCubicHermiteSpline(Quaternion q1, Quaternion outTangent1, Quaternion q2, Quaternion inTangent2, float t);// Calculate quaternion based on the rotation from one vector to another +inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionSlerp(Quaternion q1, Quaternion q2, float amount);// Calculate quaternion based on the rotation from one vector to another inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionFromVector3ToVector3(Vector3 from, Vector3 to);// Get a quaternion for a given rotation matrix inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionFromMatrix(Matrix mat);// Get a matrix for a given quaternion inline /* Functions may be inlined or external definition used*/ Matrix QuaternionToMatrix(Quaternion q);// Get rotation quaternion for an angle and axis @@ -243,5 +216,4 @@ inline /* Functions may be inlined or external definition used*/ Quaternion Quat // NOTE: Angles are returned in a Vector3 struct in radians inline /* Functions may be inlined or external definition used*/ Vector3 QuaternionToEuler(Quaternion q);// Transform a quaternion given a transformation matrix inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionTransform(Quaternion q, Matrix mat);// Check whether two given quaternions are almost equal -inline /* Functions may be inlined or external definition used*/ int QuaternionEquals(Quaternion p, Quaternion q);// Decompose a transformation matrix into its rotational, translational and scaling components -inline /* Functions may be inlined or external definition used*/ void MatrixDecompose(Matrix mat, Vector3 *translation, Quaternion *rotation, Vector3 *scale); \ No newline at end of file +inline /* Functions may be inlined or external definition used*/ int QuaternionEquals(Quaternion p, Quaternion q); \ No newline at end of file diff --git a/raylib/rlgl.h.modified b/raylib/rlgl.h.modified index 2e34841..8af04cf 100644 --- a/raylib/rlgl.h.modified +++ b/raylib/rlgl.h.modified @@ -1,6 +1,6 @@ /********************************************************************************************** * -* rlgl v5.0 - A multi-OpenGL abstraction layer with an immediate-mode style API +* rlgl v4.5 - A multi-OpenGL abstraction layer with an immediate-mode style API * * DESCRIPTION: * An abstraction layer for multiple OpenGL versions (1.1, 2.1, 3.3 Core, 4.3 Core, ES 2.0) @@ -62,21 +62,18 @@ * When loading a shader, the following vertex attributes and uniform * location names are tried to be set automatically: * -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_POSITION "vertexPosition" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD "vertexTexCoord" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_NORMAL "vertexNormal" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_NORMAL -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR "vertexColor" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_COLOR -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TANGENT "vertexTangent" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TANGENT -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD2 "vertexTexCoord2" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD2 -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_BONEIDS "vertexBoneIds" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEIDS -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_BONEWEIGHTS "vertexBoneWeights" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEWEIGHTS +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_POSITION "vertexPosition" // Bound by default to shader location: 0 +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD "vertexTexCoord" // Bound by default to shader location: 1 +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_NORMAL "vertexNormal" // Bound by default to shader location: 2 +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR "vertexColor" // Bound by default to shader location: 3 +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TANGENT "vertexTangent" // Bound by default to shader location: 4 +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD2 "vertexTexCoord2" // Bound by default to shader location: 5 * #define RL_DEFAULT_SHADER_UNIFORM_NAME_MVP "mvp" // model-view-projection matrix * #define RL_DEFAULT_SHADER_UNIFORM_NAME_VIEW "matView" // view matrix * #define RL_DEFAULT_SHADER_UNIFORM_NAME_PROJECTION "matProjection" // projection matrix * #define RL_DEFAULT_SHADER_UNIFORM_NAME_MODEL "matModel" // model matrix -* #define RL_DEFAULT_SHADER_UNIFORM_NAME_NORMAL "matNormal" // normal matrix (transpose(inverse(matModelView))) +* #define RL_DEFAULT_SHADER_UNIFORM_NAME_NORMAL "matNormal" // normal matrix (transpose(inverse(matModelView)) * #define RL_DEFAULT_SHADER_UNIFORM_NAME_COLOR "colDiffuse" // color diffuse (base tint color, multiplied by texture color) -* #define RL_DEFAULT_SHADER_UNIFORM_NAME_BONE_MATRICES "boneMatrices" // bone matrices * #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE0 "texture0" // texture0 (texture slot active 0) * #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE1 "texture1" // texture1 (texture slot active 1) * #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE2 "texture2" // texture2 (texture slot active 2) @@ -88,7 +85,7 @@ * * LICENSE: zlib/libpng * -* Copyright (c) 2014-2024 Ramon Santamaria (@raysan5) +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) * * This software is provided "as-is", without any express or implied warranty. In no event * will the authors be held liable for any damages arising from the use of this software. @@ -106,9 +103,8 @@ * 3. This notice may not be removed or altered from any source distribution. * **********************************************************************************************/ -// Function specifiers in case library is build/used as a shared library +// Function specifiers in case library is build/used as a shared library (Windows) // NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll -// NOTE: visibility(default) attribute makes symbols "visible" when compiled with -fvisibility=hidden // Function specifiers definition // Support TRACELOG macros // Allow custom memory allocators @@ -137,7 +133,6 @@ // GL Shader type // GL blending factors // GL blending functions/equations -// Default shader vertex attribute locations //---------------------------------------------------------------------------------- // Types and Structures Definition //---------------------------------------------------------------------------------- @@ -146,11 +141,10 @@ typedef struct rlVertexBuffer { int elementCount; // Number of elements in the buffer (QUADS) float *vertices; // Vertex position (XYZ - 3 components per vertex) (shader-location = 0) float *texcoords; // Vertex texture coordinates (UV - 2 components per vertex) (shader-location = 1) - float *normals; // Vertex normal (XYZ - 3 components per vertex) (shader-location = 2) unsigned char *colors; // Vertex colors (RGBA - 4 components per vertex) (shader-location = 3) unsigned int *indices; // Vertex indices (in case vertex data comes indexed) (6 indices per quad) unsigned int vaoId; // OpenGL Vertex Array Object id - unsigned int vboId[5]; // OpenGL Vertex Buffer Objects id (5 types of vertex data) + unsigned int vboId[4]; // OpenGL Vertex Buffer Objects id (4 types of vertex data) } rlVertexBuffer; // Draw call type // NOTE: Only texture changes register a new draw, other state-change-related elements are not @@ -285,10 +279,6 @@ typedef enum { RL_SHADER_UNIFORM_IVEC2, // Shader uniform type: ivec2 (2 int) RL_SHADER_UNIFORM_IVEC3, // Shader uniform type: ivec3 (3 int) RL_SHADER_UNIFORM_IVEC4, // Shader uniform type: ivec4 (4 int) - RL_SHADER_UNIFORM_UINT, // Shader uniform type: unsigned int - RL_SHADER_UNIFORM_UIVEC2, // Shader uniform type: uivec2 (2 unsigned int) - RL_SHADER_UNIFORM_UIVEC3, // Shader uniform type: uivec3 (3 unsigned int) - RL_SHADER_UNIFORM_UIVEC4, // Shader uniform type: uivec4 (4 unsigned int) RL_SHADER_UNIFORM_SAMPLER2D // Shader uniform type: sampler2d } rlShaderUniformDataType; // Shader attribute data types @@ -342,9 +332,6 @@ typedef enum { void rlFrustum(double left, double right, double bottom, double top, double znear, double zfar); void rlOrtho(double left, double right, double bottom, double top, double znear, double zfar); void rlViewport(int x, int y, int width, int height); // Set the viewport area - void rlSetClipPlanes(double nearPlane, double farPlane); // Set clip planes distances - double rlGetCullDistanceNear(void); // Get cull plane distance near - double rlGetCullDistanceFar(void); // Get cull plane distance far //------------------------------------------------------------------------------------ // Functions Declaration - Vertex level operations //------------------------------------------------------------------------------------ @@ -368,10 +355,10 @@ typedef enum { void rlDisableVertexArray(void); // Disable vertex array (VAO, if supported) void rlEnableVertexBuffer(unsigned int id); // Enable vertex buffer (VBO) void rlDisableVertexBuffer(void); // Disable vertex buffer (VBO) - void rlEnableVertexBufferElement(unsigned int id); // Enable vertex buffer element (VBO element) + void rlEnableVertexBufferElement(unsigned int id);// Enable vertex buffer element (VBO element) void rlDisableVertexBufferElement(void); // Disable vertex buffer element (VBO element) void rlEnableVertexAttribute(unsigned int index); // Enable vertex attribute index - void rlDisableVertexAttribute(unsigned int index); // Disable vertex attribute index + void rlDisableVertexAttribute(unsigned int index);// Disable vertex attribute index // Textures state void rlActiveTextureSlot(int slot); // Select and active a texture slot void rlEnableTexture(unsigned int id); // Enable texture @@ -386,10 +373,8 @@ typedef enum { // Framebuffer state void rlEnableFramebuffer(unsigned int id); // Enable render texture (fbo) void rlDisableFramebuffer(void); // Disable render texture (fbo), return to default framebuffer - unsigned int rlGetActiveFramebuffer(void); // Get the currently active render texture (fbo), 0 for default framebuffer void rlActiveDrawBuffers(int count); // Activate multiple draw color buffers void rlBlitFramebuffer(int srcX, int srcY, int srcWidth, int srcHeight, int dstX, int dstY, int dstWidth, int dstHeight, int bufferMask); // Blit active framebuffer to main framebuffer - void rlBindFramebuffer(unsigned int target, unsigned int framebuffer); // Bind framebuffer (FBO) // General render state void rlEnableColorBlend(void); // Enable color blending void rlDisableColorBlend(void); // Disable color blending @@ -399,14 +384,13 @@ typedef enum { void rlDisableDepthMask(void); // Disable depth write void rlEnableBackfaceCulling(void); // Enable backface culling void rlDisableBackfaceCulling(void); // Disable backface culling - void rlColorMask(bool r, bool g, bool b, bool a); // Color mask control void rlSetCullFace(int mode); // Set face culling mode void rlEnableScissorTest(void); // Enable scissor test void rlDisableScissorTest(void); // Disable scissor test void rlScissor(int x, int y, int width, int height); // Scissor test void rlEnableWireMode(void); // Enable wire mode - void rlEnablePointMode(void); // Enable point mode - void rlDisableWireMode(void); // Disable wire (and point) mode + void rlEnablePointMode(void); // Enable point mode + void rlDisableWireMode(void); // Disable wire mode ( and point ) maybe rename void rlSetLineWidth(float width); // Set the line drawing width float rlGetLineWidth(void); // Get the line drawing width void rlEnableSmoothLines(void); // Enable line aliasing @@ -448,24 +432,24 @@ typedef enum { //------------------------------------------------------------------------------------------------------------------------ // Vertex buffers management unsigned int rlLoadVertexArray(void); // Load vertex array (vao) if supported - unsigned int rlLoadVertexBuffer(const void *buffer, int size, bool dynamic); // Load a vertex buffer object - unsigned int rlLoadVertexBufferElement(const void *buffer, int size, bool dynamic); // Load vertex buffer elements object - void rlUpdateVertexBuffer(unsigned int bufferId, const void *data, int dataSize, int offset); // Update vertex buffer object data on GPU buffer - void rlUpdateVertexBufferElements(unsigned int id, const void *data, int dataSize, int offset); // Update vertex buffer elements data on GPU buffer - void rlUnloadVertexArray(unsigned int vaoId); // Unload vertex array (vao) - void rlUnloadVertexBuffer(unsigned int vboId); // Unload vertex buffer object - void rlSetVertexAttribute(unsigned int index, int compSize, int type, bool normalized, int stride, int offset); // Set vertex attribute data configuration - void rlSetVertexAttributeDivisor(unsigned int index, int divisor); // Set vertex attribute data divisor - void rlSetVertexAttributeDefault(int locIndex, const void *value, int attribType, int count); // Set vertex attribute default value, when attribute to provided - void rlDrawVertexArray(int offset, int count); // Draw vertex array (currently active vao) - void rlDrawVertexArrayElements(int offset, int count, const void *buffer); // Draw vertex array elements - void rlDrawVertexArrayInstanced(int offset, int count, int instances); // Draw vertex array (currently active vao) with instancing - void rlDrawVertexArrayElementsInstanced(int offset, int count, const void *buffer, int instances); // Draw vertex array elements with instancing + unsigned int rlLoadVertexBuffer(const void *buffer, int size, bool dynamic); // Load a vertex buffer attribute + unsigned int rlLoadVertexBufferElement(const void *buffer, int size, bool dynamic); // Load a new attributes element buffer + void rlUpdateVertexBuffer(unsigned int bufferId, const void *data, int dataSize, int offset); // Update GPU buffer with new data + void rlUpdateVertexBufferElements(unsigned int id, const void *data, int dataSize, int offset); // Update vertex buffer elements with new data + void rlUnloadVertexArray(unsigned int vaoId); + void rlUnloadVertexBuffer(unsigned int vboId); + void rlSetVertexAttribute(unsigned int index, int compSize, int type, bool normalized, int stride, const void *pointer); + void rlSetVertexAttributeDivisor(unsigned int index, int divisor); + void rlSetVertexAttributeDefault(int locIndex, const void *value, int attribType, int count); // Set vertex attribute default value + void rlDrawVertexArray(int offset, int count); + void rlDrawVertexArrayElements(int offset, int count, const void *buffer); + void rlDrawVertexArrayInstanced(int offset, int count, int instances); + void rlDrawVertexArrayElementsInstanced(int offset, int count, const void *buffer, int instances); // Textures management - unsigned int rlLoadTexture(const void *data, int width, int height, int format, int mipmapCount); // Load texture data + unsigned int rlLoadTexture(const void *data, int width, int height, int format, int mipmapCount); // Load texture in GPU unsigned int rlLoadTextureDepth(int width, int height, bool useRenderBuffer); // Load depth texture/renderbuffer (to be attached to fbo) - unsigned int rlLoadTextureCubemap(const void *data, int size, int format); // Load texture cubemap data - void rlUpdateTexture(unsigned int id, int offsetX, int offsetY, int width, int height, int format, const void *data); // Update texture with new data on GPU + unsigned int rlLoadTextureCubemap(const void *data, int size, int format); // Load texture cubemap + void rlUpdateTexture(unsigned int id, int offsetX, int offsetY, int width, int height, int format, const void *data); // Update GPU texture with new data void rlGetGlTextureFormats(int format, unsigned int *glInternalFormat, unsigned int *glFormat, unsigned int *glType); // Get OpenGL internal formats const char *rlGetPixelFormatName(unsigned int format); // Get name string for pixel format void rlUnloadTexture(unsigned int id); // Unload texture from GPU memory @@ -473,7 +457,7 @@ typedef enum { void *rlReadTexturePixels(unsigned int id, int width, int height, int format); // Read texture pixel data unsigned char *rlReadScreenPixels(int width, int height); // Read screen pixel data (color buffer) // Framebuffer management (fbo) - unsigned int rlLoadFramebuffer(void); // Load an empty framebuffer + unsigned int rlLoadFramebuffer(int width, int height); // Load an empty framebuffer void rlFramebufferAttach(unsigned int fboId, unsigned int texId, int attachType, int texType, int mipLevel); // Attach texture/renderbuffer to a framebuffer bool rlFramebufferComplete(unsigned int id); // Verify framebuffer is complete void rlUnloadFramebuffer(unsigned int id); // Delete framebuffer from GPU @@ -486,7 +470,6 @@ typedef enum { int rlGetLocationAttrib(unsigned int shaderId, const char *attribName); // Get shader location attribute void rlSetUniform(int locIndex, const void *value, int uniformType, int count); // Set shader value uniform void rlSetUniformMatrix(int locIndex, Matrix mat); // Set shader value matrix - void rlSetUniformMatrices(int locIndex, const Matrix *mat, int count); // Set shader value matrices void rlSetUniformSampler(int locIndex, unsigned int textureId); // Set shader value sampler void rlSetShader(unsigned int id, int *locs); // Set shader currently active (id and locations) // Compute shader management diff --git a/setup.py b/setup.py index 250a9fb..7711c37 100644 --- a/setup.py +++ b/setup.py @@ -11,7 +11,12 @@ README = (HERE / "README.md").read_text() VERSION = (HERE / "version.py").read_text().split()[-1].strip("\"'") RAYLIB_PLATFORM = os.getenv("RAYLIB_PLATFORM", "Desktop") -NAME = "raylib_sdl" if RAYLIB_PLATFORM == "SDL" else "raylib" +if RAYLIB_PLATFORM == "SDL": + NAME = "raylib_sdl" +elif RAYLIB_PLATFORM == "DRM": + NAME = "raylib_drm" +else: + NAME = "raylib" class BinaryDistribution(Distribution): """Distribution which always forces a binary package with platform name""" From d17d3abb9249c0cf7b72a87602750eceb0672d1c Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 02:44:36 +0100 Subject: [PATCH 071/122] try --- .github/workflows/build.yml | 8 +-- raylib/raylib.h.modified | 138 ++++++++++++++++++++++-------------- raylib/raymath.h.modified | 44 +++++++++--- raylib/rlgl.h.modified | 81 ++++++++++++--------- 4 files changed, 173 insertions(+), 98 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d428568..3dd8823 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -15,7 +15,7 @@ jobs: runs-on: macos-12 strategy: matrix: - python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + python-version: [ '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.9', 'pypy-3.10' ] raylib-platform: ['Desktop', 'SDL'] steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it @@ -185,8 +185,8 @@ jobs: # You can use PyPy versions in python-version. # For example, pypy2 and pypy3 matrix: - python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] - raylib-platform: ['Desktop', 'SDL'] + python-version: [ '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.9', 'pypy-3.10' ] + raylib-platform: ['Desktop', 'SDL', 'DRM'] steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 @@ -269,7 +269,7 @@ jobs: # You can use PyPy versions in python-version. # For example, pypy2 and pypy3 matrix: - python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + python-version: [ '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.9', 'pypy-3.10' ] raylib-platform: ['Desktop', 'SDL'] steps: - uses: actions/checkout@v2 diff --git a/raylib/raylib.h.modified b/raylib/raylib.h.modified index 158519a..9289e54 100644 --- a/raylib/raylib.h.modified +++ b/raylib/raylib.h.modified @@ -1,6 +1,6 @@ /********************************************************************************************** * -* raylib v5.0 - A simple and easy-to-use library to enjoy videogames programming (www.raylib.com) +* raylib v5.5-dev - A simple and easy-to-use library to enjoy videogames programming (www.raylib.com) * * FEATURES: * - NO external dependencies, all required libraries included with raylib @@ -57,7 +57,7 @@ * raylib is licensed under an unmodified zlib/libpng license, which is an OSI-certified, * BSD-like license that allows static linking with closed source software: * -* Copyright (c) 2013-2023 Ramon Santamaria (@raysan5) +* Copyright (c) 2013-2024 Ramon Santamaria (@raysan5) * * This software is provided "as-is", without any express or implied warranty. In no event * will the authors be held liable for any damages arising from the use of this software. @@ -75,8 +75,9 @@ * 3. This notice may not be removed or altered from any source distribution. * **********************************************************************************************/ -// Function specifiers in case library is build/used as a shared library (Windows) +// Function specifiers in case library is build/used as a shared library // NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll +// NOTE: visibility("default") attribute makes symbols "visible" when compiled with -fvisibility=hidden //---------------------------------------------------------------------------------- // Some basic Defines //---------------------------------------------------------------------------------- @@ -224,8 +225,10 @@ typedef struct Mesh { // Animation vertex data float *animVertices; // Animated vertex positions (after bones transformations) float *animNormals; // Animated normals (after bones transformations) - unsigned char *boneIds; // Vertex bone ids, max 255 bone ids, up to 4 bones influence by vertex (skinning) - float *boneWeights; // Vertex bone weight, up to 4 bones influence by vertex (skinning) + unsigned char *boneIds; // Vertex bone ids, max 255 bone ids, up to 4 bones influence by vertex (skinning) (shader-location = 6) + float *boneWeights; // Vertex bone weight, up to 4 bones influence by vertex (skinning) (shader-location = 7) + Matrix *boneMatrices; // Bones animated transformation matrices + int boneCount; // Number of bones // OpenGL identifiers unsigned int vaoId; // OpenGL Vertex Array Object id unsigned int *vboId; // OpenGL Vertex Buffer Objects id (default vertex data) @@ -282,7 +285,7 @@ typedef struct ModelAnimation { // Ray, ray for raycasting typedef struct Ray { Vector3 position; // Ray position (origin) - Vector3 direction; // Ray direction + Vector3 direction; // Ray direction (normalized) } Ray; // RayCollision, ray hit information typedef struct RayCollision { @@ -335,7 +338,6 @@ typedef struct VrDeviceInfo { int vResolution; // Vertical resolution in pixels float hScreenSize; // Horizontal size in meters float vScreenSize; // Vertical size in meters - float vScreenCenter; // Screen center in meters float eyeToScreenDistance; // Distance between eye and display in meters float lensSeparationDistance; // Lens separation distance in meters float interpupillaryDistance; // IPD (distance between pupils) in meters @@ -522,7 +524,7 @@ typedef enum { KEY_KP_EQUAL = 336, // Key: Keypad = // Android key buttons KEY_BACK = 4, // Key: Android back button - KEY_MENU = 82, // Key: Android menu button + KEY_MENU = 5, // Key: Android menu button KEY_VOLUME_UP = 24, // Key: Android volume up button KEY_VOLUME_DOWN = 25 // Key: Android volume down button } KeyboardKey; @@ -559,12 +561,12 @@ typedef enum { GAMEPAD_BUTTON_LEFT_FACE_DOWN, // Gamepad left DPAD down button GAMEPAD_BUTTON_LEFT_FACE_LEFT, // Gamepad left DPAD left button GAMEPAD_BUTTON_RIGHT_FACE_UP, // Gamepad right button up (i.e. PS3: Triangle, Xbox: Y) - GAMEPAD_BUTTON_RIGHT_FACE_RIGHT, // Gamepad right button right (i.e. PS3: Square, Xbox: X) + GAMEPAD_BUTTON_RIGHT_FACE_RIGHT, // Gamepad right button right (i.e. PS3: Circle, Xbox: B) GAMEPAD_BUTTON_RIGHT_FACE_DOWN, // Gamepad right button down (i.e. PS3: Cross, Xbox: A) - GAMEPAD_BUTTON_RIGHT_FACE_LEFT, // Gamepad right button left (i.e. PS3: Circle, Xbox: B) + GAMEPAD_BUTTON_RIGHT_FACE_LEFT, // Gamepad right button left (i.e. PS3: Square, Xbox: X) GAMEPAD_BUTTON_LEFT_TRIGGER_1, // Gamepad top/back trigger left (first), it could be a trailing button GAMEPAD_BUTTON_LEFT_TRIGGER_2, // Gamepad top/back trigger left (second), it could be a trailing button - GAMEPAD_BUTTON_RIGHT_TRIGGER_1, // Gamepad top/back trigger right (one), it could be a trailing button + GAMEPAD_BUTTON_RIGHT_TRIGGER_1, // Gamepad top/back trigger right (first), it could be a trailing button GAMEPAD_BUTTON_RIGHT_TRIGGER_2, // Gamepad top/back trigger right (second), it could be a trailing button GAMEPAD_BUTTON_MIDDLE_LEFT, // Gamepad center buttons, left one (i.e. PS3: Select) GAMEPAD_BUTTON_MIDDLE, // Gamepad center buttons, middle one (i.e. PS3: PS, Xbox: XBOX) @@ -622,7 +624,10 @@ typedef enum { SHADER_LOC_MAP_CUBEMAP, // Shader location: samplerCube texture: cubemap SHADER_LOC_MAP_IRRADIANCE, // Shader location: samplerCube texture: irradiance SHADER_LOC_MAP_PREFILTER, // Shader location: samplerCube texture: prefilter - SHADER_LOC_MAP_BRDF // Shader location: sampler2d texture: brdf + SHADER_LOC_MAP_BRDF, // Shader location: sampler2d texture: brdf + SHADER_LOC_VERTEX_BONEIDS, // Shader location: vertex attribute: boneIds + SHADER_LOC_VERTEX_BONEWEIGHTS, // Shader location: vertex attribute: boneWeights + SHADER_LOC_BONE_MATRICES // Shader location: array of matrices uniform: boneMatrices } ShaderLocationIndex; // Shader uniform data type typedef enum { @@ -732,11 +737,11 @@ typedef enum { } Gesture; // Camera system modes typedef enum { - CAMERA_CUSTOM = 0, // Custom camera - CAMERA_FREE, // Free camera - CAMERA_ORBITAL, // Orbital camera - CAMERA_FIRST_PERSON, // First person camera - CAMERA_THIRD_PERSON // Third person camera + CAMERA_CUSTOM = 0, // Camera custom, controlled by user (UpdateCamera() does nothing) + CAMERA_FREE, // Camera free mode + CAMERA_ORBITAL, // Camera orbital, around target, zoom supported + CAMERA_FIRST_PERSON, // Camera first person + CAMERA_THIRD_PERSON // Camera third person } CameraMode; // Camera projection typedef enum { @@ -750,7 +755,7 @@ typedef enum { NPATCH_THREE_PATCH_HORIZONTAL // Npatch layout: 3x1 tiles } NPatchLayout; // Callbacks to hook some internal functions -// WARNING: These callbacks are intended for advance users +// WARNING: These callbacks are intended for advanced users typedef void (*TraceLogCallback)(int logLevel, const char *text, void * args); // Logging: Redirect trace log messages typedef unsigned char *(*LoadFileDataCallback)(const char *fileName, int *dataSize); // FileIO: Load binary data typedef bool (*SaveFileDataCallback)(const char *fileName, void *data, int dataSize); // FileIO: Save binary data @@ -777,8 +782,8 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI bool IsWindowState(unsigned int flag); // Check if one specific window flag is enabled void SetWindowState(unsigned int flags); // Set window configuration state using flags (only PLATFORM_DESKTOP) void ClearWindowState(unsigned int flags); // Clear window configuration state flags - void ToggleFullscreen(void); // Toggle window state: fullscreen/windowed (only PLATFORM_DESKTOP) - void ToggleBorderlessWindowed(void); // Toggle window state: borderless windowed (only PLATFORM_DESKTOP) + void ToggleFullscreen(void); // Toggle window state: fullscreen/windowed [resizes monitor to match window resolution] (only PLATFORM_DESKTOP) + void ToggleBorderlessWindowed(void); // Toggle window state: borderless windowed [resizes window to match monitor resolution] (only PLATFORM_DESKTOP) void MaximizeWindow(void); // Set window state: maximized, if resizable (only PLATFORM_DESKTOP) void MinimizeWindow(void); // Set window state: minimized, if resizable (only PLATFORM_DESKTOP) void RestoreWindow(void); // Set window state: not minimized/maximized (only PLATFORM_DESKTOP) @@ -853,20 +858,21 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void SetShaderValueTexture(Shader shader, int locIndex, Texture2D texture); // Set shader uniform value for texture (sampler2d) void UnloadShader(Shader shader); // Unload shader from GPU memory (VRAM) // Screen-space-related functions - Ray GetMouseRay(Vector2 mousePosition, Camera camera); // Get a ray trace from mouse position - Matrix GetCameraMatrix(Camera camera); // Get camera transform matrix (view matrix) - Matrix GetCameraMatrix2D(Camera2D camera); // Get camera 2d transform matrix + Ray GetScreenToWorldRay(Vector2 position, Camera camera); // Get a ray trace from screen position (i.e mouse) + Ray GetScreenToWorldRayEx(Vector2 position, Camera camera, int width, int height); // Get a ray trace from screen position (i.e mouse) in a viewport Vector2 GetWorldToScreen(Vector3 position, Camera camera); // Get the screen space position for a 3d world space position - Vector2 GetScreenToWorld2D(Vector2 position, Camera2D camera); // Get the world space position for a 2d camera screen space position Vector2 GetWorldToScreenEx(Vector3 position, Camera camera, int width, int height); // Get size position for a 3d world space position Vector2 GetWorldToScreen2D(Vector2 position, Camera2D camera); // Get the screen space position for a 2d camera world space position + Vector2 GetScreenToWorld2D(Vector2 position, Camera2D camera); // Get the world space position for a 2d camera screen space position + Matrix GetCameraMatrix(Camera camera); // Get camera transform matrix (view matrix) + Matrix GetCameraMatrix2D(Camera2D camera); // Get camera 2d transform matrix // Timing-related functions void SetTargetFPS(int fps); // Set target FPS (maximum) float GetFrameTime(void); // Get time in seconds for last frame drawn (delta time) double GetTime(void); // Get elapsed time in seconds since InitWindow() int GetFPS(void); // Get current FPS // Custom frame control functions -// NOTE: Those functions are intended for advance users that want full control over the frame processing +// NOTE: Those functions are intended for advanced users that want full control over the frame processing // By default EndDrawing() does this job: draws everything + SwapScreenBuffer() + manage frame timing + PollInputEvents() // To avoid that behaviour and control frame processes manually, enable in config.h: SUPPORT_CUSTOM_FRAME_CONTROL void SwapScreenBuffer(void); // Swap back buffer with front buffer (screen drawing) @@ -889,7 +895,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void *MemRealloc(void *ptr, unsigned int size); // Internal memory reallocator void MemFree(void *ptr); // Internal memory free // Set custom callbacks -// WARNING: Callbacks setup is intended for advance users +// WARNING: Callbacks setup is intended for advanced users void SetTraceLogCallback(TraceLogCallback callback); // Set custom trace log void SetLoadFileDataCallback(LoadFileDataCallback callback); // Set custom file binary data loader void SetSaveFileDataCallback(SaveFileDataCallback callback); // Set custom file binary data saver @@ -916,10 +922,12 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI const char *GetPrevDirectoryPath(const char *dirPath); // Get previous directory path for a given path (uses static string) const char *GetWorkingDirectory(void); // Get current working directory (uses static string) const char *GetApplicationDirectory(void); // Get the directory of the running application (uses static string) + int MakeDirectory(const char *dirPath); // Create directories (including full path requested), returns 0 on success bool ChangeDirectory(const char *dir); // Change working directory, return true on success bool IsPathFile(const char *path); // Check if a given path is a file or a directory + bool IsFileNameValid(const char *fileName); // Check if fileName is valid for the platform/OS FilePathList LoadDirectoryFiles(const char *dirPath); // Load directory filepaths - FilePathList LoadDirectoryFilesEx(const char *basePath, const char *filter, bool scanSubdirs); // Load directory filepaths with extension filtering and recursive directory scan + FilePathList LoadDirectoryFilesEx(const char *basePath, const char *filter, bool scanSubdirs); // Load directory filepaths with extension filtering and recursive directory scan. Use 'DIR' in the filter string to include directories in the result void UnloadDirectoryFiles(FilePathList files); // Unload filepaths bool IsFileDropped(void); // Check if a file has been dropped into window FilePathList LoadDroppedFiles(void); // Load dropped filepaths @@ -932,7 +940,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI unsigned char *DecodeDataBase64(const unsigned char *data, int *outputSize); // Decode Base64 string data, memory must be MemFree() // Automation events functionality AutomationEventList LoadAutomationEventList(const char *fileName); // Load automation events list from file, NULL for empty list, capacity = MAX_AUTOMATION_EVENTS - void UnloadAutomationEventList(AutomationEventList *list); // Unload automation events list from file + void UnloadAutomationEventList(AutomationEventList list); // Unload automation events list from file bool ExportAutomationEventList(AutomationEventList list, const char *fileName); // Export automation events list as text file void SetAutomationEventList(AutomationEventList *list); // Set automation event list to record to void SetAutomationEventBaseFrame(int frame); // Set automation event internal base frame to start recording @@ -962,6 +970,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI int GetGamepadAxisCount(int gamepad); // Get gamepad axis count for a gamepad float GetGamepadAxisMovement(int gamepad, int axis); // Get axis movement value for a gamepad axis int SetGamepadMappings(const char *mappings); // Set internal gamepad mappings (SDL_GameControllerDB) + void SetGamepadVibration(int gamepad, float leftMotor, float rightMotor); // Set gamepad vibration for both motors // Input-related functions: mouse bool IsMouseButtonPressed(int button); // Check if a mouse button has been pressed once bool IsMouseButtonDown(int button); // Check if a mouse button is being pressed @@ -1006,18 +1015,20 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI // NOTE: It can be useful when using basic shapes and one single font, // defining a font char white rectangle would allow drawing everything in a single draw call void SetShapesTexture(Texture2D texture, Rectangle source); // Set texture and rectangle to be used on shapes drawing + Texture2D GetShapesTexture(void); // Get texture that is used for shapes drawing + Rectangle GetShapesTextureRectangle(void); // Get texture source rectangle that is used for shapes drawing // Basic shapes drawing functions - void DrawPixel(int posX, int posY, Color color); // Draw a pixel - void DrawPixelV(Vector2 position, Color color); // Draw a pixel (Vector version) + void DrawPixel(int posX, int posY, Color color); // Draw a pixel using geometry [Can be slow, use with care] + void DrawPixelV(Vector2 position, Color color); // Draw a pixel using geometry (Vector version) [Can be slow, use with care] void DrawLine(int startPosX, int startPosY, int endPosX, int endPosY, Color color); // Draw a line void DrawLineV(Vector2 startPos, Vector2 endPos, Color color); // Draw a line (using gl lines) void DrawLineEx(Vector2 startPos, Vector2 endPos, float thick, Color color); // Draw a line (using triangles/quads) - void DrawLineStrip(Vector2 *points, int pointCount, Color color); // Draw lines sequence (using gl lines) + void DrawLineStrip(const Vector2 *points, int pointCount, Color color); // Draw lines sequence (using gl lines) void DrawLineBezier(Vector2 startPos, Vector2 endPos, float thick, Color color); // Draw line segment cubic-bezier in-out interpolation void DrawCircle(int centerX, int centerY, float radius, Color color); // Draw a color-filled circle void DrawCircleSector(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color); // Draw a piece of a circle void DrawCircleSectorLines(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color); // Draw circle sector outline - void DrawCircleGradient(int centerX, int centerY, float radius, Color color1, Color color2); // Draw a gradient-filled circle + void DrawCircleGradient(int centerX, int centerY, float radius, Color inner, Color outer); // Draw a gradient-filled circle void DrawCircleV(Vector2 center, float radius, Color color); // Draw a color-filled circle (Vector version) void DrawCircleLines(int centerX, int centerY, float radius, Color color); // Draw circle outline void DrawCircleLinesV(Vector2 center, float radius, Color color); // Draw circle outline (Vector version) @@ -1029,26 +1040,27 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void DrawRectangleV(Vector2 position, Vector2 size, Color color); // Draw a color-filled rectangle (Vector version) void DrawRectangleRec(Rectangle rec, Color color); // Draw a color-filled rectangle void DrawRectanglePro(Rectangle rec, Vector2 origin, float rotation, Color color); // Draw a color-filled rectangle with pro parameters - void DrawRectangleGradientV(int posX, int posY, int width, int height, Color color1, Color color2);// Draw a vertical-gradient-filled rectangle - void DrawRectangleGradientH(int posX, int posY, int width, int height, Color color1, Color color2);// Draw a horizontal-gradient-filled rectangle - void DrawRectangleGradientEx(Rectangle rec, Color col1, Color col2, Color col3, Color col4); // Draw a gradient-filled rectangle with custom vertex colors + void DrawRectangleGradientV(int posX, int posY, int width, int height, Color top, Color bottom); // Draw a vertical-gradient-filled rectangle + void DrawRectangleGradientH(int posX, int posY, int width, int height, Color left, Color right); // Draw a horizontal-gradient-filled rectangle + void DrawRectangleGradientEx(Rectangle rec, Color topLeft, Color bottomLeft, Color topRight, Color bottomRight); // Draw a gradient-filled rectangle with custom vertex colors void DrawRectangleLines(int posX, int posY, int width, int height, Color color); // Draw rectangle outline void DrawRectangleLinesEx(Rectangle rec, float lineThick, Color color); // Draw rectangle outline with extended parameters void DrawRectangleRounded(Rectangle rec, float roundness, int segments, Color color); // Draw rectangle with rounded edges - void DrawRectangleRoundedLines(Rectangle rec, float roundness, int segments, float lineThick, Color color); // Draw rectangle with rounded edges outline + void DrawRectangleRoundedLines(Rectangle rec, float roundness, int segments, Color color); // Draw rectangle lines with rounded edges + void DrawRectangleRoundedLinesEx(Rectangle rec, float roundness, int segments, float lineThick, Color color); // Draw rectangle with rounded edges outline void DrawTriangle(Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw a color-filled triangle (vertex in counter-clockwise order!) void DrawTriangleLines(Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw triangle outline (vertex in counter-clockwise order!) - void DrawTriangleFan(Vector2 *points, int pointCount, Color color); // Draw a triangle fan defined by points (first vertex is the center) - void DrawTriangleStrip(Vector2 *points, int pointCount, Color color); // Draw a triangle strip defined by points + void DrawTriangleFan(const Vector2 *points, int pointCount, Color color); // Draw a triangle fan defined by points (first vertex is the center) + void DrawTriangleStrip(const Vector2 *points, int pointCount, Color color); // Draw a triangle strip defined by points void DrawPoly(Vector2 center, int sides, float radius, float rotation, Color color); // Draw a regular polygon (Vector version) void DrawPolyLines(Vector2 center, int sides, float radius, float rotation, Color color); // Draw a polygon outline of n sides void DrawPolyLinesEx(Vector2 center, int sides, float radius, float rotation, float lineThick, Color color); // Draw a polygon outline of n sides with extended parameters // Splines drawing functions - void DrawSplineLinear(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Linear, minimum 2 points - void DrawSplineBasis(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: B-Spline, minimum 4 points - void DrawSplineCatmullRom(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Catmull-Rom, minimum 4 points - void DrawSplineBezierQuadratic(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Quadratic Bezier, minimum 3 points (1 control point): [p1, c2, p3, c4...] - void DrawSplineBezierCubic(Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Cubic Bezier, minimum 4 points (2 control points): [p1, c2, c3, p4, c5, c6...] + void DrawSplineLinear(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Linear, minimum 2 points + void DrawSplineBasis(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: B-Spline, minimum 4 points + void DrawSplineCatmullRom(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Catmull-Rom, minimum 4 points + void DrawSplineBezierQuadratic(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Quadratic Bezier, minimum 3 points (1 control point): [p1, c2, p3, c4...] + void DrawSplineBezierCubic(const Vector2 *points, int pointCount, float thick, Color color); // Draw spline: Cubic Bezier, minimum 4 points (2 control points): [p1, c2, c3, p4, c5, c6...] void DrawSplineSegmentLinear(Vector2 p1, Vector2 p2, float thick, Color color); // Draw spline segment: Linear, 2 points void DrawSplineSegmentBasis(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float thick, Color color); // Draw spline segment: B-Spline, 4 points void DrawSplineSegmentCatmullRom(Vector2 p1, Vector2 p2, Vector2 p3, Vector2 p4, float thick, Color color); // Draw spline segment: Catmull-Rom, 4 points @@ -1067,9 +1079,10 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI bool CheckCollisionPointRec(Vector2 point, Rectangle rec); // Check if point is inside rectangle bool CheckCollisionPointCircle(Vector2 point, Vector2 center, float radius); // Check if point is inside circle bool CheckCollisionPointTriangle(Vector2 point, Vector2 p1, Vector2 p2, Vector2 p3); // Check if point is inside a triangle - bool CheckCollisionPointPoly(Vector2 point, Vector2 *points, int pointCount); // Check if point is within a polygon described by array of vertices + bool CheckCollisionPointPoly(Vector2 point, const Vector2 *points, int pointCount); // Check if point is within a polygon described by array of vertices bool CheckCollisionLines(Vector2 startPos1, Vector2 endPos1, Vector2 startPos2, Vector2 endPos2, Vector2 *collisionPoint); // Check the collision between two lines defined by two points each, returns collision point by reference bool CheckCollisionPointLine(Vector2 point, Vector2 p1, Vector2 p2, int threshold); // Check if point belongs to line created between two points [p1] and [p2] with defined margin in pixels [threshold] + bool CheckCollisionCircleLine(Vector2 center, float radius, Vector2 p1, Vector2 p2); // Check if circle collides with a line created betweeen two points [p1] and [p2] Rectangle GetCollisionRec(Rectangle rec1, Rectangle rec2); // Get collision rectangle for two rectangles collision //------------------------------------------------------------------------------------ // Texture Loading and Drawing Functions (Module: textures) @@ -1078,8 +1091,8 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI // NOTE: These functions do not require GPU access Image LoadImage(const char *fileName); // Load image from file into CPU memory (RAM) Image LoadImageRaw(const char *fileName, int width, int height, int format, int headerSize); // Load image from RAW file data - Image LoadImageSvg(const char *fileNameOrString, int width, int height); // Load image from SVG file data or string with specified size Image LoadImageAnim(const char *fileName, int *frames); // Load image sequence from file (frames appended to image.data) + Image LoadImageAnimFromMemory(const char *fileType, const unsigned char *fileData, int dataSize, int *frames); // Load image sequence from memory buffer Image LoadImageFromMemory(const char *fileType, const unsigned char *fileData, int dataSize); // Load image from memory buffer, fileType refers to extension: i.e. '.png' Image LoadImageFromTexture(Texture2D texture); // Load image from GPU texture data Image LoadImageFromScreen(void); // Load image from screen buffer and (screenshot) @@ -1101,6 +1114,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI // Image manipulation functions Image ImageCopy(Image image); // Create an image duplicate (useful for transformations) Image ImageFromImage(Image image, Rectangle rec); // Create an image from another image piece + Image ImageFromChannel(Image image, int selectedChannel); // Create an image from a selected channel of another image (GRAYSCALE) Image ImageText(const char *text, int fontSize, Color color); // Create an image from text (default font) Image ImageTextEx(Font font, const char *text, float fontSize, float spacing, Color tint); // Create an image from text (custom sprite font) void ImageFormat(Image *image, int newFormat); // Convert image data to desired format @@ -1111,6 +1125,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void ImageAlphaMask(Image *image, Image alphaMask); // Apply alpha mask to image void ImageAlphaPremultiply(Image *image); // Premultiply alpha channel void ImageBlurGaussian(Image *image, int blurSize); // Apply Gaussian blur using a box blur approximation + void ImageKernelConvolution(Image *image, const float *kernel, int kernelSize); // Apply custom square convolution kernel to image void ImageResize(Image *image, int newWidth, int newHeight); // Resize image (Bicubic scaling algorithm) void ImageResizeNN(Image *image, int newWidth,int newHeight); // Resize image (Nearest-Neighbor scaling algorithm) void ImageResizeCanvas(Image *image, int newWidth, int newHeight, int offsetX, int offsetY, Color fill); // Resize canvas and fill with color @@ -1140,6 +1155,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void ImageDrawPixelV(Image *dst, Vector2 position, Color color); // Draw pixel within an image (Vector version) void ImageDrawLine(Image *dst, int startPosX, int startPosY, int endPosX, int endPosY, Color color); // Draw line within an image void ImageDrawLineV(Image *dst, Vector2 start, Vector2 end, Color color); // Draw line within an image (Vector version) + void ImageDrawLineEx(Image *dst, Vector2 start, Vector2 end, int thick, Color color); // Draw a line defining thickness within an image void ImageDrawCircle(Image *dst, int centerX, int centerY, int radius, Color color); // Draw a filled circle within an image void ImageDrawCircleV(Image *dst, Vector2 center, int radius, Color color); // Draw a filled circle within an image (Vector version) void ImageDrawCircleLines(Image *dst, int centerX, int centerY, int radius, Color color); // Draw circle outline within an image @@ -1148,6 +1164,11 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void ImageDrawRectangleV(Image *dst, Vector2 position, Vector2 size, Color color); // Draw rectangle within an image (Vector version) void ImageDrawRectangleRec(Image *dst, Rectangle rec, Color color); // Draw rectangle within an image void ImageDrawRectangleLines(Image *dst, Rectangle rec, int thick, Color color); // Draw rectangle lines within an image + void ImageDrawTriangle(Image *dst, Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw triangle within an image + void ImageDrawTriangleEx(Image *dst, Vector2 v1, Vector2 v2, Vector2 v3, Color c1, Color c2, Color c3); // Draw triangle with interpolated colors within an image + void ImageDrawTriangleLines(Image *dst, Vector2 v1, Vector2 v2, Vector2 v3, Color color); // Draw triangle outline within an image + void ImageDrawTriangleFan(Image *dst, Vector2 *points, int pointCount, Color color); // Draw a triangle fan defined by points within an image (first vertex is the center) + void ImageDrawTriangleStrip(Image *dst, Vector2 *points, int pointCount, Color color); // Draw a triangle strip defined by points within an image void ImageDraw(Image *dst, Image src, Rectangle srcRec, Rectangle dstRec, Color tint); // Draw a source image within a destination image (tint applied to source) void ImageDrawText(Image *dst, const char *text, int posX, int posY, int fontSize, Color color); // Draw text (using default font) within an image (destination) void ImageDrawTextEx(Image *dst, Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint); // Draw text (custom sprite font) within an image (destination) @@ -1175,8 +1196,9 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void DrawTexturePro(Texture2D texture, Rectangle source, Rectangle dest, Vector2 origin, float rotation, Color tint); // Draw a part of a texture defined by a rectangle with 'pro' parameters void DrawTextureNPatch(Texture2D texture, NPatchInfo nPatchInfo, Rectangle dest, Vector2 origin, float rotation, Color tint); // Draws a texture (or part of it) that stretches or shrinks nicely // Color/pixel related functions + bool ColorIsEqual(Color col1, Color col2); // Check if two colors are equal Color Fade(Color color, float alpha); // Get color with alpha applied, alpha goes from 0.0f to 1.0f - int ColorToInt(Color color); // Get hexadecimal value for a Color + int ColorToInt(Color color); // Get hexadecimal value for a Color (0xRRGGBBAA) Vector4 ColorNormalize(Color color); // Get Color normalized as float [0..1] Color ColorFromNormalized(Vector4 normalized); // Get Color from normalized values [0..1] Vector3 ColorToHSV(Color color); // Get HSV values for a Color, hue [0..360], saturation/value [0..1] @@ -1186,6 +1208,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI Color ColorContrast(Color color, float contrast); // Get color with contrast correction, contrast values between -1.0f and 1.0f Color ColorAlpha(Color color, float alpha); // Get color with alpha applied, alpha goes from 0.0f to 1.0f Color ColorAlphaBlend(Color dst, Color src, Color tint); // Get src alpha-blended into dst color with tint + Color ColorLerp(Color color1, Color color2, float factor); // Get color lerp interpolation between two colors, factor [0.0f..1.0f] Color GetColor(unsigned int hexValue); // Get Color structure from hexadecimal value Color GetPixelColor(void *srcPtr, int format); // Get Color from a source pixel pointer of certain format void SetPixelColor(void *dstPtr, Color color, int format); // Set color formatted into destination pixel pointer @@ -1196,7 +1219,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI // Font loading/unloading functions Font GetFontDefault(void); // Get the default Font Font LoadFont(const char *fileName); // Load font from file into GPU memory (VRAM) - Font LoadFontEx(const char *fileName, int fontSize, int *codepoints, int codepointCount); // Load font from file with extended parameters, use NULL for codepoints and 0 for codepointCount to load the default character set + Font LoadFontEx(const char *fileName, int fontSize, int *codepoints, int codepointCount); // Load font from file with extended parameters, use NULL for codepoints and 0 for codepointCount to load the default character set, font size is provided in pixels height Font LoadFontFromImage(Image image, Color key, int firstChar); // Load font from Image (XNA style) Font LoadFontFromMemory(const char *fileType, const unsigned char *fileData, int dataSize, int fontSize, int *codepoints, int codepointCount); // Load font from memory buffer, fileType refers to extension: i.e. '.ttf' bool IsFontReady(Font font); // Check if a font is ready @@ -1236,7 +1259,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI unsigned int TextLength(const char *text); // Get text length, checks for '\0' ending const char *TextFormat(const char *text, ...); // Text formatting with variables (sprintf() style) const char *TextSubtext(const char *text, int position, int length); // Get a piece of a text string - char *TextReplace(char *text, const char *replace, const char *by); // Replace text string (WARNING: memory must be freed!) + char *TextReplace(const char *text, const char *replace, const char *by); // Replace text string (WARNING: memory must be freed!) char *TextInsert(const char *text, const char *insert, int position); // Insert text in a position (WARNING: memory must be freed!) const char *TextJoin(const char **textList, int count, const char *delimiter); // Join text strings with delimiter const char **TextSplit(const char *text, char delimiter, int *count); // Split text into multiple strings @@ -1245,7 +1268,10 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI const char *TextToUpper(const char *text); // Get upper case version of provided string const char *TextToLower(const char *text); // Get lower case version of provided string const char *TextToPascal(const char *text); // Get Pascal case notation version of provided string + const char *TextToSnake(const char *text); // Get Snake case notation version of provided string + const char *TextToCamel(const char *text); // Get Camel case notation version of provided string int TextToInteger(const char *text); // Get integer value from text (negative values not supported) + float TextToFloat(const char *text); // Get float value from text (negative values not supported) //------------------------------------------------------------------------------------ // Basic 3d Shapes Drawing Functions (Module: models) //------------------------------------------------------------------------------------ @@ -1254,7 +1280,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void DrawPoint3D(Vector3 position, Color color); // Draw a point in 3D space, actually a small line void DrawCircle3D(Vector3 center, float radius, Vector3 rotationAxis, float rotationAngle, Color color); // Draw a circle in 3D world space void DrawTriangle3D(Vector3 v1, Vector3 v2, Vector3 v3, Color color); // Draw a color-filled triangle (vertex in counter-clockwise order!) - void DrawTriangleStrip3D(Vector3 *points, int pointCount, Color color); // Draw a triangle strip defined by points + void DrawTriangleStrip3D(const Vector3 *points, int pointCount, Color color); // Draw a triangle strip defined by points void DrawCube(Vector3 position, float width, float height, float length, Color color); // Draw cube void DrawCubeV(Vector3 position, Vector3 size, Color color); // Draw cube (Vector version) void DrawCubeWires(Vector3 position, float width, float height, float length, Color color); // Draw cube wires @@ -1285,8 +1311,10 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void DrawModelEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint); // Draw a model with extended parameters void DrawModelWires(Model model, Vector3 position, float scale, Color tint); // Draw a model wires (with texture if set) void DrawModelWiresEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint); // Draw a model wires (with texture if set) with extended parameters + void DrawModelPoints(Model model, Vector3 position, float scale, Color tint); // Draw a model as points + void DrawModelPointsEx(Model model, Vector3 position, Vector3 rotationAxis, float rotationAngle, Vector3 scale, Color tint); // Draw a model as points with extended parameters void DrawBoundingBox(BoundingBox box, Color color); // Draw bounding box (wires) - void DrawBillboard(Camera camera, Texture2D texture, Vector3 position, float size, Color tint); // Draw a billboard texture + void DrawBillboard(Camera camera, Texture2D texture, Vector3 position, float scale, Color tint); // Draw a billboard texture void DrawBillboardRec(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector2 size, Color tint); // Draw a billboard texture defined by source void DrawBillboardPro(Camera camera, Texture2D texture, Rectangle source, Vector3 position, Vector3 up, Vector2 size, Vector2 origin, float rotation, Color tint); // Draw a billboard texture defined by source and rotation // Mesh management functions @@ -1295,9 +1323,10 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void UnloadMesh(Mesh mesh); // Unload mesh data from CPU and GPU void DrawMesh(Mesh mesh, Material material, Matrix transform); // Draw a 3d mesh with material and transform void DrawMeshInstanced(Mesh mesh, Material material, const Matrix *transforms, int instances); // Draw multiple mesh instances with material and different transforms - bool ExportMesh(Mesh mesh, const char *fileName); // Export mesh data to file, returns true on success BoundingBox GetMeshBoundingBox(Mesh mesh); // Compute mesh bounding box limits void GenMeshTangents(Mesh *mesh); // Compute mesh tangents + bool ExportMesh(Mesh mesh, const char *fileName); // Export mesh data to file, returns true on success + bool ExportMeshAsCode(Mesh mesh, const char *fileName); // Export mesh as code file (.h) defining multiple arrays of vertex attributes // Mesh generation functions Mesh GenMeshPoly(int sides, float radius); // Generate polygonal mesh Mesh GenMeshPlane(float width, float length, int resX, int resZ); // Generate plane mesh (with subdivisions) @@ -1323,6 +1352,7 @@ typedef bool (*SaveFileTextCallback)(const char *fileName, char *text); // FileI void UnloadModelAnimation(ModelAnimation anim); // Unload animation data void UnloadModelAnimations(ModelAnimation *animations, int animCount); // Unload animation array data bool IsModelAnimationValid(Model model, ModelAnimation anim); // Check model animation skeleton match + void UpdateModelAnimationBoneMatrices(Model model, ModelAnimation anim, int frame); // Update model animation mesh bone matrices (Note GPU skinning does not work on Mac) // Collision detection functions bool CheckCollisionSpheres(Vector3 center1, float radius1, Vector3 center2, float radius2); // Check collision between two spheres bool CheckCollisionBoxes(BoundingBox box1, BoundingBox box2); // Check collision between two bounding boxes @@ -1366,7 +1396,7 @@ typedef void (*AudioCallback)(void *bufferData, unsigned int frames); void SetSoundPitch(Sound sound, float pitch); // Set pitch for a sound (1.0 is base level) void SetSoundPan(Sound sound, float pan); // Set pan for a sound (0.5 is center) Wave WaveCopy(Wave wave); // Copy a wave to a new wave - void WaveCrop(Wave *wave, int initSample, int finalSample); // Crop a wave to defined samples range + void WaveCrop(Wave *wave, int initFrame, int finalFrame); // Crop a wave to defined frames range void WaveFormat(Wave *wave, int sampleRate, int sampleSize, int channels); // Convert wave data to desired format float *LoadWaveSamples(Wave wave); // Load samples data from wave as a 32bit float data array void UnloadWaveSamples(float *samples); // Unload samples data loaded with LoadWaveSamples() @@ -1403,7 +1433,7 @@ typedef void (*AudioCallback)(void *bufferData, unsigned int frames); void SetAudioStreamPan(AudioStream stream, float pan); // Set pan for audio stream (0.5 is centered) void SetAudioStreamBufferSizeDefault(int size); // Default size for new audio streams void SetAudioStreamCallback(AudioStream stream, AudioCallback callback); // Audio thread callback to request new data - void AttachAudioStreamProcessor(AudioStream stream, AudioCallback processor); // Attach audio stream processor to stream, receives the samples as s + void AttachAudioStreamProcessor(AudioStream stream, AudioCallback processor); // Attach audio stream processor to stream, receives the samples as 'float' void DetachAudioStreamProcessor(AudioStream stream, AudioCallback processor); // Detach audio stream processor from stream - void AttachAudioMixedProcessor(AudioCallback processor); // Attach audio stream processor to the entire audio pipeline, receives the samples as s + void AttachAudioMixedProcessor(AudioCallback processor); // Attach audio stream processor to the entire audio pipeline, receives the samples as 'float' void DetachAudioMixedProcessor(AudioCallback processor); // Detach audio stream processor from the entire audio pipeline \ No newline at end of file diff --git a/raylib/raymath.h.modified b/raylib/raymath.h.modified index f13964b..dc0dabf 100644 --- a/raylib/raymath.h.modified +++ b/raylib/raymath.h.modified @@ -29,7 +29,7 @@ * * LICENSE: zlib/libpng * -* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* Copyright (c) 2015-2024 Ramon Santamaria (@raysan5) * * This software is provided "as-is", without any express or implied warranty. In no event * will the authors be held liable for any damages arising from the use of this software. @@ -99,14 +99,21 @@ inline /* Functions may be inlined or external definition used*/ Vector2 Vector2 inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Normalize(Vector2 v);// Transforms a Vector2 by a given Matrix inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Transform(Vector2 v, Matrix mat);// Calculate linear interpolation between two vectors inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Lerp(Vector2 v1, Vector2 v2, float amount);// Calculate reflected vector to normal -inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Reflect(Vector2 v, Vector2 normal);// Rotate vector by angle +inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Reflect(Vector2 v, Vector2 normal);// Get min value for each pair of components +inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Min(Vector2 v1, Vector2 v2);// Get max value for each pair of components +inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Max(Vector2 v1, Vector2 v2);// Rotate vector by angle inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Rotate(Vector2 v, float angle);// Move Vector towards target inline /* Functions may be inlined or external definition used*/ Vector2 Vector2MoveTowards(Vector2 v, Vector2 target, float maxDistance);// Invert the given vector inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Invert(Vector2 v);// Clamp the components of the vector between // min and max values specified by the given vectors inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Clamp(Vector2 v, Vector2 min, Vector2 max);// Clamp the magnitude of the vector between two min and max values inline /* Functions may be inlined or external definition used*/ Vector2 Vector2ClampValue(Vector2 v, float min, float max);// Check whether two given vectors are almost equal -inline /* Functions may be inlined or external definition used*/ int Vector2Equals(Vector2 p, Vector2 q);//---------------------------------------------------------------------------------- +inline /* Functions may be inlined or external definition used*/ int Vector2Equals(Vector2 p, Vector2 q);// Compute the direction of a refracted ray +// v: normalized direction of the incoming ray +// n: normalized normal vector of the interface of two optical media +// r: ratio of the refractive index of the medium from where the ray comes +// to the refractive index of the medium on the other side of the surface +inline /* Functions may be inlined or external definition used*/ Vector2 Vector2Refract(Vector2 v, Vector2 n, float r);//---------------------------------------------------------------------------------- // Module Functions Definition - Vector3 math //---------------------------------------------------------------------------------- // Vector with components value 0.0f @@ -136,8 +143,11 @@ inline /* Functions may be inlined or external definition used*/ Vector3 Vector3 inline /* Functions may be inlined or external definition used*/ void Vector3OrthoNormalize(Vector3 *v1, Vector3 *v2);// Transforms a Vector3 by a given Matrix inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Transform(Vector3 v, Matrix mat);// Transform a vector by quaternion rotation inline /* Functions may be inlined or external definition used*/ Vector3 Vector3RotateByQuaternion(Vector3 v, Quaternion q);// Rotates a vector around an axis -inline /* Functions may be inlined or external definition used*/ Vector3 Vector3RotateByAxisAngle(Vector3 v, Vector3 axis, float angle);// Calculate linear interpolation between two vectors -inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Lerp(Vector3 v1, Vector3 v2, float amount);// Calculate reflected vector to normal +inline /* Functions may be inlined or external definition used*/ Vector3 Vector3RotateByAxisAngle(Vector3 v, Vector3 axis, float angle);// Move Vector towards target +inline /* Functions may be inlined or external definition used*/ Vector3 Vector3MoveTowards(Vector3 v, Vector3 target, float maxDistance);// Calculate linear interpolation between two vectors +inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Lerp(Vector3 v1, Vector3 v2, float amount);// Calculate cubic hermite interpolation between two vectors and their tangents +// as described in the GLTF 2.0 specification: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#interpolation-cubic +inline /* Functions may be inlined or external definition used*/ Vector3 Vector3CubicHermite(Vector3 v1, Vector3 tangent1, Vector3 v2, Vector3 tangent2, float amount);// Calculate reflected vector to normal inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Reflect(Vector3 v, Vector3 normal);// Get min value for each pair of components inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Min(Vector3 v1, Vector3 v2);// Get max value for each pair of components inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Max(Vector3 v1, Vector3 v2);// Compute barycenter coordinates (u, v, w) for point p with respect to triangle (a, b, c) @@ -156,6 +166,21 @@ inline /* Functions may be inlined or external definition used*/ int Vector3Equa // r: ratio of the refractive index of the medium from where the ray comes // to the refractive index of the medium on the other side of the surface inline /* Functions may be inlined or external definition used*/ Vector3 Vector3Refract(Vector3 v, Vector3 n, float r);//---------------------------------------------------------------------------------- +// Module Functions Definition - Vector4 math +//---------------------------------------------------------------------------------- +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Zero(void);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4One(void);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Add(Vector4 v1, Vector4 v2);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4AddValue(Vector4 v, float add);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Subtract(Vector4 v1, Vector4 v2);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4SubtractValue(Vector4 v, float add);inline /* Functions may be inlined or external definition used*/ float Vector4Length(Vector4 v);inline /* Functions may be inlined or external definition used*/ float Vector4LengthSqr(Vector4 v);inline /* Functions may be inlined or external definition used*/ float Vector4DotProduct(Vector4 v1, Vector4 v2);// Calculate distance between two vectors +inline /* Functions may be inlined or external definition used*/ float Vector4Distance(Vector4 v1, Vector4 v2);// Calculate square distance between two vectors +inline /* Functions may be inlined or external definition used*/ float Vector4DistanceSqr(Vector4 v1, Vector4 v2);inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Scale(Vector4 v, float scale);// Multiply vector by vector +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Multiply(Vector4 v1, Vector4 v2);// Negate vector +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Negate(Vector4 v);// Divide vector by vector +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Divide(Vector4 v1, Vector4 v2);// Normalize provided vector +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Normalize(Vector4 v);// Get min value for each pair of components +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Min(Vector4 v1, Vector4 v2);// Get max value for each pair of components +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Max(Vector4 v1, Vector4 v2);// Calculate linear interpolation between two vectors +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Lerp(Vector4 v1, Vector4 v2, float amount);// Move Vector towards target +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4MoveTowards(Vector4 v, Vector4 target, float maxDistance);// Invert the given vector +inline /* Functions may be inlined or external definition used*/ Vector4 Vector4Invert(Vector4 v);// Check whether two given vectors are almost equal +inline /* Functions may be inlined or external definition used*/ int Vector4Equals(Vector4 p, Vector4 q);//---------------------------------------------------------------------------------- // Module Functions Definition - Matrix math //---------------------------------------------------------------------------------- // Compute matrix determinant @@ -182,7 +207,7 @@ inline /* Functions may be inlined or external definition used*/ Matrix MatrixRo // NOTE: Angle must be provided in radians inline /* Functions may be inlined or external definition used*/ Matrix MatrixRotateZYX(Vector3 angle);// Get scaling matrix inline /* Functions may be inlined or external definition used*/ Matrix MatrixScale(float x, float y, float z);// Get perspective projection matrix -inline /* Functions may be inlined or external definition used*/ Matrix MatrixFrustum(double left, double right, double bottom, double top, double near, double far);// Get perspective projection matrix +inline /* Functions may be inlined or external definition used*/ Matrix MatrixFrustum(double left, double right, double bottom, double top, double nearPlane, double farPlane);// Get perspective projection matrix // NOTE: Fovy angle must be provided in radians inline /* Functions may be inlined or external definition used*/ Matrix MatrixPerspective(double fovY, double aspect, double nearPlane, double farPlane);// Get orthographic projection matrix inline /* Functions may be inlined or external definition used*/ Matrix MatrixOrtho(double left, double right, double bottom, double top, double nearPlane, double farPlane);// Get camera look-at matrix (view matrix) @@ -204,7 +229,9 @@ inline /* Functions may be inlined or external definition used*/ Quaternion Quat inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionDivide(Quaternion q1, Quaternion q2);// Calculate linear interpolation between two quaternions inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionLerp(Quaternion q1, Quaternion q2, float amount);// Calculate slerp-optimized interpolation between two quaternions inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionNlerp(Quaternion q1, Quaternion q2, float amount);// Calculates spherical linear interpolation between two quaternions -inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionSlerp(Quaternion q1, Quaternion q2, float amount);// Calculate quaternion based on the rotation from one vector to another +inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionSlerp(Quaternion q1, Quaternion q2, float amount);// Calculate quaternion cubic spline interpolation using Cubic Hermite Spline algorithm +// as described in the GLTF 2.0 specification: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#interpolation-cubic +inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionCubicHermiteSpline(Quaternion q1, Quaternion outTangent1, Quaternion q2, Quaternion inTangent2, float t);// Calculate quaternion based on the rotation from one vector to another inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionFromVector3ToVector3(Vector3 from, Vector3 to);// Get a quaternion for a given rotation matrix inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionFromMatrix(Matrix mat);// Get a matrix for a given quaternion inline /* Functions may be inlined or external definition used*/ Matrix QuaternionToMatrix(Quaternion q);// Get rotation quaternion for an angle and axis @@ -216,4 +243,5 @@ inline /* Functions may be inlined or external definition used*/ Quaternion Quat // NOTE: Angles are returned in a Vector3 struct in radians inline /* Functions may be inlined or external definition used*/ Vector3 QuaternionToEuler(Quaternion q);// Transform a quaternion given a transformation matrix inline /* Functions may be inlined or external definition used*/ Quaternion QuaternionTransform(Quaternion q, Matrix mat);// Check whether two given quaternions are almost equal -inline /* Functions may be inlined or external definition used*/ int QuaternionEquals(Quaternion p, Quaternion q); \ No newline at end of file +inline /* Functions may be inlined or external definition used*/ int QuaternionEquals(Quaternion p, Quaternion q);// Decompose a transformation matrix into its rotational, translational and scaling components +inline /* Functions may be inlined or external definition used*/ void MatrixDecompose(Matrix mat, Vector3 *translation, Quaternion *rotation, Vector3 *scale); \ No newline at end of file diff --git a/raylib/rlgl.h.modified b/raylib/rlgl.h.modified index 8af04cf..2e34841 100644 --- a/raylib/rlgl.h.modified +++ b/raylib/rlgl.h.modified @@ -1,6 +1,6 @@ /********************************************************************************************** * -* rlgl v4.5 - A multi-OpenGL abstraction layer with an immediate-mode style API +* rlgl v5.0 - A multi-OpenGL abstraction layer with an immediate-mode style API * * DESCRIPTION: * An abstraction layer for multiple OpenGL versions (1.1, 2.1, 3.3 Core, 4.3 Core, ES 2.0) @@ -62,18 +62,21 @@ * When loading a shader, the following vertex attributes and uniform * location names are tried to be set automatically: * -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_POSITION "vertexPosition" // Bound by default to shader location: 0 -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD "vertexTexCoord" // Bound by default to shader location: 1 -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_NORMAL "vertexNormal" // Bound by default to shader location: 2 -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR "vertexColor" // Bound by default to shader location: 3 -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TANGENT "vertexTangent" // Bound by default to shader location: 4 -* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD2 "vertexTexCoord2" // Bound by default to shader location: 5 +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_POSITION "vertexPosition" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_POSITION +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD "vertexTexCoord" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_NORMAL "vertexNormal" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_NORMAL +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR "vertexColor" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_COLOR +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TANGENT "vertexTangent" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TANGENT +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD2 "vertexTexCoord2" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_TEXCOORD2 +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_BONEIDS "vertexBoneIds" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEIDS +* #define RL_DEFAULT_SHADER_ATTRIB_NAME_BONEWEIGHTS "vertexBoneWeights" // Bound by default to shader location: RL_DEFAULT_SHADER_ATTRIB_LOCATION_BONEWEIGHTS * #define RL_DEFAULT_SHADER_UNIFORM_NAME_MVP "mvp" // model-view-projection matrix * #define RL_DEFAULT_SHADER_UNIFORM_NAME_VIEW "matView" // view matrix * #define RL_DEFAULT_SHADER_UNIFORM_NAME_PROJECTION "matProjection" // projection matrix * #define RL_DEFAULT_SHADER_UNIFORM_NAME_MODEL "matModel" // model matrix -* #define RL_DEFAULT_SHADER_UNIFORM_NAME_NORMAL "matNormal" // normal matrix (transpose(inverse(matModelView)) +* #define RL_DEFAULT_SHADER_UNIFORM_NAME_NORMAL "matNormal" // normal matrix (transpose(inverse(matModelView))) * #define RL_DEFAULT_SHADER_UNIFORM_NAME_COLOR "colDiffuse" // color diffuse (base tint color, multiplied by texture color) +* #define RL_DEFAULT_SHADER_UNIFORM_NAME_BONE_MATRICES "boneMatrices" // bone matrices * #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE0 "texture0" // texture0 (texture slot active 0) * #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE1 "texture1" // texture1 (texture slot active 1) * #define RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE2 "texture2" // texture2 (texture slot active 2) @@ -85,7 +88,7 @@ * * LICENSE: zlib/libpng * -* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* Copyright (c) 2014-2024 Ramon Santamaria (@raysan5) * * This software is provided "as-is", without any express or implied warranty. In no event * will the authors be held liable for any damages arising from the use of this software. @@ -103,8 +106,9 @@ * 3. This notice may not be removed or altered from any source distribution. * **********************************************************************************************/ -// Function specifiers in case library is build/used as a shared library (Windows) +// Function specifiers in case library is build/used as a shared library // NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll +// NOTE: visibility(default) attribute makes symbols "visible" when compiled with -fvisibility=hidden // Function specifiers definition // Support TRACELOG macros // Allow custom memory allocators @@ -133,6 +137,7 @@ // GL Shader type // GL blending factors // GL blending functions/equations +// Default shader vertex attribute locations //---------------------------------------------------------------------------------- // Types and Structures Definition //---------------------------------------------------------------------------------- @@ -141,10 +146,11 @@ typedef struct rlVertexBuffer { int elementCount; // Number of elements in the buffer (QUADS) float *vertices; // Vertex position (XYZ - 3 components per vertex) (shader-location = 0) float *texcoords; // Vertex texture coordinates (UV - 2 components per vertex) (shader-location = 1) + float *normals; // Vertex normal (XYZ - 3 components per vertex) (shader-location = 2) unsigned char *colors; // Vertex colors (RGBA - 4 components per vertex) (shader-location = 3) unsigned int *indices; // Vertex indices (in case vertex data comes indexed) (6 indices per quad) unsigned int vaoId; // OpenGL Vertex Array Object id - unsigned int vboId[4]; // OpenGL Vertex Buffer Objects id (4 types of vertex data) + unsigned int vboId[5]; // OpenGL Vertex Buffer Objects id (5 types of vertex data) } rlVertexBuffer; // Draw call type // NOTE: Only texture changes register a new draw, other state-change-related elements are not @@ -279,6 +285,10 @@ typedef enum { RL_SHADER_UNIFORM_IVEC2, // Shader uniform type: ivec2 (2 int) RL_SHADER_UNIFORM_IVEC3, // Shader uniform type: ivec3 (3 int) RL_SHADER_UNIFORM_IVEC4, // Shader uniform type: ivec4 (4 int) + RL_SHADER_UNIFORM_UINT, // Shader uniform type: unsigned int + RL_SHADER_UNIFORM_UIVEC2, // Shader uniform type: uivec2 (2 unsigned int) + RL_SHADER_UNIFORM_UIVEC3, // Shader uniform type: uivec3 (3 unsigned int) + RL_SHADER_UNIFORM_UIVEC4, // Shader uniform type: uivec4 (4 unsigned int) RL_SHADER_UNIFORM_SAMPLER2D // Shader uniform type: sampler2d } rlShaderUniformDataType; // Shader attribute data types @@ -332,6 +342,9 @@ typedef enum { void rlFrustum(double left, double right, double bottom, double top, double znear, double zfar); void rlOrtho(double left, double right, double bottom, double top, double znear, double zfar); void rlViewport(int x, int y, int width, int height); // Set the viewport area + void rlSetClipPlanes(double nearPlane, double farPlane); // Set clip planes distances + double rlGetCullDistanceNear(void); // Get cull plane distance near + double rlGetCullDistanceFar(void); // Get cull plane distance far //------------------------------------------------------------------------------------ // Functions Declaration - Vertex level operations //------------------------------------------------------------------------------------ @@ -355,10 +368,10 @@ typedef enum { void rlDisableVertexArray(void); // Disable vertex array (VAO, if supported) void rlEnableVertexBuffer(unsigned int id); // Enable vertex buffer (VBO) void rlDisableVertexBuffer(void); // Disable vertex buffer (VBO) - void rlEnableVertexBufferElement(unsigned int id);// Enable vertex buffer element (VBO element) + void rlEnableVertexBufferElement(unsigned int id); // Enable vertex buffer element (VBO element) void rlDisableVertexBufferElement(void); // Disable vertex buffer element (VBO element) void rlEnableVertexAttribute(unsigned int index); // Enable vertex attribute index - void rlDisableVertexAttribute(unsigned int index);// Disable vertex attribute index + void rlDisableVertexAttribute(unsigned int index); // Disable vertex attribute index // Textures state void rlActiveTextureSlot(int slot); // Select and active a texture slot void rlEnableTexture(unsigned int id); // Enable texture @@ -373,8 +386,10 @@ typedef enum { // Framebuffer state void rlEnableFramebuffer(unsigned int id); // Enable render texture (fbo) void rlDisableFramebuffer(void); // Disable render texture (fbo), return to default framebuffer + unsigned int rlGetActiveFramebuffer(void); // Get the currently active render texture (fbo), 0 for default framebuffer void rlActiveDrawBuffers(int count); // Activate multiple draw color buffers void rlBlitFramebuffer(int srcX, int srcY, int srcWidth, int srcHeight, int dstX, int dstY, int dstWidth, int dstHeight, int bufferMask); // Blit active framebuffer to main framebuffer + void rlBindFramebuffer(unsigned int target, unsigned int framebuffer); // Bind framebuffer (FBO) // General render state void rlEnableColorBlend(void); // Enable color blending void rlDisableColorBlend(void); // Disable color blending @@ -384,13 +399,14 @@ typedef enum { void rlDisableDepthMask(void); // Disable depth write void rlEnableBackfaceCulling(void); // Enable backface culling void rlDisableBackfaceCulling(void); // Disable backface culling + void rlColorMask(bool r, bool g, bool b, bool a); // Color mask control void rlSetCullFace(int mode); // Set face culling mode void rlEnableScissorTest(void); // Enable scissor test void rlDisableScissorTest(void); // Disable scissor test void rlScissor(int x, int y, int width, int height); // Scissor test void rlEnableWireMode(void); // Enable wire mode - void rlEnablePointMode(void); // Enable point mode - void rlDisableWireMode(void); // Disable wire mode ( and point ) maybe rename + void rlEnablePointMode(void); // Enable point mode + void rlDisableWireMode(void); // Disable wire (and point) mode void rlSetLineWidth(float width); // Set the line drawing width float rlGetLineWidth(void); // Get the line drawing width void rlEnableSmoothLines(void); // Enable line aliasing @@ -432,24 +448,24 @@ typedef enum { //------------------------------------------------------------------------------------------------------------------------ // Vertex buffers management unsigned int rlLoadVertexArray(void); // Load vertex array (vao) if supported - unsigned int rlLoadVertexBuffer(const void *buffer, int size, bool dynamic); // Load a vertex buffer attribute - unsigned int rlLoadVertexBufferElement(const void *buffer, int size, bool dynamic); // Load a new attributes element buffer - void rlUpdateVertexBuffer(unsigned int bufferId, const void *data, int dataSize, int offset); // Update GPU buffer with new data - void rlUpdateVertexBufferElements(unsigned int id, const void *data, int dataSize, int offset); // Update vertex buffer elements with new data - void rlUnloadVertexArray(unsigned int vaoId); - void rlUnloadVertexBuffer(unsigned int vboId); - void rlSetVertexAttribute(unsigned int index, int compSize, int type, bool normalized, int stride, const void *pointer); - void rlSetVertexAttributeDivisor(unsigned int index, int divisor); - void rlSetVertexAttributeDefault(int locIndex, const void *value, int attribType, int count); // Set vertex attribute default value - void rlDrawVertexArray(int offset, int count); - void rlDrawVertexArrayElements(int offset, int count, const void *buffer); - void rlDrawVertexArrayInstanced(int offset, int count, int instances); - void rlDrawVertexArrayElementsInstanced(int offset, int count, const void *buffer, int instances); + unsigned int rlLoadVertexBuffer(const void *buffer, int size, bool dynamic); // Load a vertex buffer object + unsigned int rlLoadVertexBufferElement(const void *buffer, int size, bool dynamic); // Load vertex buffer elements object + void rlUpdateVertexBuffer(unsigned int bufferId, const void *data, int dataSize, int offset); // Update vertex buffer object data on GPU buffer + void rlUpdateVertexBufferElements(unsigned int id, const void *data, int dataSize, int offset); // Update vertex buffer elements data on GPU buffer + void rlUnloadVertexArray(unsigned int vaoId); // Unload vertex array (vao) + void rlUnloadVertexBuffer(unsigned int vboId); // Unload vertex buffer object + void rlSetVertexAttribute(unsigned int index, int compSize, int type, bool normalized, int stride, int offset); // Set vertex attribute data configuration + void rlSetVertexAttributeDivisor(unsigned int index, int divisor); // Set vertex attribute data divisor + void rlSetVertexAttributeDefault(int locIndex, const void *value, int attribType, int count); // Set vertex attribute default value, when attribute to provided + void rlDrawVertexArray(int offset, int count); // Draw vertex array (currently active vao) + void rlDrawVertexArrayElements(int offset, int count, const void *buffer); // Draw vertex array elements + void rlDrawVertexArrayInstanced(int offset, int count, int instances); // Draw vertex array (currently active vao) with instancing + void rlDrawVertexArrayElementsInstanced(int offset, int count, const void *buffer, int instances); // Draw vertex array elements with instancing // Textures management - unsigned int rlLoadTexture(const void *data, int width, int height, int format, int mipmapCount); // Load texture in GPU + unsigned int rlLoadTexture(const void *data, int width, int height, int format, int mipmapCount); // Load texture data unsigned int rlLoadTextureDepth(int width, int height, bool useRenderBuffer); // Load depth texture/renderbuffer (to be attached to fbo) - unsigned int rlLoadTextureCubemap(const void *data, int size, int format); // Load texture cubemap - void rlUpdateTexture(unsigned int id, int offsetX, int offsetY, int width, int height, int format, const void *data); // Update GPU texture with new data + unsigned int rlLoadTextureCubemap(const void *data, int size, int format); // Load texture cubemap data + void rlUpdateTexture(unsigned int id, int offsetX, int offsetY, int width, int height, int format, const void *data); // Update texture with new data on GPU void rlGetGlTextureFormats(int format, unsigned int *glInternalFormat, unsigned int *glFormat, unsigned int *glType); // Get OpenGL internal formats const char *rlGetPixelFormatName(unsigned int format); // Get name string for pixel format void rlUnloadTexture(unsigned int id); // Unload texture from GPU memory @@ -457,7 +473,7 @@ typedef enum { void *rlReadTexturePixels(unsigned int id, int width, int height, int format); // Read texture pixel data unsigned char *rlReadScreenPixels(int width, int height); // Read screen pixel data (color buffer) // Framebuffer management (fbo) - unsigned int rlLoadFramebuffer(int width, int height); // Load an empty framebuffer + unsigned int rlLoadFramebuffer(void); // Load an empty framebuffer void rlFramebufferAttach(unsigned int fboId, unsigned int texId, int attachType, int texType, int mipLevel); // Attach texture/renderbuffer to a framebuffer bool rlFramebufferComplete(unsigned int id); // Verify framebuffer is complete void rlUnloadFramebuffer(unsigned int id); // Delete framebuffer from GPU @@ -470,6 +486,7 @@ typedef enum { int rlGetLocationAttrib(unsigned int shaderId, const char *attribName); // Get shader location attribute void rlSetUniform(int locIndex, const void *value, int uniformType, int count); // Set shader value uniform void rlSetUniformMatrix(int locIndex, Matrix mat); // Set shader value matrix + void rlSetUniformMatrices(int locIndex, const Matrix *mat, int count); // Set shader value matrices void rlSetUniformSampler(int locIndex, unsigned int textureId); // Set shader value sampler void rlSetShader(unsigned int id, int *locs); // Set shader currently active (id and locations) // Compute shader management From 3269b0cb9b36f1aa22457a7211e15a2f9aaa84b3 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 02:59:35 +0100 Subject: [PATCH 072/122] try --- .github/workflows/build.yml | 2 +- raylib/build.py | 2 ++ version.py | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3dd8823..471a3da 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -15,7 +15,7 @@ jobs: runs-on: macos-12 strategy: matrix: - python-version: [ '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.9', 'pypy-3.10' ] + python-version: [ '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.9', 'pypy-3.10' ] raylib-platform: ['Desktop', 'SDL'] steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it diff --git a/raylib/build.py b/raylib/build.py index 9124d6f..bbce1e5 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -178,6 +178,8 @@ def build_unix(): '-lrt', '-lm', '-ldl', '-lX11', '-lpthread', '-latomic'] if RAYLIB_PLATFORM=="SDL": extra_link_args += ['-lSDL2'] + elif RAYLIB_PLATFORM=="DRM": + extra_link_args += ['-lEGL'] extra_compile_args = ["-Wno-incompatible-pointer-types", "-D_CFFI_NO_LIMITED_API"] libraries = [] # Not sure why but we put them in extra_link_args instead so *shouldnt* be needed here diff --git a/version.py b/version.py index 6c8159a..8543012 100644 --- a/version.py +++ b/version.py @@ -1 +1 @@ -__version__ = "5.5.0.0.dev1" \ No newline at end of file +__version__ = "5.5.0.0.dev2" \ No newline at end of file From adbcdce416c6fc806200abf5bf30e6ddd8da0c43 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 03:06:52 +0100 Subject: [PATCH 073/122] try --- raylib/build.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/raylib/build.py b/raylib/build.py index bbce1e5..2bfe6b8 100644 --- a/raylib/build.py +++ b/raylib/build.py @@ -179,7 +179,7 @@ def build_unix(): if RAYLIB_PLATFORM=="SDL": extra_link_args += ['-lSDL2'] elif RAYLIB_PLATFORM=="DRM": - extra_link_args += ['-lEGL'] + extra_link_args += ['-lEGL', '-lgbm'] extra_compile_args = ["-Wno-incompatible-pointer-types", "-D_CFFI_NO_LIMITED_API"] libraries = [] # Not sure why but we put them in extra_link_args instead so *shouldnt* be needed here From 4670e271ca46669f82cccc6a373d00d5e1f150b3 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 11:21:40 +0100 Subject: [PATCH 074/122] try --- .cirrus.yml | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index 0d09163..a9febd9 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -12,9 +12,19 @@ pi_task: matrix: - RAYLIB_PLATFORM: "Desktop" - RAYLIB_PLATFORM: "SDL" + - RAYLIB_PLATFORM: "DRM" setup_script: - apt update - apt -y install cmake libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev + build_sdl_script: + - wget https://github.com/libsdl-org/SDL/archive/refs/tags/release-2.30.7.tar.gz + - tar xvfz release-2.30.7.tar.gz + - mkdir buildsdl + - cd buildsdl + - cmake ../SDL-release-2.30.7 -DSDL_SHARED=OFF -DSDL_STATIC=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release + - cmake --build . --config Release + - sudo cmake --install . + - cd .. build_raylib_script: - git submodule update --init --recursive - cd raylib-c @@ -85,8 +95,8 @@ mac_task: build_sdl_script: - wget https://github.com/libsdl-org/SDL/archive/refs/tags/release-2.30.7.tar.gz - tar xvfz release-2.30.7.tar.gz - - mkdir build - - cd build + - mkdir buildsdl + - cd buildsdl - cmake ../SDL-release-2.30.7 -DSDL_SHARED=OFF -DSDL_STATIC=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release - cmake --build . --config Release - sudo cmake --install . From 62ff73d0e72725ea36748cd1ab639f72f1dd1a05 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 12:11:34 +0100 Subject: [PATCH 075/122] try --- .cirrus.yml | 2 +- .github/workflows/build.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index a9febd9..140b25a 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -23,7 +23,7 @@ pi_task: - cd buildsdl - cmake ../SDL-release-2.30.7 -DSDL_SHARED=OFF -DSDL_STATIC=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release - cmake --build . --config Release - - sudo cmake --install . + - cmake --install . - cd .. build_raylib_script: - git submodule update --init --recursive diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 471a3da..d984450 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -74,7 +74,7 @@ jobs: pip3 install "cffi>=1.17.1" pip3 install wheel pip3 install setuptools - python setup.py bdist_wheel --plat-name macosx_10_15_x86_64 + python setup.py bdist_wheel - name: Test run: | From be6cf57d85fa37251c653c66e85334322c9134b6 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 16 Oct 2024 13:49:19 +0100 Subject: [PATCH 076/122] try --- .github/workflows/build.yml | 24 +- README.md | 81 +- RPI.rst | 9 +- create_stub_pyray.py | 4 +- create_stub_static.py | 2 +- docs/.buildinfo | 4 +- docs/BUILDING.html | 24 +- docs/README.html | 121 +- docs/RPI.html | 32 +- docs/_sources/README.md.txt | 81 +- docs/_sources/RPI.rst.txt | 9 +- docs/_static/basic.css | 15 +- docs/_static/css/badge_only.css | 2 +- docs/_static/css/theme.css | 2 +- docs/_static/doctools.js | 7 - docs/_static/fonts/Lato/lato-bold.eot | Bin 0 -> 256056 bytes docs/_static/fonts/Lato/lato-bold.ttf | Bin 0 -> 600856 bytes docs/_static/fonts/Lato/lato-bold.woff | Bin 0 -> 309728 bytes docs/_static/fonts/Lato/lato-bold.woff2 | Bin 0 -> 184912 bytes docs/_static/fonts/Lato/lato-bolditalic.eot | Bin 0 -> 266158 bytes docs/_static/fonts/Lato/lato-bolditalic.ttf | Bin 0 -> 622572 bytes docs/_static/fonts/Lato/lato-bolditalic.woff | Bin 0 -> 323344 bytes docs/_static/fonts/Lato/lato-bolditalic.woff2 | Bin 0 -> 193308 bytes docs/_static/fonts/Lato/lato-italic.eot | Bin 0 -> 268604 bytes docs/_static/fonts/Lato/lato-italic.ttf | Bin 0 -> 639388 bytes docs/_static/fonts/Lato/lato-italic.woff | Bin 0 -> 328412 bytes docs/_static/fonts/Lato/lato-italic.woff2 | Bin 0 -> 195704 bytes docs/_static/fonts/Lato/lato-regular.eot | Bin 0 -> 253461 bytes docs/_static/fonts/Lato/lato-regular.ttf | Bin 0 -> 607720 bytes docs/_static/fonts/Lato/lato-regular.woff | Bin 0 -> 309192 bytes docs/_static/fonts/Lato/lato-regular.woff2 | Bin 0 -> 182708 bytes .../fonts/RobotoSlab/roboto-slab-v7-bold.eot | Bin 0 -> 79520 bytes .../fonts/RobotoSlab/roboto-slab-v7-bold.ttf | Bin 0 -> 170616 bytes .../fonts/RobotoSlab/roboto-slab-v7-bold.woff | Bin 0 -> 87624 bytes .../RobotoSlab/roboto-slab-v7-bold.woff2 | Bin 0 -> 67312 bytes .../RobotoSlab/roboto-slab-v7-regular.eot | Bin 0 -> 78331 bytes .../RobotoSlab/roboto-slab-v7-regular.ttf | Bin 0 -> 169064 bytes .../RobotoSlab/roboto-slab-v7-regular.woff | Bin 0 -> 86288 bytes .../RobotoSlab/roboto-slab-v7-regular.woff2 | Bin 0 -> 66444 bytes docs/_static/graphviz.css | 7 - docs/_static/js/html5shiv-printshiv.min.js | 4 - docs/_static/js/html5shiv.min.js | 4 - docs/_static/js/versions.js | 224 + docs/_static/language_data.js | 7 - docs/_static/searchtools.js | 45 +- docs/dynamic.html | 24 +- docs/genindex.html | 1098 +++- docs/index.html | 32 +- docs/objects.inv | Bin 21052 -> 23178 bytes docs/py-modindex.html | 24 +- docs/pyray.html | 5621 +++++++++++------ docs/raylib.html | 4483 +++++++------ docs/search.html | 24 +- docs/searchindex.js | 2 +- dynamic/raylib/defines.py | 32 +- dynamic/raylib/enums.py | 26 +- dynamic/test_pyray.py | 4 +- make_docs.sh | 5 +- pyray/__init__.pyi | 343 +- raylib/__init__.pyi | 333 +- raylib/defines.py | 32 +- raylib/enums.py | 26 +- raylib/glfw3.h.modified | 336 +- tests/test_pyray.py | 4 +- tests/test_pyray_no_prefix.py | 6 +- 65 files changed, 8668 insertions(+), 4495 deletions(-) create mode 100644 docs/_static/fonts/Lato/lato-bold.eot create mode 100644 docs/_static/fonts/Lato/lato-bold.ttf create mode 100644 docs/_static/fonts/Lato/lato-bold.woff create mode 100644 docs/_static/fonts/Lato/lato-bold.woff2 create mode 100644 docs/_static/fonts/Lato/lato-bolditalic.eot create mode 100644 docs/_static/fonts/Lato/lato-bolditalic.ttf create mode 100644 docs/_static/fonts/Lato/lato-bolditalic.woff create mode 100644 docs/_static/fonts/Lato/lato-bolditalic.woff2 create mode 100644 docs/_static/fonts/Lato/lato-italic.eot create mode 100644 docs/_static/fonts/Lato/lato-italic.ttf create mode 100644 docs/_static/fonts/Lato/lato-italic.woff create mode 100644 docs/_static/fonts/Lato/lato-italic.woff2 create mode 100644 docs/_static/fonts/Lato/lato-regular.eot create mode 100644 docs/_static/fonts/Lato/lato-regular.ttf create mode 100644 docs/_static/fonts/Lato/lato-regular.woff create mode 100644 docs/_static/fonts/Lato/lato-regular.woff2 create mode 100644 docs/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot create mode 100644 docs/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf create mode 100644 docs/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff create mode 100644 docs/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2 create mode 100644 docs/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot create mode 100644 docs/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf create mode 100644 docs/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff create mode 100644 docs/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2 delete mode 100644 docs/_static/js/html5shiv-printshiv.min.js delete mode 100644 docs/_static/js/html5shiv.min.js create mode 100644 docs/_static/js/versions.js diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d984450..f8eccb9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -19,7 +19,7 @@ jobs: raylib-platform: ['Desktop', 'SDL'] steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: submodules: recursive @@ -34,7 +34,7 @@ jobs: sudo cmake --install . - name: Setup Python - uses: actions/setup-python@v2.2.2 + uses: actions/setup-python@v5 with: # Version range or exact version of a Python version to use, using SemVer's version range syntax. python-version: ${{ matrix.python-version }} @@ -106,7 +106,7 @@ jobs: # MACOSX_DEPLOYMENT_TARGET: 11.0 # steps: # # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it -# - uses: actions/checkout@v2 +# - uses: actions/checkout@v4 # with: # submodules: recursive # @@ -121,7 +121,7 @@ jobs: # sudo cmake --install . # # - name: Setup Python -# uses: actions/setup-python@v2.2.2 +# uses: actions/setup-python@v5 # with: # # Version range or exact version of a Python version to use, using SemVer's version range syntax. # python-version: ${{ matrix.python-version }} @@ -189,12 +189,12 @@ jobs: raylib-platform: ['Desktop', 'SDL', 'DRM'] steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: submodules: recursive - name: Setup Python - uses: actions/setup-python@v2.2.2 + uses: actions/setup-python@v5 with: # Version range or exact version of a Python version to use, using SemVer's version range syntax. python-version: ${{ matrix.python-version }} @@ -272,7 +272,7 @@ jobs: python-version: [ '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.9', 'pypy-3.10' ] raylib-platform: ['Desktop', 'SDL'] steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: submodules: recursive @@ -289,7 +289,7 @@ jobs: run: echo SDL2_DIR=${{ runner.temp }}\SDL2\cmake >> $env:GITHUB_ENV - name: Setup Python - uses: actions/setup-python@v2.2.2 + uses: actions/setup-python@v5 with: # Version range or exact version of a Python version to use, using SemVer's version range syntax. python-version: ${{ matrix.python-version }} @@ -353,12 +353,12 @@ jobs: steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: submodules: recursive - name: Setup Python - uses: actions/setup-python@v2.2.2 + uses: actions/setup-python@v5 with: # Version range or exact version of a Python version to use, using SemVer's version range syntax. python-version: '3.12' @@ -400,12 +400,12 @@ jobs: steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: submodules: recursive - name: Setup Python - uses: actions/setup-python@v2.2.2 + uses: actions/setup-python@v5 with: # Version range or exact version of a Python version to use, using SemVer's version range syntax. python-version: '3.12' diff --git a/README.md b/README.md index 06d372a..17a52d5 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,6 @@ -# Python Bindings for Raylib 5.0 +# Python Bindings for Raylib 5.5 +## Libraries: raymath, raygui, rlgl, physac and GLFW +## Backends: Desktop, SDL, DRM, Web Chatroom: [Discord](https://discord.gg/fKDwt85aX6) or [Matrix](https://matrix.to/#/#raylib-python-cffi:matrix.org) @@ -8,23 +10,23 @@ original Raylib. * Faster, fewer bugs and easier to maintain than ctypes. * Commercial-friendly license. * Docstrings and auto-completion. -* **Now includes extra libraries: raymath, raygui, rlgl, physac and GLFW** + [Full documentation](http://electronstudio.github.io/raylib-python-cffi) # Quickstart -`pip3 install raylib` - - from pyray import * - init_window(800, 450, "Hello") - while not window_should_close(): - begin_drawing() - clear_background(WHITE) - draw_text("Hello world", 190, 200, 20, VIOLET) - end_drawing() - close_window() - +`pip3 install raylib==5.0.0.4` +```python +from pyray import * +init_window(800, 450, "Hello") +while not window_should_close(): + begin_drawing() + clear_background(WHITE) + draw_text("Hello world", 190, 200, 20, VIOLET) + end_drawing() +close_window() +``` # Installation @@ -35,13 +37,35 @@ First make sure you have the latest pip installed: Then install python3 -m pip install setuptools - python3 -m pip install raylib + python3 -m pip install raylib==5.0.0.4 -On most platforms it should install a binary wheel (Windows 10 x64, MacOS 12 x64/arm64, Linux Ubuntu2004 x64/arm64). - -If yours isn't available then pip will attempt to build from source, in which case you will need to have Raylib development libs installed, e.g. +On most platforms it should install a binary wheel. If yours isn't available then pip will attempt to build from source, in which case you will need to have Raylib development libs installed, e.g. using homebrew, apt, etc. +## Windows + +Binaries require x64 Windows 10 or newer. (For x86 or older Windows you will have to build from source.) + +Use an [official Windows Python release](https://www.python.org/downloads/windows/) rather than WSL, MSYS, etc. + +## MacOS + +Binaries require arm64 MacOS 13 or x64 MacOS 12 or newer. + +Older MacOS requires building from source but this is usually simple: + + brew install pkg-config + brew install raylib + python3 -m pip install raylib==5.0.0.4 + +## Linux + +Binaries require OS newer than Ubuntu 2020, x64 or arm64. Otherwise build from source. +(Pip should attempt automatically but will need Raylib itself installed and also pkg-config.) + +The arm64 builds are built on Raspberry Pi arm64 Bullseye +so may not work on other boards. + ## Raspberry Pi [Using on Rasperry Pi](RPI.rst) @@ -54,12 +78,23 @@ There is now a separate dynamic version of this binding: It works on some systems where the static version doesn't, [but be sure to read these caveats before using it](https://electronstudio.github.io/raylib-python-cffi/dynamic.html) -## Beta testing +## SDL backend -If you find a bug, it may be fixed in the [latest dev release](https://github.com/electronstudio/raylib-python-cffi/releases). -You can install an alpha or beta version by specifying the exact version number like this: +This is not well tested but has better support for controllers: - python3 -m pip install raylib==4.2.0.0.dev4 + python3 -m pip uninstall raylib + python3 -m pip install raylib_sdl + +You can't have multiple backends installed at once. + +## DRM backend + +This uses the Linux framebuffer for devices that don't run X11/Wayland: + + python3 -m pip uninstall raylib + python3 -m pip install raylib_drm + +You can't have multiple backends installed at once. ## Problems? @@ -143,9 +178,9 @@ A related library (that is a work in progress!): * Converting more examples from C to Python * Testing on more platforms -# License (updated) +# License -The bindings are now under the Eclipse Public License, so you are free to +Eclipse Public License, so you are free to statically link and use in non-free / proprietary / commercial projects! # Performance diff --git a/RPI.rst b/RPI.rst index 56ff0a3..fa37601 100644 --- a/RPI.rst +++ b/RPI.rst @@ -12,7 +12,10 @@ We have published binary wheels compiled for 64-bit Raspberry OS Bullseye in X11 python -m pip install --break-system-packages raylib -If it doesn't work, or you're not on Bullseye, or you're 32 bit, or if you want to use Raylib in ``PLATFORM_DRM`` mode, you will need to compile your own raylib. See below. +Alternatively there is a DRM wheel called ``raylib_drm`` to use the framebuffer without X11. You can't have both wheels +installed at once. + +If it doesn't work, or you're not on Bullseye, or you're 32 bit, you will need to compile your own raylib. See below. For full instructions on this, see https://github.com/raysan5/raylib/wiki/Working-on-Raspberry-Pi . If you need help with this ask Raylib. Option 2: Compile Raylib from source X11 mode @@ -39,7 +42,7 @@ Then have pip compile and install the wheel: :: python3 -m pip install --break-system-packages setuptools - python3 -m pip install --no-cache-dir --no-binary raylib --upgrade --force-reinstall --break-system-packages raylib==5.0.0.3 + python3 -m pip install --no-cache-dir --no-binary raylib --upgrade --force-reinstall --break-system-packages raylib==5.0.0.4 Option 3: Compile Raylib from source DRM mode --------------------------------------------- @@ -82,7 +85,7 @@ Then have pip compile and install the wheel: :: python3 -m pip install --break-system-packages setuptools - python3 -m pip install --no-cache-dir --no-binary raylib --upgrade --force-reinstall --break-system-packages raylib==5.0.0.3 + python3 -m pip install --no-cache-dir --no-binary raylib --upgrade --force-reinstall --break-system-packages raylib==5.0.0.4 diff --git a/create_stub_pyray.py b/create_stub_pyray.py index c96d2c0..244270d 100644 --- a/create_stub_pyray.py +++ b/create_stub_pyray.py @@ -63,8 +63,6 @@ def ctype_to_python_type(t): print("""from typing import Any -def pointer(struct): - ... """) # These words can be used for c arg names, but not in python @@ -137,7 +135,7 @@ for struct in ffi.list_types()[0]: # elif ffi.typeof(struct).kind == "enum": # print(f"{struct}: int") else: - print("ERROR UNKNOWN TYPE", ffi.typeof(struct), file=sys.stderr) + print("WARNING: SKIPPING UNKNOWN TYPE", ffi.typeof(struct), file=sys.stderr) print(""" LIGHTGRAY : Color diff --git a/create_stub_static.py b/create_stub_static.py index 7f4915e..1a61104 100644 --- a/create_stub_static.py +++ b/create_stub_static.py @@ -133,7 +133,7 @@ for struct in ffi.list_types()[0]: elif ffi.typeof(struct).kind == "enum": print(f"{struct}: int") else: - print("ERROR UNKNOWN TYPE", ffi.typeof(struct), file=sys.stderr) + print("WARNING: SKIPPING UNKNOWN TYPE", ffi.typeof(struct), file=sys.stderr) print(""" diff --git a/docs/.buildinfo b/docs/.buildinfo index 0e5c030..4214e1f 100644 --- a/docs/.buildinfo +++ b/docs/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 -# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 614f580883a5bffb7f1606004f7be223 +# This file records the configuration used when building these files. When it is not found, a full rebuild will be done. +config: 6b88b88b20947586d6498748ffd23a92 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/docs/BUILDING.html b/docs/BUILDING.html index 149d339..6d7d4f8 100644 --- a/docs/BUILDING.html +++ b/docs/BUILDING.html @@ -1,3 +1,5 @@ + + @@ -6,19 +8,15 @@ Building from source — Raylib Python documentation - - + + - - - - - - - + + + + + @@ -47,7 +45,7 @@
diff --git a/docs/_sources/README.md.txt b/docs/_sources/README.md.txt index 06d372a..17a52d5 100644 --- a/docs/_sources/README.md.txt +++ b/docs/_sources/README.md.txt @@ -1,4 +1,6 @@ -# Python Bindings for Raylib 5.0 +# Python Bindings for Raylib 5.5 +## Libraries: raymath, raygui, rlgl, physac and GLFW +## Backends: Desktop, SDL, DRM, Web Chatroom: [Discord](https://discord.gg/fKDwt85aX6) or [Matrix](https://matrix.to/#/#raylib-python-cffi:matrix.org) @@ -8,23 +10,23 @@ original Raylib. * Faster, fewer bugs and easier to maintain than ctypes. * Commercial-friendly license. * Docstrings and auto-completion. -* **Now includes extra libraries: raymath, raygui, rlgl, physac and GLFW** + [Full documentation](http://electronstudio.github.io/raylib-python-cffi) # Quickstart -`pip3 install raylib` - - from pyray import * - init_window(800, 450, "Hello") - while not window_should_close(): - begin_drawing() - clear_background(WHITE) - draw_text("Hello world", 190, 200, 20, VIOLET) - end_drawing() - close_window() - +`pip3 install raylib==5.0.0.4` +```python +from pyray import * +init_window(800, 450, "Hello") +while not window_should_close(): + begin_drawing() + clear_background(WHITE) + draw_text("Hello world", 190, 200, 20, VIOLET) + end_drawing() +close_window() +``` # Installation @@ -35,13 +37,35 @@ First make sure you have the latest pip installed: Then install python3 -m pip install setuptools - python3 -m pip install raylib + python3 -m pip install raylib==5.0.0.4 -On most platforms it should install a binary wheel (Windows 10 x64, MacOS 12 x64/arm64, Linux Ubuntu2004 x64/arm64). - -If yours isn't available then pip will attempt to build from source, in which case you will need to have Raylib development libs installed, e.g. +On most platforms it should install a binary wheel. If yours isn't available then pip will attempt to build from source, in which case you will need to have Raylib development libs installed, e.g. using homebrew, apt, etc. +## Windows + +Binaries require x64 Windows 10 or newer. (For x86 or older Windows you will have to build from source.) + +Use an [official Windows Python release](https://www.python.org/downloads/windows/) rather than WSL, MSYS, etc. + +## MacOS + +Binaries require arm64 MacOS 13 or x64 MacOS 12 or newer. + +Older MacOS requires building from source but this is usually simple: + + brew install pkg-config + brew install raylib + python3 -m pip install raylib==5.0.0.4 + +## Linux + +Binaries require OS newer than Ubuntu 2020, x64 or arm64. Otherwise build from source. +(Pip should attempt automatically but will need Raylib itself installed and also pkg-config.) + +The arm64 builds are built on Raspberry Pi arm64 Bullseye +so may not work on other boards. + ## Raspberry Pi [Using on Rasperry Pi](RPI.rst) @@ -54,12 +78,23 @@ There is now a separate dynamic version of this binding: It works on some systems where the static version doesn't, [but be sure to read these caveats before using it](https://electronstudio.github.io/raylib-python-cffi/dynamic.html) -## Beta testing +## SDL backend -If you find a bug, it may be fixed in the [latest dev release](https://github.com/electronstudio/raylib-python-cffi/releases). -You can install an alpha or beta version by specifying the exact version number like this: +This is not well tested but has better support for controllers: - python3 -m pip install raylib==4.2.0.0.dev4 + python3 -m pip uninstall raylib + python3 -m pip install raylib_sdl + +You can't have multiple backends installed at once. + +## DRM backend + +This uses the Linux framebuffer for devices that don't run X11/Wayland: + + python3 -m pip uninstall raylib + python3 -m pip install raylib_drm + +You can't have multiple backends installed at once. ## Problems? @@ -143,9 +178,9 @@ A related library (that is a work in progress!): * Converting more examples from C to Python * Testing on more platforms -# License (updated) +# License -The bindings are now under the Eclipse Public License, so you are free to +Eclipse Public License, so you are free to statically link and use in non-free / proprietary / commercial projects! # Performance diff --git a/docs/_sources/RPI.rst.txt b/docs/_sources/RPI.rst.txt index 56ff0a3..fa37601 100644 --- a/docs/_sources/RPI.rst.txt +++ b/docs/_sources/RPI.rst.txt @@ -12,7 +12,10 @@ We have published binary wheels compiled for 64-bit Raspberry OS Bullseye in X11 python -m pip install --break-system-packages raylib -If it doesn't work, or you're not on Bullseye, or you're 32 bit, or if you want to use Raylib in ``PLATFORM_DRM`` mode, you will need to compile your own raylib. See below. +Alternatively there is a DRM wheel called ``raylib_drm`` to use the framebuffer without X11. You can't have both wheels +installed at once. + +If it doesn't work, or you're not on Bullseye, or you're 32 bit, you will need to compile your own raylib. See below. For full instructions on this, see https://github.com/raysan5/raylib/wiki/Working-on-Raspberry-Pi . If you need help with this ask Raylib. Option 2: Compile Raylib from source X11 mode @@ -39,7 +42,7 @@ Then have pip compile and install the wheel: :: python3 -m pip install --break-system-packages setuptools - python3 -m pip install --no-cache-dir --no-binary raylib --upgrade --force-reinstall --break-system-packages raylib==5.0.0.3 + python3 -m pip install --no-cache-dir --no-binary raylib --upgrade --force-reinstall --break-system-packages raylib==5.0.0.4 Option 3: Compile Raylib from source DRM mode --------------------------------------------- @@ -82,7 +85,7 @@ Then have pip compile and install the wheel: :: python3 -m pip install --break-system-packages setuptools - python3 -m pip install --no-cache-dir --no-binary raylib --upgrade --force-reinstall --break-system-packages raylib==5.0.0.3 + python3 -m pip install --no-cache-dir --no-binary raylib --upgrade --force-reinstall --break-system-packages raylib==5.0.0.4 diff --git a/docs/_static/basic.css b/docs/_static/basic.css index f316efc..7ebbd6d 100644 --- a/docs/_static/basic.css +++ b/docs/_static/basic.css @@ -1,12 +1,5 @@ /* - * basic.css - * ~~~~~~~~~ - * * Sphinx stylesheet -- basic theme. - * - * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * */ /* -- main layout ----------------------------------------------------------- */ @@ -115,15 +108,11 @@ img { /* -- search page ----------------------------------------------------------- */ ul.search { - margin: 10px 0 0 20px; - padding: 0; + margin-top: 10px; } ul.search li { - padding: 5px 0 5px 20px; - background-image: url(file.png); - background-repeat: no-repeat; - background-position: 0 7px; + padding: 5px 0; } ul.search li a { diff --git a/docs/_static/css/badge_only.css b/docs/_static/css/badge_only.css index c718cee..88ba55b 100644 --- a/docs/_static/css/badge_only.css +++ b/docs/_static/css/badge_only.css @@ -1 +1 @@ -.clearfix{*zoom:1}.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}@font-face{font-family:FontAwesome;font-style:normal;font-weight:400;src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713?#iefix) format("embedded-opentype"),url(fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e) format("woff2"),url(fonts/fontawesome-webfont.woff?fee66e712a8a08eef5805a46892932ad) format("woff"),url(fonts/fontawesome-webfont.ttf?b06871f281fee6b241d60582ae9369b9) format("truetype"),url(fonts/fontawesome-webfont.svg?912ec66d7572ff821749319396470bde#FontAwesome) format("svg")}.fa:before{font-family:FontAwesome;font-style:normal;font-weight:400;line-height:1}.fa:before,a .fa{text-decoration:inherit}.fa:before,a .fa,li .fa{display:inline-block}li .fa-large:before{width:1.875em}ul.fas{list-style-type:none;margin-left:2em;text-indent:-.8em}ul.fas li .fa{width:.8em}ul.fas li .fa-large:before{vertical-align:baseline}.fa-book:before,.icon-book:before{content:"\f02d"}.fa-caret-down:before,.icon-caret-down:before{content:"\f0d7"}.fa-caret-up:before,.icon-caret-up:before{content:"\f0d8"}.fa-caret-left:before,.icon-caret-left:before{content:"\f0d9"}.fa-caret-right:before,.icon-caret-right:before{content:"\f0da"}.rst-versions{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;z-index:400}.rst-versions a{color:#2980b9;text-decoration:none}.rst-versions .rst-badge-small{display:none}.rst-versions .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:90%;cursor:pointer;color:#27ae60}.rst-versions .rst-current-version:after{clear:both;content:"";display:block}.rst-versions .rst-current-version .fa{color:#fcfcfc}.rst-versions .rst-current-version .fa-book,.rst-versions .rst-current-version .icon-book{float:left}.rst-versions .rst-current-version.rst-out-of-date{background-color:#e74c3c;color:#fff}.rst-versions .rst-current-version.rst-active-old-version{background-color:#f1c40f;color:#000}.rst-versions.shift-up{height:auto;max-height:100%;overflow-y:scroll}.rst-versions.shift-up .rst-other-versions{display:block}.rst-versions .rst-other-versions{font-size:90%;padding:12px;color:grey;display:none}.rst-versions .rst-other-versions hr{display:block;height:1px;border:0;margin:20px 0;padding:0;border-top:1px solid #413d3d}.rst-versions .rst-other-versions dd{display:inline-block;margin:0}.rst-versions .rst-other-versions dd a{display:inline-block;padding:6px;color:#fcfcfc}.rst-versions.rst-badge{width:auto;bottom:20px;right:20px;left:auto;border:none;max-width:300px;max-height:90%}.rst-versions.rst-badge .fa-book,.rst-versions.rst-badge .icon-book{float:none;line-height:30px}.rst-versions.rst-badge.shift-up .rst-current-version{text-align:right}.rst-versions.rst-badge.shift-up .rst-current-version .fa-book,.rst-versions.rst-badge.shift-up .rst-current-version .icon-book{float:left}.rst-versions.rst-badge>.rst-current-version{width:auto;height:30px;line-height:30px;padding:0 6px;display:block;text-align:center}@media screen and (max-width:768px){.rst-versions{width:85%;display:none}.rst-versions.shift{display:block}} \ No newline at end of file +.clearfix{*zoom:1}.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}@font-face{font-family:FontAwesome;font-style:normal;font-weight:400;src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713?#iefix) format("embedded-opentype"),url(fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e) format("woff2"),url(fonts/fontawesome-webfont.woff?fee66e712a8a08eef5805a46892932ad) format("woff"),url(fonts/fontawesome-webfont.ttf?b06871f281fee6b241d60582ae9369b9) format("truetype"),url(fonts/fontawesome-webfont.svg?912ec66d7572ff821749319396470bde#FontAwesome) format("svg")}.fa:before{font-family:FontAwesome;font-style:normal;font-weight:400;line-height:1}.fa:before,a .fa{text-decoration:inherit}.fa:before,a .fa,li .fa{display:inline-block}li .fa-large:before{width:1.875em}ul.fas{list-style-type:none;margin-left:2em;text-indent:-.8em}ul.fas li .fa{width:.8em}ul.fas li .fa-large:before{vertical-align:baseline}.fa-book:before,.icon-book:before{content:"\f02d"}.fa-caret-down:before,.icon-caret-down:before{content:"\f0d7"}.fa-caret-up:before,.icon-caret-up:before{content:"\f0d8"}.fa-caret-left:before,.icon-caret-left:before{content:"\f0d9"}.fa-caret-right:before,.icon-caret-right:before{content:"\f0da"}.rst-versions{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;z-index:400}.rst-versions a{color:#2980b9;text-decoration:none}.rst-versions .rst-badge-small{display:none}.rst-versions .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:90%;cursor:pointer;color:#27ae60}.rst-versions .rst-current-version:after{clear:both;content:"";display:block}.rst-versions .rst-current-version .fa{color:#fcfcfc}.rst-versions .rst-current-version .fa-book,.rst-versions .rst-current-version .icon-book{float:left}.rst-versions .rst-current-version.rst-out-of-date{background-color:#e74c3c;color:#fff}.rst-versions .rst-current-version.rst-active-old-version{background-color:#f1c40f;color:#000}.rst-versions.shift-up{height:auto;max-height:100%;overflow-y:scroll}.rst-versions.shift-up .rst-other-versions{display:block}.rst-versions .rst-other-versions{font-size:90%;padding:12px;color:grey;display:none}.rst-versions .rst-other-versions hr{display:block;height:1px;border:0;margin:20px 0;padding:0;border-top:1px solid #413d3d}.rst-versions .rst-other-versions dd{display:inline-block;margin:0}.rst-versions .rst-other-versions dd a{display:inline-block;padding:6px;color:#fcfcfc}.rst-versions .rst-other-versions .rtd-current-item{font-weight:700}.rst-versions.rst-badge{width:auto;bottom:20px;right:20px;left:auto;border:none;max-width:300px;max-height:90%}.rst-versions.rst-badge .fa-book,.rst-versions.rst-badge .icon-book{float:none;line-height:30px}.rst-versions.rst-badge.shift-up .rst-current-version{text-align:right}.rst-versions.rst-badge.shift-up .rst-current-version .fa-book,.rst-versions.rst-badge.shift-up .rst-current-version .icon-book{float:left}.rst-versions.rst-badge>.rst-current-version{width:auto;height:30px;line-height:30px;padding:0 6px;display:block;text-align:center}@media screen and (max-width:768px){.rst-versions{width:85%;display:none}.rst-versions.shift{display:block}}#flyout-search-form{padding:6px} \ No newline at end of file diff --git a/docs/_static/css/theme.css b/docs/_static/css/theme.css index 19a446a..0f14f10 100644 --- a/docs/_static/css/theme.css +++ b/docs/_static/css/theme.css @@ -1,4 +1,4 @@ html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}[hidden],audio:not([controls]){display:none}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}blockquote{margin:0}dfn{font-style:italic}ins{background:#ff9;text-decoration:none}ins,mark{color:#000}mark{background:#ff0;font-style:italic;font-weight:700}.rst-content code,.rst-content tt,code,kbd,pre,samp{font-family:monospace,serif;_font-family:courier new,monospace;font-size:1em}pre{white-space:pre}q{quotes:none}q:after,q:before{content:"";content:none}small{font-size:85%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dl,ol,ul{margin:0;padding:0;list-style:none;list-style-image:none}li{list-style:none}dd{margin:0}img{border:0;-ms-interpolation-mode:bicubic;vertical-align:middle;max-width:100%}svg:not(:root){overflow:hidden}figure,form{margin:0}label{cursor:pointer}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}button,input{line-height:normal}button,input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button;*overflow:visible}button[disabled],input[disabled]{cursor:default}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}textarea{resize:vertical}table{border-collapse:collapse;border-spacing:0}td{vertical-align:top}.chromeframe{margin:.2em 0;background:#ccc;color:#000;padding:.2em 0}.ir{display:block;border:0;text-indent:-999em;overflow:hidden;background-color:transparent;background-repeat:no-repeat;text-align:left;direction:ltr;*line-height:0}.ir br{display:none}.hidden{display:none!important;visibility:hidden}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.invisible{visibility:hidden}.relative{position:relative}big,small{font-size:100%}@media print{body,html,section{background:none!important}*{box-shadow:none!important;text-shadow:none!important;filter:none!important;-ms-filter:none!important}a,a:visited{text-decoration:underline}.ir a:after,a[href^="#"]:after,a[href^="javascript:"]:after{content:""}blockquote,pre{page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}.rst-content .toctree-wrapper>p.caption,h2,h3,p{orphans:3;widows:3}.rst-content .toctree-wrapper>p.caption,h2,h3{page-break-after:avoid}}.btn,.fa:before,.icon:before,.rst-content .admonition,.rst-content .admonition-title:before,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .code-block-caption .headerlink:before,.rst-content .danger,.rst-content .eqno .headerlink:before,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning,.rst-content code.download span:first-child:before,.rst-content dl dt .headerlink:before,.rst-content h1 .headerlink:before,.rst-content h2 .headerlink:before,.rst-content h3 .headerlink:before,.rst-content h4 .headerlink:before,.rst-content h5 .headerlink:before,.rst-content h6 .headerlink:before,.rst-content p.caption .headerlink:before,.rst-content p .headerlink:before,.rst-content table>caption .headerlink:before,.rst-content tt.download span:first-child:before,.wy-alert,.wy-dropdown .caret:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before,.wy-menu-vertical li.current>a button.toctree-expand:before,.wy-menu-vertical li.on a button.toctree-expand:before,.wy-menu-vertical li button.toctree-expand:before,input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{-webkit-font-smoothing:antialiased}.clearfix{*zoom:1}.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}/*! * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) - */@font-face{font-family:FontAwesome;src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713);src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713?#iefix&v=4.7.0) format("embedded-opentype"),url(fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e) format("woff2"),url(fonts/fontawesome-webfont.woff?fee66e712a8a08eef5805a46892932ad) format("woff"),url(fonts/fontawesome-webfont.ttf?b06871f281fee6b241d60582ae9369b9) format("truetype"),url(fonts/fontawesome-webfont.svg?912ec66d7572ff821749319396470bde#fontawesomeregular) format("svg");font-weight:400;font-style:normal}.fa,.icon,.rst-content .admonition-title,.rst-content .code-block-caption .headerlink,.rst-content .eqno .headerlink,.rst-content code.download span:first-child,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content p .headerlink,.rst-content table>caption .headerlink,.rst-content tt.download span:first-child,.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand,.wy-menu-vertical li button.toctree-expand{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14286em;width:2.14286em;top:.14286em;text-align:center}.fa-li.fa-lg{left:-1.85714em}.fa-border{padding:.2em .25em .15em;border:.08em solid #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa-pull-left.icon,.fa.fa-pull-left,.rst-content .code-block-caption .fa-pull-left.headerlink,.rst-content .eqno .fa-pull-left.headerlink,.rst-content .fa-pull-left.admonition-title,.rst-content code.download span.fa-pull-left:first-child,.rst-content dl dt .fa-pull-left.headerlink,.rst-content h1 .fa-pull-left.headerlink,.rst-content h2 .fa-pull-left.headerlink,.rst-content h3 .fa-pull-left.headerlink,.rst-content h4 .fa-pull-left.headerlink,.rst-content h5 .fa-pull-left.headerlink,.rst-content h6 .fa-pull-left.headerlink,.rst-content p .fa-pull-left.headerlink,.rst-content table>caption .fa-pull-left.headerlink,.rst-content tt.download span.fa-pull-left:first-child,.wy-menu-vertical li.current>a button.fa-pull-left.toctree-expand,.wy-menu-vertical li.on a button.fa-pull-left.toctree-expand,.wy-menu-vertical li button.fa-pull-left.toctree-expand{margin-right:.3em}.fa-pull-right.icon,.fa.fa-pull-right,.rst-content .code-block-caption .fa-pull-right.headerlink,.rst-content .eqno .fa-pull-right.headerlink,.rst-content .fa-pull-right.admonition-title,.rst-content code.download span.fa-pull-right:first-child,.rst-content dl dt .fa-pull-right.headerlink,.rst-content h1 .fa-pull-right.headerlink,.rst-content h2 .fa-pull-right.headerlink,.rst-content h3 .fa-pull-right.headerlink,.rst-content h4 .fa-pull-right.headerlink,.rst-content h5 .fa-pull-right.headerlink,.rst-content h6 .fa-pull-right.headerlink,.rst-content p .fa-pull-right.headerlink,.rst-content table>caption .fa-pull-right.headerlink,.rst-content tt.download span.fa-pull-right:first-child,.wy-menu-vertical li.current>a button.fa-pull-right.toctree-expand,.wy-menu-vertical li.on a button.fa-pull-right.toctree-expand,.wy-menu-vertical li button.fa-pull-right.toctree-expand{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left,.pull-left.icon,.rst-content .code-block-caption .pull-left.headerlink,.rst-content .eqno .pull-left.headerlink,.rst-content .pull-left.admonition-title,.rst-content code.download span.pull-left:first-child,.rst-content dl dt .pull-left.headerlink,.rst-content h1 .pull-left.headerlink,.rst-content h2 .pull-left.headerlink,.rst-content h3 .pull-left.headerlink,.rst-content h4 .pull-left.headerlink,.rst-content h5 .pull-left.headerlink,.rst-content h6 .pull-left.headerlink,.rst-content p .pull-left.headerlink,.rst-content table>caption .pull-left.headerlink,.rst-content tt.download span.pull-left:first-child,.wy-menu-vertical li.current>a button.pull-left.toctree-expand,.wy-menu-vertical li.on a button.pull-left.toctree-expand,.wy-menu-vertical li button.pull-left.toctree-expand{margin-right:.3em}.fa.pull-right,.pull-right.icon,.rst-content .code-block-caption .pull-right.headerlink,.rst-content .eqno .pull-right.headerlink,.rst-content .pull-right.admonition-title,.rst-content code.download span.pull-right:first-child,.rst-content dl dt .pull-right.headerlink,.rst-content h1 .pull-right.headerlink,.rst-content h2 .pull-right.headerlink,.rst-content h3 .pull-right.headerlink,.rst-content h4 .pull-right.headerlink,.rst-content h5 .pull-right.headerlink,.rst-content h6 .pull-right.headerlink,.rst-content p .pull-right.headerlink,.rst-content table>caption .pull-right.headerlink,.rst-content tt.download span.pull-right:first-child,.wy-menu-vertical li.current>a button.pull-right.toctree-expand,.wy-menu-vertical li.on a button.pull-right.toctree-expand,.wy-menu-vertical li button.pull-right.toctree-expand{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);-ms-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:""}.fa-music:before{content:""}.fa-search:before,.icon-search:before{content:""}.fa-envelope-o:before{content:""}.fa-heart:before{content:""}.fa-star:before{content:""}.fa-star-o:before{content:""}.fa-user:before{content:""}.fa-film:before{content:""}.fa-th-large:before{content:""}.fa-th:before{content:""}.fa-th-list:before{content:""}.fa-check:before{content:""}.fa-close:before,.fa-remove:before,.fa-times:before{content:""}.fa-search-plus:before{content:""}.fa-search-minus:before{content:""}.fa-power-off:before{content:""}.fa-signal:before{content:""}.fa-cog:before,.fa-gear:before{content:""}.fa-trash-o:before{content:""}.fa-home:before,.icon-home:before{content:""}.fa-file-o:before{content:""}.fa-clock-o:before{content:""}.fa-road:before{content:""}.fa-download:before,.rst-content code.download span:first-child:before,.rst-content tt.download span:first-child:before{content:""}.fa-arrow-circle-o-down:before{content:""}.fa-arrow-circle-o-up:before{content:""}.fa-inbox:before{content:""}.fa-play-circle-o:before{content:""}.fa-repeat:before,.fa-rotate-right:before{content:""}.fa-refresh:before{content:""}.fa-list-alt:before{content:""}.fa-lock:before{content:""}.fa-flag:before{content:""}.fa-headphones:before{content:""}.fa-volume-off:before{content:""}.fa-volume-down:before{content:""}.fa-volume-up:before{content:""}.fa-qrcode:before{content:""}.fa-barcode:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-book:before,.icon-book:before{content:""}.fa-bookmark:before{content:""}.fa-print:before{content:""}.fa-camera:before{content:""}.fa-font:before{content:""}.fa-bold:before{content:""}.fa-italic:before{content:""}.fa-text-height:before{content:""}.fa-text-width:before{content:""}.fa-align-left:before{content:""}.fa-align-center:before{content:""}.fa-align-right:before{content:""}.fa-align-justify:before{content:""}.fa-list:before{content:""}.fa-dedent:before,.fa-outdent:before{content:""}.fa-indent:before{content:""}.fa-video-camera:before{content:""}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:""}.fa-pencil:before{content:""}.fa-map-marker:before{content:""}.fa-adjust:before{content:""}.fa-tint:before{content:""}.fa-edit:before,.fa-pencil-square-o:before{content:""}.fa-share-square-o:before{content:""}.fa-check-square-o:before{content:""}.fa-arrows:before{content:""}.fa-step-backward:before{content:""}.fa-fast-backward:before{content:""}.fa-backward:before{content:""}.fa-play:before{content:""}.fa-pause:before{content:""}.fa-stop:before{content:""}.fa-forward:before{content:""}.fa-fast-forward:before{content:""}.fa-step-forward:before{content:""}.fa-eject:before{content:""}.fa-chevron-left:before{content:""}.fa-chevron-right:before{content:""}.fa-plus-circle:before{content:""}.fa-minus-circle:before{content:""}.fa-times-circle:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before{content:""}.fa-check-circle:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before{content:""}.fa-question-circle:before{content:""}.fa-info-circle:before{content:""}.fa-crosshairs:before{content:""}.fa-times-circle-o:before{content:""}.fa-check-circle-o:before{content:""}.fa-ban:before{content:""}.fa-arrow-left:before{content:""}.fa-arrow-right:before{content:""}.fa-arrow-up:before{content:""}.fa-arrow-down:before{content:""}.fa-mail-forward:before,.fa-share:before{content:""}.fa-expand:before{content:""}.fa-compress:before{content:""}.fa-plus:before{content:""}.fa-minus:before{content:""}.fa-asterisk:before{content:""}.fa-exclamation-circle:before,.rst-content .admonition-title:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before{content:""}.fa-gift:before{content:""}.fa-leaf:before{content:""}.fa-fire:before,.icon-fire:before{content:""}.fa-eye:before{content:""}.fa-eye-slash:before{content:""}.fa-exclamation-triangle:before,.fa-warning:before{content:""}.fa-plane:before{content:""}.fa-calendar:before{content:""}.fa-random:before{content:""}.fa-comment:before{content:""}.fa-magnet:before{content:""}.fa-chevron-up:before{content:""}.fa-chevron-down:before{content:""}.fa-retweet:before{content:""}.fa-shopping-cart:before{content:""}.fa-folder:before{content:""}.fa-folder-open:before{content:""}.fa-arrows-v:before{content:""}.fa-arrows-h:before{content:""}.fa-bar-chart-o:before,.fa-bar-chart:before{content:""}.fa-twitter-square:before{content:""}.fa-facebook-square:before{content:""}.fa-camera-retro:before{content:""}.fa-key:before{content:""}.fa-cogs:before,.fa-gears:before{content:""}.fa-comments:before{content:""}.fa-thumbs-o-up:before{content:""}.fa-thumbs-o-down:before{content:""}.fa-star-half:before{content:""}.fa-heart-o:before{content:""}.fa-sign-out:before{content:""}.fa-linkedin-square:before{content:""}.fa-thumb-tack:before{content:""}.fa-external-link:before{content:""}.fa-sign-in:before{content:""}.fa-trophy:before{content:""}.fa-github-square:before{content:""}.fa-upload:before{content:""}.fa-lemon-o:before{content:""}.fa-phone:before{content:""}.fa-square-o:before{content:""}.fa-bookmark-o:before{content:""}.fa-phone-square:before{content:""}.fa-twitter:before{content:""}.fa-facebook-f:before,.fa-facebook:before{content:""}.fa-github:before,.icon-github:before{content:""}.fa-unlock:before{content:""}.fa-credit-card:before{content:""}.fa-feed:before,.fa-rss:before{content:""}.fa-hdd-o:before{content:""}.fa-bullhorn:before{content:""}.fa-bell:before{content:""}.fa-certificate:before{content:""}.fa-hand-o-right:before{content:""}.fa-hand-o-left:before{content:""}.fa-hand-o-up:before{content:""}.fa-hand-o-down:before{content:""}.fa-arrow-circle-left:before,.icon-circle-arrow-left:before{content:""}.fa-arrow-circle-right:before,.icon-circle-arrow-right:before{content:""}.fa-arrow-circle-up:before{content:""}.fa-arrow-circle-down:before{content:""}.fa-globe:before{content:""}.fa-wrench:before{content:""}.fa-tasks:before{content:""}.fa-filter:before{content:""}.fa-briefcase:before{content:""}.fa-arrows-alt:before{content:""}.fa-group:before,.fa-users:before{content:""}.fa-chain:before,.fa-link:before,.icon-link:before{content:""}.fa-cloud:before{content:""}.fa-flask:before{content:""}.fa-cut:before,.fa-scissors:before{content:""}.fa-copy:before,.fa-files-o:before{content:""}.fa-paperclip:before{content:""}.fa-floppy-o:before,.fa-save:before{content:""}.fa-square:before{content:""}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:""}.fa-list-ul:before{content:""}.fa-list-ol:before{content:""}.fa-strikethrough:before{content:""}.fa-underline:before{content:""}.fa-table:before{content:""}.fa-magic:before{content:""}.fa-truck:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-square:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-plus:before{content:""}.fa-money:before{content:""}.fa-caret-down:before,.icon-caret-down:before,.wy-dropdown .caret:before{content:""}.fa-caret-up:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-columns:before{content:""}.fa-sort:before,.fa-unsorted:before{content:""}.fa-sort-desc:before,.fa-sort-down:before{content:""}.fa-sort-asc:before,.fa-sort-up:before{content:""}.fa-envelope:before{content:""}.fa-linkedin:before{content:""}.fa-rotate-left:before,.fa-undo:before{content:""}.fa-gavel:before,.fa-legal:before{content:""}.fa-dashboard:before,.fa-tachometer:before{content:""}.fa-comment-o:before{content:""}.fa-comments-o:before{content:""}.fa-bolt:before,.fa-flash:before{content:""}.fa-sitemap:before{content:""}.fa-umbrella:before{content:""}.fa-clipboard:before,.fa-paste:before{content:""}.fa-lightbulb-o:before{content:""}.fa-exchange:before{content:""}.fa-cloud-download:before{content:""}.fa-cloud-upload:before{content:""}.fa-user-md:before{content:""}.fa-stethoscope:before{content:""}.fa-suitcase:before{content:""}.fa-bell-o:before{content:""}.fa-coffee:before{content:""}.fa-cutlery:before{content:""}.fa-file-text-o:before{content:""}.fa-building-o:before{content:""}.fa-hospital-o:before{content:""}.fa-ambulance:before{content:""}.fa-medkit:before{content:""}.fa-fighter-jet:before{content:""}.fa-beer:before{content:""}.fa-h-square:before{content:""}.fa-plus-square:before{content:""}.fa-angle-double-left:before{content:""}.fa-angle-double-right:before{content:""}.fa-angle-double-up:before{content:""}.fa-angle-double-down:before{content:""}.fa-angle-left:before{content:""}.fa-angle-right:before{content:""}.fa-angle-up:before{content:""}.fa-angle-down:before{content:""}.fa-desktop:before{content:""}.fa-laptop:before{content:""}.fa-tablet:before{content:""}.fa-mobile-phone:before,.fa-mobile:before{content:""}.fa-circle-o:before{content:""}.fa-quote-left:before{content:""}.fa-quote-right:before{content:""}.fa-spinner:before{content:""}.fa-circle:before{content:""}.fa-mail-reply:before,.fa-reply:before{content:""}.fa-github-alt:before{content:""}.fa-folder-o:before{content:""}.fa-folder-open-o:before{content:""}.fa-smile-o:before{content:""}.fa-frown-o:before{content:""}.fa-meh-o:before{content:""}.fa-gamepad:before{content:""}.fa-keyboard-o:before{content:""}.fa-flag-o:before{content:""}.fa-flag-checkered:before{content:""}.fa-terminal:before{content:""}.fa-code:before{content:""}.fa-mail-reply-all:before,.fa-reply-all:before{content:""}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:""}.fa-location-arrow:before{content:""}.fa-crop:before{content:""}.fa-code-fork:before{content:""}.fa-chain-broken:before,.fa-unlink:before{content:""}.fa-question:before{content:""}.fa-info:before{content:""}.fa-exclamation:before{content:""}.fa-superscript:before{content:""}.fa-subscript:before{content:""}.fa-eraser:before{content:""}.fa-puzzle-piece:before{content:""}.fa-microphone:before{content:""}.fa-microphone-slash:before{content:""}.fa-shield:before{content:""}.fa-calendar-o:before{content:""}.fa-fire-extinguisher:before{content:""}.fa-rocket:before{content:""}.fa-maxcdn:before{content:""}.fa-chevron-circle-left:before{content:""}.fa-chevron-circle-right:before{content:""}.fa-chevron-circle-up:before{content:""}.fa-chevron-circle-down:before{content:""}.fa-html5:before{content:""}.fa-css3:before{content:""}.fa-anchor:before{content:""}.fa-unlock-alt:before{content:""}.fa-bullseye:before{content:""}.fa-ellipsis-h:before{content:""}.fa-ellipsis-v:before{content:""}.fa-rss-square:before{content:""}.fa-play-circle:before{content:""}.fa-ticket:before{content:""}.fa-minus-square:before{content:""}.fa-minus-square-o:before,.wy-menu-vertical li.current>a button.toctree-expand:before,.wy-menu-vertical li.on a button.toctree-expand:before{content:""}.fa-level-up:before{content:""}.fa-level-down:before{content:""}.fa-check-square:before{content:""}.fa-pencil-square:before{content:""}.fa-external-link-square:before{content:""}.fa-share-square:before{content:""}.fa-compass:before{content:""}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:""}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:""}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:""}.fa-eur:before,.fa-euro:before{content:""}.fa-gbp:before{content:""}.fa-dollar:before,.fa-usd:before{content:""}.fa-inr:before,.fa-rupee:before{content:""}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:""}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:""}.fa-krw:before,.fa-won:before{content:""}.fa-bitcoin:before,.fa-btc:before{content:""}.fa-file:before{content:""}.fa-file-text:before{content:""}.fa-sort-alpha-asc:before{content:""}.fa-sort-alpha-desc:before{content:""}.fa-sort-amount-asc:before{content:""}.fa-sort-amount-desc:before{content:""}.fa-sort-numeric-asc:before{content:""}.fa-sort-numeric-desc:before{content:""}.fa-thumbs-up:before{content:""}.fa-thumbs-down:before{content:""}.fa-youtube-square:before{content:""}.fa-youtube:before{content:""}.fa-xing:before{content:""}.fa-xing-square:before{content:""}.fa-youtube-play:before{content:""}.fa-dropbox:before{content:""}.fa-stack-overflow:before{content:""}.fa-instagram:before{content:""}.fa-flickr:before{content:""}.fa-adn:before{content:""}.fa-bitbucket:before,.icon-bitbucket:before{content:""}.fa-bitbucket-square:before{content:""}.fa-tumblr:before{content:""}.fa-tumblr-square:before{content:""}.fa-long-arrow-down:before{content:""}.fa-long-arrow-up:before{content:""}.fa-long-arrow-left:before{content:""}.fa-long-arrow-right:before{content:""}.fa-apple:before{content:""}.fa-windows:before{content:""}.fa-android:before{content:""}.fa-linux:before{content:""}.fa-dribbble:before{content:""}.fa-skype:before{content:""}.fa-foursquare:before{content:""}.fa-trello:before{content:""}.fa-female:before{content:""}.fa-male:before{content:""}.fa-gittip:before,.fa-gratipay:before{content:""}.fa-sun-o:before{content:""}.fa-moon-o:before{content:""}.fa-archive:before{content:""}.fa-bug:before{content:""}.fa-vk:before{content:""}.fa-weibo:before{content:""}.fa-renren:before{content:""}.fa-pagelines:before{content:""}.fa-stack-exchange:before{content:""}.fa-arrow-circle-o-right:before{content:""}.fa-arrow-circle-o-left:before{content:""}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:""}.fa-dot-circle-o:before{content:""}.fa-wheelchair:before{content:""}.fa-vimeo-square:before{content:""}.fa-try:before,.fa-turkish-lira:before{content:""}.fa-plus-square-o:before,.wy-menu-vertical li button.toctree-expand:before{content:""}.fa-space-shuttle:before{content:""}.fa-slack:before{content:""}.fa-envelope-square:before{content:""}.fa-wordpress:before{content:""}.fa-openid:before{content:""}.fa-bank:before,.fa-institution:before,.fa-university:before{content:""}.fa-graduation-cap:before,.fa-mortar-board:before{content:""}.fa-yahoo:before{content:""}.fa-google:before{content:""}.fa-reddit:before{content:""}.fa-reddit-square:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-stumbleupon:before{content:""}.fa-delicious:before{content:""}.fa-digg:before{content:""}.fa-pied-piper-pp:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-drupal:before{content:""}.fa-joomla:before{content:""}.fa-language:before{content:""}.fa-fax:before{content:""}.fa-building:before{content:""}.fa-child:before{content:""}.fa-paw:before{content:""}.fa-spoon:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-recycle:before{content:""}.fa-automobile:before,.fa-car:before{content:""}.fa-cab:before,.fa-taxi:before{content:""}.fa-tree:before{content:""}.fa-spotify:before{content:""}.fa-deviantart:before{content:""}.fa-soundcloud:before{content:""}.fa-database:before{content:""}.fa-file-pdf-o:before{content:""}.fa-file-word-o:before{content:""}.fa-file-excel-o:before{content:""}.fa-file-powerpoint-o:before{content:""}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:""}.fa-file-archive-o:before,.fa-file-zip-o:before{content:""}.fa-file-audio-o:before,.fa-file-sound-o:before{content:""}.fa-file-movie-o:before,.fa-file-video-o:before{content:""}.fa-file-code-o:before{content:""}.fa-vine:before{content:""}.fa-codepen:before{content:""}.fa-jsfiddle:before{content:""}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:""}.fa-circle-o-notch:before{content:""}.fa-ra:before,.fa-rebel:before,.fa-resistance:before{content:""}.fa-empire:before,.fa-ge:before{content:""}.fa-git-square:before{content:""}.fa-git:before{content:""}.fa-hacker-news:before,.fa-y-combinator-square:before,.fa-yc-square:before{content:""}.fa-tencent-weibo:before{content:""}.fa-qq:before{content:""}.fa-wechat:before,.fa-weixin:before{content:""}.fa-paper-plane:before,.fa-send:before{content:""}.fa-paper-plane-o:before,.fa-send-o:before{content:""}.fa-history:before{content:""}.fa-circle-thin:before{content:""}.fa-header:before{content:""}.fa-paragraph:before{content:""}.fa-sliders:before{content:""}.fa-share-alt:before{content:""}.fa-share-alt-square:before{content:""}.fa-bomb:before{content:""}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:""}.fa-tty:before{content:""}.fa-binoculars:before{content:""}.fa-plug:before{content:""}.fa-slideshare:before{content:""}.fa-twitch:before{content:""}.fa-yelp:before{content:""}.fa-newspaper-o:before{content:""}.fa-wifi:before{content:""}.fa-calculator:before{content:""}.fa-paypal:before{content:""}.fa-google-wallet:before{content:""}.fa-cc-visa:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-bell-slash:before{content:""}.fa-bell-slash-o:before{content:""}.fa-trash:before{content:""}.fa-copyright:before{content:""}.fa-at:before{content:""}.fa-eyedropper:before{content:""}.fa-paint-brush:before{content:""}.fa-birthday-cake:before{content:""}.fa-area-chart:before{content:""}.fa-pie-chart:before{content:""}.fa-line-chart:before{content:""}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-bicycle:before{content:""}.fa-bus:before{content:""}.fa-ioxhost:before{content:""}.fa-angellist:before{content:""}.fa-cc:before{content:""}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:""}.fa-meanpath:before{content:""}.fa-buysellads:before{content:""}.fa-connectdevelop:before{content:""}.fa-dashcube:before{content:""}.fa-forumbee:before{content:""}.fa-leanpub:before{content:""}.fa-sellsy:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-simplybuilt:before{content:""}.fa-skyatlas:before{content:""}.fa-cart-plus:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-diamond:before{content:""}.fa-ship:before{content:""}.fa-user-secret:before{content:""}.fa-motorcycle:before{content:""}.fa-street-view:before{content:""}.fa-heartbeat:before{content:""}.fa-venus:before{content:""}.fa-mars:before{content:""}.fa-mercury:before{content:""}.fa-intersex:before,.fa-transgender:before{content:""}.fa-transgender-alt:before{content:""}.fa-venus-double:before{content:""}.fa-mars-double:before{content:""}.fa-venus-mars:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-v:before{content:""}.fa-mars-stroke-h:before{content:""}.fa-neuter:before{content:""}.fa-genderless:before{content:""}.fa-facebook-official:before{content:""}.fa-pinterest-p:before{content:""}.fa-whatsapp:before{content:""}.fa-server:before{content:""}.fa-user-plus:before{content:""}.fa-user-times:before{content:""}.fa-bed:before,.fa-hotel:before{content:""}.fa-viacoin:before{content:""}.fa-train:before{content:""}.fa-subway:before{content:""}.fa-medium:before{content:""}.fa-y-combinator:before,.fa-yc:before{content:""}.fa-optin-monster:before{content:""}.fa-opencart:before{content:""}.fa-expeditedssl:before{content:""}.fa-battery-4:before,.fa-battery-full:before,.fa-battery:before{content:""}.fa-battery-3:before,.fa-battery-three-quarters:before{content:""}.fa-battery-2:before,.fa-battery-half:before{content:""}.fa-battery-1:before,.fa-battery-quarter:before{content:""}.fa-battery-0:before,.fa-battery-empty:before{content:""}.fa-mouse-pointer:before{content:""}.fa-i-cursor:before{content:""}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-sticky-note:before{content:""}.fa-sticky-note-o:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-diners-club:before{content:""}.fa-clone:before{content:""}.fa-balance-scale:before{content:""}.fa-hourglass-o:before{content:""}.fa-hourglass-1:before,.fa-hourglass-start:before{content:""}.fa-hourglass-2:before,.fa-hourglass-half:before{content:""}.fa-hourglass-3:before,.fa-hourglass-end:before{content:""}.fa-hourglass:before{content:""}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:""}.fa-hand-paper-o:before,.fa-hand-stop-o:before{content:""}.fa-hand-scissors-o:before{content:""}.fa-hand-lizard-o:before{content:""}.fa-hand-spock-o:before{content:""}.fa-hand-pointer-o:before{content:""}.fa-hand-peace-o:before{content:""}.fa-trademark:before{content:""}.fa-registered:before{content:""}.fa-creative-commons:before{content:""}.fa-gg:before{content:""}.fa-gg-circle:before{content:""}.fa-tripadvisor:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-get-pocket:before{content:""}.fa-wikipedia-w:before{content:""}.fa-safari:before{content:""}.fa-chrome:before{content:""}.fa-firefox:before{content:""}.fa-opera:before{content:""}.fa-internet-explorer:before{content:""}.fa-television:before,.fa-tv:before{content:""}.fa-contao:before{content:""}.fa-500px:before{content:""}.fa-amazon:before{content:""}.fa-calendar-plus-o:before{content:""}.fa-calendar-minus-o:before{content:""}.fa-calendar-times-o:before{content:""}.fa-calendar-check-o:before{content:""}.fa-industry:before{content:""}.fa-map-pin:before{content:""}.fa-map-signs:before{content:""}.fa-map-o:before{content:""}.fa-map:before{content:""}.fa-commenting:before{content:""}.fa-commenting-o:before{content:""}.fa-houzz:before{content:""}.fa-vimeo:before{content:""}.fa-black-tie:before{content:""}.fa-fonticons:before{content:""}.fa-reddit-alien:before{content:""}.fa-edge:before{content:""}.fa-credit-card-alt:before{content:""}.fa-codiepie:before{content:""}.fa-modx:before{content:""}.fa-fort-awesome:before{content:""}.fa-usb:before{content:""}.fa-product-hunt:before{content:""}.fa-mixcloud:before{content:""}.fa-scribd:before{content:""}.fa-pause-circle:before{content:""}.fa-pause-circle-o:before{content:""}.fa-stop-circle:before{content:""}.fa-stop-circle-o:before{content:""}.fa-shopping-bag:before{content:""}.fa-shopping-basket:before{content:""}.fa-hashtag:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-percent:before{content:""}.fa-gitlab:before,.icon-gitlab:before{content:""}.fa-wpbeginner:before{content:""}.fa-wpforms:before{content:""}.fa-envira:before{content:""}.fa-universal-access:before{content:""}.fa-wheelchair-alt:before{content:""}.fa-question-circle-o:before{content:""}.fa-blind:before{content:""}.fa-audio-description:before{content:""}.fa-volume-control-phone:before{content:""}.fa-braille:before{content:""}.fa-assistive-listening-systems:before{content:""}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before{content:""}.fa-deaf:before,.fa-deafness:before,.fa-hard-of-hearing:before{content:""}.fa-glide:before{content:""}.fa-glide-g:before{content:""}.fa-sign-language:before,.fa-signing:before{content:""}.fa-low-vision:before{content:""}.fa-viadeo:before{content:""}.fa-viadeo-square:before{content:""}.fa-snapchat:before{content:""}.fa-snapchat-ghost:before{content:""}.fa-snapchat-square:before{content:""}.fa-pied-piper:before{content:""}.fa-first-order:before{content:""}.fa-yoast:before{content:""}.fa-themeisle:before{content:""}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:""}.fa-fa:before,.fa-font-awesome:before{content:""}.fa-handshake-o:before{content:""}.fa-envelope-open:before{content:""}.fa-envelope-open-o:before{content:""}.fa-linode:before{content:""}.fa-address-book:before{content:""}.fa-address-book-o:before{content:""}.fa-address-card:before,.fa-vcard:before{content:""}.fa-address-card-o:before,.fa-vcard-o:before{content:""}.fa-user-circle:before{content:""}.fa-user-circle-o:before{content:""}.fa-user-o:before{content:""}.fa-id-badge:before{content:""}.fa-drivers-license:before,.fa-id-card:before{content:""}.fa-drivers-license-o:before,.fa-id-card-o:before{content:""}.fa-quora:before{content:""}.fa-free-code-camp:before{content:""}.fa-telegram:before{content:""}.fa-thermometer-4:before,.fa-thermometer-full:before,.fa-thermometer:before{content:""}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:""}.fa-thermometer-2:before,.fa-thermometer-half:before{content:""}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:""}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:""}.fa-shower:before{content:""}.fa-bath:before,.fa-bathtub:before,.fa-s15:before{content:""}.fa-podcast:before{content:""}.fa-window-maximize:before{content:""}.fa-window-minimize:before{content:""}.fa-window-restore:before{content:""}.fa-times-rectangle:before,.fa-window-close:before{content:""}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:""}.fa-bandcamp:before{content:""}.fa-grav:before{content:""}.fa-etsy:before{content:""}.fa-imdb:before{content:""}.fa-ravelry:before{content:""}.fa-eercast:before{content:""}.fa-microchip:before{content:""}.fa-snowflake-o:before{content:""}.fa-superpowers:before{content:""}.fa-wpexplorer:before{content:""}.fa-meetup:before{content:""}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}.fa,.icon,.rst-content .admonition-title,.rst-content .code-block-caption .headerlink,.rst-content .eqno .headerlink,.rst-content code.download span:first-child,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content p .headerlink,.rst-content table>caption .headerlink,.rst-content tt.download span:first-child,.wy-dropdown .caret,.wy-inline-validate.wy-inline-validate-danger .wy-input-context,.wy-inline-validate.wy-inline-validate-info .wy-input-context,.wy-inline-validate.wy-inline-validate-success .wy-input-context,.wy-inline-validate.wy-inline-validate-warning .wy-input-context,.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand,.wy-menu-vertical li button.toctree-expand{font-family:inherit}.fa:before,.icon:before,.rst-content .admonition-title:before,.rst-content .code-block-caption .headerlink:before,.rst-content .eqno .headerlink:before,.rst-content code.download span:first-child:before,.rst-content dl dt .headerlink:before,.rst-content h1 .headerlink:before,.rst-content h2 .headerlink:before,.rst-content h3 .headerlink:before,.rst-content h4 .headerlink:before,.rst-content h5 .headerlink:before,.rst-content h6 .headerlink:before,.rst-content p.caption .headerlink:before,.rst-content p .headerlink:before,.rst-content table>caption .headerlink:before,.rst-content tt.download span:first-child:before,.wy-dropdown .caret:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before,.wy-menu-vertical li.current>a button.toctree-expand:before,.wy-menu-vertical li.on a button.toctree-expand:before,.wy-menu-vertical li button.toctree-expand:before{font-family:FontAwesome;display:inline-block;font-style:normal;font-weight:400;line-height:1;text-decoration:inherit}.rst-content .code-block-caption a .headerlink,.rst-content .eqno a .headerlink,.rst-content a .admonition-title,.rst-content code.download a span:first-child,.rst-content dl dt a .headerlink,.rst-content h1 a .headerlink,.rst-content h2 a .headerlink,.rst-content h3 a .headerlink,.rst-content h4 a .headerlink,.rst-content h5 a .headerlink,.rst-content h6 a .headerlink,.rst-content p.caption a .headerlink,.rst-content p a .headerlink,.rst-content table>caption a .headerlink,.rst-content tt.download a span:first-child,.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand,.wy-menu-vertical li a button.toctree-expand,a .fa,a .icon,a .rst-content .admonition-title,a .rst-content .code-block-caption .headerlink,a .rst-content .eqno .headerlink,a .rst-content code.download span:first-child,a .rst-content dl dt .headerlink,a .rst-content h1 .headerlink,a .rst-content h2 .headerlink,a .rst-content h3 .headerlink,a .rst-content h4 .headerlink,a .rst-content h5 .headerlink,a .rst-content h6 .headerlink,a .rst-content p.caption .headerlink,a .rst-content p .headerlink,a .rst-content table>caption .headerlink,a .rst-content tt.download span:first-child,a .wy-menu-vertical li button.toctree-expand{display:inline-block;text-decoration:inherit}.btn .fa,.btn .icon,.btn .rst-content .admonition-title,.btn .rst-content .code-block-caption .headerlink,.btn .rst-content .eqno .headerlink,.btn .rst-content code.download span:first-child,.btn .rst-content dl dt .headerlink,.btn .rst-content h1 .headerlink,.btn .rst-content h2 .headerlink,.btn .rst-content h3 .headerlink,.btn .rst-content h4 .headerlink,.btn .rst-content h5 .headerlink,.btn .rst-content h6 .headerlink,.btn .rst-content p .headerlink,.btn .rst-content table>caption .headerlink,.btn .rst-content tt.download span:first-child,.btn .wy-menu-vertical li.current>a button.toctree-expand,.btn .wy-menu-vertical li.on a button.toctree-expand,.btn .wy-menu-vertical li button.toctree-expand,.nav .fa,.nav .icon,.nav .rst-content .admonition-title,.nav .rst-content .code-block-caption .headerlink,.nav .rst-content .eqno .headerlink,.nav .rst-content code.download span:first-child,.nav .rst-content dl dt .headerlink,.nav .rst-content h1 .headerlink,.nav .rst-content h2 .headerlink,.nav .rst-content h3 .headerlink,.nav .rst-content h4 .headerlink,.nav .rst-content h5 .headerlink,.nav .rst-content h6 .headerlink,.nav .rst-content p .headerlink,.nav .rst-content table>caption .headerlink,.nav .rst-content tt.download span:first-child,.nav .wy-menu-vertical li.current>a button.toctree-expand,.nav .wy-menu-vertical li.on a button.toctree-expand,.nav .wy-menu-vertical li button.toctree-expand,.rst-content .btn .admonition-title,.rst-content .code-block-caption .btn .headerlink,.rst-content .code-block-caption .nav .headerlink,.rst-content .eqno .btn .headerlink,.rst-content .eqno .nav .headerlink,.rst-content .nav .admonition-title,.rst-content code.download .btn span:first-child,.rst-content code.download .nav span:first-child,.rst-content dl dt .btn .headerlink,.rst-content dl dt .nav .headerlink,.rst-content h1 .btn .headerlink,.rst-content h1 .nav .headerlink,.rst-content h2 .btn .headerlink,.rst-content h2 .nav .headerlink,.rst-content h3 .btn .headerlink,.rst-content h3 .nav .headerlink,.rst-content h4 .btn .headerlink,.rst-content h4 .nav .headerlink,.rst-content h5 .btn .headerlink,.rst-content h5 .nav .headerlink,.rst-content h6 .btn .headerlink,.rst-content h6 .nav .headerlink,.rst-content p .btn .headerlink,.rst-content p .nav .headerlink,.rst-content table>caption .btn .headerlink,.rst-content table>caption .nav .headerlink,.rst-content tt.download .btn span:first-child,.rst-content tt.download .nav span:first-child,.wy-menu-vertical li .btn button.toctree-expand,.wy-menu-vertical li.current>a .btn button.toctree-expand,.wy-menu-vertical li.current>a .nav button.toctree-expand,.wy-menu-vertical li .nav button.toctree-expand,.wy-menu-vertical li.on a .btn button.toctree-expand,.wy-menu-vertical li.on a .nav button.toctree-expand{display:inline}.btn .fa-large.icon,.btn .fa.fa-large,.btn .rst-content .code-block-caption .fa-large.headerlink,.btn .rst-content .eqno .fa-large.headerlink,.btn .rst-content .fa-large.admonition-title,.btn .rst-content code.download span.fa-large:first-child,.btn .rst-content dl dt .fa-large.headerlink,.btn .rst-content h1 .fa-large.headerlink,.btn .rst-content h2 .fa-large.headerlink,.btn .rst-content h3 .fa-large.headerlink,.btn .rst-content h4 .fa-large.headerlink,.btn .rst-content h5 .fa-large.headerlink,.btn .rst-content h6 .fa-large.headerlink,.btn .rst-content p .fa-large.headerlink,.btn .rst-content table>caption .fa-large.headerlink,.btn .rst-content tt.download span.fa-large:first-child,.btn .wy-menu-vertical li button.fa-large.toctree-expand,.nav .fa-large.icon,.nav .fa.fa-large,.nav .rst-content .code-block-caption .fa-large.headerlink,.nav .rst-content .eqno .fa-large.headerlink,.nav .rst-content .fa-large.admonition-title,.nav .rst-content code.download span.fa-large:first-child,.nav .rst-content dl dt .fa-large.headerlink,.nav .rst-content h1 .fa-large.headerlink,.nav .rst-content h2 .fa-large.headerlink,.nav .rst-content h3 .fa-large.headerlink,.nav .rst-content h4 .fa-large.headerlink,.nav .rst-content h5 .fa-large.headerlink,.nav .rst-content h6 .fa-large.headerlink,.nav .rst-content p .fa-large.headerlink,.nav .rst-content table>caption .fa-large.headerlink,.nav .rst-content tt.download span.fa-large:first-child,.nav .wy-menu-vertical li button.fa-large.toctree-expand,.rst-content .btn .fa-large.admonition-title,.rst-content .code-block-caption .btn .fa-large.headerlink,.rst-content .code-block-caption .nav .fa-large.headerlink,.rst-content .eqno .btn .fa-large.headerlink,.rst-content .eqno .nav .fa-large.headerlink,.rst-content .nav .fa-large.admonition-title,.rst-content code.download .btn span.fa-large:first-child,.rst-content code.download .nav span.fa-large:first-child,.rst-content dl dt .btn .fa-large.headerlink,.rst-content dl dt .nav .fa-large.headerlink,.rst-content h1 .btn .fa-large.headerlink,.rst-content h1 .nav .fa-large.headerlink,.rst-content h2 .btn .fa-large.headerlink,.rst-content h2 .nav .fa-large.headerlink,.rst-content h3 .btn .fa-large.headerlink,.rst-content h3 .nav .fa-large.headerlink,.rst-content h4 .btn .fa-large.headerlink,.rst-content h4 .nav .fa-large.headerlink,.rst-content h5 .btn .fa-large.headerlink,.rst-content h5 .nav .fa-large.headerlink,.rst-content h6 .btn .fa-large.headerlink,.rst-content h6 .nav .fa-large.headerlink,.rst-content p .btn .fa-large.headerlink,.rst-content p .nav .fa-large.headerlink,.rst-content table>caption .btn .fa-large.headerlink,.rst-content table>caption .nav .fa-large.headerlink,.rst-content tt.download .btn span.fa-large:first-child,.rst-content tt.download .nav span.fa-large:first-child,.wy-menu-vertical li .btn button.fa-large.toctree-expand,.wy-menu-vertical li .nav button.fa-large.toctree-expand{line-height:.9em}.btn .fa-spin.icon,.btn .fa.fa-spin,.btn .rst-content .code-block-caption .fa-spin.headerlink,.btn .rst-content .eqno .fa-spin.headerlink,.btn .rst-content .fa-spin.admonition-title,.btn .rst-content code.download span.fa-spin:first-child,.btn .rst-content dl dt .fa-spin.headerlink,.btn .rst-content h1 .fa-spin.headerlink,.btn .rst-content h2 .fa-spin.headerlink,.btn .rst-content h3 .fa-spin.headerlink,.btn .rst-content h4 .fa-spin.headerlink,.btn .rst-content h5 .fa-spin.headerlink,.btn .rst-content h6 .fa-spin.headerlink,.btn .rst-content p .fa-spin.headerlink,.btn .rst-content table>caption .fa-spin.headerlink,.btn .rst-content tt.download span.fa-spin:first-child,.btn .wy-menu-vertical li button.fa-spin.toctree-expand,.nav .fa-spin.icon,.nav .fa.fa-spin,.nav .rst-content .code-block-caption .fa-spin.headerlink,.nav .rst-content .eqno .fa-spin.headerlink,.nav .rst-content .fa-spin.admonition-title,.nav .rst-content code.download span.fa-spin:first-child,.nav .rst-content dl dt .fa-spin.headerlink,.nav .rst-content h1 .fa-spin.headerlink,.nav .rst-content h2 .fa-spin.headerlink,.nav .rst-content h3 .fa-spin.headerlink,.nav .rst-content h4 .fa-spin.headerlink,.nav .rst-content h5 .fa-spin.headerlink,.nav .rst-content h6 .fa-spin.headerlink,.nav .rst-content p .fa-spin.headerlink,.nav .rst-content table>caption .fa-spin.headerlink,.nav .rst-content tt.download span.fa-spin:first-child,.nav .wy-menu-vertical li button.fa-spin.toctree-expand,.rst-content .btn .fa-spin.admonition-title,.rst-content .code-block-caption .btn .fa-spin.headerlink,.rst-content .code-block-caption .nav .fa-spin.headerlink,.rst-content .eqno .btn .fa-spin.headerlink,.rst-content .eqno .nav .fa-spin.headerlink,.rst-content .nav .fa-spin.admonition-title,.rst-content code.download .btn span.fa-spin:first-child,.rst-content code.download .nav span.fa-spin:first-child,.rst-content dl dt .btn .fa-spin.headerlink,.rst-content dl dt .nav .fa-spin.headerlink,.rst-content h1 .btn .fa-spin.headerlink,.rst-content h1 .nav .fa-spin.headerlink,.rst-content h2 .btn .fa-spin.headerlink,.rst-content h2 .nav .fa-spin.headerlink,.rst-content h3 .btn .fa-spin.headerlink,.rst-content h3 .nav .fa-spin.headerlink,.rst-content h4 .btn .fa-spin.headerlink,.rst-content h4 .nav .fa-spin.headerlink,.rst-content h5 .btn .fa-spin.headerlink,.rst-content h5 .nav .fa-spin.headerlink,.rst-content h6 .btn .fa-spin.headerlink,.rst-content h6 .nav .fa-spin.headerlink,.rst-content p .btn .fa-spin.headerlink,.rst-content p .nav .fa-spin.headerlink,.rst-content table>caption .btn .fa-spin.headerlink,.rst-content table>caption .nav .fa-spin.headerlink,.rst-content tt.download .btn span.fa-spin:first-child,.rst-content tt.download .nav span.fa-spin:first-child,.wy-menu-vertical li .btn button.fa-spin.toctree-expand,.wy-menu-vertical li .nav button.fa-spin.toctree-expand{display:inline-block}.btn.fa:before,.btn.icon:before,.rst-content .btn.admonition-title:before,.rst-content .code-block-caption .btn.headerlink:before,.rst-content .eqno .btn.headerlink:before,.rst-content code.download span.btn:first-child:before,.rst-content dl dt .btn.headerlink:before,.rst-content h1 .btn.headerlink:before,.rst-content h2 .btn.headerlink:before,.rst-content h3 .btn.headerlink:before,.rst-content h4 .btn.headerlink:before,.rst-content h5 .btn.headerlink:before,.rst-content h6 .btn.headerlink:before,.rst-content p .btn.headerlink:before,.rst-content table>caption .btn.headerlink:before,.rst-content tt.download span.btn:first-child:before,.wy-menu-vertical li button.btn.toctree-expand:before{opacity:.5;-webkit-transition:opacity .05s ease-in;-moz-transition:opacity .05s ease-in;transition:opacity .05s ease-in}.btn.fa:hover:before,.btn.icon:hover:before,.rst-content .btn.admonition-title:hover:before,.rst-content .code-block-caption .btn.headerlink:hover:before,.rst-content .eqno .btn.headerlink:hover:before,.rst-content code.download span.btn:first-child:hover:before,.rst-content dl dt .btn.headerlink:hover:before,.rst-content h1 .btn.headerlink:hover:before,.rst-content h2 .btn.headerlink:hover:before,.rst-content h3 .btn.headerlink:hover:before,.rst-content h4 .btn.headerlink:hover:before,.rst-content h5 .btn.headerlink:hover:before,.rst-content h6 .btn.headerlink:hover:before,.rst-content p .btn.headerlink:hover:before,.rst-content table>caption .btn.headerlink:hover:before,.rst-content tt.download span.btn:first-child:hover:before,.wy-menu-vertical li button.btn.toctree-expand:hover:before{opacity:1}.btn-mini .fa:before,.btn-mini .icon:before,.btn-mini .rst-content .admonition-title:before,.btn-mini .rst-content .code-block-caption .headerlink:before,.btn-mini .rst-content .eqno .headerlink:before,.btn-mini .rst-content code.download span:first-child:before,.btn-mini .rst-content dl dt .headerlink:before,.btn-mini .rst-content h1 .headerlink:before,.btn-mini .rst-content h2 .headerlink:before,.btn-mini .rst-content h3 .headerlink:before,.btn-mini .rst-content h4 .headerlink:before,.btn-mini .rst-content h5 .headerlink:before,.btn-mini .rst-content h6 .headerlink:before,.btn-mini .rst-content p .headerlink:before,.btn-mini .rst-content table>caption .headerlink:before,.btn-mini .rst-content tt.download span:first-child:before,.btn-mini .wy-menu-vertical li button.toctree-expand:before,.rst-content .btn-mini .admonition-title:before,.rst-content .code-block-caption .btn-mini .headerlink:before,.rst-content .eqno .btn-mini .headerlink:before,.rst-content code.download .btn-mini span:first-child:before,.rst-content dl dt .btn-mini .headerlink:before,.rst-content h1 .btn-mini .headerlink:before,.rst-content h2 .btn-mini .headerlink:before,.rst-content h3 .btn-mini .headerlink:before,.rst-content h4 .btn-mini .headerlink:before,.rst-content h5 .btn-mini .headerlink:before,.rst-content h6 .btn-mini .headerlink:before,.rst-content p .btn-mini .headerlink:before,.rst-content table>caption .btn-mini .headerlink:before,.rst-content tt.download .btn-mini span:first-child:before,.wy-menu-vertical li .btn-mini button.toctree-expand:before{font-size:14px;vertical-align:-15%}.rst-content .admonition,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .danger,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning,.wy-alert{padding:12px;line-height:24px;margin-bottom:24px;background:#e7f2fa}.rst-content .admonition-title,.wy-alert-title{font-weight:700;display:block;color:#fff;background:#6ab0de;padding:6px 12px;margin:-12px -12px 12px}.rst-content .danger,.rst-content .error,.rst-content .wy-alert-danger.admonition,.rst-content .wy-alert-danger.admonition-todo,.rst-content .wy-alert-danger.attention,.rst-content .wy-alert-danger.caution,.rst-content .wy-alert-danger.hint,.rst-content .wy-alert-danger.important,.rst-content .wy-alert-danger.note,.rst-content .wy-alert-danger.seealso,.rst-content .wy-alert-danger.tip,.rst-content .wy-alert-danger.warning,.wy-alert.wy-alert-danger{background:#fdf3f2}.rst-content .danger .admonition-title,.rst-content .danger .wy-alert-title,.rst-content .error .admonition-title,.rst-content .error .wy-alert-title,.rst-content .wy-alert-danger.admonition-todo .admonition-title,.rst-content .wy-alert-danger.admonition-todo .wy-alert-title,.rst-content .wy-alert-danger.admonition .admonition-title,.rst-content .wy-alert-danger.admonition .wy-alert-title,.rst-content .wy-alert-danger.attention .admonition-title,.rst-content .wy-alert-danger.attention .wy-alert-title,.rst-content .wy-alert-danger.caution .admonition-title,.rst-content .wy-alert-danger.caution .wy-alert-title,.rst-content .wy-alert-danger.hint .admonition-title,.rst-content .wy-alert-danger.hint .wy-alert-title,.rst-content .wy-alert-danger.important .admonition-title,.rst-content .wy-alert-danger.important .wy-alert-title,.rst-content .wy-alert-danger.note .admonition-title,.rst-content .wy-alert-danger.note .wy-alert-title,.rst-content .wy-alert-danger.seealso .admonition-title,.rst-content .wy-alert-danger.seealso .wy-alert-title,.rst-content .wy-alert-danger.tip .admonition-title,.rst-content .wy-alert-danger.tip .wy-alert-title,.rst-content .wy-alert-danger.warning .admonition-title,.rst-content .wy-alert-danger.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-danger .admonition-title,.wy-alert.wy-alert-danger .rst-content .admonition-title,.wy-alert.wy-alert-danger .wy-alert-title{background:#f29f97}.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .warning,.rst-content .wy-alert-warning.admonition,.rst-content .wy-alert-warning.danger,.rst-content .wy-alert-warning.error,.rst-content .wy-alert-warning.hint,.rst-content .wy-alert-warning.important,.rst-content .wy-alert-warning.note,.rst-content .wy-alert-warning.seealso,.rst-content .wy-alert-warning.tip,.wy-alert.wy-alert-warning{background:#ffedcc}.rst-content .admonition-todo .admonition-title,.rst-content .admonition-todo .wy-alert-title,.rst-content .attention .admonition-title,.rst-content .attention .wy-alert-title,.rst-content .caution .admonition-title,.rst-content .caution .wy-alert-title,.rst-content .warning .admonition-title,.rst-content .warning .wy-alert-title,.rst-content .wy-alert-warning.admonition .admonition-title,.rst-content .wy-alert-warning.admonition .wy-alert-title,.rst-content .wy-alert-warning.danger .admonition-title,.rst-content .wy-alert-warning.danger .wy-alert-title,.rst-content .wy-alert-warning.error .admonition-title,.rst-content .wy-alert-warning.error .wy-alert-title,.rst-content .wy-alert-warning.hint .admonition-title,.rst-content .wy-alert-warning.hint .wy-alert-title,.rst-content .wy-alert-warning.important .admonition-title,.rst-content .wy-alert-warning.important .wy-alert-title,.rst-content .wy-alert-warning.note .admonition-title,.rst-content .wy-alert-warning.note .wy-alert-title,.rst-content .wy-alert-warning.seealso .admonition-title,.rst-content .wy-alert-warning.seealso .wy-alert-title,.rst-content .wy-alert-warning.tip .admonition-title,.rst-content .wy-alert-warning.tip .wy-alert-title,.rst-content .wy-alert.wy-alert-warning .admonition-title,.wy-alert.wy-alert-warning .rst-content .admonition-title,.wy-alert.wy-alert-warning .wy-alert-title{background:#f0b37e}.rst-content .note,.rst-content .seealso,.rst-content .wy-alert-info.admonition,.rst-content .wy-alert-info.admonition-todo,.rst-content .wy-alert-info.attention,.rst-content .wy-alert-info.caution,.rst-content .wy-alert-info.danger,.rst-content .wy-alert-info.error,.rst-content .wy-alert-info.hint,.rst-content .wy-alert-info.important,.rst-content .wy-alert-info.tip,.rst-content .wy-alert-info.warning,.wy-alert.wy-alert-info{background:#e7f2fa}.rst-content .note .admonition-title,.rst-content .note .wy-alert-title,.rst-content .seealso .admonition-title,.rst-content .seealso .wy-alert-title,.rst-content .wy-alert-info.admonition-todo .admonition-title,.rst-content .wy-alert-info.admonition-todo .wy-alert-title,.rst-content .wy-alert-info.admonition .admonition-title,.rst-content .wy-alert-info.admonition .wy-alert-title,.rst-content .wy-alert-info.attention .admonition-title,.rst-content .wy-alert-info.attention .wy-alert-title,.rst-content .wy-alert-info.caution .admonition-title,.rst-content .wy-alert-info.caution .wy-alert-title,.rst-content .wy-alert-info.danger .admonition-title,.rst-content .wy-alert-info.danger .wy-alert-title,.rst-content .wy-alert-info.error .admonition-title,.rst-content .wy-alert-info.error .wy-alert-title,.rst-content .wy-alert-info.hint .admonition-title,.rst-content .wy-alert-info.hint .wy-alert-title,.rst-content .wy-alert-info.important .admonition-title,.rst-content .wy-alert-info.important .wy-alert-title,.rst-content .wy-alert-info.tip .admonition-title,.rst-content .wy-alert-info.tip .wy-alert-title,.rst-content .wy-alert-info.warning .admonition-title,.rst-content .wy-alert-info.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-info .admonition-title,.wy-alert.wy-alert-info .rst-content .admonition-title,.wy-alert.wy-alert-info .wy-alert-title{background:#6ab0de}.rst-content .hint,.rst-content .important,.rst-content .tip,.rst-content .wy-alert-success.admonition,.rst-content .wy-alert-success.admonition-todo,.rst-content .wy-alert-success.attention,.rst-content .wy-alert-success.caution,.rst-content .wy-alert-success.danger,.rst-content .wy-alert-success.error,.rst-content .wy-alert-success.note,.rst-content .wy-alert-success.seealso,.rst-content .wy-alert-success.warning,.wy-alert.wy-alert-success{background:#dbfaf4}.rst-content .hint .admonition-title,.rst-content .hint .wy-alert-title,.rst-content .important .admonition-title,.rst-content .important .wy-alert-title,.rst-content .tip .admonition-title,.rst-content .tip .wy-alert-title,.rst-content .wy-alert-success.admonition-todo .admonition-title,.rst-content .wy-alert-success.admonition-todo .wy-alert-title,.rst-content .wy-alert-success.admonition .admonition-title,.rst-content .wy-alert-success.admonition .wy-alert-title,.rst-content .wy-alert-success.attention .admonition-title,.rst-content .wy-alert-success.attention .wy-alert-title,.rst-content .wy-alert-success.caution .admonition-title,.rst-content .wy-alert-success.caution .wy-alert-title,.rst-content .wy-alert-success.danger .admonition-title,.rst-content .wy-alert-success.danger .wy-alert-title,.rst-content .wy-alert-success.error .admonition-title,.rst-content .wy-alert-success.error .wy-alert-title,.rst-content .wy-alert-success.note .admonition-title,.rst-content .wy-alert-success.note .wy-alert-title,.rst-content .wy-alert-success.seealso .admonition-title,.rst-content .wy-alert-success.seealso .wy-alert-title,.rst-content .wy-alert-success.warning .admonition-title,.rst-content .wy-alert-success.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-success .admonition-title,.wy-alert.wy-alert-success .rst-content .admonition-title,.wy-alert.wy-alert-success .wy-alert-title{background:#1abc9c}.rst-content .wy-alert-neutral.admonition,.rst-content .wy-alert-neutral.admonition-todo,.rst-content .wy-alert-neutral.attention,.rst-content .wy-alert-neutral.caution,.rst-content .wy-alert-neutral.danger,.rst-content .wy-alert-neutral.error,.rst-content .wy-alert-neutral.hint,.rst-content .wy-alert-neutral.important,.rst-content .wy-alert-neutral.note,.rst-content .wy-alert-neutral.seealso,.rst-content .wy-alert-neutral.tip,.rst-content .wy-alert-neutral.warning,.wy-alert.wy-alert-neutral{background:#f3f6f6}.rst-content .wy-alert-neutral.admonition-todo .admonition-title,.rst-content .wy-alert-neutral.admonition-todo .wy-alert-title,.rst-content .wy-alert-neutral.admonition .admonition-title,.rst-content .wy-alert-neutral.admonition .wy-alert-title,.rst-content .wy-alert-neutral.attention .admonition-title,.rst-content .wy-alert-neutral.attention .wy-alert-title,.rst-content .wy-alert-neutral.caution .admonition-title,.rst-content .wy-alert-neutral.caution .wy-alert-title,.rst-content .wy-alert-neutral.danger .admonition-title,.rst-content .wy-alert-neutral.danger .wy-alert-title,.rst-content .wy-alert-neutral.error .admonition-title,.rst-content .wy-alert-neutral.error .wy-alert-title,.rst-content .wy-alert-neutral.hint .admonition-title,.rst-content .wy-alert-neutral.hint .wy-alert-title,.rst-content .wy-alert-neutral.important .admonition-title,.rst-content .wy-alert-neutral.important .wy-alert-title,.rst-content .wy-alert-neutral.note .admonition-title,.rst-content .wy-alert-neutral.note .wy-alert-title,.rst-content .wy-alert-neutral.seealso .admonition-title,.rst-content .wy-alert-neutral.seealso .wy-alert-title,.rst-content .wy-alert-neutral.tip .admonition-title,.rst-content .wy-alert-neutral.tip .wy-alert-title,.rst-content .wy-alert-neutral.warning .admonition-title,.rst-content .wy-alert-neutral.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-neutral .admonition-title,.wy-alert.wy-alert-neutral .rst-content .admonition-title,.wy-alert.wy-alert-neutral .wy-alert-title{color:#404040;background:#e1e4e5}.rst-content .wy-alert-neutral.admonition-todo a,.rst-content .wy-alert-neutral.admonition a,.rst-content .wy-alert-neutral.attention a,.rst-content .wy-alert-neutral.caution a,.rst-content .wy-alert-neutral.danger a,.rst-content .wy-alert-neutral.error a,.rst-content .wy-alert-neutral.hint a,.rst-content .wy-alert-neutral.important a,.rst-content .wy-alert-neutral.note a,.rst-content .wy-alert-neutral.seealso a,.rst-content .wy-alert-neutral.tip a,.rst-content .wy-alert-neutral.warning a,.wy-alert.wy-alert-neutral a{color:#2980b9}.rst-content .admonition-todo p:last-child,.rst-content .admonition p:last-child,.rst-content .attention p:last-child,.rst-content .caution p:last-child,.rst-content .danger p:last-child,.rst-content .error p:last-child,.rst-content .hint p:last-child,.rst-content .important p:last-child,.rst-content .note p:last-child,.rst-content .seealso p:last-child,.rst-content .tip p:last-child,.rst-content .warning p:last-child,.wy-alert p:last-child{margin-bottom:0}.wy-tray-container{position:fixed;bottom:0;left:0;z-index:600}.wy-tray-container li{display:block;width:300px;background:transparent;color:#fff;text-align:center;box-shadow:0 5px 5px 0 rgba(0,0,0,.1);padding:0 24px;min-width:20%;opacity:0;height:0;line-height:56px;overflow:hidden;-webkit-transition:all .3s ease-in;-moz-transition:all .3s ease-in;transition:all .3s ease-in}.wy-tray-container li.wy-tray-item-success{background:#27ae60}.wy-tray-container li.wy-tray-item-info{background:#2980b9}.wy-tray-container li.wy-tray-item-warning{background:#e67e22}.wy-tray-container li.wy-tray-item-danger{background:#e74c3c}.wy-tray-container li.on{opacity:1;height:56px}@media screen and (max-width:768px){.wy-tray-container{bottom:auto;top:0;width:100%}.wy-tray-container li{width:100%}}button{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle;cursor:pointer;line-height:normal;-webkit-appearance:button;*overflow:visible}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button[disabled]{cursor:default}.btn{display:inline-block;border-radius:2px;line-height:normal;white-space:nowrap;text-align:center;cursor:pointer;font-size:100%;padding:6px 12px 8px;color:#fff;border:1px solid rgba(0,0,0,.1);background-color:#27ae60;text-decoration:none;font-weight:400;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;box-shadow:inset 0 1px 2px -1px hsla(0,0%,100%,.5),inset 0 -2px 0 0 rgba(0,0,0,.1);outline-none:false;vertical-align:middle;*display:inline;zoom:1;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:all .1s linear;-moz-transition:all .1s linear;transition:all .1s linear}.btn-hover{background:#2e8ece;color:#fff}.btn:hover{background:#2cc36b;color:#fff}.btn:focus{background:#2cc36b;outline:0}.btn:active{box-shadow:inset 0 -1px 0 0 rgba(0,0,0,.05),inset 0 2px 0 0 rgba(0,0,0,.1);padding:8px 12px 6px}.btn:visited{color:#fff}.btn-disabled,.btn-disabled:active,.btn-disabled:focus,.btn-disabled:hover,.btn:disabled{background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);filter:alpha(opacity=40);opacity:.4;cursor:not-allowed;box-shadow:none}.btn::-moz-focus-inner{padding:0;border:0}.btn-small{font-size:80%}.btn-info{background-color:#2980b9!important}.btn-info:hover{background-color:#2e8ece!important}.btn-neutral{background-color:#f3f6f6!important;color:#404040!important}.btn-neutral:hover{background-color:#e5ebeb!important;color:#404040}.btn-neutral:visited{color:#404040!important}.btn-success{background-color:#27ae60!important}.btn-success:hover{background-color:#295!important}.btn-danger{background-color:#e74c3c!important}.btn-danger:hover{background-color:#ea6153!important}.btn-warning{background-color:#e67e22!important}.btn-warning:hover{background-color:#e98b39!important}.btn-invert{background-color:#222}.btn-invert:hover{background-color:#2f2f2f!important}.btn-link{background-color:transparent!important;color:#2980b9;box-shadow:none;border-color:transparent!important}.btn-link:active,.btn-link:hover{background-color:transparent!important;color:#409ad5!important;box-shadow:none}.btn-link:visited{color:#9b59b6}.wy-btn-group .btn,.wy-control .btn{vertical-align:middle}.wy-btn-group{margin-bottom:24px;*zoom:1}.wy-btn-group:after,.wy-btn-group:before{display:table;content:""}.wy-btn-group:after{clear:both}.wy-dropdown{position:relative;display:inline-block}.wy-dropdown-active .wy-dropdown-menu{display:block}.wy-dropdown-menu{position:absolute;left:0;display:none;float:left;top:100%;min-width:100%;background:#fcfcfc;z-index:100;border:1px solid #cfd7dd;box-shadow:0 2px 2px 0 rgba(0,0,0,.1);padding:12px}.wy-dropdown-menu>dd>a{display:block;clear:both;color:#404040;white-space:nowrap;font-size:90%;padding:0 12px;cursor:pointer}.wy-dropdown-menu>dd>a:hover{background:#2980b9;color:#fff}.wy-dropdown-menu>dd.divider{border-top:1px solid #cfd7dd;margin:6px 0}.wy-dropdown-menu>dd.search{padding-bottom:12px}.wy-dropdown-menu>dd.search input[type=search]{width:100%}.wy-dropdown-menu>dd.call-to-action{background:#e3e3e3;text-transform:uppercase;font-weight:500;font-size:80%}.wy-dropdown-menu>dd.call-to-action:hover{background:#e3e3e3}.wy-dropdown-menu>dd.call-to-action .btn{color:#fff}.wy-dropdown.wy-dropdown-up .wy-dropdown-menu{bottom:100%;top:auto;left:auto;right:0}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu{background:#fcfcfc;margin-top:2px}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu a{padding:6px 12px}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu a:hover{background:#2980b9;color:#fff}.wy-dropdown.wy-dropdown-left .wy-dropdown-menu{right:0;left:auto;text-align:right}.wy-dropdown-arrow:before{content:" ";border-bottom:5px solid #f5f5f5;border-left:5px solid transparent;border-right:5px solid transparent;position:absolute;display:block;top:-4px;left:50%;margin-left:-3px}.wy-dropdown-arrow.wy-dropdown-arrow-left:before{left:11px}.wy-form-stacked select{display:block}.wy-form-aligned .wy-help-inline,.wy-form-aligned input,.wy-form-aligned label,.wy-form-aligned select,.wy-form-aligned textarea{display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.wy-form-aligned .wy-control-group>label{display:inline-block;vertical-align:middle;width:10em;margin:6px 12px 0 0;float:left}.wy-form-aligned .wy-control{float:left}.wy-form-aligned .wy-control label{display:block}.wy-form-aligned .wy-control select{margin-top:6px}fieldset{margin:0}fieldset,legend{border:0;padding:0}legend{width:100%;white-space:normal;margin-bottom:24px;font-size:150%;*margin-left:-7px}label,legend{display:block}label{margin:0 0 .3125em;color:#333;font-size:90%}input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}.wy-control-group{margin-bottom:24px;max-width:1200px;margin-left:auto;margin-right:auto;*zoom:1}.wy-control-group:after,.wy-control-group:before{display:table;content:""}.wy-control-group:after{clear:both}.wy-control-group.wy-control-group-required>label:after{content:" *";color:#e74c3c}.wy-control-group .wy-form-full,.wy-control-group .wy-form-halves,.wy-control-group .wy-form-thirds{padding-bottom:12px}.wy-control-group .wy-form-full input[type=color],.wy-control-group .wy-form-full input[type=date],.wy-control-group .wy-form-full input[type=datetime-local],.wy-control-group .wy-form-full input[type=datetime],.wy-control-group .wy-form-full input[type=email],.wy-control-group .wy-form-full input[type=month],.wy-control-group .wy-form-full input[type=number],.wy-control-group .wy-form-full input[type=password],.wy-control-group .wy-form-full input[type=search],.wy-control-group .wy-form-full input[type=tel],.wy-control-group .wy-form-full input[type=text],.wy-control-group .wy-form-full input[type=time],.wy-control-group .wy-form-full input[type=url],.wy-control-group .wy-form-full input[type=week],.wy-control-group .wy-form-full select,.wy-control-group .wy-form-halves input[type=color],.wy-control-group .wy-form-halves input[type=date],.wy-control-group .wy-form-halves input[type=datetime-local],.wy-control-group .wy-form-halves input[type=datetime],.wy-control-group .wy-form-halves input[type=email],.wy-control-group .wy-form-halves input[type=month],.wy-control-group .wy-form-halves input[type=number],.wy-control-group .wy-form-halves input[type=password],.wy-control-group .wy-form-halves input[type=search],.wy-control-group .wy-form-halves input[type=tel],.wy-control-group .wy-form-halves input[type=text],.wy-control-group .wy-form-halves input[type=time],.wy-control-group .wy-form-halves input[type=url],.wy-control-group .wy-form-halves input[type=week],.wy-control-group .wy-form-halves select,.wy-control-group .wy-form-thirds input[type=color],.wy-control-group .wy-form-thirds input[type=date],.wy-control-group .wy-form-thirds input[type=datetime-local],.wy-control-group .wy-form-thirds input[type=datetime],.wy-control-group .wy-form-thirds input[type=email],.wy-control-group .wy-form-thirds input[type=month],.wy-control-group .wy-form-thirds input[type=number],.wy-control-group .wy-form-thirds input[type=password],.wy-control-group .wy-form-thirds input[type=search],.wy-control-group .wy-form-thirds input[type=tel],.wy-control-group .wy-form-thirds input[type=text],.wy-control-group .wy-form-thirds input[type=time],.wy-control-group .wy-form-thirds input[type=url],.wy-control-group .wy-form-thirds input[type=week],.wy-control-group .wy-form-thirds select{width:100%}.wy-control-group .wy-form-full{float:left;display:block;width:100%;margin-right:0}.wy-control-group .wy-form-full:last-child{margin-right:0}.wy-control-group .wy-form-halves{float:left;display:block;margin-right:2.35765%;width:48.82117%}.wy-control-group .wy-form-halves:last-child,.wy-control-group .wy-form-halves:nth-of-type(2n){margin-right:0}.wy-control-group .wy-form-halves:nth-of-type(odd){clear:left}.wy-control-group .wy-form-thirds{float:left;display:block;margin-right:2.35765%;width:31.76157%}.wy-control-group .wy-form-thirds:last-child,.wy-control-group .wy-form-thirds:nth-of-type(3n){margin-right:0}.wy-control-group .wy-form-thirds:nth-of-type(3n+1){clear:left}.wy-control-group.wy-control-group-no-input .wy-control,.wy-control-no-input{margin:6px 0 0;font-size:90%}.wy-control-no-input{display:inline-block}.wy-control-group.fluid-input input[type=color],.wy-control-group.fluid-input input[type=date],.wy-control-group.fluid-input input[type=datetime-local],.wy-control-group.fluid-input input[type=datetime],.wy-control-group.fluid-input input[type=email],.wy-control-group.fluid-input input[type=month],.wy-control-group.fluid-input input[type=number],.wy-control-group.fluid-input input[type=password],.wy-control-group.fluid-input input[type=search],.wy-control-group.fluid-input input[type=tel],.wy-control-group.fluid-input input[type=text],.wy-control-group.fluid-input input[type=time],.wy-control-group.fluid-input input[type=url],.wy-control-group.fluid-input input[type=week]{width:100%}.wy-form-message-inline{padding-left:.3em;color:#666;font-size:90%}.wy-form-message{display:block;color:#999;font-size:70%;margin-top:.3125em;font-style:italic}.wy-form-message p{font-size:inherit;font-style:italic;margin-bottom:6px}.wy-form-message p:last-child{margin-bottom:0}input{line-height:normal}input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;*overflow:visible}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week]{-webkit-appearance:none;padding:6px;display:inline-block;border:1px solid #ccc;font-size:80%;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;box-shadow:inset 0 1px 3px #ddd;border-radius:0;-webkit-transition:border .3s linear;-moz-transition:border .3s linear;transition:border .3s linear}input[type=datetime-local]{padding:.34375em .625em}input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{padding:0;margin-right:.3125em;*height:13px;*width:13px}input[type=checkbox],input[type=radio],input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus{outline:0;outline:thin dotted\9;border-color:#333}input.no-focus:focus{border-color:#ccc!important}input[type=checkbox]:focus,input[type=file]:focus,input[type=radio]:focus{outline:thin dotted #333;outline:1px auto #129fea}input[type=color][disabled],input[type=date][disabled],input[type=datetime-local][disabled],input[type=datetime][disabled],input[type=email][disabled],input[type=month][disabled],input[type=number][disabled],input[type=password][disabled],input[type=search][disabled],input[type=tel][disabled],input[type=text][disabled],input[type=time][disabled],input[type=url][disabled],input[type=week][disabled]{cursor:not-allowed;background-color:#fafafa}input:focus:invalid,select:focus:invalid,textarea:focus:invalid{color:#e74c3c;border:1px solid #e74c3c}input:focus:invalid:focus,select:focus:invalid:focus,textarea:focus:invalid:focus{border-color:#e74c3c}input[type=checkbox]:focus:invalid:focus,input[type=file]:focus:invalid:focus,input[type=radio]:focus:invalid:focus{outline-color:#e74c3c}input.wy-input-large{padding:12px;font-size:100%}textarea{overflow:auto;vertical-align:top;width:100%;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif}select,textarea{padding:.5em .625em;display:inline-block;border:1px solid #ccc;font-size:80%;box-shadow:inset 0 1px 3px #ddd;-webkit-transition:border .3s linear;-moz-transition:border .3s linear;transition:border .3s linear}select{border:1px solid #ccc;background-color:#fff}select[multiple]{height:auto}select:focus,textarea:focus{outline:0}input[readonly],select[disabled],select[readonly],textarea[disabled],textarea[readonly]{cursor:not-allowed;background-color:#fafafa}input[type=checkbox][disabled],input[type=radio][disabled]{cursor:not-allowed}.wy-checkbox,.wy-radio{margin:6px 0;color:#404040;display:block}.wy-checkbox input,.wy-radio input{vertical-align:baseline}.wy-form-message-inline{display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.wy-input-prefix,.wy-input-suffix{white-space:nowrap;padding:6px}.wy-input-prefix .wy-input-context,.wy-input-suffix .wy-input-context{line-height:27px;padding:0 8px;display:inline-block;font-size:80%;background-color:#f3f6f6;border:1px solid #ccc;color:#999}.wy-input-suffix .wy-input-context{border-left:0}.wy-input-prefix .wy-input-context{border-right:0}.wy-switch{position:relative;display:block;height:24px;margin-top:12px;cursor:pointer}.wy-switch:before{left:0;top:0;width:36px;height:12px;background:#ccc}.wy-switch:after,.wy-switch:before{position:absolute;content:"";display:block;border-radius:4px;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.wy-switch:after{width:18px;height:18px;background:#999;left:-3px;top:-3px}.wy-switch span{position:absolute;left:48px;display:block;font-size:12px;color:#ccc;line-height:1}.wy-switch.active:before{background:#1e8449}.wy-switch.active:after{left:24px;background:#27ae60}.wy-switch.disabled{cursor:not-allowed;opacity:.8}.wy-control-group.wy-control-group-error .wy-form-message,.wy-control-group.wy-control-group-error>label{color:#e74c3c}.wy-control-group.wy-control-group-error input[type=color],.wy-control-group.wy-control-group-error input[type=date],.wy-control-group.wy-control-group-error input[type=datetime-local],.wy-control-group.wy-control-group-error input[type=datetime],.wy-control-group.wy-control-group-error input[type=email],.wy-control-group.wy-control-group-error input[type=month],.wy-control-group.wy-control-group-error input[type=number],.wy-control-group.wy-control-group-error input[type=password],.wy-control-group.wy-control-group-error input[type=search],.wy-control-group.wy-control-group-error input[type=tel],.wy-control-group.wy-control-group-error input[type=text],.wy-control-group.wy-control-group-error input[type=time],.wy-control-group.wy-control-group-error input[type=url],.wy-control-group.wy-control-group-error input[type=week],.wy-control-group.wy-control-group-error textarea{border:1px solid #e74c3c}.wy-inline-validate{white-space:nowrap}.wy-inline-validate .wy-input-context{padding:.5em .625em;display:inline-block;font-size:80%}.wy-inline-validate.wy-inline-validate-success .wy-input-context{color:#27ae60}.wy-inline-validate.wy-inline-validate-danger .wy-input-context{color:#e74c3c}.wy-inline-validate.wy-inline-validate-warning .wy-input-context{color:#e67e22}.wy-inline-validate.wy-inline-validate-info .wy-input-context{color:#2980b9}.rotate-90{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.rotate-180{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.rotate-270{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.mirror{-webkit-transform:scaleX(-1);-moz-transform:scaleX(-1);-ms-transform:scaleX(-1);-o-transform:scaleX(-1);transform:scaleX(-1)}.mirror.rotate-90{-webkit-transform:scaleX(-1) rotate(90deg);-moz-transform:scaleX(-1) rotate(90deg);-ms-transform:scaleX(-1) rotate(90deg);-o-transform:scaleX(-1) rotate(90deg);transform:scaleX(-1) rotate(90deg)}.mirror.rotate-180{-webkit-transform:scaleX(-1) rotate(180deg);-moz-transform:scaleX(-1) rotate(180deg);-ms-transform:scaleX(-1) rotate(180deg);-o-transform:scaleX(-1) rotate(180deg);transform:scaleX(-1) rotate(180deg)}.mirror.rotate-270{-webkit-transform:scaleX(-1) rotate(270deg);-moz-transform:scaleX(-1) rotate(270deg);-ms-transform:scaleX(-1) rotate(270deg);-o-transform:scaleX(-1) rotate(270deg);transform:scaleX(-1) rotate(270deg)}@media only screen and (max-width:480px){.wy-form button[type=submit]{margin:.7em 0 0}.wy-form input[type=color],.wy-form input[type=date],.wy-form input[type=datetime-local],.wy-form input[type=datetime],.wy-form input[type=email],.wy-form input[type=month],.wy-form input[type=number],.wy-form input[type=password],.wy-form input[type=search],.wy-form input[type=tel],.wy-form input[type=text],.wy-form input[type=time],.wy-form input[type=url],.wy-form input[type=week],.wy-form label{margin-bottom:.3em;display:block}.wy-form input[type=color],.wy-form input[type=date],.wy-form input[type=datetime-local],.wy-form input[type=datetime],.wy-form input[type=email],.wy-form input[type=month],.wy-form input[type=number],.wy-form input[type=password],.wy-form input[type=search],.wy-form input[type=tel],.wy-form input[type=time],.wy-form input[type=url],.wy-form input[type=week]{margin-bottom:0}.wy-form-aligned .wy-control-group label{margin-bottom:.3em;text-align:left;display:block;width:100%}.wy-form-aligned .wy-control{margin:1.5em 0 0}.wy-form-message,.wy-form-message-inline,.wy-form .wy-help-inline{display:block;font-size:80%;padding:6px 0}}@media screen and (max-width:768px){.tablet-hide{display:none}}@media screen and (max-width:480px){.mobile-hide{display:none}}.float-left{float:left}.float-right{float:right}.full-width{width:100%}.rst-content table.docutils,.rst-content table.field-list,.wy-table{border-collapse:collapse;border-spacing:0;empty-cells:show;margin-bottom:24px}.rst-content table.docutils caption,.rst-content table.field-list caption,.wy-table caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.rst-content table.docutils td,.rst-content table.docutils th,.rst-content table.field-list td,.rst-content table.field-list th,.wy-table td,.wy-table th{font-size:90%;margin:0;overflow:visible;padding:8px 16px}.rst-content table.docutils td:first-child,.rst-content table.docutils th:first-child,.rst-content table.field-list td:first-child,.rst-content table.field-list th:first-child,.wy-table td:first-child,.wy-table th:first-child{border-left-width:0}.rst-content table.docutils thead,.rst-content table.field-list thead,.wy-table thead{color:#000;text-align:left;vertical-align:bottom;white-space:nowrap}.rst-content table.docutils thead th,.rst-content table.field-list thead th,.wy-table thead th{font-weight:700;border-bottom:2px solid #e1e4e5}.rst-content table.docutils td,.rst-content table.field-list td,.wy-table td{background-color:transparent;vertical-align:middle}.rst-content table.docutils td p,.rst-content table.field-list td p,.wy-table td p{line-height:18px}.rst-content table.docutils td p:last-child,.rst-content table.field-list td p:last-child,.wy-table td p:last-child{margin-bottom:0}.rst-content table.docutils .wy-table-cell-min,.rst-content table.field-list .wy-table-cell-min,.wy-table .wy-table-cell-min{width:1%;padding-right:0}.rst-content table.docutils .wy-table-cell-min input[type=checkbox],.rst-content table.field-list .wy-table-cell-min input[type=checkbox],.wy-table .wy-table-cell-min input[type=checkbox]{margin:0}.wy-table-secondary{color:grey;font-size:90%}.wy-table-tertiary{color:grey;font-size:80%}.rst-content table.docutils:not(.field-list) tr:nth-child(2n-1) td,.wy-table-backed,.wy-table-odd td,.wy-table-striped tr:nth-child(2n-1) td{background-color:#f3f6f6}.rst-content table.docutils,.wy-table-bordered-all{border:1px solid #e1e4e5}.rst-content table.docutils td,.wy-table-bordered-all td{border-bottom:1px solid #e1e4e5;border-left:1px solid #e1e4e5}.rst-content table.docutils tbody>tr:last-child td,.wy-table-bordered-all tbody>tr:last-child td{border-bottom-width:0}.wy-table-bordered{border:1px solid #e1e4e5}.wy-table-bordered-rows td{border-bottom:1px solid #e1e4e5}.wy-table-bordered-rows tbody>tr:last-child td{border-bottom-width:0}.wy-table-horizontal td,.wy-table-horizontal th{border-width:0 0 1px;border-bottom:1px solid #e1e4e5}.wy-table-horizontal tbody>tr:last-child td{border-bottom-width:0}.wy-table-responsive{margin-bottom:24px;max-width:100%;overflow:auto}.wy-table-responsive table{margin-bottom:0!important}.wy-table-responsive table td,.wy-table-responsive table th{white-space:nowrap}a{color:#2980b9;text-decoration:none;cursor:pointer}a:hover{color:#3091d1}a:visited{color:#9b59b6}html{height:100%}body,html{overflow-x:hidden}body{font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;font-weight:400;color:#404040;min-height:100%;background:#edf0f2}.wy-text-left{text-align:left}.wy-text-center{text-align:center}.wy-text-right{text-align:right}.wy-text-large{font-size:120%}.wy-text-normal{font-size:100%}.wy-text-small,small{font-size:80%}.wy-text-strike{text-decoration:line-through}.wy-text-warning{color:#e67e22!important}a.wy-text-warning:hover{color:#eb9950!important}.wy-text-info{color:#2980b9!important}a.wy-text-info:hover{color:#409ad5!important}.wy-text-success{color:#27ae60!important}a.wy-text-success:hover{color:#36d278!important}.wy-text-danger{color:#e74c3c!important}a.wy-text-danger:hover{color:#ed7669!important}.wy-text-neutral{color:#404040!important}a.wy-text-neutral:hover{color:#595959!important}.rst-content .toctree-wrapper>p.caption,h1,h2,h3,h4,h5,h6,legend{margin-top:0;font-weight:700;font-family:Roboto Slab,ff-tisa-web-pro,Georgia,Arial,sans-serif}p{line-height:24px;font-size:16px;margin:0 0 24px}h1{font-size:175%}.rst-content .toctree-wrapper>p.caption,h2{font-size:150%}h3{font-size:125%}h4{font-size:115%}h5{font-size:110%}h6{font-size:100%}hr{display:block;height:1px;border:0;border-top:1px solid #e1e4e5;margin:24px 0;padding:0}.rst-content code,.rst-content tt,code{white-space:nowrap;max-width:100%;background:#fff;border:1px solid #e1e4e5;font-size:75%;padding:0 5px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;color:#e74c3c;overflow-x:auto}.rst-content tt.code-large,code.code-large{font-size:90%}.rst-content .section ul,.rst-content .toctree-wrapper ul,.rst-content section ul,.wy-plain-list-disc,article ul{list-style:disc;line-height:24px;margin-bottom:24px}.rst-content .section ul li,.rst-content .toctree-wrapper ul li,.rst-content section ul li,.wy-plain-list-disc li,article ul li{list-style:disc;margin-left:24px}.rst-content .section ul li p:last-child,.rst-content .section ul li ul,.rst-content .toctree-wrapper ul li p:last-child,.rst-content .toctree-wrapper ul li ul,.rst-content section ul li p:last-child,.rst-content section ul li ul,.wy-plain-list-disc li p:last-child,.wy-plain-list-disc li ul,article ul li p:last-child,article ul li ul{margin-bottom:0}.rst-content .section ul li li,.rst-content .toctree-wrapper ul li li,.rst-content section ul li li,.wy-plain-list-disc li li,article ul li li{list-style:circle}.rst-content .section ul li li li,.rst-content .toctree-wrapper ul li li li,.rst-content section ul li li li,.wy-plain-list-disc li li li,article ul li li li{list-style:square}.rst-content .section ul li ol li,.rst-content .toctree-wrapper ul li ol li,.rst-content section ul li ol li,.wy-plain-list-disc li ol li,article ul li ol li{list-style:decimal}.rst-content .section ol,.rst-content .section ol.arabic,.rst-content .toctree-wrapper ol,.rst-content .toctree-wrapper ol.arabic,.rst-content section ol,.rst-content section ol.arabic,.wy-plain-list-decimal,article ol{list-style:decimal;line-height:24px;margin-bottom:24px}.rst-content .section ol.arabic li,.rst-content .section ol li,.rst-content .toctree-wrapper ol.arabic li,.rst-content .toctree-wrapper ol li,.rst-content section ol.arabic li,.rst-content section ol li,.wy-plain-list-decimal li,article ol li{list-style:decimal;margin-left:24px}.rst-content .section ol.arabic li ul,.rst-content .section ol li p:last-child,.rst-content .section ol li ul,.rst-content .toctree-wrapper ol.arabic li ul,.rst-content .toctree-wrapper ol li p:last-child,.rst-content .toctree-wrapper ol li ul,.rst-content section ol.arabic li ul,.rst-content section ol li p:last-child,.rst-content section ol li ul,.wy-plain-list-decimal li p:last-child,.wy-plain-list-decimal li ul,article ol li p:last-child,article ol li ul{margin-bottom:0}.rst-content .section ol.arabic li ul li,.rst-content .section ol li ul li,.rst-content .toctree-wrapper ol.arabic li ul li,.rst-content .toctree-wrapper ol li ul li,.rst-content section ol.arabic li ul li,.rst-content section ol li ul li,.wy-plain-list-decimal li ul li,article ol li ul li{list-style:disc}.wy-breadcrumbs{*zoom:1}.wy-breadcrumbs:after,.wy-breadcrumbs:before{display:table;content:""}.wy-breadcrumbs:after{clear:both}.wy-breadcrumbs>li{display:inline-block;padding-top:5px}.wy-breadcrumbs>li.wy-breadcrumbs-aside{float:right}.rst-content .wy-breadcrumbs>li code,.rst-content .wy-breadcrumbs>li tt,.wy-breadcrumbs>li .rst-content tt,.wy-breadcrumbs>li code{all:inherit;color:inherit}.breadcrumb-item:before{content:"/";color:#bbb;font-size:13px;padding:0 6px 0 3px}.wy-breadcrumbs-extra{margin-bottom:0;color:#b3b3b3;font-size:80%;display:inline-block}@media screen and (max-width:480px){.wy-breadcrumbs-extra,.wy-breadcrumbs li.wy-breadcrumbs-aside{display:none}}@media print{.wy-breadcrumbs li.wy-breadcrumbs-aside{display:none}}html{font-size:16px}.wy-affix{position:fixed;top:1.618em}.wy-menu a:hover{text-decoration:none}.wy-menu-horiz{*zoom:1}.wy-menu-horiz:after,.wy-menu-horiz:before{display:table;content:""}.wy-menu-horiz:after{clear:both}.wy-menu-horiz li,.wy-menu-horiz ul{display:inline-block}.wy-menu-horiz li:hover{background:hsla(0,0%,100%,.1)}.wy-menu-horiz li.divide-left{border-left:1px solid #404040}.wy-menu-horiz li.divide-right{border-right:1px solid #404040}.wy-menu-horiz a{height:32px;display:inline-block;line-height:32px;padding:0 16px}.wy-menu-vertical{width:300px}.wy-menu-vertical header,.wy-menu-vertical p.caption{color:#55a5d9;height:32px;line-height:32px;padding:0 1.618em;margin:12px 0 0;display:block;font-weight:700;text-transform:uppercase;font-size:85%;white-space:nowrap}.wy-menu-vertical ul{margin-bottom:0}.wy-menu-vertical li.divide-top{border-top:1px solid #404040}.wy-menu-vertical li.divide-bottom{border-bottom:1px solid #404040}.wy-menu-vertical li.current{background:#e3e3e3}.wy-menu-vertical li.current a{color:grey;border-right:1px solid #c9c9c9;padding:.4045em 2.427em}.wy-menu-vertical li.current a:hover{background:#d6d6d6}.rst-content .wy-menu-vertical li tt,.wy-menu-vertical li .rst-content tt,.wy-menu-vertical li code{border:none;background:inherit;color:inherit;padding-left:0;padding-right:0}.wy-menu-vertical li button.toctree-expand{display:block;float:left;margin-left:-1.2em;line-height:18px;color:#4d4d4d;border:none;background:none;padding:0}.wy-menu-vertical li.current>a,.wy-menu-vertical li.on a{color:#404040;font-weight:700;position:relative;background:#fcfcfc;border:none;padding:.4045em 1.618em}.wy-menu-vertical li.current>a:hover,.wy-menu-vertical li.on a:hover{background:#fcfcfc}.wy-menu-vertical li.current>a:hover button.toctree-expand,.wy-menu-vertical li.on a:hover button.toctree-expand{color:grey}.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand{display:block;line-height:18px;color:#333}.wy-menu-vertical li.toctree-l1.current>a{border-bottom:1px solid #c9c9c9;border-top:1px solid #c9c9c9}.wy-menu-vertical .toctree-l1.current .toctree-l2>ul,.wy-menu-vertical .toctree-l2.current .toctree-l3>ul,.wy-menu-vertical .toctree-l3.current .toctree-l4>ul,.wy-menu-vertical .toctree-l4.current .toctree-l5>ul,.wy-menu-vertical .toctree-l5.current .toctree-l6>ul,.wy-menu-vertical .toctree-l6.current .toctree-l7>ul,.wy-menu-vertical .toctree-l7.current .toctree-l8>ul,.wy-menu-vertical .toctree-l8.current .toctree-l9>ul,.wy-menu-vertical .toctree-l9.current .toctree-l10>ul,.wy-menu-vertical .toctree-l10.current .toctree-l11>ul{display:none}.wy-menu-vertical .toctree-l1.current .current.toctree-l2>ul,.wy-menu-vertical .toctree-l2.current .current.toctree-l3>ul,.wy-menu-vertical .toctree-l3.current .current.toctree-l4>ul,.wy-menu-vertical .toctree-l4.current .current.toctree-l5>ul,.wy-menu-vertical .toctree-l5.current .current.toctree-l6>ul,.wy-menu-vertical .toctree-l6.current .current.toctree-l7>ul,.wy-menu-vertical .toctree-l7.current .current.toctree-l8>ul,.wy-menu-vertical .toctree-l8.current .current.toctree-l9>ul,.wy-menu-vertical .toctree-l9.current .current.toctree-l10>ul,.wy-menu-vertical .toctree-l10.current .current.toctree-l11>ul{display:block}.wy-menu-vertical li.toctree-l3,.wy-menu-vertical li.toctree-l4{font-size:.9em}.wy-menu-vertical li.toctree-l2 a,.wy-menu-vertical li.toctree-l3 a,.wy-menu-vertical li.toctree-l4 a,.wy-menu-vertical li.toctree-l5 a,.wy-menu-vertical li.toctree-l6 a,.wy-menu-vertical li.toctree-l7 a,.wy-menu-vertical li.toctree-l8 a,.wy-menu-vertical li.toctree-l9 a,.wy-menu-vertical li.toctree-l10 a{color:#404040}.wy-menu-vertical li.toctree-l2 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l3 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l4 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l5 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l6 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l7 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l8 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l9 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l10 a:hover button.toctree-expand{color:grey}.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a,.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a,.wy-menu-vertical li.toctree-l4.current li.toctree-l5>a,.wy-menu-vertical li.toctree-l5.current li.toctree-l6>a,.wy-menu-vertical li.toctree-l6.current li.toctree-l7>a,.wy-menu-vertical li.toctree-l7.current li.toctree-l8>a,.wy-menu-vertical li.toctree-l8.current li.toctree-l9>a,.wy-menu-vertical li.toctree-l9.current li.toctree-l10>a,.wy-menu-vertical li.toctree-l10.current li.toctree-l11>a{display:block}.wy-menu-vertical li.toctree-l2.current>a{padding:.4045em 2.427em}.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a{padding:.4045em 1.618em .4045em 4.045em}.wy-menu-vertical li.toctree-l3.current>a{padding:.4045em 4.045em}.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a{padding:.4045em 1.618em .4045em 5.663em}.wy-menu-vertical li.toctree-l4.current>a{padding:.4045em 5.663em}.wy-menu-vertical li.toctree-l4.current li.toctree-l5>a{padding:.4045em 1.618em .4045em 7.281em}.wy-menu-vertical li.toctree-l5.current>a{padding:.4045em 7.281em}.wy-menu-vertical li.toctree-l5.current li.toctree-l6>a{padding:.4045em 1.618em .4045em 8.899em}.wy-menu-vertical li.toctree-l6.current>a{padding:.4045em 8.899em}.wy-menu-vertical li.toctree-l6.current li.toctree-l7>a{padding:.4045em 1.618em .4045em 10.517em}.wy-menu-vertical li.toctree-l7.current>a{padding:.4045em 10.517em}.wy-menu-vertical li.toctree-l7.current li.toctree-l8>a{padding:.4045em 1.618em .4045em 12.135em}.wy-menu-vertical li.toctree-l8.current>a{padding:.4045em 12.135em}.wy-menu-vertical li.toctree-l8.current li.toctree-l9>a{padding:.4045em 1.618em .4045em 13.753em}.wy-menu-vertical li.toctree-l9.current>a{padding:.4045em 13.753em}.wy-menu-vertical li.toctree-l9.current li.toctree-l10>a{padding:.4045em 1.618em .4045em 15.371em}.wy-menu-vertical li.toctree-l10.current>a{padding:.4045em 15.371em}.wy-menu-vertical li.toctree-l10.current li.toctree-l11>a{padding:.4045em 1.618em .4045em 16.989em}.wy-menu-vertical li.toctree-l2.current>a,.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a{background:#c9c9c9}.wy-menu-vertical li.toctree-l2 button.toctree-expand{color:#a3a3a3}.wy-menu-vertical li.toctree-l3.current>a,.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a{background:#bdbdbd}.wy-menu-vertical li.toctree-l3 button.toctree-expand{color:#969696}.wy-menu-vertical li.current ul{display:block}.wy-menu-vertical li ul{margin-bottom:0;display:none}.wy-menu-vertical li ul li a{margin-bottom:0;color:#d9d9d9;font-weight:400}.wy-menu-vertical a{line-height:18px;padding:.4045em 1.618em;display:block;position:relative;font-size:90%;color:#d9d9d9}.wy-menu-vertical a:hover{background-color:#4e4a4a;cursor:pointer}.wy-menu-vertical a:hover button.toctree-expand{color:#d9d9d9}.wy-menu-vertical a:active{background-color:#2980b9;cursor:pointer;color:#fff}.wy-menu-vertical a:active button.toctree-expand{color:#fff}.wy-side-nav-search{display:block;width:300px;padding:.809em;margin-bottom:.809em;z-index:200;background-color:#2980b9;text-align:center;color:#fcfcfc}.wy-side-nav-search input[type=text]{width:100%;border-radius:50px;padding:6px 12px;border-color:#2472a4}.wy-side-nav-search img{display:block;margin:auto auto .809em;height:45px;width:45px;background-color:#2980b9;padding:5px;border-radius:100%}.wy-side-nav-search .wy-dropdown>a,.wy-side-nav-search>a{color:#fcfcfc;font-size:100%;font-weight:700;display:inline-block;padding:4px 6px;margin-bottom:.809em;max-width:100%}.wy-side-nav-search .wy-dropdown>a:hover,.wy-side-nav-search>a:hover{background:hsla(0,0%,100%,.1)}.wy-side-nav-search .wy-dropdown>a img.logo,.wy-side-nav-search>a img.logo{display:block;margin:0 auto;height:auto;width:auto;border-radius:0;max-width:100%;background:transparent}.wy-side-nav-search .wy-dropdown>a.icon img.logo,.wy-side-nav-search>a.icon img.logo{margin-top:.85em}.wy-side-nav-search>div.version{margin-top:-.4045em;margin-bottom:.809em;font-weight:400;color:hsla(0,0%,100%,.3)}.wy-nav .wy-menu-vertical header{color:#2980b9}.wy-nav .wy-menu-vertical a{color:#b3b3b3}.wy-nav .wy-menu-vertical a:hover{background-color:#2980b9;color:#fff}[data-menu-wrap]{-webkit-transition:all .2s ease-in;-moz-transition:all .2s ease-in;transition:all .2s ease-in;position:absolute;opacity:1;width:100%;opacity:0}[data-menu-wrap].move-center{left:0;right:auto;opacity:1}[data-menu-wrap].move-left{right:auto;left:-100%;opacity:0}[data-menu-wrap].move-right{right:-100%;left:auto;opacity:0}.wy-body-for-nav{background:#fcfcfc}.wy-grid-for-nav{position:absolute;width:100%;height:100%}.wy-nav-side{position:fixed;top:0;bottom:0;left:0;padding-bottom:2em;width:300px;overflow-x:hidden;overflow-y:hidden;min-height:100%;color:#9b9b9b;background:#343131;z-index:200}.wy-side-scroll{width:320px;position:relative;overflow-x:hidden;overflow-y:scroll;height:100%}.wy-nav-top{display:none;background:#2980b9;color:#fff;padding:.4045em .809em;position:relative;line-height:50px;text-align:center;font-size:100%;*zoom:1}.wy-nav-top:after,.wy-nav-top:before{display:table;content:""}.wy-nav-top:after{clear:both}.wy-nav-top a{color:#fff;font-weight:700}.wy-nav-top img{margin-right:12px;height:45px;width:45px;background-color:#2980b9;padding:5px;border-radius:100%}.wy-nav-top i{font-size:30px;float:left;cursor:pointer;padding-top:inherit}.wy-nav-content-wrap{margin-left:300px;background:#fcfcfc;min-height:100%}.wy-nav-content{padding:1.618em 3.236em;height:100%;max-width:800px;margin:auto}.wy-body-mask{position:fixed;width:100%;height:100%;background:rgba(0,0,0,.2);display:none;z-index:499}.wy-body-mask.on{display:block}footer{color:grey}footer p{margin-bottom:12px}.rst-content footer span.commit tt,footer span.commit .rst-content tt,footer span.commit code{padding:0;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;font-size:1em;background:none;border:none;color:grey}.rst-footer-buttons{*zoom:1}.rst-footer-buttons:after,.rst-footer-buttons:before{width:100%;display:table;content:""}.rst-footer-buttons:after{clear:both}.rst-breadcrumbs-buttons{margin-top:12px;*zoom:1}.rst-breadcrumbs-buttons:after,.rst-breadcrumbs-buttons:before{display:table;content:""}.rst-breadcrumbs-buttons:after{clear:both}#search-results .search li{margin-bottom:24px;border-bottom:1px solid #e1e4e5;padding-bottom:24px}#search-results .search li:first-child{border-top:1px solid #e1e4e5;padding-top:24px}#search-results .search li a{font-size:120%;margin-bottom:12px;display:inline-block}#search-results .context{color:grey;font-size:90%}.genindextable li>ul{margin-left:24px}@media screen and (max-width:768px){.wy-body-for-nav{background:#fcfcfc}.wy-nav-top{display:block}.wy-nav-side{left:-300px}.wy-nav-side.shift{width:85%;left:0}.wy-menu.wy-menu-vertical,.wy-side-nav-search,.wy-side-scroll{width:auto}.wy-nav-content-wrap{margin-left:0}.wy-nav-content-wrap .wy-nav-content{padding:1.618em}.wy-nav-content-wrap.shift{position:fixed;min-width:100%;left:85%;top:0;height:100%;overflow:hidden}}@media screen and (min-width:1100px){.wy-nav-content-wrap{background:rgba(0,0,0,.05)}.wy-nav-content{margin:0;background:#fcfcfc}}@media print{.rst-versions,.wy-nav-side,footer{display:none}.wy-nav-content-wrap{margin-left:0}}.rst-versions{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;z-index:400}.rst-versions a{color:#2980b9;text-decoration:none}.rst-versions .rst-badge-small{display:none}.rst-versions .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:90%;cursor:pointer;color:#27ae60;*zoom:1}.rst-versions .rst-current-version:after,.rst-versions .rst-current-version:before{display:table;content:""}.rst-versions .rst-current-version:after{clear:both}.rst-content .code-block-caption .rst-versions .rst-current-version .headerlink,.rst-content .eqno .rst-versions .rst-current-version .headerlink,.rst-content .rst-versions .rst-current-version .admonition-title,.rst-content code.download .rst-versions .rst-current-version span:first-child,.rst-content dl dt .rst-versions .rst-current-version .headerlink,.rst-content h1 .rst-versions .rst-current-version .headerlink,.rst-content h2 .rst-versions .rst-current-version .headerlink,.rst-content h3 .rst-versions .rst-current-version .headerlink,.rst-content h4 .rst-versions .rst-current-version .headerlink,.rst-content h5 .rst-versions .rst-current-version .headerlink,.rst-content h6 .rst-versions .rst-current-version .headerlink,.rst-content p .rst-versions .rst-current-version .headerlink,.rst-content table>caption .rst-versions .rst-current-version .headerlink,.rst-content tt.download .rst-versions .rst-current-version span:first-child,.rst-versions .rst-current-version .fa,.rst-versions .rst-current-version .icon,.rst-versions .rst-current-version .rst-content .admonition-title,.rst-versions .rst-current-version .rst-content .code-block-caption .headerlink,.rst-versions .rst-current-version .rst-content .eqno .headerlink,.rst-versions .rst-current-version .rst-content code.download span:first-child,.rst-versions .rst-current-version .rst-content dl dt .headerlink,.rst-versions .rst-current-version .rst-content h1 .headerlink,.rst-versions .rst-current-version .rst-content h2 .headerlink,.rst-versions .rst-current-version .rst-content h3 .headerlink,.rst-versions .rst-current-version .rst-content h4 .headerlink,.rst-versions .rst-current-version .rst-content h5 .headerlink,.rst-versions .rst-current-version .rst-content h6 .headerlink,.rst-versions .rst-current-version .rst-content p .headerlink,.rst-versions .rst-current-version .rst-content table>caption .headerlink,.rst-versions .rst-current-version .rst-content tt.download span:first-child,.rst-versions .rst-current-version .wy-menu-vertical li button.toctree-expand,.wy-menu-vertical li .rst-versions .rst-current-version button.toctree-expand{color:#fcfcfc}.rst-versions .rst-current-version .fa-book,.rst-versions .rst-current-version .icon-book{float:left}.rst-versions .rst-current-version.rst-out-of-date{background-color:#e74c3c;color:#fff}.rst-versions .rst-current-version.rst-active-old-version{background-color:#f1c40f;color:#000}.rst-versions.shift-up{height:auto;max-height:100%;overflow-y:scroll}.rst-versions.shift-up .rst-other-versions{display:block}.rst-versions .rst-other-versions{font-size:90%;padding:12px;color:grey;display:none}.rst-versions .rst-other-versions hr{display:block;height:1px;border:0;margin:20px 0;padding:0;border-top:1px solid #413d3d}.rst-versions .rst-other-versions dd{display:inline-block;margin:0}.rst-versions .rst-other-versions dd a{display:inline-block;padding:6px;color:#fcfcfc}.rst-versions.rst-badge{width:auto;bottom:20px;right:20px;left:auto;border:none;max-width:300px;max-height:90%}.rst-versions.rst-badge .fa-book,.rst-versions.rst-badge .icon-book{float:none;line-height:30px}.rst-versions.rst-badge.shift-up .rst-current-version{text-align:right}.rst-versions.rst-badge.shift-up .rst-current-version .fa-book,.rst-versions.rst-badge.shift-up .rst-current-version .icon-book{float:left}.rst-versions.rst-badge>.rst-current-version{width:auto;height:30px;line-height:30px;padding:0 6px;display:block;text-align:center}@media screen and (max-width:768px){.rst-versions{width:85%;display:none}.rst-versions.shift{display:block}}.rst-content .toctree-wrapper>p.caption,.rst-content h1,.rst-content h2,.rst-content h3,.rst-content h4,.rst-content h5,.rst-content h6{margin-bottom:24px}.rst-content img{max-width:100%;height:auto}.rst-content div.figure,.rst-content figure{margin-bottom:24px}.rst-content div.figure .caption-text,.rst-content figure .caption-text{font-style:italic}.rst-content div.figure p:last-child.caption,.rst-content figure p:last-child.caption{margin-bottom:0}.rst-content div.figure.align-center,.rst-content figure.align-center{text-align:center}.rst-content .section>a>img,.rst-content .section>img,.rst-content section>a>img,.rst-content section>img{margin-bottom:24px}.rst-content abbr[title]{text-decoration:none}.rst-content.style-external-links a.reference.external:after{font-family:FontAwesome;content:"\f08e";color:#b3b3b3;vertical-align:super;font-size:60%;margin:0 .2em}.rst-content blockquote{margin-left:24px;line-height:24px;margin-bottom:24px}.rst-content pre.literal-block{white-space:pre;margin:0;padding:12px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;display:block;overflow:auto}.rst-content div[class^=highlight],.rst-content pre.literal-block{border:1px solid #e1e4e5;overflow-x:auto;margin:1px 0 24px}.rst-content div[class^=highlight] div[class^=highlight],.rst-content pre.literal-block div[class^=highlight]{padding:0;border:none;margin:0}.rst-content div[class^=highlight] td.code{width:100%}.rst-content .linenodiv pre{border-right:1px solid #e6e9ea;margin:0;padding:12px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;user-select:none;pointer-events:none}.rst-content div[class^=highlight] pre{white-space:pre;margin:0;padding:12px;display:block;overflow:auto}.rst-content div[class^=highlight] pre .hll{display:block;margin:0 -12px;padding:0 12px}.rst-content .linenodiv pre,.rst-content div[class^=highlight] pre,.rst-content pre.literal-block{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;font-size:12px;line-height:1.4}.rst-content div.highlight .gp,.rst-content div.highlight span.linenos{user-select:none;pointer-events:none}.rst-content div.highlight span.linenos{display:inline-block;padding-left:0;padding-right:12px;margin-right:12px;border-right:1px solid #e6e9ea}.rst-content .code-block-caption{font-style:italic;font-size:85%;line-height:1;padding:1em 0;text-align:center}@media print{.rst-content .codeblock,.rst-content div[class^=highlight],.rst-content div[class^=highlight] pre{white-space:pre-wrap}}.rst-content .admonition,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .danger,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning{clear:both}.rst-content .admonition-todo .last,.rst-content .admonition-todo>:last-child,.rst-content .admonition .last,.rst-content .admonition>:last-child,.rst-content .attention .last,.rst-content .attention>:last-child,.rst-content .caution .last,.rst-content .caution>:last-child,.rst-content .danger .last,.rst-content .danger>:last-child,.rst-content .error .last,.rst-content .error>:last-child,.rst-content .hint .last,.rst-content .hint>:last-child,.rst-content .important .last,.rst-content .important>:last-child,.rst-content .note .last,.rst-content .note>:last-child,.rst-content .seealso .last,.rst-content .seealso>:last-child,.rst-content .tip .last,.rst-content .tip>:last-child,.rst-content .warning .last,.rst-content .warning>:last-child{margin-bottom:0}.rst-content .admonition-title:before{margin-right:4px}.rst-content .admonition table{border-color:rgba(0,0,0,.1)}.rst-content .admonition table td,.rst-content .admonition table th{background:transparent!important;border-color:rgba(0,0,0,.1)!important}.rst-content .section ol.loweralpha,.rst-content .section ol.loweralpha>li,.rst-content .toctree-wrapper ol.loweralpha,.rst-content .toctree-wrapper ol.loweralpha>li,.rst-content section ol.loweralpha,.rst-content section ol.loweralpha>li{list-style:lower-alpha}.rst-content .section ol.upperalpha,.rst-content .section ol.upperalpha>li,.rst-content .toctree-wrapper ol.upperalpha,.rst-content .toctree-wrapper ol.upperalpha>li,.rst-content section ol.upperalpha,.rst-content section ol.upperalpha>li{list-style:upper-alpha}.rst-content .section ol li>*,.rst-content .section ul li>*,.rst-content .toctree-wrapper ol li>*,.rst-content .toctree-wrapper ul li>*,.rst-content section ol li>*,.rst-content section ul li>*{margin-top:12px;margin-bottom:12px}.rst-content .section ol li>:first-child,.rst-content .section ul li>:first-child,.rst-content .toctree-wrapper ol li>:first-child,.rst-content .toctree-wrapper ul li>:first-child,.rst-content section ol li>:first-child,.rst-content section ul li>:first-child{margin-top:0}.rst-content .section ol li>p,.rst-content .section ol li>p:last-child,.rst-content .section ul li>p,.rst-content .section ul li>p:last-child,.rst-content .toctree-wrapper ol li>p,.rst-content .toctree-wrapper ol li>p:last-child,.rst-content .toctree-wrapper ul li>p,.rst-content .toctree-wrapper ul li>p:last-child,.rst-content section ol li>p,.rst-content section ol li>p:last-child,.rst-content section ul li>p,.rst-content section ul li>p:last-child{margin-bottom:12px}.rst-content .section ol li>p:only-child,.rst-content .section ol li>p:only-child:last-child,.rst-content .section ul li>p:only-child,.rst-content .section ul li>p:only-child:last-child,.rst-content .toctree-wrapper ol li>p:only-child,.rst-content .toctree-wrapper ol li>p:only-child:last-child,.rst-content .toctree-wrapper ul li>p:only-child,.rst-content .toctree-wrapper ul li>p:only-child:last-child,.rst-content section ol li>p:only-child,.rst-content section ol li>p:only-child:last-child,.rst-content section ul li>p:only-child,.rst-content section ul li>p:only-child:last-child{margin-bottom:0}.rst-content .section ol li>ol,.rst-content .section ol li>ul,.rst-content .section ul li>ol,.rst-content .section ul li>ul,.rst-content .toctree-wrapper ol li>ol,.rst-content .toctree-wrapper ol li>ul,.rst-content .toctree-wrapper ul li>ol,.rst-content .toctree-wrapper ul li>ul,.rst-content section ol li>ol,.rst-content section ol li>ul,.rst-content section ul li>ol,.rst-content section ul li>ul{margin-bottom:12px}.rst-content .section ol.simple li>*,.rst-content .section ol.simple li ol,.rst-content .section ol.simple li ul,.rst-content .section ul.simple li>*,.rst-content .section ul.simple li ol,.rst-content .section ul.simple li ul,.rst-content .toctree-wrapper ol.simple li>*,.rst-content .toctree-wrapper ol.simple li ol,.rst-content .toctree-wrapper ol.simple li ul,.rst-content .toctree-wrapper ul.simple li>*,.rst-content .toctree-wrapper ul.simple li ol,.rst-content .toctree-wrapper ul.simple li ul,.rst-content section ol.simple li>*,.rst-content section ol.simple li ol,.rst-content section ol.simple li ul,.rst-content section ul.simple li>*,.rst-content section ul.simple li ol,.rst-content section ul.simple li ul{margin-top:0;margin-bottom:0}.rst-content .line-block{margin-left:0;margin-bottom:24px;line-height:24px}.rst-content .line-block .line-block{margin-left:24px;margin-bottom:0}.rst-content .topic-title{font-weight:700;margin-bottom:12px}.rst-content .toc-backref{color:#404040}.rst-content .align-right{float:right;margin:0 0 24px 24px}.rst-content .align-left{float:left;margin:0 24px 24px 0}.rst-content .align-center{margin:auto}.rst-content .align-center:not(table){display:block}.rst-content .code-block-caption .headerlink,.rst-content .eqno .headerlink,.rst-content .toctree-wrapper>p.caption .headerlink,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content p .headerlink,.rst-content table>caption .headerlink{opacity:0;font-size:14px;font-family:FontAwesome;margin-left:.5em}.rst-content .code-block-caption .headerlink:focus,.rst-content .code-block-caption:hover .headerlink,.rst-content .eqno .headerlink:focus,.rst-content .eqno:hover .headerlink,.rst-content .toctree-wrapper>p.caption .headerlink:focus,.rst-content .toctree-wrapper>p.caption:hover .headerlink,.rst-content dl dt .headerlink:focus,.rst-content dl dt:hover .headerlink,.rst-content h1 .headerlink:focus,.rst-content h1:hover .headerlink,.rst-content h2 .headerlink:focus,.rst-content h2:hover .headerlink,.rst-content h3 .headerlink:focus,.rst-content h3:hover .headerlink,.rst-content h4 .headerlink:focus,.rst-content h4:hover .headerlink,.rst-content h5 .headerlink:focus,.rst-content h5:hover .headerlink,.rst-content h6 .headerlink:focus,.rst-content h6:hover .headerlink,.rst-content p.caption .headerlink:focus,.rst-content p.caption:hover .headerlink,.rst-content p .headerlink:focus,.rst-content p:hover .headerlink,.rst-content table>caption .headerlink:focus,.rst-content table>caption:hover .headerlink{opacity:1}.rst-content p a{overflow-wrap:anywhere}.rst-content .wy-table td p,.rst-content .wy-table td ul,.rst-content .wy-table th p,.rst-content .wy-table th ul,.rst-content table.docutils td p,.rst-content table.docutils td ul,.rst-content table.docutils th p,.rst-content table.docutils th ul,.rst-content table.field-list td p,.rst-content table.field-list td ul,.rst-content table.field-list th p,.rst-content table.field-list th ul{font-size:inherit}.rst-content .btn:focus{outline:2px solid}.rst-content table>caption .headerlink:after{font-size:12px}.rst-content .centered{text-align:center}.rst-content .sidebar{float:right;width:40%;display:block;margin:0 0 24px 24px;padding:24px;background:#f3f6f6;border:1px solid #e1e4e5}.rst-content .sidebar dl,.rst-content .sidebar p,.rst-content .sidebar ul{font-size:90%}.rst-content .sidebar .last,.rst-content .sidebar>:last-child{margin-bottom:0}.rst-content .sidebar .sidebar-title{display:block;font-family:Roboto Slab,ff-tisa-web-pro,Georgia,Arial,sans-serif;font-weight:700;background:#e1e4e5;padding:6px 12px;margin:-24px -24px 24px;font-size:100%}.rst-content .highlighted{background:#f1c40f;box-shadow:0 0 0 2px #f1c40f;display:inline;font-weight:700}.rst-content .citation-reference,.rst-content .footnote-reference{vertical-align:baseline;position:relative;top:-.4em;line-height:0;font-size:90%}.rst-content .citation-reference>span.fn-bracket,.rst-content .footnote-reference>span.fn-bracket{display:none}.rst-content .hlist{width:100%}.rst-content dl dt span.classifier:before{content:" : "}.rst-content dl dt span.classifier-delimiter{display:none!important}html.writer-html4 .rst-content table.docutils.citation,html.writer-html4 .rst-content table.docutils.footnote{background:none;border:none}html.writer-html4 .rst-content table.docutils.citation td,html.writer-html4 .rst-content table.docutils.citation tr,html.writer-html4 .rst-content table.docutils.footnote td,html.writer-html4 .rst-content table.docutils.footnote tr{border:none;background-color:transparent!important;white-space:normal}html.writer-html4 .rst-content table.docutils.citation td.label,html.writer-html4 .rst-content table.docutils.footnote td.label{padding-left:0;padding-right:0;vertical-align:top}html.writer-html5 .rst-content dl.citation,html.writer-html5 .rst-content dl.field-list,html.writer-html5 .rst-content dl.footnote{display:grid;grid-template-columns:auto minmax(80%,95%)}html.writer-html5 .rst-content dl.citation>dt,html.writer-html5 .rst-content dl.field-list>dt,html.writer-html5 .rst-content dl.footnote>dt{display:inline-grid;grid-template-columns:max-content auto}html.writer-html5 .rst-content aside.citation,html.writer-html5 .rst-content aside.footnote,html.writer-html5 .rst-content div.citation{display:grid;grid-template-columns:auto auto minmax(.65rem,auto) minmax(40%,95%)}html.writer-html5 .rst-content aside.citation>span.label,html.writer-html5 .rst-content aside.footnote>span.label,html.writer-html5 .rst-content div.citation>span.label{grid-column-start:1;grid-column-end:2}html.writer-html5 .rst-content aside.citation>span.backrefs,html.writer-html5 .rst-content aside.footnote>span.backrefs,html.writer-html5 .rst-content div.citation>span.backrefs{grid-column-start:2;grid-column-end:3;grid-row-start:1;grid-row-end:3}html.writer-html5 .rst-content aside.citation>p,html.writer-html5 .rst-content aside.footnote>p,html.writer-html5 .rst-content div.citation>p{grid-column-start:4;grid-column-end:5}html.writer-html5 .rst-content dl.citation,html.writer-html5 .rst-content dl.field-list,html.writer-html5 .rst-content dl.footnote{margin-bottom:24px}html.writer-html5 .rst-content dl.citation>dt,html.writer-html5 .rst-content dl.field-list>dt,html.writer-html5 .rst-content dl.footnote>dt{padding-left:1rem}html.writer-html5 .rst-content dl.citation>dd,html.writer-html5 .rst-content dl.citation>dt,html.writer-html5 .rst-content dl.field-list>dd,html.writer-html5 .rst-content dl.field-list>dt,html.writer-html5 .rst-content dl.footnote>dd,html.writer-html5 .rst-content dl.footnote>dt{margin-bottom:0}html.writer-html5 .rst-content dl.citation,html.writer-html5 .rst-content dl.footnote{font-size:.9rem}html.writer-html5 .rst-content dl.citation>dt,html.writer-html5 .rst-content dl.footnote>dt{margin:0 .5rem .5rem 0;line-height:1.2rem;word-break:break-all;font-weight:400}html.writer-html5 .rst-content dl.citation>dt>span.brackets:before,html.writer-html5 .rst-content dl.footnote>dt>span.brackets:before{content:"["}html.writer-html5 .rst-content dl.citation>dt>span.brackets:after,html.writer-html5 .rst-content dl.footnote>dt>span.brackets:after{content:"]"}html.writer-html5 .rst-content dl.citation>dt>span.fn-backref,html.writer-html5 .rst-content dl.footnote>dt>span.fn-backref{text-align:left;font-style:italic;margin-left:.65rem;word-break:break-word;word-spacing:-.1rem;max-width:5rem}html.writer-html5 .rst-content dl.citation>dt>span.fn-backref>a,html.writer-html5 .rst-content dl.footnote>dt>span.fn-backref>a{word-break:keep-all}html.writer-html5 .rst-content dl.citation>dt>span.fn-backref>a:not(:first-child):before,html.writer-html5 .rst-content dl.footnote>dt>span.fn-backref>a:not(:first-child):before{content:" "}html.writer-html5 .rst-content dl.citation>dd,html.writer-html5 .rst-content dl.footnote>dd{margin:0 0 .5rem;line-height:1.2rem}html.writer-html5 .rst-content dl.citation>dd p,html.writer-html5 .rst-content dl.footnote>dd p{font-size:.9rem}html.writer-html5 .rst-content aside.citation,html.writer-html5 .rst-content aside.footnote,html.writer-html5 .rst-content div.citation{padding-left:1rem;padding-right:1rem;font-size:.9rem;line-height:1.2rem}html.writer-html5 .rst-content aside.citation p,html.writer-html5 .rst-content aside.footnote p,html.writer-html5 .rst-content div.citation p{font-size:.9rem;line-height:1.2rem;margin-bottom:12px}html.writer-html5 .rst-content aside.citation span.backrefs,html.writer-html5 .rst-content aside.footnote span.backrefs,html.writer-html5 .rst-content div.citation span.backrefs{text-align:left;font-style:italic;margin-left:.65rem;word-break:break-word;word-spacing:-.1rem;max-width:5rem}html.writer-html5 .rst-content aside.citation span.backrefs>a,html.writer-html5 .rst-content aside.footnote span.backrefs>a,html.writer-html5 .rst-content div.citation span.backrefs>a{word-break:keep-all}html.writer-html5 .rst-content aside.citation span.backrefs>a:not(:first-child):before,html.writer-html5 .rst-content aside.footnote span.backrefs>a:not(:first-child):before,html.writer-html5 .rst-content div.citation span.backrefs>a:not(:first-child):before{content:" "}html.writer-html5 .rst-content aside.citation span.label,html.writer-html5 .rst-content aside.footnote span.label,html.writer-html5 .rst-content div.citation span.label{line-height:1.2rem}html.writer-html5 .rst-content aside.citation-list,html.writer-html5 .rst-content aside.footnote-list,html.writer-html5 .rst-content div.citation-list{margin-bottom:24px}html.writer-html5 .rst-content dl.option-list kbd{font-size:.9rem}.rst-content table.docutils.footnote,html.writer-html4 .rst-content table.docutils.citation,html.writer-html5 .rst-content aside.footnote,html.writer-html5 .rst-content aside.footnote-list aside.footnote,html.writer-html5 .rst-content div.citation-list>div.citation,html.writer-html5 .rst-content dl.citation,html.writer-html5 .rst-content dl.footnote{color:grey}.rst-content table.docutils.footnote code,.rst-content table.docutils.footnote tt,html.writer-html4 .rst-content table.docutils.citation code,html.writer-html4 .rst-content table.docutils.citation tt,html.writer-html5 .rst-content aside.footnote-list aside.footnote code,html.writer-html5 .rst-content aside.footnote-list aside.footnote tt,html.writer-html5 .rst-content aside.footnote code,html.writer-html5 .rst-content aside.footnote tt,html.writer-html5 .rst-content div.citation-list>div.citation code,html.writer-html5 .rst-content div.citation-list>div.citation tt,html.writer-html5 .rst-content dl.citation code,html.writer-html5 .rst-content dl.citation tt,html.writer-html5 .rst-content dl.footnote code,html.writer-html5 .rst-content dl.footnote tt{color:#555}.rst-content .wy-table-responsive.citation,.rst-content .wy-table-responsive.footnote{margin-bottom:0}.rst-content .wy-table-responsive.citation+:not(.citation),.rst-content .wy-table-responsive.footnote+:not(.footnote){margin-top:24px}.rst-content .wy-table-responsive.citation:last-child,.rst-content .wy-table-responsive.footnote:last-child{margin-bottom:24px}.rst-content table.docutils th{border-color:#e1e4e5}html.writer-html5 .rst-content table.docutils th{border:1px solid #e1e4e5}html.writer-html5 .rst-content table.docutils td>p,html.writer-html5 .rst-content table.docutils th>p{line-height:1rem;margin-bottom:0;font-size:.9rem}.rst-content table.docutils td .last,.rst-content table.docutils td .last>:last-child{margin-bottom:0}.rst-content table.field-list,.rst-content table.field-list td{border:none}.rst-content table.field-list td p{line-height:inherit}.rst-content table.field-list td>strong{display:inline-block}.rst-content table.field-list .field-name{padding-right:10px;text-align:left;white-space:nowrap}.rst-content table.field-list .field-body{text-align:left}.rst-content code,.rst-content tt{color:#000;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;padding:2px 5px}.rst-content code big,.rst-content code em,.rst-content tt big,.rst-content tt em{font-size:100%!important;line-height:normal}.rst-content code.literal,.rst-content tt.literal{color:#e74c3c;white-space:normal}.rst-content code.xref,.rst-content tt.xref,a .rst-content code,a .rst-content tt{font-weight:700;color:#404040;overflow-wrap:normal}.rst-content kbd,.rst-content pre,.rst-content samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace}.rst-content a code,.rst-content a tt{color:#2980b9}.rst-content dl{margin-bottom:24px}.rst-content dl dt{font-weight:700;margin-bottom:12px}.rst-content dl ol,.rst-content dl p,.rst-content dl table,.rst-content dl ul{margin-bottom:12px}.rst-content dl dd{margin:0 0 12px 24px;line-height:24px}.rst-content dl dd>ol:last-child,.rst-content dl dd>p:last-child,.rst-content dl dd>table:last-child,.rst-content dl dd>ul:last-child{margin-bottom:0}html.writer-html4 .rst-content dl:not(.docutils),html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple){margin-bottom:24px}html.writer-html4 .rst-content dl:not(.docutils)>dt,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt{display:table;margin:6px 0;font-size:90%;line-height:normal;background:#e7f2fa;color:#2980b9;border-top:3px solid #6ab0de;padding:6px;position:relative}html.writer-html4 .rst-content dl:not(.docutils)>dt:before,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt:before{color:#6ab0de}html.writer-html4 .rst-content dl:not(.docutils)>dt .headerlink,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt .headerlink{color:#404040;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils) dl:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) dl:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt{margin-bottom:6px;border:none;border-left:3px solid #ccc;background:#f0f0f0;color:#555}html.writer-html4 .rst-content dl:not(.docutils) dl:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt .headerlink,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) dl:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt .headerlink{color:#404040;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils)>dt:first-child,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt:first-child{margin-top:0}html.writer-html4 .rst-content dl:not(.docutils) code.descclassname,html.writer-html4 .rst-content dl:not(.docutils) code.descname,html.writer-html4 .rst-content dl:not(.docutils) tt.descclassname,html.writer-html4 .rst-content dl:not(.docutils) tt.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) code.descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) code.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) tt.descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) tt.descname{background-color:transparent;border:none;padding:0;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils) code.descname,html.writer-html4 .rst-content dl:not(.docutils) tt.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) code.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) tt.descname{font-weight:700}html.writer-html4 .rst-content dl:not(.docutils) .optional,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .optional{display:inline-block;padding:0 4px;color:#000;font-weight:700}html.writer-html4 .rst-content dl:not(.docutils) .property,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .property{display:inline-block;padding-right:8px;max-width:100%}html.writer-html4 .rst-content dl:not(.docutils) .k,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .k{font-style:italic}html.writer-html4 .rst-content dl:not(.docutils) .descclassname,html.writer-html4 .rst-content dl:not(.docutils) .descname,html.writer-html4 .rst-content dl:not(.docutils) .sig-name,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .sig-name{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;color:#000}.rst-content .viewcode-back,.rst-content .viewcode-link{display:inline-block;color:#27ae60;font-size:80%;padding-left:24px}.rst-content .viewcode-back{display:block;float:right}.rst-content p.rubric{margin-bottom:12px;font-weight:700}.rst-content code.download,.rst-content tt.download{background:inherit;padding:inherit;font-weight:400;font-family:inherit;font-size:inherit;color:inherit;border:inherit;white-space:inherit}.rst-content code.download span:first-child,.rst-content tt.download span:first-child{-webkit-font-smoothing:subpixel-antialiased}.rst-content code.download span:first-child:before,.rst-content tt.download span:first-child:before{margin-right:4px}.rst-content .guilabel,.rst-content .menuselection{font-size:80%;font-weight:700;border-radius:4px;padding:2.4px 6px;margin:auto 2px}.rst-content .guilabel,.rst-content .menuselection{border:1px solid #7fbbe3;background:#e7f2fa}.rst-content :not(dl.option-list)>:not(dt):not(kbd):not(.kbd)>.kbd,.rst-content :not(dl.option-list)>:not(dt):not(kbd):not(.kbd)>kbd{color:inherit;font-size:80%;background-color:#fff;border:1px solid #a6a6a6;border-radius:4px;box-shadow:0 2px grey;padding:2.4px 6px;margin:auto 0}.rst-content .versionmodified{font-style:italic}@media screen and (max-width:480px){.rst-content .sidebar{width:100%}}span[id*=MathJax-Span]{color:#404040}.math{text-align:center}@font-face{font-family:Lato;src:url(fonts/lato-normal.woff2?bd03a2cc277bbbc338d464e679fe9942) format("woff2"),url(fonts/lato-normal.woff?27bd77b9162d388cb8d4c4217c7c5e2a) format("woff");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-bold.woff2?cccb897485813c7c256901dbca54ecf2) format("woff2"),url(fonts/lato-bold.woff?d878b6c29b10beca227e9eef4246111b) format("woff");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-bold-italic.woff2?0b6bb6725576b072c5d0b02ecdd1900d) format("woff2"),url(fonts/lato-bold-italic.woff?9c7e4e9eb485b4a121c760e61bc3707c) format("woff");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-normal-italic.woff2?4eb103b4d12be57cb1d040ed5e162e9d) format("woff2"),url(fonts/lato-normal-italic.woff?f28f2d6482446544ef1ea1ccc6dd5892) format("woff");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Roboto Slab;font-style:normal;font-weight:400;src:url(fonts/Roboto-Slab-Regular.woff2?7abf5b8d04d26a2cafea937019bca958) format("woff2"),url(fonts/Roboto-Slab-Regular.woff?c1be9284088d487c5e3ff0a10a92e58c) format("woff");font-display:block}@font-face{font-family:Roboto Slab;font-style:normal;font-weight:700;src:url(fonts/Roboto-Slab-Bold.woff2?9984f4a9bda09be08e83f2506954adbe) format("woff2"),url(fonts/Roboto-Slab-Bold.woff?bed5564a116b05148e3b3bea6fb1162a) format("woff");font-display:block} \ No newline at end of file + */@font-face{font-family:FontAwesome;src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713);src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713?#iefix&v=4.7.0) format("embedded-opentype"),url(fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e) format("woff2"),url(fonts/fontawesome-webfont.woff?fee66e712a8a08eef5805a46892932ad) format("woff"),url(fonts/fontawesome-webfont.ttf?b06871f281fee6b241d60582ae9369b9) format("truetype"),url(fonts/fontawesome-webfont.svg?912ec66d7572ff821749319396470bde#fontawesomeregular) format("svg");font-weight:400;font-style:normal}.fa,.icon,.rst-content .admonition-title,.rst-content .code-block-caption .headerlink,.rst-content .eqno .headerlink,.rst-content code.download span:first-child,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content p .headerlink,.rst-content table>caption .headerlink,.rst-content tt.download span:first-child,.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand,.wy-menu-vertical li button.toctree-expand{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14286em;width:2.14286em;top:.14286em;text-align:center}.fa-li.fa-lg{left:-1.85714em}.fa-border{padding:.2em .25em .15em;border:.08em solid #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa-pull-left.icon,.fa.fa-pull-left,.rst-content .code-block-caption .fa-pull-left.headerlink,.rst-content .eqno .fa-pull-left.headerlink,.rst-content .fa-pull-left.admonition-title,.rst-content code.download span.fa-pull-left:first-child,.rst-content dl dt .fa-pull-left.headerlink,.rst-content h1 .fa-pull-left.headerlink,.rst-content h2 .fa-pull-left.headerlink,.rst-content h3 .fa-pull-left.headerlink,.rst-content h4 .fa-pull-left.headerlink,.rst-content h5 .fa-pull-left.headerlink,.rst-content h6 .fa-pull-left.headerlink,.rst-content p .fa-pull-left.headerlink,.rst-content table>caption .fa-pull-left.headerlink,.rst-content tt.download span.fa-pull-left:first-child,.wy-menu-vertical li.current>a button.fa-pull-left.toctree-expand,.wy-menu-vertical li.on a button.fa-pull-left.toctree-expand,.wy-menu-vertical li button.fa-pull-left.toctree-expand{margin-right:.3em}.fa-pull-right.icon,.fa.fa-pull-right,.rst-content .code-block-caption .fa-pull-right.headerlink,.rst-content .eqno .fa-pull-right.headerlink,.rst-content .fa-pull-right.admonition-title,.rst-content code.download span.fa-pull-right:first-child,.rst-content dl dt .fa-pull-right.headerlink,.rst-content h1 .fa-pull-right.headerlink,.rst-content h2 .fa-pull-right.headerlink,.rst-content h3 .fa-pull-right.headerlink,.rst-content h4 .fa-pull-right.headerlink,.rst-content h5 .fa-pull-right.headerlink,.rst-content h6 .fa-pull-right.headerlink,.rst-content p .fa-pull-right.headerlink,.rst-content table>caption .fa-pull-right.headerlink,.rst-content tt.download span.fa-pull-right:first-child,.wy-menu-vertical li.current>a button.fa-pull-right.toctree-expand,.wy-menu-vertical li.on a button.fa-pull-right.toctree-expand,.wy-menu-vertical li button.fa-pull-right.toctree-expand{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left,.pull-left.icon,.rst-content .code-block-caption .pull-left.headerlink,.rst-content .eqno .pull-left.headerlink,.rst-content .pull-left.admonition-title,.rst-content code.download span.pull-left:first-child,.rst-content dl dt .pull-left.headerlink,.rst-content h1 .pull-left.headerlink,.rst-content h2 .pull-left.headerlink,.rst-content h3 .pull-left.headerlink,.rst-content h4 .pull-left.headerlink,.rst-content h5 .pull-left.headerlink,.rst-content h6 .pull-left.headerlink,.rst-content p .pull-left.headerlink,.rst-content table>caption .pull-left.headerlink,.rst-content tt.download span.pull-left:first-child,.wy-menu-vertical li.current>a button.pull-left.toctree-expand,.wy-menu-vertical li.on a button.pull-left.toctree-expand,.wy-menu-vertical li button.pull-left.toctree-expand{margin-right:.3em}.fa.pull-right,.pull-right.icon,.rst-content .code-block-caption .pull-right.headerlink,.rst-content .eqno .pull-right.headerlink,.rst-content .pull-right.admonition-title,.rst-content code.download span.pull-right:first-child,.rst-content dl dt .pull-right.headerlink,.rst-content h1 .pull-right.headerlink,.rst-content h2 .pull-right.headerlink,.rst-content h3 .pull-right.headerlink,.rst-content h4 .pull-right.headerlink,.rst-content h5 .pull-right.headerlink,.rst-content h6 .pull-right.headerlink,.rst-content p .pull-right.headerlink,.rst-content table>caption .pull-right.headerlink,.rst-content tt.download span.pull-right:first-child,.wy-menu-vertical li.current>a button.pull-right.toctree-expand,.wy-menu-vertical li.on a button.pull-right.toctree-expand,.wy-menu-vertical li button.pull-right.toctree-expand{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);-ms-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:""}.fa-music:before{content:""}.fa-search:before,.icon-search:before{content:""}.fa-envelope-o:before{content:""}.fa-heart:before{content:""}.fa-star:before{content:""}.fa-star-o:before{content:""}.fa-user:before{content:""}.fa-film:before{content:""}.fa-th-large:before{content:""}.fa-th:before{content:""}.fa-th-list:before{content:""}.fa-check:before{content:""}.fa-close:before,.fa-remove:before,.fa-times:before{content:""}.fa-search-plus:before{content:""}.fa-search-minus:before{content:""}.fa-power-off:before{content:""}.fa-signal:before{content:""}.fa-cog:before,.fa-gear:before{content:""}.fa-trash-o:before{content:""}.fa-home:before,.icon-home:before{content:""}.fa-file-o:before{content:""}.fa-clock-o:before{content:""}.fa-road:before{content:""}.fa-download:before,.rst-content code.download span:first-child:before,.rst-content tt.download span:first-child:before{content:""}.fa-arrow-circle-o-down:before{content:""}.fa-arrow-circle-o-up:before{content:""}.fa-inbox:before{content:""}.fa-play-circle-o:before{content:""}.fa-repeat:before,.fa-rotate-right:before{content:""}.fa-refresh:before{content:""}.fa-list-alt:before{content:""}.fa-lock:before{content:""}.fa-flag:before{content:""}.fa-headphones:before{content:""}.fa-volume-off:before{content:""}.fa-volume-down:before{content:""}.fa-volume-up:before{content:""}.fa-qrcode:before{content:""}.fa-barcode:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-book:before,.icon-book:before{content:""}.fa-bookmark:before{content:""}.fa-print:before{content:""}.fa-camera:before{content:""}.fa-font:before{content:""}.fa-bold:before{content:""}.fa-italic:before{content:""}.fa-text-height:before{content:""}.fa-text-width:before{content:""}.fa-align-left:before{content:""}.fa-align-center:before{content:""}.fa-align-right:before{content:""}.fa-align-justify:before{content:""}.fa-list:before{content:""}.fa-dedent:before,.fa-outdent:before{content:""}.fa-indent:before{content:""}.fa-video-camera:before{content:""}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:""}.fa-pencil:before{content:""}.fa-map-marker:before{content:""}.fa-adjust:before{content:""}.fa-tint:before{content:""}.fa-edit:before,.fa-pencil-square-o:before{content:""}.fa-share-square-o:before{content:""}.fa-check-square-o:before{content:""}.fa-arrows:before{content:""}.fa-step-backward:before{content:""}.fa-fast-backward:before{content:""}.fa-backward:before{content:""}.fa-play:before{content:""}.fa-pause:before{content:""}.fa-stop:before{content:""}.fa-forward:before{content:""}.fa-fast-forward:before{content:""}.fa-step-forward:before{content:""}.fa-eject:before{content:""}.fa-chevron-left:before{content:""}.fa-chevron-right:before{content:""}.fa-plus-circle:before{content:""}.fa-minus-circle:before{content:""}.fa-times-circle:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before{content:""}.fa-check-circle:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before{content:""}.fa-question-circle:before{content:""}.fa-info-circle:before{content:""}.fa-crosshairs:before{content:""}.fa-times-circle-o:before{content:""}.fa-check-circle-o:before{content:""}.fa-ban:before{content:""}.fa-arrow-left:before{content:""}.fa-arrow-right:before{content:""}.fa-arrow-up:before{content:""}.fa-arrow-down:before{content:""}.fa-mail-forward:before,.fa-share:before{content:""}.fa-expand:before{content:""}.fa-compress:before{content:""}.fa-plus:before{content:""}.fa-minus:before{content:""}.fa-asterisk:before{content:""}.fa-exclamation-circle:before,.rst-content .admonition-title:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before{content:""}.fa-gift:before{content:""}.fa-leaf:before{content:""}.fa-fire:before,.icon-fire:before{content:""}.fa-eye:before{content:""}.fa-eye-slash:before{content:""}.fa-exclamation-triangle:before,.fa-warning:before{content:""}.fa-plane:before{content:""}.fa-calendar:before{content:""}.fa-random:before{content:""}.fa-comment:before{content:""}.fa-magnet:before{content:""}.fa-chevron-up:before{content:""}.fa-chevron-down:before{content:""}.fa-retweet:before{content:""}.fa-shopping-cart:before{content:""}.fa-folder:before{content:""}.fa-folder-open:before{content:""}.fa-arrows-v:before{content:""}.fa-arrows-h:before{content:""}.fa-bar-chart-o:before,.fa-bar-chart:before{content:""}.fa-twitter-square:before{content:""}.fa-facebook-square:before{content:""}.fa-camera-retro:before{content:""}.fa-key:before{content:""}.fa-cogs:before,.fa-gears:before{content:""}.fa-comments:before{content:""}.fa-thumbs-o-up:before{content:""}.fa-thumbs-o-down:before{content:""}.fa-star-half:before{content:""}.fa-heart-o:before{content:""}.fa-sign-out:before{content:""}.fa-linkedin-square:before{content:""}.fa-thumb-tack:before{content:""}.fa-external-link:before{content:""}.fa-sign-in:before{content:""}.fa-trophy:before{content:""}.fa-github-square:before{content:""}.fa-upload:before{content:""}.fa-lemon-o:before{content:""}.fa-phone:before{content:""}.fa-square-o:before{content:""}.fa-bookmark-o:before{content:""}.fa-phone-square:before{content:""}.fa-twitter:before{content:""}.fa-facebook-f:before,.fa-facebook:before{content:""}.fa-github:before,.icon-github:before{content:""}.fa-unlock:before{content:""}.fa-credit-card:before{content:""}.fa-feed:before,.fa-rss:before{content:""}.fa-hdd-o:before{content:""}.fa-bullhorn:before{content:""}.fa-bell:before{content:""}.fa-certificate:before{content:""}.fa-hand-o-right:before{content:""}.fa-hand-o-left:before{content:""}.fa-hand-o-up:before{content:""}.fa-hand-o-down:before{content:""}.fa-arrow-circle-left:before,.icon-circle-arrow-left:before{content:""}.fa-arrow-circle-right:before,.icon-circle-arrow-right:before{content:""}.fa-arrow-circle-up:before{content:""}.fa-arrow-circle-down:before{content:""}.fa-globe:before{content:""}.fa-wrench:before{content:""}.fa-tasks:before{content:""}.fa-filter:before{content:""}.fa-briefcase:before{content:""}.fa-arrows-alt:before{content:""}.fa-group:before,.fa-users:before{content:""}.fa-chain:before,.fa-link:before,.icon-link:before{content:""}.fa-cloud:before{content:""}.fa-flask:before{content:""}.fa-cut:before,.fa-scissors:before{content:""}.fa-copy:before,.fa-files-o:before{content:""}.fa-paperclip:before{content:""}.fa-floppy-o:before,.fa-save:before{content:""}.fa-square:before{content:""}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:""}.fa-list-ul:before{content:""}.fa-list-ol:before{content:""}.fa-strikethrough:before{content:""}.fa-underline:before{content:""}.fa-table:before{content:""}.fa-magic:before{content:""}.fa-truck:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-square:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-plus:before{content:""}.fa-money:before{content:""}.fa-caret-down:before,.icon-caret-down:before,.wy-dropdown .caret:before{content:""}.fa-caret-up:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-columns:before{content:""}.fa-sort:before,.fa-unsorted:before{content:""}.fa-sort-desc:before,.fa-sort-down:before{content:""}.fa-sort-asc:before,.fa-sort-up:before{content:""}.fa-envelope:before{content:""}.fa-linkedin:before{content:""}.fa-rotate-left:before,.fa-undo:before{content:""}.fa-gavel:before,.fa-legal:before{content:""}.fa-dashboard:before,.fa-tachometer:before{content:""}.fa-comment-o:before{content:""}.fa-comments-o:before{content:""}.fa-bolt:before,.fa-flash:before{content:""}.fa-sitemap:before{content:""}.fa-umbrella:before{content:""}.fa-clipboard:before,.fa-paste:before{content:""}.fa-lightbulb-o:before{content:""}.fa-exchange:before{content:""}.fa-cloud-download:before{content:""}.fa-cloud-upload:before{content:""}.fa-user-md:before{content:""}.fa-stethoscope:before{content:""}.fa-suitcase:before{content:""}.fa-bell-o:before{content:""}.fa-coffee:before{content:""}.fa-cutlery:before{content:""}.fa-file-text-o:before{content:""}.fa-building-o:before{content:""}.fa-hospital-o:before{content:""}.fa-ambulance:before{content:""}.fa-medkit:before{content:""}.fa-fighter-jet:before{content:""}.fa-beer:before{content:""}.fa-h-square:before{content:""}.fa-plus-square:before{content:""}.fa-angle-double-left:before{content:""}.fa-angle-double-right:before{content:""}.fa-angle-double-up:before{content:""}.fa-angle-double-down:before{content:""}.fa-angle-left:before{content:""}.fa-angle-right:before{content:""}.fa-angle-up:before{content:""}.fa-angle-down:before{content:""}.fa-desktop:before{content:""}.fa-laptop:before{content:""}.fa-tablet:before{content:""}.fa-mobile-phone:before,.fa-mobile:before{content:""}.fa-circle-o:before{content:""}.fa-quote-left:before{content:""}.fa-quote-right:before{content:""}.fa-spinner:before{content:""}.fa-circle:before{content:""}.fa-mail-reply:before,.fa-reply:before{content:""}.fa-github-alt:before{content:""}.fa-folder-o:before{content:""}.fa-folder-open-o:before{content:""}.fa-smile-o:before{content:""}.fa-frown-o:before{content:""}.fa-meh-o:before{content:""}.fa-gamepad:before{content:""}.fa-keyboard-o:before{content:""}.fa-flag-o:before{content:""}.fa-flag-checkered:before{content:""}.fa-terminal:before{content:""}.fa-code:before{content:""}.fa-mail-reply-all:before,.fa-reply-all:before{content:""}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:""}.fa-location-arrow:before{content:""}.fa-crop:before{content:""}.fa-code-fork:before{content:""}.fa-chain-broken:before,.fa-unlink:before{content:""}.fa-question:before{content:""}.fa-info:before{content:""}.fa-exclamation:before{content:""}.fa-superscript:before{content:""}.fa-subscript:before{content:""}.fa-eraser:before{content:""}.fa-puzzle-piece:before{content:""}.fa-microphone:before{content:""}.fa-microphone-slash:before{content:""}.fa-shield:before{content:""}.fa-calendar-o:before{content:""}.fa-fire-extinguisher:before{content:""}.fa-rocket:before{content:""}.fa-maxcdn:before{content:""}.fa-chevron-circle-left:before{content:""}.fa-chevron-circle-right:before{content:""}.fa-chevron-circle-up:before{content:""}.fa-chevron-circle-down:before{content:""}.fa-html5:before{content:""}.fa-css3:before{content:""}.fa-anchor:before{content:""}.fa-unlock-alt:before{content:""}.fa-bullseye:before{content:""}.fa-ellipsis-h:before{content:""}.fa-ellipsis-v:before{content:""}.fa-rss-square:before{content:""}.fa-play-circle:before{content:""}.fa-ticket:before{content:""}.fa-minus-square:before{content:""}.fa-minus-square-o:before,.wy-menu-vertical li.current>a button.toctree-expand:before,.wy-menu-vertical li.on a button.toctree-expand:before{content:""}.fa-level-up:before{content:""}.fa-level-down:before{content:""}.fa-check-square:before{content:""}.fa-pencil-square:before{content:""}.fa-external-link-square:before{content:""}.fa-share-square:before{content:""}.fa-compass:before{content:""}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:""}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:""}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:""}.fa-eur:before,.fa-euro:before{content:""}.fa-gbp:before{content:""}.fa-dollar:before,.fa-usd:before{content:""}.fa-inr:before,.fa-rupee:before{content:""}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:""}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:""}.fa-krw:before,.fa-won:before{content:""}.fa-bitcoin:before,.fa-btc:before{content:""}.fa-file:before{content:""}.fa-file-text:before{content:""}.fa-sort-alpha-asc:before{content:""}.fa-sort-alpha-desc:before{content:""}.fa-sort-amount-asc:before{content:""}.fa-sort-amount-desc:before{content:""}.fa-sort-numeric-asc:before{content:""}.fa-sort-numeric-desc:before{content:""}.fa-thumbs-up:before{content:""}.fa-thumbs-down:before{content:""}.fa-youtube-square:before{content:""}.fa-youtube:before{content:""}.fa-xing:before{content:""}.fa-xing-square:before{content:""}.fa-youtube-play:before{content:""}.fa-dropbox:before{content:""}.fa-stack-overflow:before{content:""}.fa-instagram:before{content:""}.fa-flickr:before{content:""}.fa-adn:before{content:""}.fa-bitbucket:before,.icon-bitbucket:before{content:""}.fa-bitbucket-square:before{content:""}.fa-tumblr:before{content:""}.fa-tumblr-square:before{content:""}.fa-long-arrow-down:before{content:""}.fa-long-arrow-up:before{content:""}.fa-long-arrow-left:before{content:""}.fa-long-arrow-right:before{content:""}.fa-apple:before{content:""}.fa-windows:before{content:""}.fa-android:before{content:""}.fa-linux:before{content:""}.fa-dribbble:before{content:""}.fa-skype:before{content:""}.fa-foursquare:before{content:""}.fa-trello:before{content:""}.fa-female:before{content:""}.fa-male:before{content:""}.fa-gittip:before,.fa-gratipay:before{content:""}.fa-sun-o:before{content:""}.fa-moon-o:before{content:""}.fa-archive:before{content:""}.fa-bug:before{content:""}.fa-vk:before{content:""}.fa-weibo:before{content:""}.fa-renren:before{content:""}.fa-pagelines:before{content:""}.fa-stack-exchange:before{content:""}.fa-arrow-circle-o-right:before{content:""}.fa-arrow-circle-o-left:before{content:""}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:""}.fa-dot-circle-o:before{content:""}.fa-wheelchair:before{content:""}.fa-vimeo-square:before{content:""}.fa-try:before,.fa-turkish-lira:before{content:""}.fa-plus-square-o:before,.wy-menu-vertical li button.toctree-expand:before{content:""}.fa-space-shuttle:before{content:""}.fa-slack:before{content:""}.fa-envelope-square:before{content:""}.fa-wordpress:before{content:""}.fa-openid:before{content:""}.fa-bank:before,.fa-institution:before,.fa-university:before{content:""}.fa-graduation-cap:before,.fa-mortar-board:before{content:""}.fa-yahoo:before{content:""}.fa-google:before{content:""}.fa-reddit:before{content:""}.fa-reddit-square:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-stumbleupon:before{content:""}.fa-delicious:before{content:""}.fa-digg:before{content:""}.fa-pied-piper-pp:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-drupal:before{content:""}.fa-joomla:before{content:""}.fa-language:before{content:""}.fa-fax:before{content:""}.fa-building:before{content:""}.fa-child:before{content:""}.fa-paw:before{content:""}.fa-spoon:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-recycle:before{content:""}.fa-automobile:before,.fa-car:before{content:""}.fa-cab:before,.fa-taxi:before{content:""}.fa-tree:before{content:""}.fa-spotify:before{content:""}.fa-deviantart:before{content:""}.fa-soundcloud:before{content:""}.fa-database:before{content:""}.fa-file-pdf-o:before{content:""}.fa-file-word-o:before{content:""}.fa-file-excel-o:before{content:""}.fa-file-powerpoint-o:before{content:""}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:""}.fa-file-archive-o:before,.fa-file-zip-o:before{content:""}.fa-file-audio-o:before,.fa-file-sound-o:before{content:""}.fa-file-movie-o:before,.fa-file-video-o:before{content:""}.fa-file-code-o:before{content:""}.fa-vine:before{content:""}.fa-codepen:before{content:""}.fa-jsfiddle:before{content:""}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:""}.fa-circle-o-notch:before{content:""}.fa-ra:before,.fa-rebel:before,.fa-resistance:before{content:""}.fa-empire:before,.fa-ge:before{content:""}.fa-git-square:before{content:""}.fa-git:before{content:""}.fa-hacker-news:before,.fa-y-combinator-square:before,.fa-yc-square:before{content:""}.fa-tencent-weibo:before{content:""}.fa-qq:before{content:""}.fa-wechat:before,.fa-weixin:before{content:""}.fa-paper-plane:before,.fa-send:before{content:""}.fa-paper-plane-o:before,.fa-send-o:before{content:""}.fa-history:before{content:""}.fa-circle-thin:before{content:""}.fa-header:before{content:""}.fa-paragraph:before{content:""}.fa-sliders:before{content:""}.fa-share-alt:before{content:""}.fa-share-alt-square:before{content:""}.fa-bomb:before{content:""}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:""}.fa-tty:before{content:""}.fa-binoculars:before{content:""}.fa-plug:before{content:""}.fa-slideshare:before{content:""}.fa-twitch:before{content:""}.fa-yelp:before{content:""}.fa-newspaper-o:before{content:""}.fa-wifi:before{content:""}.fa-calculator:before{content:""}.fa-paypal:before{content:""}.fa-google-wallet:before{content:""}.fa-cc-visa:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-bell-slash:before{content:""}.fa-bell-slash-o:before{content:""}.fa-trash:before{content:""}.fa-copyright:before{content:""}.fa-at:before{content:""}.fa-eyedropper:before{content:""}.fa-paint-brush:before{content:""}.fa-birthday-cake:before{content:""}.fa-area-chart:before{content:""}.fa-pie-chart:before{content:""}.fa-line-chart:before{content:""}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-bicycle:before{content:""}.fa-bus:before{content:""}.fa-ioxhost:before{content:""}.fa-angellist:before{content:""}.fa-cc:before{content:""}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:""}.fa-meanpath:before{content:""}.fa-buysellads:before{content:""}.fa-connectdevelop:before{content:""}.fa-dashcube:before{content:""}.fa-forumbee:before{content:""}.fa-leanpub:before{content:""}.fa-sellsy:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-simplybuilt:before{content:""}.fa-skyatlas:before{content:""}.fa-cart-plus:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-diamond:before{content:""}.fa-ship:before{content:""}.fa-user-secret:before{content:""}.fa-motorcycle:before{content:""}.fa-street-view:before{content:""}.fa-heartbeat:before{content:""}.fa-venus:before{content:""}.fa-mars:before{content:""}.fa-mercury:before{content:""}.fa-intersex:before,.fa-transgender:before{content:""}.fa-transgender-alt:before{content:""}.fa-venus-double:before{content:""}.fa-mars-double:before{content:""}.fa-venus-mars:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-v:before{content:""}.fa-mars-stroke-h:before{content:""}.fa-neuter:before{content:""}.fa-genderless:before{content:""}.fa-facebook-official:before{content:""}.fa-pinterest-p:before{content:""}.fa-whatsapp:before{content:""}.fa-server:before{content:""}.fa-user-plus:before{content:""}.fa-user-times:before{content:""}.fa-bed:before,.fa-hotel:before{content:""}.fa-viacoin:before{content:""}.fa-train:before{content:""}.fa-subway:before{content:""}.fa-medium:before{content:""}.fa-y-combinator:before,.fa-yc:before{content:""}.fa-optin-monster:before{content:""}.fa-opencart:before{content:""}.fa-expeditedssl:before{content:""}.fa-battery-4:before,.fa-battery-full:before,.fa-battery:before{content:""}.fa-battery-3:before,.fa-battery-three-quarters:before{content:""}.fa-battery-2:before,.fa-battery-half:before{content:""}.fa-battery-1:before,.fa-battery-quarter:before{content:""}.fa-battery-0:before,.fa-battery-empty:before{content:""}.fa-mouse-pointer:before{content:""}.fa-i-cursor:before{content:""}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-sticky-note:before{content:""}.fa-sticky-note-o:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-diners-club:before{content:""}.fa-clone:before{content:""}.fa-balance-scale:before{content:""}.fa-hourglass-o:before{content:""}.fa-hourglass-1:before,.fa-hourglass-start:before{content:""}.fa-hourglass-2:before,.fa-hourglass-half:before{content:""}.fa-hourglass-3:before,.fa-hourglass-end:before{content:""}.fa-hourglass:before{content:""}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:""}.fa-hand-paper-o:before,.fa-hand-stop-o:before{content:""}.fa-hand-scissors-o:before{content:""}.fa-hand-lizard-o:before{content:""}.fa-hand-spock-o:before{content:""}.fa-hand-pointer-o:before{content:""}.fa-hand-peace-o:before{content:""}.fa-trademark:before{content:""}.fa-registered:before{content:""}.fa-creative-commons:before{content:""}.fa-gg:before{content:""}.fa-gg-circle:before{content:""}.fa-tripadvisor:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-get-pocket:before{content:""}.fa-wikipedia-w:before{content:""}.fa-safari:before{content:""}.fa-chrome:before{content:""}.fa-firefox:before{content:""}.fa-opera:before{content:""}.fa-internet-explorer:before{content:""}.fa-television:before,.fa-tv:before{content:""}.fa-contao:before{content:""}.fa-500px:before{content:""}.fa-amazon:before{content:""}.fa-calendar-plus-o:before{content:""}.fa-calendar-minus-o:before{content:""}.fa-calendar-times-o:before{content:""}.fa-calendar-check-o:before{content:""}.fa-industry:before{content:""}.fa-map-pin:before{content:""}.fa-map-signs:before{content:""}.fa-map-o:before{content:""}.fa-map:before{content:""}.fa-commenting:before{content:""}.fa-commenting-o:before{content:""}.fa-houzz:before{content:""}.fa-vimeo:before{content:""}.fa-black-tie:before{content:""}.fa-fonticons:before{content:""}.fa-reddit-alien:before{content:""}.fa-edge:before{content:""}.fa-credit-card-alt:before{content:""}.fa-codiepie:before{content:""}.fa-modx:before{content:""}.fa-fort-awesome:before{content:""}.fa-usb:before{content:""}.fa-product-hunt:before{content:""}.fa-mixcloud:before{content:""}.fa-scribd:before{content:""}.fa-pause-circle:before{content:""}.fa-pause-circle-o:before{content:""}.fa-stop-circle:before{content:""}.fa-stop-circle-o:before{content:""}.fa-shopping-bag:before{content:""}.fa-shopping-basket:before{content:""}.fa-hashtag:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-percent:before{content:""}.fa-gitlab:before,.icon-gitlab:before{content:""}.fa-wpbeginner:before{content:""}.fa-wpforms:before{content:""}.fa-envira:before{content:""}.fa-universal-access:before{content:""}.fa-wheelchair-alt:before{content:""}.fa-question-circle-o:before{content:""}.fa-blind:before{content:""}.fa-audio-description:before{content:""}.fa-volume-control-phone:before{content:""}.fa-braille:before{content:""}.fa-assistive-listening-systems:before{content:""}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before{content:""}.fa-deaf:before,.fa-deafness:before,.fa-hard-of-hearing:before{content:""}.fa-glide:before{content:""}.fa-glide-g:before{content:""}.fa-sign-language:before,.fa-signing:before{content:""}.fa-low-vision:before{content:""}.fa-viadeo:before{content:""}.fa-viadeo-square:before{content:""}.fa-snapchat:before{content:""}.fa-snapchat-ghost:before{content:""}.fa-snapchat-square:before{content:""}.fa-pied-piper:before{content:""}.fa-first-order:before{content:""}.fa-yoast:before{content:""}.fa-themeisle:before{content:""}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:""}.fa-fa:before,.fa-font-awesome:before{content:""}.fa-handshake-o:before{content:""}.fa-envelope-open:before{content:""}.fa-envelope-open-o:before{content:""}.fa-linode:before{content:""}.fa-address-book:before{content:""}.fa-address-book-o:before{content:""}.fa-address-card:before,.fa-vcard:before{content:""}.fa-address-card-o:before,.fa-vcard-o:before{content:""}.fa-user-circle:before{content:""}.fa-user-circle-o:before{content:""}.fa-user-o:before{content:""}.fa-id-badge:before{content:""}.fa-drivers-license:before,.fa-id-card:before{content:""}.fa-drivers-license-o:before,.fa-id-card-o:before{content:""}.fa-quora:before{content:""}.fa-free-code-camp:before{content:""}.fa-telegram:before{content:""}.fa-thermometer-4:before,.fa-thermometer-full:before,.fa-thermometer:before{content:""}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:""}.fa-thermometer-2:before,.fa-thermometer-half:before{content:""}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:""}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:""}.fa-shower:before{content:""}.fa-bath:before,.fa-bathtub:before,.fa-s15:before{content:""}.fa-podcast:before{content:""}.fa-window-maximize:before{content:""}.fa-window-minimize:before{content:""}.fa-window-restore:before{content:""}.fa-times-rectangle:before,.fa-window-close:before{content:""}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:""}.fa-bandcamp:before{content:""}.fa-grav:before{content:""}.fa-etsy:before{content:""}.fa-imdb:before{content:""}.fa-ravelry:before{content:""}.fa-eercast:before{content:""}.fa-microchip:before{content:""}.fa-snowflake-o:before{content:""}.fa-superpowers:before{content:""}.fa-wpexplorer:before{content:""}.fa-meetup:before{content:""}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}.fa,.icon,.rst-content .admonition-title,.rst-content .code-block-caption .headerlink,.rst-content .eqno .headerlink,.rst-content code.download span:first-child,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content p .headerlink,.rst-content table>caption .headerlink,.rst-content tt.download span:first-child,.wy-dropdown .caret,.wy-inline-validate.wy-inline-validate-danger .wy-input-context,.wy-inline-validate.wy-inline-validate-info .wy-input-context,.wy-inline-validate.wy-inline-validate-success .wy-input-context,.wy-inline-validate.wy-inline-validate-warning .wy-input-context,.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand,.wy-menu-vertical li button.toctree-expand{font-family:inherit}.fa:before,.icon:before,.rst-content .admonition-title:before,.rst-content .code-block-caption .headerlink:before,.rst-content .eqno .headerlink:before,.rst-content code.download span:first-child:before,.rst-content dl dt .headerlink:before,.rst-content h1 .headerlink:before,.rst-content h2 .headerlink:before,.rst-content h3 .headerlink:before,.rst-content h4 .headerlink:before,.rst-content h5 .headerlink:before,.rst-content h6 .headerlink:before,.rst-content p.caption .headerlink:before,.rst-content p .headerlink:before,.rst-content table>caption .headerlink:before,.rst-content tt.download span:first-child:before,.wy-dropdown .caret:before,.wy-inline-validate.wy-inline-validate-danger .wy-input-context:before,.wy-inline-validate.wy-inline-validate-info .wy-input-context:before,.wy-inline-validate.wy-inline-validate-success .wy-input-context:before,.wy-inline-validate.wy-inline-validate-warning .wy-input-context:before,.wy-menu-vertical li.current>a button.toctree-expand:before,.wy-menu-vertical li.on a button.toctree-expand:before,.wy-menu-vertical li button.toctree-expand:before{font-family:FontAwesome;display:inline-block;font-style:normal;font-weight:400;line-height:1;text-decoration:inherit}.rst-content .code-block-caption a .headerlink,.rst-content .eqno a .headerlink,.rst-content a .admonition-title,.rst-content code.download a span:first-child,.rst-content dl dt a .headerlink,.rst-content h1 a .headerlink,.rst-content h2 a .headerlink,.rst-content h3 a .headerlink,.rst-content h4 a .headerlink,.rst-content h5 a .headerlink,.rst-content h6 a .headerlink,.rst-content p.caption a .headerlink,.rst-content p a .headerlink,.rst-content table>caption a .headerlink,.rst-content tt.download a span:first-child,.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand,.wy-menu-vertical li a button.toctree-expand,a .fa,a .icon,a .rst-content .admonition-title,a .rst-content .code-block-caption .headerlink,a .rst-content .eqno .headerlink,a .rst-content code.download span:first-child,a .rst-content dl dt .headerlink,a .rst-content h1 .headerlink,a .rst-content h2 .headerlink,a .rst-content h3 .headerlink,a .rst-content h4 .headerlink,a .rst-content h5 .headerlink,a .rst-content h6 .headerlink,a .rst-content p.caption .headerlink,a .rst-content p .headerlink,a .rst-content table>caption .headerlink,a .rst-content tt.download span:first-child,a .wy-menu-vertical li button.toctree-expand{display:inline-block;text-decoration:inherit}.btn .fa,.btn .icon,.btn .rst-content .admonition-title,.btn .rst-content .code-block-caption .headerlink,.btn .rst-content .eqno .headerlink,.btn .rst-content code.download span:first-child,.btn .rst-content dl dt .headerlink,.btn .rst-content h1 .headerlink,.btn .rst-content h2 .headerlink,.btn .rst-content h3 .headerlink,.btn .rst-content h4 .headerlink,.btn .rst-content h5 .headerlink,.btn .rst-content h6 .headerlink,.btn .rst-content p .headerlink,.btn .rst-content table>caption .headerlink,.btn .rst-content tt.download span:first-child,.btn .wy-menu-vertical li.current>a button.toctree-expand,.btn .wy-menu-vertical li.on a button.toctree-expand,.btn .wy-menu-vertical li button.toctree-expand,.nav .fa,.nav .icon,.nav .rst-content .admonition-title,.nav .rst-content .code-block-caption .headerlink,.nav .rst-content .eqno .headerlink,.nav .rst-content code.download span:first-child,.nav .rst-content dl dt .headerlink,.nav .rst-content h1 .headerlink,.nav .rst-content h2 .headerlink,.nav .rst-content h3 .headerlink,.nav .rst-content h4 .headerlink,.nav .rst-content h5 .headerlink,.nav .rst-content h6 .headerlink,.nav .rst-content p .headerlink,.nav .rst-content table>caption .headerlink,.nav .rst-content tt.download span:first-child,.nav .wy-menu-vertical li.current>a button.toctree-expand,.nav .wy-menu-vertical li.on a button.toctree-expand,.nav .wy-menu-vertical li button.toctree-expand,.rst-content .btn .admonition-title,.rst-content .code-block-caption .btn .headerlink,.rst-content .code-block-caption .nav .headerlink,.rst-content .eqno .btn .headerlink,.rst-content .eqno .nav .headerlink,.rst-content .nav .admonition-title,.rst-content code.download .btn span:first-child,.rst-content code.download .nav span:first-child,.rst-content dl dt .btn .headerlink,.rst-content dl dt .nav .headerlink,.rst-content h1 .btn .headerlink,.rst-content h1 .nav .headerlink,.rst-content h2 .btn .headerlink,.rst-content h2 .nav .headerlink,.rst-content h3 .btn .headerlink,.rst-content h3 .nav .headerlink,.rst-content h4 .btn .headerlink,.rst-content h4 .nav .headerlink,.rst-content h5 .btn .headerlink,.rst-content h5 .nav .headerlink,.rst-content h6 .btn .headerlink,.rst-content h6 .nav .headerlink,.rst-content p .btn .headerlink,.rst-content p .nav .headerlink,.rst-content table>caption .btn .headerlink,.rst-content table>caption .nav .headerlink,.rst-content tt.download .btn span:first-child,.rst-content tt.download .nav span:first-child,.wy-menu-vertical li .btn button.toctree-expand,.wy-menu-vertical li.current>a .btn button.toctree-expand,.wy-menu-vertical li.current>a .nav button.toctree-expand,.wy-menu-vertical li .nav button.toctree-expand,.wy-menu-vertical li.on a .btn button.toctree-expand,.wy-menu-vertical li.on a .nav button.toctree-expand{display:inline}.btn .fa-large.icon,.btn .fa.fa-large,.btn .rst-content .code-block-caption .fa-large.headerlink,.btn .rst-content .eqno .fa-large.headerlink,.btn .rst-content .fa-large.admonition-title,.btn .rst-content code.download span.fa-large:first-child,.btn .rst-content dl dt .fa-large.headerlink,.btn .rst-content h1 .fa-large.headerlink,.btn .rst-content h2 .fa-large.headerlink,.btn .rst-content h3 .fa-large.headerlink,.btn .rst-content h4 .fa-large.headerlink,.btn .rst-content h5 .fa-large.headerlink,.btn .rst-content h6 .fa-large.headerlink,.btn .rst-content p .fa-large.headerlink,.btn .rst-content table>caption .fa-large.headerlink,.btn .rst-content tt.download span.fa-large:first-child,.btn .wy-menu-vertical li button.fa-large.toctree-expand,.nav .fa-large.icon,.nav .fa.fa-large,.nav .rst-content .code-block-caption .fa-large.headerlink,.nav .rst-content .eqno .fa-large.headerlink,.nav .rst-content .fa-large.admonition-title,.nav .rst-content code.download span.fa-large:first-child,.nav .rst-content dl dt .fa-large.headerlink,.nav .rst-content h1 .fa-large.headerlink,.nav .rst-content h2 .fa-large.headerlink,.nav .rst-content h3 .fa-large.headerlink,.nav .rst-content h4 .fa-large.headerlink,.nav .rst-content h5 .fa-large.headerlink,.nav .rst-content h6 .fa-large.headerlink,.nav .rst-content p .fa-large.headerlink,.nav .rst-content table>caption .fa-large.headerlink,.nav .rst-content tt.download span.fa-large:first-child,.nav .wy-menu-vertical li button.fa-large.toctree-expand,.rst-content .btn .fa-large.admonition-title,.rst-content .code-block-caption .btn .fa-large.headerlink,.rst-content .code-block-caption .nav .fa-large.headerlink,.rst-content .eqno .btn .fa-large.headerlink,.rst-content .eqno .nav .fa-large.headerlink,.rst-content .nav .fa-large.admonition-title,.rst-content code.download .btn span.fa-large:first-child,.rst-content code.download .nav span.fa-large:first-child,.rst-content dl dt .btn .fa-large.headerlink,.rst-content dl dt .nav .fa-large.headerlink,.rst-content h1 .btn .fa-large.headerlink,.rst-content h1 .nav .fa-large.headerlink,.rst-content h2 .btn .fa-large.headerlink,.rst-content h2 .nav .fa-large.headerlink,.rst-content h3 .btn .fa-large.headerlink,.rst-content h3 .nav .fa-large.headerlink,.rst-content h4 .btn .fa-large.headerlink,.rst-content h4 .nav .fa-large.headerlink,.rst-content h5 .btn .fa-large.headerlink,.rst-content h5 .nav .fa-large.headerlink,.rst-content h6 .btn .fa-large.headerlink,.rst-content h6 .nav .fa-large.headerlink,.rst-content p .btn .fa-large.headerlink,.rst-content p .nav .fa-large.headerlink,.rst-content table>caption .btn .fa-large.headerlink,.rst-content table>caption .nav .fa-large.headerlink,.rst-content tt.download .btn span.fa-large:first-child,.rst-content tt.download .nav span.fa-large:first-child,.wy-menu-vertical li .btn button.fa-large.toctree-expand,.wy-menu-vertical li .nav button.fa-large.toctree-expand{line-height:.9em}.btn .fa-spin.icon,.btn .fa.fa-spin,.btn .rst-content .code-block-caption .fa-spin.headerlink,.btn .rst-content .eqno .fa-spin.headerlink,.btn .rst-content .fa-spin.admonition-title,.btn .rst-content code.download span.fa-spin:first-child,.btn .rst-content dl dt .fa-spin.headerlink,.btn .rst-content h1 .fa-spin.headerlink,.btn .rst-content h2 .fa-spin.headerlink,.btn .rst-content h3 .fa-spin.headerlink,.btn .rst-content h4 .fa-spin.headerlink,.btn .rst-content h5 .fa-spin.headerlink,.btn .rst-content h6 .fa-spin.headerlink,.btn .rst-content p .fa-spin.headerlink,.btn .rst-content table>caption .fa-spin.headerlink,.btn .rst-content tt.download span.fa-spin:first-child,.btn .wy-menu-vertical li button.fa-spin.toctree-expand,.nav .fa-spin.icon,.nav .fa.fa-spin,.nav .rst-content .code-block-caption .fa-spin.headerlink,.nav .rst-content .eqno .fa-spin.headerlink,.nav .rst-content .fa-spin.admonition-title,.nav .rst-content code.download span.fa-spin:first-child,.nav .rst-content dl dt .fa-spin.headerlink,.nav .rst-content h1 .fa-spin.headerlink,.nav .rst-content h2 .fa-spin.headerlink,.nav .rst-content h3 .fa-spin.headerlink,.nav .rst-content h4 .fa-spin.headerlink,.nav .rst-content h5 .fa-spin.headerlink,.nav .rst-content h6 .fa-spin.headerlink,.nav .rst-content p .fa-spin.headerlink,.nav .rst-content table>caption .fa-spin.headerlink,.nav .rst-content tt.download span.fa-spin:first-child,.nav .wy-menu-vertical li button.fa-spin.toctree-expand,.rst-content .btn .fa-spin.admonition-title,.rst-content .code-block-caption .btn .fa-spin.headerlink,.rst-content .code-block-caption .nav .fa-spin.headerlink,.rst-content .eqno .btn .fa-spin.headerlink,.rst-content .eqno .nav .fa-spin.headerlink,.rst-content .nav .fa-spin.admonition-title,.rst-content code.download .btn span.fa-spin:first-child,.rst-content code.download .nav span.fa-spin:first-child,.rst-content dl dt .btn .fa-spin.headerlink,.rst-content dl dt .nav .fa-spin.headerlink,.rst-content h1 .btn .fa-spin.headerlink,.rst-content h1 .nav .fa-spin.headerlink,.rst-content h2 .btn .fa-spin.headerlink,.rst-content h2 .nav .fa-spin.headerlink,.rst-content h3 .btn .fa-spin.headerlink,.rst-content h3 .nav .fa-spin.headerlink,.rst-content h4 .btn .fa-spin.headerlink,.rst-content h4 .nav .fa-spin.headerlink,.rst-content h5 .btn .fa-spin.headerlink,.rst-content h5 .nav .fa-spin.headerlink,.rst-content h6 .btn .fa-spin.headerlink,.rst-content h6 .nav .fa-spin.headerlink,.rst-content p .btn .fa-spin.headerlink,.rst-content p .nav .fa-spin.headerlink,.rst-content table>caption .btn .fa-spin.headerlink,.rst-content table>caption .nav .fa-spin.headerlink,.rst-content tt.download .btn span.fa-spin:first-child,.rst-content tt.download .nav span.fa-spin:first-child,.wy-menu-vertical li .btn button.fa-spin.toctree-expand,.wy-menu-vertical li .nav button.fa-spin.toctree-expand{display:inline-block}.btn.fa:before,.btn.icon:before,.rst-content .btn.admonition-title:before,.rst-content .code-block-caption .btn.headerlink:before,.rst-content .eqno .btn.headerlink:before,.rst-content code.download span.btn:first-child:before,.rst-content dl dt .btn.headerlink:before,.rst-content h1 .btn.headerlink:before,.rst-content h2 .btn.headerlink:before,.rst-content h3 .btn.headerlink:before,.rst-content h4 .btn.headerlink:before,.rst-content h5 .btn.headerlink:before,.rst-content h6 .btn.headerlink:before,.rst-content p .btn.headerlink:before,.rst-content table>caption .btn.headerlink:before,.rst-content tt.download span.btn:first-child:before,.wy-menu-vertical li button.btn.toctree-expand:before{opacity:.5;-webkit-transition:opacity .05s ease-in;-moz-transition:opacity .05s ease-in;transition:opacity .05s ease-in}.btn.fa:hover:before,.btn.icon:hover:before,.rst-content .btn.admonition-title:hover:before,.rst-content .code-block-caption .btn.headerlink:hover:before,.rst-content .eqno .btn.headerlink:hover:before,.rst-content code.download span.btn:first-child:hover:before,.rst-content dl dt .btn.headerlink:hover:before,.rst-content h1 .btn.headerlink:hover:before,.rst-content h2 .btn.headerlink:hover:before,.rst-content h3 .btn.headerlink:hover:before,.rst-content h4 .btn.headerlink:hover:before,.rst-content h5 .btn.headerlink:hover:before,.rst-content h6 .btn.headerlink:hover:before,.rst-content p .btn.headerlink:hover:before,.rst-content table>caption .btn.headerlink:hover:before,.rst-content tt.download span.btn:first-child:hover:before,.wy-menu-vertical li button.btn.toctree-expand:hover:before{opacity:1}.btn-mini .fa:before,.btn-mini .icon:before,.btn-mini .rst-content .admonition-title:before,.btn-mini .rst-content .code-block-caption .headerlink:before,.btn-mini .rst-content .eqno .headerlink:before,.btn-mini .rst-content code.download span:first-child:before,.btn-mini .rst-content dl dt .headerlink:before,.btn-mini .rst-content h1 .headerlink:before,.btn-mini .rst-content h2 .headerlink:before,.btn-mini .rst-content h3 .headerlink:before,.btn-mini .rst-content h4 .headerlink:before,.btn-mini .rst-content h5 .headerlink:before,.btn-mini .rst-content h6 .headerlink:before,.btn-mini .rst-content p .headerlink:before,.btn-mini .rst-content table>caption .headerlink:before,.btn-mini .rst-content tt.download span:first-child:before,.btn-mini .wy-menu-vertical li button.toctree-expand:before,.rst-content .btn-mini .admonition-title:before,.rst-content .code-block-caption .btn-mini .headerlink:before,.rst-content .eqno .btn-mini .headerlink:before,.rst-content code.download .btn-mini span:first-child:before,.rst-content dl dt .btn-mini .headerlink:before,.rst-content h1 .btn-mini .headerlink:before,.rst-content h2 .btn-mini .headerlink:before,.rst-content h3 .btn-mini .headerlink:before,.rst-content h4 .btn-mini .headerlink:before,.rst-content h5 .btn-mini .headerlink:before,.rst-content h6 .btn-mini .headerlink:before,.rst-content p .btn-mini .headerlink:before,.rst-content table>caption .btn-mini .headerlink:before,.rst-content tt.download .btn-mini span:first-child:before,.wy-menu-vertical li .btn-mini button.toctree-expand:before{font-size:14px;vertical-align:-15%}.rst-content .admonition,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .danger,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning,.wy-alert{padding:12px;line-height:24px;margin-bottom:24px;background:#e7f2fa}.rst-content .admonition-title,.wy-alert-title{font-weight:700;display:block;color:#fff;background:#6ab0de;padding:6px 12px;margin:-12px -12px 12px}.rst-content .danger,.rst-content .error,.rst-content .wy-alert-danger.admonition,.rst-content .wy-alert-danger.admonition-todo,.rst-content .wy-alert-danger.attention,.rst-content .wy-alert-danger.caution,.rst-content .wy-alert-danger.hint,.rst-content .wy-alert-danger.important,.rst-content .wy-alert-danger.note,.rst-content .wy-alert-danger.seealso,.rst-content .wy-alert-danger.tip,.rst-content .wy-alert-danger.warning,.wy-alert.wy-alert-danger{background:#fdf3f2}.rst-content .danger .admonition-title,.rst-content .danger .wy-alert-title,.rst-content .error .admonition-title,.rst-content .error .wy-alert-title,.rst-content .wy-alert-danger.admonition-todo .admonition-title,.rst-content .wy-alert-danger.admonition-todo .wy-alert-title,.rst-content .wy-alert-danger.admonition .admonition-title,.rst-content .wy-alert-danger.admonition .wy-alert-title,.rst-content .wy-alert-danger.attention .admonition-title,.rst-content .wy-alert-danger.attention .wy-alert-title,.rst-content .wy-alert-danger.caution .admonition-title,.rst-content .wy-alert-danger.caution .wy-alert-title,.rst-content .wy-alert-danger.hint .admonition-title,.rst-content .wy-alert-danger.hint .wy-alert-title,.rst-content .wy-alert-danger.important .admonition-title,.rst-content .wy-alert-danger.important .wy-alert-title,.rst-content .wy-alert-danger.note .admonition-title,.rst-content .wy-alert-danger.note .wy-alert-title,.rst-content .wy-alert-danger.seealso .admonition-title,.rst-content .wy-alert-danger.seealso .wy-alert-title,.rst-content .wy-alert-danger.tip .admonition-title,.rst-content .wy-alert-danger.tip .wy-alert-title,.rst-content .wy-alert-danger.warning .admonition-title,.rst-content .wy-alert-danger.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-danger .admonition-title,.wy-alert.wy-alert-danger .rst-content .admonition-title,.wy-alert.wy-alert-danger .wy-alert-title{background:#f29f97}.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .warning,.rst-content .wy-alert-warning.admonition,.rst-content .wy-alert-warning.danger,.rst-content .wy-alert-warning.error,.rst-content .wy-alert-warning.hint,.rst-content .wy-alert-warning.important,.rst-content .wy-alert-warning.note,.rst-content .wy-alert-warning.seealso,.rst-content .wy-alert-warning.tip,.wy-alert.wy-alert-warning{background:#ffedcc}.rst-content .admonition-todo .admonition-title,.rst-content .admonition-todo .wy-alert-title,.rst-content .attention .admonition-title,.rst-content .attention .wy-alert-title,.rst-content .caution .admonition-title,.rst-content .caution .wy-alert-title,.rst-content .warning .admonition-title,.rst-content .warning .wy-alert-title,.rst-content .wy-alert-warning.admonition .admonition-title,.rst-content .wy-alert-warning.admonition .wy-alert-title,.rst-content .wy-alert-warning.danger .admonition-title,.rst-content .wy-alert-warning.danger .wy-alert-title,.rst-content .wy-alert-warning.error .admonition-title,.rst-content .wy-alert-warning.error .wy-alert-title,.rst-content .wy-alert-warning.hint .admonition-title,.rst-content .wy-alert-warning.hint .wy-alert-title,.rst-content .wy-alert-warning.important .admonition-title,.rst-content .wy-alert-warning.important .wy-alert-title,.rst-content .wy-alert-warning.note .admonition-title,.rst-content .wy-alert-warning.note .wy-alert-title,.rst-content .wy-alert-warning.seealso .admonition-title,.rst-content .wy-alert-warning.seealso .wy-alert-title,.rst-content .wy-alert-warning.tip .admonition-title,.rst-content .wy-alert-warning.tip .wy-alert-title,.rst-content .wy-alert.wy-alert-warning .admonition-title,.wy-alert.wy-alert-warning .rst-content .admonition-title,.wy-alert.wy-alert-warning .wy-alert-title{background:#f0b37e}.rst-content .note,.rst-content .seealso,.rst-content .wy-alert-info.admonition,.rst-content .wy-alert-info.admonition-todo,.rst-content .wy-alert-info.attention,.rst-content .wy-alert-info.caution,.rst-content .wy-alert-info.danger,.rst-content .wy-alert-info.error,.rst-content .wy-alert-info.hint,.rst-content .wy-alert-info.important,.rst-content .wy-alert-info.tip,.rst-content .wy-alert-info.warning,.wy-alert.wy-alert-info{background:#e7f2fa}.rst-content .note .admonition-title,.rst-content .note .wy-alert-title,.rst-content .seealso .admonition-title,.rst-content .seealso .wy-alert-title,.rst-content .wy-alert-info.admonition-todo .admonition-title,.rst-content .wy-alert-info.admonition-todo .wy-alert-title,.rst-content .wy-alert-info.admonition .admonition-title,.rst-content .wy-alert-info.admonition .wy-alert-title,.rst-content .wy-alert-info.attention .admonition-title,.rst-content .wy-alert-info.attention .wy-alert-title,.rst-content .wy-alert-info.caution .admonition-title,.rst-content .wy-alert-info.caution .wy-alert-title,.rst-content .wy-alert-info.danger .admonition-title,.rst-content .wy-alert-info.danger .wy-alert-title,.rst-content .wy-alert-info.error .admonition-title,.rst-content .wy-alert-info.error .wy-alert-title,.rst-content .wy-alert-info.hint .admonition-title,.rst-content .wy-alert-info.hint .wy-alert-title,.rst-content .wy-alert-info.important .admonition-title,.rst-content .wy-alert-info.important .wy-alert-title,.rst-content .wy-alert-info.tip .admonition-title,.rst-content .wy-alert-info.tip .wy-alert-title,.rst-content .wy-alert-info.warning .admonition-title,.rst-content .wy-alert-info.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-info .admonition-title,.wy-alert.wy-alert-info .rst-content .admonition-title,.wy-alert.wy-alert-info .wy-alert-title{background:#6ab0de}.rst-content .hint,.rst-content .important,.rst-content .tip,.rst-content .wy-alert-success.admonition,.rst-content .wy-alert-success.admonition-todo,.rst-content .wy-alert-success.attention,.rst-content .wy-alert-success.caution,.rst-content .wy-alert-success.danger,.rst-content .wy-alert-success.error,.rst-content .wy-alert-success.note,.rst-content .wy-alert-success.seealso,.rst-content .wy-alert-success.warning,.wy-alert.wy-alert-success{background:#dbfaf4}.rst-content .hint .admonition-title,.rst-content .hint .wy-alert-title,.rst-content .important .admonition-title,.rst-content .important .wy-alert-title,.rst-content .tip .admonition-title,.rst-content .tip .wy-alert-title,.rst-content .wy-alert-success.admonition-todo .admonition-title,.rst-content .wy-alert-success.admonition-todo .wy-alert-title,.rst-content .wy-alert-success.admonition .admonition-title,.rst-content .wy-alert-success.admonition .wy-alert-title,.rst-content .wy-alert-success.attention .admonition-title,.rst-content .wy-alert-success.attention .wy-alert-title,.rst-content .wy-alert-success.caution .admonition-title,.rst-content .wy-alert-success.caution .wy-alert-title,.rst-content .wy-alert-success.danger .admonition-title,.rst-content .wy-alert-success.danger .wy-alert-title,.rst-content .wy-alert-success.error .admonition-title,.rst-content .wy-alert-success.error .wy-alert-title,.rst-content .wy-alert-success.note .admonition-title,.rst-content .wy-alert-success.note .wy-alert-title,.rst-content .wy-alert-success.seealso .admonition-title,.rst-content .wy-alert-success.seealso .wy-alert-title,.rst-content .wy-alert-success.warning .admonition-title,.rst-content .wy-alert-success.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-success .admonition-title,.wy-alert.wy-alert-success .rst-content .admonition-title,.wy-alert.wy-alert-success .wy-alert-title{background:#1abc9c}.rst-content .wy-alert-neutral.admonition,.rst-content .wy-alert-neutral.admonition-todo,.rst-content .wy-alert-neutral.attention,.rst-content .wy-alert-neutral.caution,.rst-content .wy-alert-neutral.danger,.rst-content .wy-alert-neutral.error,.rst-content .wy-alert-neutral.hint,.rst-content .wy-alert-neutral.important,.rst-content .wy-alert-neutral.note,.rst-content .wy-alert-neutral.seealso,.rst-content .wy-alert-neutral.tip,.rst-content .wy-alert-neutral.warning,.wy-alert.wy-alert-neutral{background:#f3f6f6}.rst-content .wy-alert-neutral.admonition-todo .admonition-title,.rst-content .wy-alert-neutral.admonition-todo .wy-alert-title,.rst-content .wy-alert-neutral.admonition .admonition-title,.rst-content .wy-alert-neutral.admonition .wy-alert-title,.rst-content .wy-alert-neutral.attention .admonition-title,.rst-content .wy-alert-neutral.attention .wy-alert-title,.rst-content .wy-alert-neutral.caution .admonition-title,.rst-content .wy-alert-neutral.caution .wy-alert-title,.rst-content .wy-alert-neutral.danger .admonition-title,.rst-content .wy-alert-neutral.danger .wy-alert-title,.rst-content .wy-alert-neutral.error .admonition-title,.rst-content .wy-alert-neutral.error .wy-alert-title,.rst-content .wy-alert-neutral.hint .admonition-title,.rst-content .wy-alert-neutral.hint .wy-alert-title,.rst-content .wy-alert-neutral.important .admonition-title,.rst-content .wy-alert-neutral.important .wy-alert-title,.rst-content .wy-alert-neutral.note .admonition-title,.rst-content .wy-alert-neutral.note .wy-alert-title,.rst-content .wy-alert-neutral.seealso .admonition-title,.rst-content .wy-alert-neutral.seealso .wy-alert-title,.rst-content .wy-alert-neutral.tip .admonition-title,.rst-content .wy-alert-neutral.tip .wy-alert-title,.rst-content .wy-alert-neutral.warning .admonition-title,.rst-content .wy-alert-neutral.warning .wy-alert-title,.rst-content .wy-alert.wy-alert-neutral .admonition-title,.wy-alert.wy-alert-neutral .rst-content .admonition-title,.wy-alert.wy-alert-neutral .wy-alert-title{color:#404040;background:#e1e4e5}.rst-content .wy-alert-neutral.admonition-todo a,.rst-content .wy-alert-neutral.admonition a,.rst-content .wy-alert-neutral.attention a,.rst-content .wy-alert-neutral.caution a,.rst-content .wy-alert-neutral.danger a,.rst-content .wy-alert-neutral.error a,.rst-content .wy-alert-neutral.hint a,.rst-content .wy-alert-neutral.important a,.rst-content .wy-alert-neutral.note a,.rst-content .wy-alert-neutral.seealso a,.rst-content .wy-alert-neutral.tip a,.rst-content .wy-alert-neutral.warning a,.wy-alert.wy-alert-neutral a{color:#2980b9}.rst-content .admonition-todo p:last-child,.rst-content .admonition p:last-child,.rst-content .attention p:last-child,.rst-content .caution p:last-child,.rst-content .danger p:last-child,.rst-content .error p:last-child,.rst-content .hint p:last-child,.rst-content .important p:last-child,.rst-content .note p:last-child,.rst-content .seealso p:last-child,.rst-content .tip p:last-child,.rst-content .warning p:last-child,.wy-alert p:last-child{margin-bottom:0}.wy-tray-container{position:fixed;bottom:0;left:0;z-index:600}.wy-tray-container li{display:block;width:300px;background:transparent;color:#fff;text-align:center;box-shadow:0 5px 5px 0 rgba(0,0,0,.1);padding:0 24px;min-width:20%;opacity:0;height:0;line-height:56px;overflow:hidden;-webkit-transition:all .3s ease-in;-moz-transition:all .3s ease-in;transition:all .3s ease-in}.wy-tray-container li.wy-tray-item-success{background:#27ae60}.wy-tray-container li.wy-tray-item-info{background:#2980b9}.wy-tray-container li.wy-tray-item-warning{background:#e67e22}.wy-tray-container li.wy-tray-item-danger{background:#e74c3c}.wy-tray-container li.on{opacity:1;height:56px}@media screen and (max-width:768px){.wy-tray-container{bottom:auto;top:0;width:100%}.wy-tray-container li{width:100%}}button{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle;cursor:pointer;line-height:normal;-webkit-appearance:button;*overflow:visible}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button[disabled]{cursor:default}.btn{display:inline-block;border-radius:2px;line-height:normal;white-space:nowrap;text-align:center;cursor:pointer;font-size:100%;padding:6px 12px 8px;color:#fff;border:1px solid rgba(0,0,0,.1);background-color:#27ae60;text-decoration:none;font-weight:400;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;box-shadow:inset 0 1px 2px -1px hsla(0,0%,100%,.5),inset 0 -2px 0 0 rgba(0,0,0,.1);outline-none:false;vertical-align:middle;*display:inline;zoom:1;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:all .1s linear;-moz-transition:all .1s linear;transition:all .1s linear}.btn-hover{background:#2e8ece;color:#fff}.btn:hover{background:#2cc36b;color:#fff}.btn:focus{background:#2cc36b;outline:0}.btn:active{box-shadow:inset 0 -1px 0 0 rgba(0,0,0,.05),inset 0 2px 0 0 rgba(0,0,0,.1);padding:8px 12px 6px}.btn:visited{color:#fff}.btn-disabled,.btn-disabled:active,.btn-disabled:focus,.btn-disabled:hover,.btn:disabled{background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);filter:alpha(opacity=40);opacity:.4;cursor:not-allowed;box-shadow:none}.btn::-moz-focus-inner{padding:0;border:0}.btn-small{font-size:80%}.btn-info{background-color:#2980b9!important}.btn-info:hover{background-color:#2e8ece!important}.btn-neutral{background-color:#f3f6f6!important;color:#404040!important}.btn-neutral:hover{background-color:#e5ebeb!important;color:#404040}.btn-neutral:visited{color:#404040!important}.btn-success{background-color:#27ae60!important}.btn-success:hover{background-color:#295!important}.btn-danger{background-color:#e74c3c!important}.btn-danger:hover{background-color:#ea6153!important}.btn-warning{background-color:#e67e22!important}.btn-warning:hover{background-color:#e98b39!important}.btn-invert{background-color:#222}.btn-invert:hover{background-color:#2f2f2f!important}.btn-link{background-color:transparent!important;color:#2980b9;box-shadow:none;border-color:transparent!important}.btn-link:active,.btn-link:hover{background-color:transparent!important;color:#409ad5!important;box-shadow:none}.btn-link:visited{color:#9b59b6}.wy-btn-group .btn,.wy-control .btn{vertical-align:middle}.wy-btn-group{margin-bottom:24px;*zoom:1}.wy-btn-group:after,.wy-btn-group:before{display:table;content:""}.wy-btn-group:after{clear:both}.wy-dropdown{position:relative;display:inline-block}.wy-dropdown-active .wy-dropdown-menu{display:block}.wy-dropdown-menu{position:absolute;left:0;display:none;float:left;top:100%;min-width:100%;background:#fcfcfc;z-index:100;border:1px solid #cfd7dd;box-shadow:0 2px 2px 0 rgba(0,0,0,.1);padding:12px}.wy-dropdown-menu>dd>a{display:block;clear:both;color:#404040;white-space:nowrap;font-size:90%;padding:0 12px;cursor:pointer}.wy-dropdown-menu>dd>a:hover{background:#2980b9;color:#fff}.wy-dropdown-menu>dd.divider{border-top:1px solid #cfd7dd;margin:6px 0}.wy-dropdown-menu>dd.search{padding-bottom:12px}.wy-dropdown-menu>dd.search input[type=search]{width:100%}.wy-dropdown-menu>dd.call-to-action{background:#e3e3e3;text-transform:uppercase;font-weight:500;font-size:80%}.wy-dropdown-menu>dd.call-to-action:hover{background:#e3e3e3}.wy-dropdown-menu>dd.call-to-action .btn{color:#fff}.wy-dropdown.wy-dropdown-up .wy-dropdown-menu{bottom:100%;top:auto;left:auto;right:0}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu{background:#fcfcfc;margin-top:2px}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu a{padding:6px 12px}.wy-dropdown.wy-dropdown-bubble .wy-dropdown-menu a:hover{background:#2980b9;color:#fff}.wy-dropdown.wy-dropdown-left .wy-dropdown-menu{right:0;left:auto;text-align:right}.wy-dropdown-arrow:before{content:" ";border-bottom:5px solid #f5f5f5;border-left:5px solid transparent;border-right:5px solid transparent;position:absolute;display:block;top:-4px;left:50%;margin-left:-3px}.wy-dropdown-arrow.wy-dropdown-arrow-left:before{left:11px}.wy-form-stacked select{display:block}.wy-form-aligned .wy-help-inline,.wy-form-aligned input,.wy-form-aligned label,.wy-form-aligned select,.wy-form-aligned textarea{display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.wy-form-aligned .wy-control-group>label{display:inline-block;vertical-align:middle;width:10em;margin:6px 12px 0 0;float:left}.wy-form-aligned .wy-control{float:left}.wy-form-aligned .wy-control label{display:block}.wy-form-aligned .wy-control select{margin-top:6px}fieldset{margin:0}fieldset,legend{border:0;padding:0}legend{width:100%;white-space:normal;margin-bottom:24px;font-size:150%;*margin-left:-7px}label,legend{display:block}label{margin:0 0 .3125em;color:#333;font-size:90%}input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}.wy-control-group{margin-bottom:24px;max-width:1200px;margin-left:auto;margin-right:auto;*zoom:1}.wy-control-group:after,.wy-control-group:before{display:table;content:""}.wy-control-group:after{clear:both}.wy-control-group.wy-control-group-required>label:after{content:" *";color:#e74c3c}.wy-control-group .wy-form-full,.wy-control-group .wy-form-halves,.wy-control-group .wy-form-thirds{padding-bottom:12px}.wy-control-group .wy-form-full input[type=color],.wy-control-group .wy-form-full input[type=date],.wy-control-group .wy-form-full input[type=datetime-local],.wy-control-group .wy-form-full input[type=datetime],.wy-control-group .wy-form-full input[type=email],.wy-control-group .wy-form-full input[type=month],.wy-control-group .wy-form-full input[type=number],.wy-control-group .wy-form-full input[type=password],.wy-control-group .wy-form-full input[type=search],.wy-control-group .wy-form-full input[type=tel],.wy-control-group .wy-form-full input[type=text],.wy-control-group .wy-form-full input[type=time],.wy-control-group .wy-form-full input[type=url],.wy-control-group .wy-form-full input[type=week],.wy-control-group .wy-form-full select,.wy-control-group .wy-form-halves input[type=color],.wy-control-group .wy-form-halves input[type=date],.wy-control-group .wy-form-halves input[type=datetime-local],.wy-control-group .wy-form-halves input[type=datetime],.wy-control-group .wy-form-halves input[type=email],.wy-control-group .wy-form-halves input[type=month],.wy-control-group .wy-form-halves input[type=number],.wy-control-group .wy-form-halves input[type=password],.wy-control-group .wy-form-halves input[type=search],.wy-control-group .wy-form-halves input[type=tel],.wy-control-group .wy-form-halves input[type=text],.wy-control-group .wy-form-halves input[type=time],.wy-control-group .wy-form-halves input[type=url],.wy-control-group .wy-form-halves input[type=week],.wy-control-group .wy-form-halves select,.wy-control-group .wy-form-thirds input[type=color],.wy-control-group .wy-form-thirds input[type=date],.wy-control-group .wy-form-thirds input[type=datetime-local],.wy-control-group .wy-form-thirds input[type=datetime],.wy-control-group .wy-form-thirds input[type=email],.wy-control-group .wy-form-thirds input[type=month],.wy-control-group .wy-form-thirds input[type=number],.wy-control-group .wy-form-thirds input[type=password],.wy-control-group .wy-form-thirds input[type=search],.wy-control-group .wy-form-thirds input[type=tel],.wy-control-group .wy-form-thirds input[type=text],.wy-control-group .wy-form-thirds input[type=time],.wy-control-group .wy-form-thirds input[type=url],.wy-control-group .wy-form-thirds input[type=week],.wy-control-group .wy-form-thirds select{width:100%}.wy-control-group .wy-form-full{float:left;display:block;width:100%;margin-right:0}.wy-control-group .wy-form-full:last-child{margin-right:0}.wy-control-group .wy-form-halves{float:left;display:block;margin-right:2.35765%;width:48.82117%}.wy-control-group .wy-form-halves:last-child,.wy-control-group .wy-form-halves:nth-of-type(2n){margin-right:0}.wy-control-group .wy-form-halves:nth-of-type(odd){clear:left}.wy-control-group .wy-form-thirds{float:left;display:block;margin-right:2.35765%;width:31.76157%}.wy-control-group .wy-form-thirds:last-child,.wy-control-group .wy-form-thirds:nth-of-type(3n){margin-right:0}.wy-control-group .wy-form-thirds:nth-of-type(3n+1){clear:left}.wy-control-group.wy-control-group-no-input .wy-control,.wy-control-no-input{margin:6px 0 0;font-size:90%}.wy-control-no-input{display:inline-block}.wy-control-group.fluid-input input[type=color],.wy-control-group.fluid-input input[type=date],.wy-control-group.fluid-input input[type=datetime-local],.wy-control-group.fluid-input input[type=datetime],.wy-control-group.fluid-input input[type=email],.wy-control-group.fluid-input input[type=month],.wy-control-group.fluid-input input[type=number],.wy-control-group.fluid-input input[type=password],.wy-control-group.fluid-input input[type=search],.wy-control-group.fluid-input input[type=tel],.wy-control-group.fluid-input input[type=text],.wy-control-group.fluid-input input[type=time],.wy-control-group.fluid-input input[type=url],.wy-control-group.fluid-input input[type=week]{width:100%}.wy-form-message-inline{padding-left:.3em;color:#666;font-size:90%}.wy-form-message{display:block;color:#999;font-size:70%;margin-top:.3125em;font-style:italic}.wy-form-message p{font-size:inherit;font-style:italic;margin-bottom:6px}.wy-form-message p:last-child{margin-bottom:0}input{line-height:normal}input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;*overflow:visible}input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week]{-webkit-appearance:none;padding:6px;display:inline-block;border:1px solid #ccc;font-size:80%;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;box-shadow:inset 0 1px 3px #ddd;border-radius:0;-webkit-transition:border .3s linear;-moz-transition:border .3s linear;transition:border .3s linear}input[type=datetime-local]{padding:.34375em .625em}input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{padding:0;margin-right:.3125em;*height:13px;*width:13px}input[type=checkbox],input[type=radio],input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus{outline:0;outline:thin dotted\9;border-color:#333}input.no-focus:focus{border-color:#ccc!important}input[type=checkbox]:focus,input[type=file]:focus,input[type=radio]:focus{outline:thin dotted #333;outline:1px auto #129fea}input[type=color][disabled],input[type=date][disabled],input[type=datetime-local][disabled],input[type=datetime][disabled],input[type=email][disabled],input[type=month][disabled],input[type=number][disabled],input[type=password][disabled],input[type=search][disabled],input[type=tel][disabled],input[type=text][disabled],input[type=time][disabled],input[type=url][disabled],input[type=week][disabled]{cursor:not-allowed;background-color:#fafafa}input:focus:invalid,select:focus:invalid,textarea:focus:invalid{color:#e74c3c;border:1px solid #e74c3c}input:focus:invalid:focus,select:focus:invalid:focus,textarea:focus:invalid:focus{border-color:#e74c3c}input[type=checkbox]:focus:invalid:focus,input[type=file]:focus:invalid:focus,input[type=radio]:focus:invalid:focus{outline-color:#e74c3c}input.wy-input-large{padding:12px;font-size:100%}textarea{overflow:auto;vertical-align:top;width:100%;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif}select,textarea{padding:.5em .625em;display:inline-block;border:1px solid #ccc;font-size:80%;box-shadow:inset 0 1px 3px #ddd;-webkit-transition:border .3s linear;-moz-transition:border .3s linear;transition:border .3s linear}select{border:1px solid #ccc;background-color:#fff}select[multiple]{height:auto}select:focus,textarea:focus{outline:0}input[readonly],select[disabled],select[readonly],textarea[disabled],textarea[readonly]{cursor:not-allowed;background-color:#fafafa}input[type=checkbox][disabled],input[type=radio][disabled]{cursor:not-allowed}.wy-checkbox,.wy-radio{margin:6px 0;color:#404040;display:block}.wy-checkbox input,.wy-radio input{vertical-align:baseline}.wy-form-message-inline{display:inline-block;*display:inline;*zoom:1;vertical-align:middle}.wy-input-prefix,.wy-input-suffix{white-space:nowrap;padding:6px}.wy-input-prefix .wy-input-context,.wy-input-suffix .wy-input-context{line-height:27px;padding:0 8px;display:inline-block;font-size:80%;background-color:#f3f6f6;border:1px solid #ccc;color:#999}.wy-input-suffix .wy-input-context{border-left:0}.wy-input-prefix .wy-input-context{border-right:0}.wy-switch{position:relative;display:block;height:24px;margin-top:12px;cursor:pointer}.wy-switch:before{left:0;top:0;width:36px;height:12px;background:#ccc}.wy-switch:after,.wy-switch:before{position:absolute;content:"";display:block;border-radius:4px;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.wy-switch:after{width:18px;height:18px;background:#999;left:-3px;top:-3px}.wy-switch span{position:absolute;left:48px;display:block;font-size:12px;color:#ccc;line-height:1}.wy-switch.active:before{background:#1e8449}.wy-switch.active:after{left:24px;background:#27ae60}.wy-switch.disabled{cursor:not-allowed;opacity:.8}.wy-control-group.wy-control-group-error .wy-form-message,.wy-control-group.wy-control-group-error>label{color:#e74c3c}.wy-control-group.wy-control-group-error input[type=color],.wy-control-group.wy-control-group-error input[type=date],.wy-control-group.wy-control-group-error input[type=datetime-local],.wy-control-group.wy-control-group-error input[type=datetime],.wy-control-group.wy-control-group-error input[type=email],.wy-control-group.wy-control-group-error input[type=month],.wy-control-group.wy-control-group-error input[type=number],.wy-control-group.wy-control-group-error input[type=password],.wy-control-group.wy-control-group-error input[type=search],.wy-control-group.wy-control-group-error input[type=tel],.wy-control-group.wy-control-group-error input[type=text],.wy-control-group.wy-control-group-error input[type=time],.wy-control-group.wy-control-group-error input[type=url],.wy-control-group.wy-control-group-error input[type=week],.wy-control-group.wy-control-group-error textarea{border:1px solid #e74c3c}.wy-inline-validate{white-space:nowrap}.wy-inline-validate .wy-input-context{padding:.5em .625em;display:inline-block;font-size:80%}.wy-inline-validate.wy-inline-validate-success .wy-input-context{color:#27ae60}.wy-inline-validate.wy-inline-validate-danger .wy-input-context{color:#e74c3c}.wy-inline-validate.wy-inline-validate-warning .wy-input-context{color:#e67e22}.wy-inline-validate.wy-inline-validate-info .wy-input-context{color:#2980b9}.rotate-90{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.rotate-180{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.rotate-270{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.mirror{-webkit-transform:scaleX(-1);-moz-transform:scaleX(-1);-ms-transform:scaleX(-1);-o-transform:scaleX(-1);transform:scaleX(-1)}.mirror.rotate-90{-webkit-transform:scaleX(-1) rotate(90deg);-moz-transform:scaleX(-1) rotate(90deg);-ms-transform:scaleX(-1) rotate(90deg);-o-transform:scaleX(-1) rotate(90deg);transform:scaleX(-1) rotate(90deg)}.mirror.rotate-180{-webkit-transform:scaleX(-1) rotate(180deg);-moz-transform:scaleX(-1) rotate(180deg);-ms-transform:scaleX(-1) rotate(180deg);-o-transform:scaleX(-1) rotate(180deg);transform:scaleX(-1) rotate(180deg)}.mirror.rotate-270{-webkit-transform:scaleX(-1) rotate(270deg);-moz-transform:scaleX(-1) rotate(270deg);-ms-transform:scaleX(-1) rotate(270deg);-o-transform:scaleX(-1) rotate(270deg);transform:scaleX(-1) rotate(270deg)}@media only screen and (max-width:480px){.wy-form button[type=submit]{margin:.7em 0 0}.wy-form input[type=color],.wy-form input[type=date],.wy-form input[type=datetime-local],.wy-form input[type=datetime],.wy-form input[type=email],.wy-form input[type=month],.wy-form input[type=number],.wy-form input[type=password],.wy-form input[type=search],.wy-form input[type=tel],.wy-form input[type=text],.wy-form input[type=time],.wy-form input[type=url],.wy-form input[type=week],.wy-form label{margin-bottom:.3em;display:block}.wy-form input[type=color],.wy-form input[type=date],.wy-form input[type=datetime-local],.wy-form input[type=datetime],.wy-form input[type=email],.wy-form input[type=month],.wy-form input[type=number],.wy-form input[type=password],.wy-form input[type=search],.wy-form input[type=tel],.wy-form input[type=time],.wy-form input[type=url],.wy-form input[type=week]{margin-bottom:0}.wy-form-aligned .wy-control-group label{margin-bottom:.3em;text-align:left;display:block;width:100%}.wy-form-aligned .wy-control{margin:1.5em 0 0}.wy-form-message,.wy-form-message-inline,.wy-form .wy-help-inline{display:block;font-size:80%;padding:6px 0}}@media screen and (max-width:768px){.tablet-hide{display:none}}@media screen and (max-width:480px){.mobile-hide{display:none}}.float-left{float:left}.float-right{float:right}.full-width{width:100%}.rst-content table.docutils,.rst-content table.field-list,.wy-table{border-collapse:collapse;border-spacing:0;empty-cells:show;margin-bottom:24px}.rst-content table.docutils caption,.rst-content table.field-list caption,.wy-table caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.rst-content table.docutils td,.rst-content table.docutils th,.rst-content table.field-list td,.rst-content table.field-list th,.wy-table td,.wy-table th{font-size:90%;margin:0;overflow:visible;padding:8px 16px}.rst-content table.docutils td:first-child,.rst-content table.docutils th:first-child,.rst-content table.field-list td:first-child,.rst-content table.field-list th:first-child,.wy-table td:first-child,.wy-table th:first-child{border-left-width:0}.rst-content table.docutils thead,.rst-content table.field-list thead,.wy-table thead{color:#000;text-align:left;vertical-align:bottom;white-space:nowrap}.rst-content table.docutils thead th,.rst-content table.field-list thead th,.wy-table thead th{font-weight:700;border-bottom:2px solid #e1e4e5}.rst-content table.docutils td,.rst-content table.field-list td,.wy-table td{background-color:transparent;vertical-align:middle}.rst-content table.docutils td p,.rst-content table.field-list td p,.wy-table td p{line-height:18px}.rst-content table.docutils td p:last-child,.rst-content table.field-list td p:last-child,.wy-table td p:last-child{margin-bottom:0}.rst-content table.docutils .wy-table-cell-min,.rst-content table.field-list .wy-table-cell-min,.wy-table .wy-table-cell-min{width:1%;padding-right:0}.rst-content table.docutils .wy-table-cell-min input[type=checkbox],.rst-content table.field-list .wy-table-cell-min input[type=checkbox],.wy-table .wy-table-cell-min input[type=checkbox]{margin:0}.wy-table-secondary{color:grey;font-size:90%}.wy-table-tertiary{color:grey;font-size:80%}.rst-content table.docutils:not(.field-list) tr:nth-child(2n-1) td,.wy-table-backed,.wy-table-odd td,.wy-table-striped tr:nth-child(2n-1) td{background-color:#f3f6f6}.rst-content table.docutils,.wy-table-bordered-all{border:1px solid #e1e4e5}.rst-content table.docutils td,.wy-table-bordered-all td{border-bottom:1px solid #e1e4e5;border-left:1px solid #e1e4e5}.rst-content table.docutils tbody>tr:last-child td,.wy-table-bordered-all tbody>tr:last-child td{border-bottom-width:0}.wy-table-bordered{border:1px solid #e1e4e5}.wy-table-bordered-rows td{border-bottom:1px solid #e1e4e5}.wy-table-bordered-rows tbody>tr:last-child td{border-bottom-width:0}.wy-table-horizontal td,.wy-table-horizontal th{border-width:0 0 1px;border-bottom:1px solid #e1e4e5}.wy-table-horizontal tbody>tr:last-child td{border-bottom-width:0}.wy-table-responsive{margin-bottom:24px;max-width:100%;overflow:auto}.wy-table-responsive table{margin-bottom:0!important}.wy-table-responsive table td,.wy-table-responsive table th{white-space:nowrap}a{color:#2980b9;text-decoration:none;cursor:pointer}a:hover{color:#3091d1}a:visited{color:#9b59b6}html{height:100%}body,html{overflow-x:hidden}body{font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;font-weight:400;color:#404040;min-height:100%;background:#edf0f2}.wy-text-left{text-align:left}.wy-text-center{text-align:center}.wy-text-right{text-align:right}.wy-text-large{font-size:120%}.wy-text-normal{font-size:100%}.wy-text-small,small{font-size:80%}.wy-text-strike{text-decoration:line-through}.wy-text-warning{color:#e67e22!important}a.wy-text-warning:hover{color:#eb9950!important}.wy-text-info{color:#2980b9!important}a.wy-text-info:hover{color:#409ad5!important}.wy-text-success{color:#27ae60!important}a.wy-text-success:hover{color:#36d278!important}.wy-text-danger{color:#e74c3c!important}a.wy-text-danger:hover{color:#ed7669!important}.wy-text-neutral{color:#404040!important}a.wy-text-neutral:hover{color:#595959!important}.rst-content .toctree-wrapper>p.caption,h1,h2,h3,h4,h5,h6,legend{margin-top:0;font-weight:700;font-family:Roboto Slab,ff-tisa-web-pro,Georgia,Arial,sans-serif}p{line-height:24px;font-size:16px;margin:0 0 24px}h1{font-size:175%}.rst-content .toctree-wrapper>p.caption,h2{font-size:150%}h3{font-size:125%}h4{font-size:115%}h5{font-size:110%}h6{font-size:100%}hr{display:block;height:1px;border:0;border-top:1px solid #e1e4e5;margin:24px 0;padding:0}.rst-content code,.rst-content tt,code{white-space:nowrap;max-width:100%;background:#fff;border:1px solid #e1e4e5;font-size:75%;padding:0 5px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;color:#e74c3c;overflow-x:auto}.rst-content tt.code-large,code.code-large{font-size:90%}.rst-content .section ul,.rst-content .toctree-wrapper ul,.rst-content section ul,.wy-plain-list-disc,article ul{list-style:disc;line-height:24px;margin-bottom:24px}.rst-content .section ul li,.rst-content .toctree-wrapper ul li,.rst-content section ul li,.wy-plain-list-disc li,article ul li{list-style:disc;margin-left:24px}.rst-content .section ul li p:last-child,.rst-content .section ul li ul,.rst-content .toctree-wrapper ul li p:last-child,.rst-content .toctree-wrapper ul li ul,.rst-content section ul li p:last-child,.rst-content section ul li ul,.wy-plain-list-disc li p:last-child,.wy-plain-list-disc li ul,article ul li p:last-child,article ul li ul{margin-bottom:0}.rst-content .section ul li li,.rst-content .toctree-wrapper ul li li,.rst-content section ul li li,.wy-plain-list-disc li li,article ul li li{list-style:circle}.rst-content .section ul li li li,.rst-content .toctree-wrapper ul li li li,.rst-content section ul li li li,.wy-plain-list-disc li li li,article ul li li li{list-style:square}.rst-content .section ul li ol li,.rst-content .toctree-wrapper ul li ol li,.rst-content section ul li ol li,.wy-plain-list-disc li ol li,article ul li ol li{list-style:decimal}.rst-content .section ol,.rst-content .section ol.arabic,.rst-content .toctree-wrapper ol,.rst-content .toctree-wrapper ol.arabic,.rst-content section ol,.rst-content section ol.arabic,.wy-plain-list-decimal,article ol{list-style:decimal;line-height:24px;margin-bottom:24px}.rst-content .section ol.arabic li,.rst-content .section ol li,.rst-content .toctree-wrapper ol.arabic li,.rst-content .toctree-wrapper ol li,.rst-content section ol.arabic li,.rst-content section ol li,.wy-plain-list-decimal li,article ol li{list-style:decimal;margin-left:24px}.rst-content .section ol.arabic li ul,.rst-content .section ol li p:last-child,.rst-content .section ol li ul,.rst-content .toctree-wrapper ol.arabic li ul,.rst-content .toctree-wrapper ol li p:last-child,.rst-content .toctree-wrapper ol li ul,.rst-content section ol.arabic li ul,.rst-content section ol li p:last-child,.rst-content section ol li ul,.wy-plain-list-decimal li p:last-child,.wy-plain-list-decimal li ul,article ol li p:last-child,article ol li ul{margin-bottom:0}.rst-content .section ol.arabic li ul li,.rst-content .section ol li ul li,.rst-content .toctree-wrapper ol.arabic li ul li,.rst-content .toctree-wrapper ol li ul li,.rst-content section ol.arabic li ul li,.rst-content section ol li ul li,.wy-plain-list-decimal li ul li,article ol li ul li{list-style:disc}.wy-breadcrumbs{*zoom:1}.wy-breadcrumbs:after,.wy-breadcrumbs:before{display:table;content:""}.wy-breadcrumbs:after{clear:both}.wy-breadcrumbs>li{display:inline-block;padding-top:5px}.wy-breadcrumbs>li.wy-breadcrumbs-aside{float:right}.rst-content .wy-breadcrumbs>li code,.rst-content .wy-breadcrumbs>li tt,.wy-breadcrumbs>li .rst-content tt,.wy-breadcrumbs>li code{all:inherit;color:inherit}.breadcrumb-item:before{content:"/";color:#bbb;font-size:13px;padding:0 6px 0 3px}.wy-breadcrumbs-extra{margin-bottom:0;color:#b3b3b3;font-size:80%;display:inline-block}@media screen and (max-width:480px){.wy-breadcrumbs-extra,.wy-breadcrumbs li.wy-breadcrumbs-aside{display:none}}@media print{.wy-breadcrumbs li.wy-breadcrumbs-aside{display:none}}html{font-size:16px}.wy-affix{position:fixed;top:1.618em}.wy-menu a:hover{text-decoration:none}.wy-menu-horiz{*zoom:1}.wy-menu-horiz:after,.wy-menu-horiz:before{display:table;content:""}.wy-menu-horiz:after{clear:both}.wy-menu-horiz li,.wy-menu-horiz ul{display:inline-block}.wy-menu-horiz li:hover{background:hsla(0,0%,100%,.1)}.wy-menu-horiz li.divide-left{border-left:1px solid #404040}.wy-menu-horiz li.divide-right{border-right:1px solid #404040}.wy-menu-horiz a{height:32px;display:inline-block;line-height:32px;padding:0 16px}.wy-menu-vertical{width:300px}.wy-menu-vertical header,.wy-menu-vertical p.caption{color:#55a5d9;height:32px;line-height:32px;padding:0 1.618em;margin:12px 0 0;display:block;font-weight:700;text-transform:uppercase;font-size:85%;white-space:nowrap}.wy-menu-vertical ul{margin-bottom:0}.wy-menu-vertical li.divide-top{border-top:1px solid #404040}.wy-menu-vertical li.divide-bottom{border-bottom:1px solid #404040}.wy-menu-vertical li.current{background:#e3e3e3}.wy-menu-vertical li.current a{color:grey;border-right:1px solid #c9c9c9;padding:.4045em 2.427em}.wy-menu-vertical li.current a:hover{background:#d6d6d6}.rst-content .wy-menu-vertical li tt,.wy-menu-vertical li .rst-content tt,.wy-menu-vertical li code{border:none;background:inherit;color:inherit;padding-left:0;padding-right:0}.wy-menu-vertical li button.toctree-expand{display:block;float:left;margin-left:-1.2em;line-height:18px;color:#4d4d4d;border:none;background:none;padding:0}.wy-menu-vertical li.current>a,.wy-menu-vertical li.on a{color:#404040;font-weight:700;position:relative;background:#fcfcfc;border:none;padding:.4045em 1.618em}.wy-menu-vertical li.current>a:hover,.wy-menu-vertical li.on a:hover{background:#fcfcfc}.wy-menu-vertical li.current>a:hover button.toctree-expand,.wy-menu-vertical li.on a:hover button.toctree-expand{color:grey}.wy-menu-vertical li.current>a button.toctree-expand,.wy-menu-vertical li.on a button.toctree-expand{display:block;line-height:18px;color:#333}.wy-menu-vertical li.toctree-l1.current>a{border-bottom:1px solid #c9c9c9;border-top:1px solid #c9c9c9}.wy-menu-vertical .toctree-l1.current .toctree-l2>ul,.wy-menu-vertical .toctree-l2.current .toctree-l3>ul,.wy-menu-vertical .toctree-l3.current .toctree-l4>ul,.wy-menu-vertical .toctree-l4.current .toctree-l5>ul,.wy-menu-vertical .toctree-l5.current .toctree-l6>ul,.wy-menu-vertical .toctree-l6.current .toctree-l7>ul,.wy-menu-vertical .toctree-l7.current .toctree-l8>ul,.wy-menu-vertical .toctree-l8.current .toctree-l9>ul,.wy-menu-vertical .toctree-l9.current .toctree-l10>ul,.wy-menu-vertical .toctree-l10.current .toctree-l11>ul{display:none}.wy-menu-vertical .toctree-l1.current .current.toctree-l2>ul,.wy-menu-vertical .toctree-l2.current .current.toctree-l3>ul,.wy-menu-vertical .toctree-l3.current .current.toctree-l4>ul,.wy-menu-vertical .toctree-l4.current .current.toctree-l5>ul,.wy-menu-vertical .toctree-l5.current .current.toctree-l6>ul,.wy-menu-vertical .toctree-l6.current .current.toctree-l7>ul,.wy-menu-vertical .toctree-l7.current .current.toctree-l8>ul,.wy-menu-vertical .toctree-l8.current .current.toctree-l9>ul,.wy-menu-vertical .toctree-l9.current .current.toctree-l10>ul,.wy-menu-vertical .toctree-l10.current .current.toctree-l11>ul{display:block}.wy-menu-vertical li.toctree-l3,.wy-menu-vertical li.toctree-l4{font-size:.9em}.wy-menu-vertical li.toctree-l2 a,.wy-menu-vertical li.toctree-l3 a,.wy-menu-vertical li.toctree-l4 a,.wy-menu-vertical li.toctree-l5 a,.wy-menu-vertical li.toctree-l6 a,.wy-menu-vertical li.toctree-l7 a,.wy-menu-vertical li.toctree-l8 a,.wy-menu-vertical li.toctree-l9 a,.wy-menu-vertical li.toctree-l10 a{color:#404040}.wy-menu-vertical li.toctree-l2 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l3 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l4 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l5 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l6 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l7 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l8 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l9 a:hover button.toctree-expand,.wy-menu-vertical li.toctree-l10 a:hover button.toctree-expand{color:grey}.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a,.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a,.wy-menu-vertical li.toctree-l4.current li.toctree-l5>a,.wy-menu-vertical li.toctree-l5.current li.toctree-l6>a,.wy-menu-vertical li.toctree-l6.current li.toctree-l7>a,.wy-menu-vertical li.toctree-l7.current li.toctree-l8>a,.wy-menu-vertical li.toctree-l8.current li.toctree-l9>a,.wy-menu-vertical li.toctree-l9.current li.toctree-l10>a,.wy-menu-vertical li.toctree-l10.current li.toctree-l11>a{display:block}.wy-menu-vertical li.toctree-l2.current>a{padding:.4045em 2.427em}.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a{padding:.4045em 1.618em .4045em 4.045em}.wy-menu-vertical li.toctree-l3.current>a{padding:.4045em 4.045em}.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a{padding:.4045em 1.618em .4045em 5.663em}.wy-menu-vertical li.toctree-l4.current>a{padding:.4045em 5.663em}.wy-menu-vertical li.toctree-l4.current li.toctree-l5>a{padding:.4045em 1.618em .4045em 7.281em}.wy-menu-vertical li.toctree-l5.current>a{padding:.4045em 7.281em}.wy-menu-vertical li.toctree-l5.current li.toctree-l6>a{padding:.4045em 1.618em .4045em 8.899em}.wy-menu-vertical li.toctree-l6.current>a{padding:.4045em 8.899em}.wy-menu-vertical li.toctree-l6.current li.toctree-l7>a{padding:.4045em 1.618em .4045em 10.517em}.wy-menu-vertical li.toctree-l7.current>a{padding:.4045em 10.517em}.wy-menu-vertical li.toctree-l7.current li.toctree-l8>a{padding:.4045em 1.618em .4045em 12.135em}.wy-menu-vertical li.toctree-l8.current>a{padding:.4045em 12.135em}.wy-menu-vertical li.toctree-l8.current li.toctree-l9>a{padding:.4045em 1.618em .4045em 13.753em}.wy-menu-vertical li.toctree-l9.current>a{padding:.4045em 13.753em}.wy-menu-vertical li.toctree-l9.current li.toctree-l10>a{padding:.4045em 1.618em .4045em 15.371em}.wy-menu-vertical li.toctree-l10.current>a{padding:.4045em 15.371em}.wy-menu-vertical li.toctree-l10.current li.toctree-l11>a{padding:.4045em 1.618em .4045em 16.989em}.wy-menu-vertical li.toctree-l2.current>a,.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a{background:#c9c9c9}.wy-menu-vertical li.toctree-l2 button.toctree-expand{color:#a3a3a3}.wy-menu-vertical li.toctree-l3.current>a,.wy-menu-vertical li.toctree-l3.current li.toctree-l4>a{background:#bdbdbd}.wy-menu-vertical li.toctree-l3 button.toctree-expand{color:#969696}.wy-menu-vertical li.current ul{display:block}.wy-menu-vertical li ul{margin-bottom:0;display:none}.wy-menu-vertical li ul li a{margin-bottom:0;color:#d9d9d9;font-weight:400}.wy-menu-vertical a{line-height:18px;padding:.4045em 1.618em;display:block;position:relative;font-size:90%;color:#d9d9d9}.wy-menu-vertical a:hover{background-color:#4e4a4a;cursor:pointer}.wy-menu-vertical a:hover button.toctree-expand{color:#d9d9d9}.wy-menu-vertical a:active{background-color:#2980b9;cursor:pointer;color:#fff}.wy-menu-vertical a:active button.toctree-expand{color:#fff}.wy-side-nav-search{display:block;width:300px;padding:.809em;margin-bottom:.809em;z-index:200;background-color:#2980b9;text-align:center;color:#fcfcfc}.wy-side-nav-search input[type=text]{width:100%;border-radius:50px;padding:6px 12px;border-color:#2472a4}.wy-side-nav-search img{display:block;margin:auto auto .809em;height:45px;width:45px;background-color:#2980b9;padding:5px;border-radius:100%}.wy-side-nav-search .wy-dropdown>a,.wy-side-nav-search>a{color:#fcfcfc;font-size:100%;font-weight:700;display:inline-block;padding:4px 6px;margin-bottom:.809em;max-width:100%}.wy-side-nav-search .wy-dropdown>a:hover,.wy-side-nav-search .wy-dropdown>aactive,.wy-side-nav-search .wy-dropdown>afocus,.wy-side-nav-search>a:hover,.wy-side-nav-search>aactive,.wy-side-nav-search>afocus{background:hsla(0,0%,100%,.1)}.wy-side-nav-search .wy-dropdown>a img.logo,.wy-side-nav-search>a img.logo{display:block;margin:0 auto;height:auto;width:auto;border-radius:0;max-width:100%;background:transparent}.wy-side-nav-search .wy-dropdown>a.icon,.wy-side-nav-search>a.icon{display:block}.wy-side-nav-search .wy-dropdown>a.icon img.logo,.wy-side-nav-search>a.icon img.logo{margin-top:.85em}.wy-side-nav-search>div.switch-menus{position:relative;display:block;margin-top:-.4045em;margin-bottom:.809em;font-weight:400;color:hsla(0,0%,100%,.3)}.wy-side-nav-search>div.switch-menus>div.language-switch,.wy-side-nav-search>div.switch-menus>div.version-switch{display:inline-block;padding:.2em}.wy-side-nav-search>div.switch-menus>div.language-switch select,.wy-side-nav-search>div.switch-menus>div.version-switch select{display:inline-block;margin-right:-2rem;padding-right:2rem;max-width:240px;text-align-last:center;background:none;border:none;border-radius:0;box-shadow:none;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;font-size:1em;font-weight:400;color:hsla(0,0%,100%,.3);cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none}.wy-side-nav-search>div.switch-menus>div.language-switch select:active,.wy-side-nav-search>div.switch-menus>div.language-switch select:focus,.wy-side-nav-search>div.switch-menus>div.language-switch select:hover,.wy-side-nav-search>div.switch-menus>div.version-switch select:active,.wy-side-nav-search>div.switch-menus>div.version-switch select:focus,.wy-side-nav-search>div.switch-menus>div.version-switch select:hover{background:hsla(0,0%,100%,.1);color:hsla(0,0%,100%,.5)}.wy-side-nav-search>div.switch-menus>div.language-switch select option,.wy-side-nav-search>div.switch-menus>div.version-switch select option{color:#000}.wy-side-nav-search>div.switch-menus>div.language-switch:has(>select):after,.wy-side-nav-search>div.switch-menus>div.version-switch:has(>select):after{display:inline-block;width:1.5em;height:100%;padding:.1em;content:"\f0d7";font-size:1em;line-height:1.2em;font-family:FontAwesome;text-align:center;pointer-events:none;box-sizing:border-box}.wy-nav .wy-menu-vertical header{color:#2980b9}.wy-nav .wy-menu-vertical a{color:#b3b3b3}.wy-nav .wy-menu-vertical a:hover{background-color:#2980b9;color:#fff}[data-menu-wrap]{-webkit-transition:all .2s ease-in;-moz-transition:all .2s ease-in;transition:all .2s ease-in;position:absolute;opacity:1;width:100%;opacity:0}[data-menu-wrap].move-center{left:0;right:auto;opacity:1}[data-menu-wrap].move-left{right:auto;left:-100%;opacity:0}[data-menu-wrap].move-right{right:-100%;left:auto;opacity:0}.wy-body-for-nav{background:#fcfcfc}.wy-grid-for-nav{position:absolute;width:100%;height:100%}.wy-nav-side{position:fixed;top:0;bottom:0;left:0;padding-bottom:2em;width:300px;overflow-x:hidden;overflow-y:hidden;min-height:100%;color:#9b9b9b;background:#343131;z-index:200}.wy-side-scroll{width:320px;position:relative;overflow-x:hidden;overflow-y:scroll;height:100%}.wy-nav-top{display:none;background:#2980b9;color:#fff;padding:.4045em .809em;position:relative;line-height:50px;text-align:center;font-size:100%;*zoom:1}.wy-nav-top:after,.wy-nav-top:before{display:table;content:""}.wy-nav-top:after{clear:both}.wy-nav-top a{color:#fff;font-weight:700}.wy-nav-top img{margin-right:12px;height:45px;width:45px;background-color:#2980b9;padding:5px;border-radius:100%}.wy-nav-top i{font-size:30px;float:left;cursor:pointer;padding-top:inherit}.wy-nav-content-wrap{margin-left:300px;background:#fcfcfc;min-height:100%}.wy-nav-content{padding:1.618em 3.236em;height:100%;max-width:800px;margin:auto}.wy-body-mask{position:fixed;width:100%;height:100%;background:rgba(0,0,0,.2);display:none;z-index:499}.wy-body-mask.on{display:block}footer{color:grey}footer p{margin-bottom:12px}.rst-content footer span.commit tt,footer span.commit .rst-content tt,footer span.commit code{padding:0;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;font-size:1em;background:none;border:none;color:grey}.rst-footer-buttons{*zoom:1}.rst-footer-buttons:after,.rst-footer-buttons:before{width:100%;display:table;content:""}.rst-footer-buttons:after{clear:both}.rst-breadcrumbs-buttons{margin-top:12px;*zoom:1}.rst-breadcrumbs-buttons:after,.rst-breadcrumbs-buttons:before{display:table;content:""}.rst-breadcrumbs-buttons:after{clear:both}#search-results .search li{margin-bottom:24px;border-bottom:1px solid #e1e4e5;padding-bottom:24px}#search-results .search li:first-child{border-top:1px solid #e1e4e5;padding-top:24px}#search-results .search li a{font-size:120%;margin-bottom:12px;display:inline-block}#search-results .context{color:grey;font-size:90%}.genindextable li>ul{margin-left:24px}@media screen and (max-width:768px){.wy-body-for-nav{background:#fcfcfc}.wy-nav-top{display:block}.wy-nav-side{left:-300px}.wy-nav-side.shift{width:85%;left:0}.wy-menu.wy-menu-vertical,.wy-side-nav-search,.wy-side-scroll{width:auto}.wy-nav-content-wrap{margin-left:0}.wy-nav-content-wrap .wy-nav-content{padding:1.618em}.wy-nav-content-wrap.shift{position:fixed;min-width:100%;left:85%;top:0;height:100%;overflow:hidden}}@media screen and (min-width:1100px){.wy-nav-content-wrap{background:rgba(0,0,0,.05)}.wy-nav-content{margin:0;background:#fcfcfc}}@media print{.rst-versions,.wy-nav-side,footer{display:none}.wy-nav-content-wrap{margin-left:0}}.rst-versions{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;z-index:400}.rst-versions a{color:#2980b9;text-decoration:none}.rst-versions .rst-badge-small{display:none}.rst-versions .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:90%;cursor:pointer;color:#27ae60;*zoom:1}.rst-versions .rst-current-version:after,.rst-versions .rst-current-version:before{display:table;content:""}.rst-versions .rst-current-version:after{clear:both}.rst-content .code-block-caption .rst-versions .rst-current-version .headerlink,.rst-content .eqno .rst-versions .rst-current-version .headerlink,.rst-content .rst-versions .rst-current-version .admonition-title,.rst-content code.download .rst-versions .rst-current-version span:first-child,.rst-content dl dt .rst-versions .rst-current-version .headerlink,.rst-content h1 .rst-versions .rst-current-version .headerlink,.rst-content h2 .rst-versions .rst-current-version .headerlink,.rst-content h3 .rst-versions .rst-current-version .headerlink,.rst-content h4 .rst-versions .rst-current-version .headerlink,.rst-content h5 .rst-versions .rst-current-version .headerlink,.rst-content h6 .rst-versions .rst-current-version .headerlink,.rst-content p .rst-versions .rst-current-version .headerlink,.rst-content table>caption .rst-versions .rst-current-version .headerlink,.rst-content tt.download .rst-versions .rst-current-version span:first-child,.rst-versions .rst-current-version .fa,.rst-versions .rst-current-version .icon,.rst-versions .rst-current-version .rst-content .admonition-title,.rst-versions .rst-current-version .rst-content .code-block-caption .headerlink,.rst-versions .rst-current-version .rst-content .eqno .headerlink,.rst-versions .rst-current-version .rst-content code.download span:first-child,.rst-versions .rst-current-version .rst-content dl dt .headerlink,.rst-versions .rst-current-version .rst-content h1 .headerlink,.rst-versions .rst-current-version .rst-content h2 .headerlink,.rst-versions .rst-current-version .rst-content h3 .headerlink,.rst-versions .rst-current-version .rst-content h4 .headerlink,.rst-versions .rst-current-version .rst-content h5 .headerlink,.rst-versions .rst-current-version .rst-content h6 .headerlink,.rst-versions .rst-current-version .rst-content p .headerlink,.rst-versions .rst-current-version .rst-content table>caption .headerlink,.rst-versions .rst-current-version .rst-content tt.download span:first-child,.rst-versions .rst-current-version .wy-menu-vertical li button.toctree-expand,.wy-menu-vertical li .rst-versions .rst-current-version button.toctree-expand{color:#fcfcfc}.rst-versions .rst-current-version .fa-book,.rst-versions .rst-current-version .icon-book{float:left}.rst-versions .rst-current-version.rst-out-of-date{background-color:#e74c3c;color:#fff}.rst-versions .rst-current-version.rst-active-old-version{background-color:#f1c40f;color:#000}.rst-versions.shift-up{height:auto;max-height:100%;overflow-y:scroll}.rst-versions.shift-up .rst-other-versions{display:block}.rst-versions .rst-other-versions{font-size:90%;padding:12px;color:grey;display:none}.rst-versions .rst-other-versions hr{display:block;height:1px;border:0;margin:20px 0;padding:0;border-top:1px solid #413d3d}.rst-versions .rst-other-versions dd{display:inline-block;margin:0}.rst-versions .rst-other-versions dd a{display:inline-block;padding:6px;color:#fcfcfc}.rst-versions .rst-other-versions .rtd-current-item{font-weight:700}.rst-versions.rst-badge{width:auto;bottom:20px;right:20px;left:auto;border:none;max-width:300px;max-height:90%}.rst-versions.rst-badge .fa-book,.rst-versions.rst-badge .icon-book{float:none;line-height:30px}.rst-versions.rst-badge.shift-up .rst-current-version{text-align:right}.rst-versions.rst-badge.shift-up .rst-current-version .fa-book,.rst-versions.rst-badge.shift-up .rst-current-version .icon-book{float:left}.rst-versions.rst-badge>.rst-current-version{width:auto;height:30px;line-height:30px;padding:0 6px;display:block;text-align:center}@media screen and (max-width:768px){.rst-versions{width:85%;display:none}.rst-versions.shift{display:block}}#flyout-search-form{padding:6px}.rst-content .toctree-wrapper>p.caption,.rst-content h1,.rst-content h2,.rst-content h3,.rst-content h4,.rst-content h5,.rst-content h6{margin-bottom:24px}.rst-content img{max-width:100%;height:auto}.rst-content div.figure,.rst-content figure{margin-bottom:24px}.rst-content div.figure .caption-text,.rst-content figure .caption-text{font-style:italic}.rst-content div.figure p:last-child.caption,.rst-content figure p:last-child.caption{margin-bottom:0}.rst-content div.figure.align-center,.rst-content figure.align-center{text-align:center}.rst-content .section>a>img,.rst-content .section>img,.rst-content section>a>img,.rst-content section>img{margin-bottom:24px}.rst-content abbr[title]{text-decoration:none}.rst-content.style-external-links a.reference.external:after{font-family:FontAwesome;content:"\f08e";color:#b3b3b3;vertical-align:super;font-size:60%;margin:0 .2em}.rst-content blockquote{margin-left:24px;line-height:24px;margin-bottom:24px}.rst-content pre.literal-block{white-space:pre;margin:0;padding:12px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;display:block;overflow:auto}.rst-content div[class^=highlight],.rst-content pre.literal-block{border:1px solid #e1e4e5;overflow-x:auto;margin:1px 0 24px}.rst-content div[class^=highlight] div[class^=highlight],.rst-content pre.literal-block div[class^=highlight]{padding:0;border:none;margin:0}.rst-content div[class^=highlight] td.code{width:100%}.rst-content .linenodiv pre{border-right:1px solid #e6e9ea;margin:0;padding:12px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;user-select:none;pointer-events:none}.rst-content div[class^=highlight] pre{white-space:pre;margin:0;padding:12px;display:block;overflow:auto}.rst-content div[class^=highlight] pre .hll{display:block;margin:0 -12px;padding:0 12px}.rst-content .linenodiv pre,.rst-content div[class^=highlight] pre,.rst-content pre.literal-block{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;font-size:12px;line-height:1.4}.rst-content div.highlight .gp,.rst-content div.highlight span.linenos{user-select:none;pointer-events:none}.rst-content div.highlight span.linenos{display:inline-block;padding-left:0;padding-right:12px;margin-right:12px;border-right:1px solid #e6e9ea}.rst-content .code-block-caption{font-style:italic;font-size:85%;line-height:1;padding:1em 0;text-align:center}@media print{.rst-content .codeblock,.rst-content div[class^=highlight],.rst-content div[class^=highlight] pre{white-space:pre-wrap}}.rst-content .admonition,.rst-content .admonition-todo,.rst-content .attention,.rst-content .caution,.rst-content .danger,.rst-content .error,.rst-content .hint,.rst-content .important,.rst-content .note,.rst-content .seealso,.rst-content .tip,.rst-content .warning{clear:both}.rst-content .admonition-todo .last,.rst-content .admonition-todo>:last-child,.rst-content .admonition .last,.rst-content .admonition>:last-child,.rst-content .attention .last,.rst-content .attention>:last-child,.rst-content .caution .last,.rst-content .caution>:last-child,.rst-content .danger .last,.rst-content .danger>:last-child,.rst-content .error .last,.rst-content .error>:last-child,.rst-content .hint .last,.rst-content .hint>:last-child,.rst-content .important .last,.rst-content .important>:last-child,.rst-content .note .last,.rst-content .note>:last-child,.rst-content .seealso .last,.rst-content .seealso>:last-child,.rst-content .tip .last,.rst-content .tip>:last-child,.rst-content .warning .last,.rst-content .warning>:last-child{margin-bottom:0}.rst-content .admonition-title:before{margin-right:4px}.rst-content .admonition table{border-color:rgba(0,0,0,.1)}.rst-content .admonition table td,.rst-content .admonition table th{background:transparent!important;border-color:rgba(0,0,0,.1)!important}.rst-content .section ol.loweralpha,.rst-content .section ol.loweralpha>li,.rst-content .toctree-wrapper ol.loweralpha,.rst-content .toctree-wrapper ol.loweralpha>li,.rst-content section ol.loweralpha,.rst-content section ol.loweralpha>li{list-style:lower-alpha}.rst-content .section ol.upperalpha,.rst-content .section ol.upperalpha>li,.rst-content .toctree-wrapper ol.upperalpha,.rst-content .toctree-wrapper ol.upperalpha>li,.rst-content section ol.upperalpha,.rst-content section ol.upperalpha>li{list-style:upper-alpha}.rst-content .section ol li>*,.rst-content .section ul li>*,.rst-content .toctree-wrapper ol li>*,.rst-content .toctree-wrapper ul li>*,.rst-content section ol li>*,.rst-content section ul li>*{margin-top:12px;margin-bottom:12px}.rst-content .section ol li>:first-child,.rst-content .section ul li>:first-child,.rst-content .toctree-wrapper ol li>:first-child,.rst-content .toctree-wrapper ul li>:first-child,.rst-content section ol li>:first-child,.rst-content section ul li>:first-child{margin-top:0}.rst-content .section ol li>p,.rst-content .section ol li>p:last-child,.rst-content .section ul li>p,.rst-content .section ul li>p:last-child,.rst-content .toctree-wrapper ol li>p,.rst-content .toctree-wrapper ol li>p:last-child,.rst-content .toctree-wrapper ul li>p,.rst-content .toctree-wrapper ul li>p:last-child,.rst-content section ol li>p,.rst-content section ol li>p:last-child,.rst-content section ul li>p,.rst-content section ul li>p:last-child{margin-bottom:12px}.rst-content .section ol li>p:only-child,.rst-content .section ol li>p:only-child:last-child,.rst-content .section ul li>p:only-child,.rst-content .section ul li>p:only-child:last-child,.rst-content .toctree-wrapper ol li>p:only-child,.rst-content .toctree-wrapper ol li>p:only-child:last-child,.rst-content .toctree-wrapper ul li>p:only-child,.rst-content .toctree-wrapper ul li>p:only-child:last-child,.rst-content section ol li>p:only-child,.rst-content section ol li>p:only-child:last-child,.rst-content section ul li>p:only-child,.rst-content section ul li>p:only-child:last-child{margin-bottom:0}.rst-content .section ol li>ol,.rst-content .section ol li>ul,.rst-content .section ul li>ol,.rst-content .section ul li>ul,.rst-content .toctree-wrapper ol li>ol,.rst-content .toctree-wrapper ol li>ul,.rst-content .toctree-wrapper ul li>ol,.rst-content .toctree-wrapper ul li>ul,.rst-content section ol li>ol,.rst-content section ol li>ul,.rst-content section ul li>ol,.rst-content section ul li>ul{margin-bottom:12px}.rst-content .section ol.simple li>*,.rst-content .section ol.simple li ol,.rst-content .section ol.simple li ul,.rst-content .section ul.simple li>*,.rst-content .section ul.simple li ol,.rst-content .section ul.simple li ul,.rst-content .toctree-wrapper ol.simple li>*,.rst-content .toctree-wrapper ol.simple li ol,.rst-content .toctree-wrapper ol.simple li ul,.rst-content .toctree-wrapper ul.simple li>*,.rst-content .toctree-wrapper ul.simple li ol,.rst-content .toctree-wrapper ul.simple li ul,.rst-content section ol.simple li>*,.rst-content section ol.simple li ol,.rst-content section ol.simple li ul,.rst-content section ul.simple li>*,.rst-content section ul.simple li ol,.rst-content section ul.simple li ul{margin-top:0;margin-bottom:0}.rst-content .line-block{margin-left:0;margin-bottom:24px;line-height:24px}.rst-content .line-block .line-block{margin-left:24px;margin-bottom:0}.rst-content .topic-title{font-weight:700;margin-bottom:12px}.rst-content .toc-backref{color:#404040}.rst-content .align-right{float:right;margin:0 0 24px 24px}.rst-content .align-left{float:left;margin:0 24px 24px 0}.rst-content .align-center{margin:auto}.rst-content .align-center:not(table){display:block}.rst-content .code-block-caption .headerlink,.rst-content .eqno .headerlink,.rst-content .toctree-wrapper>p.caption .headerlink,.rst-content dl dt .headerlink,.rst-content h1 .headerlink,.rst-content h2 .headerlink,.rst-content h3 .headerlink,.rst-content h4 .headerlink,.rst-content h5 .headerlink,.rst-content h6 .headerlink,.rst-content p.caption .headerlink,.rst-content p .headerlink,.rst-content table>caption .headerlink{opacity:0;font-size:14px;font-family:FontAwesome;margin-left:.5em}.rst-content .code-block-caption .headerlink:focus,.rst-content .code-block-caption:hover .headerlink,.rst-content .eqno .headerlink:focus,.rst-content .eqno:hover .headerlink,.rst-content .toctree-wrapper>p.caption .headerlink:focus,.rst-content .toctree-wrapper>p.caption:hover .headerlink,.rst-content dl dt .headerlink:focus,.rst-content dl dt:hover .headerlink,.rst-content h1 .headerlink:focus,.rst-content h1:hover .headerlink,.rst-content h2 .headerlink:focus,.rst-content h2:hover .headerlink,.rst-content h3 .headerlink:focus,.rst-content h3:hover .headerlink,.rst-content h4 .headerlink:focus,.rst-content h4:hover .headerlink,.rst-content h5 .headerlink:focus,.rst-content h5:hover .headerlink,.rst-content h6 .headerlink:focus,.rst-content h6:hover .headerlink,.rst-content p.caption .headerlink:focus,.rst-content p.caption:hover .headerlink,.rst-content p .headerlink:focus,.rst-content p:hover .headerlink,.rst-content table>caption .headerlink:focus,.rst-content table>caption:hover .headerlink{opacity:1}.rst-content p a{overflow-wrap:anywhere}.rst-content .wy-table td p,.rst-content .wy-table td ul,.rst-content .wy-table th p,.rst-content .wy-table th ul,.rst-content table.docutils td p,.rst-content table.docutils td ul,.rst-content table.docutils th p,.rst-content table.docutils th ul,.rst-content table.field-list td p,.rst-content table.field-list td ul,.rst-content table.field-list th p,.rst-content table.field-list th ul{font-size:inherit}.rst-content .btn:focus{outline:2px solid}.rst-content table>caption .headerlink:after{font-size:12px}.rst-content .centered{text-align:center}.rst-content .sidebar{float:right;width:40%;display:block;margin:0 0 24px 24px;padding:24px;background:#f3f6f6;border:1px solid #e1e4e5}.rst-content .sidebar dl,.rst-content .sidebar p,.rst-content .sidebar ul{font-size:90%}.rst-content .sidebar .last,.rst-content .sidebar>:last-child{margin-bottom:0}.rst-content .sidebar .sidebar-title{display:block;font-family:Roboto Slab,ff-tisa-web-pro,Georgia,Arial,sans-serif;font-weight:700;background:#e1e4e5;padding:6px 12px;margin:-24px -24px 24px;font-size:100%}.rst-content .highlighted{background:#f1c40f;box-shadow:0 0 0 2px #f1c40f;display:inline;font-weight:700}.rst-content .citation-reference,.rst-content .footnote-reference{vertical-align:baseline;position:relative;top:-.4em;line-height:0;font-size:90%}.rst-content .citation-reference>span.fn-bracket,.rst-content .footnote-reference>span.fn-bracket{display:none}.rst-content .hlist{width:100%}.rst-content dl dt span.classifier:before{content:" : "}.rst-content dl dt span.classifier-delimiter{display:none!important}html.writer-html4 .rst-content table.docutils.citation,html.writer-html4 .rst-content table.docutils.footnote{background:none;border:none}html.writer-html4 .rst-content table.docutils.citation td,html.writer-html4 .rst-content table.docutils.citation tr,html.writer-html4 .rst-content table.docutils.footnote td,html.writer-html4 .rst-content table.docutils.footnote tr{border:none;background-color:transparent!important;white-space:normal}html.writer-html4 .rst-content table.docutils.citation td.label,html.writer-html4 .rst-content table.docutils.footnote td.label{padding-left:0;padding-right:0;vertical-align:top}html.writer-html5 .rst-content dl.citation,html.writer-html5 .rst-content dl.field-list,html.writer-html5 .rst-content dl.footnote{display:grid;grid-template-columns:auto minmax(80%,95%)}html.writer-html5 .rst-content dl.citation>dt,html.writer-html5 .rst-content dl.field-list>dt,html.writer-html5 .rst-content dl.footnote>dt{display:inline-grid;grid-template-columns:max-content auto}html.writer-html5 .rst-content aside.citation,html.writer-html5 .rst-content aside.footnote,html.writer-html5 .rst-content div.citation{display:grid;grid-template-columns:auto auto minmax(.65rem,auto) minmax(40%,95%)}html.writer-html5 .rst-content aside.citation>span.label,html.writer-html5 .rst-content aside.footnote>span.label,html.writer-html5 .rst-content div.citation>span.label{grid-column-start:1;grid-column-end:2}html.writer-html5 .rst-content aside.citation>span.backrefs,html.writer-html5 .rst-content aside.footnote>span.backrefs,html.writer-html5 .rst-content div.citation>span.backrefs{grid-column-start:2;grid-column-end:3;grid-row-start:1;grid-row-end:3}html.writer-html5 .rst-content aside.citation>p,html.writer-html5 .rst-content aside.footnote>p,html.writer-html5 .rst-content div.citation>p{grid-column-start:4;grid-column-end:5}html.writer-html5 .rst-content dl.citation,html.writer-html5 .rst-content dl.field-list,html.writer-html5 .rst-content dl.footnote{margin-bottom:24px}html.writer-html5 .rst-content dl.citation>dt,html.writer-html5 .rst-content dl.field-list>dt,html.writer-html5 .rst-content dl.footnote>dt{padding-left:1rem}html.writer-html5 .rst-content dl.citation>dd,html.writer-html5 .rst-content dl.citation>dt,html.writer-html5 .rst-content dl.field-list>dd,html.writer-html5 .rst-content dl.field-list>dt,html.writer-html5 .rst-content dl.footnote>dd,html.writer-html5 .rst-content dl.footnote>dt{margin-bottom:0}html.writer-html5 .rst-content dl.citation,html.writer-html5 .rst-content dl.footnote{font-size:.9rem}html.writer-html5 .rst-content dl.citation>dt,html.writer-html5 .rst-content dl.footnote>dt{margin:0 .5rem .5rem 0;line-height:1.2rem;word-break:break-all;font-weight:400}html.writer-html5 .rst-content dl.citation>dt>span.brackets:before,html.writer-html5 .rst-content dl.footnote>dt>span.brackets:before{content:"["}html.writer-html5 .rst-content dl.citation>dt>span.brackets:after,html.writer-html5 .rst-content dl.footnote>dt>span.brackets:after{content:"]"}html.writer-html5 .rst-content dl.citation>dt>span.fn-backref,html.writer-html5 .rst-content dl.footnote>dt>span.fn-backref{text-align:left;font-style:italic;margin-left:.65rem;word-break:break-word;word-spacing:-.1rem;max-width:5rem}html.writer-html5 .rst-content dl.citation>dt>span.fn-backref>a,html.writer-html5 .rst-content dl.footnote>dt>span.fn-backref>a{word-break:keep-all}html.writer-html5 .rst-content dl.citation>dt>span.fn-backref>a:not(:first-child):before,html.writer-html5 .rst-content dl.footnote>dt>span.fn-backref>a:not(:first-child):before{content:" "}html.writer-html5 .rst-content dl.citation>dd,html.writer-html5 .rst-content dl.footnote>dd{margin:0 0 .5rem;line-height:1.2rem}html.writer-html5 .rst-content dl.citation>dd p,html.writer-html5 .rst-content dl.footnote>dd p{font-size:.9rem}html.writer-html5 .rst-content aside.citation,html.writer-html5 .rst-content aside.footnote,html.writer-html5 .rst-content div.citation{padding-left:1rem;padding-right:1rem;font-size:.9rem;line-height:1.2rem}html.writer-html5 .rst-content aside.citation p,html.writer-html5 .rst-content aside.footnote p,html.writer-html5 .rst-content div.citation p{font-size:.9rem;line-height:1.2rem;margin-bottom:12px}html.writer-html5 .rst-content aside.citation span.backrefs,html.writer-html5 .rst-content aside.footnote span.backrefs,html.writer-html5 .rst-content div.citation span.backrefs{text-align:left;font-style:italic;margin-left:.65rem;word-break:break-word;word-spacing:-.1rem;max-width:5rem}html.writer-html5 .rst-content aside.citation span.backrefs>a,html.writer-html5 .rst-content aside.footnote span.backrefs>a,html.writer-html5 .rst-content div.citation span.backrefs>a{word-break:keep-all}html.writer-html5 .rst-content aside.citation span.backrefs>a:not(:first-child):before,html.writer-html5 .rst-content aside.footnote span.backrefs>a:not(:first-child):before,html.writer-html5 .rst-content div.citation span.backrefs>a:not(:first-child):before{content:" "}html.writer-html5 .rst-content aside.citation span.label,html.writer-html5 .rst-content aside.footnote span.label,html.writer-html5 .rst-content div.citation span.label{line-height:1.2rem}html.writer-html5 .rst-content aside.citation-list,html.writer-html5 .rst-content aside.footnote-list,html.writer-html5 .rst-content div.citation-list{margin-bottom:24px}html.writer-html5 .rst-content dl.option-list kbd{font-size:.9rem}.rst-content table.docutils.footnote,html.writer-html4 .rst-content table.docutils.citation,html.writer-html5 .rst-content aside.footnote,html.writer-html5 .rst-content aside.footnote-list aside.footnote,html.writer-html5 .rst-content div.citation-list>div.citation,html.writer-html5 .rst-content dl.citation,html.writer-html5 .rst-content dl.footnote{color:grey}.rst-content table.docutils.footnote code,.rst-content table.docutils.footnote tt,html.writer-html4 .rst-content table.docutils.citation code,html.writer-html4 .rst-content table.docutils.citation tt,html.writer-html5 .rst-content aside.footnote-list aside.footnote code,html.writer-html5 .rst-content aside.footnote-list aside.footnote tt,html.writer-html5 .rst-content aside.footnote code,html.writer-html5 .rst-content aside.footnote tt,html.writer-html5 .rst-content div.citation-list>div.citation code,html.writer-html5 .rst-content div.citation-list>div.citation tt,html.writer-html5 .rst-content dl.citation code,html.writer-html5 .rst-content dl.citation tt,html.writer-html5 .rst-content dl.footnote code,html.writer-html5 .rst-content dl.footnote tt{color:#555}.rst-content .wy-table-responsive.citation,.rst-content .wy-table-responsive.footnote{margin-bottom:0}.rst-content .wy-table-responsive.citation+:not(.citation),.rst-content .wy-table-responsive.footnote+:not(.footnote){margin-top:24px}.rst-content .wy-table-responsive.citation:last-child,.rst-content .wy-table-responsive.footnote:last-child{margin-bottom:24px}.rst-content table.docutils th{border-color:#e1e4e5}html.writer-html5 .rst-content table.docutils th{border:1px solid #e1e4e5}html.writer-html5 .rst-content table.docutils td>p,html.writer-html5 .rst-content table.docutils th>p{line-height:1rem;margin-bottom:0;font-size:.9rem}.rst-content table.docutils td .last,.rst-content table.docutils td .last>:last-child{margin-bottom:0}.rst-content table.field-list,.rst-content table.field-list td{border:none}.rst-content table.field-list td p{line-height:inherit}.rst-content table.field-list td>strong{display:inline-block}.rst-content table.field-list .field-name{padding-right:10px;text-align:left;white-space:nowrap}.rst-content table.field-list .field-body{text-align:left}.rst-content code,.rst-content tt{color:#000;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;padding:2px 5px}.rst-content code big,.rst-content code em,.rst-content tt big,.rst-content tt em{font-size:100%!important;line-height:normal}.rst-content code.literal,.rst-content tt.literal{color:#e74c3c;white-space:normal}.rst-content code.xref,.rst-content tt.xref,a .rst-content code,a .rst-content tt{font-weight:700;color:#404040;overflow-wrap:normal}.rst-content kbd,.rst-content pre,.rst-content samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace}.rst-content a code,.rst-content a tt{color:#2980b9}.rst-content dl{margin-bottom:24px}.rst-content dl dt{font-weight:700;margin-bottom:12px}.rst-content dl ol,.rst-content dl p,.rst-content dl table,.rst-content dl ul{margin-bottom:12px}.rst-content dl dd{margin:0 0 12px 24px;line-height:24px}.rst-content dl dd>ol:last-child,.rst-content dl dd>p:last-child,.rst-content dl dd>table:last-child,.rst-content dl dd>ul:last-child{margin-bottom:0}html.writer-html4 .rst-content dl:not(.docutils),html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple){margin-bottom:24px}html.writer-html4 .rst-content dl:not(.docutils)>dt,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt{display:table;margin:6px 0;font-size:90%;line-height:normal;background:#e7f2fa;color:#2980b9;border-top:3px solid #6ab0de;padding:6px;position:relative}html.writer-html4 .rst-content dl:not(.docutils)>dt:before,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt:before{color:#6ab0de}html.writer-html4 .rst-content dl:not(.docutils)>dt .headerlink,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt .headerlink{color:#404040;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils) dl:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) dl:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt{margin-bottom:6px;border:none;border-left:3px solid #ccc;background:#f0f0f0;color:#555}html.writer-html4 .rst-content dl:not(.docutils) dl:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt .headerlink,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) dl:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt .headerlink{color:#404040;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils)>dt:first-child,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt:first-child{margin-top:0}html.writer-html4 .rst-content dl:not(.docutils) code.descclassname,html.writer-html4 .rst-content dl:not(.docutils) code.descname,html.writer-html4 .rst-content dl:not(.docutils) tt.descclassname,html.writer-html4 .rst-content dl:not(.docutils) tt.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) code.descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) code.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) tt.descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) tt.descname{background-color:transparent;border:none;padding:0;font-size:100%!important}html.writer-html4 .rst-content dl:not(.docutils) code.descname,html.writer-html4 .rst-content dl:not(.docutils) tt.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) code.descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) tt.descname{font-weight:700}html.writer-html4 .rst-content dl:not(.docutils) .optional,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .optional{display:inline-block;padding:0 4px;color:#000;font-weight:700}html.writer-html4 .rst-content dl:not(.docutils) .property,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .property{display:inline-block;padding-right:8px;max-width:100%}html.writer-html4 .rst-content dl:not(.docutils) .k,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .k{font-style:italic}html.writer-html4 .rst-content dl:not(.docutils) .descclassname,html.writer-html4 .rst-content dl:not(.docutils) .descname,html.writer-html4 .rst-content dl:not(.docutils) .sig-name,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .descclassname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .descname,html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple) .sig-name{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;color:#000}.rst-content .viewcode-back,.rst-content .viewcode-link{display:inline-block;color:#27ae60;font-size:80%;padding-left:24px}.rst-content .viewcode-back{display:block;float:right}.rst-content p.rubric{margin-bottom:12px;font-weight:700}.rst-content code.download,.rst-content tt.download{background:inherit;padding:inherit;font-weight:400;font-family:inherit;font-size:inherit;color:inherit;border:inherit;white-space:inherit}.rst-content code.download span:first-child,.rst-content tt.download span:first-child{-webkit-font-smoothing:subpixel-antialiased}.rst-content code.download span:first-child:before,.rst-content tt.download span:first-child:before{margin-right:4px}.rst-content .guilabel,.rst-content .menuselection{font-size:80%;font-weight:700;border-radius:4px;padding:2.4px 6px;margin:auto 2px}.rst-content .guilabel,.rst-content .menuselection{border:1px solid #7fbbe3;background:#e7f2fa}.rst-content :not(dl.option-list)>:not(dt):not(kbd):not(.kbd)>.kbd,.rst-content :not(dl.option-list)>:not(dt):not(kbd):not(.kbd)>kbd{color:inherit;font-size:80%;background-color:#fff;border:1px solid #a6a6a6;border-radius:4px;box-shadow:0 2px grey;padding:2.4px 6px;margin:auto 0}.rst-content .versionmodified{font-style:italic}@media screen and (max-width:480px){.rst-content .sidebar{width:100%}}span[id*=MathJax-Span]{color:#404040}.math{text-align:center}@font-face{font-family:Lato;src:url(fonts/lato-normal.woff2?bd03a2cc277bbbc338d464e679fe9942) format("woff2"),url(fonts/lato-normal.woff?27bd77b9162d388cb8d4c4217c7c5e2a) format("woff");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-bold.woff2?cccb897485813c7c256901dbca54ecf2) format("woff2"),url(fonts/lato-bold.woff?d878b6c29b10beca227e9eef4246111b) format("woff");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-bold-italic.woff2?0b6bb6725576b072c5d0b02ecdd1900d) format("woff2"),url(fonts/lato-bold-italic.woff?9c7e4e9eb485b4a121c760e61bc3707c) format("woff");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:Lato;src:url(fonts/lato-normal-italic.woff2?4eb103b4d12be57cb1d040ed5e162e9d) format("woff2"),url(fonts/lato-normal-italic.woff?f28f2d6482446544ef1ea1ccc6dd5892) format("woff");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:Roboto Slab;font-style:normal;font-weight:400;src:url(fonts/Roboto-Slab-Regular.woff2?7abf5b8d04d26a2cafea937019bca958) format("woff2"),url(fonts/Roboto-Slab-Regular.woff?c1be9284088d487c5e3ff0a10a92e58c) format("woff");font-display:block}@font-face{font-family:Roboto Slab;font-style:normal;font-weight:700;src:url(fonts/Roboto-Slab-Bold.woff2?9984f4a9bda09be08e83f2506954adbe) format("woff2"),url(fonts/Roboto-Slab-Bold.woff?bed5564a116b05148e3b3bea6fb1162a) format("woff");font-display:block} \ No newline at end of file diff --git a/docs/_static/doctools.js b/docs/_static/doctools.js index 4d67807..0398ebb 100644 --- a/docs/_static/doctools.js +++ b/docs/_static/doctools.js @@ -1,12 +1,5 @@ /* - * doctools.js - * ~~~~~~~~~~~ - * * Base JavaScript utilities for all Sphinx HTML documentation. - * - * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * */ "use strict"; diff --git a/docs/_static/fonts/Lato/lato-bold.eot b/docs/_static/fonts/Lato/lato-bold.eot new file mode 100644 index 0000000000000000000000000000000000000000..3361183a419c188282a8545eaa8d8e298b8ffaab GIT binary patch literal 256056 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

LiF6s4qCmqR)As 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

8(RS%1n6kJInt)@EwW0s*7{=S!BxlrK2Yv$^ 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%0DlAp?9S$v1aS+zA8SL`rj9s3ipCNfYQ`8n;ahbfV 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 zBEc*Y%p$=o63imOEE3Ej!7LKYBEc*Y%p$=o63imOEE3Ej!7LKYBEc*Y%p$=o63iyS zY!b{S!E6%DCc$hH%qGEX63iySY!b{S!E6%DCc$hH%qGEX63iySY!b{S!E6%DCc$hH z%qGEX63iySY!b{S!E6%DCc$hH%qGEX63iySY!b{S!E6%DCc$hH%qGEX63iySY!b{S z!E6%DCc$hH%qGEX63iySY!b{S!E6%DCc$hH%qGEX63iySY!b{S!E6%DCc$hH%qGEX z63iySY!b{S!E6%DCc$hH%qGEX63iySY!b{S!E6%DCc$hH%qGEX63iySY!b{S!E6%D zCc$hH%qGEX63iySY!b{S!E6%DCc$hH%qGEX63iySY!b{S!E6%DCc$hH%qGEX63iyS zY!b{S!E6%DCc$hH%qGEX63iySY!b{S!E6%DCc$hH%qGEX63iySY!b{S!E6%DCc$hH z%qGEX63iySY!b{S!E6%DCc$hH%qGEX63iySY!b{S!E6%DCc$hH%qGEX63iySY!b{S z!E6%DCc$hH%qGEX63iySY!b{S!E6%DCc$hH%qGEX63iySY!b{S!E6%DCc$hH%qGEX z63iySY!b{S!E6%DCc$hH%qGEX63iySY!b{S!E6%DCc$hH%qGEX63iySY!b{S!E6%D zCc$hH%qGEX63iySY!b{S!E6%DCc$hH%qGEX63iySY!b{S!5k9IA;BCH%pt)X63ijN z91_eS!5k9IA;BCH%pt)X63ijN91_eS!5k9IA;BCH%pt)X63ijN91_eS!5k9IA;BCH z%pt)X63ijN91_eS!5k9IA;BCH%pt)X63ijN91_eS!5k9IA;BCH%pt)X63ijN91_eS z!5k9IA;BCH%pt)X63ijN91_eS!5k9IA;BCH%pt)X63ijN91_eS!5k9IA;BCH%pt)X z63ijN91_eS!5k9IA;BCH%pt)X63ijN91_eS!5k9IA;BCH%pt)X63ijN91_eS!5k9I zA;BCH%pt)X63ijN91_eS!5k9IA;BCH%pt)X63ijN91_eS!5k9IA;BCH%pt)X63ijN z91_eS!5k9IA;BCH%pt)X63ijN91_eS!5k9IA;BCH%pt)X63ijN91_eS!5k9IA;BCH z%pt)X63ijN91_eS!5k9IA;BCH%pt)X63ijN91_eS!5k9IA;BCH%pt)X63ijN91_eS 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ͻgzEstkwjq)Y z1gzEstkwjq)ͻgzEstkwjq)ͻgzEstkwjq)ͻgzEstkwjq)!16XYb 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 PZr+dgQO8;Dp|bx6Kf>?& literal 0 HcmV?d00001 diff --git a/docs/_static/fonts/Lato/lato-bold.woff b/docs/_static/fonts/Lato/lato-bold.woff new file mode 100644 index 0000000000000000000000000000000000000000..c6dff51f063cc732fdb5fe786a8966de85f4ebec GIT binary patch literal 309728 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

F}woT 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"bt0}@AlIHaMn zC`1(T7&y%VOCplpci~keiLRQi0pxR8Pa;V)NcIDJh}s|x$GJGI0ZAc=0%zO0 z3rV4Ya^F2b?$=U#OW5jw9(GxItq2MsURe4-be|AH0`t)lUpIBO^~$<~d}!T)6GI%5 zQg{@Lq5npA;3N@;Mh*^ONi-NwKo(g-g;9U)0ZSu-rT2}eku(a$AqmJMOHd&7S01>0 z>##%`qJLAIOgeHDj0?;HV_|#ckosh(TzZlH(@`+x|8e&wfKe6M{_w54ba%Gy^qzF5 zlU|Z^_N}w;3keYRecuBpiy)vVF1Ue!2q>T|g2V+CfrLT8WmG`i9T8+)#!+V&*BLi( zoFJrcf3@6u``%7B!8h;Cd;f17P4cU%Q>RXys&lGtRUJ5sh<3?;cszZB$p*scv{z}D zzU9x5qCvCt2md)-8k?ma<)eVo7IgDJ5&|-t^ak(36a=Hxg9c!fG`{5tiJ(oQKjj-S ziQsyyHN+-`(D?K`p&{8MhUdp%60)^fPai-p^8uK0VaO#50c=R1goF6cX8BL{s4 z!M^qCJ0xUjMKh&_z5}vQz4-tN-=SG>9k7Aw%?CiXaMd1M#btZ|t7M;u0lowZg7yg- z;i^@iFew9j^CQG5Pw7Vx`-F)=KLV|mf;2+yQ<`9(lwJffP`ErF_yQTI-{M1nYEtsg z*gh%CmGtx>X2U^sNU%_-*z1g%eHbm2Lg&en5I>+9y8$wv;WB;zGEu~co(GqqA~Q<+{7smMV3a~> z^sq@k_z8)iO*-nIg(=8vQcoX1FY^K52tGBQo{Bd*LVY|vGDxMwBK?lv0Uf*;gJ_Q) z^4~w6UTBU()+nOypcj3IHmHrFE%G0M1+B^07De_Q^rG*8iUv*5AN=QWY0(s2q5sfE zMuTXJu>Y_S4F+tCdbRz?e?TN8TSR|`+y_WOwqCou?FW8n`;)N?F0*}toEa6Aw6K2| z9mj9G3ycG!M6;!f=3ie0^6AknR5-h@RuQ)W+b$K03X5I?G+rtO6|RC#1GHej#b=8#GoCfi-;|24;c?CsTee5K`#LrvBN-3>{nP@ukaCsS*MtMe!yFGJ#2kR zh^;S1%YD3_y1bo7_JDa+gzW}mgBrrxpvR7aHY~C`{Vx}>e;Kaa z7Y$>Bp5^x*1v6D;>7os~G@^+8!j%K$<-*&bll&{BXwU{7zVtXQE!d#YeNg4R_9g!@ zDKE1@8!!Eg2?TA>80ZeX5C(1~lJkbQR4S3YrqBMt+I zDRPRI2zd<8*qqQ3g<0==g|gz9<)X;cfW@z2-c|Qo`FO|?l>SCGGp|lUyq51 zE2A)b22mk&1m^(}3Yw(-{zgnkzCOCV?S~^0*?#(^aJHWb+Wvj`lMrCRc+n>LS3~Q^ zvh>uDy#uA+pzq-~Fy%qNA;Nd8%lHoTQo(mne8=j=cL6ohqz{H?M=5se1~R* z>wt_>sNF9KvHQo+k{|oZk!}8?Q8u*LA0h0@K+~0CKx_Rh=DvZK^B3?u8)HCa1%CmV zFLN9!TR@Kze7Z>c40`!K0|WX9hKyB_eFhpN5qoy!J_D#0_8IVcEX3YN_8CNTDEnL? z+QiG)dt~UK1-64>K`VEd-8sBBd$05ph-Ev>Tus(gSL`PcV+Q>MV#h*kzI;DH`7PoY z`4oX|7doR7PzQ=tbA&T0`1`W|bfBHiAORrr3aRF+nKjsN~{J|6|**md;Z(VGO+UVN|dSNci1hWQJkMN#DL0?^V=vIXcq z19eoq&*1OkZ|1)Zpz}ztUiQ36xN|9C&aZ?$=Mv^TOwV&O6zD!q?+Kh@I)xaMW#MAM z@o$J{)N%$imM4g()N%(lmWij->?w9~NDcmi>q2)(*hAJx&&fpBeoO)*!imahXqqXSO# z`W>G0yZ3VEsdAwm_$)GPh8LB#mZSIb+Ibu34}|jEdA0t&bpRE{Wv6lH13!?mj7u#( zx8_p241Cff=)J*HSOCBXK$B|wdME@Pk^%C0FSWusV>O&JTw=YrJo3p2>qwNCjn#;a z6R$&ZZ{hd*1YXvxAheV5U#d8@{y>L8gWmH)?Csr)Dk6-6OZUUNj>5XoeIi^-9xc>o z6lxLbyUXOUAJUo)`si0*m+_y1>$vp>p*1QmYzY??^}9~7MW~{O9wPk< zT}Drm+P{ZRE7E0TaEH-dX0UTKy3LHrsn~l1+hMs_Nzcex?3w;OR;Rw}>&y(TkIUW( zXq^FYb{h)d()}*GjQ^S_9a}zrcDjA#e6jeIhJk0*bK$|F#NM9g}>HDgX^g2cQm`Ox- z^k_+zg#OQn@Wzc$s`#Al?7$K7_E7gQ^0tuwYWNeM+YLNLiFvjQc`C{KLjFBr@*E*= z5cNWb&Nciu8H;8M7 zNcc-2gF^2GU>y3L8XVJ|fnyh43?kQETv(}ri`mf`m!yqLitAvWc+Zm)Gtd9jJWZba zG+hAW`@Io9VJ=i*)d&pbBZV$~9QR20M{*p_=OX?m1wKu}|19E&A4v~9 zL=Qsw(o{<2K2y*O;(t-#O%i@KLj7MT>bFbvKOe4snVud{wEqLC9Mn6Q5~7zHR*^mu zc`1tW5?yXrc)jJ?6}Z$tkWN~Fr&)6@u3a_|14se<$H}fmj*+(-K}G;ISVCC~p`<{o~LeC%=kX-0;Na_|tj$Z+K}{{QM%M# z50Ph&`cF&g6(Q-iko5Wx`gBNoV=whLgwV(Hof^Fj!1&SF^9f^*;L#!u$CfZA`9!%K zX&u0CR0Y1HC{;JMH5{=uOhpjK{Y3C*nSOX~{}$rELOL9kK;gHz;gCU3r=fqPiPp?) z9Ubq{U!v;@fuDC2(G}f)%klrZKCU?R9r|;&kapA0`^KjGyXgJ=f|LC04?!FMk=@1Z z{s7n2PEqVByl-KKYfvgpyb$h66y9&}l!$l1@ncFJm!5uUz^od3a{bJ{{J9U-+UD4p!ueHLMgk7Lqyi*A|CJo)&IzFz~{FyZ} z+$rH5U|U%HfC4X(@Z(?`oX>&u?gfhOTa*G+CQ;&tG!Q2@v0Y*@ruzRZ&CxG9SOyjNVHU-yOmic%|1x2%G8T!6c)M+cIQt(1U`Q zZ7*}eHL4u3lH$0kV(sAI(;}Gn8{Zjm6*55I4;zhJFn)VeDltNvVvJF!G1@rxP;5M6 zao9Z-cNZ23uZzH@)K;#~aDu+m0KEk_$n7jbcIj=6Aquuk{eMud1Nn!r9>q{2AxF}h z+K9qAN4R`?MGw6&*U2{!#tk{UEiTM8)tn7qKQj7?UVXufcDz{sb?uC6WAc04XuU0N z>2Xo)5g&k&#vu1N9t%-|FO?v}OCUPa&0y^z_!zDJBPF~iUY=*ITwHRy@Q;N2X!+Tstx)fV+%qt}ZJ z!?YdRnL?~W?p4DZJ4F@pa| zE?c}FBKV)>d`f-lA$=|5cZRahxn1G=kZY&Nx$1WQA>8gXnQSB7u9pj)-x2nDJwGMb z7h!MLe*o7+&p?}H!)qcHzAIk_#|EDa9_9jLoYNiqu8T(xijV@|Gp%{JgLoVWU`ng;U4HCxM8o#^qt=> z*9DbX)CK-UIZhph3tn|7udA*{v2jgES_53f)G& zW1QeSet~_*0nn%DkH>;m*u%nmfdX!q@aGkHiG&{qPhmSZfWMjRkKZ~Y_^V)$EPs&x z0R^3A3Eu~{25~&UYK8UaQ_`H#hUw@8KCct!J^bzknfIiB$nzFxZ6AEef;?LRWryBn zoP+nQbSg57#=%+izeKACUk4Ch5?&(V$H5Z8A6SL!5OC-ZES2StmhvAK>F`_S`BfG` z-t%TKuO~%ZuBQrIrl$&A&{KXo!tuJ6;B`b#k^aK`rzKpbzY1KYzY4rD0{sSoekJaM z6Jj4odacEDPDuHy_+~*4i{x^E>+aD+4j32P#`Rqpa!}tt#d;Kq*Z5~+{Id|emf-v_gk!zZ3*-K; z82=Z}e_FyT2=4ze1g{t9e;9%{Mxft7=mgw2{|O1N6zUCx;8lF-Z`ZTS>A>angKCF% zr&87*MtTv(ErFky-MC+k#O|PYNst!A={I2h1ksy8F`>nm>T#e8`i<(Pzq`KlstQKK zFb=!EEURK{RWgX9>18L@w8m*OhGtmoT35ft!WjY~r-xaB2!f&V^X9=(~Hhudiq>~w-;M-dKvO&300i^3&f^Ctwth0dl5 zZG&+0zAwm+=Vu#>@<;JMgSfi%A_G{TSeEq-pO~HJDz(~ew8d`m-vv$NBW5f3)tTsj zqRbkb?UC%U@xm>c(a7>1398EFXtE9%LH+6OOC_!bAmX}Fh5~BW-{+>r^I$E z-f(`E+J)N<$1MxUxi{f$b@Hydo(0_pwr>YR~{a-NNBhLC>?ca(cu!e_CmVjrrGiR%=P zzPJpivVq%+_F~|lI3Ol@v#tz1J*qnPy^0@@QlDO*!nZK&_ir0)X1xX+&^xr+WIcFV zV=&wB?OA4bc|-TxRaH#6tKQx{p4&}p47%=5oqbZ%nw^YGXTV1v{ewCLZfSS(vR#-A4UoeV z_>+`Y-c{)du_$6jCm)`sFZNMLI_|;78yefIhoi{$C3|fQ?qiWvoEj|c>SE&n*g)Xod+|hR?xLn;M z6mJGQ9O=j;ocmGmZBurLY+;JTPre&T+HZhEMk;bd)pgxV>_Abw zgN{q8mhTniFFYm#xqzKl6PbTgo34Pb)L=HhA5~rw@(248abV4te!=m_iO%-DC7j&e z>IX2To$=Kv-A1n29LecFX;YZ^J zRw{u(gPG)=Gu8N9eb&RJoB2G0Eug_dqP(cvM4tL=%}kE6;KwDt7>U;0kH)-8eJYiX zSk>X$&O4C$t$Pr&LqYMI)hU#TzkQCLAc1u52CNhf*<8YL2P<&_jvh)ZnL9 zIb0ZqB>u8f3nU^yllC`CpGK;URb(z$QE=T(>G^E%^U<92NAtzX(s%djh?|{W(9y_z zNdN)o=8P-}Sg6R`2%{29ZRobt;NXAvRq<7}hx?-$ndTi|;6wFZ{%G+gSuU0;u`^cH zVb5Rg_ifrJdbOhXvp?1FPP^Jb%ed30?h5qMqo~J7!h8~p3glwwRt(~!>V%3;*dag& zkO-2L1sU_i4tun3_mAKG4;l+f_6490{XRJQmrgoG+SJ;$`#hRZ|Muy0sUdTqBE5ys z9QTi+(cfsadAIgtao-XTjOTQV@1eSq0|-35|H3^7e;8=-hy*CwK1JQStHSltHsT`O zTsRX|Kkq+GCmmNpn_h#c?*me=eWd+Yy^fI!^4JiVa`q5s6?24tUsXc1>)z<_C-sb;gQQCNOV>2i z^<(-pOsn%po^-Y4M={2(0>dGo~2X3JF*j8Y5?a6?kTD9|8eZZ z3*z`Bj631z3J}5l%~>N)T)u-EYb>J5jE!$X??>HFX4XMNr?W$CjKai8dmlke*8oXe zmgNq+P6{6*@0T9iYc5&dT%_k^*2(4K_U=1iEPy=p0AfdphFA-(K8)wq@JB9(%7+D( z9bLk0UO{^ZcWy;J3@N3pKR1`*&mTv5eZILkPSt$?gsU1Le(xB$2`<|5AhF=lW*qI z>D^)tkR6a`>aqEnrN2IRF{+Zqum8|?>C|omC*IMBt|~PLn&@Ocl|V<|Vau$Lfwu&q zSis)2>0RsJ&U;y)FZXaV&NQzeysBon7H(t7_uAZjc<iJ$ zI)_#ZYHS=}MURIp$RB2lX$KA)go7Yd+(RP+N`Sx5Q{7IZd<)b5p(mi;XP7O%HF?@U1whCpNH;K4 zwgr3YfuVV6DE0m)Q!tRbcetC^?HdMNi-_le>*N&r$_>9M*wf_Wn@&G;sXDWRvtW z2*sLgV0JK#J1og^-K@?@ay%)j)U`H_@`vb$H3@FN>p1M60Op9AGy<1;%r9Mu!;Jbu#Z{i0hN?InnP~AmccK)rYy%dBNLUdQ) z*aSW1KKn_em1d|m$!D+~>Z$UB2Q&AbTQ zM%_A4xh>b9d>D1Jo2N7HU#Q+r=i z0N7DehMiizkf*Ykp|?N{Zw>H@nmAmRkfiQ(Q27Qxcd7>E6$i8OlMV@Xxa*0=rfMOL`KAVHn*oNFpekgXvlg5A|lvA1_Gyq zAgLkGOywRsK|3D(ids0SeI)zON<@XNPN7jLQ2*fjtSzV|(RyI9c!|#P(PwU#qwrtO z4GINYun2N<@+OCj2@BhvYa&u32eCo)irhx_{$apkd-Pt@%}YAiFQcG)pA^HjP^tiP zGQP&pku(kcl`Z2~iLEiH9&g<-`W*YZW}lmg;uXfXgGe(2J$6^CzwQn`)>L0UY^d(A z4>==Oq)IuoVg_$1E(|5}S)fnbgAPgy2>R_iQcS<6H6I%VOiW*I{d$w!0#`G{veWEy zy|~C$?kbF^eQgUgZ`Qk z!(S>$G5MMT{g}VBM^OgE8d~J}1Rw5QBjS!MMIDY%`rt|Oz{2Zu@~6Iy>x4&L0f4`_ zXi9)sMW=LO!KkIj`?RVa^2#7o@405W%th6DQUX(SI-kn8!EbgG*huM-nE&+jwsZNJ z@+Z*fe$owdu(kCI@9%}u6JWS5ssefwNHGqM2n8q#koT`s@xq1NuTIx7%iV$#_E9S( zpMQbEMR;wI9up8g>aqnNRS`ZS{!j>(bYI7J<2;Mkhnwb(bW;VNQvd}_s`F*}i)iGT zXMV4)P3AP3D!(7R&^6HaPvAVRfV$Y+L8nFIW;w$u1jld|eQmiVCUgR^^=CmY+$7ob zZrFjHrnZ9V#9Qg9(rxcB4!;7<_d6Wan5TZ)|gxs&Oa7y6-q(klzf zC;cBX=-*v703}~H?6K%oNO zv@(Sirz9&Bt!F6nIV^cOx} z=npjq<7X7gx4PG#9}8S?PN!tAjU##OFuQJr8)9C`5g$Ktdb=ioUO|Q{ROPa=UnOzd zYjx~;-`O;lga|oZtFT^50SkpPm3&-0u2TJx-yYIexK82fDkT#IG1uXp2%c7@<}7T( zS1ii8LY@oc9%X*CNlP4&bx2YtE#JtT%KVyZpkSs+tSpe#NvfZm3LPu_juBqpL1hg8 z(t&kV7F#sJg_T#!84$m7lg$=!&b1{KHu#APXsF)OA%PS-HRAd6Wj&~}AOjdd<-WKL z+L!AQ8p(Sa(+@+;H`w5-)a!S|x8hLJsCY0>s40+Sw-R6HP^Z^W17V$4!Y?lF;rM6s z+-iepMTo$0mk$#@_{lpeEu`(6N8gt!;*Jny?L}jSlVzJvNHg)ch zh^sQxQbT{#`l*cDP}W&u^7u0QF?ipVWTA=kY`0Tw)cyTZd(RVW zGfC1lvtq#FcPw%%PMs^Ci50S08InReSpqn-O~Gi#|Ak;e6sE)S?0ZeTOTOweqa2)I z4L|YtFC4o8Z(i)B2eg4%9wiKY@%x{Hv?t?CU$PiG<_;=HWaK8w9oy*}>=^taEUe-$ z7$miL24<#Z^rq?M6#v2b;-`nd9#DOVw@YY%dwckO9o&%vm`#7TqF>bGVUNq~K+|to zExqpRjtY%?1$E8}uPFLo1UG6=Y%!ZogyD4^qd!J#x4*{MevkI@!EW{?Tw3Jx-SSin z+>r0YM6{&ujX;5`9)2!pDyA{bp?Q8vdIMdmAsMJ*yyXYxiF%Y?XJYSdutI<_2av9{ z$e!ciLE&gmqsKxtMSE1wVDa1O4kEu!hXm;2tL^PQI6(fvgEnZsWict)TW@(9g-@KD~$u|ZB-NkxSC!9k|e@LnSWV9pBA zuaHg-RGHel7F5RtLhSLc%G@Pbn;Y2;or&h2>C=jV>RLxaR_*@T%=F%2bP`AOlScF2 z$Y1!M;I@uhW-?ms+1Epl8)xT3@I?%IsB2I(!2Q3`{%TaV))tf+czE22VMPZ)71o~g z7|@2t07Ouh6X{jiTgQ^Q54NriAC zRVhZ8V9d`)s_bf1pRav!qZ8G=>GWpHiaJ`Xxc2l*X@|RW64Gdow|@!AQ5f+B-xyY;f&|z+UqlATOcG|R zPqrI+N%@vsXS~62eeEYWmY7c?YkW~lk#|XB3Xku~aDVgH^^VyHD7Z#-+MEm?je?lA z3>MjG9o87>5Z)yezZ1DFgWjrVDdq?flbE9Mba?4PN?hQmaZ565NcPV1Ea>dlSrFO~ z=Pgzcb&+Nq8fen?pC3#D%FaC%vLrvN98mQChk?+;&v^K@Ofx0-zZ&2?s63Di5YFTb z=gRr?H8MtfI|DwHw_>YnlDA^tbvwI>?brs^=|ti1$8q?$qce?a`uL+5Kk6p#*B1SyBFXr* z+E=kxFw{9?k^M|5J1T*0H2*Qh*stHmv|^*EvUJjH6u^|}zD_%3{JI*cHSQ>VdjEB^ z?{#uG@IOwFqpsAqKe0Ff@{{WgLG+CZB~{tRqLs|2_^Xr>F;5ZEX{iVv&cytVm{Tp4!33j>9o&3EM`qs+Nf7Xc3p*H` zupMN_{aY9ftdtsn_pu~;9rw$#M8=v8^m71RNCoT(FC=hJwi1vd>WvA8zI6CKr<}68 z$!#nTA4b`MJ3J!5H(0`LULAlcumt|)bg++~H?ZMg&!9_*k4J!X^nlmRc2ROXmq}XHlir;s@Rdx~g$IfV&cFkSIdYzSr zY0yI0B8yifkK{z(gvUM%5-insrMz8A>8lR?c6sgV#E5>K3GZ12Da5#gjeh+C?^y(i ziqDMUFFI!EChjsoj$WE^?E(Q0|H(3t$u6ZLh4EB`d^^%WsnxF3{uDOl>XHZXbk>LP zJL(L%)MDo-l`)VS9=Ru@&=axOkX73+cP2bdFjVNj(S8)8SQxpIP}#7*At-RIZF>?GUT5hWkY7FnqU^y3hfevaQr!P0fQ4Ovw^E6+vdU&`b4R?d1+rgdRB6?Y!>ete1=Zkz+ z`(^81_q|yxKJU$G@)2_Tap=a&L^+Caf6r&Us094mE&keDZu>!}H8=hSdKvRG9@V@I z@1ZKmphAD>MGJ@$L>fQ%y~EQdDLMhZCwU{i+0QE)nP&Cnh5Xuwa206YT^^cT2a_h)AJ zc}cSg%jQ!^0zq-`Srcs&%W=iy)B!=kRW%h%SV=(%_Q(G~T$2B9iUA~N z)c;KpEKr#h`XQqIf&1$|FG|UwR4P0`*)OpX>1;(LRr08-_%Y$$T3ev=Ulsw>lDvvN zbDD@NW(q}n*;cHZ%dW%1qydMB3jAUhx%I1n^EBu-ST0KSFBu`o3SAwRU%zj)YWyUP z>mAlFwo;c&dBIs^x&XPn%)jgSIi*Fb>m6umJW%H(ev#mM7XMF-onpR;HGq@lMlS%VK;$Ht7y%H$>;9`4pkPSCL+G0aE(9XYI8= zK1ozR7?S-`RRz+kuu7~)(R~mMM7U{`cUm-~_{)<@TOHyC^Uhu<8#2HfwI1x#QEwG19&YCAkyk1u}s#!tXJ@z-IJONT5_FTSBf2l$BGs&Vjp3fT()~sPf z-WXLIDaLaleh@H0<{b(GBCe2jDe`DR-4lh+^ZV>8tv|NS;H{RpZ?*0yNTa`r|Apx| z?8B_}S9%mQ6?KdK4c=cvA-q$eyEIS*P+CT{3nvc^J10LtHYXD_mM}w=KDiHe=^g0o zjDT@1AN}q5Ln(PIe7!a^nlbPS`>E%N{y%?b803&}E%v`#ET)rx%GhxIH1V?)s7Cl@`EpJB>vaCZ7?K0zxW{#lGUL%DGs|X8LM!^Lq%KaGMXXbyioI(7U{rVA z`*7C3emK)WP%I@>dYNMEp3nlHr2u#7{GHDRQ@;G3U9G(y+@af7Dxp`2|7b5u{1Yym zM?zjMB{XAstPFXIb)iPEghA?+gJ}B?XFkwHsKv*ZtmxM(662{2g8$3qcZ>I-k`q0^ z^%<`-VquGmhKACX#mPVBMcxz(`XuK)*7cV>t41pj|N7&lnFJf&GstY~evRfrJGu>? zGRRC;GcS$#Nh${V5{5xq;pq46gUVB5$gpDoC;|h_lX?c0HjiFMsC-aFzWt8~08s8Q z>!IhMd4(msjzbzCgVO_Vn#=-Bp{e>kWIanEg+9^Vw|yYcZSQLY!|h(vL%2>24(>S2&q! zyaS-qThrrionWOTXQf|TuQBVf^tp4x+)&6Gx92*+mfS@PiK5#3a0PFd=eT|@M#`EvYvnKZcbW-}b~@5>Oazp4YD~P{;!K z5o9cX6ZKTT+OAdA!9RW`8^NYs-N2`swSHP|@h~kTFT*l4i#wYGxgz9mFC-YpygpDD z3P6D0nzd}Ilc?xd$u!h6a!HR-Iu&n@j70S5ZT*Yvp{gtPuEu=yCo)Lh#?ID0CMs@z zk)||b!HThgfZqImdTfI1VlwDrviG8^@72zT$GQfoc{$s*zU1U-QZ{0i8!p9y6PHI% zog%W63TNs|)>-+8O!y=R!3ny5O8?oIf{los{bW7fOp2}=mo3{xu-#IA3rlE+ly$@H zY27Ueo>mzvFJ@<3=D)Gdfkv~ADU5>#^+mPS@zNIa(uWKURo>>UB3UD$WonuMi(ivW zlW~iKiN8x9bLLw-WdIDCo1igd!ZIN=#SUTg5(z%l{Zp6Y$s@-_)Pl%~VJoMdy0Bj}F#B&7;Qh$&=9(FU1o%rX_tI_GRnn@5e&*0YRnH(J$=? z>angZTjvVn^p2XS;|>hQip4AEbaanDX#zxX$5~;;8bvCk3j|_x1WF@X%oYx)Sx)hC zejlD643-O7V)X)Noxig`99c&0kst?^(f;ngDH}5}8)nkWtOw#6UqpVKZoU_o~h^owiE;r`h1j*r0 zV^GAdm{SM&A@+3pPVlbCC@5KmmAn*ODmi9rUP--W999|^EPov-w%L>GKetQXzlbhL zT#u2GWvvI?y?eOEQ|9>WFC2lZa&96o$c0z49vA9WPZh^eCYuvz++1Fv-DEXH+a7v>BpRn`9H!2A1d zwzIRfm%le`FZWl#g#|zWsd4q!^q} zh)=#>vs7vlacMLm2H0cr4x7BsX=I%=5B-}U(3F$0-soQCgc^>SVEVD~%UJdN&8Bh7 z2;26Wua;D1Bs&@}O_6v^l3Lp;)}MU|3kj~UZa`HI?2F7+L5{y zgTI8MghY3AW^N20g{dD8oA_WM>z>-f%3VUWKw!;ik#lfhP&kUfhGi&g&Kgmm=~+5s zR0>s_l*`H2SQ@s;i zdoK`U`3{^04uF7Fp(g4k9kwy+LGLYiH)hP22D88LEi0vLM?AX=qmzTHFw&cgl0yzsWNa~D5n(flQ&_byc=ca z|J9$ixbwHI=WE8Pi)%U#wdN?YWX06!Mh}VCNf^QZ9JFoLvKSKgNO%?!+%699Pr)mm z4l6K}ebJXkO`8XTp^Iw>#;sd#@m{BBK1}{>TC+37lJArLsT-PVbQf8J<>u5K&3ZN? z)?O-d(0L{`!Kn0@@OH?W?Q1SC;|owRU3XthPCp~m-8lHdlkEQWRE1p7uVS^QFuKIpD(fIgorg31mZ_H~#U@N;$^gIs=u zD9RKhWgh1U^(kWsE2NCe(WJ&qGU4sN&6q4ZRWgnCfyXmUCol6vYr0$qj3JqC!<=B7 zg?$<#lryl4>$>9q9i(AJEuxc2VH~m*RzK5! z;s5(H&JN~YqVoDm2gJpmT7KTU-t8SP1m4Egg%e83xx)7z#>&s}K4MW6q}&ESG$)}( ztKY?iAY|5|X6q?bM9n{=Q(R>$6`G{F)~I7Ewz^=gq!~na?+8JhEo^f=Z|&V=eDf!W z1#sZ+(so;6Z_y}wIZoDdoslzJJ_;w{2x`Ns_=z(-|BEax`GI5p0&wVd5_JL+t`EmK z016y#K!jQELT1>$+ALj08;3mV%bmz8a3o(Q#_uW)?Fry|6*Wr_LV{P6J@|Qk_3qut z$Q}uF8;vD-L`NO~#}##nOWc{(9{Uyv{Xg_|*RTAy93PO@ad;M$k8|utEZ7Zn0pU-i zx*!P4stHA;UYj>kBVQ$WgYVnS6hr}rG@isl(0NXl{m+WBo-n=7qvW1l!lhKu4$;B@ zk$eEe(SNEuNI{%kW$582vvSabC#n$^0RB*j;owRU7;&dK*t)`mnjprKlZTTSdq6Hr zij`D$JOxzq6FLAN+f2{QZ!@se{tou*EX(^=hl?N&rY< z1waLoMn4*(*ycdL*5Qdgqw&o72L6<${|Q`{>>;F>aZuWiTd2lV`Jn$#k+O*BTln+n z4w>0X~!{f}j5n!@x` z4#J#9VRFgGlQu(!`fI{?JxEiw{sDRTw5SV@R?{8de> z^S3t(gMsV?(yo>eyn&=FEURRJ<%Hzh5y`=Ni7SJH_RDS$vn$6XK#}&`0_LxAN88uk^)^zfH=odc zr=YtA_FJ16%V#y1V)4h_>bZ95>N#`8y=ZDK+1ERQSL9l+i?t2oW%lj*l-hGO9DrpW zb?UdB)0tt7&Y7apNN8&LQ}4^Rxpo1J2rp2g$?*P=ph&l3ntL{GV}_ zk_lps=WV+|;~wXwUL%r&TRsglI+o}^yWDZU4f8}A;M)11e13%oq5R<*KW6_9LO!g) zx~@d)l*xBN+xuJ<#_bwo-@<`ubcg_$y$-539uZWM@I4UH4qro~SK!j3W5h1mu((;? z+z#_O?qT%ULS^q)ai@}sVFRF$j-RTN*K+!7KaOWR!C3BZmm>8nCH5IEYf-<)pI3@h z;^)BkI5{0|cb2Zcy!BF&CM&_pPxIN)p73eAevjTRrRo&z!G-oWfmphz`D3q|W%hqG zQ~}A?SJD-83Bh_m!A^{|dlsO>C^PiRfB-E}B4;j6N1vY_`hsIzW7T(Fnu zRsZaP!ucgO%kdTdD!(IcqU|E*tJs$StcCfID<1#NQ2p=b9Tt{3(i)r|Pkp^DvCM@x zTIop7VmBApj3^RAF}ddsS=XkqW;v(g{4Tnt@=lpI>k9fnH*m&cjN)11L|vT2C4poA zh+dV*^gud>sdl^lNn(jx)>d~Bd1e3v`yg`H-8M(#RQ&$JO~}=%xj6t(yu2UVZaQYf z{nMF&PU34F-1{f@1n%JlqZZy7r63E@?dr)w|DVOIvq$SxNC5xeE&E^o-tDK#ZVcWt z;Bv(LB%P^shB=IEul)OE`Uv8EJgpJ|~V zmIy)&{nEDUOnpLR4#bf+1VwagAHi}4KN#)~cetJx0)JvAOFBWbnY=Ksvbvp$$-WG; ztSt@d(#Ws17po)1CXED*ImX`CRfMkgH?fy2l9Aq1-G?wFExJcq^jzTPMu)lojiKXIas7O=>kpW-DG zoq_(xSYdax_?6zUeEr`J=uW3-eFg8*U$afE^ZhE}{Z$7mL$)<@R8ERebb2C}9m9@i zQ+yoK>#fWqwsiA^oZasVV?tcar!sSAHPdV-=?S%1txlt1WK-ojtovFMml78|{en|h zwYIoCW};Oj^_!-*JH7e>sru`8yS~EgRiVV0n(5og`s6tq7E#S&SoFRf+;*gQ#{+_P zo@Jlt1#jZjgRbfsp3ZvfJ>={)$|zJzU96+~wB@hYb_k; zIWD1)E*r$8i>FgzAS)4`GE(mGAIgzGiTVYS&>}8KG?Yc*=ny@fzbZEPO)}h$MO#ri`*z?nA_L59YFK&eJBW)Rc%Cf2-qvf9h;&bGW z{>CXj9-XL|f_rOvjToV|M&b`SS z!JK57YaOy~G_%iH+|kw9ZLmaJAnuhZYw_inE}8IW?N3ub&#q4LGaz9R#=}B%dP%5$ z4Z1TTKYyitJHE`Rfj~T8 z>LHh3!JI2kH!USK5=i$8U&BTMzx;{!1L+#??rUWW1M!IlRf;G8;TLO^6`V%}#O^!%a^>5FQ>aY@3c>b za)e)-gOj3Bx@t_3XTxVv3`rd%8kl)jm$P>+_FQHtIwu9g`^ZoT*dZ{zzoSZN&dRu8?YFPYZZcoF zZnDG1=GkMf;|;Oz%}(6;6$=XG2A7fBm}{y}8nBs-2sB(zYe(TuXLfnACOil%SRE=q z>X^|4$=KC7TYiU3&Zntebk+0s@)At9;cyG+r%bQBw^?fCK0{))SEX55g>`q$)T{e5 zlotQnFyDB{;@_Oi_*|FO@frQz)yI$-j0-xIf5YO>JgdD@kIW5LW-^`W;dZ%weaQU= zJF#vekj(YLQs`iw#x~VAl&QdrA9@rA0TR)YlQk-KswuM10IXfJn($|E@JRsU0v{#A zMG7CehL>uHMzMXqQ<{8N!Q;H9xaI#mb+lS`Z1$rzkPxsSN5z zr~Vjo7hQkN?!tM$$_H~qK=`GKBUGy*`A3z~73>%xERbSYz41@K_f^tCfY?}o(gf-m zap2iI&h(Sv?lTFd=teIs8;y>3=AT_f*r3Gp zME@1~yux@NlkPw5`|leaFo3yBn5HAP8}3vRi+3?Ju65f6g@k(=9uVx8fxmXZMr?Ic zBV;G@tp+`whw3!KjTs);|2hAIpDIEN z8Qf)b@5y6PWKGnpi!1`n=eyYa>qdK#lX`FDYWxjnQAu>T#pCpHAHgTkuknvG%&HbP z`M1sXt69@j|Z@lK-EAGO6qv~lF3uj^zxc{gbk)r|gh zU6pptEQj`q*g5%Od?Ko9KI`ap$S%c$t6VLStlAh~&r46vvv@Bg{|XlHQre8SVBF_H z&jY0;Oi2v)&djNPMTyQS_DJ(gjN<>hWG&yRSQG->CJ9aA1M;cxNXs~^FqyAz}4{=KTy?r@9VlU z$t7f$$~))a&ee82a=|T|2Sl?dA4Risk2gs2Shq+q?4B0@ zE>rM-jU~=c4)|VNwXeWdd@E(a2YM#{VEieO3I_m48>rCVWPDbj@;RcY?NXv$ALXx4 z03zO{e#^2BbN8kIWyJZ|z)5HI0%a6Ye8acy_I-C0CWAMpc?s8Fil3?;@Y9BlSGB5o z%^&vD&7c3?Pji^DW9>UP_Es`8klh;u-lHJh?{ih-8xuk^Oxf12W#Uz+ufOkxJlqaT%^s9b(nOD{3_rX3&jl66H zac&k{CH2E)XLfXOaCA2RhwWC+-2VPtkXKt36^f*^O?At^kt}tsKYm{YNqwQb#LtL& zmsyN8#s1*lnr@44C@Os@W$E3=DPC9P6&vn(*sXja(#$?$%pQ(dQt5k)Z=^Bfe3rRE zwNd_>A0WqMH%W(Q+k(n8V#O$bIWc`QG3ijR7ERkw(gR){lTg!Q`0AQ7sDetskpAdr z@=ny=hVl^cF>CltskJtc2f>3Xg#3&4lu)d3^t_?{p6R;(d(CGJVXMOd)vSVLsmDfx zQZTwFL=N5I%p9Hmg@#y@%u{ia={AlHT@I&ZtUYs5j=aZ@44w&t&5fY=_1i=8B4^nX zned`Srb%LsfsE+SNNBT@(0q$15b>l`{X*Smyz|%6kMAI-_vnYSwWS&d-4_4fr?Mcp z7x2B?+25ic=igp5jxEAcpRM$3k(ZnOhj{O~UakVFNw`~p5@+iE{F*pOE*%-ZN&TBT zDoDb*CNd`0{R6iQag3{nB7oM`*}t80?F-ouC3L7?()yE`-|FyN#n;~is+O_D|LUp{ z#8#hbC($%;bClLFpFkM7rK_;{m9_c#Jx(Ij`aN$Lyx=~dbf!^l`G_fAdTv<9)v_}+ zl+S8|=YG7TCC@>$O?e*;3>GyZuyWl0POgXG$u(b29yB$LRvxv_SD??E*`6I1RBA}w zljsAg#;jd5o#At`AuSG?&jS9P1IntCr4v3I-6XY>RED|5V4Rk(emNWaKyCRR6lZz_ zyOwbDHEnYy*u^ohU!6@yxZi20882D_3QQvOJ7C(9g+Lg>^VB3+U=-(}=k0mD@P>KW z0O|F~8+;_kKvX2PJi~5R31j&^Ve8}k?Lyf-obgn||8lK~Z2Aj$IFH(88g+x&mGnV! z<+ss6@oTojdSjXV!(to05{ER2JL{$-N4q46{h?QJqo&-^6+Hz=?VV}OCCL|uZ516N zFE!TY+LK@?#TyZkpWamFz%kE3>(^M-a~RBXD}#>^NR6ZRss8-E*j9Xu@i{Ea3vAHE zo-))WVyNaJp=F4s$fN(3udvQ|G8kK2$R0&iMLVjTZQo`wlsUVVGk-Ld)7{VaLb7;W zT<97_)kRA;8h#5BHr-hvd{r>0HF5?L4&&^;taRUttA7M2`knij=p>>poy}2s zRY*L2jcfi)>v}Vs(GFU!%k6nan+ip>wdM=xjsY9JN8cU&$#w1L?}w@xb+rOLH&14* zgM@OkP-rwd1ufnKOsySr@mO)MO}zK&wq~Q2s={5L*|gq4R)kzr+#V>g3DhZJOzL@k z?ZR^25thdym~#-yq-t5WNQie1@?}JacVBCMF5CR`IyYw#=fJwc4^PeskBY5%@;n_* za~_H>{Ab|KrY|#Q(7ipDBkqFS2JwSE(RikdqM z9EPu0gm?*Bx34>4ciSAFjni?X1JI4W(5AzIL&odgkKxpw?sZ~)U{idMQ+&>WWe#Y0 zRc+Lc%(F3S_rzj@?b&5p^=6sBXzU=jukx6!xeovXfHA-!0A%pKJN1?05zQy-kl>P`Hy>3@e1uDuLyb+QDp*Sc z%@nv8y?gmBU8z}8@SgZLK$(p`p1B&=yeyzIU&t+e1AczGj5xJ5a~W^;Bz zYDw_3*M@A-V&Z|gM(27x<*@ATfbKbWUCvh;SPKdx0+n3`c})0-By+YP?#BK2q_D)a znfkD#Yud0|?yHoN>#+1ZbM%cVC*T~+lnxVRE6v<@cv=WU{q+DSv zbt}RkR+4hUVJ(pFC#YLY-P2XFfNvXn+FC}o-?Ly)D#tWG5+=~c>5D@B&BmcpAryOD zNi1ifQ^7#DnBcT{X4YL&enKri#?`s_>>kRt)cjwP@@-;|=9lWQ8l%#mHbpiI!a8{D z^*BW`G?T`Nk%%$RE){RKt_sQqsu8MI@gpf3Ivfq(6HAon)k<(QWO?_HOug)!^16zD zMTU#i-?XJCRJL8#N7%_A^^d1k?3ZI0xFe6{<}khbRC>@jp&S>#0?1QIgdFwkoX;97 zm8&@Gb#m5=Q;Bv>w%f=VZB)wSYNb36u8e8A(T*waTly)8^@!eHd%y4MTf8gjYW6jM z3_I=4NAm8HD0UY8`^UC(L&+OeAJTiCUCA&iTdidwEp4%J5LvXG9@W96lk)GMl-mEp z-g`hb*>(Ga3J8J}>757&sB{qNL`A>`h)RWy;`@HL&D^=)y)*yyUu)Kywa9*U_Vb+m9Cr38`*)g2#-Yeg;q{3u zR10TKY}QvnNVA*MS<(0_0*CQ5lkFq#O>V{7Z%AxdBFOBnZlt=9wCl2I_s&76^Or(< zAC88d?Sn{^*?f_Y({h|=Yo1;XdU-p~+f0goDCVKYzPEbcnZ?^@xrnbW*l4DNFmFY# zoIP!`8kazkhLCex3kn7p`7+v~2DI7i#EywotD6IsdX?U^@ggyw7nsadt-5 z_nadFiPe7nuIPxDRZHEA9Gm_+)6CB|xRmc&@x|2ZaRM$r408={P_R@zYu%Tb@@zQA z)B0EaE58D(3f~C>FAvZ)SKCZWv+y@!MHcZ3dIRznsRLub)gBgHE39+KsNpxtS;$y# zoV{3=q!ZVi=T&DLBqt?wQS651q2STb-h`gMFV7!b1=lTD?=_EKloAV`KD(kG9i`ee zU42+78h8G;`J-yTswhYCGE<$R%6y}NcnIOHSC?IaN~X^1 zH#UbCcddxkyxJ<~FbXufr5KQ8__J?A<&jzB`*NI?Oe`qF%3BPY6F`<91R#v8{x zRM~ug{zC)%d+t-pS2^N2LWCOf8{+j=f5p_7ygNfeU6)S!3J*LC#apxGB?nv2rrikm z_`~)2Txf~;Lw7-ArzD}Q>G{5IqcW+wXgn8(7Fb?gZKE zP9^par&~9?iyY5+em~JF=RuLE&VnJZHtfB&u^^1ILkIL&Fsv5w_&Th>%J%jRa|fGN z;@t-ijvtyUv%nN|R$|~7$^K@%JSks*LqOt~XecDl5|loSe_}$=|h@Qrl$%rtN&!fT&H+xqurI0&}Yi&w!vWrCsL3yr^pr!y$Xlu zBEZVMVW$s=yk&Ap(`BxST7)9?q#cv;-`vjeU}b0+yisdKUBqBc9SLsGTG0||bw5Vc zRlW?f@{$HkpEP{dc^E0h-xc}gbT^A(#FS(!$d1s)N(rfbVuL zE~by&ALditXh=4C{pED}(#ebF_ICZ&QX0tP(3zQgoa6Vqiz5zz+FcVQN7w{y$;?K&L9110&PMWlE4-*|oyZ-g^p7un zvJ|c<4jgZ{x~yiY*P_$_-X_ndnZ!9eY-{=iT&hY)E4^uIKKp&>n`q-Osd;I<4p^1f zKA2`q(7yYSJoBw&fbGp%=uXjScp1E)-6Pce!;e>n?tWHHg-NR;aa-?}QfC6}@Z;qR zK_}TL)Ak>$CP}t3BFN|QM#-)c#7ON-A!wIlLq}|D?0oY?yI+r=@mAh^1#@De!h>7@ zQPS+}uPE;`aW?t-HWzB-x-ZWr^Vzml({_Y|w2Epzr^>Cc%HVz-Bil#=m%9w~U*U-Z z=JSO&eH^FdwSNWXQkSk$KQxVGymGmBK^fPn^SvGsqg|!s=<9V@M~MYROhe!AJ7vax zRBwiiX*YO18g6LzzG>z>T~*Sy*uC9&_z*O*C6>pdmq#_nU8dD6E5ZXbcaQAY62@UY zTU*5SFDzF?9Th&@U9cQ_cb9$mVc=S8$^D>QlPCG#eRfc*KlUOUs!g7l9orsh1Y-|Z zTfznc_UA8D5Vm^fGp6%)+UKouTwj|juG<}HAbsS@S6@5oC;GxAv|i#W;o3L!hk_4J@>Ho22yBF<`GLP|ikp!>To6Pn|XuioMp4N(UQwk^kxR@4 zrx{3pH|k+B)M_O#>>jJZ^vE!S^=$-Q&V6!SD&|+a;oE$JPo><~odxaF7^q`gR?yR+ zQx^PR)GzJND5Og2$M5G#^}`&Wv-gZxZYVze_=_!8Y@msaRgX<5R=hFCUbH!|JN-z) zxdF?7yIzx$E7PO3A)AGUVHo7f%v z*%zmhiLtk{$_9Ot^g-V%?-i=MU(UW%6ns*j(@*f0<YS|RMX0sUm2pIyh0VMFA8 zwr{PKw&ojs#ifOAS-5JsFn(S<{a{b2o1sGe(H?eb4W@mL zuJiMRvR`nlq2%`D>Nmd`r5Z#n-RAyC**yL0WzDaPSw}^1VLVMo7mqAH+dK%GfdVcl z{bcPGTE{p`!}}o`GPd{v%Bu&{-cMpxFNVqD&%RS>ZmbOnvwZyZbC})&&jaDJ%$%#+ z!H)yFj_2I2T@-bDk>cwMsx^QG4D86s&9_g6zBVmPb4yA8;A`dZ+DSgA=#E?8PkBF#e|pJm{{5B5F|WGRaxQch3~^<5r(OZSmbx{S;Qd5ds^sYU@z8knXYMgN zX)pvkpPbw~(HW6D%IjsWH;q=ElgIrjXn}{Bxcw==A}5sX6A%+<=;Z2$P1c04ERE}< zm)3Z579h#l2Zp!r7B@-~WWzcz?=y0PDhZrYM$foX4PL*1OGFGM+*XfsGg`Q1puX_j zQV75c07kl6F4vmt?klLT^s3~WMBMi2{W4PY^Pwy*@@?^v&xX%mvxjmXO>ju%y773; zRS$djBuh@+`Bfv4bfft#ylKEK;n_5wsSkwQr<55}Q!X(z^~*MQ?yE|E_eW!5=k?Zv z+$*I5ZF5LV(XLiQw)8JT$E`l``|;>f+1oYm z`gcXWl#VW&Jd-0@LfNDEWS+8X%jlZsHPlXcy?uZB9ye{3S60#CrR$flA=p=cGf4;A zRc(Hi{v~aeqSmhM-^E#Xudm(knsEA>?$FZzVYf4=+Sp$4of2*O;Rb9qA!`_wq{RnF zF+hywLpnbDPPb-yDWdLJo$Y)9#YBaFoYI`E9s53B^_VNCq`i|X5bx(>8tCF_Vd3eb z1p`9vF)uO8lTR735m=(N^npd!qPq{G%jJH#gen)KdPgsxGnB(a~QIDD+j}w9v+#R?wD6b&{|g_rpCs|4(B_!_rN?u|cFwVQLB`gr+|j z4gP3*6mvaUs?BbPNkUpt{+&7I*!v)u`WYD%-_A$~wpCh7AMyT{g~gec!VY4|qdxhD z*eF!*xd5237cRP3M zjxQ7LgK~N4uGylko}6Bl;Rl;yK@YzhmxL7Ob44ZR-&I`dJ&7x#T%w6?_4R)J%7fR# zME6^H!E313p5|}2_a3F~0}J}&C!W1j#a$>dP`E<@BJND_cMPe0$<{Ye0q2 z%GF9Mu}?yVFi_;JZvtbg0IJ_!cCe9m+=sn%hXanRoY|>ccV8uZW@8TVR$q52GZl;W zNEno8+w7{asgfox9_Qmk4Xpg70T0?HIjB5@7^a$R?jk;X^MUO(knZ$xwL7DZU z93zFc)Q5*kt5q)cS=NK+GJ+{W#W?neAQ5bS)$zu4h2u&0Z{Ih1Ig8dWW4Y`EZF`EK z$S!0K63ADLl8=1j(6T#8iMc9p(^?nZVdY{gWjoa=b^FpuqsC16S*BS#PoJ5=D_7R* ztuTGpuT_|0x_+psuF!EDBg-GZQM~XK(XY5pj(}obsXQw|`GxXz;@oqqcJz1#htx?hYIrJlZ-=WprbUc!I+hXC@} zGJQ!K|EVf65p01?ep_?O=T7{l>2D6~ogcq&1$va{&^h&p%Bf^Y);QNaKApHjZa-5z z6Lj6DTD^Nf=11>l**o)Njb~Vps;yPA)C^3ETIi(>VS*qfgqOZ|#0UeA;D7_S50m6` z*Kbg0N2Gn%vSmE?bie6*dP_~G94BkvoaMipzju2uNw>Z#9ndHsAg#frlbm_Pv&s!mO1Zx0dm-6_?!Jyx#MusBun1!YnCAHhdyw zPkS+LOV&aSbEsvx{=!TnCsC`#7OwnQg_UM0LC|PFTX9X6H|_n|e70vY1mj0lllV8K zm(N?)T{<6OGntw)y~jZjJEhpp8bD-;Z-qzBcebZzAqw7hu~MqzUaYgwLNa(j;*l1Y z@sG$hr*@1zBh^_YrrzPac3Naz-?_F5jhc7|h5M1Wyk?GNb`Kme*CFh@Rz?ZpZ3D$E zw|9&hJ`Vj<>$X{Y>@!;{!-|X8#!u%Xxz`T1emPFv#5S}+;KQBbpZd$|VpzeNM_X(> zdDP-Q8zGwweqMQOs?qFnFW{)Qc?+}N2|LiP=;@(bx}T1)gziA&I%f{TEF2s{$470d zo^Zy9*;o!#oW581?vzqQC3_RaxR>DLANy!%jAq^)X%4)oDokz%a0$x4(t za^%QS#)pY{-2ZmAqzjM1_7QQmFAT|%ufK{z{<{9Yh&#A`*u$Q7Jd5!x`w^zUQXC1+ zcEA7N{(anzY7zqB`2$?Fp3x*G@>Hhx>4CwKY)Lj&M&jV?nKvN;f+i>|dd6vHmsQ}( z#mJ}87o%C2L~ilzC`F$>jd-fWQ4`D9uA2S$)d#v9DW^2gozjbv1rwOg?6clAI72wa zt*3%#A~wyv)y|hqJTcHT_^M!b*LFtR@$!)zO%!m}a1jz=JvwR~SXLIXT~>(7S`WOy54!yC``iGAnUjC*Flxba%cT|2z*c_ zq_+HwZ(i@02Md18v1CcU+$g4PmCe@2-!`05=NtpHyxKjMtWP(G`DG!zIb34oeSkV^ zCi?|b2#cY{rpqMLcX8)TVm8Ab=&8zTPP4t1PQJPBT66R@>_YFY*!CwXtfeZwCs*38 za&ldA8;m&pNmg{ojly-hwBo8BAn$y7KlFC8K}KCM%=KkU0vV`g@FH*~rOVg7hv*yg zcs$^4@$XPBT{ml2nZD{L)pzCG3#Udf z{1Ed~W)lj9E3yRh(;0TS3oq4$uI)&7{XpjBgmX$xcRz!6KC&dpN%+K4zFe~ zP38xl$xYFi> zw2YHsFX~4u*+*gL8g$Ug_+(k`JoHJd8WN;8qoabp{PInd{S$yjw(?bI(7X6IPj6Qp zWlaxQWOgD3wsWe+914T_=vQllWD_40=X+TK01dTP!JJ<8e98qmKB6HvY-7yQGig-F zuBNgn(${vG=&Z6IVymI@SoaL4?K=%BZ)e9f8&HPO3jaxM8 zj0hfwSE_WL0<&)(X3oWZ`4*nzfi~UolUN~6GknS6qWRbL(#c2Nv|icWXLWa~yY}Q* z^>O(ay{A?|;)C^))Az%B!GaxUmhFFLlt~Kj{d}_gxB+mrk!|jtzPQJbQ`5^Ax;*)f zGe=Sx+j?iP1KPdnCD7aZZm7-U{vxO!7WenqB?j1kb^B3||9&hiYwjDHA03jwvZ$Ek z2ZbmpVFffsr=I<`IB^rIEi>N2q^_Nk zye9j>h2U+v_)4)lgWOQcLDW@!TN)u!`N`kwrUwodZ}CLr2T5xFR?@u0+VJkDbpP8I zHR4TTpSM2{5WVg{EhR!M@Kdrm<)G|-fV`-f8FzP-`RtR^-|Rpf_SZMAv9f1;{i&zX zLDRb3tM)CfAbsI<6zA!f(;1vHoqc!P&t1{}rWLG>EJ!Q6nsJJLBwaX~&EcaKWQJz~ z{KGHs);fnqV$z9@j;g-!pKYfO*=yb^ZC9PdOmC9PQ>HX1OzY#cH zNK3e>of1m1%x>u`*A(?wvl;3JJ{LT5_e8bDVRn)m;DQO_@brO?K+kP>P<_$+s1X*f z9FeXm%ir!na(YKcm+d3YEl>7-YJ4tdwSC9(p846bY`gM!H;){OKuy$M!>by%G?AE} z=JLzbnwudrIuUN88lJfmVz3>#k(B2wu{vS(q&i*9kzlhuvK6rDa`-7z zn|XCQ=FzG%VqjX)syDDza(n4wAU|u%us^54;76@H!Y!7Y;y1_HR=DgIZzE%E?rD9iHlEiBDyCB z00`3BxOxnCwSf-AZG?<2cJod=)Y~1F6eTUYj(3DMMp1ya% z(bB8P0HI}`nM8YM@D@}m-=`(_@Kl4z@oTf!mL9pSB*jbUzuf}fobmK4IZQ`oKuXZH zFFuvA1>y(38KJNm6Ac23=Ti6^`aFA$Du;VYv6X!KCSLqYhquQvJZO*-dtntQx5;Ga zw;+O#DFDQ^J%**Go+y5MU34u8F{H2$zk8w>gHjI?7{`AYvx?=ZHdnM-IFy)2LsdHLB%&?ASBE+HIU} z5L@Yq$BL^(5dhGBK4U;?)g_91Y*EBmT=|MaVaM+jqbK|aVBmNz*UGR$v(Z-j{i$5h zp|@V+p-K1&)Em!2D%~cQ$?-}U=;c(mRwV%am3yICKzbMOsGmOmxtU!u=e47yysuNL z$Bgo0_vC85J$Z5W3V%mW$;;wJ>LYLc z!y&~7uZH$=hyt>cvymw~7DoD4*DxLy3MtshM~`>s_0EguAC z0(2EO!Z%W0HGIqZWg(72)Mkd-ugsrD>5J#sftBb{SUt^h-8ynrk<<8z<}tn$r2f_= ze$_?2MubO&#ttOb&+QyEW!!2}qg|Np?t16^&b=wZd*Q0WwR}VG$5S+@ zOrKs}>Zbj<1Gn^T&gF>Yy@VzkFeWH7cD3#-)*kA9zPV?ur+GSg`RmaL+YVYtmr=rJ zCiHm1qvA2!YQU!n7k^bdwxMB;OZ)a)mEyxjZ@kBBOUsDB?3!UKxTVEkYCrX+bb0R@KApD+2Pt-?b$Z23)|3ysZ^EOTi;?g zU4de8#fioc$`E^{0@s&&W5TM=wr4*=iMo|i^2po5t8TOd#vw@lfb9sSgX9Y}2N#g$ z9#hh^#S=}H4TRRmsjQ_U{fEk%)7K3rVh^2Y?dZ;ks#`GRCUE5NW%{RY z_IY&q!@j*wPaC`yw2rB)#;42{_7Z5opRk*Tfy&;LhCw*jcDMYH`5M^KY4-cWJ~KUCph2b^82Z`Gv{ z8(LQEIaaeS^)C1QOwZ2D#pbEs?t%XMzrfR}TSmLGVQrSD%XeeeF@`?i0La_TnM)#b zFMsXMU?0cLCNz8}&M&bp4YE&zm5V;#E9EJ(u5)o-gyLH{TvF5W_NYSQ+h2X3;Q}

pHYX@BPJUn%&NYwee}$*_&Y?Nz<0qv+E0uy_#XsEW3JB zYGAcwcTA3nc*NUD=y?UX2YP)nB{jm*hPtyStep0%;z~Mjr40UP&*Yz8jPXQ|uq!SbO&iS{S}f z)qXtE_0GvSk}f^pbV;0z#rye%1(q_?bUr;F?wz)(+$@V7_L@{M}^gW{1JLc(?Y(quM%SY3!QIRrsWBFLYtnDDhxlDGY$EK(jrTdOj3FdE#qYmp-WA z@gU?>Jng&LLPe|lP^!FxqV5GC0X2W}WZI4%W?z49WzLRu+#HX5z>7SX|9)j@Vd|uC z1oG3uqT@)D<%7z6p9{`gKb)Op=O@(eE=m?BR{qv5d+_dTwDpS-s^DUMtP!LtrPpapx@-L`eL!yp>ADypusy(JxP z>8pa>*#6u;neDPDJ*BfT1EaR(Wsm2e=&cTiF%V}v)=A*-DW3E~*vo~KPBH06@bek6 zO*2hvtc!I?sTrCV%dUgf!g8_2^sZT2Dk z@RDxW@p0nP%hP>D3#R?pz6#D%j-^MuFEaUF9M)T!>-U>Q1<-b%>|EMb(=dEq@FX?0 zu43WX)Sb+)UsR+lLs)MP=NmA809oZ89T_=0{PZ{fnPpffR%;ow@F$J(3LSI?GDjpTopHn970Js3H>d1U#CoYuU6mdls zS{rg)^iajGQZ(=}iSwMh&Hip<(ac;fbED$!`^CY0TxrII!V9gL%kGEkI#2wPZzqJ-6??=k9pCT!-)^e+{Da^+a-~{OqmWhxhUU z>EkNj8YfLo?SFncF2XkNa%P>p-WG^F)u!>>xGyx;MOvBKy8oPBz7XwnR~a_w%exml zSJjK8Hl-AOw+ifS3oUFB&h&5eIkUY!v23i>W4N$p$gP~@H5fRRm6=!Q?=y$Pj?b@z zhv=ziyh1O0H>ByF{jPoZ4hH0ynGv^MY{Y|(eME5?v>IP-U)F0=PWNw_QLg@0#&z7#KHhK?M9Qa>e^ zW~J+k*gOyqsoV)+4!;T07&7g$C7O|Qr1pupO9}n@vTY$LgF;{bMbvrgzppmVSJ(;kUsN z@)mZH_CQkIHBx0`+NabdfBK1bjC*(rN57oBOTEQOx`@8n`l9~rA=U$?wt?NuuVu1E znz3>Pis#CSB4qQ+0!#d?ZK$<#V|#o-sp)(ZS}zht)c%=ge^OOD8>800x5K+O$&7rz zxpARV4P{CI1sq>JOH9UDMT@mfa!JqP^PIdVikxzM^)rfq#6!#Z6EnQkOsh{i1Bnq$ zIcdY1G-?T~o@TzSzA7<1)LmOYSJn;ge;)mOnw-N$v=wyadqJ@~EPDpFX=_c)?XfJA za#3zM)$ek{?%CX!@hcCmQJg5U;wGoMkprPhkm6-O{2WYiu0xNVKR?&voisdl#Zk$~ zp$BvwR@h~^q}TRUu`?LVG`_^Hm2vgxo+PpR#m%ZdZUQunxGmDG4RmoPLbu^h$@6+V zJ;R>*dSZM0(lqxVXxq?GVJlBt6lL+J;YQF&;7T0V^3{fHt-WC#g_h-_-hrQTjr>yT z5ugs17qk|&2u}oh%JN#*t~qS>{o(9;UVsj9SKbKxwYSY_9E0|*HCJ9KAe)Br7h*ew-b+YCZ5V9k%3MZTikZCz4k7rC8}#IU>uW|8YtfJ*|y(h_L5zA zJp}3lgWL@+D~&9~BY8Vn$=dJFKf^KBXfR*WPo}5U^J?z-d`OKBcPV)19Z9~%CmMa@ zj3+NZ?z-{wVahoxu`W>jw^OJaFIbz)QVSAQ`3o<>-aHurr*I5+b6$_4=pFOcGP3-- z%1c*Ze7nSW9+2=2e{f~*JNp4nXKc%g#RK*#T3Ef8f?F}oHZ)U(Xl!3xv_6a(v9{G= zfAkP`=?&pBnX%Z~Cwmy2@9dI{(MANO3Uw*8Cs*xVrXHWBECv4L?r}&V!CGZ`4E&nnvI)2Df#liwRtxaBJgopeXalI`e`vwOIt^zE_p=3scsd17qi)s~nerjzNX-aQkG^6#Bf8holo5YdXa z|57|+?E&>}(^eVQ%r9h@uGG`uY!B3qg~@+oHvH_pyr1svBYB6tF zO__G@(POtAD%NXJxc#Hc(0lZk+b*02iX;?5lS!C0mp_<}(arRTDzc8?ZTi6Xge%v| z{cf4;8FP9d2Qb}-6*?&Ss`RyAtY5H#6_VbF#X>TJlwfGrj55g zRA6&n44f6)hd=R9^yyrsaD&z`IZXrm+s>;wDY(KlDX(2s_7(iipBONqmQ^YqI}n5= zdgQjO%#fQ0O#KG)D`;2m>pPFuSbW+2?!iBlz442Syqy*Pr9asQHRi(KG+yho2F&+g z>OUYZSHX00Yd0Fn*$RfLC|X8J_clLG4>iI+E1*l6qdbYy?l~6)I5A`pNFpBEvd%s@ z(TwC$h>ylIjXGivn_RGjw9dT7r+mV}V$gEu>^H61scC5p&QsRF%DX#ON8% zT<6vLb~EzFUh7QCv^BF;j`e`=vC6JQqIE^6pmStZcQQq9Iy#H6Oy&v}m2VOqq17@~ z-O^r0pHYK4Zn;R<>7n@Od^pCLM)ilntSI)XPVKN5^lzjPMQG8hy^+8;<*Z4taV`j^ zjbg(kO0<+Fxc}{R89Ff|U)jqRo@dy$0f0{dT|9HEUmMG4JZo6yU^b~PeX>KaaD+HI z3QB~M!-9Ec6X~%yECA0##!hqt@w^5JiA@5!TkB*=F3FS`5xsBlhj=S&VpB9Wd(VYp zMg>#v{EYuPC(Gw``t(E(W`xX{6n|cZ%k(Ga*)@RrZ&~^9E~V60^J!`WbM_BI{)PAZ zzqdV6AoUf2w^rBfoY~F!XC)HqP}v2auIc1gExZtIw-i$ySahRVQ)o2Uj1u%OWGf`_ z*F-bIvtzl6TQbpr+2tEh*H<}r1Sm&xG~gL`z&*8%S$34XZ78*l$q8=L#0k!RU3&f# zA>G&+dUfS$DyxaJh)7$T-f4(qvvjVghOQJ``Am!6BZ1-OW^`VSUV&e*&s8Gn(N(;! z#N89)fV(F+OJfuP)Z?=vdbN6wc0Xa>mcy8UF~~Kf6h#z^>>MTvlK|xZvr{dzKQWc+ zY9aj~KQR_Fn@z@bhmjA4_KwneTPPoiI$CAMOjsgvZkQ|_450A|-vV7`GBbM0LolYO zEy1tid$H93eE^@1zi1^UGuXsHLFb$XBXCzP@GwAWoa6hZA%*6xYWF0Y2TP(vagh$B z3d#kTzE8JzlO!&Ay?vJuu+>xgx*BXR>8~mUxzXF!%Y$bl8>dNIcGO-@zoJ68{WJa} z9TYA38^UDf8+i4pW`~r9|BVL|>ap9^?nyV*J0(si`F-EBE_am_pXd^5_{bmpu$cB8 z!|ON$to46bEY&QhahGQ~FZ4lz=z`t-`23-&f2;g3S%#-{ zo@Ya_`&3eOND2MuW6su-;=x+ZwtL?5)0wJeR0!T4u^jTyaJYQ&^|nE6E@*6XFf`YG zSo5C?FBGFLZF7}^Z-qxKiQmP&+h-ls{;x%gRrl_Ml>19N3s(NjM98M)`8@c$Rq()z zch=Gjd|7Pc(3ilR;{b-$S}p8&s`&pCTPTpkMysq2|EI+I@ZM&U}`Dc`@bcAyY%BO?!*3t(Z&*#`L=f{_)hpg5jkzImV#}= zTb6!U<0|)qMjOje|FsBiR!pO_q~MpTnM2I}iJwZAuHOoeThhOa%iHH3g%+cXxBrRA z;#$)kzO@(8`f_vsLv{eS=0pox-)IcWLeI2NS7+zJyDIP&=-!XE|H-Y2eVlomP)4+u99{~x!Pe^Kj*`n$K!FCH@&=yn_^S_sZT_{`IAwx&wU5oN zQrNISNeYn!UTQfPmqJ$~;SPjZX{~5I5{gvS+j5Tn6>fq*%+rKgM+8zoU|hn+m?`hJ z<2ukc*Gmn&=F@1$5UH%fGu9z1l&}3xYo@bW)hg5*im24?u-|9-=25rPz~EEqipwPCN_O{ac*9Y&gxE3$c_;w z--a2=2kZLu2vlJ>A+3yNyDCM3I&SAN8uC%IjMh)Krf^UDQLza9RQfsJtjrl~3t}7q zS0d%u%nIrTu;#|A#*Z7+HPC-zvhIb5=8n4X1_x1g51fn_?R15Q^&_D8PsLxq?9=GS zr%zUae!)^1-BZ#V;n2^C<*iIEzqM3%-c;52v!kXwQ9Yih3wo}PWKos$X^goQF7HM~ z>ukSx2ikRA?9;qAUWGw zHZIO*A)vOoA{69Y)e=9mWls_QPHH1FQmB$1kC?+3DzIAA(1a;l#AFNzuUTPm0-3A; zpx?$rB=+Vscvs>#5J=ifae1oB$$!{|Nt8f~*zQ_#8hnO~+vy%sW-)=T zYq`gpdG|QRL;QYjAbV`>XqwbO1Na^@<&;r0kN&213gAz#EjVWYzD$8qbZAC4E;OW6 zxD4fI{JbI6m_CY#s{q8Wd+b>`Zj~3(GMG~5;P!j&D-#>^AgY4F8a2Ye*-Dpo1%I)% zL2$sWTX3MF3X}P9EJ0z8T}m>cs)2AN6(#dvfuFG&iL7AbRpbAgT!E;9Qe$bKFar`U zYt3)fSAmA4gy7ZhlG2Mk;j)@}M8$)}zIm1t&-RFI% zQnOLJ1RhySY8Gvo37j};NwxTOF%=m`ohB|y0e30Q*kQwnH8SM?iKvY7K2(6Cr=T{~7@)H!~;bPPW!Kn-?KPx)Uw%(4sQu#@2 zcguxe2k>J5PSe!*-ITaxYAR-~+Cg8c@`4nQ*>Vl7K@u?FvgE1qHE{IS;kFeYVz(7f z=^QoXwr`#$KWvrJcqHbm>j+}pYLX`*{Zu3P*SCH#yajezgK^+VZf_nKJI+2%?MFaZ zFK01nZy|+)Bk12TS^6jp+4@imVQZ#>R?Kat{-7N8W~wHFDh<}j?Sq_1cU&!WwNY<>64mMEK8_rq?iBT<^K)SG)QuZNWQBwKDbDhN{X}Ty%URg15e70-K~%R~U!8yzgbiwz-gw zx1>*M$5eNp{Og}^aQ%tasbkKoOjSV$+ZIfj6Mj^M^yH5?>UI@}0nk8fOsy0m9jL;& z6m1rzmxfDaFpx;SVL+2wE4G?%mNVTCE<64VRN2rI4$1lV;s^M2 zViAv{f5-CWVO3q%JM(4;aPhQIu>Cw15wrbm-^Cu?zi)O9c%s!0UxWZiQk?MEb2uJ` z&sZ{n#exk;8JS^B^vTy@IeT27Sw~%g;KWUEAkAnIKGN?!LC}7O!PjNJ#_!x<1+k5BI`UCZRziMFGUp={ zc&1NMrV+a=xf&!IM))2)ZF{7=Dt=iZLMy;OKmNxf!i6_Y$?`t`O*S_Ez#jj4&gGc6 z`Lrp2qk2RY`2K&MG(!>hvtPS;!@Lsqzm6SX#hx=`RXI_5cptyn8H0yj0v_X06DE@m*qg}A(cTxqeIP8x;(aHTf@f< zB!?L>oG7fRMrimqQao5CH*UECj48{eb7S>=6`a=xp)u!pYby%9-dny zpP=wiOsISjqUcDMZg^MK9B^)&EFP>m8`(%OnqJ@M!Al08T<-v5cXcR|t>Wm!T>@Hn z@qofim8KnsCpj5J13QsKRgw{vhbpJ?j+=+Z0l=`4rC}n!wJ2wdVh<@PHrBq3Gc^1i z5sK=`i&dZgtplV@&CR9JHcpb>d)6 zONW%B)Kd{>{D1kv*1r6WmV~%{@tN#qeya#&bGF(Wt4XwNMf*eWY>GfmDqNA?;00+- z75fiJT2;ByGEmvqBREHqxC>*l#A=e{4l|g?3A%@On1;JIecQIVg01N*7^u!HLZ2K8 zLX`peniMo5hC!2=Q8Ae}2GX)rj#H!+fgmDs*v`pb@6$Q6D z_yN{Z$N3qG|2BNtpEv$(`Q4mNW@;Lg?2etG%>K#$Unm$poN~kQVop5cG1w8nAI$SR zonnZ@`~_k#)HHG0;;*;L=#OfTyQlx;E;*RXIT75kO!`a_nvMi_H_rX= z`wKtxf$^Y(i}JMzjJGUGKyFZTE%9umC`w*$9()~bMDm6CP#Y}qGAbrL-~*)}9dw7t zA4ovcABPqG7l(!7xu@gDv5?5dPCrsmf#B>cpQB_d@Y&a42TI5ZAecRZdyx$oXBLI* zR0o3R7L^TJW8xZpS6<>j`dX0eeqL%lftGZU4p!Rmp{mR#;-Eu3Bs1qdY)U@1fhD#3 z-vKyZMp;u${sq7>W+Zh_Yd1*~T@Z1qlWRI7WhU&+u9AQScX^WT!T6oyz&(w4A($eH z3zy>HC+>rV62nMsB8RndO)`wBdjG&@z~nnCMJkC%H?zt$WV2F4f+PbzhThdn+d*_02xKa!on*Qb!Caj;^m) zidd7d$Fg4d7~{RdlCm^f?40~RBzDv*TE3?>BHoL=y8jonBs!6ROFPa0ljgu?iVV4`9gFiXDF7+=tV?fQTIe!Jx-ji{} zMkrI`l^*aqi~OtqE6}AtG7U#rA;I4l#kcqV13Nol6{h<{)ogXXxJ{xyD}TrTyK~Ca zKNEhn8UWhtwUe<-owyemV=P^tw0M}sHam_x84RblVq7HQYNT;2;7@^E0dvBN8DM^= zjnr=!F-q~G(HOmU9^gQmY(h~J8R$DBENj@XriT9Pr$1Y)a!kTT(Z!mVTJ4~tF1jcV z9D-5huXW4>8>0AejHuNVW@Zc`-0)RK3An_9<|c!=a}yWm^c+*gNidkM^HX7h355eD z=bTj4af38U5rcWJkiMA0Bz-z=khdwUt(^R@u$6CLY+!7E1_(|-iQ5zlnDAQrUuA&O zsFPq_K6mi`wz0d8)VAc4`}__QJ=_-f(-w2*hww^6a|W|d|1I*={ZAuL%3~^LgwQ`~ zHoP$T2E~KQ5urtTiJ(sc^+|mc0oW2*mDNbOY3n6ojyA$<`FDtkNF$7ypzJPVs7RgzXJF*{H7%Oh)c9;&*)(WljWwKXL)u6Ox@S%71n{EkTd|c zr!6yVdK7jXkYd|H{YOYi(?y^IsroPpIKTzImliBHkV<&J{cjN@tZ0D#gN!6KZ61(= zO$vbmI$vDGo0L!s3G-vNcy^muf?~PO*M7zQw@faJ!TiplFi-rlBsveRLejuyg{?ij zna`nE`3$QF7f!V`l1e2iL=AvNsXxgPcy01flTk1ajRo)<2-#CEt4zU`(Jr7iN_Xd| zWTYxuF5;VTuv#VOjA)q7mNI9{7G{0UP^wKBE+Psfo@lLLgb3@=nTOWx1(Lq{g=Y<{Cr`U3Hr<;VnC>Cs)R zWhL{U(0sfV7~wBTabtkU>ZJ3-PVVzt#4zUk{2j=58s&8$zB`Sqxr|{T0mQvO%%4_# z;x(EviQOn6wR<@UY0pOE24Hd6r9XESBH=sO;c{mB7kD7vb=iy%7SDJ7~wMw z0M>F--B;|WgL)*(;OV`?UF*nkKHJz!}s%##3r~5FltRm7&7) zKU|#u#N~PrICU^|@2^Y}$*(kb|GXF-5AE6hlWj{<5u*vu2mU49Wiea*qXos2f8#F! zoL^t)Pi8E?_gU-p^&JoyZ)JqyU4JzEyI6cL1PEMTT#UL+e#cl#Bgn&TP|pbT=V&*W zENeCx00_+&uSt4slN&SKlW_o-qDWwexg?Erd=oMk?R5ps%7HlY36crJwvw~m?T8Tr z&*aPzV=Q++CQ5^J-}m89V~RM81dh=e?xEW zOL9geE@HRzMZSSg`<@C|$0vA@wF+^UenWk`|8mBw=%{w5ELIJj0Sy&~zd$Nn$?;7Vyh#uGz_cDzotaC;u%Q#6=>t zS&T%Hk(P$E5lm5xsICB&nvKaQrynyqq@dZ1n30d??I~UcdldLFBdlM*Mjrkrkkx3o zzeML7-1}c^Mw03m%t-5ym|_tCh@zgXk|K;6x0ksZ25W6x`cp5COSFom{(;&WDSuaq zNFWb+F%RG8Yu%oamN*ojYtWSu7pXw(2M}AhbCa;}4&u-{*8Lyi&Sf^so^8S4$jm$n zM|+%~+&<|fK#IdCN%3o3TqFX2UE9QrZr0kJyU9IN- zyVT-4dy)48@OgNQ?;s*Bl9{2E&D4}lico3X?&K=hq`0Noq`0w0s;V_^xAi-eYGu@j zeYSCwrCVF038sJgon~w{ED_UWb7o^im?XS&zanMV9=A?;x~(q>AJ|uAeR*tFTTOxi zi4r)RL0OgTof*? zz!;(0b>Y>S!3pU604n-c(rYr&NodahVm<^}*q^BpA4gEcy7aO$CPVoDAMCvcSX0}& zF1%C_5djqur7jC1BA_DDK}AGGKtzp7i47t(^gu!qK?RkjRDl30O{D~+lY|HeC?%mt zCkaIeH31U{koL#5_St*w^B>Ojo_qiOJZt}pZ}QIXeP=Q==g4HvF~0E)2In#AqmXUu zk*4()@=@rmf}IwH`Mdx2__n&o=}!5*O{Ub)H2=3RzVelpn10E>8dy#2kdS@5Is?bK z3y538iJt>ajvT4o@moyXJPp_&+fy83>3&;(lHwa zol86yYkh4pM0{xbZh`P$*Z8i_ULW2R7Hu^3!%6(ySN!+#@fS?=cK!Ei@)iYy5u=4d zu%Q0~J0th^nq~MT|KqkTJjwr9OhzO-_#xD>mWB1dOW5Y-?p++E<%vo~u2QA2$qu02 zs>yu*a<5tD!+He0COxVyRi26(L-`s( z3(bj(lU0gFy_wV?reRDvwS!>@O*iii@=NH0Qj>U`>r5o`*~Oh7O8 z3egtxQ`y8_*u%VQ_lD~iP|J2N9ws$Vo(bZoy<_wi;TqLrKej{_U*N#2KE|+sy947E zt%q~xyOyP6c$s7WDdwh>*91%!!)788!>80BBNb!aje>psE%ep^kwK~*n-}3GZR8!P z$z0C!3o$7tH<&JKarAg^1aT`i76TkzPp11L#!({kKOXsK-~Tw4;KRpwjSj;nuc-Vu zmd*B0Wt#Gy{Wu5Fnw>hMGhR}T&(KXe!%i=UoiDP9o3W=!`TRE@hrBzG-nXWfFK{e= z>!@4;?pi*8m7vT@^Ky_khwV@$!jxy=`iik@Lt%ppq-DimO&|9kC3y7rN6&dw-PGhG zL4kyzGoPctcp&>_26H{;`YjyE>!bT^kksu}>@lTa)>Zk)QaDCT4=tk-xbA`rg{@qKW5<&V(v& zKm6j>Qz47Lq<^Q92nZS%;qtdFkMXKP!s|GWjw?ZY?GVwj(=cV zi<;!H>1`QE(D?197=1=D&sRhfC+!oX$~b~}#0;0E7aWL&+bQ41Jz!%n!}1&5y)ommA5 zc|OA_RDW%rDZuUt@Si-UCR&5z4}4^WJ;DZ0!i(bs;TKx#?}5BwA*<0HR%2TTW8%vQ z&M%0qCXbLZ+6t>M&JlzV_*2Yi)BISV6k@%}(~LUnG0=R;vL43}v5vnE|3r{EF$S2= zd!bTe;uq-4IdN_{Zb5bV>vKfvSjDOTqG9_GbfO9TP{>$^nsaG1o#HZ$k;M_*>z#?*AR2>e`?vHmpz_; zG#T-xvc|lB9LC9I1I%xGs``(%#E&KE+s;^5c#*A9Vz@II4404;E#JtBr-zh z$0;II>^)ooiGucNfYUpN8-KZfmBatyB1jf$*?;{&?J?2B^Fw{Y(1yDhcK5 zsklJ6;zf(z^kVSf{d0Bc*-RCq^ef%%eH!5R0mLq(B^qc;c zD$~C^3a_i9D|nx$*Kyvc{VVe^w2$!F?6YH<1Yz=4VkBNyX1UBOEptJpdOes1-X$-1 zz09&#u;9f*!}mFl3qR_ZH3Cs$KSrTUxE<%+1PohVGY%0{w^`PboXD}?^Jrq0wK*yr zeZ&TEquuX!t;wQnI44?eoh8MX1IfT0@QcA-!R0GHN;E zc8G6um9pUU|CYwFZ09SerEg2xI|gnOzov(8Ub#v@`ydh+c_`pG=MWX}=a;(YlbDMk zKl;JT{&~#Tn9xPBH83t~X=?uufq?c# zL^0e@z%h<2wO1G4xKg$(mmAW-*XE%YkWqX$4v@;%=l8DQ34DJZnt@E?&-_7JoJTkG ziu^wEY6PWFDTQWj_STr5c;ope1RC9jM9HkioBPLI)=~YR0#bE)BHPpPzXvkl=`$?a z=O8wdbrsPq2<4#*3?E32-5mik>4MCZK&&7$1@&X(h26>_gptqqUX4W^@fz?vaBSiI zk8ukMl^Y=pV^+4oJ&e9B=?x$FC+K zX-wF0WN#DtBLMmspjRUVj6yGLMn@U#9(a;8DhNBW?}&so&eQK8!+44&k%D}=h0Nun z99{CGjE~l%KVqf3IfoGvCNaQ|$d8(%N%Jks(j3=sPwA3erOeq~PE7|5&h{S_{9BBG z$Pahp75*&JSiC~+tgcg&s)1F%cXPCD0P4e^MJm6|>MVk}^x=-rI?4uUier+(NEY?9 z?0=F~#WC?=4j1Y*vTrAK7FoFTWgnltEF17|BgY+|JukboUmO-2W^}$jJ?pl0XOW6a z-~XN*b$s@$Y`{Ko%!@G6xq8p6+d7>^axQ)0$7fAtm-dLWpNGNE#W7M*ly95^R2@D1 zmlaC_*az{Kv}Q?oBO(}fD9R{jC$&Ns->{-i0RJ0EJg0&0nq7&=%pWM=M zE0>nE&P0Q3b;t!fTKta<$*&ScUH?CVa#7dRSO3m%f?A=6Z(H#ofPE3Ej6oD-g7bex z3TGIgC?gyRDnu7wzoI~(dm;WI4b9C~4)%Ljl#F?Tn$GxLJR^WZn0z4JpFE{&W!~iH zcky=s^<&2LTFxG|y3my6ckxdGl$2<^wgS>kpV#BZDVTbh8Lc<{e-SEW298=Pbbb9B zNYU~xR-%uM)HFY0ANv0z+3%#HYH+^)e6!W%fY=Xl@o8DJe;Vn{><*{gg9c{(s?An5 z0na|z#;5&Rq^|h1oY~_}xvB=1{VvT`wgD+0{xnk92d((D*RxxkKnD#>`*$}JE(QE) zq{{(`A4=lWvS$xFfm97F`foH7{w$JSGr=aH@H?X@DLs=e52sEVm{ast2_2B=8eeAG zpF!$^q}MRw({g7Gov5k?*8M@v1lxf04}S(pZeu!>BNJJ5%Z6iyG# zV+)3Ewk=F?yEcNa^VouhaLhuhbOLYsqm#E&gQ)I3u1{0y!n4oI{OrxahKiDi?fl)W zQ9)-kRsC3ue@{#Nr(rc%%f-Pf`2StFig#EX{NDqL5iWR}7<;PmTmbZFt7Po-dZaxp4I}P;+IlHsWv#iHSb2-+dKbDl3cx}5) zbFA2ttm*mL_3G-v%^iusnASvxy)Jj`2+daRGeudUp6{yno?;ut>K@KVvbn~*pr{EM z9Ao(t!Iu9?tLg&&Kbg`S$&TV zBaP20WyW+gP2Oc5UEKv=i;gk9S9ReiV=JZHn69R&wJ6^7XD#EEb-T)>6jO9n2p(#D zYE8Ny9&3C)Bg?u|Wh#z&eswLHJ88>QUEKkHW^9)6#=2uoYMGH^-IY7l#dKLc4o@*& zi|$_C0uM7b&3H|02Tf`**QA}GsS@Um)x+>aV~dPz;#xG?*gPYX*g>82W$LZU!`Gq= zX3(l3Jl)tjBbV4komz_mUum|>Oo}muSJ%TsYEG_6_rhP)oC9WQcFIgeFwIuiqDhk$ zOy$+>@TWCrfNwNA)}$AKIhtKbQ!PxV)noAFnzg9(>Sp-kn$y77=yt%Q8gotB37E=b zUR^x|PpG*7%to(8qiW6qGtnKrlWt7yRay92bcX4_st-@Au>$6zyLzYAqLf$QcAZH% zrugbc_`{l0YtjSoxSI2nEO4jJR4UVQbuC&kX~$Gw-3gDVF{8WzcdSKuF)+pc@-l;@ znvvokf9}#H1s}paq6*6V%Z*um=^p)8t0kRN9kTy^3kXP{9wJ^%&ocxB6@IrLuWI&9 zpt@r6<_gO(1GGOn3WWic10$~Cd4F`O2c}$e^U?|f{@{$eCgnL422>6F!6(?8t#eX z8O=8`9TAge%)QWUYtrz^pS1?&9q3WqOUH|vIWk=lQ)|-KN$nPs%FOLhQQRZP)0%5h zRb0H|1fun1YthY6 zVO*%=DfBBqyV|5Qb4}W*HkH7<09D4tI-W;o0oJ0=9L>;g03CUgSDA;P(zvx~cnM!6 zuv&5;+=t%htII})=Ki?E`9jwJ?IrFC)yAbbTB36RU3pX8%(ZB5yW6BTQx+bSM2KT{v7fQxoCM`!kS%uKFHb9=jHrWTn{s1YvR(Hgx5 zUETK6X0!UUc69Y;&3pA{O?35V?fmM`n(FFL8gv6LgnSbGN~c|JQk=PQO={isvqo(H zY3n5Zq{&T1G0#Hx;a-r>fwOcv*P@8%pSEE3S>ZB#}08|S1bWQ3E)xsr{ zFM@M)x>Bdwm}^nstDm+k;7?jbyWONZb0<^`_n3Sd{CZ8AK)wLZuIRLzDqvoNs^Qk6 z9?TO^Ib0O^EI6~GV{mdUiZo<1T&9fgD>dW5#IgPiYm17bgR{ike>}u-@F7;kpvr90 zY}}G6yAb1S+Ar{@G2K zcXKZ&C|O+crcgXHihv)i2Xbe-mUgqw1TSO z;>hReYf%|o1lf%K2GW6!P&FPt}H7Ixc&zccC?xPYZj(dLC&sJ^l z5Uj7K@1`ASrVHND9Z~4$xA-Pc#sN1uZ3fV+hIVv20g@aX0{r{`=m6{;y!{)xr2&6* z{QU(pH39$*4*zhpzqx+yexA1nU|JYvFJ2|FUejUBO9PS>)O{{ly@6YUl`^fj;W?iSLe+X7XFhHmM2%}Sy??Y{Rbz> z0XIAC1kl7l`@35T9Rn6W=)*f~J)cquH8(?4IS^KC;fiUg*wfk+J4Is1dtV2|_ ztiM2L?S7ee6mYk&(LSn5)>nH%AXMgg1I7v)9ilL@5N(?4kU$UxNEIHix2#O@(jIZG z>wY8<;tCHqSXQU_X-~O!c4y_C7YMPl)}FcSTjl*3Lsox(tgre3eHT;mdhKx&)7k)Z z6|}9}tC| z01$^iIEy)XIu5w0X-fdO8rs#JT1fU=bPh;BBFWsUPCrWeTr~1a00>b{X&X$1nOC!C z5q4hmWIxGo#?NUnRB|E>zp#QYV^LtoNEL$_^Ixn7AblbHF90QM7WvM(JrWt^gB&8nX=>4h+i@0ifa z9{1Ch!)NIwcL#XCVg`!u0OnF0SZQ)Kh;Gk;g4r?yUPmwg9`Zgi9(UV(5`DJnjo;nW zZwO^lZ!izKWL-KY4(shst*Xdk6PNg_-+&*06$@qd+D*+^S99Zy zP#6=^^z4iSKc4GIU%kDwXeZ}GC-7-B@Q~fP3W{TkF$La&pzus-A%4I%?in70#kslk zC0%o3b0@d$Vn4%fsfFd->Cj5Xg7&ec2O00h3xHpY5Xua`9gW(h&|LT(?Sx;yqS-HJ z9Mn%Pt(f&NNS}jmsEYLy(c;#~O`$)EP2uZJF0yzqlXI-OrH~=b9JUp^2yRWgyP`R} zY_sIQ%8o@433L6u1{7BY{Bi)@xjKXSCD;Atjq2|HUJT-;$Ew@aSbiN1oW+mSoTXLt zejq|9A1K5CBD!C5!uSO(sf+SXrn48Z7f&%@<4XQd!S|zq2=@OR+6_c-zW=AdxUfoC z@k1H{5^3BT1P1;q>v}c4RC17&g$!4la_bVbyK^XUH7B_GaF6m8196A#A&HbbShI5BT!P2gRLx+o$qXYL&ONuf z5>svzE7&8wm|jM=MtqJ=8Pw1SH6R#pX|XVS78Xzd0^-LrO3)BKVkr&7|HymIea3yy z-N)8u`?H&ttYr9TtW`wOEmjh z$jAoAGSh%QM&y;P`x%sxshwG9{`^xZH3QRhM(N)eACnuF39 z*WTIcMRpmi%d_8JaCZQuwv`OdNnpBYAHqxM6kCtKRYaZ`xyJO5Ej==FvF_gp8%Qq( zd1M-ah=T_P-8K6n${WfDPO$Bl=!5AJgD#kSq$G>k=Qs$`bV}vl3`pfy!|TaqU}wQ; z!(`s8Ua@_fbII~`%4zM#uA94e{3Wba9(%RTT%Ud2@lN%!ZC1`X%NHqs32T-|e$I8v z;*>ku4X)3+cjT#Fv;9k0t2{1zjeo0ZWBVrOjOEjm?b^z&e+g@p$Ns#jnmVkxFI`Xp zt1|E8KH+8$37$Sq?1iDGPW94;Dgm~gKx&Yv6;Y(Y3y{66Lcd%Z*R5J>3Sx}+&|r1= zCHW{_fUJ;Rt4%6duGMM*+5i;oX5kT%e+D*1%>vRjca7FWgCUx9N{EnPH4JG%aD&e< z1oICJIxzZK^y*YNj?KS^p_(RRsQBeoz+CPeXcjbw9whb?2Ps9s&nNh}eiIuWdzL*X zGK(zbf8k-d!tA%)SKQ~^BEb>A9>S4fw4UhB`91*qct5d(-uL=Uf;i{fIr;%s5I+29>Jk5sNDyV64tBc?PXa=-KQ zxO1~C9sYTCJbb|TZbljYF0z-G4krZkSq(bj-7y|9b7kj3r%nOy6x@0OXjblPb!4yum4N|KDQxtA61B z)Rs#v{9w{+!{M*nAkk>}%P)ettP*;IUPdpnjpx}x%%}0O{yVa_G-|L@_9X0`=}Y($ ztK1KI{lXzOZSUDHCwAO+zxyR!{dNA+e5dnfHyU~H6@*FC0-N32;cv)-PT>tF8BX)xt~Ur+xHWu4-)ZsgL=n8bh^K5DU#+K*&;Z7YG>b zP2amkLqT6n9`=@eXN)BP`P6FRT1KUzWW~vAM{Vc#T#h+sxHn1YRPC;jl1oOXOmFKx zW{8}+lJ!7p9DB~CHup_o#6nSD$gc+r!J*~Xey{dOZ(Y?+oaTtV9jOJ19py-;*Q`Fj#5$C(Z#>f~GqIAg zf}3FYBk-OF1Yw43bUGVaioNX!e*2C%w(2v}HSi06|9fB=r zcFtXi;U0?-;~s}eU`Bo#Xzo5Z1_+ZiXz%RsH(#NDhK2W7G5x;N`~oQb1pknJGf#jc zq?_-sOz-TA>Ltww6S=VC{=IqOLyFFWQq=V2rLPq#Kv;i<<5Fo72sg5ngOki)f1DG` zMN_@~8u~K>GZwJVsCJ<@lqX;NKfjNZTCn_t&tM~hXQ;0-ZZMlh;6$=c=6=~YL+j4F z4_4O&uRd6k^isU=Di` zPnGZ%rP_*Z&W53YeYcS3#=^I~m+V}hoW5+;iKCAjRfE&+kZl)Nw^X>? z(VrDu{vj>YN`zI5%rfHkgx139_NBx0>BE5~D~56`Jpy$gyehpdGbkN?Zp7vpV+SlX z6u6nD%FOAT*@3fNK1yL5Q50LLbL&~aDVB5%uxmjZxpTT?E7ip|EP^V&va8~AvX5&d;J>b1=3Jh;^xpWLk1d>^Rd=r8 zs5JkI)_HB}6{AEwpffV@-HpN~pY+1#6`@LMbA$_AKu5)9`qjXKVDR!+_2{rj148~xceJl zDa{iL9$MJ8QqPXNVrh0kWzxKBhWIfqWWHQ)aDojoFex9as&|KcCb`H2)KSh;HG&}> z99%jDL-8;VXyMk9xwi^o-{y+dU_r&b)R=kXu{dtvT!oCtyvZxxuhtUZIa`sEwfb4a z+nB&UviwBDHmbRo-d^e^2lM6ml7S2tc5;%rxA8N+%>bfyM23ib!4^}%e_lj-UF03b zMh77-wt1(-q*AI<{`s#YJ z3=?~+Mu9DIIu}j{L@X*kv-o zM6;2LRn56>PL5Y*Bwl0z{5*#OLpyeRJUUGL09h4G3Jg!EqC$Lk_}JxotiW$J~cU#e+NN4~hDxaEM@VNur3O!9xp$WZK(GtDh zzy0B*rJbiOC2&4xH}zIIZ+tyO*!$IdG9fobclV?8SVlZC*PDznz&P@=zINVr0OOkDklgkc1Gm&=O&?{P~Xr?ucJ=AJmniA@!!m6t#xSg?)wz%N>s(g<|RBKJKqvcm^8yQpJmbRnEwXb&V=ym3}(y&!2J6Fpu z^{)4{!1TmI3R+)DM_!XGoIB%&;#h4i3n885rqU?Kh~=vl_M*miaB(hj%o_IOldLu>%@Y>m7+Yx*C}c zKCEzeK@KF+*r6Mp=*^KuQvt2&&z?aqigT=c8yf*@kA$;L2_@vWXbBh;=HJ|tveI=7=W)ycr&|s=wI`Jr_ zDxG-Mq_^LYXgieq^3(L2yYRGlJktnv5?+6UB0CLNGJ!Ei2- z$2*+1n;ckwS8S+Y)nk$LAwiO|!Xc2|>%j)-@|m&?F$%%`Q@*)rLsQVC8G0Mhr0q2c zyHdL->BV|W$t2Sg+G7ZaPh;jrh|arsBmD=1>+B_=i@o13Ql!bt#FLEg9#_)d67Co-1PShMS~5k9;lEQ^5o?Z(JDz7z{TI|y|4 z-A!pBceDhrHZ7XeNb+p>Xvi3l3K(~M>}^SLTLq5I_-FJk;;hE}R}ean3K^67M9-IO z@tUCr$cKe;mE`9TQ@UIw>3JMs#;@ceB%NkR3aV!KVf^Bv?VzMaR=HxuB3=+wW6&8Nx%{eK9(0SAB$3y&9$vR0D;gLwaPZzxpZvw?8 zO*lcoHY)psD)_vYI@oR2FG?Qx$k`O;Dd2!Q*X*<7Y~YvR?ua7R52kr5Pg zrC>z|?S_Vdi7K@z*AjT*L+**wAdSOLwAMOUZF%zBwFV ztVf*xwws065SB60TjIAOz6(KMQ18Rify8=Px{B~*%vXch#8A%RbI3jNo8PIQvEAb+ zqrs!J=N`$}+-1LuRR=Zy5;Y3hVQdp9Jz~2pIO2Q3+nR=3GI78mkhhlV2v(>ymZSM4 zDc0wLBAXv^xiWqfqO1K?~U$Niv%TY=2n!S$jtxNUv#`&3vYe_MJTL0s# zNs^0Szdp1fqGmeSVH_QOz7DfMvZBV}EwO2pAlLV0W5DazyH8|gzX;Oy>FIOSX)G?D zIe>Kwg-BsKgaV{sy+YTdR*rI_Yn2-f?|l6zC&&FYNNn|Hd+&BTUH?AUz7!)@W_ z@`~PppGE`@3Z-i}I{&18pF~Wc;poDXrhVz@f!tA-h^9U1N(+Whs4iHDU}DlhgSeA! zp*If98`moCAI^AiH}uA;hmzI2L)cBc3F0`HI}?@bH#IsNSxLTQ48B-8!PV zk>Rn4YkF%-$k9hhra`*#5YzE3*-pC(>%VUCHM!V!#6G-BYX}>LQ6eO53ygelG_+=0 zDRL9Tl%-V1c}{+@8vW>K=j_>P{u33Y1tLXtBvu)<-luooA2^%0+myZw+B6T3WEW2y+u3-%WS5)g*!|ricjZkQYj;_<1R^4- zukmhmyh2gyBA`_3?a&&j*@iQEQr@ZeK?mwy3f+xmpAR5Xv`5Yxre37qW5s!AM9!!L zj7mXGUbCcpSHG_0(o7o0Y!Mf0;hSl;%UWg>Rm0S0Ggo%m-d?p+;p|q=7~v(S{CI}b zjvHG(G!iEt=UHYt{fI1h$SUQG7>b9x7^XREbj^P9!|%yqcvh!Ox#n~klTbOSbAIgS zTeSK)u~Sw{j>(%z_qSLIe1^{Mo-I{c-w4lV==t+Myw>Mhri3joc}ts-(QGQY zj5x&)?a`cVmO0+~jegPI8H#qU%Q(-zcoY9m4J_w7bC(xJ72QbUl&7Z7Tp!Q@9;56Ak2SPljWxE=E=sO zz1gxAkDaUA6%T)_Jx%4&wrG9=ZzDu}3m!uhr$^k@2&>vPap&c4&L=BP?{cAD=dJA83l9@Es)=8d%|CwKbhN);eiuwZfmbMroPjaza9p?&?;0H(gjdX1 zOfN{nJMy3_Gvnwa{JL;)UHAEP&v}K4TApVSUT%Kq0d=FH4z#9&dH_@MB~mAO;eZzT zUSn!&VBBtSov&7U>cUVY)!9&ItZFy0ZPl{}Qc{z;NXn=0gjY;r9xthvf;-$I6a{VR z1b_g#J>AD^uk}%Cc~(5g_ll8X@feRl_j*_=jvU51akHYoM36j;;Zig}7}Q*)XOq7{ z;h;B31B}7WEqRB-hiXd{u#}O031R@WT#A)eNqIM3`W_$d4JU zX*`Rxf@9HP!8O!gR*h!BU=_&~l1C~Cs2CtY={=wdW0UrUhbSelflR8RE^K%HUhqOP%GtR`jbF8J^=ZY=r)}1VDDgF4Yc-fR(WD`F}WHep8f2xSQza zfhKkA4jT6pCL@p~MMsR1tg&oSp7k$mJj!1-i>xR~EGnOCu0WTnD$VAuZ_a^UolMmg9 zF;K+U;F!_C9Zf*5W#RCy$eM=w~cz-5j31OK6s<% zKLG5^PVMJ8m*W|NJ`8U37~OD1fu|Qp9Zq`)ksu44MSXN{5J;x=Tj&b#2w!XhS+^Z-{Ouf*#T7 zU*P=>U>v*%OK}KhhzI4cTAAs|WUVfkGc+cVO|JN{)Q4`Vy}MWa^Vaw315ax1lvc{$ z+XULaVpiIBDEevMsjw}s$Id)+-FtRO^q671=?)qHGx_H>ALHaco>V=%akrv|%Jfr- zy8imOhg)`M3e84-Ki1rGP;=~Jh;<`;H2C=*+h4stUpfC7wmjp|;Mb zV`K5Vb6a(tXa^=+P=|Y-Za7WOoH`ZO6!0Xj&R;NL;r!=N^PS7TuM9s7zYvZ&9B3Hb zG`8(c>HUNH5vT6FzrOdDu>`~WrS<-23wLVz4n_;@{xBLZotv-g)Sx=!Q*4Kl=D=b> z*6(4L9ZncKYsI)vyl6B0kZgV;sQ;T2)i;3Jp9X@YlY#^eb(4NcS2FkV^F2+bd(p!% zi5jW^Kza)VQI(`>`|my&q9yPVV-u9o&e)-7J;FT>PM>J#A~5P&T2iq`z9*X*r!YEJ zBgw>%L5Xx?XJUr=N;fr$B@fKVoY6BjjA1Yg;f^uu)1{x=KImCb*gSdlfw}OkeO6k; zar!xL#2fb38mWQ0CLSSE$g5OIs^WFU!ONKD&!0 zd+gze)gF3ezQ=I0z&8?WQFAYRyr_0K_lV=;+tLA!eL?YzgH)SUvk}F|uz1u#)Elpu zI-?7Y+py1u9nZwxi<*TL}0MIgh#C8J$onmpyx3m2t?a=|X?;<< zI|K4d6%NgjH0HR6=eWVOB{E*Hbrr`d6KV^#cshBhJ+#|B)I5A`c=1j(wkQVH62U-|PJYkg%cJ z@QroE&82`>xb<_=b6#e2kXiZ_CN>sQevFW?_&(Ct38gl6T{!#@C$A2FXu|%n($y84 z1f{Es@7`Nq?Yjy$znY0lq35`Iy z`{6#*W&OI3M94bZ)E{Z{k9PIm!Zv2~8Y0CfW?X^P zl^HK!#Xj_yLz0O9ii1pVHS_EE4I}P!vagX=;0CHrD_fj1lUIN)H0G?%%gvXs<7}Ll z?aSV1=yuM|lp3|%zUk~ftlUEBwxPyVofEl@hAyYwq+TA?ZF~vbV)F!%B;onry1It1XZs?rg;PjV0 zr%zg&2PusB9nXLS&PUgz&C}1=fr8S;{fhYxSTP5$nQ87^b3`H2|8a*j4^xDxotwY~ z5~(m_%-A4F9+Nj!OIP%QeJ@lIHwx-$k%v{$%PuKs#*dKJhR3#a-ofx~U_n=A1ovZXXG-*Z9U;4|s zUw#oI{zCg@>n}0CZ2V>YFPDC~^$SFxPY8ZD{IV_(H3u*O%Qs19l(;<0a+le*URO1C zo!a(Mb^5{14-L=W?0NX{)b@L|o|o@=LOdZK`_mR%XA5E+WGmh=wuJ_V_^H}go_hg) zVSFxiFCCXm!bml=U%V_7;@>`pNoKKF2s-J-(WQt}4I2-0*b+REppPepZJ$%tt*{T` zTbBAVGO@Mg{gh0OqJcC2$@c?;iji-EW1==@oDGVAAHQTnc8(FjKmAS!lj9t1X7!t= zN@jA5+5Hni@g}z@9=t=%N*^*PY~_2$`uf7o;BhRMcoBEE8EYGa$TxZ>M*~*1m~;?a zl;I93rx)LW$&Xv=@*U#o#XvBBPqUqSsjo@%VE%w!)OSJ;5Q0z|XS*|pD{K%M3PzJY z%eUs|9^%bbOanMwOG979^1jzGaDEv|QH^7JuxayCq3i~WOtXZA^S-J>()`&AUuG|4 z2czd}5I%u@j8P>{rn9l+5ig z;x{urjmnC>aoI&lL#>`d>Qz&tmR_Q@B^Tp4{%Y>douQfCwqpq+#O~}4WA$&ryUC&- zTMlh;Xh}Y&obmMXlrS;NHc0q--l1Pe@yfR(oT5Kxa~drs>+EPsx7qmZJx>F4rTYpe zTO6sUCl6~XXVpR;#yI$ijvoS?L~0nG%*q;j?tLg9r7im*b@Ry$vHlw;ZRE~1sD;S9 zd*^&J+wrO%y5QKgpd*O71Zv@tC_-i2hi^cg<_+jyIL+O|W#2Ja^#^C8#FQ;9H_C_Y zT`66_Dz{v$x*1`%X>+>oRnaK%E93$@x7)r4d*7)|ZRg1jpD**W%6x(e3jIz6t9j?g^bac`8s=lDrubC3#Nh;7Niq;)JE+ zuZ_v;tP>W3ol8%sX9=mhA+8(DU;*zw}Jy-KfYpIMF_ntG)oBW)wy+r4lqKRGa_ zY~tExNgv{ZQHt8vLs^AKqXt3l8N1vjK0Y+h?3mm`TzsSP>Z0MhE6PD?-u~4`N}I)o z3-;9k9-tmBZLpMA%2XeI^ZDKm&7!1R?~-pxw+!E_lMN8fkjI2t zXVhZuZ13(vuEgdm zpyWCgOtTj34*A^*f7|0VaZ*J6xS=>|!i&HD&Ba&E&q1G8RrkDDM?QasbNr6cx_4c& zOVC_6$g1D%1=C+glR?|GD>@ry z^fY~KUVRyn3aG1-VqdQ7S|6vof-&fdHLx3M98wk`4(~{ATsM>Wz4ceC3lN9H`JGbl zKU)Z=AC$*@)^p^!=udOj4xhNlc`n zBuT#Do@&3&E48u1oFi;=E)!{1cDF~J>3^Y5SaT+*U#V2)8Yt1W^}$9fhN~h5p79*O;+P%t-#DmTkAktT! ztS0JvJl(VByHs;$9A!OCcGOVi(SC2Lo38B+5w$I?P0*Q_YG*0RWNB|XZKImkJk{m4 zQALTgPbFdLa~E18kGy|3&~P*R01d_r_YaVIdmqZb>TY>sq8QURqxRn5^}9{8=g+rv zc*t`1T?^Y28ss};4kmT?sS=o7bY*ebf*`xRQBGT}#=dR?HB zb=c#e*sjX5r9iiwk+%#9#oboz^x5F_Rppd|w;G!dl_A~CNa_}Aw!Dn5 z-YxDp(079wuyv(iZ(gDiGv2mHEJL=g`t=2U2?*TV#^M)~4G|n!w`xVXl-JJ=+Yepq zZoW2$a8R&y&VxJB*oA04r_jYP#tbYNJkEa4xVm+(e@r8C4Can>YLcB6vTEP=RtPAm z3b3TyF`ISHwY357zpBgzrrnyDeBnZtH;05pl`1E+I5vn~W&k~@Xv)IuC zgjLUJ_hDy(h$qecoBQmwG)oi%HG{HDL#MT&juIva8J=wp{d%nq4gGZv-41OIB!_y3 zt^$mB#Z-Wg(bl%U@ECYsTKVZLNKW7)QpRnJuU$QINkJwr4cy=i}lAX^+ zv9at>_8WFA`vdzK`#n2_UCj<-=dcq^)67T}X~`(zG-1>Ylo~2E%?>4(mWmQd3rAtn zV5k;UOWKXJVnQxKme5LAB#2wp>wSVZiK4a zm_#3Z!xOomKI_#r$AY1rgzMBGPk7hIe21QfxZF!cY__MTBq zb>I4^N|COBbOfbJ?-06D1u07JHGn`uq?b^nN-qM^yMXji1B5Ca={0l&lrBB=@Q?5B zJ?H$-xc9^Ta>sZw_p|2O$%mb__MU5xHJ>@sGIGOkmf9!%^D_H1iOP$)C1LpmgbiW~ zp@ir`L?Ip!5{L$b7vcnAfS5sKApV;gko%BVc1b5OCl#(`wJ_Ic*NEEq+Hlt(*L>H{ zu6giyILx)hwbZr9HNmynHQhA>9uEHoPlY$aL*QTGN$@&&G`t+132%W1!Smst^^fHE zj;;8PwD?Y3s&=MZl3R6KbX%uerdvf?L|U6?57W&)>3bEzzrY*B=8gM|XN^aVR~9-J z#uoY)kPF=lQwu|M>)=1&pWtoqFYrEi9lQ(P1Runlc^pc#Ixl-cf@XhV(s#X=%;Mk$ z@Wk0&b<|ahKO_=fE4E7PBfkuTM~O`@OfL*CEG={`OfLLbSXk&=m|ehZBbMxt9Fy#q zL`rr`PDu_)E=qovoRA!poR{pCoRJ)nT$b#V9G4uBoRjR4oR%DxT$1dPoRs__xggmm zIV(9Txq|3Gj3N3FNJKYc3NeIOM0`g~AO;chh+f1DVg#{_=tPVo1`ug?a7_o%t zLQEolAQljPh*`uaVg=d(9fS5mk2>lM7fDSexq4UsQ=nQlOx(w}vjzb5a zbI=~>G;|oc1nq)OLVrLPpncF;=qPmMy5oB6y8jw^-F-cEJ#@Wz{r!64dhmMwy7zkK zdgOZfy7PMcdf_MH~Z%oWbvdx78*rc zCZR;b{&JwGpk!L`kjif+*F^9B7NCrvtl>xQ*OW|ziHiOCK!F;7VGy^<7p6CfHvKg~ z@fs<^!1C96OcZ3F!@F6Ya}2!JDE+FW$5s}vJKz9xufa7;oKguER(Z(rT4jdGF>xID zw1(F(u3S^}8QtfY{$3z?4aZz`^z)2Fp8hXDt{RcKFwmO@=7q#+;KK=(-h?CIgKZ}A z0hS4MpZ-`N`@|czM41WAqWG+Vdo(Qaz|=jtqR*xSPC(C^hjWR0iYT`0c)tOEV1Ua# z@pyU#61GqA@&lF|A6&4-KhrD5vh~GV4>)glxjYb0$W+i^D~{J5u-|ZV!4*%;R2*U3 zjCURI-tcv~-xP16z{{2r|7O5u!^H)s>9dJqCEIMg@IY~UqN*Ph!EG8Vo*_Ly&Y{oN9;#Hz5ely0pt>tFlOl10nS2?Aa zYm8!BwN6f+c083$xR7SpK6z$q(2b&*(=?`1V>Z`uLIOO-wx5f`vu)%CmPoIZpDo-S zKikH2lW!(nN_CPGE6f-daC2?OS^Dgx2rpU~18;k{K_$NYc`3OKkjU1^HFaakQb5?p zoe(Z1{84~z1Lu{mx1Tf%J=TJw1E)`XIHhBdQYZ{|&!Gn>c(8MStOk`{gW3ueIFsbnxm>ly7 z#MTlfo0|`lg00Dz`)K0RR@W&hMr~?nZY-@YZS*LMF!LabG4miZCzCNNC+j5Z6Gk)& zAEVzCi4k4O8=ctPI>87SG5JMcgoN^{CT6#GF`_(deo<}eD|rVK=UdmOSXa+)!~NA{ z^KvFew>D1+uUKy*{ngv^RwfR%&QBj+G2cd@)dKR`Cswu&P9I&d-$tR;?<`4N)B5lV zq6J2x}B5inK z9L+QG#o|p(A#wsl)4**U%QLEH!BvxN5E{yDCGf^zQ1DAFXIXXf94AP(fz~*yqH_l5 zK4YOi(@CILQ;(bn2^)W^_%UO>TT6@#12H!UEQEjuMXjxozd?iztP7Fg;Refvntdb+ z#Jv#cUgHds%IIiDDu_n7*D_!xbHrKAKzZC*EeFU>v;%kUF`X>}Rszy*pj*h=??eHi z)va?fAWW*pLeA3;65zw?;JN2}Z#}3bGoNe@N+JrfTG$sE%TULaL<)Ew)cmIn`e=9u^1p{Svm(w*5r&FbPgp*=$s zJv6(u!wkq*oifL@r;DP6X0>)M10mJ$Imta!6azHJuR{jNSRFUVzNd|mE6DWgYy+BC zSIvp-8Ka(FXWw@C17)jo=J@vXQFPZ?x1DHUKy~|^Y>Q3ghd6Q#@%2o?Kdu85k1#dr zKF6&I9i?4z`|8Qi|9HC;;in#nNct(XHR$IwE-F-EEzHm}DolscW{*b)tJw>MPPFVIEvHu-np^(GpD6vf+4C zfBC+R#5|>{Z+4UJkoZ!`*SZaVB?;2ocQ|}W>HDUQVkI3@GxOKN(f*}D8`iseM`LE7m5t5_~Xlz6L$bbH`RKV(hp#Q37( zM$})jJ$Pl{V9oOcdeM3#<1ZWVQMR9P?a_(yMZt{#8h}wg9LQPIJh8i|y%9%C1q8PD zo3HVm=wFm!wqQ#H1h)^YtU*pZFAz7gP(4@2uDa zYEu=5IBm&mqr|&2t#}3CsmeoKzsXOcaJqx6o>#*R6u3Dl$)loJyFXiTRM#0OadUkk z{}Dye9cjh-jx;Y^ftxHLQf(uj)4|H7I?_P5oK26)FS3_btWH51 z?=hn&t|M-H?ytRcjt3afGm%hyisDaL;;Uj=y|%Pv58;&!&_(ZmlW?G%JXn&kKdaA(MPYhQY;LVapB56)@#m3 zAzoTitl5;K;dVW)Yu-meUhi61%qXkE^?MxG+>gS%v|Cu0DG$Oud!Qp#Yko(87jJ!8 zWGHjOHGAyVT#rI8w0v3HC|ANEJ)UdOqu`5oH!S{?m>QKmkTuVvPZ!!ZtZ2%+i`av! z?33t|uO~^GnZq)zCv|Zge>sgx*8bqchPa=tZ;?x&`fv zzCk}g2chNA-_cCye6$sM4NZprjMhR=pas!2XczP`ngAV%R`u_BblV?y+pT#!G(=k)U|C9MeVf&Z%2HAP@KJ!`gQS+6R zj+L>M{uSg(_sZ1D5aT+gV9-yYFg<#%3#hrN`O5S2NKL!M?{L(ySzg+T< zYcFU|T-nt`UElZzM7Gz;u0FbwN5k5qWT#iASB5XgR+d(}Rwh?|tSqebt<0{BuB^y* z$d1YO%OYjFWv66^WEZ{XyvMxa6Od z>Kt+iIfWcUP>>_Y8RP_VesFl;CWAUSK0qBD9h@Dwdbs&yW@Qd&R0Xu(eVp8s-ICpq z-IHCD-I4t*`$zVt?6&ML*?rk{*^km7XinSD0}caD z1C9ew0Y?F6n0vta-QnHo-SHjjE+N*fkUiq-XBFPi)50WGT$d1f4&{NgjUg9G@v=D_}US3S(Ias(c;X>0?Zlb}H+r-@InOG9tK+G>T7wx7rdS4ib-u4k8@G8v)!^*L?lJLY5$1u%vyyNyc)oFsiLmo-Ui)*) zCgco`ZfqVCUKZY{`t!6WtPCD(oR6d&Kiu@VEVxlYa|a}}53Xz+96!1&zIlV@xpS6z z7weK-9G)M^Q5kZatfPwK5JFp`RFXC|maaZr`TMPFY17oA1A|Cay5?{dDE6rnGQs!hxo~+(?6`O7AUKX|j%DD5qAns!pk3a#?9=lHlp*J8w6ixTi{(Jk5*MQ7$Q%7T7Ux z&y+CB%GJ%k9FgMNR)uAehnr7Y6a!+eEG0m&g z(Jv{R7TGa!&uTVX%5~BaE6JGV+0k>)Xf|ES`=jGof|!=xF>}vpHkZz2(0NqyX_|TG z-C3%SiF97Jj%G>mw9t;>S*DL!Yp$6NUrEX|*N*O4x{qmV-m(s)1U@afV|teDWA2wL zqr+GdH_g7IeU^4*;+NN^V_s4%wX`hx2 zByS9)ivNhqy&8yj^AeX6FNn0W-$I99o8OiH4ZkD5F+Y@Fnct3IpWl;TlOMuw&L04K z3A2E`g?)g%hP{Uwz`S4zFd$3^<_1%PfnX*uUzi-s3a0fI|NAq7wP*Mf&j^omX{Umc zgLQ*+gQtV0gGGWwf_=vD(qAdR#kPUz!94gS4A>3C4EPLWkcY4#|MyYeAdX{_@WWe$kHg> z$lWN_$kZs<$k`~-$kr&@$lEB>_`Fe|k)u((k+o5zk*86*k-1T*k*iU%k-br@k*`tK z>zNn7*9$Lz7mJs$7iRa37n7Hu7pIqm7n_%;7q6F$*K;ocFAgtpFGZsBGaaKlh1LMA z0P|Um{P*(BsK$}|0?oG_vve!sV=Ky$Z7Oa;xBf(&p83Z}RoWe<3B~fL5KVpn5C7PT zI7@TU^pIO2Hye4M#+0ma8qT*F7Al}6^El`%>KBntLghBlL8$P zRo(wFaP#SXeG#R42cs?UZTa@Rh$-R=_R=~OxA&1|Hgch!Yk!7$ulkmlD=)3!#fb8r zuzhY>Srxn%A~))_ypWw(Ig=SpToB1CH?y!JR`M$&RnzU;bi9AoZhmQ$o_?2sevG`S zLUVY}p|Fukd6WWG39q2(`%{Gic3SD_EuRK?>4m)Peg0|clHS)sOLN~or(C^aE~Mp{ ze4VB=QOjuim-$@DOW#@+4Qz?vozaH;ZJk(FmTfepg#e}=`P6hdbhCTL&US%rXVkY< zNXnW6OPz9yxVE>69j_eK#mviU>Lu7U|A64SZ;-Z2rt(?7ts?{LY;HcrC@;D*m^zeA z{SOPB`+0l}MjC};S7c^RvJjCN>o{FxUBC}abQ1!}=^wl;-bxolPNsV{LwC9CZ|&rl zzUdcA-&UZY>eu@XwCYt5%(d!~dzTa+_{U%L8@`Kn81S2`0TFzGS-aW20>HFxoMqo? zeVd42t2a70*kz;_&ntG!b%fcCN!4eJkatXVun^r}7cJL4%)Dp&QQU$8MuL3brAqwx z-~?~whiLSe%ock>==*l7-9Qa&3DWtPF(+)FcjPdvi-y(*kN0)Q;s_1}r5u-ILG0Fq z`z#h(R>HIei2@Q-1+D@T6a`05vSP-YsI%Vef6cwc9A3`yDn0PQ-zsci*ka4g_^1)& zK|ZGWQmony3{6eK-Y?88gBzHrxF>8gK@NU2T2Cca246+FxSe2hUmWNvZ3pnU6 zIS2o>Vvv7<11$IaU@}SVL)Rw~^A2;A@2hu!8cY*d;8EZ2{fKWtfG42aQ>O!#6zPz# zz=Gi;?;DI&t326eno-P;(xFP@bura(AE#Bz$8n0{_%$|#&ij)ch#$P~ttK=l0+sS^Y2cTqDf-75ISpRD$D#XAwPq!$tNAOr z5p9Iy{>*|+bBbsN4|Z#QgxR=4)%$#X;c>3?DdB3PCCj$05v6YeaxtV1(QmEaS0p&JsmuS{s83U(mFKf9r4pKsO55pCJF_bC5zuZ;EioI? z!MIt~O6%=t9it7byJ?wcsH=O!MU)nohny!S!tC=C$YQ?MgG&EDAl)Ha$ND`*hQmMD zG5t$+Zgc)x^~}HaO!Mrj*ymQe6SI5KM6*cD*OZfep2m2}S+d;EY`2-f&$Vw_!%9;BaABz|*$FrBerLle#>1c4ne_r^V`Yc!I zJLm6;NPqo(=qWrBt+y{V=RD_Kb>GT#=Y4Ukk9(aqd}Uk%YaL>7LtHo6AtCm*3Jdlg zP8IqzmCB%;pC})1CC{}0DP#9hw}aLq;;G1_-lcO z9KWC8#1*CzBI!u?qF(eMwTGPN861-W8KQGuU}X`x362fCWXBMx^t{%ghEGkS<4&>8 z9odl8O$N6n! zSZp6TEO1k?^zJ)it`4pR`QuZ$F~V1T*scHX#PLTuCHK8ovJY7^Vfj{zsKH`bK#m-{rL`Bf@BYmxK(HJ?kc&Ll7c@*hK1frY_7RY$F!LZA=M4#oTSm$HPf+a9!~ zp_m-rt;N}YQlFn%k7dI=Db#s*7mxzqdY^hJ9jpuD3^n4f=Qh=RS3m8MF+zUTZiaFX zki0aweagxy@^WIP%het+BgpMAbMR?dHMfdvD-ZjMJ#bki*Y0zA#V5eMQ`HB?;(=x= zxte5K3D^xT6EFRc{rDFwf%_>Pq8b+0ti(|debl?9JBU@tkD}RnClzk;BN}mLm^*LS z4VJJQJc7xjlr(8u$T)Y?)Ik*zZHIb zZJ+z_A8yY2v^2otn{i)@Bvkoyiyvt*dy$uoZp(Gt{F!Yk0YzN(dRG5I|Lm+xz%oUg zqBM7CR^~7QbYIXo7u9*ckpMnz}-)C|o zoTIYV?+#7Yi?_x3YCwu5XY@+1*I=m;#`KV>q{HNu0_!0ynHN5OOE3$Tn9VBNe`w$N zqLTDctHT0TO6TtDRWJ)pBX4b<(ZZt-A}yiVW^xY>o|S}wK*)3*?S=s5qG*sSnljw~Ijn77tP%U?Pua^T8{za}oUMc(qR~bx3WwzHjBTJiMhp zC4KaAsPR|&v|H7rg8PAJA)*Y@qsppd>PIf|5MeCKJS{>ayKcxve11xTI#u79e*S$X z12|(3QTqlv*p8tmd#o@pPKe201CM_O0)mz$EV) z#)T;IP>zGCxG=LHyYzc=^=C;xcy-Fs&qYM?+Tn25+_U`OyZ0-Q^8w7b#_Ky^V)&Uw zYKa5#Tl$3&b-fwwa%uXPvarO`qWV%A%i#}}!_Q{ahSOhF(eRf4#bSDA1;+G(!G79d zMbTB677CS4@dT`jgv;Wy~-2lj*wnmx7y=a%7v7 zvka6>1Ud4@n_$pnO81S1y1CY5%G4>Vh@T3E3dPzh$BmJDTQ1Yy46WLs+;W9Ai$aI$ z;?pRJ9x11#MGUP8Rp~k!8JI8ZgFw-H?EjirZ;chjr1MNy@= zaEA}XeTrf0OkK_iKO6f$m;eF1g7j20u~9_-%dJy3zKnk>ua~A5o0(q@r;mq%+omv&4W&lwH1PGyGy0~J5A9zx5${`zxFn!ceE2s-lrzaMlkEZDt}`HDyAL$9*hSaW;Szo-uR4>F-(RKl=c$kb;YnFJk^6y`s4x#HQB(!ns8omGo^esO}UQ zk+*%K^B;VnUPML1x7l#T1R8ry`=b%@G@j3eYz=G|Lx&m()10XU*Li^@og$gpG#aBs z#dcwnLS5U2wjW{&;%Q_?iE`}1MuoaI(|(>b5a!S*KNnJc_Ag@PZ0SRX00e2yPXyOr z0DIr{N2@2(bmsgIFlS><0{Z{O|2mavG#c~k|LOj>L*2Ct(d4Y|T8nU5PycP(zR@c( zJnS?utkFMQIT+)ZPB$woR%!2KGP#(l*d!3;Qjq6jP5G;rdoac@iLUmAnC&~Kq5OaQ z{?kEh{wu7?rAxo*XW8PRuG0mlm~S#&+u;9iZn(k~;AzF{aw2}H`j6-t#N+m|ik0|x z`|nmi$T-FIG7O7VJP*T4ofxbHHT%AP_Aotp<^b5ttunDK$Tm>)Bbz0MH!;4HdciIB zb%spS&*7GI%@j!$aPy)H*W@n^T8$J*dtuW*Uyt0H64@}0bc}=JYHIA@1l6)}HUklw ztoOj5d&0_$xW4w>p`VpiuhQWf5C1|cP+0~K*s0Thd|DLY&_l4_FIB&?jZ;o*TZKVG zJH{|&i7I)hf;6=<#%9#t@3Pgolg~Ftkhj``mw(>buQVu~G5fk)q+NXZP(XYxEA z#veCL%Qs)~WVIxJSi9%c>B&CxI_XEDV+s;}SR4L?9l;PZ@azTu9Zu{LA$C$EThRl# z+zw|`Y)kT2Lkciv=C3wSUdM6BT@(4d4(5nQYpwZ-@6+tY)TNPa3$RYu4zevTtbZq2 z@Fy)7=_0E*J76U!2(J~9-9Ywd^#RorxeHk0gJNxMD_S8_RkL8KS;cH^f zgaQIBL%zbu$eOsp6H1gI0CGVb3I3e{npj%#XEc$6fdE&4{r^jm)2{@?2rk$wum2YW3sKzri&ORzu zz#?BDECNXl{t-=o!lx%ljUy4&+G$mZ>V zhl!9=iX7sR)JGaINmK`Afq$-u57UCh-ou}|;1h0;QT9LQj+ZoeW(Rv&X%R@@`JgFK zv5S_fLz%?F@__vrkd`Trn;Ycs7YoLHWSuVXiJORD3-kB58Nq5DmDWj`UO&w>u1010 zh4pDwV6WTpQ}*8VWxpwx{&b;dKm5vZ*75@8PKay_RVP*&^fao*H623CXVehxj!m0= zs=Rxw)WP%WkKgC{OKeN(aU2&G!b}26Ks{GFHJ?;{zWo7o70BEv!DL5M9L*DsvIJ7( z4Lf7CN$b_0ymw7<_bRrzv_W@gS1akH_LXutHcuU8_S4@e{azIleAr$gh(C0@zHJ~; zN}jg9(ocWapt>YiULa8+C~WgYE!}dC?RK^|>hdcMSjtUQurbe`9ds9qS@=wt@x6S3 znD@`fsButLGkee6mI~yOj{jiVQO5Iv#9d50(Y02_s^68+K4im6- zh$)9VetPP&okEe5{BCkbUGmL)5wjgLc2u*%lGGedNO!%M?Sl-Evm|x*X+6n4HL>5=G2qhCH_%|6mHJ(SF2S{Ccb{nX=!F z&r<&jKh=+JT1~)upITCC9~sSd;c!f?_YVrkWl!we$r!e9RY!hH?h^I7d!IBVYxyo; zLczGU!bvYXW3eNvKgw}~NZMKng9%sPQ6G0U^fKNA;3ob8VZNee(Mgf!7pDTZzn;N` z&6>t*KGx`xPZ4yZP`1F)`k5~Axsv?&zZRjW*~KJXZHE~Rw@hilPZbH`pqL>`$1>r@ zrp{qvr+?RdrJWVDCd}c(_Z@*G2F!j5x+#AbeK95)(f z*{`0}?@0~WSnf;oN0K<+8A9%%Uw^7!;4cQSaeolWzlTLB`lgTVbOA_R*3e-R+A26+ zvryEq-%$dtOqB?J3OJMXc=lemqOM_fx`HR%z0zoAcNI|&{=S6X)npod)=8Z3os*u+ zeh>VHi>VCNy=W`gHTY_g-98N;0UvH&x+|PBqPAG0H7YfqU2p|%I&Lo?nuN( zVyOK0SS+u}Kat4mQI;hKtX#Ah~P_TR<0ou3wmh-rUEaQvK3LLRW9oFn{9ZACi= zeWE+K#!1#HZI)!#CD$rh)z-<_obkz<%2P^D%=4CE-Rccw<2_{Ky<}oDss?b@@(MCN z5dLm`hzz%L*SBusj2cT<_#Sjs_s9gNm2<0;m9wlvUdzO=-YfUhV;6kh7j&25m3Q4V zU1UeQWX|nmGLVQ}S5}l0jggJD<%Z`lwKE}Dfw0mm;JIv-2_6t&e4)8}@N(g?&*ANNb3h)D!x0Ir=2QA-G^b728UjF&u4UYZl zo;oS?+p{};vRp^Jge1JQB)sG#7?G+0c45pBuz?Uc;8Cr*n*8nIPs6p4qV5Rwh{SZV z5jTAH=5k}Hy14hR@DFOZ_ZgqV0*HIfUe{>wTWJECRLTp3qqriZ=Q=2&zgo5GUlU20 zw7zVx#4!xx3HO<_0_NKBDHzu$&->3MK7l6C4fdKH1|{ZnQ$A9)HIg0Eu*@=p-k&uS zZlEeYY^`%3Umvc>i{)ZLJ@6^z;Rl^kh!TAEB4jzEMAGAk>RS4VbSDz9TvCda5MPo{#$sszngxsDARE z5VaPm5myTJuGu^neN-Y00r$S`k@{7nK)eps2gk-8X_ZNA=IL7L#VDKA8!D?@51?Di zyQMlciNP5~cA_cI$}`xZ(coPsNe+b}%7A^2hV{;EQ;;&S@A2HEC(Agi==Hr~--|BQ zYU#76jC3E{6NaIoIU=FGG=Qk9oo^6lC1+2>w!7^KY;2)>s?M9VBu#UjPG{e|Pj%Rr z_8`~cuGGNcH+f2Y`2oYarf_#jiE+IW%T-RgZq1xcNsmZt>3ngRf9c$EYQp!|QQATi z=`@MMyl>PGERFjlW+h7J%B&;;zMefvBLf5X*)x7HW)v?bz3=kU7U|L#0qUhE9nB<` zfSZtBM)fdLE4}CyU7;4O+A^mWm=SPGsex*rwn#TKppVU8D{8)8fG#aNCVgbyKH1=B zxqUXMG^8^UO!xHnK%J#HU{XlujT+sT03jjG2%3`C-^;?x8bf&HG%LaeVeAelAL!&z zQ0snxv_h4x>QmpJ-WQ zAv9?CqE@7QKE1tZdF-h5SfDL5 zu{kSw{N2sDVqbuH(w+A^G+fE@OMeK5WBpEmg-n~vN8q)oOiT-j67Pf zHi`R2eJ3rNGQLKj5g#qK;uEQc-&*2#-Dov>?h36Yb&T1qx19X#hfG>*?v2d9!+PLg zJAuhZvp!tz{J`|WikaEkd;_;Pi=K#{XaI+f2ASFLOR*`9qgwENAb>cLjV8( literal 0 HcmV?d00001 diff --git a/docs/_static/fonts/Lato/lato-bold.woff2 b/docs/_static/fonts/Lato/lato-bold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..bb195043cfc07fa52741c6144d7378b5ba8be4c5 GIT binary patch literal 184912 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

x{o9f|7gEmo2*wv z?7&s&_B`qFUY>GLIw{v9To*&gMh;QhE+?bNPT0R?7!`WA618s`CAQKeiO`;^lCE7l zbz3bz(~KSUi0*_@EX5E7Q;9_AOU#0)g9SQJMW>@d zY+IpgICVmz?J?Un@WIW;+paH$Ls6Yy9uVS(MLkv>KF4lK$zKvam&_6Or)9Bl>emu$ z428RkeA!X%k@vI69SslFI?qfJmKfenq(ge{M5n_The>b{Z^oS#cE~}Sgke5ja@QI9G z8|1I34v{mkaQWgI?n>CBQb7qfL_bflb>64hs0?jpaU)4;6KgCw{nY?l&!%o58h!zb z<1V8idvq$r0=jqd5KoQUPec-UMPga8R!HR)41iOG-E)<*`G9nnqE z;EX_&2+!w_gjL^*7V~Npl$dke48^=V09mo-!N|(Nfcd_~zMcrcI{L5#e%v_eTZkc~ z$j)BqhI!a%a(rJY%i|sAz9WX^uPR)1(y^v`H4QaOad5AMcG6my*LWFHHl^0NDE$cH zQ3iPx<{C7trrDrJxg@YqAkD2nCF@+5RH9NT6x`HqXM{+aXFze7kR29dS4;#BDR=aA zM``BZjj@FhtZB+iQY?l$A3TrtI_hq@E-Fzu6IsmxjXg~;eP+6!y-~qJO1d+B9irr|Anq{O&h2Fw zUj_S7xKJj~9Or++bbEV;xlZx`nWx={GcO*l&My%%GIZek^2$Vm%hInpzySYatsGL5 z@?zK!hpSn2DI>%IVS*I`8YJtw4aeKeuhZe{QXEGom};$;NZ|^cP8vmwT<~UJXqqb& zNPx$eo*Qc*%`Mu|(Zk3ffHv_4`pGbH@l1rUH<562Cg5g)@L8|VE3iOnVCD>4z(hwDq@Aab5vNFQoWCs9pgJRajQ zdfvPHC4PZa5L-4-gkhM+>#2Yyzqk!&BMOrJ96>wEZ*|xMqVFow%+o7_w;TbOsth8- z{xIc!i92<|ksx-j-^N12(SVf$Ernf1P{?wlc*zbHDV&v~bdO|z`D$CTGE_Diy)nW#YC|7$+eEyl z>mI-D*z?ez!b8|uKhqTGIcXh4jOJmIjsSalr>4}xeO#3-?6=V)@tJWicKfXBt1vr~ z@-M(+P0r@Mos3Y{BxQv8m7{X!NrcfE508imh%Z6hH`(+$q8JV91;qG)HU-0p?zhSH zR}&EX0p#?<>0Tmtqaat9naqi2=n&13pMw+5I4-jGET+?&eZFSQTwZ?c+~$>b6&RZk zy9#|~%pPblsnJgPSPFw~j%;|uZWYV<^YfmS1=P1T^7nk+?-Hs;NsigEP8=a-7spzj zll(w4386N}<7S6^GdM2d{4&zVV?Ewu!=0uqtk3v#T*JHhgz{b!IwbTmF|U<+mC?!l zNJKfwoQ>u|JK7+ka$HMJv1vl|cz7ri6jj9;yIni#he!EK3xBui%ns8=vpj*zpNhQ9 zJVv;-@WVNp@@&uNv?TVaV;v5SDdioD_SzjB7sLi>50Kbpj%vYgXbr(qSBWXqUDZ^i z$^~_CQ+%+?Tyn* zMaz1gquS}L15xs!g4J6_m*qW3m0powcuGF&mW;Ph!)4+$$wCq5!q^; zSwJWdtwi*vGUObe%!ehjr4M*a6i(DLFsYaR9r~D4A|W4@p6(g;9J=4$^OX^l|&{(g=Fc?IuTy z$i4=SNQnvgvFndhq`&o;3WnTEh(JoiUL`@+x#rcRxbuhp&b=y`*4t!t+V6Kf)B^1x z7t4|gaC*stWQ)DISIIQAJ-SbOGerwh_0`zFtRN( zp~U`RnqFNz8W5myIOoV;%Def28=V!S!2FYjwPFmyC)RZz`B~}C5UVuL1Rx;`u%IZA z4+7IePhn@{LrEP8ozz3FPCg1niYGPfi*L)h1oj6pIO77hMaQPzBpjB3fxJ|Nxc5C8 zM2Pqhfh9KgX4M-IEyE+@ct--0l^d589|z}>GuGIwE9d$vZL8?S#foiHsqkV*{kEEj zZId((k|uCz*Bqvh^Gn3sC?*AL8;RmoNyp}AC9wo;p?g=AkJ{TEDI-~Za;N?rDGCiJ80 z#Q=;RF;pJSeXzC<(Z0@JFGvIu*ECJB8Dp4KX+iOR;4Q6*eS?Hrl~U;`eeMO?d@Yj2 z8p|YdN_nDs==*8vrL2}G=ylVAucdB&&W8Nz`|!5?>2@+De~1R6>H5f#n4^QuP~zP- z{`%bILg*W7{X;9Gq0z;P%J@Fkfk!L!YoG$WJ-RzC6wHl_tF)?56H4Y9BB+Mlp3l;- zlq?H#42oHQmH2`!W3dePNmZlaPD$HEP|3XDLBgERniw}gE}4h2iO=%LF(4k3o~Fnl znL5WM7Pe}R%2xYK8H#meF^H}SQ~Ev8z6pXTk&(Vs7QPUZN1=j|BMBu*sw)4O7o)}7 zQHqURjnDE3LY`3v7s^G^02wFDkz$7`vEQ=QW?r>ar!N`lfi`iBz5)(nBEfJ;!MBEB z|HwB^6Su@P-=;AorwA~}Pjo%dQiiLZwnfIAXXfnTtbSXR=Mvd0_Mw&Qk#@HF44$iB z!kA0ae>qFo4Y&cfpz_ksHhxOLR_6S$u`L>}{1(J7w8N9a7MD+2<6S*umhOx?mco<5 z4580~N@)OM5ofifNER}VD)-`K1kKFkBePhaA-G1uH3%=7q1zS*`@2i_B5U34o3twx zm8x=|r=?7gC`@riaVq?`k@ORg{x9B0N=a%BnHO8nO6#E%&@$hqYEEWIbU=cvuFzJXsYOD-+OL@XH|I+OIi@f}NJrQ=&3j#K^#3 zLRpY}?JvdfMFxq+i1y4vJ*L?wq3G1HPqh5)V!^I`;obY=gI`eI2uWSk%6}OKv!q^9 z78=4@?$G%RpOyofDXlu$y30(iq6AhfuH zqd!mm^CS{qWTg+>#alta zyot0tZtf}SpofZ03_wn!#xBQU=#Lgv$F&uqITMPVI0qqkQpxQ9q}kPD2Fwcs>mL7~-;ug&rgneG^R8MTpePS(MkW4&;k;Y3onw@O>NvmmGkD4#9!xO~yjE1E(s=V2{}{8{QzhxQfk8FpqCmd|DKzV^2GZ`d zuFl18AP=!}@^QLkyCTy(CdYf^UgmuYOE3GNk&jMrkOIEw`QRH@ue zS*@Bpd+E0hnw&4NcpR>8;#b)_F%3lEk+d_^qg%HPTu znB8W#o&$vTlSRP}g6-XTuAsZbcYs`7SluI-^LU4XtkaA3vbn=ikaaIpd z7o?%rQb02g2)w^!SzmHqYNJ*?%VEQ8MKr2QHLCzUK*GOAqcnfMel(8SlSV8doJ-Qd zk9Rq4h?x!$k}3iV>9CLisr|B$NXqP5fq8%AY!t1{0NuK^4bGAsByNqoWNC-}OI9Fk zJ1C_)rMxxC{Wm+3zcPzNa*rg2Bp7ntKPd+9g+*c+$;t#Su9Msa7R;KLoGcAxG?5&^K=#kG&Z3&0i5G3@7ItzLhX{Y8h3_?HOL;tl3XBUXH_e; zw6^_((WG@MFMC9iyV|s@Q7-oW%K{j0lf1$z5k3I)0Xe4`f`Q!CKrxE*x+sm)3Hw(DK`%sELtU~(k1^VILd{S0fOp{g&rwR~U?9XpY$YrTS zLS>A57Ge}@_Oyk$Tlw5EDqN_mq+2(O=18$1CPc1lt+z++U|}!eGoaAmc7Ly8H+oYo zE|RMOP)F!}R%EB{FB~=(}Rw#*h^`UTwxCL4_Y__bMx=!E;N>r#Skwy|P z=}MdZZJo*Kmjs2aEXuP>jsy~W#pU@em5x&9aLPRy^b(1Mp~@-E%5c)0-~(m9NoR%I z`^)>3U4oMCoxR+_jcc?h3)$NHxHOct3{JFVWr16tIA$lQ>XZ8{3EX%gu^R)w}iPHg_Htle)QSfBt4Tpozs#^r(m{cSIsiRBXz`m!RH z>c$_~oIiUi*#s-I#znN(aW7Y(p%s4)dT5i};#5^w!y8Rd(bSILS&|@aQoRqRtEc$= zIpk`90Db-p1y%uxRI7)#NOK2dkHni1wALRpGA%j&^+0Ixp=xWvX2JDa1({Ue`yxCB< z-ikxOd0%)gp|rPytHg!~%ouJs8+%qoJ29>PpypG?k5AvXhMce{Is z=(4eIuf?*Xz*`kWQciTnO*K$#k??D@shtoH!K^?RCxc@0R(LSqoV*#l7prr#2YF=u zb&l|*Ia3g!PE|n~EfAU)?dI(>F?TD;`TUdoihaP_f>^$RHoGwM_6|L&Tm53uY&$Yu zZMV^!gO@ROFK3f#&dcfTLP0mB_O&$?PB6KF()eK}QB5k@8MW6FYc?-q|HccuPh{~PbOZw6KyNL38jKQb(b_&dXfSc#|$YTf7Ogu~o&)Gs2GnX@reRoRtV zv{bXkLiR`;rg1m3}6h|!S()J`e^$apYizZT<$96gT?#X`Osv2dXn z!iSI2S7~_(yc+eex0%2zAhQM5ibUzSXdY2 z7@F*uSbHqFDW?(~-r!^nh<&AqCqNfp)1CrB*6WYcVWD>ZNhQ#_XWZ1sH*_kJ))Q(Z zwa?YeqOe|(?jpUdO*}=?amon3Hx%8`v%nHBVeG*gJo-_i)NF0>DAvWeP|Z#Ik4I}^ zoG$5gt+Fy)gYfyv72~_BWoL|t%Iv-r+cXSOjIURXoThjiN!aDk#_t#P!CuX;cZx+v zQ}KE@T(v;Cz>@A$|3A$eq}C|n`uGlXaN=q%c02)@zr>N|)~kxPZ}w)n8y~MclEzdB ziL+}t1fn*1XI?2IHtZrxR_?%HB_?k64#S>?l)W7Wh?Te6Q0PYVXv~qcWRh3@Iuy^5 zd=NfE+IGMje!_=>%Jb^2029_k2ns!YD|eSk47lvuRoXkBvZ+Suk`VvM9?Y=!p^BqC zLZEE#B4)Ozz6&V_K}Eeq5N)2m^`(i&61LmKo=$}1EPagmsDI-J?2J)UN|u3)59oYJ zPzaaD&rZLTNLC@15h53pFMc$CH`5oIe=YKxU-MVZUlw^U|2fS!izkljytt?D`fcLd zzg;EoRi$glN|dk?`ezXzH`SqM^$00>rf>wqX{-Z%t!&c}OE!1^+k3tBKtk3{pG4$> z2ugNt1XYV*>ORMhH5>V&nyy3OpO#e0YRV`eNwSW}`8n-iij5!JyPh%*gvYIt0Ef&t zhwv>rTTls4!X+EGF3!j~L^pv3X??}(Y%4H_5B*b$qNtS9z+#f8r&G8-M!#SRGUheE4*i*`)JwH5 zWvR#7V+BYvIH5P$ag{+sB94S`Al>dm=wwIcC*RJC)kp!*L zF;`6b%3$P8d&v5AMA0$E5=`eu_Zhbv2qoM$d*gZXL8@>hkIGq#yBK)v5B$g!Vf6C- zrPGM{hnUw+FB*D?>y2QPM-d8JfTY>B7rPitXLRagGDwCRF3U3*OZr(%QVw@D2SotMY=jVA3yrQ2I6hu6Zdd z@^8gA8HE+MCpgOH@7QTG^Dy}+y`LhCkfQ-;`4FUETpNXkgHH%tljxPHmHM;Rob~_n z)nEQ+s#@k4pxZ>G$$X&}s<4`3a;mng`Ty59|CiBi>Ob%;tR#^P{uSXj<`Vji!};FW ziAHE-MQ(QAvrIQXtN#SDdG|L%S371BR*yqS6zfB|tsJ)8iJbR21mXFt!v!aiJ-}N> z1(}!}xz-dxNs5JtWUPNwejhN`<#79-_dU<5y-09WZXT)5d-8y`9NTrg7GB-#N=KBsI@7w6`MLbMjt$ zcMzFgfRL>ghB063VVk@*#9{Jf?8W}?)p4+|9^A*C3ES55MmBUz+wKe*QjNwV&=)d# zID4|VrGELxlOh0hN@RjX(p(Q?g}~!bhdH*s$8^Knrzb`@CryvD(_Y*mtDXX3xd&E@<^NbF zvwMxPj3R-;+Q}vF0C?60n3TxuuAts)?Kw@KH)C(b7uBI+#p38bBSjsm*`kuo^c}RM zCw-D0{&Kup|1%)gvn(9WqUmgCaew%){m{dQQLutsuoLvEZHjXK*i|Y&KHS7raiCaf z%-1zut$YelsC=QQ5^4bO#;pUP$yJM}EwdF*kRu15U)5^_)F_-yfMbJlYg&7>ilb0O zZYZZ^8&w`-9Wi{v>EdsMfup}rc``esH&Ur&I) zNcGNf=*vjR=1gBs!g5{0Qtmz9+sRWRW83X>sj@5H8z?BqZ^DG`QQ0!exV+sb6qc>t zSCF?RnnDe1`ze7?9MwpRPLu>mb<^CW!=sA{)|D(i#GQ z%s~>V+F(x)1NjF9@AmkF&i_gY{8nn^jt}oELI>mxR1g~!$Usj#q}^-B`Nr~xALPi! z-E$1xd9`>)7zWusa1ma>COzPN2x;t({fS{y)0C;D@MZ*W+YJia&~+RcBjq{wdXjh= zwvA`1w&0hz6(yCX8m zTN<&DL_T1veO-oSl*BYd9HNbM^gbkmg)yN<17{n4=7xxpRN-8*4Ee=?p>S-byxU2q zC{k}QdrlEph++7-V^|`!P>zvhkfKXQ3&^Q&oYGxqFVZBQ(v^V#j*ZHGpy2{B-s zu9inTzVxh2ky5cEd3r}p)%4q|g8#i`(82X`Kt8B7-ncW=%sabiv8QjUp6kq@Jv?uNBY4RNX<9VUhnc}90vcZpc6HD!vN-D=HKR}`+W^iM(G>MTXTVcSVSbZf?3)d21Bu?Mp0y~0ZFa|(_B;-_1$YARFU!Uf? z2#6_%mty;LKU?pssg>g#|HTu;g}1je2^r0?bA}TKgPmB@33>xV^#loPq~Sve>xEZE zDlhg>Nun;OoK4`Z`F3JsZB~rM^8_sSmti1|3H?6@ z#`*JvxVus=KwwIs0jgf+9A70NJdt6~C|dmP^bHCGN{rX>)|J9W2*XdX^?`5sKasez z!gB51m(lCC@i)hU(_^T?{I!nE%K_P|ge=F0q7vFoHca|bKonw1mlg3IY7}W7_$*xPQ&qQ!0g!W> z`WS+L)7^vjJ~6(jmH!NPYC-&1tOrs09>D%dQy;v7e5g6QFkMz+oIa|_u;j1i>ebyh zX-}P8JJNHBiC+{vG6E$qBzT%u;0?ND&ha~cK?w{CAjd>B?x)xJK+ zT$$`*M+*BPZitWO%OUz0_VIXDRwP_17>60V zCg?Pd#yoD-vpC^n9=D@jtsh1-wFzM=1Cl8aCN&i3tlu5O$?KO1dKBs(R;Mo^MnB z^!MM|f289;dhFpG;QL@_qBR3?;MZvOPK;MDKg>~cJu~;zYB9&3TOjpE>m5~S zr12w(+oOa`KCf%sl4jtV=cp|j-YClunnPAm)YgTFoSqd@Z@!!bQ?FVv*(Es=vVo;W zf#pFZ9a1*aV~@Cpg$IoGvhg33N5jfGt42-Bxea_mP2*tJZj z;;#?MUUL%*feY=)ivBI-0`?I3^LVNHW42G^3~=DzSPmLmy*yOP|Dt1Uqz>KsJDnH)m{0l zwcTE%t5tVUHyi(@li{@3#Z-4cn@Fu)r_H?Q$bOSdMmUQPgUmy@Y%0H^)4^BBOLD*r z(RniIt4SUviv4zUKr;Uh-}HCLn>Lu3`05rIA4~cM>>n|rU}~Br(E4fXHP|EHnI=wM zRE!t`bO}QS8TuwNQadZHtNRSCA*|8x(R#{09+aC`i0^iPfvq@~rz{pW6nN;I`lkD= zQBk9%jYa5?cQNZFDrGzv#QNYDo82HB7#UZ}JvGQqf8o_&RUE0ylij?lfNf+zfnm4r ztPJtTV$|jFD$=DtP?OGWd(+38-Qqp0ia|GRGtTlm8ce5d*s#@^n>OtUOEJ*SQ`fiI z-WJ~h0ex7eI{d^Gv1EHTrjhIKCO&W26?E=UcYj2Q5xf!%(R)29TK!yHgpp*5;^b?I zo2Y#xyL48N@R`X&*l}*n9$hecq{tNd$;H^lrJc8id8@apt@_m2jHQBdRxh^lg(B_r zy2O&;?5nRWsF|Kpa2`iJH zoZO5o(90?U1_Gn(vO78&L?Mbmf<$mmD_*aJj|eMBsk8axLnuo_8^=+UFyY*tNHLHS zq!Z#yYhfb$vRuCxW&po&62B>ChH`q%Is z2u$IY(H4LvI?FLYC5?Cg?&4upAguEGx4nBu~A|RFhm`tj1=+H)pxR0xy zaZWjjGk3Bo=j@5`?fFY9RVtEP>G;_D;`;*Z+J@&c>y9YCW|}JS2n9zLG7V-uz66uB}TAuCW8?op%LS0cp_)`u8j zNb@Dt2V`@%me2>DBbDnnus6d{=UZ2ep!Ydv@~)DDf!1<)SxZUF(->AUE1XdGHq%_# zsvSi3?3~W>q6T86+egrJOatW-yozcb`uXbpk$nSrQ39dCHfdHTgdbKBF^;#gJ{7Fq z#yjIPifBD&?L=hZP=|WCk}t9hPmv0~Jm8X(pZOk2p_8kj0-AZD)^xS0#B>mDRCh!) zPgvORhcs1sa{)SHx>Sl!BSm>?oC!MV)HFjiGE#Qz1Xe|t8lt-%w5q^|Ax8griRyR_6|YCBpDySt+uy`m{=cc+Dd=CvqYfvDP$m8jcn4kQ%VbIO<~eG%;d2-(X@s$UwVm1O4@~Iki)yEcH*fJ6wkq~ z+#DETg}6tk9_l?nkQMRRChP8)F{%7|;(}&!@p&z%7@nwya5-HfEZMvRj*_>^ZVNNi z9i~|Q(8<<9FO$%D_+yW<`GApAffvPFV|9KV}So3y&>O9S$=4 zTx`yBAPfKcf)0Jm_TIbfp9!-q8y7F}UpDX}{+;gwxQD-by`EbQmxJb^X3Q|Pi)U~AvO!Iw>~%3v zrrQM(85{<)aB@WXaGC*LLIN@jjJxVM_C$XT3>=h3gKB`qx+$a<17pF5 z^HCnv9yEy*iMg{<(AoRN3urZ@0?v?^73`omf3{+MH$4e0N0+9iQ|*`lU=)JZhh&4WuqU%7+V`P}L< z_9NYRp)*|^VpMdzk~@vff7Y%_qlNx9>o?xJD4OHHYunA@KN*gKg)%{ovaaS&slhrL zI6Xh*C?BBm4B%*q9t{K;>ohfuL+-;usE+WV#?puy)b^_eb*VI1<`bX}iJ2ufB6{~+ z8;UZ9@^wvA-!0u%b>T?CAG_e;?UW=MW?LT<-ag6?O_Bs0#9iz}@d*PE3`1U^XgeCT z^hL?=D8Jm|%Oy8#ifz}CQ%`YPpysAnK>3LJli3gUL}DUia5M~x%d&_5BVqUq|4Ro53*y1L8o-ZWQv4C=Hx3BSZv#4z^dhwfyiMf`zLmi#f@C(J2jK&XuL+D) zqq4ZzuAL7tVShwN`Ov5NTQ)PPfol;b->6K@2qJQl`{s9)m|}hzX#| zL8DIMsMA?ybqJPRvBwD#petK1s2O$vVes++ZJ?nJRfP?IR|v!PSC1kz_>w_eRJ)Bd!9JT7*S^MDDD*UY=kGPyLknG0C&YJs)o)Y2(TW9 zVkVpD9{+1#-iWisF+gZ{)@#i>&@guqpnqQ?^g{wf>^|v< zv%WjoH}_%gdvx(p?pCxoRlz=KjvrcI$(g}a1mv#_A+>(Em}sc6aHnUC6r`QHbCd$! zLJ1*%#Iq7}kd6--{)`qt=u2vguq%Tb4!z(JYQ-kvMW{(0 zP=DAnFh;p~_2IZ1iyp)!2G6UN#Q>0DmD-JR(JjZ!>rFhzO`>~Sq<_bd&N-cfKwu%C zf+B2aB;A|l855P&{mwaFK$@v5*VnuoS8D7cp<9ONr&m^iFw*MvE4&?qYzmOKFSvI= zETlp$Goq=zNRMo%o(T64>EPZiIC6O2AmFeXT^$&R@ZF0vtH-UxJwbBcYBLDId2XH| zdHDiY1>SF~adJ3!z<&v~&TG{0OdyXd&Y+LyTF)Yym*(MwO*CBFp)OJhQrMIx%l})c zQ~7{pZS-bhV9pr9@p{p^7-D%8hB&5ZB+BG`ZDsL7RYT30y2H7?hmKQYw*c1#A!83> zJs`undC*eA(>(-INIcHG0zpK0_G*QBSYfSQ?~}owognmx3hU;WjtkxIY2&`!J9C!e zx6A4VB7ks#XCPm}h*cm#ByP$+@cP!j5Jsl^gK{2W3nQ267RX6RdgPivItQS4^a2BW zx{6cQ!cG$+b*dUtty^1q$dk-N>-M(V=C;qRNou4Zf`vO*A9bFnt3}isni$Yy>mG|{ zhw?^AL3d9EO{UrP$kBSmS7|(e0s2fkJ4dqR4c13xaxxEVO?E^BdhFG1!oCXP4}8Q@ zr!`R=0+ulEr=LjKw*yd9#?Y;C-~(~SCsHTuDlK<`qZ!iW&Fx1k0WBIqTiD)lF}8H> z9nBH@Pl4D8v8ccVtaQP9$g9RRDM&C{inOu6m4N<)a%z@88{yU8`T)~#zNSQUbvvXR zdkr#WJ!SjdqI59YlEI9Gq`NP9oVns)UuPh!2a-Ac$0sS5^ikz@RP6+3yX|eY65xenTL{s-hDhISVgVhv zCH0ShZe&T)06*ou0V(cTSSr#;+WX3im0mKu(fGQn(+uK#SOz_@7P?J|qZIYV%RLI& znjaxej-Yp$@G9%~*yDISg~b5934#P{>8d?)=KW4?LJ6}~;OqFHaa-@j;T=bM8(J}= zMZl?~>dshhR=NP>ID-e`mkEJ^L{=|BxUZ`~rAB(n2uw=!)e_atlgI<>hZeP!Z1rGO;@|R7b-{?2ERKWinmb&{SwS z5q@I;fwM?j5MEsxHJ%7|;6xH`jfR@fMZ?Em9GXE!i;8dq=76lJ9;J6= zpay5Gde=KVH=`1$c&8Larl+VMX=zO@KJw(ty6g-@R>e(9U&}Ge9f5uSjSsu7v%3IoSB~m@ir~RIWB>|v@RxvB!vNZPwo-1rV@pC|G zgil!Tm~2)kM!Lo^Y~4$c_z2~2BNA=^n5{Yjk%pTDCam{iSVZIsXh%kxq2pO2=$qgH zbtF0%j8Eqb@M9&0!(DxeNvP<^vk{7O7GE%yO9ZIc(Kl4J2qNEH;;%kP*Z`~V)8!8< zoK$$}Dwq;lEYY^Iqx@1rH#rxvWuPO}p55{N;wb^n^4Rd3#5Q+wG!wBzz@?HVDn z0rZv3>$hM^%+BSkX?oOk0h+=17YmM5=%HS#uS#=?W#6n9o{1r9Eb~6Q{vmC(i&}GI zfWX^*m}2fzgO#d-Gt;e;tpca4P#E=2Axrx+;kJgSwng72Zd3^Qh@y{&s(`wPsb2}&ff@`1kM!rLLTI5rFg6c>ULFIp7yPS*aM0&3Jg?C z2X`snCjrDU8-5JsZn|02bGi{#QXc3eqUn*=JWPiKFmEIv^~v?3GPD{#0Y8u~gy2U9 zGQT@1(Uq3=<^ySsg~*~LU||9Oz^~BZ6abzhXLC2m$QtHX(uGGZy}BYRL+G)hVdU_I z{;pM=GTqgsCMUO<9Y@2-1eknN!G(HU@@lH$m}B#ln%c?Nh`e6LuUbk>Fco5c$}3=V zJPPLLtVQ^6WBN@wgx7b!^Insi-@ovE3oKlRg%DGpp8GkD)G`HA;g9(!D?l08ltSx5 zO1?DYoAt<0P+Kk_lIEQ8scbm+d=2INRv~ldK530vV)_>Ttn1Vuku9XgF2VMJHRy`@ ziPS@ZQjf&J8Gk-XgQ!(?H=BJ_wua4?^JCv*B|Y*6b62X8HF?1GuDWKu6~BFlApb>( z{fEddL%7r@2QV%H9(4EPp#F3>NePr8Wob_y1iOD|i6$%1hB8_@2Pn!kSyAc6(ctAC z3;JI|#95D1Y;ob&_@=^WM5qYVBdPSL(#3D<%V8KeZ#7bi_GsuqO&Z9QrzP?Z+C-ND+SXZjAl zh6P2OS`t>lUQ#len$R+-G_ap-!yK~op%ylEblHE2Zsas)oyLQoKFIxkqWOJZ zq~#Z(h@KxOp)dt=cV38aOAGJqvK}wg)ue6JpOlvGTix^sWsz4>;m!(tvQITZGtCiN zR_e7LjE;rx4Pw^;`-JJXRGqb+D4p*)e)6t}SCRa5tkaH5< z_EBIB&;}sj6eLth9ldI$j;!hW7i7!01u#~wo2VPJkkKzSkR>mXceM5$#JLg5@oyH@ z6i4aE`&H7S5?)aS|IYcCpWeOXkR;mTFSg?;+o3HdNPk2(u`QvwFhH9%rMC+bOl*Y2&&kB;MCU)X3DFHgG#!x`|^PFW_HD`5n0_H zOieZuD9Bamxc0n>3o?G1U?r;_ga84q8Dq>2bvOpB17)fR`#hu z+#-&xk1s*&WjDXVZf~AQ!aAzs7Tj?29~qH(K{7+JU$$uA%#4v^%cBCejy4xVZo=bC zi%a*0$Cl>>E=zDp6IHnK1SPcm>1H^ro80O>P8G>8yFMDtgS*sBb>9>+?t5@IK2Ex4 z-8-=l_6O-l)fawN!s;$Q>Ys)C6K!ox)rp1A4cG{se;qLrM~I5cS?X!qy?H-Ap=qKc zTsBCk+F;fR^50CnBA9*8Z>ilBreN zM|w5x&}z^QPf)AG-LUB0zZd#(u|*r4i}aW88?%ype!J}Y#-MIiswmQs?2VG2JrR^| z%OB&C%*~N_dG!$a&zUksFm=eErz*Zy9sdeuGw|29QId*8MW(83tUf#VC85uZvvXea z0#-+_J8G*Yt@eFx%R)~Ov?A|sHX?So7WeqN*MQ4=#P#oiNOMs)w*XNO zmG|Ud#`3A1Ph!wspj2+V{wkubHNT#QIB%5AnQYv#nQ~BSc?OEse6tI@XpYM)-bi4i zM!c`36#2#2qFm9Jsk44Z)9Gt-CB=YsjbFxW|s%b>NZ%AmjG6;|&B z%RZXcbQH_x69u|uJy`h8&xMv0`pdXkl6lqMkM$c8u5H2!mZN~9wweG#>*Olo*>n)9Z(Bg8BfL8iFse0=;Qo94&S z6tB~$n4r2C$2F-~&FmNtu@llRs$q<}n_m~THY*>%3N%$;NE^y@5J|+Z%hV*q;JF z2=s;x5Tk27#M8Uru-Pqb5#fQB2}aTB8x=X9T5-!#(8w@Ng43XJV^+-k!q{^SH57@J z@Z5b~T=}E#AOFXnYd9|ohgga)=$7=>tD2UPt47_t8^)JYw>yb8YTci3E})S&D8YX1 z6$Bnthl^9xe8)tVV(nv;;P%{Zy8b$Lwyjk3F(_lN0ogswd7^3F=xhTh0vO^#ZF@UapFLym9qT@bBvzKX0f17XT#-rVTMlu#(55!CxF;pnr?3vYD5_{s>IE-yBjv08V_tH?N73TsChV{2&x3Zvzk^`-1S8 zmF9P0kHYWIm-S(Z(fOIw&Me%+f)kSO_YPDUwA_GTNIcN06c>L2}vBP~m@XpiVFLcu-t74Q@ z{YaPS9-+D3R}R$x-;f|{?2*LCkLia%PH*xd)Ws&eyVl{i}U z((+=@Hj4=RACuE0eF}8%M13dbxzdff&f*?3wQ}9t+;O4;%{wdU>2|48B@81KmQ+Zg zZnp*#c*{a+?5eyr*YYb(SCT2`sR5HD04UXnWzWaO;P0hUe>866a7?e9#AY1K?0UMR zlun3JpXq<(F*RxY^%Zj6uABO5|B6GeN(B{&{aP|EeY|SM{8{|25)WG-Y1s|a_Y@t3 zML!wszHmMbylXAtN)tkNLf7Sz))vbV4!>$3#Fip2uyDFR5(|t;A7+_DR)QYVt3tOB zUD<@szr+~fmB}<#a?0|kh=iJRQhTN&zU}5uA~FOS#s?od6xWXieHYX_H4d2JxELW= zmlmas_GGn*h{+|tOsAX8F>$T8S0-ZW_WkTGXC^jW$A_=x%se|@uYlt`D8?%hiyu!m z(|oT*XVeRH>0X#Eac!^-hSbgbjf*69#Jm#yYcbm;j_k15Ne35YV*#ixJf`qzhPo#7kqzF=yQdY=| z>6FKB9q_ngWs^gJJY2#bYAnTE+C=6V!TdIDF?}zKv|X4rq!VQ;Pz*P+W6>?PFj~Hm z;MZSJnl@*L!8;6ayB3FFOi!&0nI4}m#rmLwgrDQOeU_L9_Nnx+Y6Mpoty z<6b!g39$ejH9blL?lKK`o`im4X;QR=-^sQKoeJHk?Evh8tcI_y{a?R>z$*e>Aw|YBxOw^-l`pW`?W5-2jpKAGLQ7K^_ciktP8?~Dk4Z(cG zH#wVp@!sP+SnR32+J7ee$}(WHl!y{nI@ZZzTp#+}Fpdd)lw`rj4;b?X`=!q2h51=G z?L_Qs^mS@#KXZy3-Z@nY;c?Za-!!Bw`G*p3?lT64&Mc**xK!QmN>DFq+q@p<`>Vx3X-Nt)!ef;4?{sRE_H|Bw#!J}gI> zxz8{!y@>%D*FJkI1F$nKP{3E}HK)fSmy;Hl$sYtPSIS67GDkn*8`o#~AfX|j$E6y4 zFL9WS&iOusOXP3U4{5vwR)=H%RX2$18kXL)5p-RaA(G7b6CUJJ9U^i(D0BouDg#w0 z)Z8L@;y2K64I`dR7)%tVJ()ORNS$;_tf}W8AMz&8_|40MGH9`>h1QTi;TD>!kQyuv zc|~uR8x3v~gfcl&`J6%|T7msB3L?VCO8L(rngBo}so$1<;^pkg=ZqF%t3g1BQV3Uo z3x&?Lq|ATf3DM~G8W$~58SiPUnoPLxxeMafO7mqxm7!b8D5$8p`QPNYth;IVgiONW z%wtTE`{8y_DUB9^7~N%( z1eCghiVMFeMrf2LES~dEPFI;0rHBIU5Yj^3Fi1sIA&U^x3E2{vAs~`7hfG#|v?8^D zeq{Pdp6y4?{G%bvWThO5lf)_=2LQbtwFkxrI!l8HKjA@uWEsI4!`FRb+ zBpgthvh~^{B#;{vK@$p?c@UvFACQJNmk2;a)ysmQ71bONFQI(NVMpD?QxzQ2Fs!sn zOFEwh{G>p%h@UGXDn-+lqSKI(m|AH@MR;oGAp-goi-Ib=idd-ps&93-PI3!!`uvJh z%w{(Jo{q4JE+#;w<7M6f){j19O~|qVk@se2B`g_3#>{1S{>bVyrgju19GQU}s}S=_ zpr{k5;1U#B5$co=q3Ub~%8qRTH@3i`qLW&{>0qc@!{dY@6l=tOGC>DWGMSu#eU1{) zK^h~ab;tv8ay$hGt_zbC;99VkwJW>#JL9qGFWg?uzqgTXWS2X+C7Hvlnq11k-dCj) z^zH<&b@b?9x{^(i8(Inh1V7DnrjGPc;O946Q!xuU!c6*G^M z_6Hox%U4~=F58KV;&N7zD1kUgcMk9=Ur!W%p5C+N8c&;SU>TdC(GltHR`_^p7{#5f zstPw!)IlWZ22X`==;jhu1qOiM`oYcwr4z>>3B497L@3$?Nj$cYpro}U z$N!kDd^{*I_kX>_MShXb7I6E|cbpAl%*iPxyJVIC73N<%Nt7q})wr<3+ z&2!W%gl>?5UH~gW=5EYYeQhUoV=9P-s8s(kHnP&Ca>z}kU}e{D)!$=}wl1&@qdC|S z$jyWvpzP&U;(>7%k{`KPU$>7aJzLnSjb11C& zdrQ3aizl~7Z!43={yy^7@zs|?ZEJ0Z@UBFv&Iq6n+`DJ-ZoL4aRvlD3kbT5>Z6WnA z1YLG&)(Vc@KMrbOdWd^9>bVI`W3pe_&C%Z(411yi3`XA;ZTUsbw%`rLG%XV~IQGF! zL0q!_0i)v7;B}h%2kJzPcsjV83BZKsqHd&1quf$`%0cw1u{@TMR{fDBCKKDriXZnD zvcu9g>L+&H)KIfAA{%@Woc-q$wRj7S9_)-)J#iY6+B;JA<7a(T!-7>kx!uP4)Kkub zQKgj;!}cdM6M_g&8ju9$EAnnOloLl8U&=`%=fi?gH!S7PdSKX# zof1)f#wfF`5%062V#(#N&VLiH&WM7IQQ?70ni+Nv&svsMwzjye*~{~@8h<5TL?8NLc+8K+M7ARX;*62c=d zrrj=!+uj59W26)mL4_2Gy-j#pc}+g~HH8beb5^i*d4UJT3F>1FMK^+)F8=oE%7gk@ zM9HSBLVO4LlP2+(W3opn9V-6Bk&^pqWm6$B(c9R)mKcMbA@wAc;v7Nx2_+p(P#`0@ zscW;h?Rn^S`u`*1sl&C9DzTK!^q1=oY`x)Iof6O;MI@9l5?ZastR068fJuGl!6B%& zDptUS`g=0-S_}elE}qyBH3wZp$l>waydr;*;!tVvVM4BYNI##Rq~1y^?f;~y05L$$ zzt>H7O2m`$__?=9UN*)zv$zLw)IS`wXYOO!;Rl9>2kLI={ zd&l(WZz|nNqkPFw}OElX@@Ll@{s)mm(>S)dO|N1bL7S&NZno(eIBK~JlGLiO6NGwPc+ zc+5;Z!$G&yvr&=KEjgVISDn#m0QE}ig;rd?A18GqhWQh9ofW|qvcCrW(3?y#zG-!A zKl^Z2k@)qob9T{1G;^995uJ+1Wxu314C2Pt0sFbt6djt*0jsi@@-Y(VZzCBfDNS>mog`>4+Yu0tB1pl=MRe?ur{c zf+6LgcZ4=RFEbIkuf%?)@(d$kP&6+kUNV`F{|`q&n#=5bOHhonkH;z{O|zPwHSxns zy|Oxf>f<30cgGihGoH?Iz$-u&ih{lRtL4}ZKp(aGpfg>*NSGO*=~>;e;0C5ZRhHv` zD01L{v6`jRQ)$Lg5zDrL6}g`UZU8Cvxo`aQ)BCB|@C$1pxXrTsarnFYjP^U5DsQhb zJ>S*u&wSgr>U;ZuiUDKP1erWM-C5Dv3HBD#GFs z>rbuyV2)i6|v&}IJkxkXJ~LLNfzMWffN$W=lSqbC!#-s3+`fD z%=t8PmGm#QtW{|epDvXvc%fJ`?@4k_sAC5?i!Ectw`ynaVu;-x?0*r!f5v%k7NqGY zi51bE*2dPFpzTykz9UOTGfCa_D>$KK8Dd-(+snC9EEQkPtlLd#p#2%_&ZDKvmp)&b z4Uj0_F?el|I4hU%Q7M1oGhoRI@p3()kgvzoDvW+ix-+dWvQV}ue_z~I#j~=~6U@T$ zlZvu#(wU|x*}m4o1N!)D9aR|#MVnoow3V;)A%ics`Hwf zaq5*CAMAym+H-Vi;T~~ztKvwVXKOx{*OO4aLm!$*Aog|#R2GeUcFV*%n`{51_*RoZ{LCcbLb33(z=tyFe=tx5--DL7da zE7icGL|H@B-y2m?ylwgEHv;M%n9E$j;lQK|o8D$zX^>9S4G-U5+3aY*V7Zkc}Y=+t`@a=blywY4&N` zdQ&4gqRGPOtIUche$M+V7#k7x>GiEy`dE&P4RHtx9D`uk!f=C*rTB!HBcNDXU{6uF z;#RKmD=XoV>d>k*fcK8`OIH9Ch^v}s6)H`7&CDpCSOsr(rsbHU9jHrDl+(ZJ++@>47-A@M zV?yRGRjO-KJPEYS#*S}w|G*ek8i%ZJ>1rbWHuJi(%Y?Yfz@Akhoy*Mb?B&&3dJ^q- z%k1waPH-H~)En%ed>sDnqi0yU%ClLeSj`irLNpAbgU>3UCz@2JujJV!SW^zKlQ@*= z2Momj0QW zY6K5D1o5+hWWE$L-a8Sl`%A^u?pZQN(UkWm_;;{fXvwc1*fTno*;P&`mHho}ZjK-H zLVxBlS&p(HJ%lt-J_zT{-`CL@OQGZnlqDF29N}eHo*Z|vEJ?J;CQbYRZy`5Dd|BGC zi!P>FQWUU>z6)10AlqlwLCv3R**-0$32T(8&qhi-J@Lv=X6sz*;`$<`M-OD<o>__~|4;hldXM7c(-7|)3&tIE?jD3axjdGhE-=N6-y8=y28I;1Va;Upet8!}H&F#=`KT0*ovd0PUnreQ$~j4cRzBR`<_<=ri~Zr#GQI87yxj$~7W5CwK_! zxbagbLNlf>$*bzRp(%m;8z$rBk4tNOQC~R{yqMQm#>$janAvnmzY7VA`3>DzncQ!E z1!nP@&dG(*{HZnNg?snyD%=B{9i6r)9Xl}UqZWA_J-)#)Fn(|}2W2jjNtCLqZ4g_a z>j4KS4`k7s(z$c@FfR4=Jh1T6wY6Rx!%2PfAFxhU! zfcCA$hEhFjpc~(GAn(Rz|BzG*38UBJTVuQR1!F2{#i(x;PCrIW=(-g13UhqtD@#1H zrzK7)o<_j);U%saRjS#9qz97y1>fn9-|0zqjvq(i(=(x>TVrSM&Md6|M!c`HGLw&l zH#)G?Yc6q)t6~Q@r`BoScF9+JEXxI-&E#H)auNIOI_0$;`rVA4vr1-hj%c6U;g=yLurI9wk!KG964lx691aIWa z3&MOjjfCKl7+76p{w<7Hc1cAv9`95K%)`T9{&$uzhMi-u^Q|`_)QWqslyUE_a}Mpl^BoPIb)5k+M?+kf5%f zC{Rb_U5@{j~{AK?5csFvV1Gb)o<17*4to%b)s1g z8i?2I;{~EICua36$g;D>fkY8pBv z^Hs_ekV{qrR%~UPWa-lNal$m0owi(ljh*ADOEm$UHz(`XD49lt?CZ9?LFz9+<;ePp zz#_JMonF|i`d6o&tNSZy%S!x9UapNFuxHK@X5Qk7Keg;yT%Qg+qdc2+;#>nH*5c1X zDD-3;2km>)l~^(9%FnDIO;>aoR~5lp@KT?E-YVyl8@!lukwc7<7J5S$QvyHu;=4rm zq`qYGOUiZausr~Eo>vl)3rf@%<4d7uxEJ>&cYT+T_e0Y`+9CW=d>ZsLEjx8RvJah} zb0{bM&V(RUk~@N`Pu+{YM9kQd5JvJXN_&(=?$KatZkF2LEIfwm`Ob5<0BwK!nzm}r z?esOYK13MrQSxKZeN~S8iN0CN-+!!6@57$E4A_`kT3a3upP9AgH*BpZ8!)u2(8s)a z()y)Ow*vFuM;&jDgaVDzxyA@TMMJY=d6+Gid}WP8l*9-hPhw|#^lMVdQ@sbJM;~}N z1ScVWK*Hg;Qn^!t;SfsLO9l4`<}Lv@wF!tM_It(?UCESYkAc#f?obH5r=93dp|*PU z)aDGE@#&sp?M|OhR-n{4_6uZLl<%ILYI^?Iju7~2F{L4H|oHLT97#ONzu}e~h_fEn2HQjHRZ!TkZt27-AQX;i4DYMC`IiT?(GAn%^X1n9;Rg z`v84}G2ylcSeVk|P&4)Fyh};)Wc&bY<Jd@*7%Rqzl~4iNnCuoJ14@Vzq>F*Zr?KCa=))SQS^UV zb-tlu=mmR9+`UN@tXs8m{o)2%co9z@O{j=rq4J&DC|(?v$^MUrKjs1T$0+ht`_YI%=##}CL0?ZaWyj_B}@kC2Y#5I7j7DaXQ zC(OiT*1wG7IHH3R#ifqd9?n?RxI0O%@gWdQXaCjkKTwW5{Lmk&sw;s5!$kDFg7U)h z^qflq(Xo^It(==&9P;J({?r;~52$Jz@Ga$Qqp`&{nW!X2Q-T(m8L2KBTVj`DOJX%8 zDB%i?!s*eI6&i+7Ua=CC*~(4=Vk`Pks5)G7$wQiqFLv=6ZhFZLH9v2bz@JDPA3bGGj3A)HL|G9GHJzZ)5LM}F#C1ic}5$_}3VctX2j_g~s4?PF8bxb+U>^_pJ2XRk?fi!&E9y;pq(q09Ln zrjDLJ)#3iCh&BQQt*ZXlgp}c~&5p71hCos3T))PKpLosSoXm}a`Z#XM2GFVv-+;tp zLrTY{a-Fua8%uYV;e2tr>x}s_#~FLfWz*yoz(5p;UO4ybj$RUM$NRU?8&g*RT-aWG z&D-xv>m;L+{Fk~TUkI^wf7q&q@*wC`n1_72J~ibC4_FI@4AXy zsUCj<3Y6+t{xo~UF4XR7U&Rh>%nlc-Jd`~7mi+-p#coI-BjT;7iTbKq)e(2}5mjYv z%Zo`M?H2n9_Nn#pE>u?lr%qLcLJfC$nwD)u0l&vp_&IpULoYhW&|WHGdo4cD)Rx3d zku3^m<``t&d@}!5-ZLlzDqZRW#&{t~{AYQ$Kwx$q5#pVbvRF&a(QD%I44s$tj*3Ql z7daQbR6`r~00=iUj&;Tc2v9|*bi;TE{rh8bQm`X{D*P0K0%tmy`j4)F21?d{MWqv5 z$>;NENzNrSx}PqI2D0np=(GTr9pKmvbHCtTM-kKQ-fk}tL1tu(C20~MWu~LdZO1Vp z5$5kV+1gHjrO1$q~iEVf!?<|}q(NxG&31;AhmB`@wYok3Fg z7!UbzN;2Q`M+luPPom%Ed8UzskL2R_Lg`zv`~hI8>tvkhRy_?bji>c-qGbe*v(-c; zNIcX_WoJDe`@3BHPDF>V@|5Z!J%OI=y{@>$^O{8u0sP{=xeNK9C99f&7sCm|3zB81#Tt_*x)-C6xA)dUU^QL~VNgk3T?ziKS)b z_vj%$d|&$K7ytiNxf}Ms9zN{;$877H=J&rp&-#NKEgygFJHM6PhIdY7h|0M&4__<5 zJ#j*HfByk$lWKdvS=rqUxZ(52%I+LP1bZ|KX($_IBMfu4RD%=d(~&j!OxFWOm!f!0 zLT0rYU$ScN#0u_bH@)aBt{D&=AC{olbSuEhZ@HDM-v^wWt8J?~ao?K{gwrsnh;oA& z^WI${!9&|&m?6z-c76upufjs$&=Z<~Gwgt^68%f#^|9=kF2K_^mtnNAP4R}3_h6X_ zcBYH8U5W0Zeu@C_*eyIDKEQQcaDuM;vL3TQh5>+_8!Kl&8U&pDRS)*^vCkCGPq%3~ z>)!;csOmi2$5Hb8awugNVWVN=5-}EX$#CrN8#UKRP^tbcU@?S6E!yTzXyNbRa{1d6 zWE+E`7X1xlr~4#3FRLnfFQ%ryiMux(`^BraQH9ckYdzbZvO70NA|n?mJZ5)qqh2dfI4FB8oC-58 zr*r#U`Egmutb(|59mAhr9zJFMSOyA9*D8J<)JgoYPN%6>wWs;}m}7!8&EEE;c{bNi zV@{QNs!qV%&n;^YQ>~(<6aF(Bd*%?c;*aYLH)JHt363PRR)0FSPfoOG6F5gtrhJ-{ z5IiQ>y&;nW`y*PB3eXSSy*Domn}wzMuqqdBB$}PyAvBl~B%%=}P-APCn|Ba}Ddx5v zD05BvtBC*W+hi`BHzpkN~cS1uwCux)nFaFvara-He#vntnt`yL4}5wN6tJ*%&OTY z5ydEd*u>ZiMP{nBYPCL$X;pfqJ7u~1w33|>!I5XcB3{zUUkHfvPG$B^oWiglVm3pHeEm8Ejt>v#U!`gOn`mi(?f>@JU@~BH71z z>)mI<1R8n|gBrD#e3~k?WBaN*%6N>G7!&zhIjbE^MPo z0rS%q4L!Io#g_3cKQV6ub!>$vx=<9->Huh#gyy93-$$3py%Xw`{kMel= z;NGVbhTVEMwhU%r@JV66Y8)f@+&$xpLyM53fYZ~{5*-jj$CAm;&G;;fs>$dKx0n$9 zTfJ3bd{$|>X)8Id^`Ls3%YRsiNnz{snQWh5&f=CS3-|5Xl_pe6;DgU`1d_-EF50dS z^RJIiX_r@zER&`Ay}lA>y}T1M5abPUycwlulA1hX6Ld}Ag#6a6sd<0? zb(5PJ)WP70Lh>3`s_u>Q(fy=^vRG&8Yh zISNke{q_55Z6J?)(c|woovXP{fTd|kk?0IIGr|#z!W>1TB9Jcv`=K)Np}>?NQy>g6 zl{NNR(Iy#ejr2&U@?x;o*|}io;E^MIY15@})r$n^xmkkN(BY#zfbg9q4k_oBTr}r# z6&fT-^xe>zB36W8&C7uvMr-$-Iaf8Ue7iWlk-0}a&ECk+6~XNcBhv?#E6_Fe<1K=L zLf;aBb`X1W8PZ~E!PYPTIonH;{ zd7e7At=@yM4m?|N{o;Wvb}_gwN~0})>IXG`?nv{V`wuZ}j7U@+Va;01sxhOda{*(e zENjtzTg{Llj8KYDPNu8RmREAUN1qGXXF#S0-0zsIm_A2yD8(|2mF_;5;l%aMaz!{ z61_#+W)?Do9=j~hhH{No@)hekV~#SC-jEdZ-T>E($wH8Kn8C#I{%~&WI*5~w!;>(* z(vi)lAQjrQ*L-2*qKxj@O2eU|eMjsR3*pW133;}8$zhlr`l4%|Tx$hUlTjaPRQ743 z_zKFb;k$szrFi7kJXBT|P^^E4ejSc=Rtrl5{+SVlVyYAA>cGtR!y;ql&l3E1=jNQm zWEP*mS5{L`7O00=$9S7265qeXEkS$xCib9zm*wvocZ0++IaExt{*i3uas3tSohN4F z(sa$GirOP&Y2%Cds!HNQZh`G)SM?oy9Wcb}ez7F<5v;H%0+;GC47f%>XG5IpiXn)e z#3;=sUpqClhOTYRjd9izez;kjh-iou$xanl9j58cIos^8Icf!m%A+hQ8B-jOe47MV zi!}x?PeXTLWr@;YnQd#x&6?U7G{1C*dr}Fnh5HT0(ZIogfC$dBv1TGLPJC0c%N8L@ zh!Ht57o59PfTqFzak+!X_meEMqcK~ z{1&_b*3vyf{T2)!jwq#cO(3GohNz}f$6KeZsj`Vau-wy3xQ^=7souo1WEinzlPN5QEd!1`kfPJN$XQp;>Nj?8; zbxSvcFW~1=NPC&0W4QyOa=rMQ8HqDqXX{Hei@h>WLheNbUuiLCVp1W6f<$DsCshSD zvhFeqP7w(|um6Jh6sexrY;A-Cds30riQb4pOe&f=b3B;%oeJP|Z|9|MG08ujZfL{R zOL%GEOvtzy9oXB+Iy$9mFdbdp2d%rX?47RRCBB4or}9#81MH?Hk^KX+FN*qs$xGo7$6VR%Ig1?& z?igkcW!_9tU$pE+*D9FC0K0rb8Fd!dwqi_NdJ2CR_BaP3`}(Jt8BAyIgL$!}P_6vL zo2#LAwOU?0JDEWx$N$r=WcQiz*H{S`9e?sS2o(i`(8`63m>4*h=5tCW&Tfuy?e zfAP5j3zSlBEan&D<=Favnzn>iWr5&8kOc&;#g>~)w3m9o>CO{ zk6-e(ySf@lsPK>UB5+|(HMGUwLxAOYMJ#Q7avt*R%&m|yBNrW)`z5t~yZpUFApp{_ z%e1H@GO~nGO{35lDOOp^qQ41J9C=enucpvEvdGvTA$5`3(L%NSBi>Mdpl&GzOREY+nyWGqR202%w ztiT&~+f@{{4t$$-M5#xgTp=8iuBoksd8H1z+zS~H4ugrt?y|_Ab`){4+}tEZ~>_HH`T*ZpY5e$%hx?REO8Zs2v>KkkWHN zPMTR=+4uwo6D0s-@f`dJ8n`GtPv*tqS|r1c)m&TP}B6PBX8g5x{cz<6CWE*l0_;qm234b?BFC*JT{ z`+ueGJ1cl3Y20^8t@gLPiP}4s^jx(*FhP!8fC+3l^?5mxP}=@qERqbDw}h}3=w4`- z+5c(Z>>Qex<9_-Gf;f7HOlyv!WvY;7TXotQ|6%|LZEV78!TmOCNxH?7ixJn0Z`s{i zTLz@}^^Ks5wB1{(_52F@ko2_bBGV$Znt3|7hhI;z(jXkZFzvd$mw4tRU7I*NaRKC3 zmKF`~=+7T6E*|LZ9WLChQc2>)Rhsv_KdX>uwG+^ON@A{`WKVGBfbXI7EZxP*@}ohS zbuR|j43g!JuJnRbT)6dgyK*v3r6l}&889}uve9S*D&3?ZB^a#5!iYUoZy!c}qFM$@ z6EZ{84Y63?jR@qBz%id$iq0>H)Cig))3s+Riw|QnTh9jP_ey3G`}>xf{AQ^xUKn@? z+rvQ^Gz{Ca@9s3MFah)$8rP@*KTJiZJ0I3M1R3HVoXbM#{0e>Iuz8@U(JWF<dW}gM6L5E;kQ!oImys`^oA$pmjO1?Uzz1;~M=X z7Y*9y9AcrCzhoQ-+sXlHKdwSDR zpO08u{bu^uXpK^#2V_w6>oM2aU^rPnkPV2&(-*kLg?2QmwClmz$h^(>$JL zg8kJ9maJ?on8fEsHjrXXtRfC1sp|d1R95NgfKk=dU|Wx;kxG(d!a`ZE#`hShvt39A zpZR_36i6jS>bmA#%`s(49@8)PvGticc1mj3LlA{qym;tZ9gR@jn9AT;wIxb-XU*1k z&NI5gM%W^Y=s@LOyY=C11|avH+DZTN*y-2J(`i)bU)$f0)?kEFa8pUJHs zU|3UN00Rm71v}=XuDasPj7Vb{EN*`4Rv#mI`p3ph%4HLcl~)&lW#D93NPz;JKJv}( zoY}#f$@7_!9$ceT$80ZhPgA3gPu~ZH!2ZR5<9%O~Wu9?lyq}gw^V3PO6+XV`Q~xXa zX235czYP>8PwHd;d9#fTng>YJD{6UR&S(+c=eJe?BRFXrnmK`N`?B+9vp16x7}+Pt zB3~~A>}p6&ZLKt8cob3t=2=Ut%2Lxu`f5oO59!A^z;lG$+E~OD0|}O#YJ3)#a{g@~ zPYbeVm_H(!Aok$q{D!z1r1kpSn(}#{Q7YxG8W4+LGTD$Fo=J;>6a%dP56*5G+Sk`N zw14p3AqF&RZ6185+04jn?nZ__F3GR5aoHW(oDurb=4|U_a4*ptml>XtLLfc;SWA}m z5}>(nd;#JZ=U+0;kxw&saeDScAcaTZ7R!S-!e zNBkZb+PP?=y!CjlzLKoH{i2ywvGMaAX?umSb*J?uBWfuzmZeBAseD14+ho|cGVbC& z8SC5KV6B?nu*1FTPgHH#YKy%o_jGx3h;bV zRbjy#BN@o{;a$+^>++>jZ=Y7N@0+h?oN|wRnWXTj4^#K+EF_RXWem9%LOgfOnOOJS zdt^i{a*pMQA9$laS0l?J-w|BANnrNCdCkv5KUH332`J;231IIWQE1n%*LNX1 zT)Z}@!9a(LM|Lp%F}2$rzo`buuK&m{h-_FtEGP?YP~d`@Ty7w9cP$Q`<;vlJ zHBm(DLj*H>QVi3?2me(Ik`!Ww9x@npHB&aGgSzlLfFDkop()&R38Tnuvh_1i7ZLNI+HH{$Xfqn+Sy3!%l*r`!t3o z9pS7_hMcrK3H+)qC)#32KL|u8SdhpN5Hz&;+GfzS*LvC-)Hj7KgKa1>z#eEHfDVA! z46bTNwrmHM>)(kjchwGVglc9R~n3s2L4(wK5DWdjaYsHoHE{^0tpH@j5)ye5uQDZZxHToy zSdWRjB^JRC&Gy-&-d=U=mdGH9WU4M@2$7oTlSc6a{`4Mwdt-6jj$vLRMy>z6|D??! z**rAJcJ$Vk{#$2* z0NQEk_9#awsZQ!^YFp@|rxWvD&I1n-s5W+oruC4mNtXF=t$ zpjwbwxq2H2sJZ#2d*S_LFgSicT2?FDz>Jh_lqK!=iEjWL)(2;GR$Gsk7^0UJR(^V* zB;%RhLgTLi@M5~BU$FcYs%4?cTSq0Zqd_b<8H5Vq2e^|_ly+Z%zqMKMYWyb;6u7&N z?n3A%dzi6hA{N|5BO1~QAB?VG+yEb&*CS$!_AuYmK;k>wi$>j2l$^p78ier zBrVy6&*&15izMoU1^EkDVckwrgv{%)rf95e{OsZzg+c2OadK6DoCxnkxj4P=HS>OW z%hUCkV7R(^NO06uQhM2SSWsOp7U<*?w`&`YjEKaD%&dbCHmK!5G z?Y9UPTbo+yT5ar-ZHZQPMs9_9F1P;K*lJ%Xt^BjBr43jkqFY2|?p>}PA|XdBYZneS zZh>LjB1og5hHmhqRdz;}WF1i%(gfYXF#DjVo3jfC9k;;oP2qvXHmIwY7^ULMU_@@T zR~9a{%VqdBu@X<&u49@0;Zn?h>7lMbfxm5umQ@%G^stC}3PuIkg<3VcAQ zf~f>P2QgwSNrJ)vwo`Ci`g&() zPYm4Mm7mwu-IZUkXI(5poG(BX8 zMs#;=!%C>KDg#q6s2@mxB##YY#+5Owl)^C?6>gY>xZFeEd~(|A5S-cMnqHvp3Wvl) zIfX}QY0H#z1M&38)LV6GR|UZuWBm(qS}^4I5UV`Y0$!`$E!C?Wkx+!KSs4e3DNDCR zk=ziG$%_fdFOpyP8o=Sfc5xYqFMy9X zF11ejf$uq7V8c{9*avdtrSg*mA_ z?dj1>-Gx4d`)_)zHZ6em7opQC32~cCV-DHn_gUcZmblCSBdW)-Cto9pA%0C`tM2*l z?@yC0_;@Q^rT|GTOKUWr0WT(K)dvWqbpZLE~j`QuJo32?tqaa{k_1i7GP=y7H|c@Uj+sgc!BUDjG^$FNG89c3S-7u(#a} z;;Tv)JWvO)W@RUE`iJzl_CYR@7_^nA{eruS&x_Hk+n34d7~;(Qo1n2&D|bvRnHF$7GXilbcZ^Qwj*G>zvAxr{;7M9}tT7xe zZ7eM-^+>k?dbf-A2sRjwcseL=qwMqAe|Rfu)Xe1dt`qVVXE_Dq`+MGGzuj*08T6#Q z5PsTJ`!B7S8R4hrX|(iwBW0&qdRX{L`5Fy9FS0@5$n*%1P32#8*1Gy&giX@&)GhX@ zcbd#qWN_*&a#yCtzmb(VFQ+Rezmh*KQjMFX=D)I4Xh)s3Ze!_q(nXlIZ5A1(jaQ>{ zspiXRz5&3q>`@bbyJOoqdV2j!^!9CGw`*#{R;$ceT6+DC^B77RJ&z<-vhl=zv^(#a8s{s;1gWwys&v)`1N8{ME02x1_1^ z{`)!5l>=XvS~!`lVvn9|h}$j@dS_VT5Vw!!kE&2a0-nlcZ$wokVu9E?Jj6X&AGb{) z3~gY?2f5w)s><0)iw<VKuec%f^3f-yJvK^wtD$aU#lK$90(X1+2+K^jJbn;;8XwF-M+%&pM62{52@DfpV ze`_wKFzvrKtCZ>8`IcX5`apiMPZUn7K?K=?{D4gAgLCn_g-ns}q4D4mi8_E;bnbZM zlp`XYXlcgv1f#h71X)Ntn8aTb(!fbDcuOYY85)EOqP zl!lEj}t+ zSIAYq(2;XU6<59>&1#bD5(Z?o5bI@iquEtHE7F@FVgG~U&anB}WzLv}w>YcM@?lpN z_}airFOl8j^qduF|Np)hE?2V}nrU)*6V1~hyb{QPn?Tu2^V)$(x#{3GhV_jGS>XN6 z|3oE2uMpVtr9drwaNH6$J$sss<2tA7ES;^9u3h*fWW34gKFiSlPuT8id_ysf!!Dv3 zJ4ja~`QjRiXlza~&D23gAKGUw9!4EDBQsEM^$VJR)skhdywH02J+SP1Z23me@i3I4 ziJdzi$BOZbp{0Bl#1b>*(MX1z?FDCdzKw|bV5(*5+tf56F35Mu}*I9t17tn_X;sAFgD7Z?bjYNcw($Y|SouPGP|mB&wRU zi=>{MMo^xyp?J~|P9lfe@T^RyTG(%tdcqId3^hEEl~&qN5h3Ywj+Eguf)o<)3hJ&i z*mgYGJ(ICrw=!lmrZ_jO$?YOMn7>sG>S8Q3p*g*{E85LzmS`&dF`P%iZ&I6NOpDo6OW&;3_dSUGToafX>z zuG(52qdnMHGOJImJE1P@RvfRuX0_pKg=@zd{-=Ot6CZ)9j6%{BC8~@p5|xsTLBdo_ z3}KqgD+0A?FnCNsNp$B&+X22w8=<)FS~=eB<%PhVnp@=t2eV zhk;}G=G4LvkoOt>mXZMBr@r*-0;P{W0b~bOBN6p?Z(+<@7#(Y{57Tl(c|3t1@hyu+ z!RIKad{;|a&vSGDopQU-1hYykviDH+l5YB9pkD8Qu7&tD!a)usJz2D?W6)S< zZve!Y`1a&SfYEVX(gj}lMI?hJ!WS8}6jr_-r9pt1_E zY^aZ9@~LqcIEqLw+PPxs^bR`3Z<*5Z$2WX4L+Z0nnTHD4n2<(Oj2FvFuxc%;P$

    <&@$xJ=1*qibF8}O9UNvYAY5E=Ynx4^B-^`#_rU< zE((dyI8^kHU_k5bEB5FeznIW*U~9IzLEAN-1LCLJIIb;1$&@E|&+0RmxC;JO4pPan z&4DfM&B|K9CQdv|4(}M`+v7Xxwoy)5<{X2i+&=9C8K`tR5jj#(Jsf??CFQhA-mc40 zTQ+8=0d4Ca*F<}Gnsh=lHHsbLNh@RxLU(xg?IiVjRLB!UV|4z66E*L$+JGJ&E{NIW z5vFNihjfq@LD%ZlHNl}ShDJhyIQ&fNOiD*t(l*~vWeEvmh9`(bkz>CY$jDpk#mI;libY%(`y#hRd?P1bjVE=iEEQ2dc>ZA3QaOniKAzNZc@BySxyEN_X_BcN}O|3 zT=cMg$gR>?MIw0$9lH!9;C35J4lTcVmS>*Kp+~{Qf*9v6nrXBr;pXd_UgvMvC9?(%Yrwk~;Crb}9S zZT7;rw?1>M#~_qHzgurnwg-^A3qe5=k>K*ob;y=(e3BQ+m$!rxr?1tJ+LSQCnF+5i zPbF3LgtLJ0pej$W%RSeTvvmEFe5QPPYX}LabqglwYxOm#jF=6i#;>x&=D4!EH$F~E zDxgDKVjCYe54e4RIzx+ z&w-38H=hE)zHMY}DTlRG@RArVE*|}Tb`;o}knTZ{yp^T;g6W2QkQ+D?7T%dxHQ*Cs9RbEEmdD3D3afGnrL&NLWmwWT^5Tuf)a%&q*YP4K_A3upnIz80%0VnUi@ zJ3e`Y3uRAXhXF9V^*?VuSVhGbnMH0v7LIm!>n3*>ZSA8*nyWKBl#~||08H}F`U(MqJ;9Ac+gO!v&CYp*A8N`&=UOziAwe?V7UDx-uB9h{wVpQ{l zy#BurT}RH;)sm>X36u?z5Zxjw_WW`HD4cUt`G#SI&c7L72n0zkQ4n&Ci;I2-K9uSs zkACO(aD=NRE=~KQ&^6f7^rs-3?WzNP#Zb-hWGktBOep5U`rTbTFd>ef z@W#Vx{kEJN&;zcbAuEO+5i8i?8z~kR`Rm_zhqrO8O+RSG@$5CJW&XFlK{OX-3~xv{^9XVyNFv=`V9;YS#&&uLZVMA_(a+M67#1Z1T84BBvT8EITjvp3 z_!nh972r=Z-6T*lgOgx~ex8MpP+*vaBvqL6m#xsw$G@lqzR!+X=f}cnT<1c(WPn1w zsd8q$^|{ozuDQtz=)3e77aI=O4zf>0s48>axP=t~+SuC{q}6m9d7tF_v{+mP_cctG zc?uQsR5v#7T74&!?*fjiq!*S1%1~ODzYp=aVpu`I2uaWI)o=>4A})HnXFNdaYt^H- z)YTEJwFGQ?3G%WffhUKbt55!3aE=2{p|5=x*-w9dP zwVT0!)YYBS9pr)dESIO>J!0ug!{ix<8UhutR?C+dGu>D81Y0lO%#E?~$Q&HnJCNBL zPbibVA}#(=RF!lYj2^~`q=Y$^*f)b0ukn~m%a$zGHV#w8?pF4nwcVn(mrg$bV=x)v zuXJ>r56@^IS)}}B;C%N2gP6HqUmFvr9>xft7pm3FysFT~3R1N(IetV52sjg;f*b`$ z(UEe$atG$KppbrgY$ps6m}85BcSAw5)@u7itnUs_s7s1D)lIfT)2p@jsp-LhL^qwl zq&%bJ@Vas^jguBxKdgfI?>;s_&42N)KckYAlwB5LXT>>7B0h5kn$4A=biwT9#exDOimvi_x z93_R)svfB*^LUV`Nmxc>QCW~i)w3L`|EX~i;QA%gF-052`-P3pcfLuHYIV~9llXM_ zW9LVmc4cMzq3+I}_m>6YkkOLV`5mPC(2iJN4a#2v-akw0~S3cT&GR%q487j05T(I=6i zsWUH&A4-mCDn`zD>y@dmzcr>m`-Bf@36rp6Fy*CDy>nv)S10VVTOkwGi>a@4#(_w~ zRjr{Je~;1`Ku)S{#J}y;X$yps2hPl&0l1{_nd37cH2m6RbZl&*&KTELE&e1%(0)4y znLPaXuK4y(*>HQUpBn++TehXm_qw%gxTfRP*E2G{9&>9|@G_?j?{+!c;xdj9wX%^2 zGf6Q7Au7cnknXZ#fct0BGC~Fvnri^$`O+gdDChtc&nQlZXyfpYAX;RQwQ?k{;Ii`s+oPb1X z8u@~0_AA@_u>IIRFinEnHoY?4hXZ2wwiE8y9iKs0Y`=W}X7?F)Fzxb?iwA>crb&kS zX8JZBbR0uq-o?*ox9HV6Byln1%XP&h90s4dszp;}q>&998NWbVbxdX)!Pv*N855mW z=ymu;s@8F~4$kQR;Wf;0#UzXl#%D?{fNcl^SN{ydSqWpIVOwKZlaXVdMgF>AtTm@~ z9B~f3cEG$4p>BPyts@n>cQ3;^+7feFkWfBs28N;T3veCi>kgPKA`!OdNXEZ%+HnlY&$=H!l&(2m90=nbY4pUoWpU}3}4S>t^0<`=^1wlGq z#)t#~bEmC$+D+|@L7Ru^tQCNg-8M7nu&58O9Xd1p!Y6KKDf?{*n-c{%+XZQBf=h$& zmu330XNF9akh)udiOXNQ)^ICbhixenDGohW`r{ZgCNjXXj>bccDZO@OgNU}WPCLLy z$A0-ZCfv}xwcMcr#`HXQ4iwEd4q>_&Gh{q;$h`>p$I0op3E;FY!$X{G1Y8?;=mOLc zA>6_puoX z>$^~7k3PkRGR|22EJOVA#F^_K=18){+pEF#wA@OTvY=T;rJ9wv>X@{UBUNgwg8XMA5M&$rPawj5@_$DzL84q&7enL)Ye}Y$EMmd~P27VC zh}pKH;{i}`(MBIfW<%yg@Oi%+ap!Q2IUKnSnTsgIC$&5 zBIJ*`g$I68iVn@uc8I9URgB|wd=erFG_(z7o>zhKnwAnYGN)OpcF1zJD!w7*u5;CF zx`8ZDV&CQEMlzY%W<@qy7?B}B0*9d4?|x5AuWtY^<_jn zaSm$)mBsYjIeip7;_uXDpRnyWexNMub6Oq}mJ~8hn-M%1%7E{uFTXd8l%fL^^{J<# zh?p3URq>4(jD@nrqrp{KAp5kY5l!!-n5c`0pp9_Av$vkR+Z6+>6*E%C**_gZa;=KN zS|ct{Cn156U$`LEmXk1!F9;J?d8NsnE5GBOEJXj8oiyy6$IM-j-L>dn03_BoHO)*F zH7zTq+e%SjntxjI(pot^jz$-hr7V(NYL@|D5wv@)emnJVNIZA6^oLTF2?kx&u2KeXF)MViNOyGlo+h{~Z(=m*Um3`a9dTacf z3G=yBU)5Cpm!v>GUJ2A(_MYgiS$f5<_pkpw3UmItC;Su1y7t@sd~@K}e-;1#bL5Ua zY2W<^LznUIwNp69wm@Kr6~^;}{xvEw0J&#k4MWo$U|6=LUn6y_ z37iOv)klYm&k|b68P7KOH=SKK_$aZGA-3j*$yBgkrYR*F^Ado5TZn&&kqCcaUX|Ua zI^LNly(}$1*)jGZoPvlhXTk4=CbCUKqt(vJ&wyU6Xas=XLEB}99fr_qelUN~>Q9ex z9cH74eCly5UL_0#N_|}ueK57pj7NYcE9#!;WaX9CvKIy!H}NDf(^I{uY4`kwl-;*t zY*4`F^2W;SQ6T#;@`MtD#2pd-%N5aBMw-4Jmpmewl52h2h*I#*WoW9ds<+3i-qKq#P%^F$+Dws(Rh zE|N|thuhZI_~NE~-RvFO)J=RpKXw8BCN`H;Mz{^Hf+ z-!fZp5xNeC$b2#dbc_$(vAy0&cDFV?e1X%R%H3D%i>gxi!rFrdj+Jf9b`s6HsfnZu z=vHfWmXr_`4*J9=N|G{3=KKb*QxS&Tqz9rylZBN}P6m-{uxbh1ie+Lw7FiS8tcvES zQ7fri5>r&;Rw-I@4}KjdaYVq!-uC|NFscib_fk$h5#^8-h>LN!wD`(DT`C1HQr|3^ zb_5?69EM*B`pbiUNUUfT44L(4M!XQ8a(uCdn(1n{MWrMr5F*Tltt56nu;Gl8B7M!+WnTri&70* z0^%xYlMW*rJ^z0?I6}{5!=Or>?|{%0LiV93PEZ)*H{&(ueyilkQ z#M$2;;?XsFnog}=uqS&4*%2k=nFtVW{rMYRdK$!)k0hi4W> zI)Y`!N}QEGs;~9M%A2KITVHh2hxCKmFG@=@1Luo4{O*viP25dwBZfG99UGggu$nUmrrV5-GvW^RbS(sYq93j-F+jGd zslA(~U%51h<(1C}BFk}W*%urJt?wYf9F_7)PIT-4waLWh9!|0Px8!{8Nq}F^oI&;qgjL4a^s0_iaBfAe~=x(Ta*xfx_eT7sL+$uUxa?+=Qt;(|UcwRu;3+QIC|(b@C`SlI zeRr=zq#U!+JNeX59n4-%xfaW1Br@Q?WxciJ+){=AxLm_KXL+OwKv$)--)OxHaej-! zZsH$j(`&Hv>o}^(f1Y{pTZdZ|4q%h27!!>A=#}~MCEVy4ppoBF-u$U3IBACT@3SRi zf40EXKr$N9#aueVZVqWyC7bnT$Ryui#;B05WwwpF1pxgY#^BgzHDXwv%e=hNs6^sK-4a= zO2CiV4gUOZjMZmxZS4X3Vi<%`a%#-g%3p&(d)9*s`IYYPqN?u_L$ivT#k`p*)<(h z&XL=OhN4(js8Np}c=qSrBUOEfT;EpzA=W*HwSXd%Kd1Og%s`t+6$1_6r~LA>lPAJs zJ#!RkrSeeMIs4w9tOGb#S!kX`P{h+WX4b88y~fA5xfn{*_fKt&GQgf$?9>XE8`6K;V|_kfWiPpxYqeRXDb|{kZ0;kY*4iXS)XMEvLE(n=Y{f9tPt&1ct`j2ZhK4 z+i3j1Um;)f{+0E{_t0d{Kv(?e;pfy===n=^^(m`_&##6_Lf;YYu9 zgKIp!Fx`R1u%&8ML47rNwgM5W8{SaMYFRyE zl|cp6LVNfU!A7875l0>=`)Ejfl62-xO26$N@3|pyj!R>^Iai7^se6Q}=Cog8n&N{z z5A}wUpx!AlJVoSFr@+-H1W%`2C9G``uHV? z)}{{C^Xw#VeOad~5bk)L%30D9d~)bedq*+FM%zJpv2dmM93tp#cHQ7 zNq>X5@;v;JVrqpDprmqfBg92mq>6~Em z0{+p1Q>6HU6azuLrLrpur?p2h8n-C5Ve4BFfVS*uFVD>=9eeou11OlSDuIkYfXZbo zIb}g575i33$#FrDWW3IwV{c`fOVBeBYwK%5CDra^bCeAHKS1}U#YLR!ZqGbk`vF}M zMbxH=gVRKjg;}eT5kopvkQPA);X3p+V@IdRNKvNi_N1$sR&zO9P6lQB#|V5gtx6#$ z1$BxbC5j5dbeNlb9nv}sl)};Gn&)yX6u@$Du8eQ)vZBZe1uC|4^+y}5T^+0-57m~w zB(1pX7nIsegfm%gM2LO@@5{4(mna*nNoSdp`!r&@7A2uzY!2CI>4Ml6BKHwj9SK@a zAzbSFq_vvDu3tI;ek};WQXV9jTsW~^U;fNpZuDsJJ|HMO zh>A2>_f=hKH)bJBCHL`!Gt!t#s7KTy^ua~A~D(@efLySNP|jiKop9$ zT-Y}PGn1vN--Doj_rb016Yf>W+K#&y@d$G#%q5|OrR@td{py*kDw0%Ek1B8yXepBq zWeFxpJR7-A;ZqGZu-6l4rMDT$5sm4pPHB~A{J-~>ny6!_%A7l~Y-6Q4fN>@Ky}~@Z zIGVVeoM(>BC8qwt)O_T94(Pe0W2tr&uX38yy1gH_xVtKoUVzm}y>)53#j;lUZ4Ou6 z=3u(wcXVvc^Ywsa2v8REF;FKz9phTt-)?t!Ln)P<*N`x}DKN;k^nj{M(4k2-*~!Uw zh;ZbOtoi1HVZ>0-HKM{ID&J}{F1o40~XmV1;idXi~YVuINnw<%9xlmNG%6ot;9c}3(tDqnVBP4R-hSXPndMQ9QCyLbbp zyNN`|;z$aSDiyLw!UlQn3b@LPX3G_X`n&n^KJAPP(1AD1vmkj~0@O1I&B^@jLNonc zjcZ7Ff>vbXIZ$1Brsc~h)}0YcwV{+2oJuUFbp9Uaa?OkL$5Tqg4Q0Gl^Mc#)-M#x6 z0F!M)^1cy7NEEnImBTM5Zzp0nHfXU#fewBjLItb-s)5$fb)*`jyGT_#Uri|}qmM>O z zszDMPcOXcsJmc55^ndeO7g@Vzt3hi7h|_rvbdL8^vuFU8Q+Al0X-FsB>Z;N#pKLqs z@%UfjhIRxPbum)AiaGr@&QI4Li$pV=h7tied(NMcO)QqGx?SHe}w=kD_n%u+*SbOltvK*Nz+~|-#X%o$X@(@2e z;Tasa;7fOK*{45|IJ5p6SifpUvsiR=vQHoDd!oYKTF^>W?k!zB!Cpie-kJ*Aa*5r_%ZvAYe(olaOm9swIDmx?EE zZUijbQ>Kwr!laZBXmk|XAwOgV#){)YmIh*Pwj#E`k(J1&JQUg> zCwa9)pYz2Kj~d^l@TjQ~2@PUC=S2#|UXUC?%z{0pFnKh8jo;|P3T#b0V+hqIo24?T z++{%~$(fJ|wP?ipbGgN7_p?pHL!?uCS+43%L!}Q+pmQN)syTNQmsP6X!aMZ zq0lUAsF4BsQ26!;$!|mulT&Xr1NsBX)t;rG_R;-%ZuNpv zNIRcK8jRX;6~JPk6p)_cq3D(LVzXT^nkby*L~@%lt8hVKoHqNRAq;dck;bN|vOlcm z<6rx>`04TwxI;iMBjTuDRorI_SE$F#P0yNsL*Es$XZ0RP9!*_oV(uDn+lf*Bs_7AE zhd&{ekkOaXo(!+rqMtSrbfp=!m_=uM|uI|ZFp&UG;L>`z3JDr09_=XEY)!UqX zoT!zq1g#W-QJ+Jmm>NO(e=kw_xK8vjCC=cE(1As*eSQ_8yW*W-U#;$pp>x-2L;IfE zE`U&;mCjASTG^qyu%D2@Lc1nq5Mtlz&{433$>{ZaddSbzapOu4L^*uP&-$NoIe6R& zT?B9fn!{sOWSJTro0s?EXmPEciG7kn*$GUy!UEY9he3`do1AL`Cq>kqXeouF!0e(@ z1|b%6&HWqdYpiMYCvd7)mh)HCkuL=>T?$YL$~5z3Xm$C58!6!Mxva~VmH$Sym)3Ab za&NY0kdm2y1WdbHn?B_wg_7QIA#a?r%50`fTujWy4E0nnncc}@L)Ln88cuDkT5@Wd zo(WtNQBD>RFgW-+WHS32gHi1Co8HqC=k_81>Sh?l?UGkhZEKMJYbph-T&92oCQQ2Mlz0Qkn2g<7q@zczmfvX zbW=Xt0`Btr5dHpPK0HrQgkP_ z;MgTcJXVeO;^VY@QT2CuF`zpM*&`9?Mb4Iymr#>1oLk%lgwzo=U>xy>2*|K(c>Nsju+)fxXaeZcW|52D(oJJbx}f^lb_kD+D%NG0_ZM2yf> z6~Y^#;UDcJ@RJN(*V$3Uv!fz;PTJlM4bE*Gy-t3lRkm9k({#>SGO9dOQDeSRlX?iB z#A!^f6_&_mpxZEPy!QtJ4@e{`LTL@e#yHE=@s@cvZe@r{U#YR=b7WzX#0BfHoTXe# zqwtj;A~iz~U9!i^6dZ~`X5)e}wT-N8R7ePH9F#u0U<+OfLVqTBf93iB ziBHPwEYF-Vnr8S5>1ZRaee*>eNg0NiDF%I0n{^A0PAW={38K=(?1ev=*^{AUFrT8y zTt0~MFILw!&o{@ED)~&G+{e*p^3-T}1J8s1VX)E-FHe&cZz9K;STSDQoEO;Q73vgo za*dx+usnAQQSXNJI0|5Ef;mkTr@)qpiNT@BVT?9)$6#GB84+0%?EI+bbIUw&-WZA3 zL{>B{$v22I8V9IiE2WeJ`PcIV_>WcAxBz`H!DZ6F;WAX4G1SDf30!;`G&X#-)UbMI zf7UTMG3fDYKM#ymC=otJ;O!?ao+b4!<0K4l>C*Q(RB#`IlnmJ@hHciWPCj7vy6jR^ zf6dY`Nn2>hG+u8^Jx^_x)n$ZH7RC>*n&+~&cX0a;nPMv`h5}rx&PM98xT=Z3haRL1 zGbFA4`DzWszjoMcJpi;+(as#}G2W}$3G(G(Kna3*>rGW=$ za;FO^n*wWR=F{mt=voD@Xf|;MVk<(o-&EI5y4VIwg?$=_rcr(jS5Nn25G$I&GyGeh zu#&t|0yjUR(w5*A@)DdD*eSyRAf9 zh%hnd=ph%UH8|SxnI6^0hOl9s+ZQ~2AtaY^scE}0n0@r*o)Vd1YxnH>AVS@|;D~v%Gj_ zkfH#y>&anz0|eY1y0|>xzhE3;4WrW81_i&Jr(Tn?_!pGwa!%#k zFVUekt?LQhsb>~j7Dio7EY>8 z)TODeb~T=0B!{+%X5(|O06gglP;YRd`${y|fUGxq*u$CJQ`DmF)6`5qXNW~c)^klN zG@Nh&2D}Ge89LwS8+qWclbKeh?uCtG1^lB)m2oN&%i4vM^*MAPa}m#AB^HX@ORDIcbg6W z3-@jNNscyZ8%1a**U5`3wiTIGH~tA;o_FBr6$svoI2~FP-}8-9W^*yRVp}nWTvue@ zMoBX-{xQb_y0^C8tkHKBsFphwU6<(tgrIbaf&O$RgCdot!s)oBlRB$WZCH}Mo~I7N z3}e7&-o#Idp~1H}xOtG~RT+N`x0tsZTq@jeUuV4f>v|jm z2}T1mt|Qccnmf!gs1{)PvRv!3Jm*%ysG*9Y45QYg z$`$mdD+Deo6ahoY$O6r%s9a`F2N)-AwVL-Tt8Q87T{NO{qt+a#>3Y`H`b+2%ARQ|c z+Lkx(jZ)Pybcb@4Juq5yM3-8Nv8MaEq`nKTu7R^$$T2!Ek4g#pu`a%j7+IGnEki%a%w<4-Dba0UV?@#e#K<+5WVq( zsQB-ix@iAc9tXLzKX&NuuZiNks#i3nzO0wIUlAWZT-!lO#o*h@;G+A6e& zT99ioE)PLI0InE$iCq{Z5?}^-(t7m9CDCyp+jy6v==-kvL#SkUHazwJpLyRL5jq+y` z%I*-)T|QS4#Lzd7AHQw&l-~>Nq?b!oe2Og>x*ABb3z>-xsK(T#Fl#P}>+)!4TEl2_ z{IUrl7xM8CSDZA1;fC>Ts?F;1CrfwXqv`1Ej<7d96b#DHa_8MA%_+v+&_wAa_?IdB* zHbctzF*Y=!95G{C>UKl&*ka*%BxZf^={Xf9bGYTlstFP$#)M>gGn**EUU(@p6ke=z zw-Q-AO4`FXJ@+ti=#Iex(%21ROAV=7_xB)vSz$1Z#IMKs+W5 zwrBM>Rph8DXj-8BRv#hKwKRu%QG z{&S)IRc!dkQuJpJZS(UP`s5cI-N2(kl8@Xw|0#(^jU#jP`{!WFcT!WvTY&(qi*mR% zahw?2^yrEWbcx!5&2o=pDB_S02JU!@$VUy zDl~rZzY^OvJ<+?}N1WpV`9+3bC3ElU25UxwL*h|fH`w9q*JBuB;HzGmt`p6aTR*Pui#8~tz(kH!E?d{yhJCfrUrT?It!Rau4r z)`GX>xIE?K9*{bJw)o&qh=Qil7S z5Hd&h^utA8fW$AOqIp?!D9xlJ4ja-5jC5&j6l9V_JiJGTbU0GErQ?txZMMltDQ>CDBsHBEOIHyEGzw&C)9kiG^L4j=&&kZ*EjFMpAFVvCvNSmOTjsFi+!2KUl+h6 zxdPcI$g=$1Gy>o3DZv|m;qTGNfZ%u-c0wERj$1w@Hu*W5y2DV$*pt%QExV+#a*heU8Lkr z%Qa6}q<)1YAN`m@#^mS=sz|tp&%2Iy$aNeAP~)23LN1-s;0h0^XqTEVj34*las8AErYFT~ z6HYDGNCE^7zmNis+0F{g3>rb}a=L1$?yJl|E=g4$$-st&We}ReWBWZgc*^n~>}CR2 zvszc#UDw1|UpV+{)%Kr(6T`MZ!+PeF zPh>TF6kgA?dGh+nx4c24-T!3#1#Dbe30`YxJk7{$zs;y`q>Pk}rmGvDdCtAbXlNv# z_>^#|GQFb`tM9aqgVM@fZ?7T-sVa%Y)E}_G1{J7bC0j3$D>+kGc;?%l0>n&WtyfRvc*9wQsBe7zU}(k8ETlJHT90pzE`U z43t==4l9wm8AfW`2DT_!wr5CG8tvIESvY0OPvi1CZs9gbTe2+eSscExwABVw;36Wz zaxP_3d{R=80UKgogGJEd|uwh zUf=zj<8i<{;OGDzvG2*vsedBN;#B&vKI&*d9<_^h@*AHw$Yy z0xtJ#Vrfm(CNp?{Mio|K`^@?jPx^IT?6_y($$%Ly3H!~~?0X3j(~epH8^iXs6Pu(f zEwCjK*p3Ja2}h6JPx1DqB1AGRM_N&^)lO7gyCS}TBh^Zb`9gw~b8Z^m)eQp;VVbD) z^y}jfP%Cv%`@VnjyvK42;F?nN!C)((f3pE%0~F}~@?St5N80ovv7(MYV+5`rIQcO* zD{7Ct40wrHSxY#b|F>%Co^oK0UIhQZc|Mm#<#hVH#05{2`&>kRYQEM&D~ScRIwy8H zf06^ia4SK`GscIzW1xN}_b$g5{_ncoX4`#l-*Wj;ktD*z&&6U$<9)FGWx&{Wt7!3o zTPS12D@Pr*U1T65l_m}Rxa-1GkPj`F1#~MmRKPnJjBHT}_=80WtySS4`2taYM#k;{ zNvV-V>IXpq|3^V$MJo`{vQK`S=88}KuNjM?X0TadywW)Kv@L7uYZFi6_R9DfsZRkT zZ(fc9hRdS1^+`w*eG@JU49BSA;0UuYI~X3~M8n(RoA3^>0X-xR5fD7ojRuzCPv7`V zuo)Dxu)NC+wIFE8tV{uY^3v=PZbC6JE+<+SlNtarf3;gUunAU|}m)*0xX6KV9l*y_Q>v{m$P?0Lh+xCX^r z%2?mOb-NUqbC7r_Z(&%m_F0ke~P(B*HyzrONc5wu5 zLcF$oT_H&mWPl5}QMxf%)Fyjs(M38X6ezobRZzJdb>NOH73F}bm zilK#?SOVzJ_{|Y0EUm#*$EFRVbp!k&(mvG#oR$Y7wbVV|Dq`;X33(!3GSN!&&PJjQ z@k_}_8jUSwRf}c$#R?rKx5Bf-DXwh0Q-Viv(JAta#WHublx->gyD7+sjP_>%^-6rN z>5be1fcwlE(f%^=I#rxN2b>ig4LMEO4P6EC$MI|8Bb)@tgvHVv_PXloosz1+_us#t zB39X2zh$q>uHA)N$>r%$iHo%C=G326`jr(sf=aFxW;n$&poAf7X0qyY#Q}}!B zZhpj?>`jhSPHN2j`*SX17W#MgYAk)F9M#65c9%U4Tm+CqMetFcP!gu8xB^<+bF(Lj zGJ79M)BJkktfUcOl^*I<(!-MN*=npjUP9%k#E8qeD%E44ic{I8iH;=9q^w$Kohp(S zVSIKhS^KR)^V86lm})4@tB~iYWa3Dbsm`D>srUO5>g~ zd=92}~$u&AMga6A|xT_0G$rV2d_LkX-qQx;R^j&jtFV^gKn_ zT%u?Gy?exB-2dj{DWrtOUsRI;U086R(mh?1z#(rU8Cm2o+toxPmVN%&bCVWSA>ZyW2Y z++{EWxemz&L@d!J3X^A<9oIujZH<`aq#yfqd~Uu+(TKLD{B-OIup_vf;}`c5q*JWs zv;DJn>q6&LpJ|H6qXG{<`J7siuQkJcDs4=i3S7Jh5Y9X}A9uufzAp)gOf<4+v+m60 zgF*7fl!7+0G0vwHq!Jt5U;E+!(QO8Zq}7j}_O)yjHmPY%k$oF?KY6^G9O%e)E2s6I ztHsrB>q@eba&}CW`_^!5)6CMZ3$z>(Kvv#Zlk;W>2AfT#PIm3aVOX?~zRmCvGykVF zUaZoXS!JjaZd0|3rQwAeL0hPus%hc)Agl;#Zit6p*@tGA;*OMKs+mVlyonQX?v>l7 z3kEzqv?^&7{2D0%miO}-E@Z+@!!@}NMqsv`w9876D0K^LLyJ|*frq8E^Q09Og7ei7@R~< z^gu(*)0HFpM-9S@ktC9$*`QEv$O1XN{Ds6Dw~9iIzt@M--Ug^J;p)!}3{TTj9R?aN zjgPF0Bn1$N7ugi}>|rQkH$ufuHph$N@vr4c$bYlv{}5#UF+MqqY0pOg2P83V<%S9~ zyv&Dxo)^V02KogS`|Of563?EE`A_Ir{fvQ@E^Am09-l50jWUxy5(yXC)bHEK2&;jA z{9=th%)uqv9}fzM8A)57!uF=N((zdZhn@oE!)iaka+uT-9Y?B3$&q%Bfc@++HqJ>* z2yH>221Vgc3-7|q_ovpdjsX8-F$D&p@(y9?;5KPFP=XSWpPdXbfjhPV2s|7bx48ld9DK&q z713ThkBFJfXD0#?`UILC_I5tG+=yp7Mw#-+3KOnlDkNNa<%lPChDNyi{DAsxI)O2E z@*!OwfBPc@dwQq?U8+f8WM08l%Z>#2(n~D5e5~B+;<`yHE=`jB7)?+X%E*Y6D=Y!q zz4P)E5I{GqvaK_9x;rzz>U%(gdvGSYA>tMlXQO`7=o97q1b)S=?Wl<@#@SSWGeHwA z;mn`w{o>KgXd6ow^XVnuiibD6RKl|{$lETSO{H>?Lw0t4u0v6bkz0#+YCFmwZj7xn zC#l-MYY6ob;sx-N58Wflw+&7-Je6LdF#W;3gCA(ZG6?By}U2NNDUjYG@g zxdZX`jPA8H&Yhp^U=nNyQqNL-Te@mz*d%l~l0PdUIist$5q#s~9mD_V<_&Anu8}Xb zcm`vik(F(iM!9l*M5uEUiY+2eDQd{fg6nfn_JQo>oUKP%;tp@Zo|9(MSuk)3v92w{ zgJ>NrvwD*PcSW`CK39alo$M70K575+dQE?_RL)4T!mK7655@Os;|WcF+VvLuz)vl zJ<%CM`Mq;2WE)Kp%+Q}_qiFO_7HXKx>J?t);k^cBA5)&kwgtv~cv&H%Vsfk`2VIo| zW1VB8X|$OD<1Du&3;z+(EM2p*yK{5AW>n3^-6#|_0&~Ht!G)Mue|wSt<3-Biz|`r= zoD$G|walUQZ+L`Q;5--yMuRAkUMOh>Z97P*M+7aPmHc7Ej?*AIvH^4C((Ow} z@?Nm#-X3uM&d40*D@?D#=Bh#~F{`x^JI|^?9v+#R2U(wv8~r`B){ULr;+lcOl6=t0t zl&F0hYTsV)eO$aUkj zVYa;LrPE*UGq&p15g$dMk0Y(D;!3lefs+3yTx}e4>vv98<+Q0`Mf*?|+~}`r*natEHoIBKP+8 zRK|PQSFYR+pF#3E%mR4ktspWT-HqG23mdE~3s*25O#wcl*r_YRE5_(?s1irxhW+k` z`5PkCnZ%a(3lH?B*#*mIhO0aaxN18lY(|3c^#GDNN$1v7o7b41ZEIA_B*ZFicvqId zFAURRSIt@lNMiNRY*V4NlG^@2G7$6FFO-tJ^He+*FRWd#!=amq8rJd;nRk&$_$bF~ zye4S|n?ZWoD2|7nS_!_j!Tc^hi-b5D-fvjw5iGW}(!1tH^Vz;xUxpKbgHu;}pDSch zjEDG*x=Ut%ZYfUuZ7u}A5udi)3o{EYe61mTxKPkiAo`;3k)_eHuWy$x@JDYt5=#}3 z!}QqUn%4;Y>;woBAXgUlYV-npLXF|!#y<^(hL1MhF#xMP4Q8huQaOgUp-E*V78+(>hnmC_;Kv-zP z8G4=otFw^CB_G0~`Gt4kmm1$?aQg3S{ueg+I7X69jhum~KYey1a<1q)3vn_8uHyu9 z*al1{e)8zW=R)q$xo2ns?*4DD@nY~`h-}fBEU95JWPzy z=@9nw!3WyZbd)w(e{W!IAXuK~3aQ0bDT-4yjhJa4^^IK8N!TPH4WP?EO9QHe_#|Kq z)SsxnuIUnEPblIG9P4D7CylFUrqGMtQ-N`+v-e#_yFgF96;q{FYV$`E$SN3cO^@u(VZCR7+WsiQc&iZ#reAV(vi=+^%Td%R zZugz)KGlE92=Fa)eM`8SNUTpSip=*oHl!=li62qU99nlIKzi3*J4%`^RQE~`CI@^p4|IVJ`U)?3HC=rC>VP*8$n47x3T%G7Z-6}CutsBFB9=zG?97;l*!qm6LOe;NZC2esmN72_#Q}O$XqX>d zegJm@6`Vxg4+43rh(7w(my<6CoslJ~^K0_ldD5ep-pwkIId6Dd7j7|NjC#rRMDoz7 zHzQx^)HF~25fqR$R`J5YH!XK{MjY!!JmTMuuL2R6T4b5P5p#$W8Lu*!y-Pv8oGq$E zP!-lex+)c3laE%|#TaSMnSl|)AcKJXKjhbh(yQ`Xg`M#dFHTA3c}|7U$pC^EtXwc8 zBMHk{1}h=YiY0jE3J3e-hemvi8b0oC5Y@@2<-YD?odf~Wz4K(Cf#e_>M8V=4CyB9y z$L0qe-hH944^}-ustaMrcV48$S}bFm92w!oLo-? zz)hXZD_7C{rmS?JqdA?)tC8L(Op(-$^pY-GTOUr;Gg2oWGykXibX>E>z9`~6snW-% zgH%1CmzB#YGY;qKwzB;E#2 zcWbqdh%2_?k0%ubAB=5(!)a}O6EW5oxl)jMD?+4Gng|Dw6ozKvRitBZaEA)1wiuk7Qs^XaQhH9V1CdT<=Wt!6O$KR@# zwbkZ39+ZrzS@7I|f6MFdQMm&~Z8zz4je);^Iu^t2`kFKNJTQIhzyyRK3f&$=o`~wocX15O_dftRK*qn2NIPFiUC2!nFG%Z$XtBQa{xWS&RC^#R zh$LR=g7tw|Ss{22wc5pl2B%7;cHt}C6OY>FS1ONHfRfT*0x{K@4^g5%gqifAeXe!7 zb;0Bh8r9R)U^rE!@$C4DBbZ7;t@BG64-l16-{h*D&-mIWsHv%r$--OX%BDw z{67Y+-hBxY#O36c=z5mqDg%%!yTmm<;SF+;1p%Dijt3yX>XSyfC+MGfK11#APg$9M z(y#7Wt^xkqe`Ww10s$qs;$V6Hsh|>j0n#}ob4Yod zGY`?x<1+)@ZE%vrI1=hOW-2-L@BGH6!N&aOY?vG5M*SuzKGix12r!LB^W;3PH|caQ z@S2d|l2@QhDI;B8OO#Rjy_N1^8LTEFJY!M_RIBhsb@DTs>g0Cg!DEvmaTVaLQE6US8O7EPM-4kBlda z;Ka%s-tD!l`$OAkZ(Byrv-3Fd2~EfW{3W_Z3W3l}W)_jVlclt74z~kM)P?iK(TTw{ z%}c3ZCK~ACcLJPv#PMSr$aP7N_+d5=f^kE(Qz3?l=@DLgS zUC{4nP=T(XYJ?9eu(9jZ6HEdE1LP4fcfb~7;txu%wqeBT$b4SBo+<-&FV*9#-Bk4 zB@Uk)6+y@1&YbBKeeY8MxIvP}`J;AEy=wwAFbr`5=t}}_FQJkWisWWS2Q>6Kjz~Q< zW|6QLnCMOaFT6;EoUkb_S0C!W6izDWXozQAwGMZt{53otq7_XMOw-;;u77E2N%cXP zqPB(cM#xU{;f}T*kU3l&N*m|J4vU*Y$)*C%D`dHjHfQeU$GLlOQQ^|J5kn+YP5Zmq z{o2%-XA#FvWNlozWg~igW=Oy*wUg3pvgy2ACCKE12F~wSPNyO- z>wA0Q)#T(tndxsn7liW252bTAXk5!MKI=U*z+DO?@`G-P`Ln**UL5=ib#?>-dZCq| zX}Zv5`#~CS(H23-D*=G9?^Wmp?+A=mi!2rkkP)r225o>iKe^Z65?h4_;8AB>*Q)^B z^pBZ<23aT)AqwT{@Q-}#JrDFel0s2^Ci1ORPts*Xm>UG*Q8ue?L(tSIHoOrvrFyqA zr&DrJQVMC|W+DvpxDJI$7z=V!{UFSbQV_^qs0W-L#&da zlzWrMG70s9N~>$=!j1bILrNuMFF(vO94-sYdF&LZRe^su8Tjv3ZvyA$2=*mo?qQvj zSNB_?wz8lk1S=Dd;g}=TEwytmMi4qq4{r%06+nH_^e1CzN3Ng!Hv0FVZ;a&sMi-i7YRm;AKYME2I^P^i6(@ej10!`t`mVbNi^l$D z6&tk-0l|8~?&G_A=+=}X47Yv2U4*h3wgX!!aJX9TQ7=9xc)#d8M&B)T%)G`tC3ZYu zV2a2fP(g!}>3MDEf%F0FWEEG|W+7pirj0<7C8Yz9Osi&txtUnYddXy+)JW@lcU-PO zr>2@b9q)yPQgmxTbrU59ijtF>$`MKd3viYlXIT}Z1ZTWpSE)8|N>whi7qR_hZY@Ksa5VRFpGX^dVKP9@~I&K(az+>gMeE7eEC*x zD~CxAI`w%e@IGw0mO9FGZ(!wK71z2+zpq z@LWG=Ez3HYv`aPgM#nH1oiYednux!yS{+CiJX9?x97_bhUZ;~2!Y|%ZN zLk7|(wyDgy*yvfJkf>RHNYgfi8&Uq+$n^RNa)fSkHL(JddXONwTGc_h##~34vZx)q zpSOR;pb@`(kRKhFd9rbFKTm=;67Vr*lcBaVbFA@rNAI~ynjCRcZoUa_@ze3^oeHvJ zN656}$sf1Q7q9xT?|RpRcEG+tSY{>qx_TewqipY9(VO9v^ovDMI&ao2UU)mRqTYVL zHl+4fGwa~H0aaLJm&jtzr_d~jt%f1AJCC~Jf*@JU!00`Y%_^I=m>Ze4BgV9v{pyTC zfpOBiJ)OrhDKPxc5Wz~2qFR-R`AG`Q?F}K!)x%^TqsF?q?FKyiQxBZG5GA0#X!S!6 z{<4<#&p*V)eYOU^matkNR}8CiMN8U+SM(B^W&0&wBdE;lWLk@6AllxBxwto!V~i#W za)(*ZOFbSr&#|c%8N3k`uuFv5@uhukBgxYNg>%+AuKxyU{61b>=c}~YlXL^YUcAwm zcAhp-R-YBdn3*4%qn^ueg;Zw-Cr}kJipq=ZvYgs6(v_ARbKSHroCwsKtvS^~W|(__$9-N}^g`!aB^;-x`I^dq}E4YMy; zO2@Gab(x0i)fq?W8BHfmlQx4D5C;f5uZW~}V%kk+LaW|Zgy#vzIy%6{_4$~vd9>wPJuEmd{PGBKRe@1CqgZvWo(+_;Enb7lNA=T^fk z)BEPG3&o9jiIWOJ^g!wbO_#6WrMHzbKaC}~8~^Wh%@S0l^8}0(_vl0_+u>yrmJR{a z&>K$nsmXH)uKK0 zayXKq@E~R!(;m zp*|LWCl~F{L0`WYzs^vQxEw9YJ|mia)HUo|{f(V*aKrL&cq}ZO<;he^Y$R?&FFuSA zmQ0}rqO;iCoii|P&FWBV*RmuYFaUFiozbH(! zM6+&Zv0kZR$J>MVhAh?7l5+?dxHaJ|!Lo}Ht(pXI2pI(PGp#Q^g|3S_IFTC8p^-fl zb67eB$(;T2ME@p@U=Xr^$N|;XUR_^5NsG`{ z&`q^x{{RHA)|eJWcuDq!?I>ZYGtR*0rdn>Y2^rdxDU{`VQb^tGBC^6Wu4>2kG5MVJ zTv0PqB5$DT<0x%P;G5NFQSDxf4BTkR5ci^HIidIgVro%nYnXk{os4(n`X~j)eLNOk zZ(pN~W9WBX;Up%&83Pu30R2>RVgf1zyP`WklvCTS2H8qCKTkY#9%JlH;)lQ0Dp`@X zG8vATT;2g?IC{Ih2Plc*x&J;jlsE7j`Wl!~4M$0ZZcBHnZ3dtQzBw#(10$}VJCi8D z@1z#ido?+i-V;aI{`5AbIi@5+R@rq~Ur!di)|!2Y^0MYdjKbNI8!~%VC^rSMA%WB@ z4Up?G30iYU!glC%>MH{7oj_dRytcBf8F6`Y4ql@k;TGP9+0RN2t)>zlso+Mzm4Ii9D92hTnZ#OE7m4)1gb;UErr zQ*+97$;A|x8*@uYa>^wW6f&j(wBFRH>nqRGuYXcP;oXn(w6C8gV+jTA`ts^yo>%kN z-Hur#}^|JuZWy5e4Lz(!JHpI}ZZBJT<*XmBbs24U=~f5uKP zg3N)rLjoBeOy;^evHJ?;%j^NM%K1ewvUjm^BV3m%X}3mUk4IwUOJEV2We6>Tu#EYu zqccHEdG<>LJ736^t(OW*Z_l6Yr_|Mx{#^+{7D@A}?OBmLJB4GGu(5ulq86jY*bq`6&ST;h`1PoQSVL?am>ulo%inb z=zwT_1b48v_?#i5@vNb=N1-DPyBdggZ7%0(vf128b~`PMeqtVsp3CN2bz3jAD&5~M zftlIzUdXMGW2coXP`6Xmz`Jd;z+SGp{dHiE45X#KE~Z^|s>5?#?4nE#%AUkXEM@c? z+@yF}(DX>w-ck_P@)}@eM^GQ*>n2?oC`V#`BIJOHURE^C6|iv&|5J(uz>eBzbh57p zRum2(hcL^(2l~PGwc9tbfqy6`dQx{;JHyIxxgt!$FF3n7Siw;)q8OeTDEm8 zWT<6VtQ4qxsg?}0Xe`94u91B=WW*w!zZVf46*JUKos!mDUbI`7Q8~{}igJeN0`>@7 zSg&s3)-ydKwv``g56%fU#6sVqr}agDWlB92#%c3<8>Ox6My6NFDG;gsHZT6G^)3c! zlcN<%P=XPVwLT1={MiFa^@q910Mezs{xsI5BbZXL#sj%O2(INB#SCA8w7S}w+#*JK z21_SPDTbI$fpF{5YM z@_S;{uiEVnZ61t2#xFxL7YF?OPz+1Cyy6bQi|Nluj;O9fmp@b$T~`0pAP#GD}>Ag++_@WK5~~gw|8zYB{1VR)EwKad@x8&`ot(Ruf$& zQkhsr2x?S*S_tDuXwb)vT|6?k+@C9l47l;GgD=!Ha=P7)+X z(Ltn+c)`*|#bk5j3{2`~C8#nE(6kIbZvKo|C%e^8dfe^l!x9X^%%mveDjieKJ~%<6 z4yt=HO2W<>@^L8>_5iNE5*|(BhPA5Iuv&>FgqO%8M5z&0!V6-)l4=syX)96E)KXuL zh89_dkrtD5W#j{j1$x_|Xi;F7KCfSUpdwNC;!wlkkc|Gz5qS&zSMvzg_B9_LjcOwc zmvQoMFK<-?k#a}kx@T=HQ`}UNP9sdu*>Fs+i!tVC%1>w-&@^=Te>Qe-p!9Uc1ONQa zA!2b%&wS>h|HFm`$>(EF4wNotI;D4f?tgkLI2}5#p@#cv`L^kny^@O_DK)Qp6sZ!) zH21=Ynq&Z8NO%qG?JS53VjdVGWKX@EG4ZyS;-*vzSwikWMc+37Z?Ejv1S;%40J z8wBF9PA|poQ|HHYH4p2?xs|(|Z;#AZ|CH5i`z5!&ZPOUNoX>t$?INp{Pv5^|)4Fc^ zRbzYh96|HJXvU%Lr`0^K-Lv);f9v76cgiiQ`OA=v#iElZ(x30Ee9fJ?<#n9z>;KIG zdlW6HK-z61toWFEHi4h_ssL6Jv%M;5j7wuWR%s~j{g5Gdj(gyr^387}1@EphqTiPI z^LGEb!`nY`5sdQxziW2g2is?i?+UXQmVi7z#UK3E`ghGv+x^IBLLSJNFHU`no1bZ! zXa78P?)#$m*JLT-hxJ! zKK_rCArkj@yv4oMp8WL%i&aT(u{?dubrnT5>NC0$w#wwU zZxgS-`^KC-tvQF+b?k9iJbBcaTfMuj&tIIvdF z)Icb=mv%5do_a8{xZfU!HmxYCLIPdyW17ys8n5Yfk7VXtPp#*iKxIk1~T> z45_?$XKbnNP-E9+q?95{4;(Q6X<+a2-XzAP3O&T) zoLa$_);Q~$TyIhm^Cf<2BY2YKm*9DG1q)rT2TUIkiUAe*v9>+GN_NTfnhm?+qgNl# z34R9-mqG--9X;uLCBphcrb26Nr8y(*_uUv6JJ{QjUNd~6w%3j$7u%p@Xxxr?Cm3*w z&TsO#Ug%o`40%-4a7gJSGG%zcj#T`aD0+pH)Bc&??K*aQ0 zpRDHps7*h1oR+3GpX>&w-OO>DKhC_A%7W#mgJXAHMM{{3kfs$=9yhqgh+{SuJ7=ho z1jF(igb#|jAFkbadbi$8Asy?zJyB3?>O!z%bR|XGk?&J6ixo_`TPBGjWl+U35K*4> zQW0HUtgDrz!BQ_p;`U?MZ~!;{-tQ&@-v{vp9q$(2{?C!Y|5m8q&S^-?i+>a7N>9+? zrdZxP8^!+|k5b`mM6gIdWWJ9dGppjgjT*S@Af1aY8lj z61Q=N5%29}A9R$R)~h9U{mY|T{M(L@wOYtFJ%Ow7YN3V`K`x_)+uz&Cw)7U`5r3aW zKlEuolUl?r;8eMx2hj=A*J{mN^WT3#Q3&6ey{(DD9Pd+TAc+i-`;c)E%CI-CP6|2cOh9QJ}52Pr4`ey$qM>d_jFk! z-I>ozySz2VnBOok-9m&HPucX@+EVtfAUpCdRT`509I&xHh>mC&&#{%AU9H_!E!LkH zsyIf@Y(B3q8^j%HlsMjH)q3yh;1J}GNMS$t2(cP1Hp-Wvi`1$@q)-^aDmCaRPXsTL zsUsLbIU|nD|B)5WXdCFrYPQI87%ksN;dL-{x=w~Kgh-Avy|c`9Dkzj?%`^*mnFce{1e7&d zh8JqDS)k7RE+>{;^Enz$5s)!fMw&Oo7+FZjlt(gBGK?YKOe3)Mrgk9pm}<<%2!%ct zsh#rWMYg1^6%K11nE>8qn<2cdtrTGOTvpIoVO%wY%XG5X#qErtLT<1y)nsTSYwd)_ zP^h_5&ae_yY>Jk105PfN+-~1r^*{Yb503Ocw+U#xV5ioe)e*f9tO5Wu5&454LG~I| z(IxYUq$5UQYSHKHKc;QT#RMaJlS%geknXI5M0aMD&bX*?W{rkfmvz`89v@q*)fEy1 z{3t=A!xr;-*dmQCisu&UyII=o88sTu5Dav)_4?dkp!tyucC&z!D8s7#@FY>nS>&*s z0DDoZ38#m16|LD#c2;&6JJz;|Dt7W(G_t%BRbfk2KnuS#q5tFks1&=6>SVy~3`91h ze4t4K1S(Ry9J7B-T8DT}bWAxdXm zjBuDaCdi9E*!$uew{z21ZjruI@(P&yh1Kg~qOt)xRGY_Fa@JCObe3HbTk0laYBihx zk||SfQMxiT{*9}|c{?e3`?dVANPz_hRiww1v8V1MmmRi9H*Qo^S}d1}HVieW*4raw zV`#`aB%m%JLRt@jW65iP?D)SucQXz@)Q1c&eD)k?!v6yH>eVoC13Y%s;pF{k`|I{A zl*cxCr-u2z*MIt~s%9=vXzO#0DIHLbN!?nXbjq_}TZ;P5*jl%>zk8$hE%dp`!2f9A zq;6i#?XmhbQXT!*H>%>?dRju4paxFLvq$K64xexBZcgUKl%W4mc!H#n1L z#tTEl2nGIgn(C$BVFYxEV>NFYP91$nTR9`VtW|VrY_INrmXzawOldpzH~T);FvpF1 zYVeTXX#!36>iNn z^42`oTZ!=1&IG>w{sK(>sC?x)r;Ok1y6@|>GPWNFO8xvbR=&kf%2ttVn>KaiRH;+8 zmiyXetmgWpR-q;`Qq<588w~2UK_zxMuDoNbV+-la!G7Fjyw9|L8bFxqXh-KqhjlA; zkFOt}s+_Vmc@@}t7F|IwmphZ%QrJQc$?Bo}B|^#QP#yQ8vY?d+iU$-tRue0XQF6*) zu*Izjj;#e-NWhcvZkFWYkP7b>2*vokC?t_vwj(z;eaF4giMZ?^clcCQ5S(?p@hNse z=Q7(k;M<*_?Qi~eZ#vtkG={}aW+oeSJJtNuRU7t)=!j{U1+*tX{DD<2WjFBmVbcZK zZ<=+gF`t!6O~4xeX+q1Z#T6II9)I{!1+>4z@6#x1_Gcd=|!MO zz7K?hO+DTm&)XE9OI0z7z+r?Bj4gmouXq7SK45<`rMqPQddjVR!FOw)Ds{`6Lu=ym zdu^Z}?EvvEIl#j8bIFH3eADj!re+Z=Bfgp6DLJy{rGcPo_lK`5OTL%f0^5jh=Xc-y zQSvhW@1(WdtK&j@hwptKm}H|$f2dwaI#dbH5kY0r#g9Pp+?M%nuZm5F5`12b>?^D?&Q(?dwCpmf#|+7jAOvqNIy)ss&6Bx?qNtlb(znC# zs|}e$j7bo+vjTl7-$ajkEb6CX)(EL7j}E^c7oA9;{Tu-s272T3XBtVf&t^|G4$cE5 z!*7>OrX%p}(nzeBcfI^6@^W}}xz;abcy?EJf+EkDOkw7G zl*%IPuQ;_aXh3{vZXr2|X?>)##lPwox70&cI8X$xWfPG$m9!WmlX-|WM$-^SrnkRR zRWn=!mbT~aGAVZ&qC?#oV~%pBbexGQ-ej=hD4~8H7ZFxy3yHsO#vq;g=c>l6M~Ax; z@2aX@#?w>sk5D`l(ys#Eb9@{P?vcqOSSeYP-n{-NtbCuvmZapiC%X8(wsCK!{pRoW z;%FTFTMuH+b&tlQ;r{O!r)q#x#zodCRueNe?rE&I*0Z*A;k|(@-CHH8A7d^MJO||= z9}Ax8v;zli_MPf!afhY0f1#X6(`Vja1PGWh#`s`3MVnqSTt_*{4hRm9yGfT_*&NDo z9#tO>e~OLNTD2@KAU;OllGzoU+)^TCU>bHymCL487ooo1*yBcLfACvdT&7~F6~G%~ z53__uO(908ZxH@$!HvACs=}yC%qs!6{US`7(7qA`2`0ZTP~EECp;J^0r8dHnR;*)@ z)Ono(ouUM*)e=j#t7(#)6^TJM;JT=Y@UkHE`?ojZmHGzxZ|zl>uby-h`TZ9!1Yv~R zVAg#h@wOoB`=2l4725jW?{U+rF`r{HOq8#GycUEKUj`!9rL^$=Il({Z4}zc2|D>m9 zwqkrt<>yE7JgH(FIho$8b{*5d_O3Sk#Or(Q&57)lPgLt6E+bPC?IoLiumP5BG5Le> zu;LHUU&j?khQhr14+`!De75)zb(fWq+0F^5(yIAV`9xwWFGvR}6VH#<&eP+|#vWEP zN}n$eLiWn*0)aYtFH&88-da0Cn*+IcCgNuY8#8lN_T3Y-_QIgH&Bcrng2BX`(oSik zTDIFpA1`cc4=Ua~Mu+1km1YMTGjsfnw6ze|zPaeD!pCQoc1RnBws+w8y*m}v>Wv9W>s!# z$1R?s*epF9l(X+$TT({V#QS>eP31wYlZ$LkhnD8LAC6tOsm`3#yO&+Hxed3--v)5G z`ySem(yPbcJGh^>F&&P}b3GirVN-P0tC2pc+J`l2G2f_jY;dpH0p8a(-F9~U>@*-9 zb~e4L$pTKvH58n9a-yJq_2DOn3jnF=^J!pCdQoUS zcK33uADvFkbMAPh234K~uAnx}7rNw)`PfXLJU;B2B537_OeN%8S3jiZd8+z~09zQZ zvSGNWqMC3NzC<7ScoNJOZJ`GkRGYCRYCa!hEE~NYalo`NVUXYg%ZC)}fdLj1<($o6 zHYcp+A27=8!P=I!>?@?IOF{=O%aNj^x@d}sIPt%<1)iuWni7$X6Qbm9`L+IX_R>;a zIME#0lqjW3aqaK27@gKS6d05d$!skw1i5w~2#l`FZUqpDpFjFYHOK;M4(5-KQ%z3!2%{0O6#)?h_{>+u!#@+|gVjwebUqBGd*Yze!T zOJdQa559(h!)?g+=}WpEuj^c2H#)IZf=(KTLV_~riDXLFdh7Jsm5C04npWqrtR|Su zT?DU1k*d*&3QBlQz2B^leaxY6z$+AWc)Q-7CWITn<#mgz{LW*cy6E9Akk8ZWJ5j_q z8l-94G0*if!!4$$hNz(pCD*r+omO&{gpCOZ9eNXH-Cz?<6#)>_a@}NH%h8MmmW8gC zXfR`H6lUfCPteDvF};~4%rAS$3D@6YbTau5`Ob2gkj+*qx!)|3V`O{>N{`1=A{%^$ z2Hu}#)R6RgRFGb%tyboma}6bKIibFwpp$CXRU&Lkeo3aHmNLKe&&Z@Z(UjbV7v9qi z@RDOEgTUq~Bz~qwo_>)u@2~w*ApGK+Po(l>e8GgB?PRpfeN@v%w+q3IYHGDfP3iQ6 zx;Zvu8{O_Db{g0z0f?92-qH6sJO)X83p}mqM9L{#Z}=;ZXcc5x-oA9L1RvDo^llBj z;sUbe(QplJR(IEj0p|lI4RV~ySk|J02sZX?YoNU3H7<7nFyaK-~3|1OhB)fvn>kxb6a zcG6{;mz`W8?3WUYqI5`M;yY6-GlgwHpLrw6JlNF7%k9^EoT7B@RC zKQ!^dl12cQ6sUFLnFwUR5Dl2~$s?K=V(s9owjxl3O-X;Al}nb+jtpu-wVTe=h=giG zM5y;%xC{OEpKL(zENjLcGSgyp0jq46MFYXKXcU2RL@ChcF@a!sVf}~iHcB7>Vr4c? znW=>7(E(Ufrg2slo9Tv|&{nu7lRI15**0zCnR0m=uU(f%E{vgn7G3qcVSnY1N3p-v zkSQbnp0L06*MsPS4HX{7T&`IqS3dvVML=^>7h8f>DBvO9QCA_4SHwE%X%tc@iqT6s z1V^b7h!To{(n2oId~8{vK=>b8W&>0;kO>`9)QOH?P7p5A@dZrg|F?#!(X!@Ixfrj^ zi}-;Bw2u5~_Jd0we{YZn-NU3Vinvm5ynXDPfKs1wy=7_2;mxbw&ET@`u@zUAZ~muI zaaNHMEy%kGv4d1}(f((HwCG9gOG;;?UVr;om&>vGiW4 zhAhY>rTmJ>=jJYl5u*qfF$CfgI+VInm6!KOdf#$~t%^J%JPC=F<_Y}HZR4DHn&Wb; zyiA2YpYG+P0Z*1F+fKnx64+$z!ac{nDMip|X^>-i{y;J@ddUH-WebQ!8V;o0{8xOC z3#xf&0J#;{T`|AxS|e=Nfuxo&>tCkXIvV1|Bd?$grXjb7eQOya;5TV3C^EUEM<-Fh zh6gcp6|kdvyc-zOyRCbue@DWWs**@qS)^w9y@G%fUg<@wkuZ2j0Rq@uU)nKw-lAQ~ zX6&civYJiX8n!PB1;B&nPo9kTdOQ?h1+AF^=t`H%WCS1>-)4@|<1rbo-?S1R=W>+; z?aPLeG)vH`Z%fZyT$wG6v&Qzh*~3K)h;rLWkg=C1242lzBF$S5Aw91fI5}ezuV#Ha zNoDNS$zx81{U_>PAynyr)F^WQlu`bie4)Pn1Q@0_q78?NuEcN$zi@P<8{ ze;xY{sBiD-Y{>fSWhesS@`dS{tWee^D;m@d(1S8T21K2&D<19Q^Z}~!OsBG%)Vc%8 z5PTRN1ysjAaYT6Mc=zXzkZLns$K_3?S4HX%QP;bP0Lzu0`l~(Z#Q`D5&tyI}UJy9x!68d? z-dh!PAA#ZOpm@E|&94~vO*Su# zSa!b0RVbG+P!A)tvr~UM9#?hb7mB$zlWFN=^CHXvY9OY@V6G+Vulk$M5Iee;W4HA3e1)_gt(Deb z)cO(loDU*4q)%Lb;L42Hd`NpkR;=8+7&&pkdEkTYz79*Ls#pe<%MdD{uOtRgX;#s%%G z_*1PXmtnCbS=NpDGBwrwU)yp)V~2e7mr-eKXLCUd>npe~D|bu>w5+GIvc=0gx}*zQ zI=_MPlgV|eo4TMQ`re4NtnAFTYgwPmQuN%y|w?cAX&4-kthGoKxi@{FQuW}eP9{`;8g0xIYJ_M z4A3C3sVCv^d`TxJQynx-y_;AIXFGc!jle-pEguT^p&tw&L)|%sQ0-_70@gaFMZ((V zhCz;PCx$C1Og(taHPLrDQgR5Qi8s0=;q=k_i&MmT1YAh*3Sa z%!{`qOZqYy{JdAGZb<+ppv|~wUd-DgfTnL6ek#S0UlBov`mdWgNMjH+6RpJH!Ky+F zn9eH#|8DA!0FTcnv#^z#m$gq-PI?zs52(J=29LO5oU>5|G_VsumwPNo7J$6hC`*t= zpC`fZzWzfDE1}#s>k~o74zx>6DUn?f`N^y}Tk^-q<9Pd0m!bnco=s(z%5vPLN%Ne3 zZ{J})=$-^HXq;O2X$86OpDd!7Uv7NWoU-XBj|#L zp2nf)Q{>7v4KOmf^0}Yj4(JCo-VQ76j&7p0~fB|_J z4rr`5H&X0 z{pK~bUms9{&Y>r^{}=%l-0O!u_PllfvuER50(Z*);b_8@=QmL83p4(BKE6WKJ;X=4 z-YZ-cjilT?TQt_l0kV}9y~zUSTEKiFz1R;0*!ZmF3z&pb`Y0nmdVXiYl3%)}C--}4 zXZ#0p;=3N_=#&PGQHc(5>2R}w+XnIMZL;>UqM&;y5P&ZdW&KwG;@lnfkB2-Uv9)SV z`NwBBfTQEvFc#Nw;**6Ru&A+_G>ab-k}5KP!+ixKR^iy(xy%lif%+frst#e?A-l6u z2*Zx~Nw;Or3jRlVy6*Jsb0;buk><{~)aW$pjQX!Df6Zsdoc0|?-d|{*Y4RiauhAtD z*rF4A?x@OTwSp1foxmRT*mDc-abg_@vRzH}{WPtj?4+xIg;RR&j>0Cbl6eVFThHUw zIU5zSO-Vz3FJ&i+~=l`CQkDF$tx$}Yerov3^_#5y*d zb6i}xmKBjg5S-ks4RavUo4*`MjH#q>p^8@^HF2?hv z&b|rmBkEYfMQ^i^BKd1#FYg@sjjhl_D;l@To@x40!xE^cC0K5&$aaQLsO88;QY@6n zb2mM^%oY*=*|FvKWe8_{jHD3dQ$7p(O++d*o649+@_Zb$^}zlSY?|Zaru39VeYlP4 zTrVvV^Y%?u>P!RTx;PLRbq~yNfkR;(bR!YqGmk7p>adSZBP8sUgh`JqocE|hi zh3}`$OStGrBK6k;%*P99K8zi^$qm|O_>L9Ql|=X@*9fawvD~^j`O+O)gwBF?QW?_z;SoRsMWmsQw{K!BSwT#V0AhU6VA`Y{bJ$eo2c|ga{lK z3uw|v+-p?azKop%JlKcp`&~CybYoQae5i1dTx^%|oKQyG3VYeJ{U*X$g^m9^9$uvze;Pf0XO^7`j zwadd8osz1?g;JOHg6g`R;K$R%9Hhmdt*HJ5aJ3N02)GEpeQtTbSA?}b5}}lpTs7={CW1*k=xx-R?n1FC=2^aF>f2WV zPeT&*pm%2{)XiOOJQ|+E=w5wdNdI5=sK@)|XNz-HX-a zA_4-)hE-Q40i#l}g}F(G*8e82VAXYR^KeV_D9+O5cGfc~I19>m(XjOxm9q3WDFYD4 zv*Gj4B*TmJ9C9gEkg$I#9;Z#SO?zdP9AAn0BVU93XQ#hb+S?ArbLc!Z%1 z-D&W^qL?w@T%Fhbwz6{J<$Jmc2X7==A(XJz(>X{dhG^D`#?L>ii@`9p(%%rw;$t1AC1`U z{H;I2;w^zgdG3{SG(!D>-+BCS&-3umngHe=+Ni#`a!M9+HaZ7X{VRE6NXJ9&rP3}$ zbtihg=Zzq4oqNyQ-befjwBWgh*EG*C(9RD+biD>q6(@Q~A{H+BFX}n0LRW)X>kf zX_{tM;*++8(y7aBnWA+w_uA}>>P6>58+Y{3hh2J{b!wubCJ5OS-QO>on^x3FeD1-Z z8#m0(pM#&6Z7?M3K5~7_OBX47t|f2y<6cJMo@QT*#`3Bay2zW)xA=qd-Ia)7AN3bNHDFD!|2g@2d#0>nNGiY zHB3(8*0kDk+;0k(TEXAFtHyDuC8FIqn%&f)wn^TVEH26AR0KDw;rd&1;?an>w*QH< zzwt><)j{mbpI3k2BKBeTfAoUVxu(mXk5^`J6)k&qL^6XDX9+{Z)%6`#o>zFMFgQrq zW#l)IwmBO{{rE@A8<(|H{5cymLsJzHw|^nsb~72>_GJ+nu85Wu-SEbQw@G@u{r~p@ zi`vjk%a{N≶M9Zv|5`G?V+t`dH%WEMXqpk;_3Hk#c)5bow}^>GHdOg=@5pYx=49b13Ly zrJynzDRebu8rnRSaDCBo@|9g53n?-Toj%;)7@=UY|Noy}Ma{<^CTZW`I9PGat{6t2 zaDw4J3oUfqrNwG{*q4kXjQO#)d%E?I`6unq0@g?R`EPa45Y|xpiRX?D^@^QqfPjrp z`1!tA9;wNGs_VH%HtUBo8*1_;v~g)avtfdTTKYQ+w|_T@R1|@!z4MWbhw@XQ#{r8n zFBZwGL~*S&Epds65DN=S9LDmC%OD``N?Ja3mq@-KYHmwkg<5GJXlu`C1U~hF;}GUt zEV_svDDRB0pxY;h0iVB6!+t9MoPjoUN2{tnNvmp71!_;3|F6OefCDX3EgVYSHa&Y~ zU}M_~aPglu-?Am;VW9ar%IVbGkq@`{Tq5wAt!;iU^4x0?c1udN{X&%ux4V&|KJ4W8 z^-G%6%-Mk6r|NGgPt?6Gz6|&!zRxhaV4(F`GZ8rK4j__!PX?Q7^;*CQ1mh5%DvR6C z?e!IxGMT8~xw^^9NiPO6=pQ@SRODn~Fsq8jD|VmScW#=CFmzog>dWa9ISWyD>bX6* zxnZ#2TwN0;af`pj^X|5h-UR+^#wtJ!B@tKiK!pf5VjK5!fZLt zzX!?qwZ#;g@k9fI%Zc#zkaZg@VAO57d!5O3Ue&0UhOx8iALeb!OI zRvYFgz{G^aMMxIXA9Q8%Ks(ns{Ng8LwsDMRXV9_!HbeTZg#-D*^A&&kWc>8s7s|rI z=ynSoO>Z_is~m>%blt}gX#It_>e2=$ntV|mjceXzzfgYM^uWLH4|qn@T1Vx$y+(mB zr_oTl_0pJ8ZR}4L)pN;gX0*r7gHMr7oprWF%6?*dA?da-61JtJNHWwP^#36TIN#Kl zHX65H`VqI9GB?_ee-?H!Yb?FpyYadu!+UaImNKBnpF_sZf6ay)B7}^R1hodXNP?eK z4UhCNG=>^Ra(w)t-DekO(;#W^pCZ0-I00f84I3?O?7O zB%x)J$UIIl{lRxlFHDbkes}4Xh27aeZ@lufb-e26$_f|NxU&YtVUJG#2x>BxrM_VU z1LCx!(BL?8gDF{Vq$J)xNc>yL)$=)7I*g|%)(&0-;j8CsUSvGa_^S6DVMpH zb8v0T>G{!ohHICj*>1fftNM+zZtws0KCZLv(IK>C_QT1EH@fD(8$2iPv~!>Y4cV!P zSZxtr!>L43HPE+4<>ftO;-5eywKK$aj&E__@NZF$Ub2O545&GURXRcHZf+@4Q*sxY zWp376swn?@b?YH5czxG41HZOjt)n5ymnfWVn}~l0v!W9f09Qb$zl@4>j!2BD$PIWy zG%tHq1co&qIS~ddbB3;u@9Dn~xdsYnr5s8^`W*i3m@VDEnOB&F?o#)Rs5v1eUah$w>#9 z(>0sd(bH1S1!0KMO_Fm9-(30B*tAvEi!I8bj@kN6Z10~`=5`eh*Oh@TSgc~GARo=W z<9@k$y19A1xpq3jbDRG4LD38!4XW&4?>FThiiaoIiVSTRo?|YzPPb-muv!>myEIOW zt#-bt4&U((ZdDWewL`sy(~|m2`BN@QF+Q{|G9ZCrd6ta$KC*E*TQ_G)_3NXw*H*CY zbEL^@$wN>XGaLNe4bu&0*GJMUg5zS=CN)LQyqHShcMq=mcw_4h9+%ozHC=V~`$%?N z`DWW#&TppMgR}4%!g!nK9J8-_y1Mk=F&oUrC@E68`W@5@I(HpHbiw(p1ld9~Keub^ z`qq-^lE(GMES@?`16xSt_yAA?b$A0;omip zd;&xiYAZP+=TTDO@|)ZHN*1!_{_wQ@i@zy5-UG{`HCbB7dqN5AgmRL@R~5 z-KAmZe7J3gow^U;9@e_R+QBj&j{H=={FCM3!&hwmwI9#NDh>OjBmRdo%0A!wRKaXY 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℞{!~>f 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 literal 0 HcmV?d00001 diff --git a/docs/_static/fonts/Lato/lato-bold.ttf b/docs/_static/fonts/Lato/lato-bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..29f691d5ed0c2d3d224423bb0288e6bd59292511 GIT binary patch literal 600856 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

A

+ - - + @@ -1124,11 +1272,15 @@

E

+
  • depth (pyray.RenderTexture attribute) +
  • destroy_physics_body() (in module pyray)
  • DestroyPhysicsBody() (in module raylib) @@ -735,6 +845,8 @@
  • DetachAudioMixedProcessor() (in module raylib)
  • DetachAudioStreamProcessor() (in module raylib) +
  • +
  • direction (pyray.Ray attribute)
  • directory_exists() (in module pyray)
  • @@ -747,6 +859,8 @@
  • DisableCursor() (in module raylib)
  • DisableEventWaiting() (in module raylib) +
  • +
  • distance (pyray.RayCollision attribute)
  • draw_billboard() (in module pyray)
  • @@ -819,6 +933,10 @@
  • draw_model() (in module pyray)
  • draw_model_ex() (in module pyray) +
  • +
  • draw_model_points() (in module pyray) +
  • +
  • draw_model_points_ex() (in module pyray)
  • draw_model_wires() (in module pyray)
  • @@ -859,6 +977,8 @@
  • draw_rectangle_rounded() (in module pyray)
  • draw_rectangle_rounded_lines() (in module pyray) +
  • +
  • draw_rectangle_rounded_lines_ex() (in module pyray)
  • draw_rectangle_v() (in module pyray)
  • @@ -902,10 +1022,10 @@
  • draw_text_pro() (in module pyray)
  • -
    - +
    @@ -1288,8 +1448,6 @@
  • (pyray.ConfigFlags attribute)
  • - - +

    G