It seems that my HaikuDepot on my installation of Haiku (hrev59378 Walter x86_64) has somehow lost track of some fonts that have already been installed. When I look at the fonts in question, I see that they are available for installation but when I actually try to install them I get the “Fatal error occurred while installing package” error.
I wonder whether there is a way to get everything back in sync again?
Try “pkgman full-sync” from Terminal
Tried “pkgman full-sync” but it seems that as far as pkgman is concerned, it is in full sync. So perhaps it is just HaikuDepot side of things which has gone awry?
But then, I tried installing the vl_gothic font from Terminal, with the following result. So both HaikuDepot and pkgman seem to have lost the plot somewhat…
HaikuDepot still thinking that VL Gothic still isn’t installed though.
Your font packages have been downloaded but non-activated.
Nobody seems to know why but that can happen from time to time to a package.
If you have some doubts about a package, you can check content of activated-packages.txt with a text editor of your choice. The content of that file should match list of files of your packages directory.
The problem can be that the activated-packages file is corrupted. It will be regenerated at boot, so delete it and reboot. Check its content to see if your problem was fixed.
In case it didn’t change anything, the solution is to move the font packages out from /boot/system/packages directory so you can reinstall them using HD.
My /boot/system/packages/administrative/activated-packages file seems to have been corrupted. I’ll delete this along with all the state folders, transaction folders, queued-scripts and the writable-files folders whatever they are… and when I reboot my pc, hopefully Haiku will rebuild what’s necessary. Touch wood!
dler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at KERN: [0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at KERN: [0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupts at end of handler: 100
KERN: e[33msdhci:e[0m interrupt function called 100
KERN: e[33msdhci:e[0m Remaining interrupt
Well, I rebooted, and funnily enough the Administrative folder remains empty… but when I checked out two of the font families I’d installed via Haiku Depot (VL Gothic and Recursive), HaikuDepot already knew that these fonts were installed and available. Hooray! Thanks everyone!
in Terminal
checkfs /boot
Thanks. I got this from a checkfs. At least it seems that the file system is ok?
user@shredder ~# checkfs /boot
35248 nodes checked,
0 blocks not allocated,
0 blocks already set,
56 blocks could be freed
files 31244
directories 3277
attributes 405
attr. dirs 274
indices 48
direct block runs 38002 (27.59 GiB)
indirect block runs 1459 (in 120 array blocks, 18.51
GiB)
double indirect block runs 0 (in 0 array blocks, 0 bytes)







