Current time: 2025-10-09 10:52:15.244
load average: 0.63, 1.67, 1.98
total load time: 0.0148s
code time: 0.0037s;
query time: 0.0111s
code time percentage: 25%
query time percentage: 75.0000%
queries: 5
memory usage: 986kB
memory peak: 994kB
Controls:
section | string(6) "delete" |
pagenumber | string(0) "" |
ext | string(4) "html" |
extendedparams | array(2) { ["board"]=> string(3) "cog" ["post"]=> string(6) "421469" } |
lang | NULL |
Time log:
1760032335.22960401: beginning 1760032335.229604 - 0.000000 (0.000000s): log starting 1760032335.229912 - 0.000308 (0.000308s): kobak\debug: setting up new instance 1760032335.229918 - 0.000314 (0.000006s): kobak\cfg: setting up new instance 1760032335.229968 - 0.000364 (0.000050s): kobak\debug: setting up new instance 1760032335.229974 - 0.000370 (0.000006s): kobak\debug: finished setup 1760032335.229976 - 0.000372 (0.000002s): kobak\cfg: finished setup 1760032335.229979 - 0.000375 (0.000003s): kobak\debug: finished setup 1760032335.229981 - 0.000377 (0.000002s): core files loaded 1760032335.230024 - 0.000420 (0.000043s): kobak\controls: setting up new instance 1760032335.230030 - 0.000426 (0.000006s): kobak\controls: finished setup 1760032335.230032 - 0.000428 (0.000002s): kobak\modules: setting up new instance 1760032335.230034 - 0.000430 (0.000002s): kobak\modules: finished setup 1760032335.230110 - 0.000506 (0.000076s): kobak\plugins: setting up new instance 1760032335.230114 - 0.000510 (0.000004s): kobak\plugins: finished setup 1760032335.230130 - 0.000526 (0.000016s): kobak\modules: loading module geoip 1760032335.230134 - 0.000530 (0.000004s): kobak\pages: setting up new instance 1760032335.230144 - 0.000540 (0.000010s): kobak\pages: finished setup 1760032335.230172 - 0.000568 (0.000028s): kobak\modules: finished loading module "geoip" 1760032335.230181 - 0.000577 (0.000009s): kobak\modules: loading module kobak 1760032335.230447 - 0.000843 (0.000266s): kobak\kobak: setting up new instance 1760032335.230461 - 0.000857 (0.000014s): kobak\kobak: finished setup 1760032335.230465 - 0.000861 (0.000004s): kobak\cache: setting up new instance 1760032335.231191 - 0.001587 (0.000726s): kobak\cache: mode selected: apcu 1760032335.231197 - 0.001593 (0.000006s): kobak\cache: finished setup 1760032335.231199 - 0.001595 (0.000002s): kobak\cache: loading cache file: kobak_cache 1760032335.231204 - 0.001600 (0.000005s): kobak\cache: checking cache file: kobak_cache 1760032335.231210 - 0.001606 (0.000006s): kobak\cache: finished checking cache file: kobak_cache 1760032335.231517 - 0.001913 (0.000307s): kobak\cache: finished loading cache file: kobak_cache 1760032335.231526 - 0.001922 (0.000009s): kobak\errors: setting up new instance 1760032335.231532 - 0.001928 (0.000006s): kobak\errors: finished setup 1760032335.231598 - 0.001994 (0.000066s): kobak\current: setting up new instance 1760032335.231604 - 0.002000 (0.000006s): kobak\current: finished setup 1760032335.231818 - 0.002214 (0.000214s): kobak\modules: finished loading module "kobak" 1760032335.231834 - 0.002230 (0.000016s): kobak\modules: loading module torcheck 1760032335.231854 - 0.002250 (0.000020s): kobak\modules: finished loading module "torcheck" 1760032335.231878 - 0.002274 (0.000024s): kobak\modules: finished loading 3 module(s) 1760032335.231881 - 0.002277 (0.000003s): kobak\current: creating default rewrite rules 1760032335.231883 - 0.002279 (0.000002s): kobak\current: starting validation of current section 1760032335.231902 - 0.002298 (0.000019s): kobak\current: finished validating section 1760032335.231908 - 0.002304 (0.000006s): kobak\current: finished validating prerequisites 1760032335.231925 - 0.002321 (0.000017s): kobak\current: finished validating optional inputs 1760032335.231939 - 0.002335 (0.000014s): KOBAK BBS: validating board 1760032335.231985 - 0.002381 (0.000046s): kobak\db: setting up new instance 1760032335.231987 - 0.002383 (0.000002s): kobak\db: Attempting to connect to database 1760032335.232463 - 0.002859 (0.000476s): kobak\db: Successfully connected to database 1760032335.232519 - 0.002915 (0.000056s): kobak\db: finished setup 1760032335.232526 - 0.002922 (0.000007s): kobak\ban: query: querying items 1760032335.233111 - 0.003507 (0.000585s): KOBAK BBS: loading board specific plugins 1760032335.233276 - 0.003672 (0.000165s): KOBAK BBS: finished loading board specific plugins 1760032335.233284 - 0.003680 (0.000008s): KOBAK BBS: validating post 1760032335.233300 - 0.003696 (0.000016s): kobak\post: query: querying posts 1760032335.240313 - 0.010709 (0.007013s): kobak\post: query: presorting post keys 1760032335.240341 - 0.010737 (0.000028s): kobak\post: query: presorting post keys: done 1760032335.240343 - 0.010739 (0.000002s): kobak\post: query: building post files query 1760032335.240344 - 0.010740 (0.000001s): kobak\post: query: getting post files 1760032335.240848 - 0.011244 (0.000504s): kobak\post: query: post files query done 1760032335.240850 - 0.011246 (0.000002s): kobak\post: query: pairing posts and post files 1760032335.240851 - 0.011247 (0.000001s): kobak\post: query: sorting post files 1760032335.240853 - 0.011249 (0.000002s): kobak\post: query: post files setup completed 1760032335.240854 - 0.011250 (0.000001s): kobak\post: query: constructing post objects 1760032335.240918 - 0.011314 (0.000064s): kobak\post: query: constructing post objects done 1760032335.240920 - 0.011316 (0.000002s): kobak\post: query: starting lookups for thread locked statuses 1760032335.240926 - 0.011322 (0.000006s): kobak\post: query: querying unknown locked thread statuses 1760032335.243885 - 0.014281 (0.002959s): kobak\post: query: applying unknown locked thread statuses 1760032335.243892 - 0.014288 (0.000007s): kobak\post: query: setting up references/backlinks 1760032335.243901 - 0.014297 (0.000009s): kobak\post: get_posts: querying out-of-thread quotes 1760032335.244027 - 0.014423 (0.000126s): kobak\post: get_posts: applying quote backlinks to posts 1760032335.244095 - 0.014491 (0.000068s): kobak\post: query: finished. 1760032335.244111 - 0.014507 (0.000016s): KOBAK BBS: validating delete 1760032335.244157 - 0.014553 (0.000046s): kobak\current: Template file found 1760032335.244158 - 0.014554 (0.000001s): kobak\current: setting up HTML vars 1760032335.244162 - 0.014558 (0.000004s): kobak\html: setting up new instance 1760032335.244178 - 0.014574 (0.000016s): kobak\html: finished setup 1760032335.244180 - 0.014576 (0.000002s): kobak\current: setting up per-page HTML vars 1760032335.244207 - 0.014603 (0.000027s): KOBAK BBS: loading delete 1760032335.244215 - 0.014611 (0.000008s): kobak\current: finished setting up all HTML vars 1760032335.244216 - 0.014612 (0.000001s): start rendering html 1760032335.244242 - 0.014638 (0.000026s): loading report 1760032335.244255 - 0.014651 (0.000013s): called header.php 1760032335.244304 - 0.014700 (0.000049s): called footer.php 1760032335.244306 - 0.014702 (0.000002s): completed rendering most of the html 1760032335.244332 - 0.014728 (0.000026s): log finished 1760032335.244476 - 0.014872 (0.000144s): starting debug_t
|
SQL statistics:
time taken: 0.00053000 | SELECT b.*, ppass.`password`, ( SELECT GROUP_CONCAT(DISTINCT `kobaboardban`.`boardid` ORDER BY `kobaboardban`.`boardid` SEPARATOR ',') FROM `kobaboardban` WHERE `banid` = b.`id` GROUP BY `banid` ) AS `active_boards` FROM `kobaban` as b LEFT JOIN `kobafingerprint` fp ON b.`fingerprint_id` = fp.`id` LEFT JOIN `kobapostpassword` ppass ON b.`password_id` = ppass.`id` WHERE ( (`iplong1` = 'd849d8d8') OR (`iplong1` <= 'd849d8d8' AND 'd849d8d8' <= `iplong2`) ) AND `type` IN(-1,0,1,2,3) AND (b.`id` IN ( SELECT `banid` FROM `kobaboardban` WHERE `boardid` IN(3) ) OR `global` = 1) ORDER BY `type`,`expiration` DESC | no rows found or affected (prepared query) |
time taken: 0.00697923 | SELECT p.*, ppass.`password`, ipinfo.`ipmd5`, ipinfo.`ipcrypt`, r.time r_time, r.reason r_reason, r.ipmd5 r_ipmd5, r.ipcrypt r_ipcrypt, r.password r_password, r.userid r_userid, s.pagenumber, s.total_posts, s.total_files, s.total_image, s.total_audio, s.total_video, s.total_swf, s.unique_ip, s.unique_user FROM `kobapost` p LEFT JOIN `kobareport` r ON p.`boardid` = r.`boardid` AND p.`postid` = r.`postid` LEFT JOIN `kobapoststats` s ON p.`boardid` = s.`boardid` AND p.`postid` = s.`threadid` LEFT JOIN `kobapostpassword` ppass ON p.`password_id` = ppass.`id` LEFT JOIN `kobaipinfo` ipinfo ON p.`ip_id` = ipinfo.`id` WHERE p.`boardid` = '3' AND p.`postid` = '421469' AND p.`deleted` != '1' LIMIT 1 | no error (prepared query) |
time taken: 0.00048900 | SELECT pf.`pfid`, pf.`order`, pf.`filename`, pf.`thumb`, f.* FROM `kobapostfile` pf LEFT JOIN `kobafile` f ON pf.`fileid` = f.`id` WHERE (pf.`pfid`) IN( SELECT * FROM( SELECT p.`id` FROM `kobapost` p LEFT JOIN `kobareport` r ON p.`boardid` = r.`boardid` AND p.`postid` = r.`postid` LEFT JOIN `kobapostfile` pf ON p.`id` = pf.`pfid` LEFT JOIN `kobafile` f ON pf.`fileid` = f.`id` LEFT JOIN `kobapostpassword` ppass ON p.`password_id` = ppass.`id` LEFT JOIN `kobaipinfo` ipinfo ON p.`ip_id` = ipinfo.`id` WHERE p.`boardid` = '3' AND p.`postid` = '421469' AND p.`deleted` != '1' LIMIT 1 ) as sub) | no rows found or affected (prepared query) |
time taken: 0.00294614 | SELECT `boardid`, `postid`, `pin`, `flag`, `bumped` FROM `kobapost` WHERE (`boardid` = 3 AND `postid` IN(419999)) AND `deleted` != 1 | no error |
time taken: 0.00011611 | SELECT `boardid`, `parentid`, `postid` FROM `kobapost` WHERE (`boardid` = 3 AND `postid` IN(421468)) AND `deleted` != 1 | no error |
actions:
after_modules_load | actions: 1 | start: 1760032335.23185800 | end: 1760032335.23187200 | took (total): 0.000014 |
before_validation | actions: 1 | start: 1760032335.23189000 | end: 1760032335.23189700 | took (total): 0.000007 |
header_meta | actions: 4 | start: 1760032335.24425900 | end: 1760032335.24427900 | took (total): 0.000020 |
setup_html | actions: 2 | start: 1760032335.24418600 | end: 1760032335.24421300 | took (total): 0.000027 |
validation | actions: 3 | start: 1760032335.23193000 | end: 1760032335.24412100 | took (total): 0.012191 |
APCU extension loaded: YES
APCU function exists: YES
APCU enabled? YES
Memcache class exists? no
Memcached class exists? YES
Redis class exists? YES
Mode selected in config: apcu
Currently using: apcu
Used memory: 10.99MB
Available memory: 984.01MB
key | created | ttl | deletes in | hits | size |
---|---|---|---|---|---|
kobak_board-23-index_page-1 | 2025-10-09 17:50:57.000 | 86400 sec | 111522 sec | 0 (current) / 2 (ever) | 38kB |
kobak_thread-20-205694 | 2025-10-09 17:51:04.000 | 86400 sec | 111529 sec | 0 (current) / 0 (ever) | 130kB |
kobak_thread-23-165164 | 2025-10-09 17:51:39.000 | 86400 sec | 111564 sec | 0 (current) / 0 (ever) | 338kB |
kobak_thread-23-230330 | 2025-10-09 17:51:32.000 | 86400 sec | 111557 sec | 0 (current) / 0 (ever) | 349kB |
kobak_thread-20-114076 | 2025-10-09 17:51:00.000 | 86400 sec | 111525 sec | 0 (current) / 6 (ever) | 697kB |
kobak_summary-23-17780 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 5kB |
kobak_thread-23-166153 | 2025-10-09 17:51:30.000 | 86400 sec | 111555 sec | 0 (current) / 0 (ever) | 353kB |
kobak_thread-23-231176 | 2025-10-09 17:51:31.000 | 86400 sec | 111556 sec | 0 (current) / 0 (ever) | 3kB |
kobak_thread-23-231277 | 2025-10-09 17:51:19.000 | 86400 sec | 111544 sec | 0 (current) / 0 (ever) | 372kB |
kobak_summary-23-113722 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 4kB |
kobak_summary-23-241198 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 7kB |
kobak_thread-23-167072 | 2025-10-09 17:51:19.000 | 86400 sec | 111544 sec | 0 (current) / 0 (ever) | 361kB |
kobak_thread-23-232271 | 2025-10-09 17:51:01.000 | 86400 sec | 111526 sec | 0 (current) / 0 (ever) | 356kB |
kobak_thread-20-23478 | 2025-10-09 17:51:08.000 | 86400 sec | 111533 sec | 0 (current) / 0 (ever) | 246kB |
kobak_summary-23-269545 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 4kB |
kobak_thread-23-168004 | 2025-10-09 17:51:01.000 | 86400 sec | 111526 sec | 0 (current) / 0 (ever) | 346kB |
kobak_cache | 2025-10-09 17:50:55.000 | 43200 sec | 68320 sec | 1 (current) / 1994 (ever) | 5kB |
kobak_thread-20-209324 | 2025-10-09 17:51:02.000 | 86400 sec | 111527 sec | 0 (current) / 0 (ever) | 71kB |
kobak_thread-23-283222 | 2025-10-09 17:51:40.000 | 86400 sec | 111565 sec | 0 (current) / 4 (ever) | 217kB |
tor_exit_list | 2025-10-09 17:52:04.000 | 3600 sec | 28789 sec | 0 (current) / 0 (ever) | 10kB |
kobak_thread-23-270721 | 2025-10-09 17:52:05.000 | 86400 sec | 111590 sec | 0 (current) / 0 (ever) | 353kB |
kobak_summary-23-280309 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 5kB |
kobak_thread-23-271651 | 2025-10-09 17:51:59.000 | 86400 sec | 111584 sec | 0 (current) / 0 (ever) | 375kB |
kobak_thread-23-271738 | 2025-10-09 17:51:58.000 | 86400 sec | 111583 sec | 0 (current) / 0 (ever) | 40kB |
kobak_summary-23-281327 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 4kB |
kobak_thread-23-272690 | 2025-10-09 17:51:51.000 | 86400 sec | 111576 sec | 0 (current) / 0 (ever) | 343kB |
kobak_summary-23-282265 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 4kB |
kobak_thread-23-273644 | 2025-10-09 17:51:42.000 | 86400 sec | 111567 sec | 0 (current) / 0 (ever) | 348kB |
kobak_summary-23-283222 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 4kB |
kobak_thread-23-274581 | 2025-10-09 17:51:32.000 | 86400 sec | 111557 sec | 0 (current) / 0 (ever) | 354kB |
kobak_thread-23-225484 | 2025-10-09 17:52:13.000 | 86400 sec | 111598 sec | 0 (current) / 0 (ever) | 374kB |
kobak_thread-23-226053 | 2025-10-09 17:52:13.000 | 86400 sec | 111598 sec | 0 (current) / 0 (ever) | 5kB |
kobak_thread-23-275533 | 2025-10-09 17:51:20.000 | 86400 sec | 111545 sec | 0 (current) / 0 (ever) | 349kB |
kobak_thread-23-226463 | 2025-10-09 17:52:07.000 | 86400 sec | 111592 sec | 0 (current) / 0 (ever) | 361kB |
kobak_summary-23-271738 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 4kB |
kobak_thread-9-425297 | 2025-10-09 17:51:53.000 | 86400 sec | 111578 sec | 0 (current) / 0 (ever) | 138kB |
kobak_thread-20-211489 | 2025-10-09 17:52:05.000 | 86400 sec | 111590 sec | 0 (current) / 0 (ever) | 53kB |
kobak_summary-23-158588 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 5kB |
kobak_thread-23-276497 | 2025-10-09 17:51:02.000 | 86400 sec | 111527 sec | 0 (current) / 0 (ever) | 361kB |
kobak_thread-23-227441 | 2025-10-09 17:52:00.000 | 86400 sec | 111585 sec | 0 (current) / 0 (ever) | 342kB |
kobak_thread-2-243399 | 2025-10-09 17:51:12.000 | 86400 sec | 111537 sec | 0 (current) / 0 (ever) | 34kB |
kobak_thread-9-439595 | 2025-10-09 17:52:09.000 | 86400 sec | 111594 sec | 0 (current) / 0 (ever) | 127kB |
kobak_thread-23-228405 | 2025-10-09 17:51:53.000 | 86400 sec | 111578 sec | 0 (current) / 0 (ever) | 367kB |
kobak_thread-23-229371 | 2025-10-09 17:51:45.000 | 86400 sec | 111570 sec | 0 (current) / 0 (ever) | 363kB |
kobak_thread-23-229702 | 2025-10-09 17:51:41.000 | 86400 sec | 111566 sec | 0 (current) / 0 (ever) | 99kB |
kobak_thread-23-160435 | 2025-10-09 17:52:13.000 | 86400 sec | 111598 sec | 0 (current) / 0 (ever) | 344kB |
kobak_summary-23-275533 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 5kB |
kobak_thread-23-161359 | 2025-10-09 17:52:07.000 | 86400 sec | 111592 sec | 0 (current) / 0 (ever) | 392kB |
kobak_summary-23-276497 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 4kB |
kobak_thread-23-162348 | 2025-10-09 17:52:00.000 | 86400 sec | 111585 sec | 0 (current) / 0 (ever) | 358kB |
kobak_summary-23-277491 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 4kB |
kobak_catalog-9 | 2025-10-09 17:51:18.000 | 86400 sec | 111543 sec | 0 (current) / 0 (ever) | 374kB |
kobak_banners | 2025-10-09 17:50:56.000 | 43200 sec | 68321 sec | 0 (current) / 24 (ever) | 1kB |
kobak_thread-23-163296 | 2025-10-09 17:51:55.000 | 86400 sec | 111580 sec | 0 (current) / 0 (ever) | 381kB |
kobak_summary-23-229702 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 4kB |
kobak_thread-23-269755 | 2025-10-09 17:52:11.000 | 86400 sec | 111596 sec | 0 (current) / 0 (ever) | 334kB |
kobak_thread-23-164215 | 2025-10-09 17:51:47.000 | 86400 sec | 111572 sec | 0 (current) / 0 (ever) | 325kB |
kobak_summary-23-8 | 2025-10-09 17:50:57.000 | 43200 sec | 68322 sec | 0 (current) / 0 (ever) | 5kB |
Rewrite/redirect rules:
Redirect | /^([a-z_\-0-9]*)\/0.html(?:\?.*)?$/ | $matches[1]\/ | 302 |
Redirect | /^([a-z_\-0-9]*)\/1.html(?:\?.*)?$/ | $matches[1]\/ | 302 |
Rewrite: | /^([a-z_\-0-9]*)\/?(?:\?.*)?$/ | index.php?section=index&board=$matches[1] | |
Rewrite: | /^([a-z_\-0-9]*)\/([0-9]*)\.html(?:\?.*)?$/ | index.php?section=index&board=$matches[1]&pagenumber=$matches[2] | |
Rewrite: | /^([a-z_\-0-9]*)\/catalog\.html(?:\?.*)?$/ | index.php?section=catalog&board=$matches[1] | |
Rewrite: | /^([a-z_\-0-9]*)\/t([0-9]*)\.(html|json|rss)(?:\?.*)?$/ | index.php?section=thread&board=$matches[1]&thread=$matches[2]&ext=$matches[3] | |
Rewrite: | /^([a-z_\-0-9]*)\/posts_feed\.rss$/ | index.php?section=posts_feed&board=$matches[1]&ext=rss | |
Rewrite: | /^([a-z_\-0-9]*)\/threads_feed\.rss$/ | index.php?section=threads_feed&board=$matches[1]&ext=rss | |
Rewrite: | /^latest_posts\.rss$/ | index.php?section=latest_posts&ext=rss | |
Rewrite: | /^latest_threads\.rss$/ | index.php?section=latest_threads&ext=rss | |
Rewrite: | /^latest_nsfw_posts\.rss$/ | index.php?section=latest_nsfw_posts&ext=rss | |
Rewrite: | /^latest_nsfw_threads\.rss$/ | index.php?section=latest_nsfw_threads&ext=rss |
rules in htaccess format:
RewriteRule ^([a-z_\-0-9]*)\/0.html(?:\?.*)?$ $1/ [R=302,L,QSA] RewriteRule ^([a-z_\-0-9]*)\/1.html(?:\?.*)?$ $1/ [R=302,L,QSA] RewriteRule ^([a-z_\-0-9]*)/(?:\?.*)?$ index.php?section=index&board=$1 [L,QSA] RewriteRule ^([a-z_\-0-9]*)\/([0-9]*)\.html(?:\?.*)?$ index.php?section=index&board=$1&pagenumber=$2 [L,QSA] RewriteRule ^([a-z_\-0-9]*)\/catalog\.html(?:\?.*)?$ index.php?section=catalog&board=$1 [L,QSA] RewriteRule ^([a-z_\-0-9]*)\/t([0-9]*)\.(html|json|rss)(?:\?.*)?$ index.php?section=thread&board=$1&thread=$2&ext=$3 [L,QSA] RewriteRule ^([a-z_\-0-9]*)\/posts_feed\.rss$ index.php?section=posts_feed&board=$1&ext=rss [L,QSA] RewriteRule ^([a-z_\-0-9]*)\/threads_feed\.rss$ index.php?section=threads_feed&board=$1&ext=rss [L,QSA] RewriteRule ^latest_posts\.rss$ index.php?section=latest_posts&ext=rss [L,QSA] RewriteRule ^latest_threads\.rss$ index.php?section=latest_threads&ext=rss [L,QSA] RewriteRule ^latest_nsfw_posts\.rss$ index.php?section=latest_nsfw_posts&ext=rss [L,QSA] RewriteRule ^latest_nsfw_threads\.rss$ index.php?section=latest_nsfw_threads&ext=rss [L,QSA]