SecurityLessons
☰ Course map
Courses
01 Information Security Fundamentals 6 lessons planned
01M1 · Lab 1: Build the Core Lab — Workstations, AD & the AttackerPlanned02Security Fundamentals: Threat, Vulnerability, Risk & the CVE/CVSS EnginePlanned03Vulnerability Prioritization: KEV, EPSS, SSVC & BOD 26-04Planned04Zero Trust Architecture & Defense in Depth (Cisco SAFE)Planned05Security Intelligence: Authoring, Sharing & ConsumptionPlanned06Phishing & Social Engineering: Controls That Protect HumansPlanned
02 Common Threats 5 lessons planned
01Common Threats: On-Premises, Hybrid & Cloud — Malware, DoS/DDoS, Breaches & Credential CompromisePlanned02OWASP Top Ten in Practice: SQL Injection & XSS, Live from ATK-KALI-01Planned03Vulnerability Classes Beyond the Web: Weak/Hardcoded Passwords, Missing Ciphers, Buffer Overflow, Path Traversal & CSRFPlanned04AI/LLM Security: Prompt Injection, System Prompt Leakage, Embedding Weaknesses & AI Supply ChainPlanned05Man-in-the-Middle: ARP Spoofing Packet WalkPlanned
03 Cryptography & PKI 6 lessons planned
01Cryptography Foundations: Hashing, Encryption & PKIPlanned02Stand Up the Enterprise CA on AD-01 & Issue CertificatesPlanned03The SSL/TLS Handshake: Packet WalkPlanned04Post-Quantum Cryptography: NIST Algorithms, Hybrid Key Exchange & MigrationPlanned05QUIC & MASQUE: Where TLS Is GoingPlanned06IPsec: AH, ESP, IKE, PSK vs Certificates & NAT TraversalPlanned
04 ASA Stateful Firewall 3 live · 16 planned
01M4 · Lab 1: Power On the ASA PerimeterPlanned02Stateful FirewallsPlanned03ASA: Deployment TypesPlanned04ASA: Security ContextsPlanned 05ASA: Security Levels⚑ 15m 06ASA: DMZ Interface & Verification⚑Planned07ASA: Objects & Object Groups⚑Planned08ASA: Service Groups & Access Rules⚑Planned 09ASA: NAT Concepts and Rule Evaluation⚑ 19m 10ASA: NAT — Static NAT and Dynamic PAT⚑Planned11ASA: NAT — Identity Rules, Verification and Troubleshooting⚑Planned12ASA: Interface ACLs⚑Planned13ASA: Global ACLs⚑Planned14ASA: Advanced Access Policies — Modular Policy Framework (MPF)⚑Planned 15ASA: High Availability (HA) 22m 16M4 · Lab 5: ASA Perimeter Policy⚑Planned
05 Firepower NGFW 16 lessons planned
01M5 · Lab 1: Power On FTD & FMCPlanned02Firepower: DeploymentsPlanned03Management Models: Single vs Multidevice, In-Band vs Out-of-Band, On-Premises vs Cloud (Cisco Security Cloud Control)Planned04Firepower: Packet Processing & PoliciesPlanned05Firepower: ObjectsPlanned06Firepower: Policies — Access Control (ACP)Planned07Firepower: Policies — AVC & Application ControlPlanned08Firepower: Policies — URL FilteringPlanned09FTD: NAT Concepts and Rule EvaluationPlanned10FTD: NAT — Dynamic PAT and Static PublicationPlanned11FTD: NAT — Identity Rules, Verification and TroubleshootingPlanned12Firepower: Policies — PrefilterPlanned13Firepower: Security Intelligence (SI)Planned14Firepower: Policies — Network DiscoveryPlanned15Firepower: Policies — IPSPlanned16Firepower: Policies — Malware & FilePlanned
06 Endpoint Security 7 lessons planned
01M6 · Lab 1: Power On the Secure Endpoint Console & WorkstationsPlanned02EPP vs EDR — and Why Endpoint Security at AllPlanned03Endpoint Protection & Detection: Secure Endpoint, Secure Client & Malware AnalyticsPlanned04Configure Antimalware Protection: Policies, Outbreak Control & QuarantinesPlanned05Triage Secure Endpoint: Interpreting Malware Detection EventsPlanned06Endpoint Hygiene: MDM, Asset Inventory & Posture AssessmentPlanned07Configure Email Security with Cisco Secure Email Threat DefensePlanned
07 Secure Network Access (ISE) 12 lessons planned
01M7 · Lab 1: Power On ISE, the Access Layer & WirelessPlanned02Identity Management: Guest, Profiling, Posture & BYODPlanned03Configure & Troubleshoot TACACS+ Device AdministrationPlanned04Configure & Troubleshoot RADIUS Network AccessPlanned05802.1X, EAP & RADIUS Flows: Packet WalkPlanned06Configure 802.1X, MAB & WebAuth with ISEPlanned07Authorization: dACLs & Dynamic VLAN AssignmentPlanned08Change of Authorization (CoA): Triggers, Packet Flow & VerificationPlanned09Configure Profiling, Guest Services & BYODPlanned10Configure Posture Assessment & Device CompliancePlanned11Cisco Duo in Zero Trust: MFA, Device Trust & Adaptive Access PoliciesPlanned12Cisco Duo SSO, the Authentication Proxy & Cisco Identity IntelligencePlanned
08 Infrastructure Security 6 lessons planned
01Layer 2 Attacks & Defenses: Port Security, DHCP Snooping, DAI & Storm ControlPlanned02Configure Segmentation: VLANs, SGTs & Private VLANsPlanned03Device Hardening with CIS Benchmarks: Cisco Secure Firewall (FTD) & IOS XEPlanned04Secure Management Access: SNMPv3, NetConf, RestConf & APIsPlanned05Secure Log Transport: Syslog HardeningPlanned06Trusted Time: Authenticated NTPPlanned
09 Telemetry & Visibility 6 lessons planned
01M9 · Lab 1: Power On the Telemetry StackPlanned02Security Monitoring & Telemetry Technologies: NetFlow, Logs & BeyondPlanned03Configure Flexible NetFlow Export: Telemetry Hands-OnPlanned04Network Visibility & Enforcement: Telemetry, AI/ML Analytics & Cisco XDRPlanned05Splunk for Security Operations: SIEM, SOAR, Orchestration & AutomationPlanned06Exfiltration & Its Detection: DNS Tunneling, HTTPS, Email, FTP/SSH/SCP/SFTP, ICMP, Messenger/IRC, NTP & Cloud StoragePlanned
10 VPNs: Site-to-Site 6 lessons planned
01M10 · Lab 1: Power On the Branch SitePlanned02Site-to-Site VPN Options & Design: sVTI, IPsec, DMVPN, FlexVPN & GETVPNPlanned03IKEv2 Tunnel Establishment: Packet WalkPlanned04Configure IOS Site-to-Site IPsec with sVTIPlanned05Configure Site-to-Site VPN: FTD to Branch RouterPlanned06Troubleshoot VPN Tunnel Establishment on FTD: Debugs That MatterPlanned
11 VPNs: Remote Access 3 lessons planned
01Remote Access VPN & Cisco Secure Client ArchitecturePlanned02Configure Remote Access VPN: FTD & Cisco Secure ClientPlanned03Verify & Troubleshoot RA VPN: TLS/DTLS Session Establishment & DebugsPlanned
12 Secure Service Edge (Cisco Secure Access) 7 lessons planned
01M12 · Lab 1: Secure Access Tenant & Branch Component AvailabilityPlanned02SSE & SASE: From Umbrella to Cisco Secure AccessPlanned03Configure Secure Internet Access: DNS Forwarding, Branch Egress, Web Policies, Destination Lists & ReportingPlanned04Configure Secure Private Access: ZTNA to Internal AppsPlanned05Configure DLP & AI Guardrails for Secure Internet AccessPlanned06Interpret Secure Access Investigate: Scores & IndicatorsPlanned07SDN & SD-WAN: Architecture, North- & South-Bound APIs, Securing the Overlay⚑Planned
13 Cloud Security 7 lessons planned
01M13 · Lab 1: Power On the Cloud Services SimulatorPlanned02Cloud Shared Responsibility ModelsPlanned03Cloud Service & Deployment Models: NIST 800-145, Cloud Types & CASB SelectionPlanned04Selecting Cloud Security Capabilities: Deployment Models, Frameworks & Policy ManagementPlanned05Application & Workload Security: eBPF-Based ProtectionPlanned06Cloud Network, Application & Data Security: Multicloud Defense & Secure WorkloadPlanned07Configure Splunk to Ingest Cloud Logging & Monitoring DataPlanned
14 DevSecOps & Security Programmability 3 lessons planned
01DevSecOps: CI/CD, Containers, IaC Security & Secure Software DevelopmentPlanned02Secure a CI/CD Pipeline: Container & IaC Scanning Hands-OnPlanned03Interpret Python Scripts Against Cisco Security Appliance APIsPlanned
SCOR-350-701  ›  ASA Stateful Firewall  ›  ASA: NAT Concepts and Rule Evaluation

Concept Lesson · ASA Stateful Firewall

ASA: NAT Concepts and Rule Evaluation

Free Lesson All-Access unlocks every lesson in every course — $489/yr, with $647 of founders bonuses while the window is open, and it carries The Next Year Promise. Reserve founders bonuses →

SCOR Outside the current exam blueprint — kept for its teaching value.
Exam Objective — SCOR 350-701 v2.0, no dedicated objective (this lesson’s v1.x home was objective 2.1)

Walking out of this lesson, you can:

  • Tell object NAT from manual NAT — what each can match and where it lands in the rule table
  • Predict which NAT rule wins — walking the section order the way the ASA does
  • Choose the right translation type — static, dynamic, PAT, or identity — for a given job

This model — rule sections, first match, identity exemptions — is exactly what FTD: NAT Concepts and Rule Evaluation assumes on Secure Firewall.

Licensing

NAT needs no separate license or feature entitlement. It is base ASA functionality; the platform or ASAv still needs its normal licensing.


Overview

Network Address Translation (NAT) rewrites addresses in a packet’s header as it crosses the firewall, and the ASA decides which rewrite applies by walking a rule table in a fixed order. When that order surprises you, nothing announces it: a site-to-site VPN dies the day someone adds a translation rule, or a published web server answers nothing from the internet. When an unintended rule matches successfully, there is no error to see: the ASA reports the flow it translated, because it cannot know the rule it chose was not the one you meant. Naming the rule that won takes show nat detail or packet-tracer. This lesson gives you the vocabulary, the two rule types, the section order, and the translation patterns — the models that make ASA NAT predictable before you ever touch the CLI. The next two lessons build and verify three of those patterns on the module lab’s firewall using exactly these models.


Terminology: Local vs. Global Addresses

Cisco’s four NAT terms are two words — Local and Global — applied to a host on either side of the firewall. Local is the address as seen from the inside network; Global is the address as seen from the outside. TechNote 4606 is the source document, and the graphic below puts all four on one topology:

NAT terminology on one topology: an employee and a mainframe on the inside network, a web server and an admin host on the far side of the internet, with the firewall's terminology table listing each host's Inside Local, Inside Global, Outside Global, and Outside Local addresses

Capture note: the addressing in this terminology graphic and the edge-design graphic further down is illustrative — read 192.168.1.0/24 as “the inside network,” 209.5.6.x as “the firewall’s public side,” and 100.64.1.x as “hosts out on the internet” — illustrative stand-ins, not addressing you’d deploy (100.64.1.x in particular is RFC 6598 carrier-grade NAT space, not internet space). The pattern board’s mapped side, 203.0.113.x, is documentation space. The lab lessons that follow use the lab’s own addressing.

TermThe address of…As seen fromWhich is the real address?
Inside Localan inside host, as its owner assigned itinsideReal
Inside Globalthat same inside host, after translationoutsideMapped
Outside Localan outside host, as inside hosts see itinsideMapped, if translated
Outside Globalthat same outside host, as its owner assigned itoutsideReal
Which two of the four terms name real addresses?

Inside Local and Outside Global. A “real = Local” shortcut is only half true — it holds for the inside pair and fails for the outside pair. The reliable question is perspective: whose address, seen from where?

The graphic draws two flows. Flow 1 is the employee browsing WEB-01: the employee’s real 192.168.1.10 (Inside Local) leaves the firewall as 209.5.6.103, the firewall’s own outside interface address (Inside Global). That is interface PAT, and it is why the mainframe’s row shows the same Inside Global: every inside host that goes out shares the interface address. Flow 2 is the admin reaching the mainframe. The admin host out on the internet owns a real 100.64.1.x address (Outside Global). A rule translates that address as the admin’s traffic enters the firewall, so the mainframe sees it as 192.168.1.200 (Outside Local). The mainframe is why the rule exists: it has no Layer 3 gateway and only answers hosts on its own subnet (it can ARP, not route), so the admin host has to look like one of them.

Outside Local is the address inside hosts use for an outside host. It equals Outside Global unless a rule translates that outside host’s address. That’s why the web server’s row in the graphic shows the same address in both columns, while the remapped admin host’s row differs. (Publishing your own inside server translates the inside pair, not this one.)

The CLI uses a second vocabulary for the same split, and you’ll type it constantly in the next two lessons: the real address is what the host actually has; the mapped address is what NAT substitutes. Per the 9.23 NAT chapter, the real address is “the address that is defined on the host, before it is translated.”


Rule Types: Object NAT vs. Manual NAT

There are exactly two ways to write an ASA NAT rule, and the choice decides what you can match and where the rule lands in the table:

  • Object NAT (also called network object NAT, or Auto NAT) — the translation is a property of one network object: this object, crossing from this interface to that one, translates like so. It pairs that one object with its mapped address or pool and never with a destination; the table below gives the direction details.
  • Manual NAT (also called twice NAT) — a standalone nat command that can match source and destination together and can translate both in one rule — hence “twice.” You decide where it sits.
AspectObject NATManual NAT
DefinedInside an object network blockAs a standalone nat command
MatchesThe object’s address — never a source–destination pairSource and destination together (and ports)
TranslatesThe object’s address, real to mapped, with replies translated backSource and/or destination
Lands inAmong the object rules, sorted by the deviceBefore every object rule by default, after them with after-auto
Ordering controlNone — the device sorts themFull — the rule sits where you put it
Use it forServer publications, shared-address translation — most rulesVPN exemptions, overlapping networks, destination-dependent policy

Three guidelines from the 9.23 NAT chapter prevent most object NAT surprises:

  • One rule per object. “You can only define a single NAT rule for a given object” — to change an object’s translation, edit or remove the rule it already has. Need two translations for one IP? The guide’s own answer: create two objects with different names and the same address.
  • No group objects. Object NAT hangs off a single network object; you cannot attach a NAT rule to an object-group. Manual NAT rules can reference groups.
  • after-auto belongs to manual NAT only. The keyword exists in the standalone nat command to push a manual rule after every object rule. Inside an object network block it is not valid syntax — a widely copied wrong example, and the parser rejects it.
Key Insight

Start with object NAT and reach for manual NAT only when the destination matters or you must control ordering. Every manual rule you add is ordering you own forever.


Rule Order: Three Sections, First Match

Beyond the card’s two sort keys for Section 2, the 9.23 NAT chapter adds two tie-breakers: equal address counts sort by the lower IP address, and the same address sorts by object name, alphabetically. So renaming an object can move its rule.

Here is the order running twice on the same source host, with one manual rule in Section 1 and two object rules in Section 2:

· text
Packet: inside host → branch subnet across the VPN
  Section 1   manual: "inside → branch: do not translate"      MATCH → stop
  Section 2   (not evaluated)
  Section 3   (not evaluated)

Packet: inside host → the internet
  Section 1   manual: "inside → branch: do not translate"      no match
  Section 2   object: the DMZ server's rule                    no match
              object: the inside network's rule                MATCH → stop
  Section 3   (not evaluated)
Common Mistake
  • Symptom: An object NAT rule works for months, then a manual rule for an unrelated project deploys and the object rule is silently ignored.
  • Root Cause: The manual rule landed in Section 1, evaluated before all of Section 2, and its match was broad enough to catch the object rule’s traffic.
  • Fix: Narrow Section 1 rules with a destination qualifier so everything else falls through to Section 2 — and read show nat hit counters to see which rule is actually winning.
Key Insight

First match is your debugging tool, not just a hazard. Traffic translating unexpectedly? Walk the table the way the ASA does — Section 1 top to bottom, then Section 2, then Section 3 — and the first matching rule you find is the answer. show nat detail shows the order and the per-rule hit counters that prove it.


Design Choice: Which Translation Pattern

Rule type decides how you write the rule; translation type decides what the rule does to the addresses. There are five patterns: static NAT, dynamic NAT, dynamic PAT, static PAT and identity NAT. The first four differ in three ways, and the board below puts them side by side: how long a mapping lasts, who may start a connection through it, and what gets rewritten.

Four translation patterns in four columns, each answering the same three questions, with illustrative addresses. Static NAT: one real address, one mapped, for example 192.168.1.20 is 203.0.113.20; a permanent mapping; the outside may start connections too; the address only is rewritten; used to publish a whole host. Dynamic NAT: hosts borrow pool addresses, one host per address; held until idle, then returned; only the real host starts; address only; used for applications that break under PAT. Dynamic PAT: many hosts, one address, told apart by port; held until idle, then returned; only the real host starts; address and TCP/UDP port rewritten; workstations to the internet. Static PAT: one address and port, fixed, for example 192.168.1.20:8888 is 203.0.113.21:8888; permanent; the outside may start too; address and one port; publish one service. A bar underneath reads: static publishes, dynamic shares, and identity NAT, the fifth pattern, exempts.

Static NAT is a permanent one-to-one mapping, and the translation applies in both directions from the moment it’s configured (routing and access rules still decide whether traffic is allowed). That two-way property is why, when NAT publishes a server, inbound connections need a static rule: static NAT, or static PAT for a single service. (Manual static rules can be made unidirectional, which the guide calls “mainly useful for testing purposes.”) Each translated host has its own mapped address, permanently.

Dynamic NAT assigns each inside host a whole address from a pool, first come, first served, held until the translation idles out — the same host reuses its entry across connections while it stays active. No ports are rewritten, so one pool address serves one host at a time — which suits applications that break under port translation or policies that want one mapped address per host.

Dynamic PAT (Port Address Translation) translates TCP and UDP source ports as well as addresses, so hundreds of hosts share one address or a small pool, told apart by port; for ICMP, the ASA translates the query identifier instead. The original source port is kept where it can be and reassigned where it can’t.

Static PAT is its permanent sibling: it maps one address, protocol and port to another, so you publish a single service instead of a whole host. TCP and UDP on the same port number are separate mappings.

One timing fact applies to the dynamic patterns: changing a rule does not move existing dynamic translations or established connections onto the new mapping. They keep their old state until they expire or you clear them from the translation table (clear xlate), and clearing an entry interrupts the connections using it.

Identity NAT is the last pattern. Remember the no-match rule from the section order: the 9.23 NAT chapter says “If you do not configure NAT for a given set of traffic, that traffic will not be translated, but will have all of the security policies applied as normal.” So identity NAT is not needed just to leave traffic untranslated; it is for when an explicit rule must match that traffic, most commonly to carve it out of a broader rule:

You will build exactly that rule in the lab in ASA: NAT — Identity Rules, Verification and Troubleshooting, in Section 1, above the PAT rule the next lesson builds.


Design Choice: Objects Do the Heavy Lifting

Every rule in the next two lessons leans on the network objects you built in ASA: Objects & Object Groups — object NAT literally lives inside them. The design payoff shows up at the edge: in the graphic below, the entire perimeter needs just two NAT rules — one dynamic PAT rule sending the inside network out, one static rule publishing the DMZ mail server — while object groups keep the companion access rules readable by bundling the outside web and DNS servers each rule refers to.

Two NAT rules cover the edge. An ASA in the centre. Rule 1, dynamic PAT written (inside,outside): the inside network 192.168.1.0/24 goes out through the ASA to the outside servers, sharing one address. Rule 2, static NAT written (dmz,outside): traffic from the outside comes in through the ASA to SMTP-01 in the DMZ at 192.168.2.25, which the rule publishes. A note says WEB and DNS are object groups for the access rules, not the NAT rules.

One boundary to respect from the guidelines above: the NAT rules themselves attach to single objects (object NAT takes no groups) — the groups earn their keep in the access rules and in manual NAT matching. Two rules, a handful of objects, and the whole design fits on one screen. That’s the target state for the lab you’re about to build.


🔬 See It in the Lab

You don’t have to take the section model on trust. This is show nat detail on the module lab’s ASA-EDGE-01 once the NAT lessons are finished (the prompt reads /pri/act because the module ends as a failover pair). The command also prints a Section 0 of implicit rules the ASA writes for its own management SSH; they are cut here:

· configuration
ASA-EDGE-01/pri/act# show nat detail
...
Manual NAT Policies (Section 1)
1 (inside) to (outside) source static HQ-INSIDE HQ-INSIDE  destination static BRANCH-NET BRANCH-NET no-proxy-arp route-lookup
    translate_hits = 0, untranslate_hits = 0
    Source - Origin: 10.10.1.0/24, Translated: 10.10.1.0/24
    Destination - Origin: 10.20.1.0/24, Translated: 10.20.1.0/24

Auto NAT Policies (Section 2)
1 (dmz) to (outside) source static SRV-WEB-01 198.51.100.111 
    translate_hits = 0, untranslate_hits = 6
    Source - Origin: 172.16.1.10/32, Translated: 198.51.100.111/32
2 (inside) to (outside) source dynamic INSIDE-NET pat-pool PAT-POOL
    translate_hits = 6, untranslate_hits = 0
    Source - Origin: 10.10.1.0/24, Translated (PAT): 198.51.100.100-198.51.100.110

Every model from this lesson is on the screen:

  • Section 1 holds the one manual rule: an identity exemption (HQ-INSIDE to itself) that applies only toward BRANCH-NET. It sits above everything else because it is manual, which is the whole point of an exemption. Its two trailing keywords are exemption hygiene: no-proxy-arp stops the ASA answering ARP for the rule’s mapped addresses, and route-lookup picks the egress interface from the routing table instead of the rule. ASA: NAT — Identity Rules, Verification and Troubleshooting explains both when you build the rule.
  • Section 2 is sorted by the device: the static rule publishing SRV-WEB-01 comes before the dynamic PAT rule, as the sort order says, regardless of which was typed first.
  • The static rule names two addresses, and access rules use only one. Since ASA 8.3, an access rule for traffic to a translated host names the real address: the permit for the web server matches 172.16.1.10, never 198.51.100.111, because the ASA un-translates the destination before the access check. ASA: Global ACLs shows that phase in a packet-tracer run.
  • The hit counters tell you direction. The static rule has 6 untranslate_hits (traffic to the published address, translated back to the real address inbound) and no translate_hits; the PAT rule has the opposite. The counters are cumulative, so to attribute one test flow to a rule, read them before and after it, or run packet-tracer.

Key Takeaways

Four models cover ASA NAT, and you now have all four:

  • Perspective settles the vocabulary — Local is the view from inside, Global the view from outside, and the real address is Local for inside hosts, Global for outside hosts
  • Rule type settles expressiveness — object NAT for most rules, manual NAT when the destination matters, one rule per object, no groups in object NAT
  • Section order settles conflicts — 1, then 2, then 3, first match ends it, Section 2 sorts itself, and section numbers are table positions, not policy timing
  • No-match settles the default — the packet continues untranslated, which is why identity NAT is a deliberate tool, most often an exemption, never an obligation

Up next: you haven’t opened a CLI session yet, and that’s deliberate. ASA: NAT — Static NAT and Dynamic PAT puts these four models to work on ASA-EDGE-01: it publishes the DMZ web server and builds the PAT pool that gets your workstations online, verifying each from both sides of the wire.

ASA-EDGE-01/pri/act# ... Manual 1 translate_hits Source Destination Auto 2

Knowledge Check

No grade, no timer. Wrong picks turn coral — change your answer until everything's green.

1 · Your object NAT worked for months, then stopped after a colleague added a manual NAT rule. Why?

Section order is the law: S1 manual (the default landing spot) → S2 auto → S3 manual flagged after-auto, first match takes the packet. A rule that preempted your object NAT is a Section 1 rule.

2 · In ASA NAT vocabulary, the 'local' address is—

Local is a perspective, not a promise of realness — the real address is the Local one for the inside pair but the Global one for the outside pair. Perspective, not privacy.

3 · A packet matches no NAT rule at all. What happens to it?

NAT is optional. Unmatched traffic keeps its addresses and crosses under every other policy as normal — which is why identity NAT is a deliberate tool, most often an exemption, never an obligation.

You just proved the method works — the rest of the mountain is waiting. All-Access unlocks every lesson in every course — $489/yr, with $647 of founders bonuses while the window is open.

Reserve founders rate →
📚 Official Documentation — every source behind this page · verified 30 Aug 2026
02Use Local and Global NAT Terms (TechNote 4606)
Revision Updated 2022-12-09 · accessed 20 Aug 2026