[dv/doc] Add sec_cm_dv_framework

Signed-off-by: Weicai Yang <weicai@google.com>
diff --git a/doc/ug/dv_methodology/index.md b/doc/ug/dv_methodology/index.md
index 55c654e..e4df3a2 100644
--- a/doc/ug/dv_methodology/index.md
+++ b/doc/ug/dv_methodology/index.md
@@ -548,6 +548,24 @@
 
 This section is TBD.
 
+## Security Verification
+
+Security verification is one of the critical challenges in OpenTitan.
+Each design IP contains certain security countermeasures.
+There are several common countermeasures that are widely used in the blocks.
+Therefore, a common verification framework is built up in the DV base libraries.
+The following common countermeasures can be either automatically or semi-automatically verified by this framework.
+
+1. Countermeasures using common primitives can be verified by the [Security Countermeasure Verification Framework]({{< relref "sec_cm_dv_framework" >}}).
+2. The following common countermeasures can be verified by cip_lib.
+The steps to enabling them is described in cip_lib [document]({{< relref "hw/dv/sv/cip_lib/doc#security-verification-in-cip_lib" >}}).
+  - Bus integrity
+  - Shadowed CSRs
+  - REGWEN CSRs
+  - MUBI type CSRs/ports
+
+For custom countermeasures, they have to be handled in a case-by-case manner.
+
 ## Reviews
 
 One of the best ways to convince ourselves that we have done our job right is by seeking from, as well as providing feedback to, our contributors.
diff --git a/doc/ug/sec_cm_dv_framework/diagram_of_block_that_contains_sec_cm_primitive.svg b/doc/ug/sec_cm_dv_framework/diagram_of_block_that_contains_sec_cm_primitive.svg
new file mode 100644
index 0000000..2138103
--- /dev/null
+++ b/doc/ug/sec_cm_dv_framework/diagram_of_block_that_contains_sec_cm_primitive.svg
@@ -0,0 +1 @@
+<svg version="1.1" viewBox="0.0 0.0 1280.0 960.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg"><clipPath id="p.0"><path d="m0 0l1280.0 0l0 960.0l-1280.0 0l0 -960.0z" clip-rule="nonzero"/></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l1280.0 0l0 960.0l-1280.0 0z" fill-rule="evenodd"/><path fill="#000000" fill-opacity="0.0" d="m442.5328 181.37534l433.98428 0l0 48.472427l-433.98428 0z" fill-rule="evenodd"/><path fill="#000000" d="m453.29843 213.41533l0 -17.1875l6.4375 0q1.96875 0 3.15625 0.53125q1.1875 0.515625 1.859375 1.609375q0.6875 1.078125 0.6875 2.265625q0 1.09375 -0.609375 2.078125q-0.59375 0.96875 -1.796875 1.5625q1.5625 0.453125 2.390625 1.5625q0.84375 1.09375 0.84375 2.59375q0 1.203125 -0.515625 2.25q-0.5 1.03125 -1.25 1.59375q-0.75 0.5625 -1.890625 0.859375q-1.125 0.28125 -2.765625 0.28125l-6.546875 0zm2.265625 -9.96875l3.71875 0q1.515625 0 2.171875 -0.1875q0.859375 -0.265625 1.296875 -0.859375q0.4375 -0.59375 0.4375 -1.5q0 -0.859375 -0.40625 -1.5q-0.40625 -0.65625 -1.171875 -0.890625q-0.765625 -0.25 -2.609375 -0.25l-3.4375 0l0 5.1875zm0 7.9375l4.28125 0q1.09375 0 1.546875 -0.078125q0.78125 -0.140625 1.3125 -0.46875q0.53125 -0.328125 0.859375 -0.953125q0.34375 -0.625 0.34375 -1.453125q0 -0.953125 -0.5 -1.65625q-0.484375 -0.71875 -1.359375 -1.0q-0.875 -0.296875 -2.515625 -0.296875l-3.96875 0l0 5.90625zm13.5078125 2.03125l0 -17.1875l2.109375 0l0 17.1875l-2.109375 0zm4.5976562 -6.21875q0 -3.46875 1.921875 -5.125q1.609375 -1.390625 3.921875 -1.390625q2.5625 0 4.1875 1.6875q1.625 1.6875 1.625 4.640625q0 2.40625 -0.71875 3.78125q-0.71875 1.375 -2.09375 2.140625q-1.375 0.765625 -3.0 0.765625q-2.625 0 -4.234375 -1.671875q-1.609375 -1.6875 -1.609375 -4.828125zm2.171875 0q0 2.390625 1.03125 3.578125q1.046875 1.1875 2.640625 1.1875q1.5625 0 2.609375 -1.1875q1.046875 -1.203125 1.046875 -3.65625q0 -2.3125 -1.0625 -3.5q-1.046875 -1.1875 -2.59375 -1.1875q-1.59375 0 -2.640625 1.1875q-1.03125 1.1875 -1.03125 3.578125zm20.082031 1.65625l2.078125 0.265625q-0.34375 2.15625 -1.75 3.375q-1.390625 1.203125 -3.4375 1.203125q-2.546875 0 -4.109375 -1.671875q-1.546875 -1.671875 -1.546875 -4.78125q0 -2.015625 0.671875 -3.53125q0.671875 -1.515625 2.03125 -2.265625q1.359375 -0.765625 2.96875 -0.765625q2.03125 0 3.3125 1.03125q1.296875 1.03125 1.65625 2.90625l-2.046875 0.328125q-0.296875 -1.265625 -1.046875 -1.890625q-0.734375 -0.640625 -1.796875 -0.640625q-1.59375 0 -2.59375 1.15625q-0.984375 1.140625 -0.984375 3.609375q0 2.5 0.953125 3.640625q0.96875 1.140625 2.515625 1.140625q1.234375 0 2.0625 -0.765625q0.84375 -0.765625 1.0625 -2.34375zm3.890625 4.5625l0 -17.1875l2.109375 0l0 9.796875l5.0 -5.0625l2.71875 0l-4.75 4.625l5.234375 7.828125l-2.59375 0l-4.125 -6.359375l-1.484375 1.421875l0 4.9375l-2.109375 0zm23.26175 -1.890625l0.3125 1.859375q-0.890625 0.203125 -1.59375 0.203125q-1.15625 0 -1.796875 -0.359375q-0.625 -0.375 -0.890625 -0.96875q-0.25 -0.59375 -0.25 -2.484375l0 -7.171875l-1.546875 0l0 -1.640625l1.546875 0l0 -3.078125l2.09375 -1.265625l0 4.34375l2.125 0l0 1.640625l-2.125 0l0 7.28125q0 0.90625 0.109375 1.171875q0.125 0.25 0.375 0.40625q0.25 0.140625 0.71875 0.140625q0.34375 0 0.921875 -0.078125zm2.0585938 1.890625l0 -17.1875l2.109375 0l0 6.171875q1.484375 -1.71875 3.734375 -1.71875q1.375 0 2.390625 0.546875q1.03125 0.546875 1.46875 1.515625q0.4375 0.953125 0.4375 2.78125l0 7.890625l-2.109375 0l0 -7.890625q0 -1.578125 -0.6875 -2.296875q-0.6875 -0.71875 -1.9375 -0.71875q-0.9375 0 -1.765625 0.484375q-0.828125 0.484375 -1.1875 1.3125q-0.34375 0.828125 -0.34375 2.296875l0 6.8125l-2.109375 0zm21.472656 -1.53125q-1.171875 0.984375 -2.265625 1.40625q-1.078125 0.40625 -2.3125 0.40625q-2.046875 0 -3.15625 -1.0q-1.09375 -1.0 -1.09375 -2.5625q0 -0.921875 0.40625 -1.671875q0.421875 -0.75 1.09375 -1.203125q0.671875 -0.46875 1.515625 -0.703125q0.625 -0.15625 1.875 -0.3125q2.5625 -0.3125 3.765625 -0.734375q0.015625 -0.421875 0.015625 -0.546875q0 -1.28125 -0.609375 -1.8125q-0.796875 -0.71875 -2.390625 -0.71875q-1.5 0 -2.203125 0.53125q-0.703125 0.515625 -1.046875 1.84375l-2.0625 -0.28125q0.28125 -1.328125 0.921875 -2.140625q0.640625 -0.8125 1.859375 -1.25q1.21875 -0.453125 2.828125 -0.453125q1.59375 0 2.59375 0.375q1.0 0.375 1.46875 0.953125q0.46875 0.5625 0.65625 1.4375q0.09375 0.53125 0.09375 1.9375l0 2.8125q0 2.9375 0.140625 3.71875q0.140625 0.78125 0.53125 1.5l-2.203125 0q-0.328125 -0.65625 -0.421875 -1.53125zm-0.171875 -4.71875q-1.15625 0.46875 -3.453125 0.796875q-1.296875 0.1875 -1.84375 0.421875q-0.53125 0.234375 -0.828125 0.6875q-0.28125 0.453125 -0.28125 1.0q0 0.84375 0.625 1.40625q0.640625 0.5625 1.875 0.5625q1.21875 0 2.171875 -0.53125q0.953125 -0.53125 1.390625 -1.453125q0.34375 -0.71875 0.34375 -2.109375l0 -0.78125zm10.003906 4.359375l0.3125 1.859375q-0.890625 0.203125 -1.59375 0.203125q-1.15625 0 -1.796875 -0.359375q-0.625 -0.375 -0.890625 -0.96875q-0.25 -0.59375 -0.25 -2.484375l0 -7.171875l-1.546875 0l0 -1.640625l1.546875 0l0 -3.078125l2.09375 -1.265625l0 4.34375l2.125 0l0 1.640625l-2.125 0l0 7.28125q0 0.90625 0.109375 1.171875q0.125 0.25 0.375 0.40625q0.25 0.140625 0.71875 0.140625q0.34375 0 0.921875 -0.078125zm16.851562 -2.671875l2.078125 0.265625q-0.34375 2.15625 -1.75 3.375q-1.390625 1.203125 -3.4375 1.203125q-2.546875 0 -4.109375 -1.671875q-1.546875 -1.671875 -1.546875 -4.78125q0 -2.015625 0.671875 -3.53125q0.671875 -1.515625 2.03125 -2.265625q1.359375 -0.765625 2.96875 -0.765625q2.03125 0 3.3125 1.03125q1.296875 1.03125 1.65625 2.90625l-2.046875 0.328125q-0.296875 -1.265625 -1.046875 -1.890625q-0.734375 -0.640625 -1.796875 -0.640625q-1.59375 0 -2.59375 1.15625q-0.984375 1.140625 -0.984375 3.609375q0 2.5 0.953125 3.640625q0.96875 1.140625 2.515625 1.140625q1.234375 0 2.0625 -0.765625q0.84375 -0.765625 1.0625 -2.34375zm3.09375 -1.65625q0 -3.46875 1.921875 -5.125q1.609375 -1.390625 3.921875 -1.390625q2.5625 0 4.1875 1.6875q1.625 1.6875 1.625 4.640625q0 2.40625 -0.71875 3.78125q-0.71875 1.375 -2.09375 2.140625q-1.375 0.765625 -3.0 0.765625q-2.625 0 -4.234375 -1.671875q-1.609375 -1.6875 -1.609375 -4.828125zm2.171875 0q0 2.390625 1.03125 3.578125q1.046875 1.1875 2.640625 1.1875q1.5625 0 2.609375 -1.1875q1.046875 -1.203125 1.046875 -3.65625q0 -2.3125 -1.0625 -3.5q-1.046875 -1.1875 -2.59375 -1.1875q-1.59375 0 -2.640625 1.1875q-1.03125 1.1875 -1.03125 3.578125zm11.957031 6.21875l0 -12.453125l1.90625 0l0 1.78125q1.375 -2.0625 3.953125 -2.0625q1.125 0 2.0625 0.40625q0.953125 0.40625 1.421875 1.0625q0.46875 0.65625 0.65625 1.5625q0.125 0.578125 0.125 2.046875l0 7.65625l-2.109375 0l0 -7.578125q0 -1.28125 -0.25 -1.921875q-0.25 -0.640625 -0.875 -1.015625q-0.625 -0.390625 -1.46875 -0.390625q-1.34375 0 -2.328125 0.859375q-0.984375 0.859375 -0.984375 3.25l0 6.796875l-2.109375 0zm17.957031 -1.890625l0.3125 1.859375q-0.890625 0.203125 -1.59375 0.203125q-1.15625 0 -1.796875 -0.359375q-0.625 -0.375 -0.890625 -0.96875q-0.25 -0.59375 -0.25 -2.484375l0 -7.171875l-1.546875 0l0 -1.640625l1.546875 0l0 -3.078125l2.09375 -1.265625l0 4.34375l2.125 0l0 1.640625l-2.125 0l0 7.28125q0 0.90625 0.109375 1.171875q0.125 0.25 0.375 0.40625q0.25 0.140625 0.71875 0.140625q0.34375 0 0.921875 -0.078125zm10.183594 0.359375q-1.171875 0.984375 -2.265625 1.40625q-1.078125 0.40625 -2.3125 0.40625q-2.046875 0 -3.15625 -1.0q-1.09375 -1.0 -1.09375 -2.5625q0 -0.921875 0.40625 -1.671875q0.421875 -0.75 1.09375 -1.203125q0.671875 -0.46875 1.515625 -0.703125q0.625 -0.15625 1.875 -0.3125q2.5625 -0.3125 3.765625 -0.734375q0.015625 -0.421875 0.015625 -0.546875q0 -1.28125 -0.609375 -1.8125q-0.796875 -0.71875 -2.390625 -0.71875q-1.5 0 -2.203125 0.53125q-0.703125 0.515625 -1.046875 1.84375l-2.0625 -0.28125q0.28125 -1.328125 0.921875 -2.140625q0.640625 -0.8125 1.859375 -1.25q1.21875 -0.453125 2.828125 -0.453125q1.59375 0 2.59375 0.375q1.0 0.375 1.46875 0.953125q0.46875 0.5625 0.65625 1.4375q0.09375 0.53125 0.09375 1.9375l0 2.8125q0 2.9375 0.140625 3.71875q0.140625 0.78125 0.53125 1.5l-2.203125 0q-0.328125 -0.65625 -0.421875 -1.53125zm-0.171875 -4.71875q-1.15625 0.46875 -3.453125 0.796875q-1.296875 0.1875 -1.84375 0.421875q-0.53125 0.234375 -0.828125 0.6875q-0.28125 0.453125 -0.28125 1.0q0 0.84375 0.625 1.40625q0.640625 0.5625 1.875 0.5625q1.21875 0 2.171875 -0.53125q0.953125 -0.53125 1.390625 -1.453125q0.34375 -0.71875 0.34375 -2.109375l0 -0.78125zm5.4101562 -8.5l0 -2.4375l2.109375 0l0 2.4375l-2.109375 0zm0 14.75l0 -12.453125l2.109375 0l0 12.453125l-2.109375 0zm5.3164062 0l0 -12.453125l1.90625 0l0 1.78125q1.375 -2.0625 3.953125 -2.0625q1.125 0 2.0625 0.40625q0.953125 0.40625 1.421875 1.0625q0.46875 0.65625 0.65625 1.5625q0.125 0.578125 0.125 2.046875l0 7.65625l-2.109375 0l0 -7.578125q0 -1.28125 -0.25 -1.921875q-0.25 -0.640625 -0.875 -1.015625q-0.625 -0.390625 -1.46875 -0.390625q-1.34375 0 -2.328125 0.859375q-0.984375 0.859375 -0.984375 3.25l0 6.796875l-2.109375 0zm12.503906 -3.71875l2.09375 -0.328125q0.171875 1.25 0.96875 1.921875q0.8125 0.671875 2.25 0.671875q1.453125 0 2.15625 -0.59375q0.703125 -0.59375 0.703125 -1.390625q0 -0.71875 -0.625 -1.125q-0.421875 -0.28125 -2.15625 -0.71875q-2.3125 -0.578125 -3.21875 -1.0q-0.890625 -0.4375 -1.359375 -1.1875q-0.453125 -0.765625 -0.453125 -1.671875q0 -0.828125 0.375 -1.53125q0.390625 -0.71875 1.046875 -1.1875q0.484375 -0.359375 1.328125 -0.609375q0.859375 -0.265625 1.828125 -0.265625q1.46875 0 2.578125 0.421875q1.109375 0.421875 1.625 1.15625q0.53125 0.71875 0.734375 1.921875l-2.0625 0.28125q-0.140625 -0.96875 -0.8125 -1.5q-0.671875 -0.546875 -1.90625 -0.546875q-1.453125 0 -2.078125 0.484375q-0.625 0.484375 -0.625 1.125q0 0.40625 0.265625 0.734375q0.25 0.34375 0.8125 0.5625q0.3125 0.125 1.859375 0.546875q2.234375 0.59375 3.109375 0.984375q0.890625 0.375 1.390625 1.109375q0.515625 0.71875 0.515625 1.796875q0 1.046875 -0.625 1.984375q-0.609375 0.9375 -1.765625 1.453125q-1.15625 0.5 -2.625 0.5q-2.421875 0 -3.703125 -1.0q-1.265625 -1.015625 -1.625 -3.0zm18.667969 0l2.09375 -0.328125q0.171875 1.25 0.96875 1.921875q0.8125 0.671875 2.25 0.671875q1.453125 0 2.15625 -0.59375q0.703125 -0.59375 0.703125 -1.390625q0 -0.71875 -0.625 -1.125q-0.421875 -0.28125 -2.15625 -0.71875q-2.3125 -0.578125 -3.21875 -1.0q-0.890625 -0.4375 -1.359375 -1.1875q-0.453125 -0.765625 -0.453125 -1.671875q0 -0.828125 0.375 -1.53125q0.390625 -0.71875 1.046875 -1.1875q0.484375 -0.359375 1.328125 -0.609375q0.859375 -0.265625 1.828125 -0.265625q1.46875 0 2.578125 0.421875q1.109375 0.421875 1.625 1.15625q0.53125 0.71875 0.734375 1.921875l-2.0625 0.28125q-0.140625 -0.96875 -0.8125 -1.5q-0.671875 -0.546875 -1.90625 -0.546875q-1.453125 0 -2.078125 0.484375q-0.625 0.484375 -0.625 1.125q0 0.40625 0.265625 0.734375q0.25 0.34375 0.8125 0.5625q0.3125 0.125 1.859375 0.546875q2.234375 0.59375 3.109375 0.984375q0.890625 0.375 1.390625 1.109375q0.515625 0.71875 0.515625 1.796875q0 1.046875 -0.625 1.984375q-0.609375 0.9375 -1.765625 1.453125q-1.15625 0.5 -2.625 0.5q-2.421875 0 -3.703125 -1.0q-1.265625 -1.015625 -1.625 -3.0zm21.375 -0.296875l2.171875 0.28125q-0.515625 1.90625 -1.90625 2.96875q-1.390625 1.046875 -3.5625 1.046875q-2.734375 0 -4.34375 -1.671875q-1.59375 -1.6875 -1.59375 -4.734375q0 -3.140625 1.609375 -4.875q1.625 -1.734375 4.203125 -1.734375q2.5 0 4.078125 1.703125q1.59375 1.703125 1.59375 4.78125q0 0.1875 -0.015625 0.5625l-9.28125 0q0.109375 2.046875 1.15625 3.140625q1.046875 1.09375 2.609375 1.09375q1.15625 0 1.96875 -0.609375q0.828125 -0.609375 1.3125 -1.953125zm-6.9375 -3.40625l6.953125 0q-0.140625 -1.5625 -0.796875 -2.359375q-1.0 -1.21875 -2.609375 -1.21875q-1.453125 0 -2.453125 0.984375q-0.984375 0.96875 -1.09375 2.59375zm19.878906 2.859375l2.078125 0.265625q-0.34375 2.15625 -1.75 3.375q-1.390625 1.203125 -3.4375 1.203125q-2.546875 0 -4.109375 -1.671875q-1.546875 -1.671875 -1.546875 -4.78125q0 -2.015625 0.671875 -3.53125q0.671875 -1.515625 2.03125 -2.265625q1.359375 -0.765625 2.96875 -0.765625q2.03125 0 3.3125 1.03125q1.296875 1.03125 1.65625 2.90625l-2.046875 0.328125q-0.296875 -1.265625 -1.046875 -1.890625q-0.734375 -0.640625 -1.796875 -0.640625q-1.59375 0 -2.59375 1.15625q-0.984375 1.140625 -0.984375 3.609375q0 2.5 0.953125 3.640625q0.96875 1.140625 2.515625 1.140625q1.234375 0 2.0625 -0.765625q0.84375 -0.765625 1.0625 -2.34375zm1.9375 9.328125l0 -1.515625l13.984375 0l0 1.515625l-13.984375 0zm23.410156 -9.328125l2.078125 0.265625q-0.34375 2.15625 -1.75 3.375q-1.390625 1.203125 -3.4375 1.203125q-2.546875 0 -4.109375 -1.671875q-1.546875 -1.671875 -1.546875 -4.78125q0 -2.015625 0.671875 -3.53125q0.671875 -1.515625 2.03125 -2.265625q1.359375 -0.765625 2.96875 -0.765625q2.03125 0 3.3125 1.03125q1.296875 1.03125 1.65625 2.90625l-2.046875 0.328125q-0.296875 -1.265625 -1.046875 -1.890625q-0.734375 -0.640625 -1.796875 -0.640625q-1.59375 0 -2.59375 1.15625q-0.984375 1.140625 -0.984375 3.609375q0 2.5 0.953125 3.640625q0.96875 1.140625 2.515625 1.140625q1.234375 0 2.0625 -0.765625q0.84375 -0.765625 1.0625 -2.34375zm3.875 4.5625l0 -12.453125l1.890625 0l0 1.75q0.59375 -0.90625 1.5625 -1.46875q0.96875 -0.5625 2.21875 -0.5625q1.375 0 2.25 0.578125q0.890625 0.578125 1.265625 1.609375q1.46875 -2.1875 3.84375 -2.1875q1.84375 0 2.84375 1.03125q1.0 1.03125 1.0 3.15625l0 8.546875l-2.109375 0l0 -7.84375q0 -1.265625 -0.203125 -1.8125q-0.203125 -0.5625 -0.75 -0.90625q-0.53125 -0.34375 -1.25 -0.34375q-1.3125 0 -2.1875 0.875q-0.859375 0.875 -0.859375 2.796875l0 7.234375l-2.109375 0l0 -8.09375q0 -1.40625 -0.515625 -2.109375q-0.515625 -0.703125 -1.6875 -0.703125q-0.890625 0 -1.65625 0.46875q-0.75 0.46875 -1.09375 1.375q-0.34375 0.90625 -0.34375 2.609375l0 6.453125l-2.109375 0zm26.660156 4.765625l0 -17.21875l1.921875 0l0 1.625q0.6875 -0.953125 1.53125 -1.421875q0.859375 -0.484375 2.078125 -0.484375q1.59375 0 2.8125 0.828125q1.21875 0.8125 1.84375 2.3125q0.625 1.5 0.625 3.28125q0 1.90625 -0.6875 3.4375q-0.6875 1.53125 -2.0 2.34375q-1.296875 0.8125 -2.734375 0.8125q-1.0625 0 -1.90625 -0.4375q-0.828125 -0.453125 -1.375 -1.140625l0 6.0625l-2.109375 0zm1.921875 -10.921875q0 2.40625 0.96875 3.5625q0.96875 1.140625 2.359375 1.140625q1.40625 0 2.40625 -1.1875q1.0 -1.1875 1.0 -3.6875q0 -2.375 -0.984375 -3.5625q-0.96875 -1.1875 -2.328125 -1.1875q-1.359375 0 -2.390625 1.265625q-1.03125 1.25 -1.03125 3.65625zm11.410156 6.15625l0 -12.453125l1.890625 0l0 1.890625q0.734375 -1.328125 1.34375 -1.75q0.625 -0.421875 1.359375 -0.421875q1.0625 0 2.171875 0.6875l-0.734375 1.953125q-0.765625 -0.453125 -1.546875 -0.453125q-0.6875 0 -1.25 0.421875q-0.546875 0.40625 -0.78125 1.140625q-0.34375 1.125 -0.34375 2.46875l0 6.515625l-2.109375 0zm8.0234375 -14.75l0 -2.4375l2.109375 0l0 2.4375l-2.109375 0zm0 14.75l0 -12.453125l2.109375 0l0 12.453125l-2.109375 0zm5.3164062 0l0 -12.453125l1.890625 0l0 1.75q0.59375 -0.90625 1.5625 -1.46875q0.96875 -0.5625 2.21875 -0.5625q1.375 0 2.25 0.578125q0.890625 0.578125 1.265625 1.609375q1.46875 -2.1875 3.84375 -2.1875q1.84375 0 2.84375 1.03125q1.0 1.03125 1.0 3.15625l0 8.546875l-2.109375 0l0 -7.84375q0 -1.265625 -0.203125 -1.8125q-0.203125 -0.5625 -0.75 -0.90625q-0.53125 -0.34375 -1.25 -0.34375q-1.3125 0 -2.1875 0.875q-0.859375 0.875 -0.859375 2.796875l0 7.234375l-2.109375 0l0 -8.09375q0 -1.40625 -0.515625 -2.109375q-0.515625 -0.703125 -1.6875 -0.703125q-0.890625 0 -1.65625 0.46875q-0.75 0.46875 -1.09375 1.375q-0.34375 0.90625 -0.34375 2.609375l0 6.453125l-2.109375 0zm20.007812 -14.75l0 -2.4375l2.109375 0l0 2.4375l-2.109375 0zm0 14.75l0 -12.453125l2.109375 0l0 12.453125l-2.109375 0zm9.925781 -1.890625l0.3125 1.859375q-0.890625 0.203125 -1.59375 0.203125q-1.15625 0 -1.796875 -0.359375q-0.625 -0.375 -0.890625 -0.96875q-0.25 -0.59375 -0.25 -2.484375l0 -7.171875l-1.546875 0l0 -1.640625l1.546875 0l0 -3.078125l2.09375 -1.265625l0 4.34375l2.125 0l0 1.640625l-2.125 0l0 7.28125q0 0.90625 0.109375 1.171875q0.125 0.25 0.375 0.40625q0.25 0.140625 0.71875 0.140625q0.34375 0 0.921875 -0.078125zm2.0742188 -12.859375l0 -2.4375l2.109375 0l0 2.4375l-2.109375 0zm0 14.75l0 -12.453125l2.109375 0l0 12.453125l-2.109375 0zm8.785156 0l-4.734375 -12.453125l2.21875 0l2.671875 7.453125q0.4375 1.21875 0.796875 2.515625q0.28125 -0.984375 0.78125 -2.375l2.765625 -7.59375l2.171875 0l-4.703125 12.453125l-1.96875 0zm17.0625 -4.015625l2.171875 0.28125q-0.515625 1.90625 -1.90625 2.96875q-1.390625 1.046875 -3.5625 1.046875q-2.734375 0 -4.34375 -1.671875q-1.59375 -1.6875 -1.59375 -4.734375q0 -3.140625 1.609375 -4.875q1.625 -1.734375 4.203125 -1.734375q2.5 0 4.078125 1.703125q1.59375 1.703125 1.59375 4.78125q0 0.1875 -0.015625 0.5625l-9.28125 0q0.109375 2.046875 1.15625 3.140625q1.046875 1.09375 2.609375 1.09375q1.15625 0 1.96875 -0.609375q0.828125 -0.609375 1.3125 -1.953125zm-6.9375 -3.40625l6.953125 0q-0.140625 -1.5625 -0.796875 -2.359375q-1.0 -1.21875 -2.609375 -1.21875q-1.453125 0 -2.453125 0.984375q-0.984375 0.96875 -1.09375 2.59375z" fill-rule="nonzero"/><path fill="#c9daf8" d="m442.4651 248.90485l418.20923 0l0 462.69348l-418.20923 0z" fill-rule="evenodd"/><path stroke="#595959" stroke-width="1.0" stroke-linejoin="round" stroke-linecap="butt" d="m442.4651 248.90485l418.20923 0l0 462.69348l-418.20923 0z" fill-rule="evenodd"/><path fill="#ff9900" d="m698.36755 304.59314l145.68091 0l0 151.53445l-145.68091 0z" fill-rule="evenodd"/><path stroke="#595959" stroke-width="1.0" stroke-linejoin="round" stroke-linecap="butt" d="m698.36755 304.59314l145.68091 0l0 151.53445l-145.68091 0z" fill-rule="evenodd"/><path fill="#000000" d="m716.32294 384.38974l1.625 -0.25q0.125 0.96875 0.75 1.5q0.625 0.515625 1.75 0.515625q1.125 0 1.671875 -0.453125q0.546875 -0.46875 0.546875 -1.09375q0 -0.546875 -0.484375 -0.875q-0.328125 -0.21875 -1.671875 -0.546875q-1.8125 -0.46875 -2.515625 -0.796875q-0.6875 -0.328125 -1.046875 -0.90625q-0.359375 -0.59375 -0.359375 -1.3125q0 -0.640625 0.296875 -1.1875q0.296875 -0.5625 0.8125 -0.921875q0.375 -0.28125 1.03125 -0.46875q0.671875 -0.203125 1.421875 -0.203125q1.140625 0 2.0 0.328125q0.859375 0.328125 1.265625 0.890625q0.421875 0.5625 0.578125 1.5l-1.609375 0.21875q-0.109375 -0.75 -0.640625 -1.171875q-0.515625 -0.421875 -1.46875 -0.421875q-1.140625 0 -1.625 0.375q-0.46875 0.375 -0.46875 0.875q0 0.3125 0.1875 0.578125q0.203125 0.265625 0.640625 0.4375q0.234375 0.09375 1.4375 0.421875q1.75 0.453125 2.4375 0.75q0.6875 0.296875 1.078125 0.859375q0.390625 0.5625 0.390625 1.40625q0 0.828125 -0.484375 1.546875q-0.46875 0.71875 -1.375 1.125q-0.90625 0.390625 -2.046875 0.390625q-1.875 0 -2.875 -0.78125q-0.984375 -0.78125 -1.25 -2.328125zm16.609375 -0.21875l1.6875 0.203125q-0.40625 1.484375 -1.484375 2.3125q-1.078125 0.8125 -2.765625 0.8125q-2.125 0 -3.375 -1.296875q-1.234375 -1.3125 -1.234375 -3.671875q0 -2.453125 1.25 -3.796875q1.265625 -1.34375 3.265625 -1.34375q1.9375 0 3.15625 1.328125q1.234375 1.3125 1.234375 3.703125q0 0.15625 0 0.4375l-7.21875 0q0.09375 1.59375 0.90625 2.453125q0.8125 0.84375 2.015625 0.84375q0.90625 0 1.546875 -0.46875q0.640625 -0.484375 1.015625 -1.515625zm-5.390625 -2.65625l5.40625 0q-0.109375 -1.21875 -0.625 -1.828125q-0.78125 -0.953125 -2.03125 -0.953125q-1.125 0 -1.90625 0.765625q-0.765625 0.75 -0.84375 2.015625zm15.453857 2.21875l1.609375 0.21875q-0.265625 1.65625 -1.359375 2.609375q-1.078125 0.9375 -2.671875 0.9375q-1.984375 0 -3.1875 -1.296875q-1.203125 -1.296875 -1.203125 -3.71875q0 -1.578125 0.515625 -2.75q0.515625 -1.171875 1.578125 -1.75q1.0625 -0.59375 2.3125 -0.59375q1.578125 0 2.578125 0.796875q1.0 0.796875 1.28125 2.265625l-1.59375 0.234375q-0.234375 -0.96875 -0.8125 -1.453125q-0.578125 -0.5 -1.390625 -0.5q-1.234375 0 -2.015625 0.890625q-0.78125 0.890625 -0.78125 2.8125q0 1.953125 0.75 2.84375q0.75 0.875 1.953125 0.875q0.96875 0 1.609375 -0.59375q0.65625 -0.59375 0.828125 -1.828125zm1.5 7.25l0 -1.1875l10.859375 0l0 1.1875l-10.859375 0zm18.203857 -7.25l1.609375 0.21875q-0.265625 1.65625 -1.359375 2.609375q-1.078125 0.9375 -2.671875 0.9375q-1.984375 0 -3.1875 -1.296875q-1.203125 -1.296875 -1.203125 -3.71875q0 -1.578125 0.515625 -2.75q0.515625 -1.171875 1.578125 -1.75q1.0625 -0.59375 2.3125 -0.59375q1.578125 0 2.578125 0.796875q1.0 0.796875 1.28125 2.265625l-1.59375 0.234375q-0.234375 -0.96875 -0.8125 -1.453125q-0.578125 -0.5 -1.390625 -0.5q-1.234375 0 -2.015625 0.890625q-0.78125 0.890625 -0.78125 2.8125q0 1.953125 0.75 2.84375q0.75 0.875 1.953125 0.875q0.96875 0 1.609375 -0.59375q0.65625 -0.59375 0.828125 -1.828125zm3.015625 3.546875l0 -9.671875l1.46875 0l0 1.359375q0.453125 -0.71875 1.203125 -1.140625q0.765625 -0.4375 1.71875 -0.4375q1.078125 0 1.765625 0.453125q0.6875 0.4375 0.96875 1.234375q1.15625 -1.6875 2.984375 -1.6875q1.453125 0 2.21875 0.796875q0.78125 0.796875 0.78125 2.453125l0 6.640625l-1.640625 0l0 -6.09375q0 -0.984375 -0.15625 -1.40625q-0.15625 -0.4375 -0.578125 -0.703125q-0.421875 -0.265625 -0.984375 -0.265625q-1.015625 0 -1.6875 0.6875q-0.671875 0.671875 -0.671875 2.15625l0 5.625l-1.640625 0l0 -6.28125q0 -1.09375 -0.40625 -1.640625q-0.40625 -0.546875 -1.3125 -0.546875q-0.6875 0 -1.28125 0.359375q-0.59375 0.359375 -0.859375 1.0625q-0.25 0.703125 -0.25 2.03125l0 5.015625l-1.640625 0zm14.0251465 3.703125l0 -1.1875l10.859375 0l0 1.1875l-10.859375 0zm11.891357 0l0 -13.375l1.484375 0l0 1.25q0.53125 -0.734375 1.1875 -1.09375q0.671875 -0.375 1.625 -0.375q1.234375 0 2.171875 0.640625q0.953125 0.625 1.4375 1.796875q0.484375 1.15625 0.484375 2.546875q0 1.484375 -0.53125 2.671875q-0.53125 1.1875 -1.546875 1.828125q-1.015625 0.625 -2.140625 0.625q-0.8125 0 -1.46875 -0.34375q-0.65625 -0.34375 -1.0625 -0.875l0 4.703125l-1.640625 0zm1.484375 -8.484375q0 1.859375 0.75 2.765625q0.765625 0.890625 1.828125 0.890625q1.09375 0 1.875 -0.921875q0.78125 -0.9375 0.78125 -2.875q0 -1.84375 -0.765625 -2.765625q-0.75 -0.921875 -1.8125 -0.921875q-1.046875 0 -1.859375 0.984375q-0.796875 0.96875 -0.796875 2.84375zm8.875732 4.78125l0 -9.671875l1.46875 0l0 1.46875q0.5625 -1.03125 1.03125 -1.359375q0.484375 -0.328125 1.0625 -0.328125q0.828125 0 1.6875 0.53125l-0.5625 1.515625q-0.609375 -0.359375 -1.203125 -0.359375q-0.546875 0 -0.96875 0.328125q-0.421875 0.328125 -0.609375 0.890625q-0.28125 0.875 -0.28125 1.921875l0 5.0625l-1.625 0zm6.2282715 -11.46875l0 -1.890625l1.640625 0l0 1.890625l-1.640625 0zm0 11.46875l0 -9.671875l1.640625 0l0 9.671875l-1.640625 0zm4.1448364 0l0 -9.671875l1.46875 0l0 1.359375q0.453125 -0.71875 1.203125 -1.140625q0.765625 -0.4375 1.71875 -0.4375q1.078125 0 1.765625 0.453125q0.6875 0.4375 0.96875 1.234375q1.15625 -1.6875 2.984375 -1.6875q1.453125 0 2.21875 0.796875q0.78125 0.796875 0.78125 2.453125l0 6.640625l-1.640625 0l0 -6.09375q0 -0.984375 -0.15625 -1.40625q-0.15625 -0.4375 -0.578125 -0.703125q-0.421875 -0.265625 -0.984375 -0.265625q-1.015625 0 -1.6875 0.6875q-0.671875 0.671875 -0.671875 2.15625l0 5.625l-1.640625 0l0 -6.28125q0 -1.09375 -0.40625 -1.640625q-0.40625 -0.546875 -1.3125 -0.546875q-0.6875 0 -1.28125 0.359375q-0.59375 0.359375 -0.859375 1.0625q-0.25 0.703125 -0.25 2.03125l0 5.015625l-1.640625 0z" fill-rule="nonzero"/><path fill="#b6d7a8" d="m586.9786 438.12463l33.040466 -60.819153l-3.2578735 55.838287l37.505676 -9.101898l-14.895752 29.969147l39.01477 8.619537l-30.981018 24.516418l35.446167 29.51825l-42.281494 -3.64917l11.611206 54.034668l-36.61798 -38.148254l-6.8619995 55.366394l-24.101257 -50.354065l-18.171387 69.88959l-6.835327 -62.63324l-26.21405 20.867249l8.033752 -38.588684l-49.108 6.815918l31.842072 -29.486786l-33.040497 -33.135925l41.07425 -10.465118l-37.789734 -55.806793l61.624695 42.20639l9.232178 -42.20639z" fill-rule="evenodd"/><path stroke="#595959" stroke-width="1.0" stroke-linejoin="round" stroke-linecap="butt" d="m586.9786 438.12463l33.040466 -60.819153l-3.2578735 55.838287l37.505676 -9.101898l-14.895752 29.969147l39.01477 8.619537l-30.981018 24.516418l35.446167 29.51825l-42.281494 -3.64917l11.611206 54.034668l-36.61798 -38.148254l-6.8619995 55.366394l-24.101257 -50.354065l-18.171387 69.88959l-6.835327 -62.63324l-26.21405 20.867249l8.033752 -38.588684l-49.108 6.815918l31.842072 -29.486786l-33.040497 -33.135925l41.07425 -10.465118l-37.789734 -55.806793l61.624695 42.20639l9.232178 -42.20639z" fill-rule="evenodd"/><path fill="#000000" fill-opacity="0.0" d="m442.4651 480.2516l-140.32117 0" fill-rule="evenodd"/><path stroke="#595959" stroke-width="4.0" stroke-linejoin="round" stroke-linecap="butt" d="m442.4651 480.2516l-116.32117 0" fill-rule="evenodd"/><path fill="#595959" stroke="#595959" stroke-width="4.0" stroke-linecap="butt" d="m326.14392 473.64468l-18.152374 6.606903l18.152374 6.6069336z" fill-rule="evenodd"/><path fill="#000000" fill-opacity="0.0" d="m771.208 456.1276l1.4888306 57.97934" fill-rule="evenodd"/><path stroke="#595959" stroke-width="4.0" stroke-linejoin="round" stroke-linecap="butt" d="m771.208 456.1276l1.4888306 57.97934" fill-rule="evenodd"/><path fill="#000000" fill-opacity="0.0" d="m287.34735 421.91327l226.44934 0l0 48.437103l-226.44934 0z" fill-rule="evenodd"/><path fill="#000000" d="m298.3161 453.95328l0 -17.1875l11.59375 0l0 2.03125l-9.3125 0l0 5.328125l8.0625 0l0 2.015625l-8.0625 0l0 7.8125l-2.28125 0zm22.394531 -1.53125q-1.171875 0.984375 -2.265625 1.40625q-1.078125 0.40625 -2.3125 0.40625q-2.046875 0 -3.15625 -1.0q-1.09375 -1.0 -1.09375 -2.5625q0 -0.921875 0.40625 -1.671875q0.421875 -0.75 1.09375 -1.203125q0.671875 -0.46875 1.515625 -0.703125q0.625 -0.15625 1.875 -0.3125q2.5625 -0.3125 3.765625 -0.734375q0.015625 -0.421875 0.015625 -0.546875q0 -1.28125 -0.609375 -1.8125q-0.796875 -0.71875 -2.390625 -0.71875q-1.5 0 -2.203125 0.53125q-0.703125 0.515625 -1.046875 1.84375l-2.0625 -0.28125q0.28125 -1.328125 0.921875 -2.140625q0.640625 -0.8125 1.859375 -1.25q1.21875 -0.453125 2.828125 -0.453125q1.59375 0 2.59375 0.375q1.0 0.375 1.46875 0.953125q0.46875 0.5625 0.65625 1.4375q0.09375 0.53125 0.09375 1.9375l0 2.8125q0 2.9375 0.140625 3.71875q0.140625 0.78125 0.53125 1.5l-2.203125 0q-0.328125 -0.65625 -0.421875 -1.53125zm-0.171875 -4.71875q-1.15625 0.46875 -3.453125 0.796875q-1.296875 0.1875 -1.84375 0.421875q-0.53125 0.234375 -0.828125 0.6875q-0.28125 0.453125 -0.28125 1.0q0 0.84375 0.625 1.40625q0.640625 0.5625 1.875 0.5625q1.21875 0 2.171875 -0.53125q0.953125 -0.53125 1.390625 -1.453125q0.34375 -0.71875 0.34375 -2.109375l0 -0.78125zm10.003906 4.359375l0.3125 1.859375q-0.890625 0.203125 -1.59375 0.203125q-1.15625 0 -1.796875 -0.359375q-0.625 -0.375 -0.890625 -0.96875q-0.25 -0.59375 -0.25 -2.484375l0 -7.171875l-1.546875 0l0 -1.640625l1.546875 0l0 -3.078125l2.09375 -1.265625l0 4.34375l2.125 0l0 1.640625l-2.125 0l0 7.28125q0 0.90625 0.109375 1.171875q0.125 0.25 0.375 0.40625q0.25 0.140625 0.71875 0.140625q0.34375 0 0.921875 -0.078125zm10.183594 0.359375q-1.171875 0.984375 -2.265625 1.40625q-1.078125 0.40625 -2.3125 0.40625q-2.046875 0 -3.15625 -1.0q-1.09375 -1.0 -1.09375 -2.5625q0 -0.921875 0.40625 -1.671875q0.421875 -0.75 1.09375 -1.203125q0.671875 -0.46875 1.515625 -0.703125q0.625 -0.15625 1.875 -0.3125q2.5625 -0.3125 3.765625 -0.734375q0.015625 -0.421875 0.015625 -0.546875q0 -1.28125 -0.609375 -1.8125q-0.796875 -0.71875 -2.390625 -0.71875q-1.5 0 -2.203125 0.53125q-0.703125 0.515625 -1.046875 1.84375l-2.0625 -0.28125q0.28125 -1.328125 0.921875 -2.140625q0.640625 -0.8125 1.859375 -1.25q1.21875 -0.453125 2.828125 -0.453125q1.59375 0 2.59375 0.375q1.0 0.375 1.46875 0.953125q0.46875 0.5625 0.65625 1.4375q0.09375 0.53125 0.09375 1.9375l0 2.8125q0 2.9375 0.140625 3.71875q0.140625 0.78125 0.53125 1.5l-2.203125 0q-0.328125 -0.65625 -0.421875 -1.53125zm-0.171875 -4.71875q-1.15625 0.46875 -3.453125 0.796875q-1.296875 0.1875 -1.84375 0.421875q-0.53125 0.234375 -0.828125 0.6875q-0.28125 0.453125 -0.28125 1.0q0 0.84375 0.625 1.40625q0.640625 0.5625 1.875 0.5625q1.21875 0 2.171875 -0.53125q0.953125 -0.53125 1.390625 -1.453125q0.34375 -0.71875 0.34375 -2.109375l0 -0.78125zm5.3476562 6.25l0 -17.1875l2.109375 0l0 17.1875l-2.109375 0zm20.171875 -1.53125q-1.171875 0.984375 -2.265625 1.40625q-1.078125 0.40625 -2.3125 0.40625q-2.046875 0 -3.15625 -1.0q-1.09375 -1.0 -1.09375 -2.5625q0 -0.921875 0.40625 -1.671875q0.421875 -0.75 1.09375 -1.203125q0.671875 -0.46875 1.515625 -0.703125q0.625 -0.15625 1.875 -0.3125q2.5625 -0.3125 3.765625 -0.734375q0.015625 -0.421875 0.015625 -0.546875q0 -1.28125 -0.609375 -1.8125q-0.796875 -0.71875 -2.390625 -0.71875q-1.5 0 -2.203125 0.53125q-0.703125 0.515625 -1.046875 1.84375l-2.0625 -0.28125q0.28125 -1.328125 0.921875 -2.140625q0.640625 -0.8125 1.859375 -1.25q1.21875 -0.453125 2.828125 -0.453125q1.59375 0 2.59375 0.375q1.0 0.375 1.46875 0.953125q0.46875 0.5625 0.65625 1.4375q0.09375 0.53125 0.09375 1.9375l0 2.8125q0 2.9375 0.140625 3.71875q0.140625 0.78125 0.53125 1.5l-2.203125 0q-0.328125 -0.65625 -0.421875 -1.53125zm-0.171875 -4.71875q-1.15625 0.46875 -3.453125 0.796875q-1.296875 0.1875 -1.84375 0.421875q-0.53125 0.234375 -0.828125 0.6875q-0.28125 0.453125 -0.28125 1.0q0 0.84375 0.625 1.40625q0.640625 0.5625 1.875 0.5625q1.21875 0 2.171875 -0.53125q0.953125 -0.53125 1.390625 -1.453125q0.34375 -0.71875 0.34375 -2.109375l0 -0.78125zm5.3476562 6.25l0 -17.1875l2.109375 0l0 17.1875l-2.109375 0zm13.910156 -4.015625l2.171875 0.28125q-0.515625 1.90625 -1.90625 2.96875q-1.390625 1.046875 -3.5625 1.046875q-2.734375 0 -4.34375 -1.671875q-1.59375 -1.6875 -1.59375 -4.734375q0 -3.140625 1.609375 -4.875q1.625 -1.734375 4.203125 -1.734375q2.5 0 4.078125 1.703125q1.59375 1.703125 1.59375 4.78125q0 0.1875 -0.015625 0.5625l-9.28125 0q0.109375 2.046875 1.15625 3.140625q1.046875 1.09375 2.609375 1.09375q1.15625 0 1.96875 -0.609375q0.828125 -0.609375 1.3125 -1.953125zm-6.9375 -3.40625l6.953125 0q-0.140625 -1.5625 -0.796875 -2.359375q-1.0 -1.21875 -2.609375 -1.21875q-1.453125 0 -2.453125 0.984375q-0.984375 0.96875 -1.09375 2.59375zm11.738281 7.421875l0 -12.453125l1.890625 0l0 1.890625q0.734375 -1.328125 1.34375 -1.75q0.625 -0.421875 1.359375 -0.421875q1.0625 0 2.171875 0.6875l-0.734375 1.953125q-0.765625 -0.453125 -1.546875 -0.453125q-0.6875 0 -1.25 0.421875q-0.546875 0.40625 -0.78125 1.140625q-0.34375 1.125 -0.34375 2.46875l0 6.515625l-2.109375 0zm12.6171875 -1.890625l0.3125 1.859375q-0.890625 0.203125 -1.59375 0.203125q-1.15625 0 -1.796875 -0.359375q-0.625 -0.375 -0.890625 -0.96875q-0.25 -0.59375 -0.25 -2.484375l0 -7.171875l-1.546875 0l0 -1.640625l1.546875 0l0 -3.078125l2.09375 -1.265625l0 4.34375l2.125 0l0 1.640625l-2.125 0l0 7.28125q0 0.90625 0.109375 1.171875q0.125 0.25 0.375 0.40625q0.25 0.140625 0.71875 0.140625q0.34375 0 0.921875 -0.078125z" fill-rule="nonzero"/><path fill="#000000" fill-opacity="0.0" d="m689.80133 471.98886l226.44934 0l0 46.881256l-226.44934 0z" fill-rule="evenodd"/><path fill="#000000" d="m708.3326 498.9676l2.0625 0.25q-0.484375 1.8125 -1.8125 2.8125q-1.3125 0.984375 -3.359375 0.984375q-2.578125 0 -4.09375 -1.578125q-1.5 -1.59375 -1.5 -4.46875q0 -2.953125 1.53125 -4.59375q1.53125 -1.640625 3.953125 -1.640625q2.359375 0 3.84375 1.609375q1.5 1.59375 1.5 4.515625q0 0.171875 0 0.53125l-8.765625 0q0.109375 1.9375 1.09375 2.96875q0.984375 1.015625 2.453125 1.015625q1.09375 0 1.859375 -0.5625q0.78125 -0.578125 1.234375 -1.84375zm-6.53125 -3.21875l6.5625 0q-0.140625 -1.484375 -0.75 -2.21875q-0.953125 -1.15625 -2.46875 -1.15625q-1.375 0 -2.3125 0.921875q-0.9375 0.90625 -1.03125 2.453125zm11.069092 7.0l0 -11.75l1.796875 0l0 1.78125q0.6875 -1.25 1.265625 -1.640625q0.578125 -0.40625 1.28125 -0.40625q1.0 0 2.046875 0.640625l-0.6875 1.84375q-0.734375 -0.421875 -1.46875 -0.421875q-0.640625 0 -1.171875 0.390625q-0.515625 0.390625 -0.734375 1.09375q-0.328125 1.0625 -0.328125 2.3125l0 6.15625l-2.0 0zm7.5446777 0l0 -11.75l1.796875 0l0 1.78125q0.6875 -1.25 1.265625 -1.640625q0.578125 -0.40625 1.28125 -0.40625q1.0 0 2.046875 0.640625l-0.6875 1.84375q-0.734375 -0.421875 -1.46875 -0.421875q-0.640625 0 -1.171875 0.390625q-0.515625 0.390625 -0.734375 1.09375q-0.328125 1.0625 -0.328125 2.3125l0 6.15625l-2.0 0zm6.825989 -5.875q0 -3.265625 1.8125 -4.828125q1.515625 -1.3125 3.703125 -1.3125q2.421875 0 3.953125 1.59375q1.546875 1.578125 1.546875 4.375q0 2.28125 -0.6875 3.578125q-0.671875 1.296875 -1.984375 2.015625q-1.296875 0.71875 -2.828125 0.71875q-2.46875 0 -4.0 -1.578125q-1.515625 -1.578125 -1.515625 -4.5625zm2.046875 0q0 2.25 0.984375 3.375q0.984375 1.125 2.484375 1.125q1.484375 0 2.46875 -1.125q0.984375 -1.125 0.984375 -3.4375q0 -2.1875 -1.0 -3.296875q-0.984375 -1.125 -2.453125 -1.125q-1.5 0 -2.484375 1.125q-0.984375 1.109375 -0.984375 3.359375zm11.272217 5.875l0 -11.75l1.796875 0l0 1.78125q0.6875 -1.25 1.265625 -1.640625q0.578125 -0.40625 1.28125 -0.40625q1.0 0 2.046875 0.640625l-0.6875 1.84375q-0.734375 -0.421875 -1.46875 -0.421875q-0.640625 0 -1.171875 0.390625q-0.515625 0.390625 -0.734375 1.09375q-0.328125 1.0625 -0.328125 2.3125l0 6.15625l-2.0 0z" fill-rule="nonzero"/><path fill="#000000" fill-opacity="0.0" d="m773.669 515.10944l-90.81799 1.5557861" fill-rule="evenodd"/><path stroke="#595959" stroke-width="4.0" stroke-linejoin="round" stroke-linecap="butt" d="m773.66895 515.10944l-66.82141 1.1447144" fill-rule="evenodd"/><path fill="#595959" stroke="#595959" stroke-width="4.0" stroke-linecap="butt" d="m706.7344 509.6482l-18.03656 6.91687l18.262878 6.295044z" fill-rule="evenodd"/><path fill="#000000" fill-opacity="0.0" d="m548.04333 449.5433l101.79523 0l0 71.08664l-101.79523 0z" fill-rule="evenodd"/><path fill="#000000" d="m558.0746 471.58582q0 -3.796875 2.03125 -5.9375q2.046875 -2.15625 5.28125 -2.15625q2.109375 0 3.796875 1.015625q1.703125 1.0 2.59375 2.8125q0.890625 1.796875 0.890625 4.09375q0 2.3125 -0.9375 4.15625q-0.9375 1.828125 -2.65625 2.78125q-1.703125 0.9375 -3.703125 0.9375q-2.15625 0 -3.859375 -1.046875q-1.6875 -1.046875 -2.5625 -2.84375q-0.875 -1.796875 -0.875 -3.8125zm2.078125 0.03125q0 2.765625 1.484375 4.359375q1.484375 1.578125 3.734375 1.578125q2.28125 0 3.75 -1.59375q1.46875 -1.609375 1.46875 -4.5625q0 -1.859375 -0.640625 -3.25q-0.625 -1.390625 -1.84375 -2.15625q-1.203125 -0.765625 -2.703125 -0.765625q-2.15625 0 -3.703125 1.484375q-1.546875 1.46875 -1.546875 4.90625zm18.980286 5.734375l0.265625 1.65625q-0.78125 0.15625 -1.40625 0.15625q-1.03125 0 -1.59375 -0.3125q-0.5625 -0.328125 -0.796875 -0.84375q-0.21875 -0.53125 -0.21875 -2.21875l0 -6.375l-1.375 0l0 -1.453125l1.375 0l0 -2.734375l1.859375 -1.125l0 3.859375l1.890625 0l0 1.453125l-1.890625 0l0 6.46875q0 0.8125 0.09375 1.046875q0.109375 0.21875 0.328125 0.359375q0.234375 0.125 0.640625 0.125q0.3125 0 0.828125 -0.0625zm1.8319092 1.671875l0 -15.265625l1.875 0l0 5.46875q1.3125 -1.515625 3.3125 -1.515625q1.234375 0 2.140625 0.484375q0.90625 0.484375 1.296875 1.34375q0.390625 0.84375 0.390625 2.46875l0 7.015625l-1.875 0l0 -7.015625q0 -1.40625 -0.609375 -2.046875q-0.609375 -0.640625 -1.734375 -0.640625q-0.828125 0 -1.5625 0.4375q-0.734375 0.4375 -1.046875 1.171875q-0.3125 0.734375 -0.3125 2.046875l0 6.046875l-1.875 0zm19.43982 -3.5625l1.921875 0.234375q-0.453125 1.703125 -1.6875 2.640625q-1.234375 0.9375 -3.171875 0.9375q-2.421875 0 -3.84375 -1.484375q-1.421875 -1.5 -1.421875 -4.203125q0 -2.796875 1.4375 -4.328125q1.4375 -1.546875 3.734375 -1.546875q2.21875 0 3.609375 1.515625q1.40625 1.5 1.40625 4.25q0 0.15625 0 0.5l-8.25 0q0.109375 1.8125 1.03125 2.78125q0.921875 0.96875 2.3125 0.96875q1.03125 0 1.75 -0.53125q0.734375 -0.546875 1.171875 -1.734375zm-6.15625 -3.03125l6.171875 0q-0.125 -1.390625 -0.703125 -2.09375q-0.90625 -1.078125 -2.328125 -1.078125q-1.296875 0 -2.171875 0.859375q-0.875 0.859375 -0.96875 2.3125zm10.424194 6.59375l0 -11.0625l1.6875 0l0 1.671875q0.640625 -1.171875 1.1875 -1.546875q0.546875 -0.375 1.203125 -0.375q0.953125 0 1.921875 0.609375l-0.640625 1.734375q-0.6875 -0.40625 -1.375 -0.40625q-0.609375 0 -1.109375 0.375q-0.484375 0.359375 -0.6875 1.015625q-0.3125 1.0 -0.3125 2.1875l0 5.796875l-1.875 0z" fill-rule="nonzero"/><path fill="#000000" d="m558.4027 504.6233l0 -15.265625l1.875 0l0 15.265625l-1.875 0zm4.0821533 -5.53125q0 -3.078125 1.71875 -4.546875q1.421875 -1.234375 3.46875 -1.234375q2.28125 0 3.71875 1.5q1.453125 1.484375 1.453125 4.125q0 2.140625 -0.640625 3.359375q-0.625 1.21875 -1.859375 1.90625q-1.21875 0.671875 -2.671875 0.671875q-2.3125 0 -3.75 -1.484375q-1.4375 -1.5 -1.4375 -4.296875zm1.9375 0q0 2.125 0.921875 3.1875q0.921875 1.046875 2.328125 1.046875q1.40625 0 2.328125 -1.0625q0.921875 -1.0625 0.921875 -3.234375q0 -2.046875 -0.9375 -3.109375q-0.921875 -1.0625 -2.3125 -1.0625q-1.40625 0 -2.328125 1.0625q-0.921875 1.046875 -0.921875 3.171875zm10.283569 6.453125l1.828125 0.265625q0.109375 0.84375 0.625 1.234375q0.703125 0.515625 1.90625 0.515625q1.3125 0 2.015625 -0.53125q0.703125 -0.515625 0.953125 -1.453125q0.15625 -0.5625 0.140625 -2.40625q-1.234375 1.453125 -3.0625 1.453125q-2.28125 0 -3.53125 -1.640625q-1.25 -1.65625 -1.25 -3.953125q0 -1.578125 0.5625 -2.921875q0.578125 -1.34375 1.671875 -2.0625q1.09375 -0.734375 2.5625 -0.734375q1.953125 0 3.21875 1.578125l0 -1.328125l1.734375 0l0 9.5625q0 2.578125 -0.53125 3.65625q-0.515625 1.078125 -1.65625 1.703125q-1.140625 0.625 -2.8125 0.625q-1.984375 0 -3.203125 -0.890625q-1.21875 -0.890625 -1.171875 -2.671875zm1.546875 -6.65625q0 2.1875 0.859375 3.1875q0.875 1.0 2.171875 1.0q1.296875 0 2.171875 -1.0q0.875 -1.0 0.875 -3.125q0 -2.03125 -0.90625 -3.0625q-0.890625 -1.03125 -2.171875 -1.03125q-1.25 0 -2.125 1.015625q-0.875 1.015625 -0.875 3.015625zm10.674194 -7.375l0 -2.15625l1.875 0l0 2.15625l-1.875 0zm0 13.109375l0 -11.0625l1.875 0l0 11.0625l-1.875 0zm11.941589 -4.046875l1.84375 0.234375q-0.296875 1.90625 -1.546875 2.984375q-1.25 1.078125 -3.0625 1.078125q-2.265625 0 -3.65625 -1.484375q-1.375 -1.484375 -1.375 -4.25q0 -1.796875 0.59375 -3.140625q0.59375 -1.34375 1.8125 -2.015625q1.21875 -0.671875 2.640625 -0.671875q1.796875 0 2.9375 0.921875q1.15625 0.90625 1.484375 2.578125l-1.828125 0.28125q-0.265625 -1.109375 -0.921875 -1.671875q-0.65625 -0.5625 -1.59375 -0.5625q-1.421875 0 -2.3125 1.015625q-0.875 1.015625 -0.875 3.203125q0 2.234375 0.84375 3.25q0.859375 1.0 2.234375 1.0q1.109375 0 1.84375 -0.671875q0.734375 -0.671875 0.9375 -2.078125zm2.6953125 0.75l1.859375 -0.296875q0.15625 1.109375 0.859375 1.703125q0.71875 0.59375 2.0 0.59375q1.296875 0 1.921875 -0.515625q0.625 -0.53125 0.625 -1.234375q0 -0.640625 -0.5625 -1.0q-0.375 -0.25 -1.90625 -0.640625q-2.0625 -0.515625 -2.859375 -0.890625q-0.796875 -0.390625 -1.21875 -1.0625q-0.40625 -0.671875 -0.40625 -1.484375q0 -0.734375 0.328125 -1.359375q0.34375 -0.640625 0.9375 -1.0625q0.4375 -0.3125 1.1875 -0.53125q0.75 -0.234375 1.625 -0.234375q1.296875 0 2.28125 0.375q0.984375 0.375 1.453125 1.015625q0.46875 0.640625 0.640625 1.71875l-1.828125 0.25q-0.125 -0.859375 -0.734375 -1.328125q-0.59375 -0.484375 -1.6875 -0.484375q-1.28125 0 -1.84375 0.421875q-0.546875 0.421875 -0.546875 1.0q0 0.359375 0.234375 0.65625q0.21875 0.296875 0.71875 0.5q0.28125 0.109375 1.65625 0.484375q1.984375 0.53125 2.765625 0.875q0.796875 0.328125 1.234375 0.984375q0.453125 0.640625 0.453125 1.59375q0 0.9375 -0.546875 1.765625q-0.546875 0.828125 -1.578125 1.28125q-1.03125 0.453125 -2.328125 0.453125q-2.15625 0 -3.296875 -0.890625q-1.125 -0.90625 -1.4375 -2.65625z" fill-rule="nonzero"/></g></svg>
\ No newline at end of file
diff --git a/doc/ug/sec_cm_dv_framework/diagram_of_sec_cm_prim.svg b/doc/ug/sec_cm_dv_framework/diagram_of_sec_cm_prim.svg
new file mode 100644
index 0000000..8fe3e2e
--- /dev/null
+++ b/doc/ug/sec_cm_dv_framework/diagram_of_sec_cm_prim.svg
@@ -0,0 +1 @@
+<svg version="1.1" viewBox="0.0 0.0 1280.0 960.0" fill="none" stroke="none" stroke-linecap="square" stroke-miterlimit="10" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg"><clipPath id="p.0"><path d="m0 0l1280.0 0l0 960.0l-1280.0 0l0 -960.0z" clip-rule="nonzero"/></clipPath><g clip-path="url(#p.0)"><path fill="#000000" fill-opacity="0.0" d="m0 0l1280.0 0l0 960.0l-1280.0 0z" fill-rule="evenodd"/><path fill="#ff9900" d="m362.41208 92.02405l466.26773 0l0 553.4173l-466.26773 0z" fill-rule="evenodd"/><path stroke="#000000" stroke-width="1.0" stroke-linejoin="round" stroke-linecap="butt" d="m362.41208 92.02405l466.26773 0l0 553.4173l-466.26773 0z" fill-rule="evenodd"/><path fill="#000000" fill-opacity="0.0" d="m483.89502 248.90814l293.88977 0l0 58.173218l-293.88977 0z" fill-rule="evenodd"/><path fill="#000000" d="m493.8794 283.67502l2.78125 -0.4375q0.234375 1.671875 1.296875 2.5625q1.078125 0.890625 3.0 0.890625q1.9375 0 2.875 -0.78125q0.9375 -0.796875 0.9375 -1.859375q0 -0.953125 -0.828125 -1.5q-0.578125 -0.375 -2.875 -0.953125q-3.09375 -0.78125 -4.296875 -1.34375q-1.1875 -0.578125 -1.8125 -1.578125q-0.609375 -1.015625 -0.609375 -2.234375q0 -1.109375 0.5 -2.046875q0.515625 -0.953125 1.390625 -1.578125q0.65625 -0.484375 1.78125 -0.8125q1.140625 -0.34375 2.4375 -0.34375q1.953125 0 3.421875 0.5625q1.484375 0.5625 2.1875 1.53125q0.703125 0.953125 0.96875 2.5625l-2.75 0.375q-0.1875 -1.28125 -1.09375 -2.0q-0.890625 -0.71875 -2.53125 -0.71875q-1.9375 0 -2.765625 0.640625q-0.828125 0.640625 -0.828125 1.5q0 0.546875 0.34375 0.984375q0.34375 0.453125 1.078125 0.75q0.421875 0.15625 2.484375 0.71875q2.984375 0.796875 4.15625 1.3125q1.1875 0.5 1.859375 1.46875q0.671875 0.96875 0.671875 2.40625q0 1.40625 -0.828125 2.65625q-0.8125 1.234375 -2.359375 1.921875q-1.546875 0.671875 -3.5 0.671875q-3.234375 0 -4.9375 -1.34375q-1.6875 -1.34375 -2.15625 -3.984375zm28.484375 -0.390625l2.90625 0.359375q-0.6875 2.546875 -2.546875 3.953125q-1.859375 1.40625 -4.75 1.40625q-3.640625 0 -5.78125 -2.234375q-2.125 -2.25 -2.125 -6.296875q0 -4.1875 2.15625 -6.5q2.15625 -2.3125 5.59375 -2.3125q3.328125 0 5.4375 2.265625q2.109375 2.265625 2.109375 6.375q0 0.25 -0.015625 0.75l-12.375 0q0.15625 2.734375 1.546875 4.1875q1.390625 1.453125 3.46875 1.453125q1.546875 0 2.640625 -0.8125q1.09375 -0.8125 1.734375 -2.59375zm-9.234375 -4.546875l9.265625 0q-0.1875 -2.09375 -1.0625 -3.140625q-1.34375 -1.625 -3.484375 -1.625q-1.9375 0 -3.265625 1.296875q-1.3125 1.296875 -1.453125 3.46875zm26.5 3.8125l2.765625 0.359375q-0.453125 2.859375 -2.328125 4.484375q-1.859375 1.609375 -4.578125 1.609375q-3.40625 0 -5.484375 -2.21875q-2.0625 -2.234375 -2.0625 -6.390625q0 -2.6875 0.890625 -4.703125q0.890625 -2.015625 2.703125 -3.015625q1.828125 -1.015625 3.96875 -1.015625q2.703125 0 4.421875 1.375q1.71875 1.359375 2.203125 3.875l-2.734375 0.421875q-0.390625 -1.671875 -1.390625 -2.515625q-0.984375 -0.84375 -2.390625 -0.84375q-2.125 0 -3.453125 1.53125q-1.328125 1.515625 -1.328125 4.8125q0 3.34375 1.28125 4.859375q1.28125 1.515625 3.34375 1.515625q1.65625 0 2.765625 -1.015625q1.109375 -1.015625 1.40625 -3.125zm2.578125 12.4375l0 -2.03125l18.640625 0l0 2.03125l-18.640625 0zm31.21875 -12.4375l2.765625 0.359375q-0.453125 2.859375 -2.328125 4.484375q-1.859375 1.609375 -4.578125 1.609375q-3.40625 0 -5.484375 -2.21875q-2.0625 -2.234375 -2.0625 -6.390625q0 -2.6875 0.890625 -4.703125q0.890625 -2.015625 2.703125 -3.015625q1.828125 -1.015625 3.96875 -1.015625q2.703125 0 4.421875 1.375q1.71875 1.359375 2.203125 3.875l-2.734375 0.421875q-0.390625 -1.671875 -1.390625 -2.515625q-0.984375 -0.84375 -2.390625 -0.84375q-2.125 0 -3.453125 1.53125q-1.328125 1.515625 -1.328125 4.8125q0 3.34375 1.28125 4.859375q1.28125 1.515625 3.34375 1.515625q1.65625 0 2.765625 -1.015625q1.109375 -1.015625 1.40625 -3.125zm5.171875 6.078125l0 -16.59375l2.515625 0l0 2.328125q0.78125 -1.21875 2.078125 -1.953125q1.296875 -0.75 2.953125 -0.75q1.84375 0 3.015625 0.765625q1.1875 0.765625 1.671875 2.140625q1.96875 -2.90625 5.125 -2.90625q2.46875 0 3.796875 1.375q1.328125 1.359375 1.328125 4.203125l0 11.390625l-2.796875 0l0 -10.453125q0 -1.6875 -0.28125 -2.421875q-0.265625 -0.75 -0.984375 -1.203125q-0.71875 -0.453125 -1.6875 -0.453125q-1.75 0 -2.90625 1.171875q-1.15625 1.15625 -1.15625 3.71875l0 9.640625l-2.8125 0l0 -10.78125q0 -1.875 -0.6875 -2.8125q-0.6875 -0.9375 -2.25 -0.9375q-1.1875 0 -2.203125 0.625q-1.0 0.625 -1.453125 1.828125q-0.453125 1.203125 -0.453125 3.46875l0 8.609375l-2.8125 0zm24.0625 6.359375l0 -2.03125l18.640625 0l0 2.03125l-18.640625 0zm20.390625 0l0 -22.953125l2.5625 0l0 2.15625q0.90625 -1.265625 2.046875 -1.890625q1.140625 -0.640625 2.765625 -0.640625q2.125 0 3.75 1.09375q1.625 1.09375 2.453125 3.09375q0.828125 1.984375 0.828125 4.359375q0 2.546875 -0.921875 4.59375q-0.90625 2.03125 -2.65625 3.125q-1.734375 1.078125 -3.65625 1.078125q-1.40625 0 -2.53125 -0.59375q-1.109375 -0.59375 -1.828125 -1.5l0 8.078125l-2.8125 0zm2.546875 -14.5625q0 3.203125 1.296875 4.734375q1.296875 1.53125 3.140625 1.53125q1.875 0 3.203125 -1.578125q1.34375 -1.59375 1.34375 -4.921875q0 -3.171875 -1.3125 -4.75q-1.296875 -1.578125 -3.109375 -1.578125q-1.796875 0 -3.1875 1.6875q-1.375 1.671875 -1.375 4.875zm15.21875 8.203125l0 -16.59375l2.53125 0l0 2.515625q0.96875 -1.765625 1.78125 -2.328125q0.828125 -0.5625 1.8125 -0.5625q1.421875 0 2.890625 0.90625l-0.96875 2.609375q-1.03125 -0.609375 -2.0625 -0.609375q-0.921875 0 -1.65625 0.5625q-0.734375 0.546875 -1.046875 1.53125q-0.46875 1.5 -0.46875 3.28125l0 8.6875l-2.8125 0zm10.703125 -19.671875l0 -3.234375l2.8125 0l0 3.234375l-2.8125 0zm0 19.671875l0 -16.59375l2.8125 0l0 16.59375l-2.8125 0zm7.09375 0l0 -16.59375l2.515625 0l0 2.328125q0.78125 -1.21875 2.078125 -1.953125q1.296875 -0.75 2.953125 -0.75q1.84375 0 3.015625 0.765625q1.1875 0.765625 1.671875 2.140625q1.96875 -2.90625 5.125 -2.90625q2.46875 0 3.796875 1.375q1.328125 1.359375 1.328125 4.203125l0 11.390625l-2.796875 0l0 -10.453125q0 -1.6875 -0.28125 -2.421875q-0.265625 -0.75 -0.984375 -1.203125q-0.71875 -0.453125 -1.6875 -0.453125q-1.75 0 -2.90625 1.171875q-1.15625 1.15625 -1.15625 3.71875l0 9.640625l-2.8125 0l0 -10.78125q0 -1.875 -0.6875 -2.8125q-0.6875 -0.9375 -2.25 -0.9375q-1.1875 0 -2.203125 0.625q-1.0 0.625 -1.453125 1.828125q-0.453125 1.203125 -0.453125 3.46875l0 8.609375l-2.8125 0z" fill-rule="nonzero"/><path fill="#000000" fill-opacity="0.0" d="m314.56955 138.44357l47.84253 0" fill-rule="evenodd"/><path stroke="#000000" stroke-width="4.0" stroke-linejoin="round" stroke-linecap="butt" d="m314.56955 138.44357l47.84253 0" fill-rule="evenodd"/><path fill="#000000" fill-opacity="0.0" d="m314.56955 210.44357l47.84253 0" fill-rule="evenodd"/><path stroke="#000000" stroke-width="4.0" stroke-linejoin="round" stroke-linecap="butt" d="m314.56955 210.44357l47.84253 0" fill-rule="evenodd"/><path fill="#000000" fill-opacity="0.0" d="m314.56955 450.44357l47.84253 0" fill-rule="evenodd"/><path stroke="#000000" stroke-width="4.0" stroke-linejoin="round" stroke-linecap="butt" d="m314.56955 450.44357l47.84253 0" fill-rule="evenodd"/><path fill="#000000" fill-opacity="0.0" d="m200.18636 79.708664l167.96849 0l0 53.32283l-167.96849 0z" fill-rule="evenodd"/><path fill="#000000" d="m210.54573 105.82304q0 -4.984375 2.671875 -7.8125q2.6875 -2.828125 6.921875 -2.828125q2.78125 0 5.0 1.328125q2.234375 1.328125 3.390625 3.703125q1.171875 2.375 1.171875 5.375q0 3.046875 -1.234375 5.453125q-1.21875 2.40625 -3.484375 3.65625q-2.25 1.234375 -4.859375 1.234375q-2.828125 0 -5.0625 -1.359375q-2.21875 -1.375 -3.375 -3.734375q-1.140625 -2.375 -1.140625 -5.015625zm2.734375 0.046875q0 3.625 1.9375 5.71875q1.953125 2.078125 4.890625 2.078125q3.0 0 4.921875 -2.109375q1.9375 -2.109375 1.9375 -5.984375q0 -2.4375 -0.828125 -4.265625q-0.8125 -1.828125 -2.40625 -2.828125q-1.59375 -1.0 -3.578125 -1.0q-2.8125 0 -4.84375 1.9375q-2.03125 1.921875 -2.03125 6.453125zm24.904297 7.515625l0.359375 2.171875q-1.046875 0.21875 -1.859375 0.21875q-1.34375 0 -2.078125 -0.421875q-0.734375 -0.421875 -1.046875 -1.109375q-0.296875 -0.6875 -0.296875 -2.90625l0 -8.359375l-1.796875 0l0 -1.90625l1.796875 0l0 -3.59375l2.453125 -1.484375l0 5.078125l2.46875 0l0 1.90625l-2.46875 0l0 8.5q0 1.046875 0.125 1.34375q0.125 0.296875 0.421875 0.484375q0.296875 0.171875 0.84375 0.171875q0.40625 0 1.078125 -0.09375zm2.4042969 2.203125l0 -20.046875l2.46875 0l0 7.1875q1.71875 -1.984375 4.34375 -1.984375q1.609375 0 2.796875 0.640625q1.1875 0.625 1.703125 1.75q0.515625 1.125 0.515625 3.25l0 9.203125l-2.453125 0l0 -9.203125q0 -1.84375 -0.8125 -2.6875q-0.796875 -0.84375 -2.25 -0.84375q-1.09375 0 -2.0625 0.578125q-0.96875 0.5625 -1.375 1.53125q-0.40625 0.96875 -0.40625 2.6875l0 7.9375l-2.46875 0zm25.50975 -4.671875l2.546875 0.3125q-0.59375 2.21875 -2.234375 3.453125q-1.625 1.234375 -4.15625 1.234375q-3.171875 0 -5.046875 -1.953125q-1.8593597 -1.96875 -1.8593597 -5.515625q0 -3.65625 1.8749847 -5.671875q1.890625 -2.03125 4.90625 -2.03125q2.90625 0 4.75 1.984375q1.84375 1.96875 1.84375 5.578125q0 0.21875 -0.015625 0.65625l-10.828125 0q0.140625 2.390625 1.359375 3.65625q1.21875 1.265625 3.03125 1.265625q1.359375 0 2.3125 -0.703125q0.953125 -0.71875 1.515625 -2.265625zm-8.078125 -3.984375l8.109375 0q-0.15625 -1.828125 -0.921875 -2.75q-1.1875 -1.421875 -3.0625 -1.421875q-1.6875 0 -2.84375 1.140625q-1.15625 1.125 -1.28125 3.03125zm13.681641 8.65625l0 -14.515625l2.21875 0l0 2.203125q0.84375 -1.546875 1.5625 -2.03125q0.71875 -0.5 1.578125 -0.5q1.25 0 2.53125 0.78125l-0.84375 2.296875q-0.90625 -0.546875 -1.796875 -0.546875q-0.8125 0 -1.453125 0.5q-0.640625 0.484375 -0.921875 1.34375q-0.40625 1.3125 -0.40625 2.859375l0 7.609375l-2.46875 0zm17.90039 0l0 -20.046875l2.65625 0l0 20.046875l-2.65625 0zm6.529297 -9.765625q0 -4.984375 2.671875 -7.8125q2.6875 -2.828125 6.921875 -2.828125q2.78125 0 5.0 1.328125q2.234375 1.328125 3.390625 3.703125q1.171875 2.375 1.171875 5.375q0 3.046875 -1.234375 5.453125q-1.21875 2.40625 -3.484375 3.65625q-2.25 1.234375 -4.859375 1.234375q-2.828125 0 -5.0625 -1.359375q-2.21875 -1.375 -3.375 -3.734375q-1.140625 -2.375 -1.140625 -5.015625zm2.734375 0.046875q0 3.625 1.9375 5.71875q1.953125 2.078125 4.890625 2.078125q3.0 0 4.921875 -2.109375q1.9375 -2.109375 1.9375 -5.984375q0 -2.4375 -0.828125 -4.265625q-0.8125 -1.828125 -2.40625 -2.828125q-1.59375 -1.0 -3.578125 -1.0q-2.8125 0 -4.84375 1.9375q-2.03125 1.921875 -2.03125 6.453125zm18.544922 5.390625l2.4375 -0.390625q0.203125 1.46875 1.140625 2.25q0.9375 0.765625 2.625 0.765625q1.6875 0 2.5 -0.6875q0.828125 -0.6875 0.828125 -1.609375q0 -0.84375 -0.71875 -1.3125q-0.515625 -0.328125 -2.515625 -0.84375q-2.71875 -0.6875 -3.765625 -1.171875q-1.03125 -0.5 -1.578125 -1.375q-0.546875 -0.890625 -0.546875 -1.96875q0 -0.96875 0.4375 -1.796875q0.453125 -0.828125 1.21875 -1.375q0.578125 -0.421875 1.5625 -0.703125q1.0 -0.296875 2.140625 -0.296875q1.703125 0 2.984375 0.5q1.296875 0.484375 1.90625 1.328125q0.625 0.828125 0.859375 2.234375l-2.40625 0.328125q-0.171875 -1.109375 -0.953125 -1.734375q-0.78125 -0.640625 -2.21875 -0.640625q-1.703125 0 -2.421875 0.5625q-0.71875 0.5625 -0.71875 1.3125q0 0.484375 0.296875 0.859375q0.296875 0.40625 0.9375 0.65625q0.375 0.140625 2.171875 0.625q2.625 0.703125 3.65625 1.15625q1.03125 0.4375 1.609375 1.28125q0.59375 0.84375 0.59375 2.109375q0 1.234375 -0.71875 2.328125q-0.71875 1.078125 -2.078125 1.671875q-1.34375 0.59375 -3.0625 0.59375q-2.828125 0 -4.3125 -1.171875q-1.484375 -1.1875 -1.890625 -3.484375z" fill-rule="nonzero"/><path fill="#000000" fill-opacity="0.0" d="m248.39633 397.12073l91.90552 0l0 53.322845l-91.90552 0z" fill-rule="evenodd"/><path fill="#000000" d="m269.17758 428.32886l2.546875 0.3125q-0.59375 2.21875 -2.234375 3.453125q-1.625 1.234375 -4.15625 1.234375q-3.171875 0 -5.046875 -1.953125q-1.859375 -1.96875 -1.859375 -5.515625q0 -3.65625 1.875 -5.671875q1.890625 -2.03125 4.90625 -2.03125q2.90625 0 4.75 1.984375q1.84375 1.96875 1.84375 5.578125q0 0.21875 -0.015625 0.65625l-10.828125 0q0.140625 2.390625 1.359375 3.65625q1.21875 1.265625 3.03125 1.265625q1.359375 0 2.3125 -0.703125q0.953125 -0.71875 1.515625 -2.265625zm-8.078125 -3.984375l8.109375 0q-0.15625 -1.828125 -0.921875 -2.75q-1.1875 -1.421875 -3.0625 -1.421875q-1.6875 0 -2.84375 1.140625q-1.15625 1.125 -1.28125 3.03125zm13.681641 8.65625l0 -14.515625l2.21875 0l0 2.203125q0.84375 -1.546875 1.5625 -2.03125q0.71875 -0.5 1.578125 -0.5q1.25 0 2.53125 0.78125l-0.84375 2.296875q-0.90625 -0.546875 -1.796875 -0.546875q-0.8125 0 -1.453125 0.5q-0.640625 0.484375 -0.921875 1.34375q-0.40625 1.3125 -0.40625 2.859375l0 7.609375l-2.46875 0zm9.324219 0l0 -14.515625l2.21875 0l0 2.203125q0.84375 -1.546875 1.5625 -2.03125q0.71875 -0.5 1.578125 -0.5q1.25 0 2.53125 0.78125l-0.84375 2.296875q-0.90625 -0.546875 -1.796875 -0.546875q-0.8125 0 -1.453125 0.5q-0.640625 0.484375 -0.921875 1.34375q-0.40625 1.3125 -0.40625 2.859375l0 7.609375l-2.46875 0zm8.449219 -7.265625q0 -4.03125 2.234375 -5.96875q1.875 -1.609375 4.5625 -1.609375q3.0 0 4.890625 1.96875q1.90625 1.953125 1.90625 5.40625q0 2.8125 -0.84375 4.421875q-0.828125 1.59375 -2.4375 2.484375q-1.609375 0.890625 -3.515625 0.890625q-3.046875 0 -4.921875 -1.953125q-1.875 -1.953125 -1.875 -5.640625zm2.515625 0q0 2.796875 1.21875 4.1875q1.21875 1.375 3.0625 1.375q1.84375 0 3.046875 -1.390625q1.21875 -1.390625 1.21875 -4.25q0 -2.6875 -1.21875 -4.078125q-1.21875 -1.390625 -3.046875 -1.390625q-1.84375 0 -3.0625 1.390625q-1.21875 1.375 -1.21875 4.15625zm13.931641 7.265625l0 -14.515625l2.21875 0l0 2.203125q0.84375 -1.546875 1.5625 -2.03125q0.71875 -0.5 1.578125 -0.5q1.25 0 2.53125 0.78125l-0.84375 2.296875q-0.90625 -0.546875 -1.796875 -0.546875q-0.8125 0 -1.453125 0.5q-0.640625 0.484375 -0.921875 1.34375q-0.40625 1.3125 -0.40625 2.859375l0 7.609375l-2.46875 0z" fill-rule="nonzero"/><path fill="#000000" fill-opacity="0.0" d="m320.10498 163.82939l116.346466 0l0 42.015747l-116.346466 0z" fill-rule="evenodd"/><path fill="#000000" d="m343.3706 190.74939l0 -2.5625l2.5625 0l0 2.5625l-2.5625 0zm-6.21875 0l0 -2.5625l2.5625 0l0 2.5625l-2.5625 0zm-6.21875 0l0 -2.5625l2.5625 0l0 2.5625l-2.5625 0z" fill-rule="nonzero"/><path fill="#000000" fill-opacity="0.0" d="m314.56955 153.70079l47.84253 0" fill-rule="evenodd"/><path stroke="#000000" stroke-width="4.0" stroke-linejoin="round" stroke-linecap="butt" d="m314.56955 153.70079l47.84253 0" fill-rule="evenodd"/></g></svg>
\ No newline at end of file
diff --git a/doc/ug/sec_cm_dv_framework/index.md b/doc/ug/sec_cm_dv_framework/index.md
new file mode 100644
index 0000000..1a66de7
--- /dev/null
+++ b/doc/ug/sec_cm_dv_framework/index.md
@@ -0,0 +1,130 @@
+---
+title: "Security Countermeasure Verification Framework"
+---
+
+## Purpose
+In a security chip, there are many hardening security countermeasures implemented in security blocks.
+Hardened security countermeasures are used to detect attacks by embedding integrity checks.
+Usually it can’t be triggered by software or toggling the pins on the chip.
+So, this may need to be tested one by one via forcing internal design signals on the security countermeasure related logic, which mimics attackers to flip the circuit.
+This kind of verification is needed but the effort could be tremendous.
+The work can be significantly reduced by using a unified verification framework.
+
+## Standardized Design Countermeasure Primitive
+Each countermeasure is implemented as a primitive - an RTL design building block written in SystemVerilog.
+The standardization of how these building blocks are designed paves the way for automated verification.
+
+There are 2 requirements that are needed in this primitive.
+1. Create a standard primitive for each kind of countermeasure, which can be reused across all blocks in the chip.
+Each primitive has an error indicator as an IO (or an internal signal if other blocks don’t need to connect with this error indicator).
+Once the design detects an attack, the error will be set.
+
+![diagram_of_sec_cm_prim](diagram_of_sec_cm_prim.svg)
+
+2. Once the error is set, the block should report a fatal alert or trigger unmasked interrupt to the system.
+As shown in the diagram below, there could be some additional logics which are triggered when error occurs but not unified across the blocks.
+For example, the block may contain custom logics which cancelling the operation when error occurs.
+![diagram_of_block_that_contains_sec_cm_primitive](diagram_of_block_that_contains_sec_cm_primitive.svg)
+
+## Embedded Common Checks In The Design
+At the top of each IP, an assertion check should be added to ensure that the fatal alert will be triggered once error is set.
+In the countermeasure primitive, there is another check to ensure that each instance of the countermeasure primitive must contain this assertion check.
+These 2 things can be accomplished by using the SystemVerilog macro.
+
+Firstly, define a macro in the countermeasure primitive and declare a logic “assert_connected” which will be assigned when the macro is invoked correctly.
+If the macro isn’t used for any instance of countermeasure primitive, the assertion will fail.
+
+```systemverilog
+`define ASSERT_PRIM_COUNT_ERROR_TRIGGER_ALERT(NAME_, PRIM_HIER_, ALERT_, MAX_CYCLES_ = 5) \
+  NAME_: assert property (@(posedge clk)) disable iff(!rst_n) \
+                ($rose(PRIM_HIER_.err_o) |-> ##[1:MAX_CYCLES_] $rose(ALERT_.alert_p)) \
+  `ifdef SIM_OR_FPV \
+  assign PRIM_HIER_.unused_assert_connected = 1'b1; \
+  `endif
+
+module prim_count();
+  ...
+  // This logic that will be assign to one, when user adds macro
+  // ASSERT_PRIM_COUNT_ERROR_TRIGGER_ALERT to check the error with alert, in case that prim_count
+  // is used in design without adding this assertion check.
+  `ifdef SIM_OR_FPV \
+  logic assert_connected;
+
+  initial #0 assert(assert_connected === 1'b1);
+  `endif
+endmodule
+```
+
+Secondly, invoke the assertion macro for each instance of the countermeasure primitive in the IP top.
+
+```systemverilog
+module a_ip_top();
+  ...
+  // Invoke the assertion macro for each instance of the countermeasure primitive
+  `ASSERT_PRIM_COUNT_ERROR_TRIGGER_ALERT(CtrlCntAlertCheck_A, u_ctrl.u_cnt, alert_tx_o[0])
+
+  `ASSERT_PRIM_COUNT_ERROR_TRIGGER_ALERT(FsmCntAlertCheck_A, u_fsm.u_cnt, alert_tx_o[0])
+
+endmodule
+
+```
+
+## Verification Framework For The Standardized Design Countermeasures
+
+This verification framework involves three different steps, which are all needed in order to acheive the completed verification for countermeasures.
+
+### Primitive-Level Verification
+Use FPV or a simple simulation based testbench to verify the correctness of the error indicator as well as other functionality in the primitive.
+This unit-level testing eases the verification work at the higher level.
+Coverage closure for this primitive at higher-level can be eliminated.
+
+### FPV Proves The Embedded Assertion
+Use FPV to prove that the embedded assertion is true (fatal alert is triggered once error is set).
+This mathematically proves that an error unconditionally leads to the fatal alert.
+
+### Block-Level Verification With A Unified Semi-Automated Framework.
+Triggering the fatal alert is usually not the only outcome of detecting an attack.
+Some other behavior may occur as well, such as wiping all the internal secrets or invaliding new commands, after detecting a fault.
+However, there are usually many security primitives that are embedded in different places of the security chip.
+It could take tremendous effort to manually test them one by one.
+The following steps are the key implementation of this framework, which uses some automation to reduce the effort.
+
+1. Create a SystemVerilog interface with a proxy class (refer to this [article](https://blog.verificationgentleman.com/2015/08/31/sv-if-polymorphism-extendability.html) for implementation) for each countermeasure primitive and bind the interface to the primitive module.
+All the proxy classes extend from the same base class.
+
+2. In the interface, implement an “initial” block that stores the handle of the proxy class to a queue in a package.
+This queue is declared as the base type of the proxy class. All the handles of various proxy classes are automatically stored at time 0 in the simulation.
+
+```systemverilog
+interface prim_count_if;
+
+  // this class has the access to any signals in the interface and interface can connect to the signals in the primitive
+  class prim_count_if_proxy extends sec_cm_pkg::sec_cm_base_if_proxy; // allow extendability
+    virtual task inject_fault();
+       // use uvm_hdl_force/deposit to do fault injection
+    endtask
+  endclass
+
+  prim_count_if_proxy if_proxy;
+  initial begin
+    if_proxy = new("if_proxy");
+    if_proxy.sec_cm_type = sec_cm_pkg::SecCmPrimCount;
+    if_proxy.prim_path = $sformatf("%m");
+    sec_cm_pkg::sec_cm_if_proxy_q.push_back(if_proxy);
+  end
+```
+
+3. In the base sequence, create a loop to test each instance of the countermeasure primitive. In each loop, “inject_fault” task from the proxy class will be invoked, which is followed by a “check_resp” task. The block owner can extend this sequence and add additional checks for non-standardized behavior based on the proxy_class info such as the hierarchy of the primitive instance.
+
+```systemverilog
+foreach (sec_cm_pkg::sec_cm_if_proxy_q[i]) begin
+    sec_cm_pkg::sec_cm_base_if_proxy if_proxy = sec_cm_pkg::sec_cm_if_proxy_q[i];
+    inject_fault(if_proxy));  // call if_proxy.inject_fault
+    check_resp(if_proxy);
+end
+```
+This automation essentially relies on standardizing design countermeasure primitives.
+It uses the primitive types to anchor all the instances of countermeasure primitives and store all the handles that associate to the interface of the countermeasure primitive in a global location.
+The framework loops over all the handles and provides a common sequence to check common behavior as well as callback functions that allow users to test any non-standard behavior.
+
+Refer to cip_lib [document]({{< relref "hw/dv/sv/cip_lib/doc#security-verification-in-cip_lib" >}}) at the section - "Security Verification for common countermeasure primitives" for the steps to enable this test in block-level testbench.