Примечания к релизу Axiom JDK 11.0.9+12

Данный релиз соответствует OpenJDK 11.0.9+12, номер версии Axiom JDK - 11.0.9.

Axiom JDK 11.0.9+12

Axiom является сертифицированным Java SE 11-совместимым дистрибутивом OpenJDK 11, который работает на серверах (Linux x86_64, Linux ARM64, Solaris SPARC, Solaris x64, Windows 64), настольных компьютерах (Windows 64, Windows 32, Mac, Linux x86_64) и встроенных устройствах (Linux ARM64, Linux ARMv7, включая Raspberry Pi 2 & 3 (ARMv6 hardfloat)). Axiom JDK имеет следующие дополнения:

  • Версия для Linux x86_64 содержит экспериментальную поддержку ZGC.
  • В версии для Linux x86_64, ARMv8 и ARMv7 можно выбрать клиентскую виртуальную машину (Client VM), серверную виртуальную машину (Server VM) и минимальную виртуальную машину (Minimal VM).
  • Версия для Alpine Linux x86_64 построена с поддержкой musl.
  • Версии для Windows x86_64, Windows x86, Mac, Linux x86_64, Linux x86 и Linux ARMv7 содержат OpenJFX 11.
  • Версия для Linux ARMv7 содержит Device IO API, скомпилированный для Raspberry Pi.

Пожалуйста, прочитайте примечания к релизу Oracle JDK 11.0.9 для получения дополнительной информации о функционале JDK 11. В этом документе описываются особенности дистрибутива Axiom по сравнению с дистрибутивом Oracle JDK 11.

Поддерживаемые серверные и десктопные конфигурации

Axiom поддерживается в следующих ОС:

  • Ubuntu Linux 16.04, 18.04 (x86, x86_64, ARMv8)
  • Debian Linux 8, 9 (x86, x86_64, ARMv8)
  • Red Hat, Oracle Linux, CentOS 6.x, 7.x (x86, x86_64, ARMv8)
  • Alpine Linux 3.7+
  • SUSE Linux Enterprise 12, 15, tumbleweed (x86_64, ARMv8)
  • Apple macOS 10.11+
  • Solaris 11.1+ (SPARC, x64)
  • Microsoft Windows 2019, Windows 2016, Windows 2012 R2, Windows 10, Windows 8, Windows 7 (32 bit, 64 bit)

Также известно, Axiom JDK работает с некоторыми другими дистрибутивами Linux и версиями Windows.

Примечание: Минимальная поддерживаемая версия ядра Linux - 2.6.18, версия GLIBC - 2.6. AxiomFX работает на всех поддерживаемых версиях Ubuntu, семействе Red Hat Linux начиная с версии 7.x и SUSE с бэкэндом GTK2.

Поддерживаемые конфигурации для встраиваемых применений

Axiom протестирована и сертифицирована для Raspberry Pi 2 & 3 для следующих операционных систем:

  * Raspbian OS (armhf)   * OpenSUSE (armv8)

Также Axiom JDK работает на Debian (armhf) и Ubuntu (armhf).

Поставка Axiom JDK 11

Axiom JDK 11.0.9 распространяется в виде .msi, .dmg, .deb, .rpm, .zip и .tar.gz. Пожалуйста, выберите формат, который наиболее подходит для ваших целей.

Axiom 11 содержит весь функционал, поддерживаемый OpenJDK 11.

С появлением Jigsaw в JDK 9 и минимальной виртуальной машины (Minimal VM) теперь можно создать среду исполнения, достаточную для запуска приложения и в то же время оптимизированную по размеру. Чтобы создать среду выполнения только с минимальной виртуальной машиной, добавьте опцию - vm=minimal jlink.

По умолчанию Axiom использует серверную виртуальную машину (Server VM). Серверная виртуальная машина и клиентская виртуальная машина могут быть включены с помощью параметров командной строки -server и -client соответственно. В случае, если требуется минимальный размер среды исполенения, можно использовать Minimal VM, которая оптимизирована по размеру. Minimal VM имеет только компилятор C1 JIT, Serial GC и не имеет функционала Serviceability. Minimal VM можно включить параметром командной строки -minimal.

AxiomFX

Axiom JDK 11 поставляется в комплекте со сборкой платформы AxiomFX, основанной на OpenJFX. В следующих таблицах перечислены состояния модулей Java FX дистрибутива Axiom.

  • Java FX Graphics - поддерживается.
  • Java FX Controls - поддерживается.
  • Java FX Media - поддерживается*.
  • Java FX Webkit - поддерживается*.

* - за исключением сборок для armhf.

Для armhf работают следующие графические конвейеры: EGL, SW (direct framebuffer) и GTK. По умолчанию Axiom пытается использовать конвейер EGL, который требует наличия библиотек EGL. Если они не найдены, реализация возвращается к программному обеспечению.

Используйте следующие параметры командной строки, чтобы указать конвейер рендеринга:

  • -Dprism.order=sw - программный конвейер рендеринга.
  • -Dprism.order=es2 - EGL-конвейер и аппаратное ускорение.
  • -Djavafx.platform=gtk, если вы хотите запустить приложение AxiomFX, используя Axiom из X11.

Дополнительная информация доступна на следующей wiki странице.

Device IO API для Raspberry Pi

Axiom JDK 11 для armhf поставляется со встроенным модулем реализации API ввода-вывода (DIO) устройства OpenJDK. DIO предоставляет Java API для доступа к выводам Raspberry PI GPIO и для связи с периферийными устройствами:

  • Универсальный ввод / вывод (GPIO).
  • Межинтегральная шина (I2C), последовательный интерфейс (SPI).
  • Универсальный асинхронный приемник / передатчик (UART).

Дополнительная информация доступна на следующей wiki странице.

Известные особенности

AxiomFX и EGL на ОС Raspbian

С 2017 года в Raspbian OS изменилось расположение бибилитек libEGL.so и libGLESv2.so для чипа Broadcom. Если вы хотите использовать аппаратное ускорение EGL, доступное в видеодрайверах Broadcom в AxiomFX, при работе в Raspbian OS, выполните следующую команду:

cd /opt/vc/lib
sudo ln -s libbrcmEGL.so libEGL.so
sudo ln -s libbrcmGLESv2.so libGLESv2.so

Безопасность

BellSoft Axiom содержит исправления уязвимостей Oracle Java SE. Пожалуйста, обратитесь к документации Oracle для получения деталей о проблемах, исправленных в данной версии.

Дефекты, исправленные в этом релизе

Issue Description
6532025 GIF reader throws misleading exception with truncated images
6949753 [TEST BUG]: java/awt/print/PageFormat/PDialogTest.java needs update by removing a infinite loop
8022535 [TEST BUG] javax/swing/text/html/parser/Test8017492.java fails
8062947 Fix exception message to correctly represent LDAP connection failure
8067354 com/sun/jdi/GetLocalVariables4Test.sh failed
8134599 TEST_BUG: java/rmi/transport/closeServerSocket/CloseServerSocket.java fails intermittently with Address already in use
8151678 com/sun/jndi/ldap/LdapTimeoutTest.java failed due to timeout on DeadServerNoTimeoutTest is incorrect
8160768 Add capability to custom resolve host/domain names within the default JNDI LDAP provider
8172404 Tools should warn if weak algorithms are used before restricting them
8191758 Match WebKit’s font weight rendering with JavaFX
8193367 Annotated type variable bounds crash javac
8193800 TreeTableView selection changes on sorting
8202117 com/sun/jndi/ldap/RemoveNamingListenerTest.java fails intermittently: Connection reset
8203026 java.rmi.NoSuchObjectException: no such object in table
8203281 [Windows] JComboBox change in ui when editor.setBorder() is called
8203382 Rename SystemDictionary::initialize_wk_klass to resolve_wk_klass
8203393 com/sun/jdi/JdbMethodExitTest.sh and JdbExprTest.sh fail due to timeout
8203928 [Test] Convert non-JDB scaffolding serviceability shell script tests to java
8204963 javax.swing.border.TitledBorder has a memory leak
8204994 SA might fail to attach to process with “Windbg Error: WaitForEvent failed”
8205534 Remove SymbolTable dependency from serviceability agent
8206309 Tier1 SA tests fail
8208169 can not print selected pages of web page
8208281 java/nio/channels/AsynchronousSocketChannel/Basic.java timed out
8209109 [TEST] rewrite com/sun/jdi shell tests to java version - step1
8209332 [TEST] test/jdk/com/sun/jdi/CatchPatternTest.sh is incorrect
8209342 Problemlist SA tests on Solaris due to Error attaching to process: Can’t create thread_db agent!
8209343 Test javax/swing/border/TestTitledBorderLeak.java should be marked as headful
8209517 com/sun/jdi/BreakpointWithFullGC.java fails with timeout
8209604 [TEST] rewrite com/sun/jdi shell tests to java version - step2
8209605 com/sun/jdi/BreakpointWithFullGC.java fails with ZGC
8209608 Problem list com/sun/jdi/BreakpointWithFullGC.java
8210131 vmTestbase/nsk/jvmti/scenarios/allocation/AP10/ap10t001/TestDescription.java failed with ObjectFree: GetCurrentThreadCpuTimerInfo returned unexpected error code
8210243 [TEST] rewrite com/sun/jdi shell tests to java version - step3
8210527 JShell: NullPointerException in jdk.jshell.Eval.translateExceptionStack
8210560 [TEST] convert com/sun/jdi redefineClass-related tests
8210725 com/sun/jdi/RedefineClearBreakpoint.java fails with waitForPrompt timed out after 60 seconds
8210760 [TEST] rewrite com/sun/jdi shell tests to java version - step4
8210977 jdk/jfr/event/oldobject/TestThreadLocalLeak.java fails to find ThreadLocalObject
8211292 [TEST] convert com/sun/jdi/DeferredStepTest.sh test
8211694 JShell: Redeclared variable should be reset
8212200 assert when shared java.lang.Object is redefined by JVMTI agent
8212629 [TEST] wrong breakpoint in test/jdk/com/sun/jdi/DeferredStepTest
8212665 com/sun/jdi/DeferredStepTest.java: jj1 (line 57) - unexpected. lastLine=52, minLine=52, maxLine=55
8212807 tools/jar/multiRelease/Basic.java times out
8213182 Minimal VM build failure after JDK-8212200 (assert when shared java.lang.Object is redefined by JVMTI agent)
8213214 Set -Djava.io.tmpdir= when running tests
8213275 ReplaceCriticalClasses.java fails with jdk.internal.vm.PostVMInitHook not found
8213574 Deadlock in string table expansion when dumping lots of CDS classes
8213703 LambdaConversionException: Invalid receiver type not a subtype of implementation type interface
8214074 Ghash optimization using AVX instructions
8214491 Upgrade to JLine 3.9.0
8214797 TestJmapCoreMetaspace.java timed out
8215243 JShell tests failing intermitently with “Problem cleaning up the following threads:”
8215244 jdk/jshell/ToolBasicTest.java testHistoryReference failed
8215354 x86_32 build failures after JDK-8214074 (Ghash optimization using AVX instructions)
8215438 jshell tool: Ctrl-D causes EOF
8216021 RunTest.gmk might set concurrency level to 1 on Windows
8216974 HttpConnection not returned to the pool after 204 response
8218948 SimpleDateFormat :: format - Zone Names are not reflected correctly during run time
8219712 code_size2 (defined in stub_routines_x86.hpp) is too small on new Skylake CPUs
8220150 macos10.14 Mojave returns anti-aliased glyphs instead of aliased B&W glyphs
8221658 aarch64: add necessary predicate for ubfx patterns
8221759 Crash when completing “java.io.File.path”
8221918 runtime/SharedArchiveFile/serviceability/ReplaceCriticalClasses.java fails: Shared archive not found
8222074 Enhance auto vectorization for x86
8222079 Don’t use memset to initialize fields decode_env constructor in disassembler.cpp
8222769 [TESTBUG] TestJFRNetworkEvents should not rely on hostname command
8223688 JShell: crash on the instantiation of raw anonymous class
8223777 In posix_spawn mode, failing to exec() jspawnhelper does not result in an error
8223940 Private key not supported by chosen signature algorithm
8224184 jshell got IOException at exiting with AIX
8224234 compiler/codegen/TestCharVect2.java fails in test_mulc
8225037 java.net.JarURLConnection::getJarEntry() throws NullPointerException
8225625 AES Electronic Codebook (ECB) encryption and decryption optimization using AVX512 + VAES instructions
8226536 Catch OOM from deopt that fails rematerializing objects
8226575 OperatingSystemMXBean should be made container aware
8226697 Several tests which need the @key headful keyword are missing it.
8226809 Circular reference in printed stack trace is not correctly indented & ambiguous
8227059 sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
8227269 Slow class loading when running with JDWP
8227595 keytool/fakegen/DefaultSignatureAlgorithm.java fails due to “exitValue = 6”
8228448 Jconsole can’t connect to itself
8228967 Trust/Key store and SSL context utilities for tests
8229378 jdwp library loader in linker_md.c quietly truncates on buffer overflow
8229815 Upgrade Jline to 3.12.1
8230000 some httpclients testng tests run zero test
8230010 Remove jdk8037819/BasicTest1.java
8230094 CCE in createXMLEventWriter(Result) over an arbitrary XMLStreamWriter
8230402 Allocation of compile task fails with assert: “Leaking compilation tasks?”
8230767 FlightRecorderListener returns null recording
8230870 (zipfs) Add a ZIP FS test that is similar to test/jdk/java/util/zip/EntryCount64k.java
8231209 [REDO] ThreadMXBean::getThreadAllocatedBytes() can be quicker for self thread
8231586 enlarge encoding space for OopMapValue offsets
8231953 Wrong assumption in assertion in oop::register_oop
8231968 getCurrentThreadAllocatedBytes default implementation s/b getThreadAllocatedBytes
8232083 Minimal VM is broken after JDK-8231586
8232161 Align some one-way conversion in MS950 charset with Windows
8233027 OopMapSet::all_do does oms.next() twice during iteration
8233228 Disable weak named curves by default in TLS, CertPath, and Signed JAR
8233386 Initialize NULL fields for unused decorations
8233452 java.math.BigDecimal.sqrt() with RoundingMode.FLOOR results in incorrect result
8233686 XML transformer uses excessive amount of memory
8233741 AES Countermode (AES-CTR) optimization using AVX512 + VAES instructions
8233829 javac cannot find non-ASCII module name under non-UTF8 environment
8233958 Memory retention due to HttpsURLConnection finalizer that serves no purpose
8234011 (zipfs) Memory leak in ZipFileSystem.releaseDeflater()
8234058 runtime/CompressedOops/CompressedClassPointers.java fails with ‘Narrow klass base: 0x0000000000000000’ missing from stdout/stderr
8234149 Several regression tests do not dispose Frame at end
8234347 “Turkey” meta time zone does not generate composed localized names
8234385 [TESTBUG] java/awt/EventQueue/6980209/bug6980209.java fails in linux nightly
8234535 Cross compilation fails due to missing CFLAGS for the BUILD_CC
8234541 C1 emits an empty message when it inlines successfully
8234687 change javap reporting on unknown attributes
8235846 Improve WindbgDebuggerLocal implementation
8236464 SO_LINGER option is ignored by SSLSocket in JDK 11
8236617 jtreg test containers/docker/TestMemoryAwareness.java fails after 8226575
8237182 Update copyright header for shenandoah and epsilon files
8237504 Update copyright header for files modified in 2020
8237888 security/infra/java/security/cert/CertPathValidator/certification/LuxTrustCA.java fails when checking validity interval
8237977 Further update javax/net/ssl/compatibility/Compatibility.java
8238270 java.net HTTP/2 client does not decrease stream count when receives 204 response
8238284 [macos] Zero VM build fails due to an obvious typo
8238380 java.base/unix/native/libjava/childproc.c “multiple definition” link errors with GCC10
8238386 (sctp) jdk.sctp/unix/native/libsctp/SctpNet.c “multiple definition” link errors with GCC10
8238388 libj2gss/NativeFunc.o “multiple definition” link errors with GCC10
8238448 RSASSA-PSS signature verification fail when using certain odd key sizes
8238710 LingeredApp doesn’t log stdout/stderr if exits with non-zero code
8239083 C1 assert(known_holder == NULL || (known_holder->is_instance_klass() && (!known_holder->is_interface() || ((ciInstanceKlass*)known_holder)->has_nonstatic_concrete_methods())), “should be non-static concrete method”);
8239095 Upgrade libFFI to the latest 3.3 version
8239385 KerberosTicket client name refers wrongly to sAMAccountName in AD
8240169 javadoc fails to link to non-modular api docs
8240295 hs_err elapsed time in seconds is not accurate enough
8240360 NativeLibraryEvent has wrong library name on Linux
8240676 Meet not symmetric failure when running lucene on jdk8
8241007 Shenandoah: remove ShenandoahCriticalControlThreadPriority support
8241065 Shenandoah: remove leftover code after JDK-8231086
8241086 Test runtime/NMT/HugeArenaTracking.java is failing on 32bit Windows
8241130 com.sun.jndi.ldap.EventSupport.removeDeadNotifier: java.lang.NullPointerException
8241138 http.nonProxyHosts=* causes StringIndexOutOfBoundsException in DefaultProxySelector
8241319 WB_GetCodeBlob doesn’t have ResourceMark
8241478 vmTestbase/gc/gctests/Steal/steal001/steal001.java fails with OOME
8241574 Shenandoah: remove ShenandoahAssertToSpaceClosure
8241750 x86_32 build failure after JDK-8227269
8242184 CRL generation error with RSASSA-PSS
8242283 Can’t start JVM when java home path includes non-ASCII character
8242508 Upgrade to Visual Studio 2019 version 16.5.3
8242556 Cannot load RSASSA-PSS public key with non-null params from byte array
8243029 Rewrite javax/net/ssl/compatibility/Compatibility.java with a flexible interop test framework
8243138 Enhance BaseLdapServer to support starttls extended request
8243320 Add SSL root certificates to Oracle Root CA program
8243321 Add Entrust root CA - G4 to Oracle Root CA program
8243389 enhance os::pd_print_cpu_info on linux
8243453 java –describe-module failed with non-ASCII module name under non-UTF8 environment
8243470 [macos] bring back O2 opt level for unsafe.cpp
8243489 Thread CPU Load event may contain wrong data for CPU time under certain conditions
8243925 Toolkit#getScreenInsets() returns wrong value on HiDPI screens (Windows)
8244087 2020-04-24 public suffix list update
8244151 Update MUSCLE PC/SC-Lite headers to the latest release 1.8.26
8244164 AArch64: jaotc generates incorrect code for compressed OOPs with non-zero heap base
8244196 adjust output in os_linux
8244225 stringop-overflow warning on strncpy call from compile_the_world_in
8244287 JFR: Methods samples have line number 0
8244487 One Windows 10 SDK file missing from FX build
8244703 “platform encoding not initialized” exceptions with debugger, JNI
8244719 CTW: C2 compilation fails with “assert(!VerifyHashTableKeys || _hash_lock == 0) failed: remove node from hash table before modifying it”
8244729 Shenandoah: remove resolve paths from SBSA::generate_shenandoah_lrb
8244763 Update –release 8 symbol information after JSR 337 MR3
8244818 Java2D Queue Flusher crash while moving application window to external monitor
8245151 jarsigner should not raise duplicate warnings on verification
8245284 Update to 610.1 version of WebKit
8245616 Bump update version for OpenJDK: jdk-11.0.9
8245714 “Bad graph detected in build_loop_late” when loads are pinned on loop limit check uncommon branch
8245801 StressRecompilation triggers assert “redundunt OSR recompilation detected. memory leak in CodeCache!”
8245832 JDK build make-static-libs should build all JDK libraries
8245880 Shenandoah: check class unloading flag early in concurrent code root scan
8245981 Upgrade to jQuery 3.5.1
8246027 Minimal fastdebug build broken after JDK-8245801
8246094 [macos] Sound Recording and playback is not working
8246099 Intermittent test failures in SandboxAppTest
8246153 TestEliminateArrayCopy fails with -XX:+StressReflectiveCode
8246193 Possible NPE in ENC-PA-REP search in AS-REQ
8246196 javax/management/MBeanServer/OldMBeanServerTest fails with AssertionError
8246203 Segmentation fault in verification due to stack overflow with -XX:+VerifyIterativeGVN
8246204 No 3D support for newer Intel graphics drivers on Linux
8246330 Add TLS Tests for Legacy ECDSA curves
8246348 Crash in libpango on Ubuntu 20.04 with some unicode chars
8246357 Allow static build of webkit library on linux
8246453 TestClone crashes with “all collected exceptions must come from the same place”
8247246 Add explicit ResolvedJavaType.link and expose presence of default methods
8247350 [aarch64] assert(false) failed: wrong size of mach node
8247360 Add missing license file for Microsoft DirectShow Samples
8247502 PhaseStringOpts crashes while optimising effectively dead code
8247615 Initialize the bytes left for the heap sampler
8247824 CTW: C2 (Shenandoah) compilation fails with SEGV in SBC2Support::pin_and_expand
8247874 Replacement in VersionProps.java.template not working when –with-vendor-bug-url contains ‘&’
8247947 Build DirectShow Samples (Base Classes) from source checked into repo
8247963 Update SQLite to version 3.32.3
8247979 aarch64: missing side effect of killing flags for clearArray_reg_reg
8248177 Improve XML support
8248214 Add paddings for TaskQueueSuper to reduce false-sharing cache contention
8248219 aarch64: missing memory barrier in fast_storefield and fast_accessfield
8248348 Regression caused by the update to BCEL 6.0
8248365 Debug build crashes on Windows when playing media file
8248385 [testbug][11u] Adapt TestInitiExceptions to jtreg 5.1
8248490 [macOS] Undecorated stage does not minimize
8248495 [macos] zerovm is broken due to libffi headers location
8248851 CMS: Missing memory fences between free chunk check and klass read
8248987 AOT’s Linker.java seems to eagerly fail-fast on Windows
8249159 Downport test rework for SSLSocketTemplate from 8224650
8249215 JFrame::setVisible crashed with -Dfile.encoding=UTF-8 on Japanese Windows.
8249251 [dark_mode ubuntu 20.04] The selected menu is not highlighted in GTKLookAndFeel
8249255 Build fails if source code in cygwin home dir
8249277 TestVerifyIterativeGVN.java is failing with timeout in OpenJDK 11
8249278 Revert JDK-8226253 which breaks the spec of AccessibleState.SHOWING for JList
8249560 Shenandoah: Fix racy GC request handling
8249801 Shenandoah: Clear soft-refs on requested GC cycle
8249839 Cherry pick GTK WebKit 2.28.3 changes
8249953 Shenandoah: gc/shenandoah/mxbeans tests should account for corner cases
8250582 Revert Principal Name type to NT-UNKNOWN when requesting TGS Kerberos tickets
8250609 C2 crash in IfNode::fold_compares
8250627 Use -XX:+/-UseContainerSupport for enabling/disabling Java container metrics
8250755 Better cleanup for jdk/test/javax/imageio/plugins/shared/CanWriteSequence.java
8250784 Shenandoah: A Low-Pause-Time Garbage Collector
8250787 Provider.put no longer registering aliases in FIPS env
8250826 jhsdb does not work with coredump which comes from Substrate VM
8250827 Shenandoah: needs to reset/finish StringTable’s dead count before/after parallel walk
8250844 Make sure {type,obj}ArrayOopDesc accessors check the bounds
8251117 Cannot check P11Key size in P11Cipher and P11AEADCipher
8251354 Shenandoah: Fix jdk/jfr/tool/TestPrintJSON.java test failure
8251451 Shenandoah: Remark ObjectSynchronizer roots with I-U
8251469 Better cleanup for test/jdk/javax/imageio/SetOutput.java
8251487 Shenandoah: missing detail timing tracking for final mark cleaning phase
8252107 Media pipeline initialization can crash if audio or video bin state change fails
8252120 compiler/oracle/TestCompileCommand.java misspells “occured”
8252157 JDK-8231209 11u backport breaks jmm binary compatibility
8252258 [11u] JDK-8242154 changes the default vendor
8252381 Cherry pick GTK WebKit 2.28.4 changes
8252804 [test] Fix ‘ReleaseDeflater.java’ test after downport of 8234011
8253134 JMM_VERSION should remain at 0x20020000 (JDK 10) in JDK 11
8253283 [11u] Test build/translations/VerifyTranslations.java failing after JDK-8252258
8253813 Backout JDK-8244287 from 11u: it causes several crashes
Обратно на страницу загрузки
Команда Axiom JDK roman.karpov@axiomjdk.ru Команда Axiom JDK logo Axiom Committed to Freedom 199 Obvodnogo Kanala Emb. 190020 St. Petersburg RU +7 812-336-35-67 Команда Axiom JDK 199 Obvodnogo Kanala Emb. 190020 St. Petersburg RU +7 812-336-35-67