1 # This file is generated by gyp; do not edit. 2 3 include $(CLEAR_VARS) 4 5 LOCAL_MODULE_CLASS := STATIC_LIBRARIES 6 LOCAL_MODULE := components_autofill_core_browser_gyp 7 LOCAL_MODULE_SUFFIX := .a 8 LOCAL_MODULE_TARGET_ARCH := $(TARGET_$(GYP_VAR_PREFIX)ARCH) 9 gyp_intermediate_dir := $(call local-intermediates-dir,,$(GYP_VAR_PREFIX)) 10 gyp_shared_intermediate_dir := $(call intermediates-dir-for,GYP,shared,,,$(GYP_VAR_PREFIX)) 11 12 # Make sure our deps are built first. 13 GYP_TARGET_DEPENDENCIES := \ 14 $(call intermediates-dir-for,GYP,skia_skia_gyp,,,$(GYP_VAR_PREFIX))/skia.stamp \ 15 $(call intermediates-dir-for,STATIC_LIBRARIES,skia_skia_library_gyp,,,$(GYP_VAR_PREFIX))/skia_skia_library_gyp.a \ 16 $(call intermediates-dir-for,GYP,third_party_icu_icui18n_gyp,,,$(GYP_VAR_PREFIX))/icui18n.stamp \ 17 $(call intermediates-dir-for,GYP,third_party_icu_icuuc_gyp,,,$(GYP_VAR_PREFIX))/icuuc.stamp \ 18 $(call intermediates-dir-for,STATIC_LIBRARIES,third_party_libphonenumber_libphonenumber_without_metadata_gyp,,,$(GYP_VAR_PREFIX))/third_party_libphonenumber_libphonenumber_without_metadata_gyp.a \ 19 $(call intermediates-dir-for,STATIC_LIBRARIES,ui_base_ui_base_gyp,,,$(GYP_VAR_PREFIX))/ui_base_ui_base_gyp.a \ 20 $(call intermediates-dir-for,GYP,components_autofill_regexes_gyp,,,$(GYP_VAR_PREFIX))/autofill_regexes.stamp \ 21 $(call intermediates-dir-for,GYP,components_components_resources_gyp,,,$(GYP_VAR_PREFIX))/components_resources.stamp \ 22 $(call intermediates-dir-for,GYP,components_components_strings_gyp,,,$(GYP_VAR_PREFIX))/components_strings.stamp 23 24 GYP_GENERATED_OUTPUTS := 25 26 # Make sure our deps and generated files are built first. 27 LOCAL_ADDITIONAL_DEPENDENCIES := $(GYP_TARGET_DEPENDENCIES) $(GYP_GENERATED_OUTPUTS) 28 29 LOCAL_CPP_EXTENSION := .cc 30 $(gyp_intermediate_dir)/autofill_regex_constants.cc: $(gyp_shared_intermediate_dir)/autofill_regex_constants.cc 31 mkdir -p $(@D); cp $< $@ 32 LOCAL_GENERATED_SOURCES := \ 33 $(gyp_intermediate_dir)/autofill_regex_constants.cc 34 35 GYP_COPIED_SOURCE_ORIGIN_DIRS := \ 36 $(gyp_shared_intermediate_dir) 37 38 LOCAL_SRC_FILES := \ 39 components/autofill/core/browser/address.cc \ 40 components/autofill/core/browser/address_field.cc \ 41 components/autofill/core/browser/address_i18n.cc \ 42 components/autofill/core/browser/autocomplete_history_manager.cc \ 43 components/autofill/core/browser/autofill_country.cc \ 44 components/autofill/core/browser/autofill_data_model.cc \ 45 components/autofill/core/browser/autofill_download_manager.cc \ 46 components/autofill/core/browser/autofill_external_delegate.cc \ 47 components/autofill/core/browser/autofill_field.cc \ 48 components/autofill/core/browser/autofill_manager.cc \ 49 components/autofill/core/browser/autofill_metrics.cc \ 50 components/autofill/core/browser/autofill_profile.cc \ 51 components/autofill/core/browser/autofill_regexes.cc \ 52 components/autofill/core/browser/autofill_scanner.cc \ 53 components/autofill/core/browser/autofill_type.cc \ 54 components/autofill/core/browser/autofill_xml_parser.cc \ 55 components/autofill/core/browser/contact_info.cc \ 56 components/autofill/core/browser/credit_card.cc \ 57 components/autofill/core/browser/credit_card_field.cc \ 58 components/autofill/core/browser/email_field.cc \ 59 components/autofill/core/browser/form_field.cc \ 60 components/autofill/core/browser/form_group.cc \ 61 components/autofill/core/browser/form_structure.cc \ 62 components/autofill/core/browser/name_field.cc \ 63 components/autofill/core/browser/password_generator.cc \ 64 components/autofill/core/browser/personal_data_manager.cc \ 65 components/autofill/core/browser/phone_field.cc \ 66 components/autofill/core/browser/phone_number.cc \ 67 components/autofill/core/browser/phone_number_i18n.cc \ 68 components/autofill/core/browser/state_names.cc \ 69 components/autofill/core/browser/validation.cc \ 70 components/autofill/core/browser/webdata/autofill_change.cc \ 71 components/autofill/core/browser/webdata/autofill_entry.cc \ 72 components/autofill/core/browser/webdata/autofill_table.cc \ 73 components/autofill/core/browser/webdata/autofill_webdata_backend_impl.cc \ 74 components/autofill/core/browser/webdata/autofill_webdata_service.cc 75 76 77 # Flags passed to both C and C++ files. 78 MY_CFLAGS_Debug := \ 79 --param=ssp-buffer-size=4 \ 80 -Werror \ 81 -fno-strict-aliasing \ 82 -Wall \ 83 -Wno-unused-parameter \ 84 -Wno-missing-field-initializers \ 85 -fvisibility=hidden \ 86 -pipe \ 87 -fPIC \ 88 -Wno-unused-local-typedefs \ 89 -msse2 \ 90 -mfpmath=sse \ 91 -mmmx \ 92 -m32 \ 93 -ffunction-sections \ 94 -funwind-tables \ 95 -g \ 96 -fno-short-enums \ 97 -finline-limit=64 \ 98 -Wa,--noexecstack \ 99 -U_FORTIFY_SOURCE \ 100 -Wno-extra \ 101 -Wno-ignored-qualifiers \ 102 -Wno-type-limits \ 103 -Wno-unused-but-set-variable \ 104 -fno-stack-protector \ 105 -Os \ 106 -g \ 107 -gdwarf-4 \ 108 -fdata-sections \ 109 -ffunction-sections \ 110 -fomit-frame-pointer \ 111 -funwind-tables 112 113 MY_DEFS_Debug := \ 114 '-DV8_DEPRECATION_WARNINGS' \ 115 '-D_FILE_OFFSET_BITS=64' \ 116 '-DNO_TCMALLOC' \ 117 '-DDISABLE_NACL' \ 118 '-DCHROMIUM_BUILD' \ 119 '-DUSE_LIBJPEG_TURBO=1' \ 120 '-DENABLE_WEBRTC=1' \ 121 '-DUSE_PROPRIETARY_CODECS' \ 122 '-DENABLE_BROWSER_CDMS' \ 123 '-DENABLE_CONFIGURATION_POLICY' \ 124 '-DDISCARDABLE_MEMORY_ALWAYS_SUPPORTED_NATIVELY' \ 125 '-DSYSTEM_NATIVELY_SIGNALS_MEMORY_PRESSURE' \ 126 '-DENABLE_EGLIMAGE=1' \ 127 '-DCLD_VERSION=1' \ 128 '-DENABLE_PRINTING=1' \ 129 '-DENABLE_MANAGED_USERS=1' \ 130 '-DDATA_REDUCTION_FALLBACK_HOST="http://compress.googlezip.net:80/"' \ 131 '-DDATA_REDUCTION_DEV_HOST="https://proxy-dev.googlezip.net:443/"' \ 132 '-DDATA_REDUCTION_DEV_FALLBACK_HOST="http://proxy-dev.googlezip.net:80/"' \ 133 '-DSPDY_PROXY_AUTH_ORIGIN="https://proxy.googlezip.net:443/"' \ 134 '-DDATA_REDUCTION_PROXY_PROBE_URL="http://check.googlezip.net/connect"' \ 135 '-DDATA_REDUCTION_PROXY_WARMUP_URL="http://www.gstatic.com/generate_204"' \ 136 '-DVIDEO_HOLE=1' \ 137 '-DENABLE_LOAD_COMPLETION_HACKS=1' \ 138 '-DMOJO_USE_SYSTEM_IMPL' \ 139 '-DSK_ENABLE_INST_COUNT=0' \ 140 '-DSK_SUPPORT_GPU=1' \ 141 '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ 142 '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ 143 '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ 144 '-DGR_GL_IGNORE_ES3_MSAA=0' \ 145 '-DSK_WILL_NEVER_DRAW_PERSPECTIVE_TEXT' \ 146 '-DSK_SUPPORT_LEGACY_TEXTRENDERMODE' \ 147 '-DSK_BUILD_FOR_ANDROID' \ 148 '-DSK_USE_POSIX_THREADS' \ 149 '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ 150 '-DSK_FM_NEW_MATCH_FAMILY_STYLE_CHARACTER=1' \ 151 '-DU_USING_ICU_NAMESPACE=0' \ 152 '-DU_ENABLE_DYLOAD=0' \ 153 '-DFEATURE_ENABLE_SSL' \ 154 '-DFEATURE_ENABLE_VOICEMAIL' \ 155 '-DEXPAT_RELATIVE_PATH' \ 156 '-DGTEST_RELATIVE_PATH' \ 157 '-DNO_MAIN_THREAD_WRAPPING' \ 158 '-DNO_SOUND_SYSTEM' \ 159 '-DANDROID' \ 160 '-DPOSIX' \ 161 '-DWEBRTC_POSIX' \ 162 '-DXML_STATIC' \ 163 '-DI18N_ADDRESSINPUT_USE_BASICTYPES_OVERRIDE=1' \ 164 '-DI18N_PHONENUMBERS_USE_ICU_REGEXP=1' \ 165 '-DPROTOBUF_USE_DLLS' \ 166 '-DGOOGLE_PROTOBUF_NO_RTTI' \ 167 '-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER' \ 168 '-DUSE_OPENSSL=1' \ 169 '-DUSE_OPENSSL_CERTS=1' \ 170 '-D__STDC_CONSTANT_MACROS' \ 171 '-D__STDC_FORMAT_MACROS' \ 172 '-D__GNU_SOURCE=1' \ 173 '-DUSE_STLPORT=1' \ 174 '-D_STLP_USE_PTR_SPECIALIZATIONS=1' \ 175 '-DCHROME_BUILD_ID=""' \ 176 '-DDYNAMIC_ANNOTATIONS_ENABLED=1' \ 177 '-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \ 178 '-D_DEBUG' 179 180 181 # Include paths placed before CFLAGS/CPPFLAGS 182 LOCAL_C_INCLUDES_Debug := \ 183 $(gyp_shared_intermediate_dir)/shim_headers/icuuc/target \ 184 $(gyp_shared_intermediate_dir)/shim_headers/icui18n/target \ 185 $(gyp_shared_intermediate_dir) \ 186 $(LOCAL_PATH) \ 187 $(LOCAL_PATH)/skia/config \ 188 $(LOCAL_PATH)/third_party/khronos \ 189 $(LOCAL_PATH)/gpu \ 190 $(LOCAL_PATH)/third_party/WebKit/Source \ 191 $(gyp_shared_intermediate_dir)/angle \ 192 $(LOCAL_PATH)/third_party/skia/src/core \ 193 $(LOCAL_PATH)/third_party/skia/include/core \ 194 $(LOCAL_PATH)/third_party/skia/include/effects \ 195 $(LOCAL_PATH)/third_party/skia/include/pdf \ 196 $(LOCAL_PATH)/third_party/skia/include/gpu \ 197 $(LOCAL_PATH)/third_party/skia/include/lazy \ 198 $(LOCAL_PATH)/third_party/skia/include/pathops \ 199 $(LOCAL_PATH)/third_party/skia/include/pipe \ 200 $(LOCAL_PATH)/third_party/skia/include/ports \ 201 $(LOCAL_PATH)/third_party/skia/include/utils \ 202 $(LOCAL_PATH)/skia/ext \ 203 $(LOCAL_PATH)/third_party/fips181 \ 204 $(PWD)/external/icu/icu4c/source/common \ 205 $(PWD)/external/icu/icu4c/source/i18n \ 206 $(LOCAL_PATH)/third_party/webrtc/overrides \ 207 $(LOCAL_PATH)/third_party/libjingle/overrides \ 208 $(LOCAL_PATH)/third_party/libjingle/source \ 209 $(LOCAL_PATH)/testing/gtest/include \ 210 $(LOCAL_PATH)/third_party \ 211 $(LOCAL_PATH)/third_party/expat/files/lib \ 212 $(LOCAL_PATH)/third_party/libaddressinput/chromium/override \ 213 $(LOCAL_PATH)/third_party/libaddressinput/src/cpp/include \ 214 $(gyp_shared_intermediate_dir)/third_party/libaddressinput \ 215 $(gyp_shared_intermediate_dir)/protoc_out/third_party/libphonenumber \ 216 $(LOCAL_PATH)/third_party/libphonenumber/src \ 217 $(gyp_shared_intermediate_dir)/protoc_out \ 218 $(LOCAL_PATH)/third_party/protobuf \ 219 $(LOCAL_PATH)/third_party/protobuf/src \ 220 $(gyp_shared_intermediate_dir)/components \ 221 $(gyp_shared_intermediate_dir)/components/strings \ 222 $(PWD)/frameworks/wilhelm/include \ 223 $(PWD)/bionic \ 224 $(PWD)/external/stlport/stlport 225 226 227 # Flags passed to only C++ (and not C) files. 228 LOCAL_CPPFLAGS_Debug := \ 229 -fno-exceptions \ 230 -fno-rtti \ 231 -fno-threadsafe-statics \ 232 -fvisibility-inlines-hidden \ 233 -Wsign-compare \ 234 -std=gnu++11 \ 235 -Wno-narrowing \ 236 -Wno-literal-suffix \ 237 -Wno-non-virtual-dtor \ 238 -Wno-sign-promo 239 240 241 # Flags passed to both C and C++ files. 242 MY_CFLAGS_Release := \ 243 --param=ssp-buffer-size=4 \ 244 -Werror \ 245 -fno-strict-aliasing \ 246 -Wall \ 247 -Wno-unused-parameter \ 248 -Wno-missing-field-initializers \ 249 -fvisibility=hidden \ 250 -pipe \ 251 -fPIC \ 252 -Wno-unused-local-typedefs \ 253 -msse2 \ 254 -mfpmath=sse \ 255 -mmmx \ 256 -m32 \ 257 -ffunction-sections \ 258 -funwind-tables \ 259 -g \ 260 -fno-short-enums \ 261 -finline-limit=64 \ 262 -Wa,--noexecstack \ 263 -U_FORTIFY_SOURCE \ 264 -Wno-extra \ 265 -Wno-ignored-qualifiers \ 266 -Wno-type-limits \ 267 -Wno-unused-but-set-variable \ 268 -fno-stack-protector \ 269 -Os \ 270 -fno-ident \ 271 -fdata-sections \ 272 -ffunction-sections \ 273 -fomit-frame-pointer \ 274 -funwind-tables 275 276 MY_DEFS_Release := \ 277 '-DV8_DEPRECATION_WARNINGS' \ 278 '-D_FILE_OFFSET_BITS=64' \ 279 '-DNO_TCMALLOC' \ 280 '-DDISABLE_NACL' \ 281 '-DCHROMIUM_BUILD' \ 282 '-DUSE_LIBJPEG_TURBO=1' \ 283 '-DENABLE_WEBRTC=1' \ 284 '-DUSE_PROPRIETARY_CODECS' \ 285 '-DENABLE_BROWSER_CDMS' \ 286 '-DENABLE_CONFIGURATION_POLICY' \ 287 '-DDISCARDABLE_MEMORY_ALWAYS_SUPPORTED_NATIVELY' \ 288 '-DSYSTEM_NATIVELY_SIGNALS_MEMORY_PRESSURE' \ 289 '-DENABLE_EGLIMAGE=1' \ 290 '-DCLD_VERSION=1' \ 291 '-DENABLE_PRINTING=1' \ 292 '-DENABLE_MANAGED_USERS=1' \ 293 '-DDATA_REDUCTION_FALLBACK_HOST="http://compress.googlezip.net:80/"' \ 294 '-DDATA_REDUCTION_DEV_HOST="https://proxy-dev.googlezip.net:443/"' \ 295 '-DDATA_REDUCTION_DEV_FALLBACK_HOST="http://proxy-dev.googlezip.net:80/"' \ 296 '-DSPDY_PROXY_AUTH_ORIGIN="https://proxy.googlezip.net:443/"' \ 297 '-DDATA_REDUCTION_PROXY_PROBE_URL="http://check.googlezip.net/connect"' \ 298 '-DDATA_REDUCTION_PROXY_WARMUP_URL="http://www.gstatic.com/generate_204"' \ 299 '-DVIDEO_HOLE=1' \ 300 '-DENABLE_LOAD_COMPLETION_HACKS=1' \ 301 '-DMOJO_USE_SYSTEM_IMPL' \ 302 '-DSK_ENABLE_INST_COUNT=0' \ 303 '-DSK_SUPPORT_GPU=1' \ 304 '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' \ 305 '-DSK_ENABLE_LEGACY_API_ALIASING=1' \ 306 '-DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1' \ 307 '-DGR_GL_IGNORE_ES3_MSAA=0' \ 308 '-DSK_WILL_NEVER_DRAW_PERSPECTIVE_TEXT' \ 309 '-DSK_SUPPORT_LEGACY_TEXTRENDERMODE' \ 310 '-DSK_BUILD_FOR_ANDROID' \ 311 '-DSK_USE_POSIX_THREADS' \ 312 '-DSK_DEFERRED_CANVAS_USES_FACTORIES=1' \ 313 '-DSK_FM_NEW_MATCH_FAMILY_STYLE_CHARACTER=1' \ 314 '-DU_USING_ICU_NAMESPACE=0' \ 315 '-DU_ENABLE_DYLOAD=0' \ 316 '-DFEATURE_ENABLE_SSL' \ 317 '-DFEATURE_ENABLE_VOICEMAIL' \ 318 '-DEXPAT_RELATIVE_PATH' \ 319 '-DGTEST_RELATIVE_PATH' \ 320 '-DNO_MAIN_THREAD_WRAPPING' \ 321 '-DNO_SOUND_SYSTEM' \ 322 '-DANDROID' \ 323 '-DPOSIX' \ 324 '-DWEBRTC_POSIX' \ 325 '-DXML_STATIC' \ 326 '-DI18N_ADDRESSINPUT_USE_BASICTYPES_OVERRIDE=1' \ 327 '-DI18N_PHONENUMBERS_USE_ICU_REGEXP=1' \ 328 '-DPROTOBUF_USE_DLLS' \ 329 '-DGOOGLE_PROTOBUF_NO_RTTI' \ 330 '-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER' \ 331 '-DUSE_OPENSSL=1' \ 332 '-DUSE_OPENSSL_CERTS=1' \ 333 '-D__STDC_CONSTANT_MACROS' \ 334 '-D__STDC_FORMAT_MACROS' \ 335 '-D__GNU_SOURCE=1' \ 336 '-DUSE_STLPORT=1' \ 337 '-D_STLP_USE_PTR_SPECIALIZATIONS=1' \ 338 '-DCHROME_BUILD_ID=""' \ 339 '-DNDEBUG' \ 340 '-DNVALGRIND' \ 341 '-DDYNAMIC_ANNOTATIONS_ENABLED=0' \ 342 '-D_FORTIFY_SOURCE=2' 343 344 345 # Include paths placed before CFLAGS/CPPFLAGS 346 LOCAL_C_INCLUDES_Release := \ 347 $(gyp_shared_intermediate_dir)/shim_headers/icuuc/target \ 348 $(gyp_shared_intermediate_dir)/shim_headers/icui18n/target \ 349 $(gyp_shared_intermediate_dir) \ 350 $(LOCAL_PATH) \ 351 $(LOCAL_PATH)/skia/config \ 352 $(LOCAL_PATH)/third_party/khronos \ 353 $(LOCAL_PATH)/gpu \ 354 $(LOCAL_PATH)/third_party/WebKit/Source \ 355 $(gyp_shared_intermediate_dir)/angle \ 356 $(LOCAL_PATH)/third_party/skia/src/core \ 357 $(LOCAL_PATH)/third_party/skia/include/core \ 358 $(LOCAL_PATH)/third_party/skia/include/effects \ 359 $(LOCAL_PATH)/third_party/skia/include/pdf \ 360 $(LOCAL_PATH)/third_party/skia/include/gpu \ 361 $(LOCAL_PATH)/third_party/skia/include/lazy \ 362 $(LOCAL_PATH)/third_party/skia/include/pathops \ 363 $(LOCAL_PATH)/third_party/skia/include/pipe \ 364 $(LOCAL_PATH)/third_party/skia/include/ports \ 365 $(LOCAL_PATH)/third_party/skia/include/utils \ 366 $(LOCAL_PATH)/skia/ext \ 367 $(LOCAL_PATH)/third_party/fips181 \ 368 $(PWD)/external/icu/icu4c/source/common \ 369 $(PWD)/external/icu/icu4c/source/i18n \ 370 $(LOCAL_PATH)/third_party/webrtc/overrides \ 371 $(LOCAL_PATH)/third_party/libjingle/overrides \ 372 $(LOCAL_PATH)/third_party/libjingle/source \ 373 $(LOCAL_PATH)/testing/gtest/include \ 374 $(LOCAL_PATH)/third_party \ 375 $(LOCAL_PATH)/third_party/expat/files/lib \ 376 $(LOCAL_PATH)/third_party/libaddressinput/chromium/override \ 377 $(LOCAL_PATH)/third_party/libaddressinput/src/cpp/include \ 378 $(gyp_shared_intermediate_dir)/third_party/libaddressinput \ 379 $(gyp_shared_intermediate_dir)/protoc_out/third_party/libphonenumber \ 380 $(LOCAL_PATH)/third_party/libphonenumber/src \ 381 $(gyp_shared_intermediate_dir)/protoc_out \ 382 $(LOCAL_PATH)/third_party/protobuf \ 383 $(LOCAL_PATH)/third_party/protobuf/src \ 384 $(gyp_shared_intermediate_dir)/components \ 385 $(gyp_shared_intermediate_dir)/components/strings \ 386 $(PWD)/frameworks/wilhelm/include \ 387 $(PWD)/bionic \ 388 $(PWD)/external/stlport/stlport 389 390 391 # Flags passed to only C++ (and not C) files. 392 LOCAL_CPPFLAGS_Release := \ 393 -fno-exceptions \ 394 -fno-rtti \ 395 -fno-threadsafe-statics \ 396 -fvisibility-inlines-hidden \ 397 -Wsign-compare \ 398 -std=gnu++11 \ 399 -Wno-narrowing \ 400 -Wno-literal-suffix \ 401 -Wno-non-virtual-dtor \ 402 -Wno-sign-promo 403 404 405 LOCAL_CFLAGS := $(MY_CFLAGS_$(GYP_CONFIGURATION)) $(MY_DEFS_$(GYP_CONFIGURATION)) 406 LOCAL_C_INCLUDES := $(GYP_COPIED_SOURCE_ORIGIN_DIRS) $(LOCAL_C_INCLUDES_$(GYP_CONFIGURATION)) 407 LOCAL_CPPFLAGS := $(LOCAL_CPPFLAGS_$(GYP_CONFIGURATION)) 408 LOCAL_ASFLAGS := $(LOCAL_CFLAGS) 409 ### Rules for final target. 410 411 LOCAL_SHARED_LIBRARIES := \ 412 libstlport \ 413 libdl 414 415 # Add target alias to "gyp_all_modules" target. 416 .PHONY: gyp_all_modules 417 gyp_all_modules: components_autofill_core_browser_gyp 418 419 # Alias gyp target name. 420 .PHONY: autofill_core_browser 421 autofill_core_browser: components_autofill_core_browser_gyp 422 423 include $(BUILD_STATIC_LIBRARY) 424