Skip to content

Commit c0b4b89

Browse files
committed
Precompiled lvgl library drastically shortens compile time.
1 parent b5a7a07 commit c0b4b89

File tree

371 files changed

+65756
-3
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

371 files changed

+65756
-3
lines changed

extras/CMakeLists.txt

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
##########################################################################
2+
cmake_minimum_required(VERSION 3.16)
3+
##########################################################################
4+
project(lvgl)
5+
##########################################################################
6+
set(CMAKE_C_COMPILER arm-none-eabi-gcc)
7+
set(CMAKE_CXX_COMPILER arm-none-eabi-g++)
8+
##########################################################################
9+
add_library(${PROJECT_NAME} STATIC "")
10+
##########################################################################
11+
set(LVGL_ROOT_DIR ${CMAKE_SOURCE_DIR}/../../lvgl)
12+
set(LV_CONF_DIR ${CMAKE_SOURCE_DIR}/../src)
13+
##########################################################################
14+
target_include_directories(${PROJECT_NAME} SYSTEM PUBLIC ${LVGL_ROOT_DIR} ${LV_CONF_DIR})
15+
##########################################################################
16+
file(GLOB_RECURSE LVGL_SOURCES ${LVGL_ROOT_DIR}/src/*.c)
17+
target_sources(${PROJECT_NAME} PUBLIC ${LVGL_SOURCES})
18+
##########################################################################
19+
target_compile_options(${PROJECT_NAME} PRIVATE -mcpu=cortex-m0plus -fPIC)
20+
##########################################################################

extras/build/CMakeCache.txt

Lines changed: 368 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,368 @@
1+
# This is the CMakeCache file.
2+
# For build in directory: /home/alex/projects/arduino/libraries/Arduino_Braccio_plusplus/extras/build
3+
# It was generated by CMake: /opt/cmake-3.16.0-Linux-x86_64/bin/cmake
4+
# You can edit this file to change values found and used by cmake.
5+
# If you do not want to change any of the values, simply exit the editor.
6+
# If you do want to change a value, simply edit, save, and exit the editor.
7+
# The syntax for the file is as follows:
8+
# KEY:TYPE=VALUE
9+
# KEY is the name of a variable in the cache.
10+
# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
11+
# VALUE is the current value for the KEY.
12+
13+
########################
14+
# EXTERNAL cache entries
15+
########################
16+
17+
//Path to a program.
18+
CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line
19+
20+
//Path to a program.
21+
CMAKE_AR:FILEPATH=/usr/bin/ar
22+
23+
//Choose the type of build, options are: None Debug Release RelWithDebInfo
24+
// MinSizeRel ...
25+
CMAKE_BUILD_TYPE:STRING=
26+
27+
//Enable/Disable color output during build.
28+
CMAKE_COLOR_MAKEFILE:BOOL=ON
29+
30+
//CXX compiler
31+
CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++
32+
33+
//A wrapper around 'ar' adding the appropriate '--plugin' option
34+
// for the GCC compiler
35+
CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-9
36+
37+
//A wrapper around 'ranlib' adding the appropriate '--plugin' option
38+
// for the GCC compiler
39+
CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-9
40+
41+
//Flags used by the CXX compiler during all build types.
42+
CMAKE_CXX_FLAGS:STRING=
43+
44+
//Flags used by the CXX compiler during DEBUG builds.
45+
CMAKE_CXX_FLAGS_DEBUG:STRING=-g
46+
47+
//Flags used by the CXX compiler during MINSIZEREL builds.
48+
CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
49+
50+
//Flags used by the CXX compiler during RELEASE builds.
51+
CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
52+
53+
//Flags used by the CXX compiler during RELWITHDEBINFO builds.
54+
CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
55+
56+
//C compiler
57+
CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc
58+
59+
//A wrapper around 'ar' adding the appropriate '--plugin' option
60+
// for the GCC compiler
61+
CMAKE_C_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-9
62+
63+
//A wrapper around 'ranlib' adding the appropriate '--plugin' option
64+
// for the GCC compiler
65+
CMAKE_C_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-9
66+
67+
//Flags used by the C compiler during all build types.
68+
CMAKE_C_FLAGS:STRING=
69+
70+
//Flags used by the C compiler during DEBUG builds.
71+
CMAKE_C_FLAGS_DEBUG:STRING=-g
72+
73+
//Flags used by the C compiler during MINSIZEREL builds.
74+
CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
75+
76+
//Flags used by the C compiler during RELEASE builds.
77+
CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
78+
79+
//Flags used by the C compiler during RELWITHDEBINFO builds.
80+
CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
81+
82+
//Path to a program.
83+
CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND
84+
85+
//Flags used by the linker during all build types.
86+
CMAKE_EXE_LINKER_FLAGS:STRING=
87+
88+
//Flags used by the linker during DEBUG builds.
89+
CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=
90+
91+
//Flags used by the linker during MINSIZEREL builds.
92+
CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=
93+
94+
//Flags used by the linker during RELEASE builds.
95+
CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=
96+
97+
//Flags used by the linker during RELWITHDEBINFO builds.
98+
CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
99+
100+
//Enable/Disable output of compile commands during generation.
101+
CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF
102+
103+
//Install path prefix, prepended onto install directories.
104+
CMAKE_INSTALL_PREFIX:PATH=/usr/local
105+
106+
//Path to a program.
107+
CMAKE_LINKER:FILEPATH=/usr/bin/ld
108+
109+
//Path to a program.
110+
CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make
111+
112+
//Flags used by the linker during the creation of modules during
113+
// all build types.
114+
CMAKE_MODULE_LINKER_FLAGS:STRING=
115+
116+
//Flags used by the linker during the creation of modules during
117+
// DEBUG builds.
118+
CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=
119+
120+
//Flags used by the linker during the creation of modules during
121+
// MINSIZEREL builds.
122+
CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=
123+
124+
//Flags used by the linker during the creation of modules during
125+
// RELEASE builds.
126+
CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=
127+
128+
//Flags used by the linker during the creation of modules during
129+
// RELWITHDEBINFO builds.
130+
CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
131+
132+
//Path to a program.
133+
CMAKE_NM:FILEPATH=/usr/bin/nm
134+
135+
//Path to a program.
136+
CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy
137+
138+
//Path to a program.
139+
CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump
140+
141+
//Value Computed by CMake
142+
CMAKE_PROJECT_DESCRIPTION:STATIC=
143+
144+
//Value Computed by CMake
145+
CMAKE_PROJECT_HOMEPAGE_URL:STATIC=
146+
147+
//Value Computed by CMake
148+
CMAKE_PROJECT_NAME:STATIC=lvgl
149+
150+
//Path to a program.
151+
CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib
152+
153+
//Path to a program.
154+
CMAKE_READELF:FILEPATH=/usr/bin/readelf
155+
156+
//Flags used by the linker during the creation of shared libraries
157+
// during all build types.
158+
CMAKE_SHARED_LINKER_FLAGS:STRING=
159+
160+
//Flags used by the linker during the creation of shared libraries
161+
// during DEBUG builds.
162+
CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=
163+
164+
//Flags used by the linker during the creation of shared libraries
165+
// during MINSIZEREL builds.
166+
CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=
167+
168+
//Flags used by the linker during the creation of shared libraries
169+
// during RELEASE builds.
170+
CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=
171+
172+
//Flags used by the linker during the creation of shared libraries
173+
// during RELWITHDEBINFO builds.
174+
CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=
175+
176+
//If set, runtime paths are not added when installing shared libraries,
177+
// but are added when building.
178+
CMAKE_SKIP_INSTALL_RPATH:BOOL=NO
179+
180+
//If set, runtime paths are not added when using shared libraries.
181+
CMAKE_SKIP_RPATH:BOOL=NO
182+
183+
//Flags used by the linker during the creation of static libraries
184+
// during all build types.
185+
CMAKE_STATIC_LINKER_FLAGS:STRING=
186+
187+
//Flags used by the linker during the creation of static libraries
188+
// during DEBUG builds.
189+
CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING=
190+
191+
//Flags used by the linker during the creation of static libraries
192+
// during MINSIZEREL builds.
193+
CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING=
194+
195+
//Flags used by the linker during the creation of static libraries
196+
// during RELEASE builds.
197+
CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING=
198+
199+
//Flags used by the linker during the creation of static libraries
200+
// during RELWITHDEBINFO builds.
201+
CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
202+
203+
//Path to a program.
204+
CMAKE_STRIP:FILEPATH=/usr/bin/strip
205+
206+
//If this value is on, makefiles will be generated without the
207+
// .SILENT directive, and all commands will be echoed to the console
208+
// during the make. This is useful for debugging only. With Visual
209+
// Studio IDE projects all commands are done without /nologo.
210+
CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE
211+
212+
//Value Computed by CMake
213+
lvgl_BINARY_DIR:STATIC=/home/alex/projects/arduino/libraries/Arduino_Braccio_plusplus/extras/build
214+
215+
//Value Computed by CMake
216+
lvgl_SOURCE_DIR:STATIC=/home/alex/projects/arduino/libraries/Arduino_Braccio_plusplus/extras
217+
218+
219+
########################
220+
# INTERNAL cache entries
221+
########################
222+
223+
//ADVANCED property for variable: CMAKE_ADDR2LINE
224+
CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1
225+
//ADVANCED property for variable: CMAKE_AR
226+
CMAKE_AR-ADVANCED:INTERNAL=1
227+
//This is the directory where this CMakeCache.txt was created
228+
CMAKE_CACHEFILE_DIR:INTERNAL=/home/alex/projects/arduino/libraries/Arduino_Braccio_plusplus/extras/build
229+
//Major version of cmake used to create the current loaded cache
230+
CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
231+
//Minor version of cmake used to create the current loaded cache
232+
CMAKE_CACHE_MINOR_VERSION:INTERNAL=16
233+
//Patch version of cmake used to create the current loaded cache
234+
CMAKE_CACHE_PATCH_VERSION:INTERNAL=0
235+
//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE
236+
CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1
237+
//Path to CMake executable.
238+
CMAKE_COMMAND:INTERNAL=/opt/cmake-3.16.0-Linux-x86_64/bin/cmake
239+
//Path to cpack program executable.
240+
CMAKE_CPACK_COMMAND:INTERNAL=/opt/cmake-3.16.0-Linux-x86_64/bin/cpack
241+
//Path to ctest program executable.
242+
CMAKE_CTEST_COMMAND:INTERNAL=/opt/cmake-3.16.0-Linux-x86_64/bin/ctest
243+
//ADVANCED property for variable: CMAKE_CXX_COMPILER
244+
CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1
245+
//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR
246+
CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1
247+
//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB
248+
CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1
249+
//ADVANCED property for variable: CMAKE_CXX_FLAGS
250+
CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1
251+
//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG
252+
CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1
253+
//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL
254+
CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
255+
//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE
256+
CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1
257+
//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO
258+
CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
259+
//ADVANCED property for variable: CMAKE_C_COMPILER
260+
CMAKE_C_COMPILER-ADVANCED:INTERNAL=1
261+
//ADVANCED property for variable: CMAKE_C_COMPILER_AR
262+
CMAKE_C_COMPILER_AR-ADVANCED:INTERNAL=1
263+
//ADVANCED property for variable: CMAKE_C_COMPILER_RANLIB
264+
CMAKE_C_COMPILER_RANLIB-ADVANCED:INTERNAL=1
265+
//ADVANCED property for variable: CMAKE_C_FLAGS
266+
CMAKE_C_FLAGS-ADVANCED:INTERNAL=1
267+
//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG
268+
CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1
269+
//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL
270+
CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
271+
//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE
272+
CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1
273+
//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO
274+
CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
275+
//ADVANCED property for variable: CMAKE_DLLTOOL
276+
CMAKE_DLLTOOL-ADVANCED:INTERNAL=1
277+
//Path to cache edit program executable.
278+
CMAKE_EDIT_COMMAND:INTERNAL=/opt/cmake-3.16.0-Linux-x86_64/bin/ccmake
279+
//Executable file format
280+
CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF
281+
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
282+
CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1
283+
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG
284+
CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
285+
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL
286+
CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
287+
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE
288+
CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
289+
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
290+
CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
291+
//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
292+
CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
293+
//Name of external makefile project generator.
294+
CMAKE_EXTRA_GENERATOR:INTERNAL=
295+
//Name of generator.
296+
CMAKE_GENERATOR:INTERNAL=Unix Makefiles
297+
//Generator instance identifier.
298+
CMAKE_GENERATOR_INSTANCE:INTERNAL=
299+
//Name of generator platform.
300+
CMAKE_GENERATOR_PLATFORM:INTERNAL=
301+
//Name of generator toolset.
302+
CMAKE_GENERATOR_TOOLSET:INTERNAL=
303+
//Source directory with the top level CMakeLists.txt file for this
304+
// project
305+
CMAKE_HOME_DIRECTORY:INTERNAL=/home/alex/projects/arduino/libraries/Arduino_Braccio_plusplus/extras
306+
//Install .so files without execute permission.
307+
CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1
308+
//ADVANCED property for variable: CMAKE_LINKER
309+
CMAKE_LINKER-ADVANCED:INTERNAL=1
310+
//ADVANCED property for variable: CMAKE_MAKE_PROGRAM
311+
CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1
312+
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
313+
CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
314+
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
315+
CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
316+
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL
317+
CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
318+
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE
319+
CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
320+
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO
321+
CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
322+
//ADVANCED property for variable: CMAKE_NM
323+
CMAKE_NM-ADVANCED:INTERNAL=1
324+
//number of local generators
325+
CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1
326+
//ADVANCED property for variable: CMAKE_OBJCOPY
327+
CMAKE_OBJCOPY-ADVANCED:INTERNAL=1
328+
//ADVANCED property for variable: CMAKE_OBJDUMP
329+
CMAKE_OBJDUMP-ADVANCED:INTERNAL=1
330+
//Platform information initialized
331+
CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1
332+
//ADVANCED property for variable: CMAKE_RANLIB
333+
CMAKE_RANLIB-ADVANCED:INTERNAL=1
334+
//ADVANCED property for variable: CMAKE_READELF
335+
CMAKE_READELF-ADVANCED:INTERNAL=1
336+
//Path to CMake installation.
337+
CMAKE_ROOT:INTERNAL=/opt/cmake-3.16.0-Linux-x86_64/share/cmake-3.16
338+
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
339+
CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
340+
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
341+
CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
342+
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL
343+
CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
344+
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE
345+
CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
346+
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO
347+
CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
348+
//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
349+
CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
350+
//ADVANCED property for variable: CMAKE_SKIP_RPATH
351+
CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
352+
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS
353+
CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1
354+
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG
355+
CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
356+
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL
357+
CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
358+
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE
359+
CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
360+
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO
361+
CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
362+
//ADVANCED property for variable: CMAKE_STRIP
363+
CMAKE_STRIP-ADVANCED:INTERNAL=1
364+
//uname command
365+
CMAKE_UNAME:INTERNAL=/bin/uname
366+
//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
367+
CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
368+

0 commit comments

Comments
 (0)