34bef2438e
Convert gOddTable, gLamTable, and combTable from `by lazy` to eager initialization. These tables are accessed on every verify (mulDoubleG) and sign (mulG) call. On K/Native, each `by lazy` access goes through SynchronizedLazyImpl.getValue() — a thread-safe lock check + memory barrier. The native disassembly showed 2 SynchronizedLazyImpl calls per mulDoubleG invocation. On JVM, Kotlin's lazy delegates use double-checked locking via SynchronizedLazyImpl, adding interface dispatch + volatile read on every access. Move the `scratch` (ScratchLocal) field declaration before the table fields to satisfy initialization order — buildGOddTable() and buildCombTable() use doublePoint/addPoints which call scratch.get(). https://claude.ai/code/session_015CtM5k88rF7WFgX8o2AGNR