ÿØÿà JFIF    ÿþ >CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality ÿÛ C     p!ranha?
Server IP : 172.67.171.101  /  Your IP : 216.73.216.123
Web Server : Apache
System : Linux server1.morocco-tours.com 3.10.0-1127.19.1.el7.x86_64 #1 SMP Tue Aug 25 17:23:54 UTC 2020 x86_64
User : zagoradraa ( 1005)
PHP Version : 7.4.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /bin/

Upload File :
Curr3nt_D!r [ Writeable ] D0cum3nt_r0Ot [ Writeable ]

 
Command :
Current File : /bin/firewall-cmd
#!/usr/bin/python2 -Es
# -*- coding: utf-8 -*-
#
# Copyright (C) 2009-2016 Red Hat, Inc.
#
# Authors:
# Thomas Woerner <twoerner@redhat.com>
# Jiri Popelka <jpopelka@redhat.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
#

from gi.repository import GObject
import sys
sys.modules['gobject'] = GObject

import argparse
import os

from firewall.client import FirewallClient, FirewallClientIPSetSettings, \
    FirewallClientZoneSettings, FirewallClientServiceSettings, \
    FirewallClientIcmpTypeSettings, FirewallClientHelperSettings
from firewall.errors import FirewallError
from firewall import errors
from firewall.functions import joinArgs, splitArgs
from firewall.core.fw_nm import nm_is_imported, \
    nm_get_connection_of_interface, nm_get_zone_of_connection, \
    nm_set_zone_of_connection, nm_get_interfaces_in_zone
from firewall.core.io.zone import zone_reader
from firewall.core.io.service import service_reader
from firewall.core.io.ipset import ipset_reader
from firewall.core.io.icmptype import icmptype_reader
from firewall.core.io.helper import helper_reader
from firewall.command import FirewallCommand

def __usage():
    sys.stdout.write("""
Usage: firewall-cmd [OPTIONS...]

General Options
  -h, --help           Prints a short help text and exists
  -V, --version        Print the version string of firewalld
  -q, --quiet          Do not print status messages

Status Options
  --state              Return and print firewalld state
  --reload             Reload firewall and keep state information
  --complete-reload    Reload firewall and lose state information
  --runtime-to-permanent
                       Create permanent from runtime configuration
  --check-config       Check permanent configuration for errors

Log Denied Options
  --get-log-denied     Print the log denied value
  --set-log-denied=<value>
                       Set log denied value

Automatic Helpers Options
  --get-automatic-helpers
                       Print the automatic helpers value
  --set-automatic-helpers=<value>
                       Set automatic helpers value

Permanent Options
  --permanent          Set an option permanently
                       Usable for options marked with [P]

Zone Options
  --get-default-zone   Print default zone for connections and interfaces
  --set-default-zone=<zone>
                       Set default zone
  --get-active-zones   Print currently active zones
  --get-zones          Print predefined zones [P]
  --get-services       Print predefined services [P]
  --get-icmptypes      Print predefined icmptypes [P]
  --get-zone-of-interface=<interface>
                       Print name of the zone the interface is bound to [P]
  --get-zone-of-source=<source>[/<mask>]|<MAC>|ipset:<ipset>
                       Print name of the zone the source is bound to [P]
  --list-all-zones     List everything added for or enabled in all zones [P]
  --new-zone=<zone>    Add a new zone [P only]
  --new-zone-from-file=<filename> [--name=<zone>]
                       Add a new zone from file with optional name [P only]
  --delete-zone=<zone> Delete an existing zone [P only]
  --load-zone-defaults=<zone>
                       Load zone default settings [P only] [Z]
  --zone=<zone>        Use this zone to set or query options, else default zone
                       Usable for options marked with [Z]
  --get-target         Get the zone target [P only] [Z]
  --set-target=<target>
                       Set the zone target [P only] [Z]
  --info-zone=<zone>   Print information about a zone
  --path-zone=<zone>   Print file path of a zone [P only]

IPSet Options
  --get-ipset-types    Print the supported ipset types
  --new-ipset=<ipset> --type=<ipset type> [--option=<key>[=<value>]]..
                       Add a new ipset [P only]
  --new-ipset-from-file=<filename> [--name=<ipset>]
                       Add a new ipset from file with optional name [P only]
  --delete-ipset=<ipset>
                       Delete an existing ipset [P only]
  --load-ipset-defaults=<ipset>
                       Load ipset default settings [P only]
  --info-ipset=<ipset> Print information about an ipset
  --path-ipset=<ipset> Print file path of an ipset [P only]
  --get-ipsets         Print predefined ipsets
  --ipset=<ipset> --set-description=<description>
                       Set new description to ipset [P only]
  --ipset=<ipset> --get-description
                       Print description for ipset [P only]
  --ipset=<ipset> --set-short=<description>
                       Set new short description to ipset [P only]
  --ipset=<ipset> --get-short
                       Print short description for ipset [P only]
  --ipset=<ipset> --add-entry=<entry>
                       Add a new entry to an ipset [P]
  --ipset=<ipset> --remove-entry=<entry>
                       Remove an entry from an ipset [P]
  --ipset=<ipset> --query-entry=<entry>
                       Return whether ipset has an entry [P]
  --ipset=<ipset> --get-entries
                       List entries of an ipset [P]
  --ipset=<ipset> --add-entries-from-file=<entry>
                       Add a new entries to an ipset [P]
  --ipset=<ipset> --remove-entries-from-file=<entry>
                       Remove entries from an ipset [P]

IcmpType Options
  --new-icmptype=<icmptype>
                       Add a new icmptype [P only]
  --new-icmptype-from-file=<filename> [--name=<icmptype>]
                       Add a new icmptype from file with optional name [P only]
  --delete-icmptype=<icmptype>
                       Delete an existing icmptype [P only]
  --load-icmptype-defaults=<icmptype>
                       Load icmptype default settings [P only]
  --info-icmptype=<icmptype>
                       Print information about an icmptype
  --path-icmptype=<icmptype>
                       Print file path of an icmptype [P only]
  --icmptype=<icmptype> --set-description=<description>
                       Set new description to icmptype [P only]
  --icmptype=<icmptype> --get-description
                       Print description for icmptype [P only]
  --icmptype=<icmptype> --set-short=<description>
                       Set new short description to icmptype [P only]
  --icmptype=<icmptype> --get-short
                       Print short description for icmptype [P only]
  --icmptype=<icmptype> --add-destination=<ipv>
                       Enable destination for ipv in icmptype [P only]
  --icmptype=<icmptype> --remove-destination=<ipv>
                       Disable destination for ipv in icmptype [P only]
  --icmptype=<icmptype> --query-destination=<ipv>
                       Return whether destination ipv is enabled in icmptype [P only]
  --icmptype=<icmptype> --get-destinations
                       List destinations in icmptype [P only]

Service Options
  --new-service=<service>
                       Add a new service [P only]
  --new-service-from-file=<filename> [--name=<service>]
                       Add a new service from file with optional name [P only]
  --delete-service=<service>
                       Delete an existing service [P only]
  --load-service-defaults=<service>
                       Load icmptype default settings [P only]
  --info-service=<service>
                       Print information about a service
  --path-service=<service>
                       Print file path of a service [P only]
  --service=<service> --set-description=<description>
                       Set new description to service [P only]
  --service=<service> --get-description
                       Print description for service [P only]
  --service=<service> --set-short=<description>
                       Set new short description to service [P only]
  --service=<service> --get-short
                       Print short description for service [P only]
  --service=<service> --add-port=<portid>[-<portid>]/<protocol>
                       Add a new port to service [P only]
  --service=<service> --remove-port=<portid>[-<portid>]/<protocol>
                       Remove a port from service [P only]
  --service=<service> --query-port=<portid>[-<portid>]/<protocol>
                       Return whether the port has been added for service [P only]
  --service=<service> --get-ports
                       List ports of service [P only]
  --service=<service> --add-protocol=<protocol>
                       Add a new protocol to service [P only]
  --service=<service> --remove-protocol=<protocol>
                       Remove a protocol from service [P only]
  --service=<service> --query-protocol=<protocol>
                       Return whether the protocol has been added for service [P only]
  --service=<service> --get-protocols
                       List protocols of service [P only]
  --service=<service> --add-source-port=<portid>[-<portid>]/<protocol>
                       Add a new source port to service [P only]
  --service=<service> --remove-source-port=<portid>[-<portid>]/<protocol>
                       Remove a source port from service [P only]
  --service=<service> --query-source-port=<portid>[-<portid>]/<protocol>
                       Return whether the source port has been added for service [P only]
  --service=<service> --get-source-ports
                       List source ports of service [P only]
  --service=<service> --add-module=<module>
                       Add a new module to service [P only]
  --service=<service> --remove-module=<module>
                       Remove a module from service [P only]
  --service=<service> --query-module=<module>
                       Return whether the module has been added for service [P only]
  --service=<service> --get-modules
                       List modules of service [P only]
  --service=<service> --set-destination=<ipv>:<address>[/<mask>]
                       Set destination for ipv to address in service [P only]
  --service=<service> --remove-destination=<ipv>
                       Disable destination for ipv i service [P only]
  --service=<service> --query-destination=<ipv>:<address>[/<mask>]
                       Return whether destination ipv is set for service [P only]
  --service=<service> --get-destinations
                       List destinations in service [P only]

Options to Adapt and Query Zones
  --list-all           List everything added for or enabled in a zone [P] [Z]
  --list-services      List services added for a zone [P] [Z]
  --timeout=<timeval>  Enable an option for timeval time, where timeval is
                       a number followed by one of letters 's' or 'm' or 'h'
                       Usable for options marked with [T]
  --set-description=<description>
                       Set new description to zone [P only] [Z]
  --get-description    Print description for zone [P only] [Z]
  --set-short=<description>
                       Set new short description to zone [P only] [Z]
  --get-short          Print short description for zone [P only] [Z]
  --add-service=<service>
                       Add a service for a zone [P] [Z] [T]
  --remove-service=<service>
                       Remove a service from a zone [P] [Z]
  --query-service=<service>
                       Return whether service has been added for a zone [P] [Z]
  --list-ports         List ports added for a zone [P] [Z]
  --add-port=<portid>[-<portid>]/<protocol>
                       Add the port for a zone [P] [Z] [T]
  --remove-port=<portid>[-<portid>]/<protocol>
                       Remove the port from a zone [P] [Z]
  --query-port=<portid>[-<portid>]/<protocol>
                       Return whether the port has been added for zone [P] [Z]
  --list-protocols     List protocols added for a zone [P] [Z]
  --add-protocol=<protocol>
                       Add the protocol for a zone [P] [Z] [T]
  --remove-protocol=<protocol>
                       Remove the protocol from a zone [P] [Z]
  --query-protocol=<protocol>
                       Return whether the protocol has been added for zone [P] [Z]
  --list-source-ports  List source ports added for a zone [P] [Z]
  --add-source-port=<portid>[-<portid>]/<protocol>
                       Add the source port for a zone [P] [Z] [T]
  --remove-source-port=<portid>[-<portid>]/<protocol>
                       Remove the source port from a zone [P] [Z]
  --query-source-port=<portid>[-<portid>]/<protocol>
                       Return whether the source port has been added for zone [P] [Z]
  --list-icmp-blocks   List Internet ICMP type blocks added for a zone [P] [Z]
  --add-icmp-block=<icmptype>
                       Add an ICMP block for a zone [P] [Z] [T]
  --remove-icmp-block=<icmptype>
                       Remove the ICMP block from a zone [P] [Z]
  --query-icmp-block=<icmptype>
                       Return whether an ICMP block has been added for a zone
                       [P] [Z]
  --add-icmp-block-inversion
                       Enable inversion of icmp blocks for a zone [P] [Z]
  --remove-icmp-block-inversion
                       Disable inversion of icmp blocks for a zone [P] [Z]
  --query-icmp-block-inversion
                       Return whether inversion of icmp blocks has been enabled
                       for a zone [P] [Z]
  --list-forward-ports List IPv4 forward ports added for a zone [P] [Z]
  --add-forward-port=port=<portid>[-<portid>]:proto=<protocol>[:toport=<portid>[-<portid>]][:toaddr=<address>[/<mask>]]
                       Add the IPv4 forward port for a zone [P] [Z] [T]
  --remove-forward-port=port=<portid>[-<portid>]:proto=<protocol>[:toport=<portid>[-<portid>]][:toaddr=<address>[/<mask>]]
                       Remove the IPv4 forward port from a zone [P] [Z]
  --query-forward-port=port=<portid>[-<portid>]:proto=<protocol>[:toport=<portid>[-<portid>]][:toaddr=<address>[/<mask>]]
                       Return whether the IPv4 forward port has been added for
                       a zone [P] [Z]
  --add-masquerade     Enable IPv4 masquerade for a zone [P] [Z] [T]
  --remove-masquerade  Disable IPv4 masquerade for a zone [P] [Z]
  --query-masquerade   Return whether IPv4 masquerading has been enabled for a
                       zone [P] [Z]
  --list-rich-rules    List rich language rules added for a zone [P] [Z]
  --add-rich-rule=<rule>
                       Add rich language rule 'rule' for a zone [P] [Z] [T]
  --remove-rich-rule=<rule>
                       Remove rich language rule 'rule' from a zone [P] [Z]
  --query-rich-rule=<rule>
                       Return whether a rich language rule 'rule' has been
                       added for a zone [P] [Z]

Options to Handle Bindings of Interfaces
  --list-interfaces    List interfaces that are bound to a zone [P] [Z]
  --add-interface=<interface>
                       Bind the <interface> to a zone [P] [Z]
  --change-interface=<interface>
                       Change zone the <interface> is bound to [P] [Z]
  --query-interface=<interface>
                       Query whether <interface> is bound to a zone [P] [Z]
  --remove-interface=<interface>
                       Remove binding of <interface> from a zone [P] [Z]

Options to Handle Bindings of Sources
  --list-sources       List sources that are bound to a zone [P] [Z]
  --add-source=<source>[/<mask>]|<MAC>|ipset:<ipset>
                       Bind the source to a zone [P] [Z]
  --change-source=<source>[/<mask>]|<MAC>|ipset:<ipset>
                       Change zone the source is bound to [Z]
  --query-source=<source>[/<mask>]|<MAC>|ipset:<ipset>
                       Query whether the source is bound to a zone [P] [Z]
  --remove-source=<source>[/<mask>]|<MAC>|ipset:<ipset>
                       Remove binding of the source from a zone [P] [Z]

Helper Options
  --new-helper=<helper> --module=<module> [--family=<family>]
                       Add a new helper [P only]
  --new-helper-from-file=<filename> [--name=<helper>]
                       Add a new helper from file with optional name [P only]
  --delete-helper=<helper>
                       Delete an existing helper [P only]
  --load-helper-defaults=<helper>
                       Load helper default settings [P only]
  --info-helper=<helper> Print information about an helper
  --path-helper=<helper> Print file path of an helper [P only]
  --get-helpers         Print predefined helpers
  --helper=<helper> --set-description=<description>
                       Set new description to helper [P only]
  --helper=<helper> --get-description
                       Print description for helper [P only]
  --helper=<helper> --set-short=<description>
                       Set new short description to helper [P only]
  --helper=<helper> --get-short
                       Print short description for helper [P only]
  --helper=<helper> --add-port=<portid>[-<portid>]/<protocol>
                       Add a new port to helper [P only]
  --helper=<helper> --remove-port=<portid>[-<portid>]/<protocol>
                       Remove a port from helper [P only]
  --helper=<helper> --query-port=<portid>[-<portid>]/<protocol>
                       Return whether the port has been added for helper [P only]
  --helper=<helper> --get-ports
                       List ports of helper [P only]
  --helper=<helper> --set-module=<module>
                       Set module to helper [P only]
  --helper=<helper> --get-module
                       Get module from helper [P only]
  --helper=<helper> --set-family={ipv4|ipv6|}
                       Set family for helper [P only]
  --helper=<helper> --get-family
                       Get module from helper [P only]

Direct Options
  --direct             First option for all direct options
  --get-all-chains
                       Get all chains [P]
  --get-chains {ipv4|ipv6|eb} <table>
                       Get all chains added to the table [P]
  --add-chain {ipv4|ipv6|eb} <table> <chain>
                       Add a new chain to the table [P]
  --remove-chain {ipv4|ipv6|eb} <table> <chain>
                       Remove the chain from the table [P]
  --query-chain {ipv4|ipv6|eb} <table> <chain>
                       Return whether the chain has been added to the table [P]
  --get-all-rules
                       Get all rules [P]
  --get-rules {ipv4|ipv6|eb} <table> <chain>
                       Get all rules added to chain in table [P]
  --add-rule {ipv4|ipv6|eb} <table> <chain> <priority> <arg>...
                       Add rule to chain in table [P]
  --remove-rule {ipv4|ipv6|eb} <table> <chain> <priority> <arg>...
                       Remove rule with priority from chain in table [P]
  --remove-rules {ipv4|ipv6|eb} <table> <chain>
                       Remove rules from chain in table [P]
  --query-rule {ipv4|ipv6|eb} <table> <chain> <priority> <arg>...
                       Return whether a rule with priority has been added to
                       chain in table [P]
  --passthrough {ipv4|ipv6|eb} <arg>...
                       Pass a command through (untracked by firewalld)
  --get-all-passthroughs
                       Get all tracked passthrough rules [P]
  --get-passthroughs {ipv4|ipv6|eb} <arg>...
                       Get tracked passthrough rules [P]
  --add-passthrough {ipv4|ipv6|eb} <arg>...
                       Add a new tracked passthrough rule [P]
  --remove-passthrough {ipv4|ipv6|eb} <arg>...
                       Remove a tracked passthrough rule [P]
  --query-passthrough {ipv4|ipv6|eb} <arg>...
                       Return whether the tracked passthrough rule has been
                       added [P]

Lockdown Options
  --lockdown-on        Enable lockdown.
  --lockdown-off       Disable lockdown.
  --query-lockdown     Query whether lockdown is enabled

Lockdown Whitelist Options
  --list-lockdown-whitelist-commands
                       List all command lines that are on the whitelist [P]
  --add-lockdown-whitelist-command=<command>
                       Add the command to the whitelist [P]
  --remove-lockdown-whitelist-command=<command>
                       Remove the command from the whitelist [P]
  --query-lockdown-whitelist-command=<command>
                       Query whether the command is on the whitelist [P]
  --list-lockdown-whitelist-contexts
                       List all contexts that are on the whitelist [P]
  --add-lockdown-whitelist-context=<context>
                       Add the context context to the whitelist [P]
  --remove-lockdown-whitelist-context=<context>
                       Remove the context from the whitelist [P]
  --query-lockdown-whitelist-context=<context>
                       Query whether the context is on the whitelist [P]
  --list-lockdown-whitelist-uids
                       List all user ids that are on the whitelist [P]
  --add-lockdown-whitelist-uid=<uid>
                       Add the user id uid to the whitelist [P]
  --remove-lockdown-whitelist-uid=<uid>
                       Remove the user id uid from the whitelist [P]
  --query-lockdown-whitelist-uid=<uid>
                       Query whether the user id uid is on the whitelist [P]
  --list-lockdown-whitelist-users
                       List all user names that are on the whitelist [P]
  --add-lockdown-whitelist-user=<user>
                       Add the user name user to the whitelist [P]
  --remove-lockdown-whitelist-user=<user>
                       Remove the user name user from the whitelist [P]
  --query-lockdown-whitelist-user=<user>
                       Query whether the user name user is on the whitelist [P]

Panic Options
  --panic-on           Enable panic mode
  --panic-off          Disable panic mode
  --query-panic        Query whether panic mode is enabled

""")

def try_set_zone_of_interface(_zone, interface):
    if nm_is_imported():
        try:
            connection = nm_get_connection_of_interface(interface)
        except Exception:
            pass
        else:
            if connection is not None:
                if _zone == nm_get_zone_of_connection(connection):
                    if _zone == "":
                        cmd.print_warning("The interface is under control of NetworkManager and already bound to the default zone")
                    else:
                        cmd.print_warning("The interface is under control of NetworkManager and already bound to '%s'" % _zone)
                if _zone == "":
                    cmd.print_msg("The interface is under control of NetworkManager, setting zone to default.")
                else:
                    cmd.print_msg("The interface is under control of NetworkManager, setting zone to '%s'." % _zone)
                nm_set_zone_of_connection(_zone, connection)
                return True
    return False

def try_get_zone_of_interface(interface):
    if nm_is_imported():
        try:
            connection = nm_get_connection_of_interface(interface)
        except Exception:
            pass
        else:
            if connection is not None:
                return nm_get_zone_of_connection(connection)
    return False

def try_nm_get_interfaces_in_zone(zone):
    if nm_is_imported():
        try:
            return nm_get_interfaces_in_zone(zone)
        except Exception:
            pass
    return []

parser = argparse.ArgumentParser(usage="see firewall-cmd man page",
                                 add_help=False)

parser_group_output = parser.add_mutually_exclusive_group()
parser_group_output.add_argument("-v", "--verbose", action="store_true")
parser_group_output.add_argument("-q", "--quiet", action="store_true")

parser_group_standalone = parser.add_mutually_exclusive_group()
parser_group_standalone.add_argument("-h", "--help",
                                     action="store_true")
parser_group_standalone.add_argument("-V", "--version", action="store_true")
parser_group_standalone.add_argument("--state", action="store_true")
parser_group_standalone.add_argument("--reload", action="store_true")
parser_group_standalone.add_argument("--complete-reload", action="store_true")
parser_group_standalone.add_argument("--runtime-to-permanent",
                                     action="store_true")
parser_group_standalone.add_argument("--check-config", action="store_true")
parser_group_standalone.add_argument("--get-ipset-types", action="store_true")
parser_group_standalone.add_argument("--get-log-denied", action="store_true")
parser_group_standalone.add_argument("--set-log-denied", metavar="<value>")
parser_group_standalone.add_argument("--get-automatic-helpers", action="store_true")
parser_group_standalone.add_argument("--set-automatic-helpers", metavar="<value>")
parser_group_standalone.add_argument("--panic-on", action="store_true")
parser_group_standalone.add_argument("--panic-off", action="store_true")
parser_group_standalone.add_argument("--query-panic", action="store_true")
parser_group_standalone.add_argument("--lockdown-on", action="store_true")
parser_group_standalone.add_argument("--lockdown-off", action="store_true")
parser_group_standalone.add_argument("--query-lockdown", action="store_true")

parser_group_standalone.add_argument("--get-default-zone", action="store_true")
parser_group_standalone.add_argument("--set-default-zone", metavar="<zone>")
parser_group_standalone.add_argument("--get-zones", action="store_true")
parser_group_standalone.add_argument("--get-services", action="store_true")
parser_group_standalone.add_argument("--get-icmptypes", action="store_true")
parser_group_standalone.add_argument("--get-active-zones", action="store_true")
parser_group_standalone.add_argument("--get-zone-of-interface", metavar="<iface>", action='append')
parser_group_standalone.add_argument("--get-zone-of-source", metavar="<source>", action='append')
parser_group_standalone.add_argument("--list-all-zones", action="store_true")

parser_group_standalone.add_argument("--info-zone", metavar="<zone>")
parser_group_standalone.add_argument("--info-service", metavar="<service>")
parser_group_standalone.add_argument("--info-icmptype", metavar="<icmptype>")
parser_group_standalone.add_argument("--info-ipset", metavar="<ipset>")
parser_group_standalone.add_argument("--info-helper", metavar="<helper>")

parser_group_config = parser.add_mutually_exclusive_group()
parser_group_config.add_argument("--new-icmptype", metavar="<icmptype>")
parser_group_config.add_argument("--new-icmptype-from-file", metavar="<filename>")
parser_group_config.add_argument("--delete-icmptype", metavar="<icmptype>")
parser_group_config.add_argument("--load-icmptype-defaults",
                                 metavar="<icmptype>")
parser_group_config.add_argument("--new-service", metavar="<service>")
parser_group_config.add_argument("--new-service-from-file", metavar="<filename>")
parser_group_config.add_argument("--delete-service", metavar="<service>")
parser_group_config.add_argument("--load-service-defaults", metavar="<service>")
parser_group_config.add_argument("--new-zone", metavar="<zone>")
parser_group_config.add_argument("--new-zone-from-file", metavar="<filename>")
parser_group_config.add_argument("--delete-zone", metavar="<zone>")
parser_group_config.add_argument("--load-zone-defaults", metavar="<zone>")
parser_group_config.add_argument("--new-ipset", metavar="<ipset>")
parser_group_config.add_argument("--new-ipset-from-file", metavar="<filename>")
parser_group_config.add_argument("--delete-ipset", metavar="<ipset>")
parser_group_config.add_argument("--load-ipset-defaults", metavar="<ipset>")
parser_group_config.add_argument("--new-helper", metavar="<helper>")
parser_group_config.add_argument("--new-helper-from-file", metavar="<filename>")
parser_group_config.add_argument("--delete-helper", metavar="<helper>")
parser_group_config.add_argument("--load-helper-defaults", metavar="<helper>")

parser_group_config.add_argument("--path-zone", metavar="<zone>")
parser_group_config.add_argument("--path-service", metavar="<service>")
parser_group_config.add_argument("--path-icmptype", metavar="<icmptype>")
parser_group_config.add_argument("--path-ipset", metavar="<ipset>")
parser_group_config.add_argument("--path-helper", metavar="<helper>")

parser.add_argument("--name", default="", metavar="<name>")

parser_group_lockdown_whitelist = parser.add_mutually_exclusive_group()
parser_group_lockdown_whitelist.add_argument("--list-lockdown-whitelist-commands", action="store_true")
parser_group_lockdown_whitelist.add_argument("--add-lockdown-whitelist-command", metavar="<command>", action='append')
parser_group_lockdown_whitelist.add_argument("--remove-lockdown-whitelist-command", metavar="<command>", action='append')
parser_group_lockdown_whitelist.add_argument("--query-lockdown-whitelist-command", metavar="<command>", action='append')

parser_group_lockdown_whitelist.add_argument("--list-lockdown-whitelist-contexts", action="store_true")
parser_group_lockdown_whitelist.add_argument("--add-lockdown-whitelist-context", metavar="<context>", action='append')
parser_group_lockdown_whitelist.add_argument("--remove-lockdown-whitelist-context", metavar="<context>", action='append')
parser_group_lockdown_whitelist.add_argument("--query-lockdown-whitelist-context", metavar="<context>", action='append')

parser_group_lockdown_whitelist.add_argument("--list-lockdown-whitelist-uids", action="store_true")
parser_group_lockdown_whitelist.add_argument("--add-lockdown-whitelist-uid", metavar="<uid>", type=int, action='append')
parser_group_lockdown_whitelist.add_argument("--remove-lockdown-whitelist-uid", metavar="<uid>", type=int, action='append')
parser_group_lockdown_whitelist.add_argument("--query-lockdown-whitelist-uid", metavar="<uid>", type=int, action='append')

parser_group_lockdown_whitelist.add_argument("--list-lockdown-whitelist-users", action="store_true")
parser_group_lockdown_whitelist.add_argument("--add-lockdown-whitelist-user", metavar="<user>", action='append')
parser_group_lockdown_whitelist.add_argument("--remove-lockdown-whitelist-user", metavar="<user>", action='append')
parser_group_lockdown_whitelist.add_argument("--query-lockdown-whitelist-user", metavar="<user>", action='append')

parser.add_argument("--permanent", action="store_true")
parser.add_argument("--zone", default="", metavar="<zone>")
parser.add_argument("--timeout", default="0", metavar="<seconds>")

parser_group_zone = parser.add_mutually_exclusive_group()
parser_group_zone.add_argument("--add-interface", metavar="<iface>", action='append')
parser_group_zone.add_argument("--remove-interface", metavar="<iface>", action='append')
parser_group_zone.add_argument("--query-interface", metavar="<iface>", action='append')
parser_group_zone.add_argument("--change-interface", "--change-zone", metavar="<iface>", action='append')
parser_group_zone.add_argument("--list-interfaces", action="store_true")
parser_group_zone.add_argument("--add-source", metavar="<source>", action='append')
parser_group_zone.add_argument("--remove-source", metavar="<source>", action='append')
parser_group_zone.add_argument("--query-source", metavar="<source>", action='append')
parser_group_zone.add_argument("--change-source", metavar="<source>", action='append')
parser_group_zone.add_argument("--list-sources", action="store_true")
parser_group_zone.add_argument("--add-rich-rule", metavar="<rule>", action='append')
parser_group_zone.add_argument("--remove-rich-rule", metavar="<rule>", action='append')
parser_group_zone.add_argument("--query-rich-rule", metavar="<rule>", action='append')
parser_group_zone.add_argument("--add-service", metavar="<service>", action='append')
parser_group_zone.add_argument("--remove-service", metavar="<zone>", action='append')
parser_group_zone.add_argument("--query-service", metavar="<zone>", action='append')
parser_group_zone.add_argument("--add-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--remove-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--query-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--add-protocol", metavar="<protocol>", action='append')
parser_group_zone.add_argument("--remove-protocol", metavar="<protocol>", action='append')
parser_group_zone.add_argument("--query-protocol", metavar="<protocol>", action='append')
parser_group_zone.add_argument("--add-source-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--remove-source-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--query-source-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--add-masquerade", action="store_true")
parser_group_zone.add_argument("--remove-masquerade", action="store_true")
parser_group_zone.add_argument("--query-masquerade", action="store_true")
parser_group_zone.add_argument("--add-icmp-block", metavar="<icmptype>", action='append')
parser_group_zone.add_argument("--remove-icmp-block", metavar="<icmptype>", action='append')
parser_group_zone.add_argument("--query-icmp-block", metavar="<icmptype>", action='append')
parser_group_zone.add_argument("--add-icmp-block-inversion", action="store_true")
parser_group_zone.add_argument("--remove-icmp-block-inversion", action="store_true")
parser_group_zone.add_argument("--query-icmp-block-inversion", action="store_true")
parser_group_zone.add_argument("--add-forward-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--remove-forward-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--query-forward-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--list-rich-rules", action="store_true")
parser_group_zone.add_argument("--list-services", action="store_true")
parser_group_zone.add_argument("--list-ports", action="store_true")
parser_group_zone.add_argument("--list-protocols", action="store_true")
parser_group_zone.add_argument("--list-icmp-blocks", action="store_true")
parser_group_zone.add_argument("--list-forward-ports", action="store_true")
parser_group_zone.add_argument("--list-source-ports", action="store_true")
parser_group_zone.add_argument("--list-all", action="store_true")
parser_group_zone.add_argument("--get-target", action="store_true")
parser_group_zone.add_argument("--set-target", metavar="<target>")

parser.add_argument("--option", metavar="<key>[=<value>]", action='append')
parser.add_argument("--type", metavar="<ipsettype>")
parser.add_argument("--ipset", metavar="<ipset>")

parser_ipset = parser.add_mutually_exclusive_group()
#parser_ipset.add_argument("--add-option", metavar="<key>[=<value>]")
#parser_ipset.add_argument("--remove-option", metavar="<key>[=<value>]")
#parser_ipset.add_argument("--query-option", metavar="<key>[=<value>]")
#parser_ipset.add_argument("--get-options", action="store_true")

parser_ipset.add_argument("--get-ipsets", action="store_true")
parser_ipset.add_argument("--add-entry", metavar="<entry>", action='append')
parser_ipset.add_argument("--remove-entry", metavar="<entry>", action='append')
parser_ipset.add_argument("--query-entry", metavar="<entry>", action='append')
parser_ipset.add_argument("--get-entries", action="store_true")
parser_ipset.add_argument("--add-entries-from-file", metavar="<filename>", action='append')
parser_ipset.add_argument("--remove-entries-from-file", metavar="<filename>", action='append')

parser.add_argument("--icmptype", metavar="<icmptype>")

parser_icmptype = parser.add_mutually_exclusive_group()
parser_icmptype.add_argument("--add-destination", metavar="<ipv>", action='append')
parser_icmptype.add_argument("--remove-destination", metavar="<ipv>", action='append')
parser_icmptype.add_argument("--query-destination", metavar="<ipv>", action='append')
parser_icmptype.add_argument("--get-destinations", action="store_true")

parser.add_argument("--service", metavar="<service>")

parser_service = parser.add_mutually_exclusive_group()
parser_service.add_argument("--get-ports", action="store_true")
parser_service.add_argument("--get-source-ports", action="store_true")
parser_service.add_argument("--get-protocols", action="store_true")

parser_service.add_argument("--add-module", metavar="<module>", action='append')
parser_service.add_argument("--remove-module", metavar="<module>", action='append')
parser_service.add_argument("--query-module", metavar="<module>", action='append')
parser_service.add_argument("--get-modules", action="store_true")

parser_service.add_argument("--set-destination", metavar="<destination>", action='append')
parser_service.add_argument("--get-destination", action="store_true")

parser_service.add_argument("--set-description", metavar="<description>")
parser_service.add_argument("--get-description", action="store_true")

parser_service.add_argument("--set-short", metavar="<description>")
parser_service.add_argument("--get-short", action="store_true")

parser.add_argument("--helper", metavar="<helper>")
parser.add_argument("--family", metavar="<family>")
parser.add_argument("--module", metavar="<module>")

parser_helper = parser.add_mutually_exclusive_group()
#parser_helper.add_argument("--get-ports", action="store_true")
parser_helper.add_argument("--get-helpers", action="store_true")
parser_helper.add_argument("--set-module", metavar="<module>")
parser_helper.add_argument("--get-module", action="store_true")
#parser_helper.add_argument("--query-module", metavar="<module>")
parser_helper.add_argument("--set-family", metavar="<family>|''", nargs="*")
parser_helper.add_argument("--get-family", action="store_true")

parser.add_argument("--direct", action="store_true")

# not possible to have sequences of options here
parser_direct = parser.add_mutually_exclusive_group()
parser_direct.add_argument("--passthrough", nargs=argparse.REMAINDER,
                           metavar=("{ ipv4 | ipv6 | eb }", "<args>"))
parser_direct.add_argument("--add-passthrough", nargs=argparse.REMAINDER,
                           metavar=("{ ipv4 | ipv6 | eb }", "<args>"))
parser_direct.add_argument("--remove-passthrough", nargs=argparse.REMAINDER,
                           metavar=("{ ipv4 | ipv6 | eb }", "<args>"))
parser_direct.add_argument("--query-passthrough", nargs=argparse.REMAINDER,
                           metavar=("{ ipv4 | ipv6 | eb }", "<args>"))
parser_direct.add_argument("--get-passthroughs", nargs=1,
                           metavar=("{ ipv4 | ipv6 | eb }"))
parser_direct.add_argument("--get-all-passthroughs", action="store_true")
parser_direct.add_argument("--add-chain", nargs=3,
                           metavar=("{ ipv4 | ipv6 | eb }", "<table>", "<chain>"))
parser_direct.add_argument("--remove-chain", nargs=3,
                           metavar=("{ ipv4 | ipv6 | eb }", "<table>", "<chain>"))
parser_direct.add_argument("--query-chain", nargs=3,
                           metavar=("{ ipv4 | ipv6 | eb }", "<table>", "<chain>"))
parser_direct.add_argument("--get-all-chains", action="store_true")
parser_direct.add_argument("--get-chains", nargs=2,
                           metavar=("{ ipv4 | ipv6 | eb }", "<table>"))
parser_direct.add_argument("--add-rule", nargs=argparse.REMAINDER,
                           metavar=("{ ipv4 | ipv6 | eb }", "<table> <chain> <priority> <args>"))
parser_direct.add_argument("--remove-rule", nargs=argparse.REMAINDER,
                           metavar=("{ ipv4 | ipv6 | eb }", "<table> <chain> <priority> <args>"))
parser_direct.add_argument("--remove-rules", nargs=3,
                           metavar=("{ ipv4 | ipv6 | eb }", "<table> <chain>"))
parser_direct.add_argument("--query-rule", nargs=argparse.REMAINDER,
                           metavar=("{ ipv4 | ipv6 | eb }", "<table> <chain> <priority> <args>"))
parser_direct.add_argument("--get-rules", nargs=3,
                           metavar=("{ ipv4 | ipv6 | eb }", "<table>", "<chain>"))
parser_direct.add_argument("--get-all-rules", action="store_true")

##############################################################################

args = sys.argv[1:]

if len(sys.argv) > 1:
    i = -1
    if '--passthrough' in args:
        i = args.index('--passthrough') + 1
    elif '--add-passthrough' in args:
        i = args.index('--add-passthrough') + 1
    elif '--remove-passthrough' in args:
        i = args.index('--remove-passthrough') + 1
    elif '--query-passthrough' in args:
        i = args.index('--query-passthrough') + 1
    elif '--add-rule' in args:
        i = args.index('--add-rule') + 4
    elif '--remove-rule' in args:
        i = args.index('--remove-rule') + 4
    elif '--query-rule' in args:
        i = args.index('--query-rule') + 4
    # join <args> into one argument to prevent parser from parsing each iptables
    # option, because they can conflict with firewall-cmd options
    # # e.g. --delete (iptables) and --delete-* (firewall-cmd)
    if (i > -1) and (i < len(args) - 1):
        aux_args = args[:]
        args = aux_args[:i+1] # all but not <args>
        args.append(joinArgs(aux_args[i+1:])) # add <args> as one arg

a = parser.parse_args(args)

options_standalone = a.help or a.version or \
    a.state or a.reload or a.complete_reload or a.runtime_to_permanent or \
    a.panic_on or a.panic_off or a.query_panic or \
    a.lockdown_on or a.lockdown_off or a.query_lockdown or \
    a.get_default_zone or a.set_default_zone or \
    a.get_active_zones or a.get_ipset_types or \
    a.get_log_denied or a.set_log_denied or \
    a.get_automatic_helpers or a.set_automatic_helpers or a.check_config

options_desc_xml_file = a.set_description or a.get_description or \
                        a.set_short or a.get_short

options_lockdown_whitelist = \
    a.list_lockdown_whitelist_commands or a.add_lockdown_whitelist_command or \
    a.remove_lockdown_whitelist_command or \
    a.query_lockdown_whitelist_command or \
    a.list_lockdown_whitelist_contexts or a.add_lockdown_whitelist_context or \
    a.remove_lockdown_whitelist_context or \
    a.query_lockdown_whitelist_context or \
    a.list_lockdown_whitelist_uids or a.add_lockdown_whitelist_uid is not None or \
    a.remove_lockdown_whitelist_uid is not None or \
    a.query_lockdown_whitelist_uid is not None or \
    a.list_lockdown_whitelist_users or a.add_lockdown_whitelist_user or \
    a.remove_lockdown_whitelist_user or \
    a.query_lockdown_whitelist_user

options_config = a.get_zones or a.get_services or a.get_icmptypes or \
                 options_lockdown_whitelist or a.list_all_zones or \
                 a.get_zone_of_interface or a.get_zone_of_source or \
                 a.info_zone or a.info_icmptype or a.info_service or \
                 a.info_ipset or a.get_ipsets or a.info_helper or \
                 a.get_helpers

options_zone_action_action = \
    a.add_service or a.remove_service or a.query_service or \
    a.add_port or a.remove_port or a.query_port or \
    a.add_protocol or a.remove_protocol or a.query_protocol or \
    a.add_source_port or a.remove_source_port or a.query_source_port or \
    a.add_icmp_block or a.remove_icmp_block or a.query_icmp_block or \
    a.add_forward_port or a.remove_forward_port or a.query_forward_port

options_zone_interfaces_sources = \
    a.list_interfaces or a.change_interface or \
    a.add_interface or a.remove_interface or a.query_interface or \
    a.list_sources or a.change_source or \
    a.add_source or a.remove_source or a.query_source

options_zone_adapt_query = \
    a.add_rich_rule or a.remove_rich_rule or a.query_rich_rule or \
    a.add_masquerade or a.remove_masquerade or a.query_masquerade or \
    a.list_services or a.list_ports or a.list_protocols or \
    a.list_source_ports or \
    a.list_icmp_blocks or a.list_forward_ports or a.list_rich_rules or \
    a.add_icmp_block_inversion or a.remove_icmp_block_inversion or \
    a.query_icmp_block_inversion or \
    a.list_all or a.get_target or a.set_target

options_zone_ops = options_zone_interfaces_sources or \
                   options_zone_action_action or options_zone_adapt_query

options_zone = a.zone or a.timeout != "0" or options_zone_ops or \
               options_desc_xml_file

options_ipset = a.add_entry or a.remove_entry or a.query_entry or \
                a.get_entries or a.add_entries_from_file or \
                a.remove_entries_from_file or options_desc_xml_file

options_icmptype = a.add_destination or a.remove_destination or \
                   a.query_destination or a.get_destinations or \
                   options_desc_xml_file

options_service = a.add_port or a.remove_port or a.query_port or \
                  a.get_ports or \
                  a.add_protocol or a.remove_protocol or a.query_protocol or \
                  a.get_protocols or \
                  a.add_source_port or a.remove_source_port or \
                  a.query_source_port or a.get_source_ports or \
                  a.add_module or a.remove_module or a.query_module or \
                  a.get_modules or \
                  a.set_destination or a.remove_destination or \
                  a.query_destination or a.get_destinations or \
                  options_desc_xml_file

options_helper = a.add_port or a.remove_port or a.query_port or \
                 a.get_ports or a.set_module or a.get_module or \
                 a.set_family or a.get_family or \
                 options_desc_xml_file

options_permanent = a.permanent or options_config or \
                    a.zone or options_zone_ops or \
                    a.ipset or options_ipset or \
                    a.helper or options_helper

options_permanent_only = a.new_icmptype or a.delete_icmptype or \
                         a.new_icmptype_from_file or \
                         a.load_icmptype_defaults or \
                         a.new_service or a.delete_service or \
                         a.new_service_from_file or \
                         a.load_service_defaults or \
                         a.new_zone or a.delete_zone or \
                         a.new_zone_from_file or \
                         a.load_zone_defaults or \
                         a.new_ipset or a.delete_ipset or \
                         a.new_ipset_from_file or \
                         a.load_ipset_defaults or \
                         a.new_helper or a.delete_helper or \
                         a.new_helper_from_file or \
                         a.load_helper_defaults or \
                         (a.icmptype and options_icmptype) or \
                         (a.service and options_service) or \
                         (a.helper and options_helper) or \
                         a.path_zone or a.path_icmptype or a.path_service or \
                         a.path_ipset or a.path_helper or options_desc_xml_file

options_direct = a.passthrough or \
           a.add_chain or a.remove_chain or a.query_chain or \
           a.get_chains or a.get_all_chains or \
           a.add_rule or a.remove_rule or a.remove_rules or a.query_rule or \
           a.get_rules or a.get_all_rules or \
           a.add_passthrough or a.remove_passthrough or a.query_passthrough or \
           a.get_passthroughs or a.get_all_passthroughs

options_require_permanent = options_permanent_only or \
                            a.get_target or a.set_target

# these are supposed to only write out some output
options_list_get = a.help or a.version or a.list_all or a.list_all_zones or \
 a.list_lockdown_whitelist_commands or a.list_lockdown_whitelist_contexts or \
 a.list_lockdown_whitelist_uids or a.list_lockdown_whitelist_users or \
 a.list_services or a.list_ports or a.list_protocols or a.list_icmp_blocks or \
 a.list_forward_ports or a.list_rich_rules or a.list_interfaces or \
 a.list_sources or a.get_default_zone or a.get_active_zones or \
 a.get_zone_of_interface or a.get_zone_of_source or a.get_zones or \
 a.get_services or a.get_icmptypes or a.get_target or \
 a.info_zone or a.info_icmptype or a.info_service or \
 a.info_ipset or a.get_ipsets or a.get_entries or \
 a.info_helper or a.get_helpers or \
 a.get_destinations or a.get_description

# Set quiet and verbose

cmd = FirewallCommand(a.quiet, a.verbose)

def myexcepthook(exctype, value, traceback):
    cmd.exception_handler(str(value))
sys.excepthook = myexcepthook

# Check various impossible combinations of options

if not (options_standalone or options_ipset or \
        options_icmptype or options_service or options_helper or \
        options_config or options_zone_ops or \
        options_direct or options_permanent_only):
    cmd.fail(parser.format_usage() + "No option specified.")

if options_standalone and (options_zone or options_permanent or \
                           options_direct or options_permanent_only or\
                           options_ipset):
    cmd.fail(parser.format_usage() +
             "Can't use stand-alone options with other options.")

if options_ipset and not options_desc_xml_file and not a.ipset:
    cmd.fail(parser.format_usage() + "No ipset specified.")

if (options_icmptype and not a.icmptype) and \
   not (options_service and a.service) and not options_desc_xml_file:
    cmd.fail(parser.format_usage() + "No icmptype specified.")

if (options_helper and not a.helper) and \
   not (options_service and a.service) and \
   not options_zone and not options_desc_xml_file:
    cmd.fail(parser.format_usage() + "No helper specified.")

if (options_direct or options_permanent_only) and \
   (options_zone and not a.zone) and (options_service and not a.service) and \
   (options_icmptype and a.icmptype) and not options_desc_xml_file:
    cmd.fail(parser.format_usage() + "Can't be used with --zone.")

if (a.direct and not options_direct) or (options_direct and not a.direct):
    cmd.fail(parser.format_usage() +
             "Wrong usage of 'direct' options.")

if a.name and not (a.new_zone_from_file or a.new_service_from_file or \
                   a.new_ipset_from_file or a.new_icmptype_from_file or \
                   a.new_helper_from_file):
    cmd.fail(parser.format_usage() + "Wrong usage of '--name' option.")

if options_require_permanent and not a.permanent:
    cmd.fail(parser.format_usage() +
             "Option can be used only with --permanent.")

if options_config and options_zone:
    cmd.fail(parser.format_usage() +
             "Wrong usage of --get-zones | --get-services | --get-icmptypes.")

if a.timeout != "0":
    value = 0
    unit = 's'
    if len(a.timeout) < 1:
        cmd.fail(parser.format_usage() +
                 "'%s' is wrong timeout value. Use for example '2m' or '1h'" % a.timeout)
    elif len(a.timeout) == 1:
        if a.timeout.isdigit():
            value = int (a.timeout[0])
        else:
            cmd.fail(parser.format_usage() +
                     "'%s' is wrong timeout value. Use for example '2m' or '1h'" % a.timeout)
    elif len(a.timeout) > 1:
        if a.timeout.isdigit():
            value = int(a.timeout)
            unit = 's'
        else:
            if a.timeout[:-1].isdigit():
                value = int (a.timeout[:-1])
            else:
                cmd.fail(parser.format_usage() +
                         "'%s' is wrong timeout value. Use for example '2m' or '1h'" % a.timeout)
            unit = a.timeout[-1:].lower()
    if unit == 's':
        a.timeout = value
    elif unit == 'm':
        a.timeout = value * 60
    elif unit == 'h':
        a.timeout = value * 60 * 60
    else:
        cmd.fail(parser.format_usage() +
                 "'%s' is wrong timeout value. Use for example '2m' or '1h'" % a.timeout)
else:
    a.timeout = 0

if a.timeout and not (a.add_service or a.add_port or a.add_protocol or \
                      a.add_icmp_block or a.add_forward_port or \
                      a.add_source_port or a.add_masquerade or a.add_rich_rule):
    cmd.fail(parser.format_usage() + "Wrong --timeout usage")

if a.permanent:
    if a.timeout:
        cmd.fail(parser.format_usage() +
                 "Can't specify timeout for permanent action.")
    if options_config and not a.zone:
        pass
    elif options_permanent:
        pass
    else:
        cmd.fail(parser.format_usage() + "Wrong --permanent usage.")

if a.quiet and options_list_get:
    # it makes no sense to use --quiet with these options
    a.quiet = False
    cmd.set_quiet(a.quiet)
    cmd.fail("-q/--quiet can't be used with this option(s)")

if a.help:
    __usage()
    sys.exit(0)

zone = a.zone

try:
    fw = FirewallClient()
except FirewallError as msg:
    code = FirewallError.get_code(str(msg))
    cmd.print_and_exit("Error: %s" % msg, code)

fw.setExceptionHandler(cmd.exception_handler)
if not fw.connected:
    if a.state:
        cmd.print_and_exit ("not running", errors.NOT_RUNNING)
    else:
        cmd.print_and_exit ("FirewallD is not running", errors.NOT_RUNNING)
cmd.set_fw(fw)

if options_zone_ops and not zone and not \
   (a.service and options_service) and not \
   (a.helper and options_helper):
    default = fw.getDefaultZone()
    cmd.print_if_verbose("No zone specified, using default zone, i.e. '%s'" % default)
    active = list(fw.getActiveZones().keys())
    if active and default not in active:
        cmd.print_msg("""You're performing an operation over default zone ('%s'),
but your connections/interfaces are in zone '%s' (see --get-active-zones)
You most likely need to use --zone=%s option.\n""" % (default, ",".join(active), active[0]))

if a.permanent:
    if a.get_ipsets:
        cmd.print_and_exit(" ".join(fw.config().getIPSetNames()))

    elif a.new_ipset:
        if not a.type:
            cmd.fail(parser.format_usage() + "No type specified.")

        settings = FirewallClientIPSetSettings()
        settings.setType(a.type)
        if a.option:
            for opt in a.option:
                settings.addOption(*cmd.parse_ipset_option(opt))
        if a.family:
            settings.addOption("family", a.family)
        config = fw.config()
        config.addIPSet(a.new_ipset, settings)

    elif a.new_ipset_from_file:
        filename = os.path.basename(a.new_ipset_from_file)
        dirname = os.path.dirname(a.new_ipset_from_file)
        if dirname == "":
            dirname = "./"
        try:
            obj = ipset_reader(filename, dirname)
        except FirewallError as msg:
            cmd.fail("Failed to load ipset file '%s': %s" % \
                   (a.new_ipset_from_file, msg))
        except IOError as msg:
            cmd.fail("Failed to load ipset file: %s" % msg)

        if a.name:
            obj.name = a.name

        config = fw.config()
        config.addIPSet(obj.name, obj.export_config())

    elif a.delete_ipset:
        ipset = fw.config().getIPSetByName(a.delete_ipset)
        ipset.remove()

    elif a.load_ipset_defaults:
        ipset = fw.config().getIPSetByName(a.load_ipset_defaults)
        ipset.loadDefaults()

    elif a.info_ipset:
        ipset = fw.config().getIPSetByName(a.info_ipset)
        cmd.print_ipset_info(a.info_ipset, ipset.getSettings())
        sys.exit(0)

    elif a.path_ipset:
        ipset = fw.config().getIPSetByName(a.path_ipset)
        cmd.print_and_exit("%s/%s" % (ipset.get_property("path"),
                                      ipset.get_property("filename")))

    elif a.ipset:
        ipset = fw.config().getIPSetByName(a.ipset)
        settings = ipset.getSettings()

        if a.add_entry:
            cmd.add_sequence(a.add_entry, settings.addEntry,
                             settings.queryEntry, None, "'%s'")
            ipset.update(settings)

        elif a.remove_entry:
            cmd.remove_sequence(a.remove_entry, settings.removeEntry,
                                settings.queryEntry, None, "'%s'")
            ipset.update(settings)

        elif a.query_entry:
            cmd.query_sequence(a.query_entry, settings.queryEntry, None, "'%s'")

        elif a.get_entries:
            l = settings.getEntries()
            cmd.print_and_exit("\n".join(l))

        elif a.add_entries_from_file:
            changed = False

            for filename in a.add_entries_from_file:
                try:
                    entries = cmd.get_ipset_entries_from_file(filename)
                except IOError as msg:
                    message = "Failed to read file '%s': %s" % (filename, msg)
                    if len(a.add_entries_from_file) > 1:
                        cmd.print_warning(message)
                    else:
                        cmd.print_and_exit(message)
                else:
                    old_entries = settings.getEntries()
                    entries_set = set()
                    for entry in old_entries:
                        entries_set.add(entry)
                    for entry in entries:
                        if entry not in entries_set:
                            old_entries.append(entry)
                            entries_set.add(entry)
                            changed = True
                        else:
                            cmd.print_if_verbose(
                                "Warning: ALREADY_ENABLED: %s" % entry)
                    if changed:
                        settings.setEntries(old_entries)
            if changed:
                ipset.update(settings)

        elif a.remove_entries_from_file:
            changed = False

            for filename in a.remove_entries_from_file:
                try:
                    entries = cmd.get_ipset_entries_from_file(filename)
                except IOError as msg:
                    message = "Failed to read file '%s': %s" % (filename, msg)
                    if len(a.remove_entries_from_file) > 1:
                        cmd.print_warning(message)
                    else:
                        cmd.print_and_exit(message)
                else:
                    old_entries = settings.getEntries()
                    entries_set = set()
                    for entry in old_entries:
                        entries_set.add(entry)
                    for entry in entries:
                        if entry in entries_set:
                            old_entries.remove(entry)
                            entries_set.discard(entry)
                            changed = True
                        else:
                            cmd.print_if_verbose("Warning: NOT_ENABLED: %s" % entry)
                    if changed:
                        settings.setEntries(old_entries)
            if changed:
                ipset.update(settings)

        elif a.set_description:
            settings.setDescription(a.set_description)
            ipset.update(settings)

        elif a.get_description:
            cmd.print_and_exit(settings.getDescription())

        elif a.set_short:
            settings.setShort(a.set_short)
            ipset.update(settings)

        elif a.get_short:
            cmd.print_and_exit(settings.getShort())

        else:
            cmd.fail(parser.format_usage() + "Unknown option")

    elif a.get_zones:
        cmd.print_and_exit(" ".join(fw.config().getZoneNames()))

    elif a.new_zone:
        config = fw.config()
        config.addZone(a.new_zone, FirewallClientZoneSettings())

    elif a.new_zone_from_file:
        filename = os.path.basename(a.new_zone_from_file)
        dirname = os.path.dirname(a.new_zone_from_file)
        if dirname == "":
            dirname = "./"
        try:
            obj = zone_reader(filename, dirname)
        except FirewallError as msg:
            cmd.fail("Failed to load zone file '%s': %s" % \
                   (a.new_zone_from_file, msg))
        except IOError as msg:
            cmd.fail("Failed to load zone file: %s" % msg)

        if a.name:
            obj.name = a.name

        config = fw.config()
        config.addZone(obj.name, obj.export_config())

    elif a.delete_zone:
        zone = fw.config().getZoneByName(a.delete_zone)
        zone.remove()

    elif a.load_zone_defaults:
        zone = fw.config().getZoneByName(a.load_zone_defaults)
        zone.loadDefaults()

    elif a.info_zone:
        zone = fw.config().getZoneByName(a.info_zone)
        cmd.print_zone_info(a.info_zone, zone.getSettings(), True)
        sys.exit(0)

    elif a.path_zone:
        zone = fw.config().getZoneByName(a.path_zone)
        cmd.print_and_exit("%s/%s" % (zone.get_property("path"),
                                      zone.get_property("filename")))

    elif a.get_services:
        cmd.print_and_exit(" ".join(fw.config().getServiceNames()))

    elif a.new_service:
        config = fw.config()
        config.addService(a.new_service, FirewallClientServiceSettings())

    elif a.new_service_from_file:
        filename = os.path.basename(a.new_service_from_file)
        dirname = os.path.dirname(a.new_service_from_file)
        if dirname == "":
            dirname = "./"
        try:
            obj = service_reader(filename, dirname)
        except FirewallError as msg:
            cmd.fail("Failed to load service file '%s': %s" % \
                     (a.new_service_from_file, msg))
        except IOError as msg:
            cmd.fail("Failed to load service file: %s" % msg)

        if a.name:
            obj.name = a.name

        config = fw.config()
        config.addService(obj.name, obj.export_config())

    elif a.delete_service:
        service = fw.config().getServiceByName(a.delete_service)
        service.remove()

    elif a.load_service_defaults:
        service = fw.config().getServiceByName(a.load_service_defaults)
        service.loadDefaults()

    elif a.info_service:
        service = fw.config().getServiceByName(a.info_service)
        cmd.print_service_info(a.info_service, service.getSettings())
        sys.exit(0)

    elif a.path_service:
        service = fw.config().getServiceByName(a.path_service)
        cmd.print_and_exit("%s/%s" % (service.get_property("path"),
                                      service.get_property("filename")))

    elif a.get_helpers:
        cmd.print_and_exit(" ".join(fw.config().getHelperNames()))

    elif a.new_helper:
        if not a.module:
            cmd.fail(parser.format_usage() + "No module specified.")
        settings = FirewallClientHelperSettings()
        settings.setModule(a.module)
        if a.family:
            settings.setFamily(a.family)
        config = fw.config()
        config.addHelper(a.new_helper, settings)

    elif a.new_helper_from_file:
        filename = os.path.basename(a.new_helper_from_file)
        dirname = os.path.dirname(a.new_helper_from_file)
        if dirname == "":
            dirname = "./"
        try:
            obj = helper_reader(filename, dirname)
        except FirewallError as msg:
            cmd.fail("Failed to load helper file '%s': %s" % \
                     (a.new_helper_from_file, msg))
        except IOError as msg:
            cmd.fail("Failed to load helper file: %s" % msg)

        if a.name:
            obj.name = a.name

        config = fw.config()
        config.addHelper(obj.name, obj.export_config())

    elif a.delete_helper:
        helper = fw.config().getHelperByName(a.delete_helper)
        helper.remove()

    elif a.load_helper_defaults:
        helper = fw.config().getHelperByName(a.load_helper_defaults)
        helper.loadDefaults()

    elif a.info_helper:
        helper = fw.config().getHelperByName(a.info_helper)
        cmd.print_helper_info(a.info_helper, helper.getSettings())
        sys.exit(0)

    elif a.path_helper:
        helper = fw.config().getHelperByName(a.path_helper)
        cmd.print_and_exit("%s/%s" % (helper.get_property("path"),
                                      helper.get_property("filename")))

    elif a.helper:
        helper = fw.config().getHelperByName(a.helper)
        settings = helper.getSettings()

        if a.add_port:
            cmd.add_sequence(a.add_port, settings.addPort,
                             settings.queryPort, cmd.parse_port, "%s/%s")
            helper.update(settings)

        elif a.remove_port:
            cmd.remove_sequence(a.remove_port, settings.removePort,
                                settings.queryPort, cmd.parse_port, "%s/%s")
            helper.update(settings)

        elif a.query_port:
            cmd.query_sequence(a.query_port, settings.queryPort,
                               cmd.parse_port, "%s/%s")

        elif a.get_ports:
            l = helper.getPorts()
            cmd.print_and_exit(" ".join(["%s/%s" % (port[0], port[1]) for port in l]))

        elif a.get_module:
            cmd.print_and_exit(settings.getModule())

        elif a.set_module:
            settings.setModule(cmd.check_module(a.set_module))
            helper.update(settings)

        elif a.get_family:
            cmd.print_and_exit(settings.getFamily())

        elif a.set_family:
            settings.setFamily(cmd.check_helper_family(a.set_family[0]))
            helper.update(settings)

        elif a.set_description:
            settings.setDescription(a.set_description)
            helper.update(settings)

        elif a.get_description:
            cmd.print_and_exit(settings.getDescription())

        elif a.set_short:
            settings.setShort(a.set_short)
            helper.update(settings)

        elif a.get_short:
            cmd.print_and_exit(settings.getShort())

        else:
            cmd.fail(parser.format_usage() + "Unknown option")

    elif a.get_icmptypes:
        cmd.print_and_exit(" ".join(fw.config().getIcmpTypeNames()))

    elif a.new_icmptype:
        config = fw.config()
        config.addIcmpType(a.new_icmptype, FirewallClientIcmpTypeSettings())

    elif a.new_icmptype_from_file:
        filename = os.path.basename(a.new_icmptype_from_file)
        dirname = os.path.dirname(a.new_icmptype_from_file)
        if dirname == "":
            dirname = "./"
        try:
            obj = icmptype_reader(filename, dirname)
        except FirewallError as msg:
            cmd.fail("Failed to load icmptype file '%s': %s" % \
                     (a.new_icmptype_from_file, msg))
        except IOError as msg:
            cmd.fail("Failed to load icmptype file: %s" % msg)

        if a.name:
            obj.name = a.name

        config = fw.config()
        config.addIcmpType(obj.name, obj.export_config())

    elif a.delete_icmptype:
        icmptype = fw.config().getIcmpTypeByName(a.delete_icmptype)
        icmptype.remove()

    elif a.load_icmptype_defaults:
        icmptype = fw.config().getIcmpTypeByName(a.load_icmptype_defaults)
        icmptype.loadDefaults()

    elif a.info_icmptype:
        icmptype = fw.config().getIcmpTypeByName(a.info_icmptype)
        cmd.print_icmptype_info(a.info_icmptype, icmptype.getSettings())
        sys.exit(0)

    elif a.path_icmptype:
        icmptype = fw.config().getIcmpTypeByName(a.path_icmptype)
        cmd.print_and_exit("%s/%s" % (icmptype.get_property("path"),
                                      icmptype.get_property("filename")))

    elif a.icmptype:
        icmptype = fw.config().getIcmpTypeByName(a.icmptype)
        settings = icmptype.getSettings()

        if a.add_destination:
            cmd.add_sequence(a.add_destination, settings.addDestination,
                             settings.queryDestination,
                             cmd.check_destination_ipv, "'%s'")
            icmptype.update(settings)

        elif a.remove_destination:
            cmd.remove_sequence(a.remove_destination,
                                settings.removeDestination,
                                settings.queryDestination,
                                cmd.check_destination_ipv, "'%s'")
            icmptype.update(settings)

        elif a.query_destination:
            cmd.query_sequence(a.query_destination, settings.queryDestination,
                               cmd.check_destination_ipv , "'%s'")

        elif a.get_destinations:
            l = settings.getDestinations()
            if len(l) == 0:
                l = [ "ipv4", "ipv6" ]
            cmd.print_and_exit("\n".join(l))

        elif a.set_description:
            settings.setDescription(a.set_description)
            icmptype.update(settings)

        elif a.get_description:
            cmd.print_and_exit(settings.getDescription())

        elif a.set_short:
            settings.setShort(a.set_short)
            icmptype.update(settings)

        elif a.get_short:
            cmd.print_and_exit(settings.getShort())

        else:
            cmd.fail(parser.format_usage() + "Unknown option")

    elif a.service:
        service = fw.config().getServiceByName(a.service)
        settings = service.getSettings()

        if a.add_port:
            cmd.add_sequence(a.add_port, settings.addPort,
                             settings.queryPort, cmd.parse_port, "%s/%s")
            service.update(settings)

        elif a.remove_port:
            cmd.remove_sequence(a.remove_port, settings.removePort,
                                settings.queryPort, cmd.parse_port, "%s/%s")
            service.update(settings)

        elif a.query_port:
            cmd.query_sequence(a.query_port, settings.queryPort,
                               cmd.parse_port, "%s/%s")

        elif a.get_ports:
            l = settings.getPorts()
            cmd.print_and_exit(" ".join(["%s/%s" % (port[0], port[1]) for port in l]))

        elif a.add_protocol:
            cmd.add_sequence(a.add_protocol, settings.addProtocol,
                             settings.queryProtocol, None, "'%s'")
            service.update(settings)

        elif a.remove_protocol:
            cmd.remove_sequence(a.remove_protocol, settings.removeProtocol,
                                settings.queryProtocol, None, "'%s'")
            service.update(settings)

        elif a.query_protocol:
            cmd.query_sequence(a.query_protocol, settings.queryProtocol,
                               None, "'%s'")

        elif a.get_protocols:
            l = settings.getProtocols()
            cmd.print_and_exit(" ".join(["%s" % protocol for protocol in l]))

        elif a.add_source_port:
            cmd.add_sequence(a.add_source_port, settings.addSourcePort,
                             settings.querySourcePort, cmd.parse_port, "%s/%s")
            service.update(settings)

        elif a.remove_source_port:
            cmd.remove_sequence(a.remove_source_port, settings.removeSourcePort,
                                settings.querySourcePort, cmd.parse_port,
                                "%s/%s")
            service.update(settings)

        elif a.query_source_port:
            cmd.query_sequence(a.query_source_port, settings.querySourcePort,
                               cmd.parse_port, "%s/%s")

        elif a.get_source_ports:
            l = settings.getSourcePorts()
            cmd.print_and_exit(" ".join(["%s/%s" % (port[0], port[1]) for port in l]))

        elif a.add_module:
            cmd.add_sequence(a.add_module, settings.addModule,
                             settings.queryModule, None, "'%s'")
            service.update(settings)

        elif a.remove_module:
            cmd.remove_sequence(a.remove_module, settings.removeModule,
                                settings.queryModule, None, "'%s'")
            service.update(settings)

        elif a.query_module:
            cmd.query_sequence(a.query_module, settings.queryModule,
                               None, "'%s'")

        elif a.get_modules:
            l = settings.getModules()
            cmd.print_and_exit(" ".join(["%s" % module for module in l]))

        elif a.set_destination:
            cmd.add_sequence(a.set_destination, settings.setDestination,
                             settings.queryDestination,
                             cmd.parse_service_destination, "%s:%s")
            service.update(settings)

        elif a.remove_destination:
            # special case for removeDestination: Only ipv, no address
            for ipv in a.remove_destination:
                cmd.check_destination_ipv(ipv)
                if ipv not in settings.getDestinations():
                    if len(a.remove_destination) > 1:
                        cmd.print_warning("Warning: NOT_ENABLED: '%s'" % ipv)
                    else:
                        code = FirewallError.get_code("NOT_ENABLED")
                        cmd.print_and_exit("Error: NOT_ENABLED: '%s'" % ipv,
                                           code)
                else:
                    settings.removeDestination(ipv)
            service.update(settings)

        elif a.query_destination:
            cmd.query_sequence(a.query_destination, settings.queryDestination,
                               cmd.parse_service_destination, "'%s'")

        elif a.get_destinations:
            l = settings.getDestinations()
            cmd.print_and_exit(" ".join(["%s:%s" % (dest[0], dest[1]) for dest in l.items()]))

        elif a.set_description:
            settings.setDescription(a.set_description)
            service.update(settings)

        elif a.get_description:
            cmd.print_and_exit(settings.getDescription())

        elif a.set_short:
            settings.setShort(a.set_short)
            service.update(settings)

        elif a.get_short:
            cmd.print_and_exit(settings.getShort())

        else:
            cmd.fail(parser.format_usage() + "Unknown option")

    # lockdown whitelist

    elif options_lockdown_whitelist:
        policies = fw.config().policies()

        # commands
        if a.list_lockdown_whitelist_commands:
            l = policies.getLockdownWhitelistCommands()
            cmd.print_and_exit("\n".join(l))
        elif a.add_lockdown_whitelist_command:
            cmd.add_sequence(a.add_lockdown_whitelist_command,
                             policies.addLockdownWhitelistCommand,
                             policies.queryLockdownWhitelistCommand,
                             None, "'%s'")
        elif a.remove_lockdown_whitelist_command:
            cmd.remove_sequence(a.remove_lockdown_whitelist_command,
                                policies.removeLockdownWhitelistCommand,
                                policies.queryLockdownWhitelistCommand,
                                None, "'%s'")
        elif a.query_lockdown_whitelist_command:
            cmd.query_sequence(a.query_lockdown_whitelist_command,
                               policies.queryLockdownWhitelistCommand,
                               None, "'%s'")

        # contexts
        elif a.list_lockdown_whitelist_contexts:
            l = policies.getLockdownWhitelistContexts()
            cmd.print_and_exit("\n".join(l))
        elif a.add_lockdown_whitelist_context:
            cmd.add_sequence(a.add_lockdown_whitelist_context,
                             policies.addLockdownWhitelistContext,
                             policies.queryLockdownWhitelistContext,
                             None, "'%s'")
        elif a.remove_lockdown_whitelist_context:
            cmd.remove_sequence(a.remove_lockdown_whitelist_context,
                                policies.removeLockdownWhitelistContext,
                                policies.queryLockdownWhitelistContext,
                                None, "'%s'")
        elif a.query_lockdown_whitelist_context:
            cmd.query_sequence(a.query_lockdown_whitelist_context,
                               policies.queryLockdownWhitelistContext,
                               None, "'%s'")

        # uids
        elif a.list_lockdown_whitelist_uids:
            l = policies.getLockdownWhitelistUids()
            cmd.print_and_exit(" ".join(map(str, l)))
        elif a.add_lockdown_whitelist_uid is not None:
            cmd.add_sequence(a.add_lockdown_whitelist_uid,
                             policies.addLockdownWhitelistUid,
                             policies.queryLockdownWhitelistUid, None, "%s")
        elif a.remove_lockdown_whitelist_uid is not None:
            cmd.remove_sequence(a.remove_lockdown_whitelist_uid,
                                policies.removeLockdownWhitelistUid,
                                policies.queryLockdownWhitelistUid, None, "%s")
        elif a.query_lockdown_whitelist_uid is not None:
            cmd.query_sequence(a.query_lockdown_whitelist_uid,
                               policies.queryLockdownWhitelistUid, None, "%s")

        # users
        elif a.list_lockdown_whitelist_users:
            l = policies.getLockdownWhitelistUsers()
            cmd.print_and_exit("\n".join(l))
        elif a.add_lockdown_whitelist_user:
            cmd.add_sequence(a.add_lockdown_whitelist_user,
                             policies.addLockdownWhitelistUser,
                             policies.queryLockdownWhitelistUser,
                             None, "%s")
        elif a.remove_lockdown_whitelist_user:
            cmd.remove_sequence(a.remove_lockdown_whitelist_user,
                                policies.removeLockdownWhitelistUser,
                                policies.queryLockdownWhitelistUser,
                                None, "%s")
        elif a.query_lockdown_whitelist_user:
            cmd.query_sequence(a.query_lockdown_whitelist_user,
                               policies.queryLockdownWhitelistUser,
                               None, "'%s'")

    elif options_direct:
        direct = fw.config().direct()

        if a.passthrough:
            if len(a.passthrough) < 2:
                cmd.fail("usage: --permanent --direct --passthrough { ipv4 | ipv6 | eb } <args>")
            cmd.print_msg(direct.addPassthrough(cmd.check_ipv(a.passthrough[0]),
                                                splitArgs(a.passthrough[1])))

        if a.add_passthrough:
            if len(a.add_passthrough) < 2:
                cmd.fail("usage: --permanent --direct --add-passthrough { ipv4 | ipv6 | eb } <args>")
            cmd.print_msg(direct.addPassthrough(cmd.check_ipv(a.add_passthrough[0]),
                                                splitArgs(a.add_passthrough[1])))

        elif a.remove_passthrough:
            if len(a.remove_passthrough) < 2:
                cmd.fail("usage: --permanent --direct --remove-passthrough { ipv4 | ipv6 | eb } <args>")
            direct.removePassthrough(cmd.check_ipv(a.remove_passthrough[0]),
                                     splitArgs(a.remove_passthrough[1]))
        elif a.query_passthrough:
            if len(a.query_passthrough) < 2:
                cmd.fail("usage: --permanent --direct --query-passthrough { ipv4 | ipv6 | eb } <args>")
            cmd.print_query_result(
                direct.queryPassthrough(cmd.check_ipv(a.query_passthrough[0]),
                                        splitArgs(a.query_passthrough[1])))
            sys.exit(0)
        elif a.get_passthroughs:
            rules = direct.getPassthroughs(cmd.check_ipv(a.get_passthroughs[0]))
            for rule in rules:
                cmd.print_msg(joinArgs(rule))
            sys.exit(0)
        elif a.get_all_passthroughs:
            for (ipv, rule) in direct.getAllPassthroughs():
                cmd.print_msg("%s %s" % (ipv, joinArgs(rule)))
            sys.exit(0)

        elif a.add_chain:
            direct.addChain(cmd.check_ipv(a.add_chain[0]),
                            a.add_chain[1], a.add_chain[2])
        elif a.remove_chain:
            direct.removeChain(cmd.check_ipv(a.remove_chain[0]),
                               a.remove_chain[1], a.remove_chain[2])
        elif a.query_chain:
            cmd.print_query_result(
                direct.queryChain(cmd.check_ipv(a.query_chain[0]),
                                  a.query_chain[1], a.query_chain[2]))
            sys.exit(0)
        elif a.get_chains:
            cmd.print_and_exit(
                " ".join(direct.getChains(cmd.check_ipv(a.get_chains[0]),
                                          a.get_chains[1])))
            sys.exit(0)
        elif a.get_all_chains:
            chains = direct.getAllChains()
            for (ipv, table, chain) in chains:
                cmd.print_msg("%s %s %s" % (ipv, table, chain))
            sys.exit(0)
        elif a.add_rule:
            if len(a.add_rule) < 5:
                cmd.fail("usage: --permanent --direct --add-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
            try:
                priority = int(a.add_rule[3])
            except ValueError:
                cmd.fail("usage: --permanent --direct --add-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
            direct.addRule(cmd.check_ipv(a.add_rule[0]), a.add_rule[1],
                           a.add_rule[2], priority, splitArgs(a.add_rule[4]))
        elif a.remove_rule:
            if len(a.remove_rule) < 5:
                cmd.fail("usage: --permanent --direct --remove-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
            try:
                priority = int(a.remove_rule[3])
            except ValueError:
                cmd.fail("usage: --permanent --direct --remove-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
            direct.removeRule(cmd.check_ipv(a.remove_rule[0]), a.remove_rule[1],
                              a.remove_rule[2], priority, splitArgs(a.remove_rule[4]))
        elif a.remove_rules:
            if len(a.remove_rules) < 3:
                cmd.fail("usage: --permanent --direct --remove-rules { ipv4 | ipv6 | eb } <table> <chain>")
            direct.removeRules(cmd.check_ipv(a.remove_rules[0]),
                               a.remove_rules[1], a.remove_rules[2])
        elif a.query_rule:
            if len(a.query_rule) < 5:
                cmd.fail("usage: --permanent --direct --query-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
            try:
                priority = int(a.query_rule[3])
            except ValueError:
                cmd.fail("usage: --permanent --direct --query-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
            cmd.print_query_result(
                direct.queryRule(cmd.check_ipv(a.query_rule[0]),
                                 a.query_rule[1], a.query_rule[2],
                                 priority, splitArgs(a.query_rule[4])))
            sys.exit(0)
        elif a.get_rules:
            rules = direct.getRules(cmd.check_ipv(a.get_rules[0]),
                                    a.get_rules[1], a.get_rules[2])
            for (priority, rule) in rules:
                cmd.print_msg("%d %s" % (priority, joinArgs(rule)))
            sys.exit(0)
        elif a.get_all_rules:
            rules = direct.getAllRules()
            for (ipv, table, chain, priority, rule) in rules:
                cmd.print_msg("%s %s %s %d %s" % (ipv, table, chain, priority,
                                                  joinArgs(rule)))
            sys.exit(0)

    else:
        if zone == "":
            zone = fw.getDefaultZone()
        fw_zone = fw.config().getZoneByName(zone)

        # interface
        if a.list_interfaces:
            interfaces = sorted(set(try_nm_get_interfaces_in_zone(zone))
                                | set(fw_zone.getInterfaces()))
            cmd.print_and_exit(" ".join(interfaces))
        elif a.get_zone_of_interface:
            for interface in a.get_zone_of_interface:
                # ask NM before checking our config
                zone = try_get_zone_of_interface(interface)
                if not zone:
                    zone = fw.config().getZoneOfInterface(interface)
                if zone:
                    if len(a.get_zone_of_interface) > 1:
                        cmd.print_warning("%s: %s" % (interface, zone))
                    else:
                        cmd.print_and_exit(zone)
                else:
                    if len(a.get_zone_of_interface) > 1:
                        cmd.print_warning("%s: no zone" % interface)
                    else:
                        cmd.fail("no zone")
        elif a.change_interface:
            interfaces = [ ]
            for interface in a.change_interface:
                if not try_set_zone_of_interface(zone, interface):
                    interfaces.append(interface)
            for interface in interfaces:
                old_zone_name = fw.config().getZoneOfInterface(interface)
                if old_zone_name != zone:
                    if old_zone_name:
                        old_zone_obj = fw.config().getZoneByName(old_zone_name)
                        old_zone_obj.removeInterface(interface)# remove from old
                    fw_zone.addInterface(interface)            # add to new
        elif a.add_interface:
            interfaces = [ ]
            for interface in a.add_interface:
                if not try_set_zone_of_interface(a.zone, interface):
                    interfaces.append(interface)
            cmd.add_sequence(interfaces, fw_zone.addInterface,
                             fw_zone.queryInterface, None, "'%s'")
        elif a.remove_interface:
            interfaces = [ ]
            for interface in a.remove_interface:
                if not try_set_zone_of_interface("", interface):
                    interfaces.append(interface)
            cmd.remove_sequence(interfaces, fw_zone.removeInterface,
                                fw_zone.queryInterface, None, "'%s'")
        elif a.query_interface:
            cmd.query_sequence(a.query_interface, fw_zone.queryInterface,
                               None, "'%s'")

        # source
        if a.list_sources:
            sources = fw_zone.getSources()
            cmd.print_and_exit(" ".join(sources))
        elif a.get_zone_of_source:
            for source in a.get_zone_of_source:
                zone = fw.config().getZoneOfSource(source)
                if zone:
                    if len(a.get_zone_of_source) > 1:
                        cmd.print_warning("%s: %s" % (source, zone))
                    else:
                        cmd.print_and_exit(zone)
                else:
                    if len(a.get_zone_of_source) > 1:
                        cmd.print_warning("%s: no zone" % source)
                    else:
                        cmd.fail("no zone")
        elif a.change_source:
            for source in a.change_source:
                old_zone_name = fw.config().getZoneOfSource(source)
                if old_zone_name != zone:
                    if old_zone_name:
                        old_zone_obj = fw.config().getZoneByName(old_zone_name)
                        old_zone_obj.removeSource(source) # remove from old
                    fw_zone.addSource(source)             # add to new
        elif a.add_source:
            cmd.add_sequence(a.add_source, fw_zone.addSource,
                             fw_zone.querySource, None, "'%s'")
        elif a.remove_source:
            cmd.remove_sequence(a.remove_source, fw_zone.removeSource,
                                fw_zone.querySource, None, "'%s'")
        elif a.query_source:
            cmd.query_sequence(a.query_source, fw_zone.querySource,
                               None, "'%s'")

        # rich rules
        if a.list_rich_rules:
            l = fw_zone.getRichRules()
            cmd.print_and_exit("\n".join(l))
        elif a.add_rich_rule:
            cmd.add_sequence(a.add_rich_rule, fw_zone.addRichRule,
                             fw_zone.queryRichRule, None, "'%s'")
        elif a.remove_rich_rule:
            cmd.remove_sequence(a.remove_rich_rule, fw_zone.removeRichRule,
                                fw_zone.queryRichRule, None, "'%s'")
        elif a.query_rich_rule:
            cmd.query_sequence(a.query_rich_rule, fw_zone.queryRichRule,
                               None, "'%s'")

        # service
        if a.list_services:
            l = fw_zone.getServices()
            cmd.print_and_exit(" ".join(sorted(l)))
        elif a.add_service:
            cmd.add_sequence(a.add_service, fw_zone.addService,
                             fw_zone.queryService, None, "'%s'")
        elif a.remove_service:
            cmd.remove_sequence(a.remove_service, fw_zone.removeService,
                                fw_zone.queryService, None, "'%s'")
        elif a.query_service:
            cmd.query_sequence(a.query_service, fw_zone.queryService,
                               None, "'%s'")

        # port
        elif a.list_ports:
            l = fw_zone.getPorts()
            cmd.print_and_exit(" ".join(["%s/%s" % (port[0], port[1]) for port in l]))
        elif a.add_port:
            cmd.add_sequence(a.add_port, fw_zone.addPort,
                             fw_zone.queryPort, cmd.parse_port, "%s/%s")
        elif a.remove_port:
            cmd.remove_sequence(a.remove_port, fw_zone.removePort,
                                fw_zone.queryPort, cmd.parse_port, "%s/%s")
        elif a.query_port:
            cmd.query_sequence(a.query_port, fw_zone.queryPort,
                               cmd.parse_port, "%s/%s")

        # protocol
        elif a.list_protocols:
            l = fw_zone.getProtocols()
            cmd.print_and_exit(" ".join(["%s" % protocol for protocol in sorted(l)]))
        elif a.add_protocol:
            cmd.add_sequence(a.add_protocol, fw_zone.addProtocol,
                             fw_zone.queryProtocol, None, "'%s'")
        elif a.remove_protocol:
            cmd.remove_sequence(a.remove_protocol, fw_zone.removeProtocol,
                                fw_zone.queryProtocol, None, "'%s'")
        elif a.query_protocol:
            cmd.query_sequence(a.query_protocol, fw_zone.queryProtocol,
                               None, "'%s'")

        # source port
        elif a.list_source_ports:
            l = fw_zone.getSourcePorts()
            cmd.print_and_exit(" ".join(["%s/%s" % (port[0], port[1]) for port in l]))
        elif a.add_source_port:
            cmd.add_sequence(a.add_source_port, fw_zone.addSourcePort,
                             fw_zone.querySourcePort, cmd.parse_port, "%s/%s")
        elif a.remove_source_port:
            cmd.remove_sequence(a.remove_source_port, fw_zone.removeSourcePort,
                                fw_zone.querySourcePort, cmd.parse_port,
                                "%s/%s")
        elif a.query_source_port:
            cmd.query_sequence(a.query_source_port, fw_zone.querySourcePort,
                               cmd.parse_port, "%s/%s")

        # masquerade
        elif a.add_masquerade:
            fw_zone.addMasquerade()
        elif a.remove_masquerade:
            fw_zone.removeMasquerade()
        elif a.query_masquerade:
            cmd.print_query_result(fw_zone.queryMasquerade())

        # forward port
        elif a.list_forward_ports:
            l = fw_zone.getForwardPorts()
            cmd.print_and_exit("\n".join(["port=%s:proto=%s:toport=%s:toaddr=%s" % (port, protocol, toport, toaddr) for (port, protocol, toport, toaddr) in l]))
        elif a.add_forward_port:
            cmd.add_sequence(a.add_forward_port, fw_zone.addForwardPort,
                             fw_zone.queryForwardPort, cmd.parse_forward_port,
                             "port=%s:proto=%s:toport=%s:toaddr=%s")
        elif a.remove_forward_port:
            cmd.remove_sequence(a.remove_forward_port,
                                fw_zone.removeForwardPort,
                                fw_zone.queryForwardPort,
                                cmd.parse_forward_port,
                                "port=%s:proto=%s:toport=%s:toaddr=%s")
        elif a.query_forward_port:
            cmd.query_sequence(a.query_forward_port, fw_zone.queryForwardPort,
                               cmd.parse_forward_port,
                               "port=%s:proto=%s:toport=%s:toaddr=%s")

        # block icmp
        elif a.list_icmp_blocks:
            l = fw_zone.getIcmpBlocks()
            cmd.print_and_exit(" ".join(l))
        elif a.add_icmp_block:
            cmd.add_sequence(a.add_icmp_block, fw_zone.addIcmpBlock,
                             fw_zone.queryIcmpBlock, None, "'%s'")
        elif a.remove_icmp_block:
            cmd.remove_sequence(a.remove_icmp_block, fw_zone.removeIcmpBlock,
                                fw_zone.queryIcmpBlock, None, "'%s'")
        elif a.query_icmp_block:
            cmd.query_sequence(a.query_icmp_block, fw_zone.queryIcmpBlock,
                               None, "'%s'")

        # icmp block inversion
        elif a.add_icmp_block_inversion:
            fw_zone.addIcmpBlockInversion()
        elif a.remove_icmp_block_inversion:
            fw_zone.removeIcmpBlockInversion()
        elif a.query_icmp_block_inversion:
            cmd.print_query_result(fw_zone.queryIcmpBlockInversion())

        # zone target
        elif a.get_target:
            target = fw_zone.getTarget()
            cmd.print_and_exit(target if target != "%%REJECT%%" else "REJECT")
        elif a.set_target:
            fw_zone.setTarget(a.set_target if a.set_target != "REJECT" else "%%REJECT%%")

        # list all zone settings
        elif a.list_all:
            interfaces = try_nm_get_interfaces_in_zone(zone)
            cmd.print_zone_info(zone, fw_zone.getSettings(), extra_interfaces=interfaces)
            sys.exit(0)

        # list everything
        elif a.list_all_zones:
            names = fw.config().getZoneNames()
            for zone in sorted(names):
                interfaces = try_nm_get_interfaces_in_zone(zone)
                settings = fw.config().getZoneByName(zone).getSettings()
                cmd.print_zone_info(zone, settings, extra_interfaces=interfaces)
                cmd.print_msg("")
            sys.exit(0)

        # set zone description
        elif a.set_description:
            settings = fw.config().getZoneByName(zone).getSettings()
            settings.setDescription(a.set_description)
            fw_zone.update(settings)

        # get zone description
        elif a.get_description:
            settings = fw.config().getZoneByName(zone).getSettings()
            cmd.print_and_exit(settings.getDescription())

        # set zone short description
        elif a.set_short:
            settings = fw.config().getZoneByName(zone).getSettings()
            settings.setShort(a.set_short)
            fw_zone.update(settings)

        # get zone short description
        elif a.get_short:
            settings = fw.config().getZoneByName(zone).getSettings()
            cmd.print_and_exit(settings.getShort())

elif a.version:
    cmd.print_and_exit(fw.get_property("version"))
elif a.state:
    state = fw.get_property("state")
    if state == "RUNNING":
        cmd.print_and_exit ("running")
    elif state == "FAILED":
        cmd.print_and_exit("failed", errors.RUNNING_BUT_FAILED)
    else:
        cmd.print_and_exit ("not running", errors.NOT_RUNNING)
elif a.get_log_denied:
    cmd.print_and_exit(fw.getLogDenied())
elif a.set_log_denied:
    fw.setLogDenied(a.set_log_denied)
elif a.get_automatic_helpers:
    cmd.print_and_exit(fw.getAutomaticHelpers())
elif a.set_automatic_helpers:
    fw.setAutomaticHelpers(a.set_automatic_helpers)
elif a.get_ipset_types:
    types = fw.get_property("IPSetTypes")
    cmd.print_and_exit(" ".join(sorted(types)))
elif a.reload:
    fw.reload()
elif a.complete_reload:
    fw.complete_reload()
elif a.runtime_to_permanent:
    fw.runtimeToPermanent()
elif a.check_config:
    fw.checkPermanentConfig()
elif a.direct:
    if a.passthrough:
        if len(a.passthrough) < 2:
            cmd.fail("usage: --direct --passthrough { ipv4 | ipv6 | eb } <args>")
        msg = fw.passthrough(cmd.check_ipv(a.passthrough[0]), splitArgs(a.passthrough[1]))
        if msg:
            sys.stdout.write(msg + "\n")

    elif a.add_passthrough:
        if len(a.add_passthrough) < 2:
            cmd.fail("usage: --direct --add-passthrough { ipv4 | ipv6 | eb } <args>")
        fw.addPassthrough(cmd.check_ipv(a.add_passthrough[0]),
                          splitArgs(a.add_passthrough[1]))
    elif a.remove_passthrough:
        if len(a.remove_passthrough) < 2:
            cmd.fail("usage: --direct --remove-passthrough { ipv4 | ipv6 | eb } <args>")
        fw.removePassthrough(cmd.check_ipv(a.remove_passthrough[0]),
                             splitArgs(a.remove_passthrough[1]))
    elif a.query_passthrough:
        if len(a.query_passthrough) < 2:
            cmd.fail("usage: --direct --query-passthrough { ipv4 | ipv6 | eb } <args>")
        cmd.print_query_result(
            fw.queryPassthrough(cmd.check_ipv(a.query_passthrough[0]),
                                splitArgs(a.query_passthrough[1])))
    elif a.get_passthroughs:
        rules = fw.getPassthroughs(cmd.check_ipv(a.get_passthroughs[0]))
        for rule in rules:
            cmd.print_msg(joinArgs(rule))
        sys.exit(0)
    elif a.get_all_passthroughs:
        for (ipv, rule) in fw.getAllPassthroughs():
            cmd.print_msg("%s %s" % (ipv, joinArgs(rule)))
        sys.exit(0)
    elif a.add_chain:
        fw.addChain(cmd.check_ipv(a.add_chain[0]), a.add_chain[1], a.add_chain[2])
    elif a.remove_chain:
        fw.removeChain(cmd.check_ipv(a.remove_chain[0]),
                       a.remove_chain[1], a.remove_chain[2])
    elif a.query_chain:
        cmd.print_query_result(fw.queryChain(cmd.check_ipv(a.query_chain[0]),
                                             a.query_chain[1],
                                             a.query_chain[2]))
    elif a.get_chains:
        cmd.print_and_exit(" ".join(fw.getChains(cmd.check_ipv(a.get_chains[0]),
                                                 a.get_chains[1])))
    elif a.get_all_chains:
        chains = fw.getAllChains()
        for (ipv, table, chain) in chains:
            cmd.print_msg("%s %s %s" % (ipv, table, chain))
        sys.exit(0)
    elif a.add_rule:
        if len(a.add_rule) < 5:
            cmd.fail("usage: --direct --add-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
        try:
            priority = int(a.add_rule[3])
        except ValueError:
            cmd.fail("usage: --direct --add-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
        fw.addRule(cmd.check_ipv(a.add_rule[0]), a.add_rule[1], a.add_rule[2],
                   priority, splitArgs(a.add_rule[4]))
    elif a.remove_rule:
        if len(a.remove_rule) < 5:
            cmd.fail("usage: --direct --remove-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
        try:
            priority = int(a.remove_rule[3])
        except ValueError:
            cmd.fail("usage: --direct --remove-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
        fw.removeRule(cmd.check_ipv(a.remove_rule[0]),
                      a.remove_rule[1], a.remove_rule[2], priority, splitArgs(a.remove_rule[4]))
    elif a.remove_rules:
        if len(a.remove_rules) < 3:
            cmd.fail("usage: --direct --remove-rules { ipv4 | ipv6 | eb } <table> <chain>")
        fw.removeRules(cmd.check_ipv(a.remove_rules[0]),
                       a.remove_rules[1], a.remove_rules[2])
    elif a.query_rule:
        if len(a.query_rule) < 5:
            cmd.fail("usage: --direct --query-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
        try:
            priority = int(a.query_rule[3])
        except ValueError:
            cmd.fail("usage: --direct --query-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
        cmd.print_query_result(
            fw.queryRule(cmd.check_ipv(a.query_rule[0]),
                         a.query_rule[1], a.query_rule[2],
                         priority, splitArgs(a.query_rule[4])))
    elif a.get_rules:
        rules = fw.getRules(cmd.check_ipv(a.get_rules[0]),
                            a.get_rules[1], a.get_rules[2])
        for (priority, rule) in rules:
            cmd.print_msg("%d %s" % (priority, joinArgs(rule)))
        sys.exit(0)
    elif a.get_all_rules:
        rules = fw.getAllRules()
        for (ipv, table, chain, priority, rule) in rules:
            cmd.print_msg("%s %s %s %d %s" % (ipv, table, chain, priority,
                                              joinArgs(rule)))
        sys.exit(0)

elif a.get_default_zone:
    cmd.print_and_exit(fw.getDefaultZone())
elif a.set_default_zone:
    fw.setDefaultZone(a.set_default_zone)
elif a.get_zones:
    cmd.print_and_exit(" ".join(fw.getZones()))
elif a.get_active_zones:
    zones = fw.getActiveZones()
    for zone in zones:
        cmd.print_msg("%s" % zone)
        for x in [ "interfaces", "sources" ]:
            if x in zones[zone]:
                cmd.print_msg("  %s: %s" % (x, " ".join(zones[zone][x])))
    sys.exit(0)
elif a.get_services:
    l = fw.listServices()
    cmd.print_and_exit(" ".join(l))
elif a.get_icmptypes:
    l = fw.listIcmpTypes()
    cmd.print_and_exit(" ".join(l))

# panic
elif a.panic_on:
    fw.enablePanicMode()
elif a.panic_off:
    fw.disablePanicMode()
elif a.query_panic:
    cmd.print_query_result(fw.queryPanicMode())

# ipset
elif a.get_ipsets:
    ipsets = fw.getIPSets()
    cmd.print_and_exit(" ".join(sorted(ipsets)))

elif a.info_ipset:
    cmd.print_ipset_info(a.info_ipset, fw.getIPSetSettings(a.info_ipset))
    sys.exit(0)

elif a.add_entry:
    cmd.x_add_sequence(a.ipset, a.add_entry, fw.addEntry, fw.queryEntry,
                       None, "'%s'")

elif a.remove_entry:
    cmd.x_remove_sequence(a.ipset, a.remove_entry, fw.removeEntry,
                          fw.queryEntry, None, "'%s'")

elif a.query_entry:
    cmd.x_query_sequence(a.ipset, a.query_entry, fw.queryEntry, None, "'%s'")

elif a.get_entries:
    l = fw.getEntries(a.ipset)
    cmd.print_and_exit("\n".join(l))

elif a.add_entries_from_file:
    old_entries = fw.getEntries(a.ipset)
    changed = False

    for filename in a.add_entries_from_file:
        try:
            entries = cmd.get_ipset_entries_from_file(filename)
        except IOError as msg:
            message = "Failed to read file '%s': %s" % (filename, msg)
            if len(a.add_entries_from_file) > 1:
                cmd.print_warning(message)
            else:
                cmd.print_and_exit(message)
        else:
            entries_set = set()
            for entry in old_entries:
                entries_set.add(entry)
            for entry in entries:
                if entry not in entries_set:
                    old_entries.append(entry)
                    entries_set.add(entry)
                    changed = True
                else:
                    cmd.print_if_verbose("Warning: ALREADY_ENABLED: %s" % entry)
    if changed:
        fw.setEntries(a.ipset, old_entries)

elif a.remove_entries_from_file:
    old_entries = fw.getEntries(a.ipset)
    changed = False

    for filename in a.remove_entries_from_file:
        try:
            entries = cmd.get_ipset_entries_from_file(filename)
        except IOError as msg:
            message = "Failed to read file '%s': %s" % (filename, msg)
            if len(a.remove_entries_from_file) > 1:
                cmd.print_warning(message)
            else:
                cmd.print_and_exit(message)
        else:
            entries_set = set()
            for entry in old_entries:
                entries_set.add(entry)
            for entry in entries:
                if entry in entries_set:
                    old_entries.remove(entry)
                    entries_set.discard(entry)
                    changed = True
                else:
                    cmd.print_if_verbose("Warning: NOT_ENABLED: %s" % entry)
    if changed:
        fw.setEntries(a.ipset, old_entries)

# helper
elif a.get_helpers:
    helpers = fw.getHelpers()
    cmd.print_and_exit(" ".join(sorted(helpers)))

elif a.info_helper:
    cmd.print_helper_info(a.info_helper, fw.getHelperSettings(a.info_helper))
    sys.exit(0)

# lockdown
elif a.lockdown_on:
    fw.config().set_property("Lockdown", "yes")   # permanent
    fw.enableLockdown()                           # runtime
elif a.lockdown_off:
    fw.config().set_property("Lockdown", "no")    # permanent
    fw.disableLockdown()                          # runtime
elif a.query_lockdown:
    cmd.print_query_result(fw.queryLockdown())      # runtime
    #lockdown = fw.config().get_property("Lockdown")
    #cmd.print_query_result(lockdown.lower() in [ "yes", "true" ])

# lockdown whitelist

# commands
elif a.list_lockdown_whitelist_commands:
    l = fw.getLockdownWhitelistCommands()
    cmd.print_and_exit("\n".join(l))
elif a.add_lockdown_whitelist_command:
    cmd.add_sequence(a.add_lockdown_whitelist_command,
                     fw.addLockdownWhitelistCommand,
                     fw.queryLockdownWhitelistCommand, None, "'%s'")
elif a.remove_lockdown_whitelist_command:
    cmd.remove_sequence(a.remove_lockdown_whitelist_command,
                        fw.removeLockdownWhitelistCommand,
                        fw.queryLockdownWhitelistCommand, None, "'%s'")
elif a.query_lockdown_whitelist_command:
    cmd.query_sequence(a.query_lockdown_whitelist_command,
                       fw.queryLockdownWhitelistCommand, None, "'%s'")

# contexts
elif a.list_lockdown_whitelist_contexts:
    l = fw.getLockdownWhitelistContexts()
    cmd.print_and_exit("\n".join(l))
elif a.add_lockdown_whitelist_context:
    cmd.add_sequence(a.add_lockdown_whitelist_context,
                     fw.addLockdownWhitelistContext,
                     fw.queryLockdownWhitelistContext, None, "'%s'")
elif a.remove_lockdown_whitelist_context:
    cmd.remove_sequence(a.remove_lockdown_whitelist_context,
                        fw.removeLockdownWhitelistContext,
                        fw.queryLockdownWhitelistContext, None, "'%s'")
elif a.query_lockdown_whitelist_context:
    cmd.query_sequence(a.query_lockdown_whitelist_context,
                       fw.queryLockdownWhitelistContext, None, "'%s'")

# uids
elif a.list_lockdown_whitelist_uids:
    l = fw.getLockdownWhitelistUids()
    cmd.print_and_exit(" ".join(map(str, l)))
elif a.add_lockdown_whitelist_uid is not None:
    cmd.add_sequence(a.add_lockdown_whitelist_uid,
                     fw.addLockdownWhitelistUid,
                     fw.queryLockdownWhitelistUid, None, "'%s'")
elif a.remove_lockdown_whitelist_uid is not None:
    cmd.remove_sequence(a.remove_lockdown_whitelist_uid,
                        fw.removeLockdownWhitelistUid,
                        fw.queryLockdownWhitelistUid, None, "'%s'")
elif a.query_lockdown_whitelist_uid is not None:
    cmd.query_sequence(a.query_lockdown_whitelist_uid,
                       fw.queryLockdownWhitelistUid, None, "'%s'")

# users
elif a.list_lockdown_whitelist_users:
    l = fw.getLockdownWhitelistUsers()
    cmd.print_and_exit(" ".join(l))
elif a.add_lockdown_whitelist_user:
    cmd.add_sequence(a.add_lockdown_whitelist_user,
                     fw.addLockdownWhitelistUser,
                     fw.queryLockdownWhitelistUser, None, "'%s'")
elif a.remove_lockdown_whitelist_user:
    cmd.remove_sequence(a.remove_lockdown_whitelist_user,
                        fw.removeLockdownWhitelistUser,
                        fw.queryLockdownWhitelistUser, None, "'%s'")
elif a.query_lockdown_whitelist_user:
    cmd.query_sequence(a.query_lockdown_whitelist_user,
                       fw.queryLockdownWhitelistUser, None, "'%s'")

# interface
elif a.list_interfaces:
    l = fw.getInterfaces(zone)
    cmd.print_and_exit(" ".join(l))
elif a.get_zone_of_interface:
    for interface in a.get_zone_of_interface:
        zone = fw.getZoneOfInterface(interface)
        if zone:
            if len(a.get_zone_of_interface) > 1:
                cmd.print_warning("%s: %s" % (interface, zone))
            else:
                cmd.print_and_exit(zone)
        else:
            if len(a.get_zone_of_interface) > 1:
                cmd.print_warning("%s: no zone" % interface)
            else:
                cmd.fail("no zone")
elif a.add_interface:
    interfaces = [ ]
    for interface in a.add_interface:
        interfaces.append(interface)
    cmd.x_add_sequence(zone, interfaces, fw.addInterface,
                       fw.queryInterface, None, "'%s'")
elif a.change_interface:
    interfaces = [ ]
    for interface in a.change_interface:
        interfaces.append(interface)
    cmd.x_add_sequence(zone, interfaces, fw.changeZoneOfInterface,
                       fw.queryInterface, None, "'%s'")
elif a.remove_interface:
    interfaces = [ ]
    for interface in a.remove_interface:
        interfaces.append(interface)
    cmd.x_remove_sequence(zone, interfaces, fw.removeInterface,
                          fw.queryInterface, None, "'%s'")
elif a.query_interface:
    cmd.x_query_sequence(zone, a.query_interface, fw.queryInterface, None,
                         "'%s'")

# source
elif a.list_sources:
    sources = fw.getSources(zone)
    cmd.print_and_exit(" ".join(sources))
elif a.get_zone_of_source:
    for source in a.get_zone_of_source:
        zone = fw.getZoneOfSource(source)
        if zone:
            if len(a.get_zone_of_source) > 1:
                cmd.print_warning("%s: %s" % (source, zone))
            else:
                cmd.print_and_exit(zone)
        else:
            if len(a.get_zone_of_source) > 1:
                cmd.print_warning("%s: no zone" % source)
            else:
                cmd.fail("no zone")
        sys.exit(0)
elif a.add_source:
    cmd.x_add_sequence(zone, a.add_source, fw.addSource,
                       fw.querySource, None, "'%s'")
elif a.change_source:
    cmd.x_add_sequence(zone, a.change_source, fw.changeZoneOfSource,
                       fw.querySource, None, "'%s'")
elif a.remove_source:
    cmd.x_remove_sequence(zone, a.remove_source, fw.removeSource,
                          fw.querySource, None, "'%s'")
elif a.query_source:
    cmd.x_query_sequence(zone, a.query_source, fw.querySource, None, "'%s'")

# rich rules
elif a.list_rich_rules:
    l = fw.getRichRules(zone)
    cmd.print_and_exit("\n".join(l))
elif a.add_rich_rule:
    cmd.zone_add_timeout_sequence(zone, a.add_rich_rule, fw.addRichRule,
                                  fw.queryRichRule, None, "'%s'",
                                  a.timeout)
elif a.remove_rich_rule:
    cmd.x_remove_sequence(zone, a.remove_rich_rule, fw.removeRichRule,
                          fw.queryRichRule, None, "'%s'")
elif a.query_rich_rule:
    cmd.x_query_sequence(zone, a.query_rich_rule, fw.queryRichRule, None,
                         "'%s'")

# service
elif a.list_services:
    l = fw.getServices(zone)
    cmd.print_and_exit(" ".join(sorted(l)))
elif a.add_service:
    cmd.zone_add_timeout_sequence(zone, a.add_service, fw.addService,
                                  fw.queryService, None, "'%s'",
                                  a.timeout)
elif a.remove_service:
    cmd.x_remove_sequence(zone, a.remove_service, fw.removeService,
                          fw.queryService, None, "'%s'")
elif a.query_service:
    cmd.x_query_sequence(zone, a.query_service, fw.queryService, None, "'%s'")

# port
elif a.list_ports:
    l = fw.getPorts(zone)
    cmd.print_and_exit(" ".join(["%s/%s" % (port[0], port[1]) for port in l]))
elif a.add_port:
    cmd.zone_add_timeout_sequence(zone, a.add_port, fw.addPort, fw.queryPort,
                                  cmd.parse_port, "'%s/%s'", a.timeout)
elif a.remove_port:
    cmd.x_remove_sequence(zone, a.remove_port, fw.removePort, fw.queryPort,
                          cmd.parse_port, "'%s/%s'")
elif a.query_port:
    cmd.x_query_sequence(zone, a.query_port, fw.queryPort, cmd.parse_port,
                         "'%s/%s'")

# protocol
elif a.list_protocols:
    l = fw.getProtocols(zone)
    cmd.print_and_exit(" ".join(["%s" % protocol for protocol in sorted(l)]))
elif a.add_protocol:
    cmd.zone_add_timeout_sequence(zone, a.add_protocol, fw.addProtocol,
                                  fw.queryProtocol, None, "'%s'", a.timeout)
elif a.remove_protocol:
    cmd.x_remove_sequence(zone, a.remove_protocol, fw.removeProtocol,
                          fw.queryProtocol, None, "'%s'")
elif a.query_protocol:
    cmd.x_query_sequence(zone, a.query_protocol, fw.queryProtocol, None, "'%s'")

# source port
elif a.list_source_ports:
    l = fw.getSourcePorts(zone)
    cmd.print_and_exit(" ".join(["%s/%s" % (port[0], port[1]) for port in l]))
elif a.add_source_port:
    cmd.zone_add_timeout_sequence(zone, a.add_source_port, fw.addSourcePort,
                                  fw.querySourcePort, cmd.parse_port,
                                  "'%s/%s'", a.timeout)
elif a.remove_source_port:
    cmd.x_remove_sequence(zone, a.remove_source_port, fw.removeSourcePort,
                          fw.querySourcePort, cmd.parse_port, "'%s/%s'")
elif a.query_source_port:
    cmd.x_query_sequence(zone, a.query_source_port, fw.querySourcePort,
                         cmd.parse_port, "'%s/%s'")

# masquerade
elif a.add_masquerade:
    fw.addMasquerade(zone, a.timeout)
elif a.remove_masquerade:
    fw.removeMasquerade(zone)
elif a.query_masquerade:
    cmd.print_query_result(fw.queryMasquerade(zone))

# forward port
elif a.list_forward_ports:
    l = fw.getForwardPorts(zone)
    cmd.print_and_exit("\n".join(["port=%s:proto=%s:toport=%s:toaddr=%s" % (port, protocol, toport, toaddr) for (port, protocol, toport, toaddr) in l]))
elif a.add_forward_port:
    cmd.zone_add_timeout_sequence(zone, a.add_forward_port, fw.addForwardPort,
                                  fw.queryForwardPort, cmd.parse_forward_port,
                                  "'port=%s:proto=%s:toport=%s:toaddr=%s'",
                                  a.timeout)
elif a.remove_forward_port:
    cmd.x_remove_sequence(zone, a.remove_forward_port,
                          fw.removeForwardPort, fw.queryForwardPort,
                          cmd.parse_forward_port,
                          "'port=%s:proto=%s:toport=%s:toaddr=%s'")
elif a.query_forward_port:
    cmd.x_query_sequence(zone, a.query_forward_port, fw.queryForwardPort,
                         cmd.parse_forward_port,
                         "'port=%s:proto=%s:toport=%s:toaddr=%s'")

# block icmp
elif a.list_icmp_blocks:
    l = fw.getIcmpBlocks(zone)
    cmd.print_and_exit(" ".join(l))
elif a.add_icmp_block:
    cmd.zone_add_timeout_sequence(zone, a.add_icmp_block, fw.addIcmpBlock,
                                  fw.queryIcmpBlock, None, "'%s'", a.timeout)
elif a.remove_icmp_block:
    cmd.x_remove_sequence(zone, a.remove_icmp_block, fw.removeIcmpBlock,
                          fw.queryIcmpBlock, None, "'%s'")
elif a.query_icmp_block:
    cmd.x_query_sequence(zone, a.query_icmp_block, fw.queryIcmpBlock, None,
                         "'%s'")

# icmp block inversion
elif a.add_icmp_block_inversion:
    fw.addIcmpBlockInversion(zone)
elif a.remove_icmp_block_inversion:
    fw.removeIcmpBlockInversion(zone)
elif a.query_icmp_block_inversion:
    cmd.print_query_result(fw.queryIcmpBlockInversion(zone))

# list all
elif a.list_all:
    z = zone if zone else fw.getDefaultZone()
    cmd.print_zone_info(z, fw.getZoneSettings(z))
    sys.exit(0)

# list everything
elif a.list_all_zones:
    for zone in fw.getZones():
        cmd.print_zone_info(zone, fw.getZoneSettings(zone))
        cmd.print_msg("")
    sys.exit(0)

elif a.info_zone:
    cmd.print_zone_info(a.info_zone, fw.getZoneSettings(a.info_zone), True)
    sys.exit(0)

elif a.info_service:
    cmd.print_service_info(a.info_service, fw.getServiceSettings(a.info_service))
    sys.exit(0)

elif a.info_icmptype:
    cmd.print_icmptype_info(a.info_icmptype, fw.getIcmpTypeSettings(a.info_icmptype))
    sys.exit(0)

cmd.print_and_exit("success")
N4m3
5!z3
L45t M0d!f!3d
0wn3r / Gr0up
P3Rm!55!0n5
0pt!0n5
..
--
March 07 2026 10:17:13
root / root
0555
2to3
0.093 KB
October 03 2024 12:55:18
root / root
0755
GET
14.706 KB
June 10 2014 01:19:13
root / root
0755
HEAD
14.706 KB
June 10 2014 01:19:13
root / root
0755
Mail
383.672 KB
April 11 2018 07:07:53
root / root
0755
POST
14.706 KB
June 10 2014 01:19:13
root / root
0755
[
40.516 KB
November 16 2020 22:24:58
root / root
0755
a2p
105.32 KB
October 25 2023 12:41:27
root / root
0755
ab
157.914 KB
June 03 2025 21:31:42
root / root
0755
aclocal
35.873 KB
June 10 2014 08:03:11
root / root
0755
aclocal-1.13
35.873 KB
June 10 2014 08:03:11
root / root
0755
acpi_listen
15.352 KB
April 10 2018 23:51:29
root / root
0755
addr2line
28.422 KB
March 10 2025 16:56:43
root / root
0755
alias
0.028 KB
November 24 2021 16:33:26
root / root
0755
animate
7.047 KB
November 12 2024 06:32:04
root / root
0755
annotate
11.125 KB
December 15 2020 16:27:32
root / root
0755
applydeltarpm
68.531 KB
June 09 2014 22:59:43
root / root
0755
apropos
45.492 KB
October 30 2018 20:26:36
root / root
0755
ar
61.211 KB
March 10 2025 16:56:43
root / root
0755
arch
32.305 KB
November 16 2020 22:24:58
root / root
0755
aria_chk
4.46 MB
May 03 2023 04:58:52
root / root
0755
aria_dump_log
4.25 MB
May 03 2023 04:58:52
root / root
0755
aria_ftdump
4.26 MB
May 03 2023 04:58:52
root / root
0755
aria_pack
4.29 MB
May 03 2023 04:58:52
root / root
0755
aria_read_log
4.42 MB
May 03 2023 04:58:52
root / root
0755
arpaname
7.031 KB
March 28 2025 11:32:06
root / root
0755
as
377.281 KB
March 10 2025 16:56:43
root / root
0755
aserver
28.211 KB
August 08 2019 12:00:59
root / root
0755
aspell
163.352 KB
June 09 2014 23:04:39
root / root
0755
at
51.727 KB
May 18 2022 15:54:00
root / root
4755
atop
245.672 KB
September 05 2019 16:31:49
root / root
0755
atopconvert
17.492 KB
September 05 2019 16:31:49
root / root
0755
atopd
0.9 KB
September 05 2019 16:30:33
root / root
0755
atopsar
245.672 KB
September 05 2019 16:31:49
root / root
0755
atq
51.727 KB
May 18 2022 15:54:00
root / root
4755
atrm
51.727 KB
May 18 2022 15:54:00
root / root
4755
audit2allow
14.213 KB
April 01 2020 04:04:49
root / root
0755
audit2why
14.213 KB
April 01 2020 04:04:49
root / root
0755
aulast
15.484 KB
August 08 2019 12:06:06
root / root
0755
aulastlog
11.352 KB
August 08 2019 12:06:06
root / root
0755
ausyscall
11.18 KB
August 08 2019 12:06:06
root / root
0755
autoconf
14.422 KB
June 10 2014 05:41:24
root / root
0755
autoheader
8.334 KB
June 10 2014 05:41:24
root / root
0755
autom4te
31.427 KB
June 10 2014 05:41:24
root / root
0755
automake
246.436 KB
June 10 2014 08:03:11
root / root
0755
automake-1.13
246.436 KB
June 10 2014 08:03:11
root / root
0755
autopoint
25.949 KB
April 01 2020 02:42:34
root / root
0755
autoreconf
20.572 KB
June 10 2014 05:41:24
root / root
0755
autoscan
16.722 KB
June 10 2014 05:41:24
root / root
0755
autoupdate
33.078 KB
June 10 2014 05:41:24
root / root
0755
auvirt
31.93 KB
August 08 2019 12:06:06
root / root
0755
awk
418.547 KB
March 28 2024 19:26:28
root / root
0755
base64
36.484 KB
November 16 2020 22:24:58
root / root
0755
basename
28.352 KB
November 16 2020 22:24:58
root / root
0755
bash
941.93 KB
November 24 2021 16:33:27
root / root
0755
bashbug
6.801 KB
November 24 2021 16:33:21
root / root
0755
bashbug-64
6.801 KB
November 24 2021 16:33:21
root / root
0755
batch
0.134 KB
May 18 2022 15:54:00
root / root
0755
bc
81.469 KB
June 09 2014 19:51:54
root / root
0755
bdftogd
3.912 KB
April 05 2006 15:40:55
root / root
0755
bdftopcf
44.188 KB
October 30 2018 16:59:35
root / root
0755
bdftruncate
11.195 KB
October 30 2018 16:59:35
root / root
0755
berkeley_db47_svc
58.461 KB
September 11 2014 17:42:43
root / root
0755
bg
0.025 KB
November 24 2021 16:33:26
root / root
0755
bind9-config
3.47 KB
March 28 2025 11:31:50
root / root
0755
bison
393.336 KB
October 30 2018 20:34:03
root / root
0755
bond2team
22.739 KB
December 09 2018 08:57:18
root / root
0755
bootctl
68.992 KB
March 26 2024 12:57:04
root / root
0755
bunzip2
31.891 KB
November 20 2015 05:04:52
root / root
0755
busctl
403.148 KB
March 26 2024 12:57:04
root / root
0755
bzcat
31.891 KB
November 20 2015 05:04:52
root / root
0755
bzcmp
2.078 KB
November 20 2015 05:04:51
root / root
0755
bzdiff
2.078 KB
November 20 2015 05:04:51
root / root
0755
bzgrep
1.638 KB
November 20 2015 05:04:51
root / root
0755
bzip2
31.891 KB
November 20 2015 05:04:52
root / root
0755
bzip2recover
15.242 KB
November 20 2015 05:04:52
root / root
0755
bzless
1.229 KB
November 20 2015 05:04:51
root / root
0755
bzmore
1.229 KB
November 20 2015 05:04:51
root / root
0755
c++
754.594 KB
April 16 2025 10:13:39
root / root
0755
c++filt
27.922 KB
March 10 2025 16:56:43
root / root
0755
c2ph
35.749 KB
October 25 2023 12:41:01
root / root
0755
c89
0.219 KB
April 16 2025 10:13:37
root / root
0755
c99
0.21 KB
April 16 2025 10:13:37
root / root
0755
ca-legacy
1.6 KB
November 05 2024 18:49:13
root / root
0755
cairo-sphinx
69.992 KB
August 08 2019 23:03:41
root / root
0755
cal
36.805 KB
February 02 2021 16:31:53
root / root
0755
captoinfo
64.258 KB
May 17 2024 07:52:28
root / root
0755
cat
52.813 KB
November 16 2020 22:24:58
root / root
0755
catchsegv
3.258 KB
July 03 2024 08:13:44
root / root
0755
catman
36.75 KB
October 30 2018 20:26:36
root / root
0755
cc
750.578 KB
April 16 2025 10:13:41
root / root
0755
cd
0.025 KB
November 24 2021 16:33:26
root / root
0755
centrino-decode
6.133 KB
May 13 2025 05:34:13
root / root
0755
certutil
179.75 KB
November 05 2024 17:00:36
root / root
0755
chacl
15.266 KB
April 01 2020 02:16:13
root / root
0755
chage
72.156 KB
August 09 2019 02:51:01
root / root
0755
chardetect
0.3 KB
August 09 2019 02:04:55
root / root
0755
chattr
11.266 KB
March 26 2024 13:19:09
root / root
0755
chcat
13.115 KB
April 01 2020 04:04:49
root / root
0755
chcon
61.461 KB
November 16 2020 22:24:58
root / root
0755
checkmodule
400.484 KB
October 30 2018 21:48:39
root / root
0755
checkpolicy
412.461 KB
October 30 2018 21:48:39
root / root
0755
chfn
23.406 KB
February 02 2021 16:31:53
root / root
4711
chgrp
61.32 KB
November 16 2020 22:24:58
root / root
0755
chmem
40.43 KB
February 02 2021 16:31:53
root / root
0755
chmod
57.211 KB
November 16 2020 22:24:58
root / root
0755
chown
61.359 KB
November 16 2020 22:24:58
root / root
0755
chronyc
85.031 KB
August 08 2019 11:40:18
root / root
0755
chrt
32.172 KB
February 02 2021 16:31:53
root / root
0755
chsh
23.32 KB
February 02 2021 16:31:53
root / root
0711
chvt
11.141 KB
November 24 2021 16:34:03
root / root
0755
cifsiostat
48.516 KB
October 13 2023 14:55:23
root / root
0755
cksum
32.375 KB
November 16 2020 22:24:58
root / root
0755
clear
7.023 KB
May 17 2024 07:52:28
root / root
0755
cmp
44.141 KB
March 07 2023 14:48:24
root / root
0755
cmsutil
110.594 KB
November 05 2024 17:00:35
root / root
0755
col
23.883 KB
February 02 2021 16:31:53
root / root
0755
colcrt
11.289 KB
February 02 2021 16:31:53
root / root
0755
colrm
23.773 KB
February 02 2021 16:31:53
root / root
0755
column
27.992 KB
February 02 2021 16:31:53
root / root
0755
combinedeltarpm
52.094 KB
June 09 2014 22:59:43
root / root
0755
comm
36.547 KB
November 16 2020 22:24:58
root / root
0755
command
0.03 KB
November 24 2021 16:33:26
root / root
0755
compare
11.086 KB
November 12 2024 06:32:04
root / root
0755
compile_et
1.445 KB
March 26 2024 13:18:56
root / root
0755
composite
7.047 KB
November 12 2024 06:32:04
root / root
0755
config_data
7.054 KB
June 10 2014 04:04:09
root / root
0755
conjure
7.047 KB
November 12 2024 06:32:04
root / root
0755
convert
7.047 KB
November 12 2024 06:32:04
root / root
0755
coredumpctl
154.523 KB
March 26 2024 12:57:04
root / root
0755
corelist
10.017 KB
October 25 2023 12:36:11
root / root
0755
cp
151.547 KB
November 16 2020 22:24:58
root / root
0755
cpan
4.975 KB
October 25 2023 12:36:11
root / root
0755
cpan-mirrors
4.271 KB
October 23 2020 09:33:26
root / root
0555
cpan2dist
21.31 KB
June 10 2014 09:24:25
root / root
0755
cpanp
3.311 KB
June 10 2014 09:24:25
root / root
0755
cpanp-run-perl
0.54 KB
June 10 2014 09:24:25
root / root
0755
cpapi1
3.02 MB
July 02 2024 04:08:16
root / root
0755
cpapi2
3.02 MB
July 02 2024 04:08:16
root / root
0755
cpapi3
3.02 MB
July 02 2024 04:08:16
root / root
0755
cpio
142.578 KB
April 05 2024 08:16:29
root / root
0755
cpp
754.578 KB
April 16 2025 10:13:42
root / root
0755
cpupower
66.336 KB
May 13 2025 05:34:13
root / root
0755
crlutil
127 KB
November 05 2024 17:00:36
root / root
0755
crontab
56.227 KB
May 16 2023 14:28:22
root / root
4755
csplit
48.82 KB
November 16 2020 22:24:58
root / root
0755
csslint-0.6
19.555 KB
September 30 2020 16:45:45
root / root
0755
curl
153 KB
March 22 2024 17:33:25
root / root
0755
cut
40.609 KB
November 16 2020 22:24:58
root / root
0755
cvtsudoers
241.703 KB
March 28 2024 17:37:53
root / root
0755
cxpm
28.047 KB
January 25 2023 16:36:39
root / root
0755
date
60.742 KB
November 16 2020 22:24:58
root / root
0755
db47_archive
10.211 KB
September 11 2014 17:42:43
root / root
0755
db47_checkpoint
10.273 KB
September 11 2014 17:42:43
root / root
0755
db47_codegen
22.25 KB
September 11 2014 17:42:43
root / root
0755
db47_deadlock
10.281 KB
September 11 2014 17:42:44
root / root
0755
db47_dump
14.25 KB
September 11 2014 17:42:44
root / root
0755
db47_hotbackup
18.375 KB
September 11 2014 17:42:44
root / root
0755
db47_load
26.328 KB
September 11 2014 17:42:44
root / root
0755
db47_printlog
62.797 KB
September 11 2014 17:42:44
root / root
0755
db47_recover
10.273 KB
September 11 2014 17:42:44
root / root
0755
db47_stat
14.219 KB
September 11 2014 17:42:44
root / root
0755
db47_upgrade
10.227 KB
September 11 2014 17:42:44
root / root
0755
db47_verify
10.219 KB
September 11 2014 17:42:44
root / root
0755
db_archive
11.227 KB
August 09 2019 00:18:22
root / root
0755
db_checkpoint
11.305 KB
August 09 2019 00:18:22
root / root
0755
db_deadlock
11.313 KB
August 09 2019 00:18:22
root / root
0755
db_dump
15.328 KB
August 09 2019 00:18:22
root / root
0755
db_dump185
64.445 KB
August 09 2019 00:18:22
root / root
0755
db_hotbackup
15.344 KB
August 09 2019 00:18:22
root / root
0755
db_load
27.508 KB
August 09 2019 00:18:22
root / root
0755
db_log_verify
15.336 KB
August 09 2019 00:18:22
root / root
0755
db_printlog
32.258 KB
August 09 2019 00:18:22
root / root
0755
db_recover
11.328 KB
August 09 2019 00:18:22
root / root
0755
db_replicate
15.344 KB
August 09 2019 00:18:22
root / root
0755
db_stat
15.258 KB
August 09 2019 00:18:22
root / root
0755
db_tuner
19.328 KB
August 09 2019 00:18:22
root / root
0755
db_upgrade
11.234 KB
August 09 2019 00:18:22
root / root
0755
db_verify
11.25 KB
August 09 2019 00:18:22
root / root
0755
dbilogstrip
1.431 KB
June 10 2014 01:06:47
root / root
0755
dbiprof
6.146 KB
June 10 2014 01:06:47
root / root
0755
dbiproxy
5.346 KB
June 10 2014 01:06:47
root / root
0755
dbus-binding-tool
94.492 KB
June 10 2014 04:06:04
root / root
0755
dbus-cleanup-sockets
11 KB
September 30 2020 15:54:54
root / root
0755
dbus-daemon
218 KB
September 30 2020 15:54:54
root / root
0755
dbus-monitor
23.125 KB
September 30 2020 15:54:54
root / root
0755
dbus-run-session
14.969 KB
September 30 2020 15:54:54
root / root
0755
dbus-send
27.07 KB
September 30 2020 15:54:54
root / root
0755
dbus-test-tool
23.133 KB
September 30 2020 15:54:54
root / root
0755
dbus-update-activation-environment
15.023 KB
September 30 2020 15:54:54
root / root
0755
dbus-uuidgen
10.984 KB
September 30 2020 15:54:54
root / root
0755
dc
44.328 KB
June 09 2014 19:51:54
root / root
0755
dd
73.141 KB
November 16 2020 22:24:58
root / root
0755
deallocvt
11.156 KB
November 24 2021 16:34:03
root / root
0755
debuginfo-install
7.882 KB
May 12 2020 16:27:40
root / root
0755
delv
39.977 KB
March 28 2025 11:32:06
root / root
0755
df
102.555 KB
November 16 2020 22:24:58
root / root
0755
dgawk
502.117 KB
March 28 2024 19:26:28
root / root
0755
diff
195.461 KB
March 07 2023 14:48:24
root / root
0755
diff3
60.648 KB
March 07 2023 14:48:24
root / root
0755
dig
146.961 KB
March 28 2025 11:32:06
root / root
0755
dir
114.852 KB
November 16 2020 22:24:58
root / root
0755
dircolors
40.438 KB
November 16 2020 22:24:58
root / root
0755
dirname
28.313 KB
November 16 2020 22:24:58
root / root
0755
display
7.047 KB
November 12 2024 06:32:04
root / root
0755
dltest
11.055 KB
August 09 2019 03:12:06
root / root
0755
dmesg
48.516 KB
February 02 2021 16:31:53
root / root
0755
dnsdomainname
15.414 KB
October 18 2019 16:02:04
root / root
0755
domainname
15.414 KB
October 18 2019 16:02:04
root / root
0755
doveadm
2.94 MB
December 30 2024 23:15:37
root / root
0755
doveconf
541.953 KB
December 30 2024 23:15:36
root / root
0755
dovecot-sysreport
5.808 KB
December 30 2024 23:15:36
root / root
0755
dracut
55.827 KB
September 30 2020 15:57:57
root / root
0755
dsync
2.94 MB
December 30 2024 23:15:37
root / root
0755
dtrace
16.661 KB
October 13 2020 16:11:22
root / root
0755
du
110.336 KB
November 16 2020 22:24:58
root / root
0755
dumpkeys
77.508 KB
November 24 2021 16:34:03
root / root
0755
dumpsexp
15.188 KB
November 02 2023 15:22:55
root / root
0755
dvipdf
1.002 KB
September 30 2020 16:20:47
root / root
0755
dwp
3.03 MB
March 10 2025 16:56:43
root / root
0755
ea-php56
4 MB
June 10 2025 21:40:49
root / root
0755
ea-php56-pear
0.374 KB
June 10 2025 21:43:56
root / root
0755
ea-php56-pecl
0.292 KB
June 10 2025 21:43:56
root / root
0755
ea-php72
4.26 MB
June 10 2025 21:43:54
root / root
0755
ea-php72-pear
0.374 KB
June 10 2025 21:48:31
root / root
0755
ea-php72-pecl
0.292 KB
June 10 2025 21:48:31
root / root
0755
ea-php73
4.65 MB
June 10 2025 21:45:07
root / root
0755
ea-php73-pear
0.374 KB
June 10 2025 21:48:11
root / root
0755
ea-php73-pecl
0.292 KB
June 10 2025 21:48:11
root / root
0755
ea-php74
6.09 MB
June 10 2025 21:53:12
root / root
0755
ea-php74-pear
0.374 KB
June 10 2025 21:56:04
root / root
0755
ea-php74-pecl
0.292 KB
June 10 2025 21:56:04
root / root
0755
easy_install
0.313 KB
October 23 2024 09:40:28
root / root
0755
easy_install-2.7
0.32 KB
October 23 2024 09:40:28
root / root
0755
echo
32.313 KB
November 16 2020 22:24:58
root / root
0755
egrep
0.283 KB
August 03 2017 06:58:17
root / root
0755
eject
48.813 KB
February 02 2021 16:31:53
root / root
0755
elfedit
32.18 KB
March 10 2025 16:56:43
root / root
0755
elinks
1.3 MB
January 10 2019 17:00:55
root / root
0755
enchant
15.289 KB
June 09 2014 18:46:47
root / root
0755
enchant-lsmod
11.133 KB
June 09 2014 18:46:47
root / root
0755
env
28.328 KB
November 16 2020 22:24:58
root / root
0755
envsubst
36.008 KB
April 01 2020 02:43:18
root / root
0755
eps2eps
0.624 KB
September 30 2020 16:20:47
root / root
0755
eqn
144.414 KB
June 09 2014 20:17:22
root / root
0755
ex
906.398 KB
July 09 2024 16:25:57
root / root
0755
expand
32.477 KB
November 16 2020 22:24:58
root / root
0755
expr
36.531 KB
November 16 2020 22:24:58
root / root
0755
factor
93.289 KB
November 16 2020 22:24:58
root / root
0755
fallocate
27.844 KB
February 02 2021 16:31:53
root / root
0755
false
28.25 KB
November 16 2020 22:24:58
root / root
0755
fc
0.025 KB
November 24 2021 16:33:26
root / root
0755
fc-cache
0.129 KB
October 30 2018 15:13:26
root / root
0755
fc-cache-64
15.453 KB
October 30 2018 18:34:13
root / root
0755
fc-cat
15.398 KB
October 30 2018 18:34:13
root / root
0755
fc-conflist
11.195 KB
October 30 2018 18:34:13
root / root
0755
fc-list
11.258 KB
October 30 2018 18:34:13
root / root
0755
fc-match
11.32 KB
October 30 2018 18:34:13
root / root
0755
fc-pattern
11.258 KB
October 30 2018 18:34:13
root / root
0755
fc-query
11.227 KB
October 30 2018 18:34:13
root / root
0755
fc-scan
11.266 KB
October 30 2018 18:34:13
root / root
0755
fc-validate
11.266 KB
October 30 2018 18:34:13
root / root
0755
fg
0.025 KB
November 24 2021 16:33:26
root / root
0755
fgconsole
11.164 KB
November 24 2021 16:34:03
root / root
0755
fgrep
0.283 KB
August 03 2017 06:58:17
root / root
0755
file
19.305 KB
September 30 2020 16:08:22
root / root
0755
find
194.633 KB
October 30 2018 16:42:55
root / root
0755
find-repos-of-install
4.269 KB
May 12 2020 16:27:40
root / root
0755
find2perl
23.061 KB
October 25 2023 12:41:01
root / root
0755
findmnt
58.375 KB
February 02 2021 16:31:53
root / root
0755
fipscheck
15.367 KB
August 02 2017 12:47:49
root / root
0755
fipshmac
11.305 KB
August 02 2017 12:47:49
root / root
0755
firewall-cmd
113.477 KB
April 28 2021 13:31:12
root / root
0755
firewall-offline-cmd
101.179 KB
April 28 2021 13:31:12
root / root
0755
flex
318.07 KB
October 30 2018 20:30:43
root / root
0755
flex++
318.07 KB
October 30 2018 20:30:43
root / root
0755
flock
23.875 KB
February 02 2021 16:31:53
root / root
0755
fmt
36.477 KB
November 16 2020 22:24:58
root / root
0755
fold
36.461 KB
November 16 2020 22:24:58
root / root
0755
fonttosfnt
35.992 KB
October 30 2018 16:59:35
root / root
0755
free
19.328 KB
September 30 2020 17:21:37
root / root
0755
freetype-config
4.386 KB
March 24 2025 14:36:31
root / root
0755
fribidi
16.094 KB
December 23 2019 15:39:41
root / root
0755
ftp
85.5 KB
November 05 2016 15:04:49
root / root
0755
funzip
31.383 KB
May 27 2024 20:59:01
root / root
0755
g++
754.594 KB
April 16 2025 10:13:39
root / root
0755
galera_new_cluster
0.896 KB
May 03 2023 04:37:56
root / root
0755
galera_recovery
3.279 KB
May 03 2023 04:37:56
root / root
0755
gapplication
19.477 KB
October 11 2023 11:02:05
root / root
0755
garb-systemd
1.13 KB
May 30 2022 05:40:17
root / root
0755
garbd
1.93 MB
May 30 2022 05:40:17
root / root
0755
gawk
418.547 KB
March 28 2024 19:26:28
root / root
0755
gcc
750.578 KB
April 16 2025 10:13:41
root / root
0755
gcc-ar
26.453 KB
April 16 2025 10:13:44
root / root
0755
gcc-nm
26.453 KB
April 16 2025 10:13:41
root / root
0755
gcc-ranlib
26.453 KB
April 16 2025 10:13:42
root / root
0755
gcov
311.453 KB
April 16 2025 10:13:39
root / root
0755
gd2copypal
7.063 KB
December 15 2020 16:27:32
root / root
0755
gd2togif
7.047 KB
December 15 2020 16:27:32
root / root
0755
gd2topng
11.063 KB
December 15 2020 16:27:32
root / root
0755
gdbus
40.172 KB
October 11 2023 11:02:05
root / root
0755
gdcmpgif
11.078 KB
December 15 2020 16:27:32
root / root
0755
gdk-pixbuf-query-loaders-64
15.383 KB
October 30 2018 21:50:18
root / root
0755
gdk-pixbuf-thumbnailer
15.594 KB
October 30 2018 21:50:18
root / root
0755
gdlib-config
2.521 KB
December 15 2020 16:27:27
root / root
0755
gdparttopng
11.07 KB
December 15 2020 16:27:32
root / root
0755
gdtopng
7.039 KB
December 15 2020 16:27:32
root / root
0755
gencat
22.109 KB
July 03 2024 08:41:41
root / root
0755
genl-ctrl-list
11.273 KB
August 03 2017 19:48:51
root / root
0755
geoiplookup
15.281 KB
August 08 2019 23:34:37
root / root
0755
geoiplookup6
11.156 KB
August 08 2019 23:34:37
root / root
0755
geoipupdate
31.281 KB
June 12 2023 14:00:58
root / root
0755
geqn
144.414 KB
June 09 2014 20:17:22
root / root
0755
getconf
22.016 KB
July 03 2024 08:41:40
root / root
0755
getent
26.391 KB
July 03 2024 08:41:41
root / root
0755
getfacl
24.289 KB
April 01 2020 02:16:13
root / root
0755
getkeycodes
11.156 KB
November 24 2021 16:34:03
root / root
0755
getopt
15.383 KB
February 02 2021 16:31:53
root / root
0755
getopts
0.03 KB
November 24 2021 16:33:26
root / root
0755
gettext
35.938 KB
April 01 2020 02:43:18
root / root
0755
gettext.sh
4.521 KB
April 01 2020 02:41:05
root / root
0755
gettextize
42.693 KB
April 01 2020 02:42:34
root / root
0755
ghostscript
10.969 KB
September 30 2020 16:21:08
root / root
0755
giftogd2
7.055 KB
December 15 2020 16:27:32
root / root
0755
gio
73.414 KB
October 11 2023 11:02:05
root / root
0755
gio-querymodules-64
11.313 KB
October 11 2023 11:02:05
root / root
0755
git
1.46 MB
July 30 2024 09:13:24
root / root
0755
git-receive-pack
1.46 MB
July 30 2024 09:13:24
root / root
0755
git-shell
722.039 KB
July 30 2024 09:13:24
root / root
0755
git-upload-archive
1.46 MB
July 30 2024 09:13:24
root / root
0755
git-upload-pack
795.477 KB
July 30 2024 09:13:24
root / root
0755
glib-compile-schemas
44.375 KB
October 11 2023 11:02:05
root / root
0755
gmake
178.469 KB
August 09 2019 00:46:49
root / root
0755
gneqn
0.265 KB
June 09 2014 20:17:13
root / root
0755
gnroff
3.313 KB
June 09 2014 20:17:15
root / root
0755
gpasswd
76.57 KB
August 09 2019 02:51:01
root / root
4755
gpg
732.398 KB
July 13 2018 13:05:25
root / root
0755
gpg-agent
289.742 KB
July 13 2018 13:05:25
root / root
0755
gpg-connect-agent
152.688 KB
July 13 2018 13:05:25
root / root
0755
gpg-error
23.18 KB
June 10 2014 08:46:48
root / root
0755
gpg-error-config
1.833 KB
June 10 2014 08:46:47
root / root
0755
gpg-zip
3.229 KB
July 13 2018 13:05:12
root / root
0755
gpg2
732.398 KB
July 13 2018 13:05:25
root / root
0755
gpgconf
140.313 KB
July 13 2018 13:05:25
root / root
0755
gpgparsemail
23.703 KB
July 13 2018 13:05:25
root / root
0755
gpgsplit
48.883 KB
July 13 2018 13:05:25
root / root
0755
gpgv
345.383 KB
July 13 2018 13:05:25
root / root
0755
gpgv2
345.383 KB
July 13 2018 13:05:25
root / root
0755
gpic
180.406 KB
June 09 2014 20:17:22
root / root
0755
gprof
98.414 KB
March 10 2025 16:56:43
root / root
0755
gr2fonttest
23.656 KB
July 21 2017 10:40:25
root / root
0755
grep
155.297 KB
August 03 2017 06:58:18
root / root
0755
groff
81.625 KB
June 09 2014 20:17:22
root / root
0755
grops
140.852 KB
June 09 2014 20:17:22
root / root
0755
grotty
98.586 KB
June 09 2014 20:17:22
root / root
0755
groups
32.414 KB
November 16 2020 22:24:58
root / root
0755
grub2-editenv
396.086 KB
April 09 2025 13:06:14
root / root
0755
grub2-file
834.367 KB
April 09 2025 13:06:14
root / root
0755
grub2-fstest
1.03 MB
April 09 2025 13:06:14
root / root
0755
grub2-glue-efi
258.805 KB
April 09 2025 13:06:14
root / root
0755
grub2-kbdcomp
1.629 KB
April 09 2025 13:06:03
root / root
0755
grub2-menulst2cfg
241.828 KB
April 09 2025 13:06:14
root / root
0755
grub2-mkfont
287.602 KB
April 09 2025 13:06:14
root / root
0755
grub2-mkimage
379.242 KB
April 09 2025 13:06:14
root / root
0755
grub2-mklayout
264.867 KB
April 09 2025 13:06:14
root / root
0755
grub2-mknetdir
429.773 KB
April 09 2025 13:06:14
root / root
0755
grub2-mkpasswd-pbkdf2
271.297 KB
April 09 2025 13:06:14
root / root
0755
grub2-mkrelpath
258.477 KB
April 09 2025 13:06:14
root / root
0755
grub2-mkrescue
1021.773 KB
April 09 2025 13:06:14
root / root
0755
grub2-mkstandalone
534.305 KB
April 09 2025 13:06:14
root / root
0755
grub2-render-label
839.156 KB
April 09 2025 13:06:14
root / root
0755
grub2-script-check
295.406 KB
April 09 2025 13:06:14
root / root
0755
grub2-syslinux2cfg
767.719 KB
April 09 2025 13:06:14
root / root
0755
gs
10.969 KB
September 30 2020 16:21:08
root / root
0755
gsbj
0.342 KB
September 30 2020 16:20:47
root / root
0755
gsdj
0.344 KB
September 30 2020 16:20:47
root / root
0755
gsdj500
0.344 KB
September 30 2020 16:20:47
root / root
0755
gsettings
23.805 KB
October 11 2023 11:02:05
root / root
0755
gslj
0.345 KB
September 30 2020 16:20:47
root / root
0755
gslp
0.342 KB
September 30 2020 16:20:47
root / root
0755
gsnd
0.271 KB
September 30 2020 16:20:47
root / root
0755
gsoelim
32.586 KB
June 09 2014 20:17:22
root / root
0755
gss-client
23.172 KB
February 12 2025 13:26:31
root / root
0755
gtar
338.023 KB
October 30 2018 20:24:30
root / root
0755
gtbl
115.961 KB
June 09 2014 20:17:22
root / root
0755
gtroff
512.961 KB
June 09 2014 20:17:22
root / root
0755
gunzip
2.2 KB
May 12 2022 14:58:32
root / root
0755
gzexe
5.792 KB
May 12 2022 14:58:32
root / root
0755
gzip
98.43 KB
May 12 2022 14:58:32
root / root
0755
h2ph
27.646 KB
October 25 2023 12:41:01
root / root
0755
h2xs
59.146 KB
October 25 2023 12:41:01
root / root
0755
hdsploader
11.18 KB
November 05 2016 18:34:04
root / root
0755
head
40.508 KB
November 16 2020 22:24:58
root / root
0755
hexdump
32.016 KB
February 02 2021 16:31:53
root / root
0755
hmac256
15.672 KB
November 02 2023 15:22:55
root / root
0755
host
127.016 KB
March 28 2025 11:32:06
root / root
0755
hostid
28.32 KB
November 16 2020 22:24:58
root / root
0755
hostname
15.414 KB
October 18 2019 16:02:04
root / root
0755
hostnamectl
318.07 KB
March 26 2024 12:57:04
root / root
0755
htdbm
56.141 KB
June 03 2025 21:31:42
root / root
0755
htdigest
29.352 KB
June 03 2025 21:31:42
root / root
0755
htop
165.648 KB
January 17 2019 02:46:51
root / root
0755
htpasswd
54.203 KB
June 03 2025 21:31:42
root / root
0755
httxt2dbm
21.688 KB
June 03 2025 21:31:42
root / root
0755
hunspell
53.109 KB
September 30 2020 16:35:58
root / root
0755
i386
15.273 KB
February 02 2021 16:31:53
root / root
0755
iceauth
31.734 KB
August 11 2017 18:43:11
root / root
0755
iconv
58.141 KB
July 03 2024 08:41:41
root / root
0755
id
36.523 KB
November 16 2020 22:24:58
root / root
0755
identify
7.063 KB
November 12 2024 06:32:04
root / root
0755
idiag-socket-details
11.336 KB
August 03 2017 19:48:51
root / root
0755
idle
0.091 KB
October 03 2024 12:55:18
root / root
0755
idn
32.453 KB
November 21 2015 17:00:47
root / root
0755
ifnames
4.031 KB
June 10 2014 05:41:24
root / root
0755
igawk
3.113 KB
March 28 2024 19:26:26
root / root
0755
import
7.047 KB
November 12 2024 06:32:04
root / root
0755
info
265.188 KB
April 11 2018 01:03:35
root / root
0755
infocmp
56.07 KB
May 17 2024 07:52:28
root / root
0755
infokey
21.469 KB
April 11 2018 01:03:35
root / root
0755
infotocap
64.258 KB
May 17 2024 07:52:28
root / root
0755
innochecksum
3.54 MB
May 03 2023 04:58:52
root / root
0755
install
139.594 KB
November 16 2020 22:24:58
root / root
0755
instmodsh
4.147 KB
June 10 2014 01:58:19
root / root
0755
ionice
23.859 KB
February 02 2021 16:31:53
root / root
0755
iostat
60.789 KB
October 13 2023 14:55:23
root / root
0755
ipcalc
15.055 KB
November 16 2020 16:20:20
root / root
0755
ipcmk
24 KB
February 02 2021 16:31:53
root / root
0755
ipcrm
27.852 KB
February 02 2021 16:31:53
root / root
0755
ipcs
48.367 KB
February 02 2021 16:31:53
root / root
0755
iptables-xml
91.516 KB
October 01 2020 16:52:53
root / root
0755
isc-config.sh
3.47 KB
March 28 2025 11:31:50
root / root
0755
isosize
23.828 KB
February 02 2021 16:31:53
root / root
0755
ispell
0.965 KB
June 09 2014 23:04:36
root / root
0755
isql
31.688 KB
August 09 2019 03:12:06
root / root
0755
iusql
23.609 KB
August 09 2019 03:12:06
root / root
0755
jobs
0.027 KB
November 24 2021 16:33:26
root / root
0755
join
48.75 KB
November 16 2020 22:24:58
root / root
0755
journalctl
537.875 KB
March 26 2024 12:57:04
root / root
0755
js
3.36 MB
April 11 2018 00:29:16
root / root
0755
json_pp
3.818 KB
June 10 2014 03:16:03
root / root
0755
json_reformat
35.891 KB
June 10 2014 05:00:23
root / root
0755
json_verify
27.516 KB
June 10 2014 05:00:23
root / root
0755
kbd_mode
11.156 KB
November 24 2021 16:34:03
root / root
0755
kbdinfo
11.188 KB
November 24 2021 16:34:03
root / root
0755
kbdrate
11.219 KB
November 24 2021 16:34:03
root / root
0755
kdumpctl
33.178 KB
June 09 2021 16:09:58
root / root
0755
kernel-install
4.698 KB
March 26 2024 12:56:25
root / root
0755
keyctl
27.938 KB
June 10 2014 02:17:55
root / root
0755
kill
32.82 KB
February 02 2021 16:31:53
root / root
0755
killall
24.141 KB
September 30 2020 17:20:27
root / root
0755
kmod
143.242 KB
April 01 2020 02:58:15
root / root
0755
krb5-config
6.956 KB
February 12 2025 13:26:21
root / root
0755
last
19.109 KB
June 09 2014 23:16:44
root / root
0755
lastb
19.109 KB
June 09 2014 23:16:44
root / root
0755
lastlog
19.148 KB
August 09 2019 02:51:01
root / root
0755
lchfn
15.523 KB
April 12 2018 18:44:23
root / root
0755
lchsh
15.492 KB
April 12 2018 18:44:23
root / root
0755
ld
982.586 KB
March 10 2025 16:56:43
root / root
0755
ld.bfd
982.586 KB
March 10 2025 16:56:43
root / root
0755
ld.gold
5.11 MB
March 10 2025 16:56:43
root / root
0755
ldd
5.178 KB
July 03 2024 08:13:51
root / root
0755
less
154.57 KB
June 11 2024 14:35:22
root / root
0755
lessecho
11.133 KB
June 11 2024 14:35:22
root / root
0755
lesskey
16.672 KB
June 11 2024 14:35:22
root / root
0755
lesspipe.sh
2.237 KB
January 13 2022 18:00:05
root / root
0755
lex
318.07 KB
October 30 2018 20:30:43
root / root
0755
lexgrog
85.086 KB
October 30 2018 20:26:36
root / root
0755
libgcrypt-config
3.775 KB
November 02 2023 15:22:54
root / root
0755
libnetcfg
15.355 KB
October 25 2023 12:41:01
root / root
0755
libpng-config
2.38 KB
October 13 2020 15:52:16
root / root
0755
libpng15-config
2.38 KB
October 13 2020 15:52:16
root / root
0755
libtool
314.04 KB
April 12 2017 18:57:10
root / root
0755
libtoolize
76.805 KB
April 12 2017 18:57:10
root / root
0755
libwmf-fontmap
12.776 KB
September 30 2020 16:52:14
root / root
0755
link
28.305 KB
November 16 2020 22:24:58
root / root
0755
links
1.3 MB
January 10 2019 17:00:55
root / root
0755
linux-boot-prober
5.854 KB
November 06 2016 03:30:02
root / root
0755
linux32
15.273 KB
February 02 2021 16:31:53
root / root
0755
linux64
15.273 KB
February 02 2021 16:31:53
root / root
0755
ln
57.219 KB
November 16 2020 22:24:58
root / root
0755
loadkeys
110.484 KB
November 24 2021 16:34:03
root / root
0755
loadunimap
23.883 KB
November 24 2021 16:34:03
root / root
0755
locale
37.109 KB
July 03 2024 08:41:41
root / root
0755
localectl
326.234 KB
March 26 2024 12:57:03
root / root
0755
localedef
318.313 KB
July 03 2024 08:41:41
root / root
0755
logger
28.617 KB
February 02 2021 16:31:53
root / root
0755
login
36.375 KB
February 02 2021 16:31:53
root / root
0755
loginctl
489.602 KB
March 26 2024 12:57:03
root / root
0755
logname
28.313 KB
November 16 2020 22:24:58
root / root
0755
logresolve
28.578 KB
June 03 2025 21:31:42
root / root
0755
look
11.273 KB
February 02 2021 16:31:53
root / root
0755
lprsetup.sh
5.342 KB
September 30 2020 16:20:47
root / root
0755
ls
114.852 KB
November 16 2020 22:24:58
root / root
0755
lsattr
11.25 KB
March 26 2024 13:19:09
root / root
0755
lsblk
79.172 KB
February 02 2021 16:31:53
root / root
0755
lscpu
60.75 KB
February 02 2021 16:31:53
root / root
0755
lsinitrd
6.26 KB
September 30 2020 15:57:57
root / root
0755
lsipc
60.945 KB
February 02 2021 16:31:53
root / root
0755
lslocks
41.008 KB
February 02 2021 16:31:53
root / root
0755
lslogins
52.883 KB
February 02 2021 16:31:53
root / root
0755
lsmem
40.781 KB
February 02 2021 16:31:53
root / root
0755
lsns
36.43 KB
February 02 2021 16:31:53
root / root
0755
lsphp
0.915 KB
April 01 2025 16:34:16
root / root
0755
lsscsi
56.477 KB
August 03 2017 02:11:06
root / root
0755
lua
15.469 KB
November 06 2016 02:47:35
root / root
0755
luac
119.031 KB
November 06 2016 02:47:35
root / root
0755
lwp-download
8.433 KB
June 10 2014 01:19:13
root / root
0755
lwp-dump
2.732 KB
June 10 2014 01:19:13
root / root
0755
lwp-mirror
2.42 KB
June 10 2014 01:19:13
root / root
0755
lwp-request
14.706 KB
June 10 2014 01:19:13
root / root
0755
lz4
105.867 KB
January 04 2024 09:43:03
root / root
0755
lz4c
105.867 KB
January 04 2024 09:43:03
root / root
0755
lz4cat
105.867 KB
January 04 2024 09:43:03
root / root
0755
lzcat
73.523 KB
June 15 2022 14:40:44
root / root
0755
lzcmp
6.477 KB
June 15 2022 14:40:32
root / root
0755
lzdiff
6.477 KB
June 15 2022 14:40:32
root / root
0755
lzegrep
5.764 KB
June 15 2022 14:40:32
root / root
0755
lzfgrep
5.764 KB
June 15 2022 14:40:32
root / root
0755
lzgrep
5.764 KB
June 15 2022 14:40:32
root / root
0755
lzless
1.76 KB
June 15 2022 14:40:32
root / root
0755
lzma
73.523 KB
June 15 2022 14:40:44
root / root
0755
lzmadec
11.211 KB
June 15 2022 14:40:44
root / root
0755
lzmainfo
11.195 KB
June 15 2022 14:40:44
root / root
0755
lzmore
2.11 KB
June 15 2022 14:40:32
root / root
0755
m4
151.172 KB
November 20 2015 07:27:57
root / root
0755
machinectl
533.93 KB
March 26 2024 12:57:04
root / root
0755
mail
383.672 KB
April 11 2018 07:07:53
root / root
0755
mailx
383.672 KB
April 11 2018 07:07:53
root / root
0755
make
178.469 KB
August 09 2019 00:46:49
root / root
0755
makedb
18.109 KB
July 03 2024 08:41:40
root / root
0755
makedeltarpm
68.391 KB
June 09 2014 22:59:43
root / root
0755
man
100.438 KB
October 30 2018 20:26:36
root / root
0755
mandb
122.25 KB
October 30 2018 20:26:36
root / root
0755
manpath
32.555 KB
October 30 2018 20:26:36
root / root
0755
mapscrn
19.781 KB
November 24 2021 16:34:03
root / root
0755
mariadb-service-convert
2.445 KB
May 03 2023 04:32:45
root / root
0755
mariadb_config
11.57 KB
May 03 2023 04:57:01
root / root
0755
mc
1.09 MB
November 05 2016 23:18:36
root / root
0755
mcdiff
1.09 MB
November 05 2016 23:18:36
root / root
0755
mcedit
1.09 MB
November 05 2016 23:18:36
root / root
0755
mcookie
15.438 KB
February 02 2021 16:31:53
root / root
0755
mcview
1.09 MB
November 05 2016 23:18:36
root / root
0755
md5sum
40.531 KB
November 16 2020 22:24:58
root / root
0755
mdig
44.195 KB
March 28 2025 11:32:06
root / root
0755
mesg
10.977 KB
June 09 2014 23:16:44
root / root
0755
mixartloader
15.375 KB
November 05 2016 18:34:04
root / root
0755
mkdir
77.898 KB
November 16 2020 22:24:58
root / root
0755
mkfifo
61.586 KB
November 16 2020 22:24:58
root / root
0755
mkfontdir
0.063 KB
October 30 2018 16:59:34
root / root
0755
mkfontscale
32.477 KB
October 30 2018 16:59:35
root / root
0755
mkinitrd
2.942 KB
September 30 2020 15:57:57
root / root
0755
mknod
65.609 KB
November 16 2020 22:24:58
root / root
0755
mktemp
40.656 KB
November 16 2020 22:24:58
root / root
0755
modutil
165.781 KB
November 05 2024 17:00:36
root / root
0755
mogrify
7.047 KB
November 12 2024 06:32:04
root / root
0755
montage
7.047 KB
November 12 2024 06:32:04
root / root
0755
more
40.148 KB
February 02 2021 16:31:53
root / root
0755
mount
43.227 KB
February 02 2021 16:31:53
root / root
4755
mountpoint
15.32 KB
February 02 2021 16:31:53
root / root
0755
mpstat
56.539 KB
October 13 2023 14:55:23
root / root
0755
msgattrib
23.359 KB
April 01 2020 02:43:18
root / root
0755
msgcat
23.336 KB
April 01 2020 02:43:18
root / root
0755
msgcmp
23.586 KB
April 01 2020 02:43:18
root / root
0755
msgcomm
19.313 KB
April 01 2020 02:43:18
root / root
0755
msgconv
19.305 KB
April 01 2020 02:43:18
root / root
0755
msgen
19.305 KB
April 01 2020 02:43:18
root / root
0755
msgexec
15.328 KB
April 01 2020 02:43:18
root / root
0755
msgfilter
27.563 KB
April 01 2020 02:43:18
root / root
0755
msgfmt
77.055 KB
April 01 2020 02:43:18
root / root
0755
msgfmt.py
6.333 KB
October 03 2024 12:56:24
root / root
0755
msggrep
35.969 KB
April 01 2020 02:43:18
root / root
0755
msghack
12.452 KB
November 27 2019 15:49:53
root / root
0755
msginit
44.383 KB
April 01 2020 02:43:18
root / root
0755
msgmerge
52.602 KB
April 01 2020 02:43:18
root / root
0755
msgunfmt
31.703 KB
April 01 2020 02:43:18
root / root
0755
msguniq
19.313 KB
April 01 2020 02:43:18
root / root
0755
msql2mysql
1.412 KB
May 03 2023 04:37:56
root / root
0755
mv
127.305 KB
November 16 2020 22:24:58
root / root
0755
my_print_defaults
3.41 MB
May 03 2023 04:58:52
root / root
0755
myisam_ftdump
3.78 MB
May 03 2023 04:58:52
root / root
0755
myisamchk
3.9 MB
May 03 2023 04:58:52
root / root
0755
myisamlog
3.75 MB
May 03 2023 04:58:52
root / root
0755
myisampack
3.8 MB
May 03 2023 04:58:52
root / root
0755
mysql
4.21 MB
May 03 2023 04:56:24
root / root
0755
mysql_config
4.58 KB
May 03 2023 04:37:56
root / root
0755
mysql_convert_table_format
4.118 KB
May 03 2023 04:37:56
root / root
0755
mysql_embedded
20.36 MB
May 03 2023 04:56:25
root / root
0755
mysql_find_rows
3.213 KB
May 03 2023 04:37:56
root / root
0755
mysql_fix_extensions
1.221 KB
May 03 2023 04:37:56
root / root
0755
mysql_install_db
19.699 KB
May 03 2023 04:37:56
root / root
0755
mysql_plugin
3.42 MB
May 03 2023 04:56:24
root / root
0755
mysql_secure_installation
12.233 KB
May 03 2023 04:37:56
root / root
0755
mysql_setpermission
17.131 KB
May 03 2023 04:37:56
root / root
0755
mysql_tzinfo_to_sql
3.42 MB
May 03 2023 04:58:52
root / root
0755
mysql_upgrade
3.5 MB
May 03 2023 04:58:52
root / root
0755
mysql_waitpid
3.41 MB
May 03 2023 04:56:24
root / root
0755
mysqlaccess
109.327 KB
May 03 2023 04:37:56
root / root
0755
mysqladmin
3.73 MB
May 03 2023 04:56:24
root / root
0755
mysqlbinlog
3.98 MB
May 03 2023 04:56:24
root / root
0755
mysqlcheck
3.73 MB
May 03 2023 04:56:24
root / root
0755
mysqld_multi
26.686 KB
May 03 2023 04:37:56
root / root
0755
mysqld_safe
30.057 KB
May 03 2023 04:37:56
root / root
0755
mysqld_safe_helper
3.38 MB
May 03 2023 04:58:52
root / root
0755
mysqldump
3.83 MB
May 03 2023 04:56:24
root / root
0755
mysqldumpslow
8.049 KB
May 03 2023 04:37:56
root / root
0755
mysqlhotcopy
34.144 KB
May 03 2023 04:37:56
root / root
0755
mysqlimport
3.72 MB
May 03 2023 04:56:24
root / root
0755
mysqlshow
3.72 MB
May 03 2023 04:56:24
root / root
0755
mysqlslap
3.74 MB
May 03 2023 04:56:24
root / root
0755
nail
383.672 KB
April 11 2018 07:07:53
root / root
0755
named-rrchecker
15.32 KB
March 28 2025 11:32:06
root / root
0755
namei
27.945 KB
February 02 2021 16:31:53
root / root
0755
nano
201.078 KB
June 10 2014 04:47:54
root / root
0755
ncurses5-config
5.678 KB
May 17 2024 07:52:14
root / root
0755
ncursesw5-config
5.681 KB
May 17 2024 07:52:15
root / root
0755
ndptool
23.625 KB
August 20 2024 09:23:39
root / root
0755
needs-restarting
8.168 KB
May 12 2020 16:27:40
root / root
0755
neqn
0.265 KB
June 09 2014 20:17:13
root / root
0755
netstat
151.375 KB
August 09 2019 01:10:25
root / root
0755
nettle-hash
11.328 KB
March 04 2024 21:51:58
root / root
0755
nettle-lfib-stream
7.047 KB
March 04 2024 21:51:58
root / root
0755
newgidmap
38.086 KB
August 09 2019 02:51:01
root / root
0755
newgrp
40.953 KB
August 09 2019 02:51:01
root / root
0755
newuidmap
38.063 KB
August 09 2019 02:51:01
root / root
0755
nf-ct-add
11.805 KB
August 03 2017 19:48:51
root / root
0755
nf-ct-list
15.836 KB
August 03 2017 19:48:51
root / root
0755
nf-exp-add
16.211 KB
August 03 2017 19:48:51
root / root
0755
nf-exp-delete
15.992 KB
August 03 2017 19:48:51
root / root
0755
nf-exp-list
11.805 KB
August 03 2017 19:48:51
root / root
0755
nf-log
11.234 KB
August 03 2017 19:48:51
root / root
0755
nf-monitor
11.18 KB
August 03 2017 19:48:51
root / root
0755
nf-queue
11.273 KB
August 03 2017 19:48:51
root / root
0755
nfsiostat-sysstat
52.547 KB
October 13 2023 14:55:23
root / root
0755
ngettext
35.953 KB
April 01 2020 02:43:18
root / root
0755
nice
32.32 KB
November 16 2020 22:24:58
root / root
0755
nisdomainname
15.414 KB
October 18 2019 16:02:04
root / root
0755
nl
40.602 KB
November 16 2020 22:24:58
root / root
0755
nl-addr-add
11.648 KB
August 03 2017 19:48:51
root / root
0755
nl-addr-delete
11.734 KB
August 03 2017 19:48:51
root / root
0755
nl-addr-list
15.875 KB
August 03 2017 19:48:51
root / root
0755
nl-class-add
11.695 KB
August 03 2017 19:48:51
root / root
0755
nl-class-delete
11.547 KB
August 03 2017 19:48:51
root / root
0755
nl-class-list
11.477 KB
August 03 2017 19:48:51
root / root
0755
nl-classid-lookup
11.289 KB
August 03 2017 19:48:51
root / root
0755
nl-cls-add
11.758 KB
August 03 2017 19:48:51
root / root
0755
nl-cls-delete
11.68 KB
August 03 2017 19:48:51
root / root
0755
nl-cls-list
11.578 KB
August 03 2017 19:48:51
root / root
0755
nl-fib-lookup
11.414 KB
August 03 2017 19:48:51
root / root
0755
nl-link-enslave
7.047 KB
August 03 2017 19:48:51
root / root
0755
nl-link-ifindex2name
7.063 KB
August 03 2017 19:48:51
root / root
0755
nl-link-list
11.523 KB
August 03 2017 19:48:51
root / root
0755
nl-link-name2ifindex
7.047 KB
August 03 2017 19:48:51
root / root
0755
nl-link-release
7.047 KB
August 03 2017 19:48:51
root / root
0755
nl-link-set
11.641 KB
August 03 2017 19:48:51
root / root
0755
nl-link-stats
11.391 KB
August 03 2017 19:48:51
root / root
0755
nl-list-caches
11.078 KB
August 03 2017 19:48:51
root / root
0755
nl-list-sockets
7.063 KB
August 03 2017 19:48:51
root / root
0755
nl-monitor
11.195 KB
August 03 2017 19:48:51
root / root
0755
nl-neigh-add
11.508 KB
August 03 2017 19:48:51
root / root
0755
nl-neigh-delete
11.57 KB
August 03 2017 19:48:51
root / root
0755
nl-neigh-list
11.461 KB
August 03 2017 19:48:51
root / root
0755
nl-neightbl-list
11.266 KB
August 03 2017 19:48:51
root / root
0755
nl-pktloc-lookup
11.359 KB
August 03 2017 19:48:51
root / root
0755
nl-qdisc-add
11.602 KB
August 03 2017 19:48:51
root / root
0755
nl-qdisc-delete
11.539 KB
August 03 2017 19:48:51
root / root
0755
nl-qdisc-list
11.625 KB
August 03 2017 19:48:51
root / root
0755
nl-route-add
11.734 KB
August 03 2017 19:48:51
root / root
0755
nl-route-delete
15.859 KB
August 03 2017 19:48:51
root / root
0755
nl-route-get
11.18 KB
August 03 2017 19:48:51
root / root
0755
nl-route-list
11.773 KB
August 03 2017 19:48:51
root / root
0755
nl-rule-list
11.297 KB
August 03 2017 19:48:51
root / root
0755
nl-tctree-list
11.531 KB
August 03 2017 19:48:51
root / root
0755
nl-util-addr
7.031 KB
August 03 2017 19:48:51
root / root
0755
nload
152.656 KB
September 25 2014 18:36:16
root / root
0755
nm
45.43 KB
March 10 2025 16:56:43
root / root
0755
nm-online
15.164 KB
November 16 2020 16:15:18
root / root
0755
nmcli
809.164 KB
November 16 2020 16:15:18
root / root
0755
nmtui
646.766 KB
November 16 2020 16:15:18
root / root
0755
nmtui-connect
646.766 KB
November 16 2020 16:15:18
root / root
0755
nmtui-edit
646.766 KB
November 16 2020 16:15:18
root / root
0755
nmtui-hostname
646.766 KB
November 16 2020 16:15:18
root / root
0755
nohup
32.422 KB
November 16 2020 22:24:58
root / root
0755
nproc
32.367 KB
November 16 2020 22:24:58
root / root
0755
nroff
3.313 KB
June 09 2014 20:17:15
root / root
0755
nsenter
28.219 KB
February 02 2021 16:31:53
root / root
0755
nslookup
130.93 KB
March 28 2025 11:32:06
root / root
0755
nss-policy-check
15.258 KB
November 05 2024 17:00:36
root / root
0755
nsupdate
65.195 KB
March 28 2025 11:32:06
root / root
0755
numfmt
64.711 KB
November 16 2020 22:24:58
root / root
0755
objcopy
227.336 KB
March 10 2025 16:56:43
root / root
0755
objdump
357.75 KB
March 10 2025 16:56:43
root / root
0755
od
64.813 KB
November 16 2020 22:24:58
root / root
0755
odbc_config
11.039 KB
August 09 2019 03:12:06
root / root
0755
odbcinst
27.688 KB
August 09 2019 03:12:06
root / root
0755
oldfind
186.406 KB
October 30 2018 16:42:55
root / root
0755
open
19.477 KB
November 24 2021 16:34:03
root / root
0755
openssl
542.266 KB
April 17 2025 17:02:26
root / root
0755
openvt
19.477 KB
November 24 2021 16:34:03
root / root
0755
os-prober
5.511 KB
November 06 2016 03:30:02
root / root
0755
p11-kit
32.18 KB
August 04 2017 23:36:46
root / root
0755
package-cleanup
17.386 KB
May 12 2020 16:27:40
root / root
0755
page_owner_sort
10.195 KB
May 13 2025 05:34:13
root / root
0755
pango-list
11.102 KB
September 13 2019 18:03:17
root / root
0755
pango-querymodules-64
28.258 KB
November 16 2020 22:24:58
root / root
0755
pango-view
49.469 KB
September 13 2019 18:03:17
root / root
0755
paperconf
11.227 KB
September 30 2020 16:48:25
root / root
0755
passwd
27.203 KB
April 01 2020 03:57:19
root / root
4755
paste
32.344 KB
November 16 2020 22:24:58
root / root
0755
patch
147 KB
October 22 2019 23:59:36
root / root
0755
pathchk
32.313 KB
November 16 2020 22:24:58
root / root
0755
pchrt
3.93 KB
November 05 2016 21:51:47
root / root
0755
pcre-config
2.088 KB
August 02 2017 03:07:58
root / root
0755
pdf2dsc
0.682 KB
September 30 2020 16:20:47
root / root
0755
pdf2ps
0.888 KB
September 30 2020 16:20:47
root / root
0755
pdns_control
7.58 MB
July 19 2024 19:44:03
root / root
0755
pdnsutil
70.52 MB
July 19 2024 19:44:03
root / root
0755
peekfd
11.211 KB
September 30 2020 17:20:27
root / root
0755
perl
11.141 KB
October 25 2023 12:41:27
root / root
0755
perl5.16.3
11.141 KB
October 25 2023 12:41:27
root / root
0755
perlbug
43.605 KB
October 25 2023 12:41:01
root / root
0755
perldoc
0.198 KB
June 10 2014 08:17:48
root / root
0755
perlivp
10.52 KB
October 25 2023 12:41:01
root / root
0755
perlml
5.984 KB
August 10 2022 20:55:32
root / root
0755
perlthanks
43.605 KB
October 25 2023 12:41:01
root / root
0755
perror
3.6 MB
May 03 2023 04:58:52
root / root
0755
pf2afm
0.486 KB
September 30 2020 16:20:47
root / root
0755
pfbtopfa
0.504 KB
September 30 2020 16:20:47
root / root
0755
pflags
2.062 KB
August 09 2019 02:08:24
root / root
0755
pftp
85.5 KB
November 05 2016 15:04:49
root / root
0755
pgawk
418.586 KB
March 28 2024 19:26:28
root / root
0755
pgrep
27.672 KB
September 30 2020 17:21:37
root / root
0755
php
0.915 KB
April 01 2025 16:34:16
root / root
0755
pic
180.406 KB
June 09 2014 20:17:22
root / root
0755
piconv
7.985 KB
June 10 2014 02:49:27
root / root
0755
pidstat
68.906 KB
October 13 2023 14:55:23
root / root
0755
pinentry
2.541 KB
November 04 2016 18:02:54
root / root
0755
pinentry-curses
49.188 KB
November 05 2016 15:49:27
root / root
0755
ping
64.625 KB
August 04 2017 08:01:04
root / root
0755
ping6
64.625 KB
August 04 2017 08:01:04
root / root
0755
pinky
36.57 KB
November 16 2020 22:24:58
root / root
0755
pk12util
103.219 KB
November 05 2024 17:00:35
root / root
0755
pkaction
15 KB
January 25 2022 19:42:49
root / root
0755
pkcheck
23.031 KB
January 25 2022 19:42:49
root / root
0755
pkcs1-conv
15.523 KB
March 04 2024 21:51:58
root / root
0755
pkexec
27.023 KB
January 25 2022 19:42:49
root / root
4755
pkg-config
44.383 KB
June 09 2014 22:05:48
root / root
0755
pkill
27.672 KB
September 30 2020 17:21:37
root / root
0755
pkla-admin-identities
19.227 KB
June 09 2014 22:08:33
root / root
0755
pkla-check-authorization
27.305 KB
June 09 2014 22:08:33
root / root
0755
pkttyagent
18.984 KB
January 25 2022 19:42:49
root / root
0755
pl2pm
4.425 KB
October 25 2023 12:40:42
root / root
0755
pldd
14.109 KB
July 03 2024 08:41:40
root / root
0755
plymouth
39.766 KB
October 01 2020 16:53:21
root / root
0755
pmap
27.609 KB
September 30 2020 17:21:37
root / root
0755
pngtogd
7.047 KB
December 15 2020 16:27:32
root / root
0755
pngtogd2
7.055 KB
December 15 2020 16:27:32
root / root
0755
pod2html
4 KB
October 25 2023 12:41:01
root / root
0755
pod2latex
10.098 KB
June 10 2014 07:53:58
root / root
0755
pod2man
13.263 KB
June 09 2014 19:56:13
root / root
0755
pod2text
10.746 KB
June 09 2014 19:56:13
root / root
0755
pod2usage
3.667 KB
June 10 2014 08:56:18
root / root
0755
podchecker
3.695 KB
June 09 2014 20:28:38
root / root
0755
podselect
2.551 KB
June 10 2014 04:04:08
root / root
0755
post-grohtml
187.547 KB
June 09 2014 20:17:22
root / root
0755
powernow-k8-decode
6.148 KB
May 13 2025 05:34:13
root / root
0755
pphs
0.395 KB
September 30 2020 16:20:47
root / root
0755
pr
65.109 KB
November 16 2020 22:24:58
root / root
0755
pre-grohtml
86.242 KB
June 09 2014 20:17:22
root / root
0755
precat
5.523 KB
June 09 2014 23:04:35
root / root
0755
preconv
40.883 KB
June 09 2014 20:17:22
root / root
0755
preunzip
5.523 KB
June 09 2014 23:04:35
root / root
0755
prezip
5.523 KB
June 09 2014 23:04:35
root / root
0755
prezip-bin
11.055 KB
June 09 2014 23:04:39
root / root
0755
printafm
0.386 KB
September 30 2020 16:20:47
root / root
0755
printenv
28.281 KB
November 16 2020 22:24:58
root / root
0755
printf
48.609 KB
November 16 2020 22:24:58
root / root
0755
prlimit
41.195 KB
February 02 2021 16:31:53
root / root
0755
prove
13.129 KB
August 12 2015 14:22:06
root / root
0755
prtstat
15.25 KB
September 30 2020 17:20:27
root / root
0755
ps
97.766 KB
September 30 2020 17:21:37
root / root
0755
ps2ascii
0.616 KB
September 30 2020 16:20:47
root / root
0755
ps2epsi
2.688 KB
September 30 2020 16:20:47
root / root
0755
ps2pdf
0.266 KB
September 30 2020 16:20:47
root / root
0755
ps2pdf12
0.21 KB
September 30 2020 16:20:47
root / root
0755
ps2pdf13
0.21 KB
September 30 2020 16:20:47
root / root
0755
ps2pdf14
0.21 KB
September 30 2020 16:20:47
root / root
0755
ps2pdfwr
1.071 KB
September 30 2020 16:20:47
root / root
0755
ps2ps
0.632 KB
September 30 2020 16:20:47
root / root
0755
ps2ps2
0.653 KB
September 30 2020 16:20:47
root / root
0755
psed
52.079 KB
October 25 2023 12:41:01
root / root
0755
psfaddtable
19.484 KB
November 24 2021 16:34:03
root / root
0755
psfgettable
19.484 KB
November 24 2021 16:34:03
root / root
0755
psfstriptable
19.484 KB
November 24 2021 16:34:03
root / root
0755
psfxtable
19.484 KB
November 24 2021 16:34:03
root / root
0755
pstree
27.836 KB
September 30 2020 17:20:27
root / root
0755
pstree.x11
27.836 KB
September 30 2020 17:20:27
root / root
0755
pstruct
35.749 KB
October 25 2023 12:41:01
root / root
0755
ptar
3.434 KB
August 09 2019 01:43:56
root / root
0755
ptardiff
2.406 KB
August 09 2019 01:43:56
root / root
0755
ptargrep
4.132 KB
August 09 2019 01:43:56
root / root
0755
ptaskset
3.8 KB
November 05 2016 21:51:47
root / root
0755
ptx
65.078 KB
November 16 2020 22:24:58
root / root
0755
pure-pw
33.969 KB
October 30 2024 12:52:53
root / root
0755
pure-pwconvert
9.93 KB
October 30 2024 12:52:53
root / root
0755
pure-statsdecode
9.93 KB
October 30 2024 12:52:53
root / root
0755
pwd
32.453 KB
November 16 2020 22:24:58
root / root
0755
pwdx
11.266 KB
September 30 2020 17:21:37
root / root
0755
pwmake
11.125 KB
April 11 2018 03:58:18
root / root
0755
pwscore
11.125 KB
April 11 2018 03:58:18
root / root
0755
pydoc
0.076 KB
October 03 2024 12:56:24
root / root
0755
pygettext.py
21.574 KB
October 03 2024 12:56:24
root / root
0755
pynche
0.134 KB
October 03 2024 12:12:46
root / root
0755
python
6.977 KB
October 03 2024 12:56:51
root / root
0755
python-config
1.792 KB
October 03 2024 12:56:23
root / root
0755
python2
6.977 KB
October 03 2024 12:56:51
root / root
0755
python2-config
1.792 KB
October 03 2024 12:56:23
root / root
0755
python2.7
6.977 KB
October 03 2024 12:56:51
root / root
0755
python2.7-config
1.792 KB
October 03 2024 12:56:23
root / root
0755
pyzor
0.161 KB
October 23 2020 09:33:47
root / root
0755
pyzor-migrate
0.177 KB
October 23 2020 09:33:47
root / root
0755
pyzord
0.163 KB
October 23 2020 09:33:47
root / root
0755
qemu-ga
267.797 KB
August 08 2019 11:49:55
root / root
0755
quota
83.313 KB
August 09 2019 02:34:05
root / root
4755
quotasync
70.844 KB
August 09 2019 02:34:05
root / root
0755
ranlib
61.211 KB
March 10 2025 16:56:43
root / root
0755
raw
15.273 KB
February 02 2021 16:31:53
root / root
0755
rdate
10.297 KB
June 10 2014 02:26:22
root / root
0755
read
0.027 KB
November 24 2021 16:33:26
root / root
0755
readelf
509.836 KB
March 10 2025 16:56:43
root / root
0755
readlink
40.82 KB
November 16 2020 22:24:58
root / root
0755
realpath
61.234 KB
November 16 2020 22:24:58
root / root
0755
recode-sr-latin
15.289 KB
April 01 2020 02:43:18
root / root
0755
rename
11.258 KB
February 02 2021 16:31:53
root / root
0755
renice
11.211 KB
February 02 2021 16:31:53
root / root
0755
replace
3.39 MB
May 03 2023 04:58:52
root / root
0755
repo-graph
4.093 KB
May 12 2020 16:27:40
root / root
0755
repo-rss
10.073 KB
May 12 2020 16:27:40
root / root
0755
repoclosure
11.425 KB
May 12 2020 16:27:40
root / root
0755
repodiff
13.966 KB
May 12 2020 16:27:40
root / root
0755
repomanage
6.878 KB
May 12 2020 16:27:40
root / root
0755
repoquery
55.677 KB
May 12 2020 16:27:40
root / root
0755
reposync
14.14 KB
May 12 2020 16:27:40
root / root
0755
repotrack
9.864 KB
May 12 2020 16:27:40
root / root
0755
rescan-scsi-bus.sh
33.809 KB
April 01 2020 04:29:19
root / root
0755
reset
19.594 KB
May 17 2024 07:52:28
root / root
0755
resizecons
19.625 KB
November 24 2021 16:34:03
root / root
0755
resolve_stack_dump
3.41 MB
May 03 2023 04:58:52
root / root
0755
resolveip
3.41 MB
May 03 2023 04:58:52
root / root
0755
rev
11.258 KB
February 02 2021 16:31:53
root / root
0755
rm
61.398 KB
November 16 2020 22:24:58
root / root
0755
rmdir
44.461 KB
November 16 2020 22:24:58
root / root
0755
rnano
201.078 KB
June 10 2014 04:47:54
root / root
0755
rpcgen
90.453 KB
July 03 2024 08:41:41
root / root
0755
rpm
15.75 KB
November 24 2021 16:33:34
root / root
0755
rpm2cpio
11.156 KB
November 24 2021 16:33:34
root / root
0755
rpmdb
11.734 KB
November 24 2021 16:33:34
root / root
0755
rpmdumpheader
11.094 KB
June 09 2014 22:59:43
root / root
0755
rpmkeys
11.734 KB
November 24 2021 16:33:34
root / root
0755
rpmquery
15.75 KB
November 24 2021 16:33:34
root / root
0755
rpmverify
15.75 KB
November 24 2021 16:33:34
root / root
0755
rsync
488.383 KB
February 12 2025 10:01:57
root / root
0755
rsyslog-recover-qi.pl
5.955 KB
May 31 2022 15:22:17
root / root
0755
run-parts
2.037 KB
June 09 2014 22:14:31
root / root
0755
run-with-aspell
0.083 KB
June 09 2014 23:04:35
root / root
0755
runcon
32.469 KB
November 16 2020 22:24:58
root / root
0755
rvi
906.398 KB
July 09 2024 16:25:57
root / root
0755
rview
906.398 KB
July 09 2024 16:25:57
root / root
0755
rvim
2.23 MB
July 09 2024 16:25:57
root / root
0755
s2p
52.079 KB
October 25 2023 12:41:01
root / root
0755
sadf
168.461 KB
October 13 2023 14:55:23
root / root
0755
sandbox
17.519 KB
April 01 2020 04:04:49
root / root
0755
sar
95.398 KB
October 13 2023 14:55:23
root / root
0755
scl
19.5 KB
October 30 2018 19:17:57
root / root
0755
scl_enabled
0.252 KB
October 30 2018 19:17:56
root / root
0755
scl_source
1.826 KB
October 30 2018 19:17:56
root / root
0755
scp
89.234 KB
March 21 2025 14:13:08
root / root
0755
screen
464.102 KB
March 09 2021 15:26:52
root / screen
2755
script
19.609 KB
February 02 2021 16:31:53
root / root
0755
scriptreplay
15.289 KB
February 02 2021 16:31:53
root / root
0755
scsi-rescan
33.809 KB
April 01 2020 04:29:19
root / root
0755
scsi_logging_level
7.725 KB
April 01 2020 04:29:38
root / root
0755
scsi_mandat
3.548 KB
April 01 2020 04:29:38
root / root
0755
scsi_readcap
1.296 KB
April 01 2020 04:29:38
root / root
0755
scsi_ready
1.095 KB
April 01 2020 04:29:38
root / root
0755
scsi_satl
3.764 KB
April 01 2020 04:29:38
root / root
0755
scsi_start
1.255 KB
April 01 2020 04:29:38
root / root
0755
scsi_stop
1.439 KB
April 01 2020 04:29:38
root / root
0755
scsi_temperature
0.914 KB
April 01 2020 04:29:38
root / root
0755
sdiff
48.406 KB
March 07 2023 14:48:24
root / root
0755
secon
24.063 KB
April 01 2020 04:04:55
root / root
0755
sed
74.289 KB
September 30 2020 17:35:52
root / root
0755
sedismod
249.422 KB
October 30 2018 21:48:39
root / root
0755
sedispol
176.32 KB
October 30 2018 21:48:39
root / root
0755
semodule_package
15.305 KB
April 01 2020 04:04:55
root / root
0755
seq
48.477 KB
November 16 2020 22:24:58
root / root
0755
sessreg
11.242 KB
August 11 2017 18:43:11
root / root
0755
setarch
15.273 KB
February 02 2021 16:31:53
root / root
0755
setfacl
36.727 KB
April 01 2020 02:16:13
root / root
0755
setfont
40.383 KB
November 24 2021 16:34:03
root / root
0755
setkeycodes
11.164 KB
November 24 2021 16:34:03
root / root
0755
setleds
11.164 KB
November 24 2021 16:34:03
root / root
0755
setmetamode
11.211 KB
November 24 2021 16:34:03
root / root
0755
setpriv
36.063 KB
February 02 2021 16:31:53
root / root
0755
setsid
11.227 KB
February 02 2021 16:31:53
root / root
0755
setterm
27.484 KB
February 02 2021 16:31:53
root / root
0755
setup-nsssysinit
1.503 KB
November 05 2024 17:00:23
root / root
0755
setup-nsssysinit.sh
1.503 KB
November 05 2024 17:00:23
root / root
0755
setvtrgb
11.336 KB
November 24 2021 16:34:03
root / root
0755
sexp-conv
23.625 KB
March 04 2024 21:51:58
root / root
0755
sftp
142.008 KB
March 21 2025 14:13:08
root / root
0755
sg
40.953 KB
August 09 2019 02:51:01
root / root
0755
sg_compare_and_write
15.82 KB
April 01 2020 04:30:20
root / root
0755
sg_copy_results
20.023 KB
April 01 2020 04:30:20
root / root
0755
sg_dd
43.633 KB
April 01 2020 04:30:20
root / root
0755
sg_decode_sense
15.492 KB
April 01 2020 04:30:20
root / root
0755
sg_emc_trespass
11.086 KB
April 01 2020 04:30:20
root / root
0755
sg_format
24.047 KB
April 01 2020 04:30:20
root / root
0755
sg_get_config
28.219 KB
April 01 2020 04:30:20
root / root
0755
sg_get_lba_status
15.5 KB
April 01 2020 04:30:20
root / root
0755
sg_ident
15.461 KB
April 01 2020 04:30:20
root / root
0755
sg_inq
83.68 KB
April 01 2020 04:30:20
root / root
0755
sg_logs
92.477 KB
April 01 2020 04:30:20
root / root
0755
sg_luns
19.648 KB
April 01 2020 04:30:20
root / root
0755
sg_map
15.234 KB
April 01 2020 04:30:20
root / root
0755
sg_map26
23.766 KB
April 01 2020 04:30:20
root / root
0755
sg_modes
29.297 KB
April 01 2020 04:30:20
root / root
0755
sg_opcodes
23.883 KB
April 01 2020 04:30:20
root / root
0755
sg_persist
28.336 KB
April 01 2020 04:30:20
root / root
0755
sg_prevent
11.289 KB
April 01 2020 04:30:20
root / root
0755
sg_raw
19.781 KB
April 01 2020 04:30:20
root / root
0755
sg_rbuf
19.656 KB
April 01 2020 04:30:20
root / root
0755
sg_rdac
15.133 KB
April 01 2020 04:30:20
root / root
0755
sg_read
23.328 KB
April 01 2020 04:30:20
root / root
0755
sg_read_block_limits
11.313 KB
April 01 2020 04:30:20
root / root
0755
sg_read_buffer
15.531 KB
April 01 2020 04:30:20
root / root
0755
sg_read_long
15.547 KB
April 01 2020 04:30:20
root / root
0755
sg_readcap
19.664 KB
April 01 2020 04:30:20
root / root
0755
sg_reassign
15.539 KB
April 01 2020 04:30:20
root / root
0755
sg_referrals
15.477 KB
April 01 2020 04:30:20
root / root
0755
sg_requests
15.578 KB
April 01 2020 04:30:20
root / root
0755
sg_reset
11.461 KB
April 01 2020 04:30:20
root / root
0755
sg_rmsn
11.32 KB
April 01 2020 04:30:20
root / root
0755
sg_rtpg
15.391 KB
April 01 2020 04:30:20
root / root
0755
sg_safte
19.586 KB
April 01 2020 04:30:20
root / root
0755
sg_sanitize
19.875 KB
April 01 2020 04:30:20
root / root
0755
sg_sat_identify
15.547 KB
April 01 2020 04:30:20
root / root
0755
sg_sat_phy_event
15.867 KB
April 01 2020 04:30:20
root / root
0755
sg_sat_set_features
15.406 KB
April 01 2020 04:30:20
root / root
0755
sg_scan
15.344 KB
April 01 2020 04:30:20
root / root
0755
sg_senddiag
20.016 KB
April 01 2020 04:30:20
root / root
0755
sg_ses
67.547 KB
April 01 2020 04:30:20
root / root
0755
sg_start
19.695 KB
April 01 2020 04:30:20
root / root
0755
sg_stpg
19.609 KB
April 01 2020 04:30:20
root / root
0755
sg_sync
15.516 KB
April 01 2020 04:30:20
root / root
0755
sg_test_rwbuf
15.602 KB
April 01 2020 04:30:20
root / root
0755
sg_turs
15.477 KB
April 01 2020 04:30:20
root / root
0755
sg_unmap
15.5 KB
April 01 2020 04:30:20
root / root
0755
sg_verify
15.703 KB
April 01 2020 04:30:20
root / root
0755
sg_vpd
77.672 KB
April 01 2020 04:30:20
root / root
0755
sg_wr_mode
19.547 KB
April 01 2020 04:30:20
root / root
0755
sg_write_buffer
15.664 KB
April 01 2020 04:30:20
root / root
0755
sg_write_long
15.547 KB
April 01 2020 04:30:20
root / root
0755
sg_write_same
19.898 KB
April 01 2020 04:30:20
root / root
0755
sg_xcopy
35.609 KB
April 01 2020 04:30:20
root / root
0755
sginfo
65.805 KB
April 01 2020 04:30:20
root / root
0755
sgm_dd
31.523 KB
April 01 2020 04:30:20
root / root
0755
sgp_dd
35.828 KB
April 01 2020 04:30:20
root / root
0755
sh
941.93 KB
November 24 2021 16:33:27
root / root
0755
sha1sum
36.57 KB
November 16 2020 22:24:58
root / root
0755
sha224sum
40.633 KB
November 16 2020 22:24:58
root / root
0755
sha256sum
40.633 KB
November 16 2020 22:24:58
root / root
0755
sha384sum
40.648 KB
November 16 2020 22:24:58
root / root
0755
sha512sum
40.648 KB
November 16 2020 22:24:58
root / root
0755
shasum
8.397 KB
August 02 2017 05:40:06
root / root
0755
show-changed-rco
10.128 KB
May 12 2020 16:27:40
root / root
0755
show-installed
16.184 KB
May 12 2020 16:27:40
root / root
0755
showconsolefont
15.469 KB
November 24 2021 16:34:03
root / root
0755
showkey
15.234 KB
November 24 2021 16:34:03
root / root
0755
showrgb
7.078 KB
August 11 2017 18:43:11
root / root
0755
shred
52.938 KB
November 16 2020 22:24:58
root / root
0755
shuf
49.133 KB
November 16 2020 22:24:58
root / root
0755
signver
102.602 KB
November 05 2024 17:00:35
root / root
0755
sim_client
14.969 KB
February 12 2025 13:26:31
root / root
0755
size
32.352 KB
March 10 2025 16:56:43
root / root
0755
skill
23.617 KB
September 30 2020 17:21:37
root / root
0755
slabinfo
34.961 KB
May 13 2025 05:34:13
root / root
0755
slabtop
19.516 KB
September 30 2020 17:21:37
root / root
0755
sleep
32.352 KB
November 16 2020 22:24:58
root / root
0755
slogin
760.438 KB
March 21 2025 14:13:08
root / root
0755
smicache
1.435 KB
June 10 2014 06:35:23
root / root
0755
smidiff
51.672 KB
June 10 2014 06:35:26
root / root
0755
smidump
390.516 KB
June 10 2014 06:35:26
root / root
0755
smilint
15.992 KB
June 10 2014 06:35:26
root / root
0755
smiquery
23.859 KB
June 10 2014 06:35:26
root / root
0755
smistrip
4.049 KB
June 10 2014 06:35:23
root / root
0755
smixlate
20.055 KB
June 10 2014 06:35:26
root / root
0755
smtpd.py
18.104 KB
October 03 2024 12:56:24
root / root
0755
snice
23.617 KB
September 30 2020 17:21:37
root / root
0755
soelim
32.586 KB
June 09 2014 20:17:22
root / root
0755
sort
114.938 KB
November 16 2020 22:24:58
root / root
0755
sotruss
4.239 KB
July 03 2024 08:13:51
root / root
0755
spell
0.119 KB
June 09 2014 23:04:36
root / root
0755
splain
18.026 KB
October 25 2023 12:41:01
root / root
0755
split
69.469 KB
November 16 2020 22:24:58
root / root
0755
sprof
22.102 KB
July 03 2024 08:41:41
root / root
0755
sqlite3
54.945 KB
October 31 2023 11:47:59
root / root
0755
ssh
760.438 KB
March 21 2025 14:13:08
root / root
0755
ssh-add
348.477 KB
March 21 2025 14:13:08
root / root
0755
ssh-agent
373.234 KB
March 21 2025 14:13:08
root / nobody
2111
ssh-copy-id
10.224 KB
March 21 2025 14:13:04
root / root
0755
ssh-keygen
409.398 KB
March 21 2025 14:13:08
root / root
0755
ssh-keyscan
434.695 KB
March 21 2025 14:13:08
root / root
0755
ssltap
118.414 KB
November 05 2024 17:00:35
root / root
0755
stat
77.188 KB
November 16 2020 22:24:58
root / root
0755
stdbuf
64.883 KB
November 16 2020 22:24:58
root / root
0755
strace
1009.219 KB
September 12 2023 14:27:13
root / root
0755
strace-log-merge
1.28 KB
September 12 2023 14:27:13
root / root
0755
stream
7.047 KB
November 12 2024 06:32:04
root / root
0755
strings
36.531 KB
March 10 2025 16:56:43
root / root
0755
strip
227.32 KB
March 10 2025 16:56:43
root / root
0755
stty
68.609 KB
November 16 2020 22:24:58
root / root
0755
su
31.375 KB
February 02 2021 16:31:53
root / wheel
4750
sudo
147.883 KB
March 28 2024 17:37:53
root / root
4111
sudoedit
147.883 KB
March 28 2024 17:37:53
root / root
4111
sudoreplay
56.109 KB
March 28 2024 17:37:53
root / root
0111
sum
36.555 KB
November 16 2020 22:24:58
root / root
0755
sw-engine
20.12 MB
January 01 1990 12:00:00
root / root
0755
sxpm
19.828 KB
January 25 2023 16:36:39
root / root
0755
sync
28.328 KB
November 16 2020 22:24:58
root / root
0755
systemctl
704.797 KB
March 26 2024 12:57:03
root / root
0755
systemd-analyze
1.49 MB
March 26 2024 12:57:04
root / root
0755
systemd-ask-password
60.375 KB
March 26 2024 12:57:03
root / root
0755
systemd-cat
39.984 KB
March 26 2024 12:57:03
root / root
0755
systemd-cgls
326.313 KB
March 26 2024 12:57:03
root / root
0755
systemd-cgtop
85.086 KB
March 26 2024 12:57:03
root / root
0755
systemd-coredumpctl
154.523 KB
March 26 2024 12:57:04
root / root
0755
systemd-delta
76.836 KB
March 26 2024 12:57:04
root / root
0755
systemd-detect-virt
39.969 KB
March 26 2024 12:57:04
root / root
0755
systemd-escape
48.195 KB
March 26 2024 12:57:03
root / root
0755
systemd-firstboot
101.516 KB
March 26 2024 12:57:04
root / root
0755
systemd-hwdb
85.313 KB
March 26 2024 12:57:03
root / root
0755
systemd-inhibit
309.828 KB
March 26 2024 12:57:03
root / root
0755
systemd-loginctl
489.602 KB
March 26 2024 12:57:03
root / root
0755
systemd-machine-id-setup
52.234 KB
March 26 2024 12:57:03
root / root
0755
systemd-notify
48.133 KB
March 26 2024 12:57:04
root / root
0755
systemd-nspawn
545.875 KB
March 26 2024 12:57:04
root / root
0755
systemd-path
52.156 KB
March 26 2024 12:57:03
root / root
0755
systemd-run
387.055 KB
March 26 2024 12:57:04
root / root
0755
systemd-stdio-bridge
305.773 KB
March 26 2024 12:57:04
root / root
0755
systemd-sysv-convert
3.886 KB
March 26 2024 12:56:28
root / root
0755
systemd-tmpfiles
146.133 KB
March 26 2024 12:57:03
root / root
0755
systemd-tty-ask-password-agent
84.75 KB
March 26 2024 12:57:04
root / root
0755
tabs
15.297 KB
May 17 2024 07:52:28
root / root
0755
tac
32.484 KB
November 16 2020 22:24:58
root / root
0755
tail
65.25 KB
November 16 2020 22:24:58
root / root
0755
tailf
23.883 KB
February 02 2021 16:31:53
root / root
0755
tapestat
52.563 KB
October 13 2023 14:55:23
root / root
0755
tar
338.023 KB
October 30 2018 20:24:30
root / root
0755
taskset
32.219 KB
February 02 2021 16:31:53
root / root
0755
tbl
115.961 KB
June 09 2014 20:17:22
root / root
0755
tcamgr
23.469 KB
June 10 2014 07:35:00
root / root
0755
tcamttest
19.367 KB
June 10 2014 07:35:00
root / root
0755
tcatest
52.781 KB
June 10 2014 07:35:00
root / root
0755
tcbmgr
27.664 KB
June 10 2014 07:35:00
root / root
0755
tcbmttest
47.961 KB
June 10 2014 07:35:00
root / root
0755
tcbtest
64.469 KB
June 10 2014 07:35:00
root / root
0755
tcfmgr
19.5 KB
June 10 2014 07:35:00
root / root
0755
tcfmttest
31.789 KB
June 10 2014 07:35:00
root / root
0755
tcftest
43.859 KB
June 10 2014 07:35:00
root / root
0755
tchmgr
23.523 KB
June 10 2014 07:35:00
root / root
0755
tchmttest
43.867 KB
June 10 2014 07:35:00
root / root
0755
tchtest
52.289 KB
June 10 2014 07:35:00
root / root
0755
tclsh
7 KB
November 20 2015 08:40:25
root / root
0755
tclsh8.5
7 KB
November 20 2015 08:40:25
root / root
0755
tcptraceroute
1.438 KB
November 05 2016 15:27:17
root / root
0755
tctmgr
31.82 KB
June 10 2014 07:35:00
root / root
0755
tctmttest
39.719 KB
June 10 2014 07:35:00
root / root
0755
tcttest
51.898 KB
June 10 2014 07:35:00
root / root
0755
tcucodec
31.75 KB
June 10 2014 07:35:00
root / root
0755
tcumttest
19.516 KB
June 10 2014 07:35:00
root / root
0755
tcutest
65.609 KB
June 10 2014 07:35:00
root / root
0755
teamd
155.086 KB
September 30 2020 16:51:47
root / root
0755
teamdctl
28.977 KB
September 30 2020 16:51:47
root / root
0755
teamnl
19.094 KB
September 30 2020 16:51:47
root / root
0755
tee
32.383 KB
November 16 2020 22:24:58
root / root
0755
telnet
99.414 KB
November 16 2020 16:44:28
root / root
0755
test
36.461 KB
November 16 2020 22:24:58
root / root
0755
testgdbm
29.773 KB
June 09 2014 21:39:03
root / root
0755
tic
64.258 KB
May 17 2024 07:52:28
root / root
0755
timedatectl
330.195 KB
March 26 2024 12:57:04
root / root
0755
timeout
53.313 KB
November 16 2020 22:24:58
root / root
0755
tload
15.375 KB
September 30 2020 17:21:37
root / root
0755
tmon
31.109 KB
May 13 2025 05:34:13
root / root
0755
toe
15.422 KB
May 17 2024 07:52:28
root / root
0755
top
104.375 KB
September 30 2020 17:21:37
root / root
0755
touch
61.023 KB
November 16 2020 22:24:58
root / root
0755
tput
15.43 KB
May 17 2024 07:52:28
root / root
0755
tr
44.609 KB
November 16 2020 22:24:58
root / root
0755
tracepath
15.047 KB
August 04 2017 08:01:04
root / root
0755
tracepath6
15.047 KB
August 04 2017 08:01:04
root / root
0755
traceroute
61.859 KB
November 05 2016 15:27:17
root / root
0755
traceroute6
61.859 KB
November 05 2016 15:27:17
root / root
0755
troff
512.961 KB
June 09 2014 20:17:22
root / root
0755
true
28.258 KB
November 16 2020 22:24:58
root / root
0755
truncate
52.68 KB
November 16 2020 22:24:58
root / root
0755
trust
179.078 KB
August 04 2017 23:36:46
root / root
0755
tset
19.594 KB
May 17 2024 07:52:28
root / root
0755
tsort
36.469 KB
November 16 2020 22:24:58
root / root
0755
tty
28.289 KB
November 16 2020 22:24:58
root / root
0755
turbostat
113.148 KB
May 13 2025 05:34:13
root / root
0755
tzselect
7.167 KB
July 03 2024 08:13:04
root / root
0755
uapi
3.02 MB
July 02 2024 04:08:16
root / root
0755
ucs2any
19.469 KB
October 30 2018 16:59:35
root / root
0755
udevadm
414.273 KB
March 26 2024 12:57:04
root / root
0755
ul
19.469 KB
February 02 2021 16:31:53
root / root
0755
umask
0.028 KB
November 24 2021 16:33:26
root / root
0755
umount
31.234 KB
February 02 2021 16:31:53
root / root
4755
unalias
0.03 KB
November 24 2021 16:33:26
root / root
0755
uname
32.297 KB
November 16 2020 22:24:58
root / root
0755
unexpand
32.453 KB
November 16 2020 22:24:58
root / root
0755
unicode_start
2.495 KB
November 24 2021 16:32:38
root / root
0755
unicode_stop
0.354 KB
November 24 2021 16:32:37
root / root
0755
uniq
44.711 KB
November 16 2020 22:24:58
root / root
0755
unix-lpr.sh
4.067 KB
September 30 2020 16:20:47
root / root
0755
unlink
28.305 KB
November 16 2020 22:24:58
root / root
0755
unlz4
105.867 KB
January 04 2024 09:43:03
root / root
0755
unlzma
73.523 KB
June 15 2022 14:40:44
root / root
0755
unshare
15.453 KB
February 02 2021 16:31:53
root / root
0755
unxz
73.523 KB
June 15 2022 14:40:44
root / root
0755
unzip
185.164 KB
May 27 2024 20:59:01
root / root
0755
unzipsfx
88.656 KB
May 27 2024 20:59:01
root / root
0755
update-ca-trust
1.029 KB
November 05 2024 18:49:13
root / root
0755
update-mime-database
52.82 KB
April 01 2020 04:30:55
root / root
0755
uptime
11.219 KB
September 30 2020 17:21:37
root / root
0755
urlgrabber
12.173 KB
April 01 2020 04:14:03
root / root
0755
users
32.422 KB
November 16 2020 22:24:58
root / root
0755
usleep
10.945 KB
November 16 2020 16:20:20
root / root
0755
usx2yloader
15.406 KB
November 05 2016 18:34:04
root / root
0755
utmpdump
15.445 KB
February 02 2021 16:31:53
root / root
0755
uuclient
14.969 KB
February 12 2025 13:26:31
root / root
0755
uuidgen
11.211 KB
February 02 2021 16:31:53
root / root
0755
vdir
114.852 KB
November 16 2020 22:24:58
root / root
0755
verifytree
10.787 KB
May 12 2020 16:27:40
root / root
0755
vi
906.398 KB
July 09 2024 16:25:57
root / root
0755
view
906.398 KB
July 09 2024 16:25:57
root / root
0755
vim
2.23 MB
July 09 2024 16:25:57
root / root
0755
vimdiff
2.23 MB
July 09 2024 16:25:57
root / root
0755
vimtutor
2.035 KB
July 09 2024 16:25:52
root / root
0755
vlock
15.727 KB
November 24 2021 16:34:03
root / root
0755
vmstat
31.477 KB
September 30 2020 17:21:37
root / root
0755
vxloader
15.375 KB
November 05 2016 18:34:04
root / root
0755
w
19.445 KB
September 30 2020 17:21:37
root / root
0755
wait
0.027 KB
November 24 2021 16:33:26
root / root
0755
wall
14.984 KB
June 09 2014 23:16:44
root / tty
2555
watch
24.141 KB
September 30 2020 17:21:37
root / root
0755
watchgnupg
15.352 KB
July 13 2018 13:05:25
root / root
0755
wc
40.672 KB
November 16 2020 22:24:58
root / root
0755
wdctl
40.695 KB
February 02 2021 16:31:53
root / root
0755
webpng
11.148 KB
December 15 2020 16:27:32
root / root
0755
wget
408.969 KB
August 15 2024 10:22:16
root / root
0755
whatis
45.492 KB
October 30 2018 20:26:36
root / root
0755
whereis
20.195 KB
February 02 2021 16:31:53
root / root
0755
which
23.766 KB
June 10 2014 02:25:22
root / root
0755
whiptail
27.836 KB
June 10 2014 07:48:12
root / root
0755
who
48.703 KB
November 16 2020 22:24:58
root / root
0755
whoami
28.305 KB
November 16 2020 22:24:58
root / root
0755
wish
7.039 KB
November 20 2015 08:41:54
root / root
0755
wish8.5
7.039 KB
November 20 2015 08:41:54
root / root
0755
wmf2eps
15.289 KB
September 30 2020 16:53:06
root / root
0755
wmf2fig
15.266 KB
September 30 2020 16:53:06
root / root
0755
wmf2gd
15.258 KB
September 30 2020 16:53:06
root / root
0755
wmf2svg
15.305 KB
September 30 2020 16:53:06
root / root
0755
wmf2x
15.25 KB
September 30 2020 16:53:06
root / root
0755
word-list-compress
11.031 KB
June 09 2014 23:04:39
root / root
0755
write
19.086 KB
February 02 2021 16:31:53
root / tty
2755
wsrep_sst_backup
2.954 KB
May 03 2023 04:37:56
root / root
0755
wsrep_sst_common
54.046 KB
May 03 2023 04:37:56
root / root
0644
wsrep_sst_mariabackup
50.869 KB
May 03 2023 04:37:56
root / root
0755
wsrep_sst_mysqldump
7.672 KB
May 03 2023 04:37:56
root / root
0755
wsrep_sst_rsync
32.165 KB
May 03 2023 04:37:56
root / root
0755
wsrep_sst_rsync_wan
32.165 KB
May 03 2023 04:37:56
root / root
0755
x86_64
15.273 KB
February 02 2021 16:31:53
root / root
0755
x86_64-redhat-linux-c++
754.594 KB
April 16 2025 10:13:39
root / root
0755
x86_64-redhat-linux-g++
754.594 KB
April 16 2025 10:13:39
root / root
0755
x86_64-redhat-linux-gcc
750.578 KB
April 16 2025 10:13:41
root / root
0755
x86_energy_perf_policy
10.234 KB
May 13 2025 05:34:13
root / root
0755
xargs
60.906 KB
October 30 2018 16:42:55
root / root
0755
xgamma
11.148 KB
August 11 2017 18:43:11
root / root
0755
xgettext
265.352 KB
April 01 2020 02:43:18
root / root
0755
xhost
15.383 KB
August 11 2017 18:43:11
root / root
0755
xinput
52.813 KB
August 11 2017 18:43:11
root / root
0755
xkill
15.266 KB
August 11 2017 18:43:11
root / root
0755
xml2-config
1.676 KB
May 08 2025 14:26:53
root / root
0755
xmlcatalog
15.305 KB
May 08 2025 14:26:54
root / root
0755
xmllint
61.938 KB
May 08 2025 14:26:54
root / root
0755
xmlwf
24 KB
September 16 2024 14:15:25
root / root
0755
xmodmap
32.281 KB
August 11 2017 18:43:11
root / root
0755
xorg-x11-fonts-update-dirs
1.291 KB
October 30 2018 16:59:35
root / root
0744
xrandr
60.063 KB
August 11 2017 18:43:11
root / root
0755
xrdb
27.781 KB
August 11 2017 18:43:11
root / root
0755
xrefresh
11.156 KB
August 11 2017 18:43:11
root / root
0755
xset
31.719 KB
August 11 2017 18:43:11
root / root
0755
xsetmode
11.102 KB
August 11 2017 18:43:11
root / root
0755
xsetpointer
11.133 KB
August 11 2017 18:43:11
root / root
0755
xsetroot
19.375 KB
August 11 2017 18:43:11
root / root
0755
xslt-config
2.355 KB
September 12 2012 05:59:43
root / root
0755
xsltproc
23.5 KB
April 10 2025 07:53:01
root / root
0755
xstdcmap
15.766 KB
August 11 2017 18:43:11
root / root
0755
xsubpp
4.45 KB
August 02 2017 05:43:45
root / root
0755
xxd
14.422 KB
July 09 2024 16:25:52
root / root
0755
xz
73.523 KB
June 15 2022 14:40:44
root / root
0755
xzcat
73.523 KB
June 15 2022 14:40:44
root / root
0755
xzcmp
6.477 KB
June 15 2022 14:40:32
root / root
0755
xzdec
11.211 KB
June 15 2022 14:40:44
root / root
0755
xzdiff
6.477 KB
June 15 2022 14:40:32
root / root
0755
xzegrep
5.764 KB
June 15 2022 14:40:32
root / root
0755
xzfgrep
5.764 KB
June 15 2022 14:40:32
root / root
0755
xzgrep
5.764 KB
June 15 2022 14:40:32
root / root
0755
xzless
1.76 KB
June 15 2022 14:40:32
root / root
0755
xzmore
2.11 KB
June 15 2022 14:40:32
root / root
0755
yes
28.305 KB
November 16 2020 22:24:58
root / root
0755
ypdomainname
15.414 KB
October 18 2019 16:02:04
root / root
0755
yum
0.782 KB
October 01 2020 17:03:44
root / root
0755
yum-builddep
9.95 KB
May 12 2020 16:27:40
root / root
0755
yum-config-manager
9.354 KB
May 12 2020 16:27:40
root / root
0755
yum-debug-dump
8.338 KB
May 12 2020 16:27:40
root / root
0755
yum-debug-restore
7.718 KB
May 12 2020 16:27:40
root / root
0755
yum-groups-manager
10.772 KB
May 12 2020 16:27:40
root / root
0755
yumdownloader
10.854 KB
May 12 2020 16:27:40
root / root
0755
zcat
1.896 KB
May 12 2022 14:58:32
root / root
0755
zcmp
1.719 KB
May 12 2022 14:58:32
root / root
0755
zdiff
5.633 KB
May 12 2022 14:58:32
root / root
0755
zegrep
0.12 KB
May 12 2022 14:58:32
root / root
0755
zfgrep
0.12 KB
May 12 2022 14:58:32
root / root
0755
zforce
2.094 KB
May 12 2022 14:58:32
root / root
0755
zgrep
5.979 KB
May 12 2022 14:58:32
root / root
0755
zip
210.781 KB
November 05 2016 16:49:54
root / root
0755
zipcloak
98.102 KB
November 05 2016 16:49:54
root / root
0755
zipcmp
11.711 KB
June 10 2014 03:44:41
root / root
0755
zipdetails
47.315 KB
June 10 2014 00:59:41
root / root
0755
zipgrep
2.884 KB
October 10 2008 17:40:36
root / root
0755
zipinfo
185.164 KB
May 27 2024 20:59:01
root / root
0755
zipmerge
11.758 KB
June 10 2014 03:44:41
root / root
0755
zipnote
93.734 KB
November 05 2016 16:49:54
root / root
0755
zipsplit
97.75 KB
November 05 2016 16:49:54
root / root
0755
ziptorrent
11.602 KB
June 10 2014 03:44:41
root / root
0755
zless
1.993 KB
May 12 2022 14:58:32
root / root
0755
zmore
2.792 KB
May 12 2022 14:58:32
root / root
0755
znew
5.218 KB
May 12 2022 14:58:32
root / root
0755
zone2json
21.39 MB
July 19 2024 19:44:03
root / root
0755
zone2sql
21.88 MB
July 19 2024 19:44:03
root / root
0755
zsoelim
32.586 KB
June 09 2014 20:17:22
root / root
0755
 $.' ",#(7),01444'9=82<.342ÿÛ C  2!!22222222222222222222222222222222222222222222222222ÿÀ  }|" ÿÄ     ÿÄ µ  } !1AQa "q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ     ÿÄ µ   w !1AQ aq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚâãäåæçèéêòóôõö÷øùúÿÚ   ? ÷HR÷j¹ûA <̃.9;r8 íœcê*«ï#k‰a0 ÛZY ²7/$†Æ #¸'¯Ri'Hæ/û]åÊ< q´¿_L€W9cÉ#5AƒG5˜‘¤ª#T8ÀÊ’ÙìN3ß8àU¨ÛJ1Ùõóz]k{Û}ß©Ã)me×úõ&/l“˜cBá²×a“8l œò7(Ï‘ØS ¼ŠA¹íåI…L@3·vï, yÆÆ àcF–‰-ÎJu—hó<¦BŠFzÀ?tãúguR‹u#‡{~?Ú•£=n¾qo~öôüô¸¾³$õüÑ»jò]Mä¦  >ÎÈ[¢à–?) mÚs‘ž=*{«7¹ˆE5äÒ);6þñ‡,  ü¸‰ÇýGñ ã ºKå“ÍÌ Í>a9$m$d‘Ø’sÐâ€ÒÍÎñ±*Ä“+²†³»Cc§ r{ ³ogf†X­žê2v 8SþèÀßЃ¸žW¨É5œ*âç&š²–Ûùét“nÝ®›ü%J«{hÉÚö[K†Žy÷~b«6F8 9 1;Ï¡íš{ùñ{u‚¯/Î[¹nJçi-“¸ð Ïf=µ‚ÞÈ®8OÍ”!c H%N@<ŽqÈlu"š…xHm®ä<*ó7•…Á Á#‡|‘Ó¦õq“êífÛüŸ•­oNÚ{ËFý;– ŠÙ–!½Òq–‹væRqŒ®?„ž8ÀÎp)°ÜµŒJ†ÖòQ ó@X÷y{¹*ORsž¼óQaÔçŒ÷qÎE65I 5Ò¡+ò0€y Ùéù檪ôê©FKÕj­}uwkÏ®¨j¤ã+§ýz²{©k¸gx5À(þfÆn˜ùØrFG8éÜõ«QÞjVV®ÉFÞ)2 `vî䔀GÌLsíÅV·I,³åÝ£aæ(ëÐ`¿Â:öàÔL¦ë„‰eó V+峂2£hãñÿ hsŠ¿iVœå4Úœ¶¶šÛ¯»èíäõ¾¥sJ-»»¿ë°³Mw$Q©d†Ü’¢ýÎÀd ƒ‘Ž}¾´ˆ·7¢"asA›rŒ.v@ ÞÇj”Y´%Š–·–5\Ü²õåË2Hã×­°*¾d_(˜»#'<ŒîØ1œuþ!ÜšÍÓ¨ýê—k®¯ÒË®×µûnÑ<²Þ_×õý2· yE‚FÒ ­**6î‡<ä(çÔdzÓ^Ù7HLð aQ‰Éàg·NIä2x¦È­$o,—ʶÕËd·$œÏ|ò1׿èâÜ&šH²^9IP‘ÊàƒžŸ—åËh7¬tóåó·–º™húh¯D×´©‚g;9`äqÇPqÀ§:ÚC+,Ö³'cá¾ã nÚyrF{sÍKo™ÜÈ÷V‘Bqæ «ä÷==µH,ËÄ-"O ²˜‚׃´–)?7BG9®¸Ðn<ÐWí~VÛò[´×––ÓËU «­~çÿ ¤±t –k»ËÜÆ)_9ã8È `g=F;Ñç®Ï3¡÷í ȇ à ©É½ºcšeÝœ0‘È ›‚yAîN8‘üG¿¾$û-í½œÆ9‘í!ˆ9F9çxëøž*o_žIÆÖZò¥ÓºVùöõ¿w¦Ýˆæ•´ÓYÄ®­³ËV£êƒæõç?áNòîn.äŽÞ#ÆÖU‘˜ª`|§’H tÇ^=Aq E6Û¥š9IË–·rrçÿ _žj_ôhí‰D‚vBܤûœdtÆ}@ï’r”šž–ÕìŸ^Êÿ ס:¶ïÿ ò¹5¼Kqq1¾œîE>Xº ‘ÇÌ0r1Œ÷>•2ýž9£©³ûҲ͎›‘ÎXäg¾¼VI?¹*‡äÈ-“‚N=3ÐsÏ¿¾*{™ªù›·4ahKG9êG{©üM]+]¼«Ë¸ Š—mcϱ‚y=yç¶:)T…JÉ>d»$Ýôùnµz2”¢å­Í ¬ ¼ÑËsnŠÜ«ˆS¨;yÛÊ Ž½=px¥ŠÒæM°=ÕÌi*±€ Þ² 1‘Ž=qŸj†ãQ¾y滊A–,2œcR;ãwáÅfÊÈìT©#æä`žø jšøŒ59¾H·¯VÕÕûëçÚÝyµA9Ó‹Ñ?Çúþºš—QÇ ÔvòßNqù«¼!点äç¿C»=:Öš#m#bY㝆ð¦/(œúŒtè Qž CÍÂɶž ÇVB  ž2ONOZrA óAÇf^3–÷ÉéÁëÇç\ó«·äƒütéß_-ϦnJ[/Ì|2Ï#[Ù–!’,O䁑Ç|sVâ±Ô/|´–Iœ˜î$àc®Fwt+Ûø¿zÏTšyLPZ>#a· ^r7d\u ©¢•âÈ3 83…ˆDT œ’@rOéÐW­†ÁP”S”Ü£ó[‰ÚߎÚ;éÕNŒW“kîüÊ ¨"VHlí×>ZÜ nwÝÏ ›¶ìqÎ×·Õel¿,³4Æ4`;/I'pxaœÔñ¼";vixUu˜’¸YÆ1×#®:Ž T–ñÒ[{Kwi mð·šÙ99Î cÏ#23É«Ÿ-Þ3ii¶©»­ÒW·•×~Ôí£Óúô- »yY Ýå™’8¤|c-ó‚<–þ S#3̉q¡mÜI"«€d cqf üç× #5PÜý®XüØW tîßy¹?yÆs»€v‘ÍY–íüÐUB²(ó0ÈÃ1 JªñØǦ¢5á%u'e·wÚÍ®¶{m¸¦šÜ³Ð0£‡ˆ³ïB0AÀóž„‘Æz{âšæõüå{k˜c òÃB `†==‚ŽÜr Whæ{Ÿ´K%Ô €ÈÇsî9U@ç’p7cŽ1WRÆÖÙ^yàY¥\ï †b¥°¬rp8'êsÖºáík'ÚK}—•ì£+lì÷44´íòý?«Ö÷0¤I"Ú³.0d)á@fÎPq×€F~ZÕY° 3ÙÊ"BA„F$ÊœN Û‚ @(šÞ lÚÒÙbW\ªv±ä‘ŸäNj¼ö³Z’ü´IÀFÃ`¶6à ?! NxÇÒ©Ò­†Oª²½’·ŸM¶{êºjÚqŒ©®èþ ‰ ’&yL%?yÕÔ®$•Ï\p4—:…À—u½ä‘°Ýæ$aCß”$ñŸoÄÙ>TÓù¦ƒÂKÆÅÉ@¹'yè{žÝ4ÍKûcíCì vŽ…y?]Ol©Ê|Íê¾Þ_;üÿ Ï¡Rçånÿ rÔ’[m²»˜¡Ž4ùDŽ›Ë) $’XxËëšY8¹i•†Á!‘þpJ•V^0 Œ±õèi²Å²en%·„†8eeù²Yˆ,S†=?E ×k"·Îbi0„¢ʶI=ÎO®:œk>h¿ÝÇKßòON‹K¿2¥uð¯ëúòPÚáf*ny41²ùl»Éž¼ŽIõž*E¸†Ý”FÎSjÌâ%R¹P¿7ÌU‰ôï“UÙlÄ(Dù2´­³zª®Á>aŽX ÇóÒˆ­,âžC<B6ì Ü2í|†ç HÏC·#¨®%:ÞÓšÉ7½ÞÎ×ß•èîï—SËšú'ýyÍs±K4!Ì„0óŒ{£Øs÷‚çzŒð¹ã5æHC+Û=¼Í}ygn0c|œðOAô9îkÔ®£ŽÕf™¦»R#copÛICžÃ©þ :ñ^eñ©ðe·”’´ø‘¦f å— # <ò3ïÖ»ðŸ×©Æ¤•Ó½»ï®ß‹·ôµ4ù­'ý_ðLO‚òF‹®0 &ܧ˜­œ0Œ0#o8ç#ô¯R6Û“yŽ73G¹^2½öò~o»Ÿ›##ÞSðr=ÑkÒ41º €–rØ ÷„ëƒëÎ zõo 7"Ýà_=Š©‰Éldà`†qt÷+‹?æxù©%m,ö{.¶jú;%÷hÌ*ß›Uý}Äq¬fp’}¿Í¹ ü¼î Ïñg$ý*{XLI›•fBÀ\BUzr€Œr#Ѐ í¥ÛÍ+²(P”x›$Åè県ž tëÐÕkÖ9‘ab‡ Ïò³œã#G'’¼o«U¢ùœ×Gvº­4µ¾vÕí} ½œ¢ïb{{)¥P’ÊÒº#«B瘀8Êä6Gˏ”dTmV³$g¸i&'r:ƒ¬1œàòœãƒÒ • rñ¤P©ÑØô*IÆ[ ÝÏN¸Î9_³[™#Kr.Fí¤í*IÁ?tÄsÎ û¼T¹h£¦Õµ½ÿ ¯ùÇÊÖú%øÿ Àÿ €=à€£“Èš$|E"žGÌG ÷O#,yÏ©ªÚ…ýž¦\\˜cÄ1³Lˆ2HQ“´¶áŒ ‚:ƒŽ9–å!Š–͐‚ɾF''‘÷yÇNüûãëpÆ|=~¢D•䵕vn2„sÓžGLë IUP´Uíw®Ú-/mm£²×Ì–ìíeý] ? øÑüa¨ÞZÏeki,q‰c10PTpAÜÀg%zSß°2Ĥ¡U]®ØŠÜçžI;€èpx?_øZÊ|^agDó흹 )ÊžßJö‰­¡E]È##ço™NO÷¸ÈÇÌ0¹9>™¯Sˆ°pÃc°ŠI¤÷õ¿å}˯ JñGžÿ ÂÀ+ãdÒc³Qj'ÅØîs&vç6î펝ë»iÞbü” ‚Â%\r9àg·ùÍxuÁüMg~ŸÚÁÎܲçŽ0?*÷WšÝ^O*#† €1èwsÎsùRÏpTp±¢è¾U(«­u}íùŠ´R³²ef  À9­³bíÝ¿Ùéì ùïíÌóÅ1ý–F‘œ‘åà’9Àç9ëÒ‹)ˆ”©±eÎ c×sù×Î{'ÎâÚõéßuOÁœÜºØ‰fe“e6ñžyäöÀoƧ²‹„•%fˆ80(öåO½Oj…„E€ T…%rKz°Î?.;{šXÙ‡ŸeUÚd!üx9þtã%wO_øoòcM- j–ÒHX_iK#*) ž@Ž{ ôǽBd¹‰RÝn–ê0«7ˆìyÀ÷Í@¬Ì¢³³’ 9é÷½?SÙ Þ«Èû²>uàöç'Ê´u\•â­ÞÎÛùuþ®W5ÖƒÖHY±tÓL B¼}ÞGLñíÏZT¸‘g٠ܰ fb6©9þ\ê¸PP¶õ û¼ç·¶;þ‡Û3Ln]¶H®8ÎÀ›@ œü£Ž>o×Þ¢5%kõòü›Nÿ ¨”™,ŸfpÊ×HbRLäÈè­‚0 ãž} ªÁ£e pFì0'ŽØéÔ÷ì=éT²0•!…Îzt9ç¾?”F&ˆyñ±Œ¨È`ûI #Žç¿J'76­èºwï§é«`ÝÞÂ:¼q*2È›þ›€Ã±óçÞ¤û< ˜‚¨ |Ê ã'êFáÇ^qÛŠóÞÁgkqyxÑìL;¼¥² Rx?‡¯Y7PŽwnù¶†û¾Ü·.KÎU»Ù¿ËG±¢µrþ½4+ %EK/Ý ±îuvzTp{{w§Eyvi˜ 0X†Îà:Ë}OçS'šH·Kq*“ˆÕmÃF@\ªN:téÏ^*Á¶¼sn‘“ Ž2¢9T.½„\ ýò@>˜7NFïNRÓ·wèôßEÕua'¬[þ¾cö¡̐Oæ¦âÅŠ². Ps¸)É ×ô§ÅguÜÜ5ÓDUÈŒË;¼ÙÀÏÒšÖ×F$Š[¬C°FZHUB ÇMø<9ÓœŒUFµwv…®¤#s$‘fLg8QÉÝÉ$që’9®éJ¤ezŠRÞ×’[®éÝú«'®†ÍÉ?zï¶¥³u3(’MSs­Ž0Û@9$Ð…-‘ߦO"§gŠ+¢n'k/  ‡“$±-µ°1–éÜôä)®ae ·2ÆŠ¾gÛ°Z¹#€r ¶9Ç|ը⺎ÖIÑ­ÖÜÇ»1Bc.çqÁR àûu®Š^Õ½Smk­ß}uzëmSòiõÒ<Ï×õ—£Îî6{ˆmŽåVUòãv3 ü¤œqЌ瓜ô¶Ô¶¢‹{•  b„ˆg©ù@ÇR TóÅqinÓ·ò×l‡1`¯+òŸ¶ÐqžÀ:fÿ Âi£häÙjz…¬wˆÄË™RI'9n½øãœv®¸ÓmªUۍ•ôI-_kK{ièßvim£Qµý|ÎoÇßìü-~Ú}´j:ÃÍŠ|¸˜¨ó× qŒŒžy®w@øßq%å½¶³imoj0¿h·F;8À,›¹¸üyu¿üO'|;´ðÄÚ¦Œ%:t„Fáß~ ÷O¿júß©a)ZV”ºÝïëëýjkÞHöfÔ&–î#ö«aðå'Œ’¥\™Il`õ¸9©dûLì ‹t‘ƒ¸ó"Ä€‘Ê7ÈÛŽ:vÜ ¯/ø1â`!»Ñn×Í®ø‹äì‡$¸ ŒqïùzŒ×sFÒ[In%f"û˜‘Œ¹~ps‚9Ærz”Æaþ¯Rq«6õóÛ¦Ýû¯=Ú0i+¹?ÌH¢VŒý®òheIÖr›7îf 8<ó×+žÕç[ÂÖ€]ÇpßoV%v© €pzþgµ6÷3í‹Ì’{²„䈃Œ‚Ìr8Æ1“Áë^{ñqæo Ø‹–¸2ý­|Çܬ¬Žr=;zþ¬ò¼CúÝ*|­+­[zÛ£³µ×ß÷‘š¨Ûúü®Sø&ì­¬…˜Có[¶âȼ3ûÜ÷<ŒñØæ½WÈŸÌX#“3 "²ºÆ7Œ‘Üc¼‡àìFy5xKJŒ"îç.r@ï×Þ½Ä-ÿ þ“}ª}’*Þ!,Fm¸Î@†9b?1W{Yæ3„`Ú¼VõŠÚÛ_kùöG.mhÎñ ôíhí§Ô$.ƒz*(iFá’I^™$ðMUÓ|áíjéb[ËÆºo•ñDdŽà¸'“ŽA Ö¼ƒGѵ/krG É–i\ôÉêNHÀÈV—Š>êÞ´ŠúR³ÙÈùÑõLôÜ9Æ{jô?°°Kýš¥WíZ¿V—m6·E}{X~Æ? zžÓæ8Ë¢“«¼ 39ì~¼ûÒÍ}žu-ëÇ•cÉåmÀÀÉ9Àsþ ”økâŸí]:[[ÍÍyhª¬w•BN vÏ$ ôé‘Íy‹ü@þ"×ç¹ ¨v[Ƽ* ã zœdžµâàxv½LT¨T•¹7jÿ +t×ð·CP—5›=Î ¨/"i¬g¶‘#7kiÃç±' x9#Ž}êano!òKD‘ílï”('¿SÔð?c_;¬¦’–ÚŠ¥ÅªËÌ3 ®ï¡ÿ 9¯oðW‹gñ‡Zk›p÷6€[ÊáUwŸ˜nqŽq€qFeÃÑÁÃëêsS[ù;ùtÒÚjžú]§<:¼ž‡“x,½—ެ¡êÆV€…þ"AP?ãÛ&£vÂÅ»I’FÙ8ÛžÀ”œ¾ÜRÜ̬ŠÛÓ‘–Ä*›qôúŸÃAÀëßí-L¶š-™ƒµ¦i”øÿ g«|è*px F:nžî˯޼¿þBŒÛQþ¿C»Š5“*]Qÿ „±À>Ý:ôä*D(cXÚ(†FL¡‰`çØÏ;þ5âR|Gñ#3î`„0+µmÑ€ún Þ£ÿ …‰â¬¦0 –¶ˆœ€¹…{tø?ʯ(_çþ_Š5XY[¡Ù|Q¿ú µŠ2︛sO* Бÿ ×â°<+à›MkÂ÷š…ij ·Ü–ˆ«ò‚?ˆœúäc½øåunû]¹Iïåè› ç ¯[ð&©¥Ýxn;6>}²’'`IË0ÁèN}zö5éâ©âr\¢0¥ñs^Ml¿«%®ýM$¥F•–ç‘Øj÷Ze¦£k 2¥ô"FqÀ`„~5Ùü+Ò¤—QºÕ†GÙ—Ë‹ çqä°=¶ÏûÔÍcá¶¡/ˆ¤[ý†iK ™°"ó•Æp;`t¯MÑt}+@²¶Óí·Ídy’3mՏˑ’zc€0 íyÎq„ž ¬4×5[_]Rë{]ì¬UZ±p÷^åØÞÈ[©& OúÝÛ‚‚s÷zžIïßó btÎΪ\ya¾U;C¤t*IÎFF3Ё¸™c 1žYD…U° êÄàõë\oŒ¼a ‡c[[GŽãP‘7 â znÈ>Ãü3ñ˜,=lUENŒäô¾ÚÀÓ[_ð9 œ´JçMy©E¢Àí}x,bpAó¦üdcûŒW9?Å[Há$¿¹pÄ™#^9O88©zO=«Ë!µÖüY¨³ªÍy9ûÒ1 úôÚ»M?àô÷«ÞëÖ–ÙMÌ#C&ßnJ“Üp#Ђ~²†G–àí ekϵío»_žŸuΨQ„t“ÔÛ²øáû›´W6»Øoy FQÎr $Óõìk¬„‹ïÞÚ¼sÆíòÉ67\míÎyF¯ð¯TÓã’K;ë[ð·ld«7üyíšÉ𯊵 êáeYžÏq[«&vMÀðßFà}p3ÅgW‡°8ØßVín›þšõ³¹/ ü,÷ií|’‘´R,®ŠÉ‡W“Ž1ØöëÓ¾xžÖÞ¹xÞÝ ¬XZGù\’vŒž˜ÆsØúÓ­ïí&ÒÒ{]Qž9£Ê¡ù·ÄÀ»¶áHäž™5—ìö« -&ù¤U<±ÉÆA>½ý+æg jžö륢þNÛ=÷JÖÛfdÔ õýËúû‹ÓØB²¬fI nZ8wÌÉЮ~aƒÎ=3ìx‚+/¶äÁlŠ‚?™Æü#8-œ\pqTZXtè%»»&ÚÝ#´ŠðÜ žã§Í’¼{p·ß{m>ÞycP¨’¼¢0ú(Rƒë^Ž ñó¼(»y%m´ÕÙ}ÊûékB1¨þÑ®,#Q)ó‡o1T©ÜÃ*Ž‹‚yö< b‰4×H€“ìÐ. ¤²9ÌŠ>„Žãøgšñ ¯Š~)¸ßå\ÛÛoBŒa·L²œg$‚Iã¯ZÈ—Æ~%”äë—È8â)Œcƒ‘Âàu9¯b%)ÞS²¿Ïïÿ 4Öºù}Z/[H%¤vÉ#Ì’x§†b © ³´tÜ{gn=iï%õªÇç]ܧ—! åw„SÓp ·VÈÏ¡?5Âcâb¥_ĤŠz¬—nàþÖΟñKÄöJé=ÌWèêT‹¸÷qÎჟ•q’zWUN«N/ØO^Ÿe|í¾©k{üõ4öV^ïù~G¹êzÂèº|·÷×[’Þ31†rpjg·n Æ0Ý}kåË‹‰nîe¹ËÍ+™ÏVbrOç]'‰¼o®xÎh`¹Ç*±ÙÚ!T$d/$žN>¼WqᯅZ9ÑÒO\ÜÛê1o&,-z ~^NCgNÕéá)ÒÊ©7‰¨¯'Õþ¯þ_¿Ehîþóâ €ï¬uÛûý*ÎK9ä.â-öv<²‘×h$àãúW%ö¯~«g-ÕõÀàG~>Zú¾Iš+(šM³ Û#9äl%ðc¬ ûÝ xÖKG´x®|¸¤Ï™O:Ê8Ã’qÉcÔä‚yÇNJyËŒTj¥&µOmztjÿ ?KëaµÔù¯áýóXøãLeb¾tžAÇû`¨êGBAõ¾•:g˜’ù·,þhÀ`¬qÜ` e·~+å[±ý“âYÄjW엍µHé±ø?Nõô>½âX<5 Ç©ÏѼM¶8cܪXŽÉ^r?¼IróÈS•ZmÇ›™5»òÚÚ7ïu«&|·÷•Ά >[©ÞXHeS$Œyà€ ÷ù²:ò2|óãDf? Z¼PD¶ÓßC(xÆ0|©ßR;ôMsÿ µ´ÔVi¬,͹›Ìxâi˜`¹,GAéÇlV§ÄýF×Yø§ê–‘:Ã=ò2³9n±ÉžØÏ@yÎWžæ±Ãàe„ÄÒN ]ïòêìú_Go'¦ŽÑ’_×õЯðR66þ!›ÑÄ gFMÙ— äžäqôÈ;ÿ eX<#%»Aö‰ãR¤ Í”Ž¹È G&¹Ÿƒ&á?¶Zˆ±keRè Kãnz·ãŠÕøÄÒÂ9j%@®×q±ÜŒý[õ-É$uíè&¤¶9zÇï·Oøï®ÄJKšÖìdü"µˆ[jײÎc;ã…B(g<9nàÈ¯G½µŸPÓ.´Éfâ¼FŽP 31 ‘ÏR}<3šä~ Ã2xVöî Dr Ç\›}Ý#S÷ÈÀëŽHÆI®à\OçKuäI¹†ó(”—GWî ñ³¹¸æ2¨›‹ºÚû%¾ýÖ_3ºNú¯ëúì|ÕÅÖ‰}y lM’ZËîTÿ á[ðÐñ/ˆ9Àû ¸ón3 Mòd‘÷ döª^.Êñް›BâîNp>cëÏçÍzïíôÏ YÍ%ª¬·ãÏ-*9Ü­ÂãhéŒc¾dÈêú¼Ë,. VŠ÷çeÿ n/¡¼äãõâ=‹xGQKx”|¹bÌŠD@2Œ 8'Ž àúƒŽ+áDÒ&¡¨"Œ§–Žr22 Ç·s]ŸÄ‹«ð%ÚÄ<¹ä’(×{e›HÀqÁç©Ç½`üŽÚõK饚9ƒÄ±€< –úƒú~ çðñO#­Í%iKKlµ¦¾F)'Iê¬Î+Ç(`ñ¾£œdÈ’` ™ºcßéé^ÿ i¸”Û\ý¡æhÔB«aq¸}ãÀÆ:ÜWƒ|FÛÿ BŒÇÀeaŸ-sÊ€:úW½ÜÝÜ<%$µ†%CóDªÀí%IÈÏʤ…ôäñÞŒ÷‘a0“ôŽÚë¤nŸoW÷0«e¶y'Å»aΗ2r’# Û°A^ý9ÉQÔõ=ù5¬£Öü.(Þ’M$~V«=éSÄFN½®©ÔWô»ÿ þHžkR‹ìÏ+µµžöê;khÚI¤m¨‹Ôš–âÖçJ¾_Z•’6 a”Èô> ÕÉaÕ<%®£2n bQŠå\tÈõUÿ ø»þ‹k15‚ÃuCL$ݹp P1=Oøýs¯^u éEJ”–éêŸê½5ýzy›jÛ³á›Ûkÿ ÚOcn±ÛÏîW;boºz{ãžüVÆ¡a£a5½äÎÂks¸J@?1è¿{$䑐=k”øsÖ^nŒ¦)ÝåXÃíùN1ØõÚOJë–xF÷h¸ Œ"Ž?x䜚ü³ì¨c*Fœ¯i;7~ñí׫Ðó¥Ë»3Ãü púw ‰°<Á%»ñž ÿ P+Û^ ¾Ye£ŽCÄŒ„/>˜>•á¶Ìm~&&À>M[hÈÈÿ [Ž•íd…RO@3^Ç(ʽ*¶ÖQZyßþ 1Vº}Ñç?¼O4Rh6R€ª£í¡ûÙ a‚3ß·Õ ü=mRÍ/µ9¤‚0ÑC¼Iè:cŽsÛ¾™x£ÆÐ¬ªÍöˢ샒W$•€Å{¨ÀPG ÀÀàŸZìÍ1RÉ0´ðxEË9+Éÿ ^rEÕ—±Š„70l¼áË@û.' ¼¹Žz€N3úUÉ<3á×*?²¬‚ä†"Ùc=p íÛ'¡ª1ñ"økJ†HÒ'»Ÿ+ oÏN¬Ã9 dÙãÜדÏâÍ~æc+j·Jzâ7(£ðW]•晍?nê´º6åwéåç÷N•ZŠíž›¬|?Ðõ?Ñ-E…®³ÇV$~X¯/…õ x‘LˆÑÜÚÈ7¦pzãÜüë½ðÄ^õtÝYËÍ7ÉÖÕ8ÏUe# #€r=sU¾/é’E§jRC4mxNÝ´9†íuá»›V‘ ZI€­×cr1Ÿpzsøf»¨åV‹ìû`qËLÊIã?\~¼³áËC©êhªOîO»‘ÃmçÛçút×¢x“Z}?Üê#b-¤X7õ Äò gž zzbº3œm*qvs·M=íúéw}¿&Úª°^Ö×µÏ(ø‡â†Öµƒenñý†×åQáYûœ÷ÇLœôÎNk¡ð‡¼/µ¸n0æÉ0¬ƒ‚üîÉÆvŒw®Sáö”š¯‹-üÕVŠØÙ[$`(9cqƒÔ_@BëqûÙ`Ýæ­0;79È?w<ó |ÙÜkßÌ1±Ëã ¿ìÒ»ðlìï«ÓnªèèrP´NÏš&Žéö Ù¸÷æ°~-_O'‰`°!RÚÚÝ%]Ø%þbß1'¿ÿ X՝áOöÎŒ·‹¬+Åæ*ÛÛ™0¤ƒOÍÔ `u¯¦ÂaèÐÃÓ«‹¨Ô¥µœ¿¯ÉyÅÙ.oÔôŸ Úx&(STðݽ¦õ] ’ÒNóÁäÈùr3í·žÚ[™ƒ¼veÈ÷ÞIõÎGlqÎ=M|«gsªxÅI6 ]Z·Îªä,¨zŒŽÄ~#ØŠúFñiÉqc©éÐD>S딑 GñŽ1éÐ^+ Ëi;Ô„µVÕú»i¯ÈÒ-ZÍ]òܘ®ì` bÛÙ¥_/y(@÷qÐúg Ô÷W0.Ø› 6Ò© r>QƒŒ0+Èîzb¨É+I0TbNñ"$~)ÕÒ6Þ‹{0VÆ27œWWñcÄcX×íôûyKZéðªc'iQ¿¯LaWŠŸS\·Š“źʸ…ôÙÂí|öÀÇåV|!¤ÂGâÛ[[’ï 3OrÙËPY¹=Î1õ5öåTžÑè Ú64/üö?Zëžk}¬¶éào፾á}3“ü]8Éæ¿´n²Žš_6¾pœ)2?úWÓÚ¥¾¨iWúdŽq{*ª1rXŒd…m»‰äcô¯–dâ•ã‘Jº¬§¨#¨® §,df«8ÉÅßN¾hˆ;îÓ=7áùpën®É 6ûJžO2^œÐò JÖø¥²ã›Ò6Ü·‰!wbÍ‚¬O©»õ¬ÿ ƒP=Ä:â¤-&ÙŽ ` È9 r9íϧzë> XÅ7ƒ5X–krÑ¢L 7€ìw}ÑŸNHëŒüþ:2†á¼+u·á÷N/Û'Ðç~ߘô«ëh!ónRéeQ´6QÛÿ èEwëÅÒ|¸Yqó1uêyùzð8 ƒŠù¦Ò;¹ä6öi<'ü³„[íZhu½ ùÍ¡g‚>r¯׊îÌx}bñ2“­k꣧oø~›hTèóËWò4|ki"xßQ˜Ï6øÀLnß‚0 ¹Æ{±–¶Öe#¨27È@^Ìß.1N¾œyç€õ†ñeé·Õã†çQ°€=­Ì©ºB€Ø8<‚ÃSõ®ùcc>×Ú .Fr:žÝGæ=kÁâ,^!Fž ¬,àµ}%¶«îõ¹†"r²ƒGœüYÕd?aÑÍY®49PyU ÷þ!žxÅm|/‚ãNð˜¼PcûTÒ,¹/Ý=FkÏ|u¨¶«â녏{¤m¢]Û¾ïP>®XãÞ½iÓÁ¾ ‰'¬–6ß¼(„ï— í!úÙäzôë^–:œ¨å|,_¿&š×]uÓѵÛô4’j”bž§x‘Æ©ã›á,‚[Ô ÎÞ= ŒËæ ÀùYÁ?ŽïÚ¼?ÁªxºÕÛ,°1¸‘¿ÝäãØ¯v…@¤åq½ºã œàûââ·z8Xýˆþz~—û»™âµj=Ž â~ãáh@'h¼F#·Üp?ŸëQü-løvépx»cŸø…lxâÃûG·‰¶ø”L£©%y?¦úõÆü-Õ¶¥y`Òl7>q’2üA?•F}c‡jB:¸Jÿ +§¹¿¸Q÷°ív=VÑìu[Qml%R7a×IèTõéŽx¬ ?†š7 1†îã-ˆã’L¡lŽ0OÓ=ÅuˆpÇ•¼3ÛùÒ¶W/!|’wŽw^qÔ×Ïaó M8Q¨ãÑ?ëï0IEhÄa¸X•`a ?!ÐñùQ!Rä ÂžqŽžÝO`I0ÿ J“y|ñ!Îã@99>þ8–+éáu…!ù—ä ʰ<÷6’I®z ÅS„¾)Zþ_Öýµ×ËPåOwø÷þ*üïænÖùmØÝûþ¹=>¦½öî×Jh]¼ç&@§nTŒ6IT Àõ^Fxð7Å3!Ö·aÛ$þÿ ¹ã5îIo:ȪmËY[’8ÇӾlj*òû¢¥xõ¾¼ú•åk+\ð¯ HÚoŽl•Ûk,¯ ç²²cõÅ{²Z\ ´ìQ åpzŽ3Ôð}ÿ Jð¯XO¡øÎé€hÙ¥ûLdŒ`““ù6Gá^ÃáÝ^Ë[Ñb¾YåŒÊ»dŽ4 †2§,;ÿ CQÄ´¾°¨c–±”mºV{«ßÕýÄW\ÖŸ‘çŸ,çMRÆí“l-ƒn~ë©ÉÈê Ü?#Ž•¹ðãSÒ¥ÐWNíà½;ãž)™ÎSÈ9cóLj뵿Å«iÍk¨ió­¶X‚7÷ƒ€yãnyÏŽëÞ Öt`×À×V's$È9Ú:ä{wÆEk€«†Çàc—â$éÎ.éí~Ýëk}ÅAÆpörÑ¢‡Šl¡ÑüSs‹¨‰IÝ„óÀ×wñ&eºðf™pŒÆ9gŽTø£lñëÀçŽ NkÊUK0U’p ï^¡ãÈ¥´ø{£ÙHp`’ØåbqÏ©äó^Æ: Ž' ÊóM«õz+ß×ó5Ÿ»('¹­ð¦C„$˜Å¢_ºÈI?»^äã'ñêzž+ë€ñ-½»´}¡Ë*õ?.xÇ^1ŽMyǸ&“—L–îëöâ7…' bqéÎGé]˪â1$o²¸R8Ã`.q€}sÖ¾C9­8cêÆÞíïóòvÓòùœÕfÔÚéýu­èÖ·Ú Å‚_¤³ÜۺƑߝ”àרý:׃xPþÅÕî-/üØmnQìïGΊÙRqê=>¢½õnæ·r!—h`+’;ò3È<“Û©éšóŸx*÷V¹¸×tÈiˆßwiÔÿ |cŒñÏ®3Ö½̰‰Ë Qr©ö½®¼ÛoÑÙZÅÑ«O൯ýw8;k›ÿ x†;ˆJa;‘º9÷÷R+¡ñgŽí|Iáë{ôáo2ʲ9 029ÉÏLí\‰¿¸Ÿb˜ "Bv$£&#ßiê>=ªª©f  ’N ëí>¡N­XW­~5×úíø\‰»½Ï^ø(—wÖú¥¤2íŽÞXæÁ$ °eÈ888^nÝë²ñÝÔ^ ÖÚ9Q~Ëå7ï DC¶ÑµƒsËÇè9®Wáþƒ6‡£´·°2\Ý:ÈÑ?(#¨'$õèGJ¥ñW\ÿ ‰E¶—¸™g˜ÌÀ¹;Pv ú±ÎNs·ëŸ’–"Ž/:té+ûË]öJöÓM»ëø˜*‘•^Uý—êd|‰åñMæÔÝ‹23å™6æHùÛ‚ëüñ^…ñ1¢oêûÑEØ.õ7*ÅHtÎp{g<·Á«+¸c¿¿pÓ¾Æby=8É_ÄsÆk¬ñB\jÞÔì••Ë[9Píb‹Bヅ =9­3§ð§LšÛáÖšÆæXÌÞdÛP.0\ãïÛ0?™úJ¸™Ë ”•œº+=<µI£¦í¯õêt¬d‹T¬P=ËFêT>ÍØØ@Ï9<÷AQÌ×»Õ¡xùk",JÎæù±Éç$œŽŸZWH®¯"·UÌQ ’ÙÈ]ÅXg<ã ߨg3-Üqe€0¢¨*Œ$܃ ’Sû 8㎼_/e'+Ï–-èÓ¶¶Õíß[·ÙÙ½î쏗¼sk%§µxä‰â-pÒeÆCrú ôσžû=”šÅô(QW‚Õd\ƒæ. \àö¹¯F½°³½0M>‘gr÷q+œ¶NïºHO— ¤ ܥݭ”n·J|ÆP6Kµc=Isó}Ò çGš)a=—#vK›åoK§ßóٍ¤¶¿õú…ÄRÚ[Ësöټˏ•Ë ópw®qœŒ·Ø ùÇâ‹ý‡ãKèS&ÞvûD Aù‘É9 ŒîqÅ} $SnIV[]ѐ´Ó}ØÜ¾A Ü|½kÅþÓ|E Mu R¼.I¼¶däò‚ÃkÆ}ðy¹vc iUœZ…­Õõ»z¾÷¿n¦*j-É­/àœHã\y5 Û ß™ó0— äŸnzôã#Ô¯,†¥ÚeÔ÷ÜÅ´„“'c…<íÝ€<·SŠ¥k§Ã¢éÆÆÙna‚8–=«ʪ[Ÿ™°pNî02z“ÔÙ–K8.È’Þî(vƒ2®@ äÈûãçžxäÇf¯ˆu¹yUÕîýWšÙ|›ëÒ%Q^í[æ|éo5ZY•^{96ˆY‚§v*x>âº_|U¹Ö´©tûMÒÂ9PÇ#«£#€ éÉñ‘ƒÍz/‰´-į¹°dd,Б›p03ƒœ{ç9=+ Ûᧇ¬¦[‡‚ê婺¸#±ß=³ý¿•Õµjñ½HÙh›Û[§ÚýÊöô÷{˜?ô÷·Ô.u©–_%còcAÀ˜’ }0x9Î>žñÇáÍ9,ahï¦Ì2òÓ ñÛAäry$V²Nð ]=$Ž ‚#Ù‚1ƒƒødõMax‡ÂÖ^!±KkÛ‘ «“Çó²FN8+ëÎ{Ò¼oí§[«ÕMRoËeç×[_m/¦¦k.kôgŽxsSÓ´ý`êzªÜÜKo‰cPC9ÎY‰#§^üý9¹âïÞx£Ë·Ú`±‰‹¤;³–=ÏaôÕAð‚÷kêÁNBéÎælcõö®£Fð†ô2Ò¬]ßÂK$ÓÜ®•”/ÊHàã$ä ¸÷ëf¹Oµúâ“”’²ø­è´µþöjçNü÷üÌ¿ xNïFÒd»¼·h®îT9ŽAµÖ>qÁçÔœtïÒ»\ȶÎîcÞäîó3¶@#ÉIÎ ÔñW.<´’¥–ÑÑ€ÕšA‚ ;†qÓë‚2q ÒÂó$# Çí‡ !Ë}Õ9ÈÎÑÉã=;ŒÇÎuñ+ÉûÏ¥öíeÙ+$úíÜ娯'+êZH4ƒq¶FV‹gïŒ208ÆÌ)íб>M|÷âÍã¾"iì‹¥£Jd´™OÝç;sÈúr+ÜäˆË)DŒ¥šF°*3Õ”d {zÔwºQ¿·UžÉf†~>I+ŒqÔ`ð3œ“Ü×f]œTÁÔn4“ƒø’Ýßõ_«*5šzGCÊ,þ+ê1ò÷O¶¸cœºb2yÇ;cùÕ£ñh¬›áÑŠr¤ÝäNBk¥—á—†gxšX/쑘hŸ*Tçn =û㦠2|(ð¿e·ºÖ$ ýìŸ!'åΰyîî+×öœ=Y:²¦ÓÞ×iü’—ü -BK™£˜›âÆ¡&véðõ-ûÉY¹=Onj¹ø¯¯yf4·±T Pó`çœ7={×mÃ/ ¢˜ZÚòK…G½¥b„’G AãÜœ*í¯Ã¿ IoæI¦NU8‘RwÈã;·€ Û×ëÒ”1Y •£E»ÿ Oyto¢<£Áö·šï,䉧ûA¼sû»Nò}¹üE{ÜÖªò1’õÞr0â}ÎØ#>à/8ïéÎ~—áÍ#ñÎlí§³2f'h”?C÷YËdð:qëõÓ·‚ïeÄ© ÔÈØÜRL+žAÎ3¼g=åšó³Œt3 ÑQ¦ùRÙßE®¼±w_;þhš’Sirÿ ^ˆã¼iੇ|RòO„m°J/“$·l“ ÇÓ¿ÿ [ÑŠÆ“„†Õø>cFÆ6Ø1ƒ– àz7Ldòxäüwá‹ÝAXùO•Úý’é®ähm­ •NÀ±ÌTÈç ƒ‘I$pGž:‚ÄbêW¢®œ´|­¦­nÍ>¶ÖÏ¢§ÎÜ¢ºö¹•%ÄqL^öÛ KpNA<ã¡ …î==ª¸óffËF‡yÌcÉ ©ç$ð=ñÏ­YþÊ’Ú]—¥‚¬‚eDïÎH>Ÿ_ÌTP™a‰ch['çÆÜò7a‡?w°Ïn§âÎ5”’¨¹uÚÛ|´ÓÓc§{O—ü1•ªxsÃZ…ÊÏy¡Ã3¸Ë2Èé» ‘ƒÎ äžÜðA§cáOéúÛ4ý5-fŒï„ù¬ûô.Ç Üsž•Ò¾•wo<¶Ÿ"¬¡º|£ î2sÇ¡éE²ÉFѱrU°dÜ6œ¨ mc†Îxë׺Þ'0²¡Rr„{j¾í·è›µ÷)º·å–‹î2|I®Y¼ºÍË·–ÃÆà㍣'óÆxƒOÆÞ&>\lóÌxP Xc¸ì Sþ5§qà/ê>#žÞW¸if$\3 ® ûÄ“ùŽÕê¾ð<Ó‹H¶óÏ" å·( á‘€:ã†8Ï=+ꨬUA×ÃËÚT’ÑÞöù¥¢]{»ms¥F0\ÑÕ—ô}&ÛB´ƒOŽÚ+›xíÄÀ1 ,v± žIëíZ0ǧ™3 í2®0ทp9öÝÔž)ÓZËoq/Ú“‘L ²ŒmùŽÓ9§[Û#Ä‘\ÞB¬Çs [;à à«g‚2ôòªœÝV§»·¯/[uó½õÛï¾ /šÍ}öüÿ «=x»HŸÂÞ.™ ÌQùŸh´‘#a$‚'¡u<Š›Æ>2>+ƒLSiöwµFó1!eg`£åœ ÷ëÛö}Á¿ÛVÙêv $¬ƒ|,s÷z€ð΃¨x÷ÅD\ÜŒÞmåÔ„ ˆ o| :{ÇÓ¶–òÁn!´0Ål€, ƒ ( ÛŒŒ c¶rsšæ,4‹MÛOH!@¢ ÇŽ„`å²9ÝÃw;AÍt0®¤¡…¯ØÄ.Àì클ƒ‘ßñ5Í,Óëu-ÈÔc¢KÃÓ£òÖ̺U.õL¯0…%2È—"~x ‚[`có±nHàŽyàö™¥keˆìŒÛFç{(Ø©†`Jã#Žwg<“:ÚÉ;M ^\yhûX‡vB·÷zrF?§BÊÔ/s<ÐÈB)Û± ·ÍÔwç5Âã:så§e{mѤï«Òíh—]Wm4âí¿ùþW4bC3¶ª¾Ùr$ pw`àädzt!yŠI„hÂîàM)!edŒm'æ>Ç?wzºK­ìcŒ´¯Ìq6fp$)ãw¡éUl`µ»ARAˆÝÕgr:äŒgƒéé[Ôö±”iYs5Ýï«ÙG—K=þF’æMG«óÿ `ŠKɦuOQ!ÕåŒ/ÎGÞ`@ËqÕzdõâ«Ê/Ö(ƒK´%ŽbMü åÜŸö—>¤óŒŒV‘°„I¢Yž#™¥ùÏÊ@8 œgqöö5ª4vד[¬(q cò¨À!FGaÁõõ¯?§†¥ÏU½í¿WªZ$úyú½Žz×§Éþ?>Ã×È•6°{™™ŽÙ.$`­ÎUœ…çè ' ¤r$1Ø(y7 ðV<ž:È  ÁÎMw¾Â'Øb§øxb7gãО½óÉÊë²,i„Fȹ£§8ãä½k¹¥¦ê/ç{ïê驪2œ/«ü?¯Ô›ìñÜ$þeýœRIåŒg9Ác’zrrNO bÚi¢ ѺË/$,“ª¯Ýä;Œ× ´<ÛÑn³IvŸb™¥ nm–ÄŸ—nÝÀãŽ3ëÍG,.öó³˜Ù£¹u ÊÌrŠ[<±!@Æ:c9ÅZh ì’M5ÄìÌ-‚¼ëÉùqŽGì9¬á ;¨A-ž—évþÖ–^ON·Ô”ŸEý}ú×PO&e[]ÒG¸˜Ûp ƒÃà/Ë·8ûÀ€1ž@¿ÚB*²­¼ñì8@p™8Q“žÆH'8«I-%¸‚ F»“åó6°Uù|¶Ú¸ã ò^Äw¥ŠÖK–1ÜÝK,Žddlí²0PÀü“×ükG…¯U«·¶–´w¶ŽÍ¾©yÞú[Zös•¯Á[™6° ¨¼ÉVæq·,# ìãï‘×8îry®A››¨,ãc66»Ë´ã'æÉù?t}¢æH--Òá"›|ˆ¬[í  7¶ö#¸9«––‹$,+Ëqœ\Êø c€yê^ݸÄa°«™B-9%«×®‹V´w~vÜTéꢷþ¼ˆ%·¹• ’[xç•÷2gØS?6åÀÚ õ9É#š@÷bT¸º²C*3Bá¤òÎA9 =úU§Ó"2Ãlá0iÝIc‚2Î@%öç94ùô»'»HÄ¥Ô¾@à Tp£šíx:úÊ:5eºßMý×wµ›Ó_+šº3Ýyvÿ "ºÇ<ÂI>Õ 1G·Ë«È«É# àÈÇ øp Jv·šæDûE¿›†Ë’NFr2qŸ½ÇAÜšu•´éí#Ħ8£2”Ú2Ã/€[ÎTr;qŠz*ý’Îþ(≠;¡TÆâ›;ºÿ àçœk‘Þ­8¾Uª¾íé{^×IZéwÓkXÉûÑZo¯_øo×È¡¬ â–ÞR§2„‚Àœü½ùç® SVa†Âüª¼±D‘ŒísŸàä|ä2 æ[‹z”¯s{wn„ÆmáóCO+†GO8Ïeçåº`¯^¼ðG5f{Xžä,k‰<á y™¥voÆ éÛõëI=œ1‹éíÔÀÑ)R#;AÂncäŽ:tÏ#¶TkB.0Œ-ÖÞZÛgumß}fÎJÉ+#2êÔP£žùÈÅi¢%œ3P*Yƒò‚Aì“Ž2r:ƒÐúñi­RUQq‰H9!”={~¼ “JŽV¥»×²m.ÛߺiYl¾òk˜gL³·rT• ’…wHÁ6ä`–Î3ùÌ4Øe³†&òL‘•%clyîAÂäà0 žüç$[3uŘpNOÀÉ=† cï{rYK ååä~FÁ •a»"Lär1Ó¯2Äõæ<™C•.fÕ»è¥~½-¿g½Â4¡{[ør¨¶·Žõäx¥’l®qpwÇ»8ärF \cޏܯÓ-g‚yciÏÀ¾rÎwèØÈ#o°Á9ã5¢šfÔxÞæfGusÏÌJÿ µ×œ/LtãÅT7²¶w,l ɳ;”eúà·¨çîŒsÜgTÃS¦­^ '~‹®›¯+k÷ZÖd©Æ*Ó[Ü«%Œk0ŽXƒ”$k#Ȩ P2bv‘ƒŸáÇ™ÆÕb)m$É*8óLE‘8'–ÜN Úyàúô­+{uº±I'wvš4fÜr íì½=úuú sFlìV$‘ö†Hсù€$§ õ=½¸«Ž] :Ž+•¦ïmRþ½l´îÊT#nkiøÿ _ðÆT¶7Ò½ºÒ£Î¸d\ã8=yãŽÜäR{x]ZâÚé#¸r²#»ÎHÆ6õ ç® ÎFkr;sºÄ.&;só± Ç9êH÷ýSšÕ­tÐU¢-n­ Ì| vqœ„{gŒt§S.P‹’މ_[;m¥Þ­ZýRûÂX{+¥úü¼ú•-àÓ7!„G"“´‹žƒnrYXã¸îp éœ!Ó­oP̏tÑ (‰Þ¹é€sÓ#GLçÕšÑnJý¡!‘Tä#“ß?îýp}xÇ‚I¥Õn#·¸–y'qó@r[ Êô÷<ÔWÃÓ¢áN¥4ԝ’I&ݼ¬¬¼ÞºvéÆ FQV~_ÒüJÖÚt¥¦Xá3BÄP^%ÈÎW-×c¡ú©¤·Iþèk¥š?–UQåIR[’O 5x\ÉhÆI¶K4«2ùªŠŒ<¼óœçØ`u«‚Í.VHä € Ëgfx''9ÆI#±®Z8 sISºku¢ßÞ]úk»Jößl¡B.Ü»ÿ MWe °·Ž%šêɆ¼»Âù³´œ O¿cÐÓÄh©"ÛÜÏ.ÖV ’3nüÄmnq[ŒòznšÖ>J¬òˆæ…qýØP Ž:ä7^0yëWšÍ_79äoaÈ °#q0{ää×mœy”R{vÒÞ¶ÚÏe¥“ÚÆÐ¥Ì®—õýjR •íç›Ìb„+J yÜØÙ•Ç]¿Ôd þËOL²”9-Œ—õÃc'æÝלçÚ²ìejP“½ âù°¨†ðqòädЃÉäÖÜj÷PÇp“ÍšŠå«‘î <iWN­smª»¶vÓz5»ûì:Rs\Ðßôû×uÔÿÙ