traits = [
{ch: '32.7', m: /^v([ls]\w)$/, desc: 'Vector Loads and Stores'},
{ch: '32.7.4', m: /^v[ls](e(8|16|32|64)|m).v$/, desc: 'Vector Unit-Stride Instructions'},
{ch: '32.7.5', m: /^v[ls]se(8|16|32|64).v$/, desc: 'Vector Strided Instructions'},
{ch: '32.7.6', m: /^v[ls][uo]xei(8|16|32|64).v$/, desc: 'Vector Indexed Instructions'},
{ch: '32.10.1', m: /^v(add).v[vixf]$/, desc: 'Vector Arithmetic Instruction encoding'},
{ch: '32.10.2', m: /^vw\w+.v\w$/, desc: 'Widening Vector Arithmetic Instructions'},
{ch: '32.10.3', m: /^vn\w+.\w+$/, desc: 'Narrowing Vector Arithmetic Instructions'},
{ch: '32.12', m: /^v[as](add|sub|mul)u?.v[vix]$/, desc: 'Vector Fixed-Point Arithmetic Instructions'},
{ch: '32.12.1', m: /^vs(add|sub)u?.v[vix]$/, desc: 'Vector Single-Width Saturating Add and Subtract'},
{ch: '32.12.2', m: /^va(add|sub)u?.v[vix]$/, desc: 'Vector Single-Width Averaging Add and Subtract'},
{ch: '32.12.3', m: /^vsmul.v[vx]$/, desc: 'Vector Single-Width Fractional Multiply with Rounding and Saturation'},
{ch: '32.12.4', m: /^vssr[la].v[vix]$/, desc: 'Vector Single-Width Scaling Shift Instructions'},
{ch: '32.12.5', m: /^vnclip(u?).w[vix]$/, desc: 'Vector Narrowing Fixed-Point Clip Instructions'},
{ch: '32.13', m: /^vf\w+.(v[vf]|w[vf])$/, desc: 'Vector Floating-Point Instructions'},
{ch: '32.13.2', m: /^vf(add|sub|rsub).v[vf]$/, desc: 'Vector Single-Width Floating-Point Add/Subtract Instructions'},
{ch: '32.13.3', m: /^vfw(add|sub).(v[vf]|w[vf])$/, desc: 'Vector Widening Floating-Point Add/Subtract Instructions'},
{ch: '32.13.4', m: /^vf(mul|div|rdiv).v[vf]$/, desc: 'Vector Single-Width Floating-Point Multiply/Divide Instructions'},
{ch: '32.13.5', m: /^vfwmul.v/, desc: 'Vector Widening Floating-Point Multiply'},
]