CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Installation

[OpenFOAM.com] ParaView 5.5.2: "OpenGL Warning: glXChooseVisual: bad attrib=..., ignoring"

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   August 15, 2018, 13:04
Default ParaView 5.5.2: "OpenGL Warning: glXChooseVisual: bad attrib=..., ignoring"
  #1
New Member
 
Colton
Join Date: Aug 2018
Posts: 9
Rep Power: 8
corsair2014 is on a distinguished road
To start off, I am completely new to OpenFOAM as of this week and almost brand new to Linux. So for now, just assume I know nothing haha

After struggling through the install (build from source) of OpenFOAM v1806, I got to the end of the guide (www.openfoam.com/code/build-guide.php) where you run this command:

Code:
run 
cp -r $FOAM_TUTORIALS/incompressible/simpleFoam/pitzDaily ./ 
cd pitzDaily 
blockMesh 
simpleFoam 
paraFoam
The iterations run fine, but I get this paraview error (attached).

Oddly enough, after the initial build I couldn't get paraview to do anything. Now it opens the default ParaView window but doesn't load the results from OpenFOAM.

Please help


Further reference: Lubuntu 18.04 (i think), currently in VirtualBox but going to reinstall on my dualboot Ubuntu 18.04 once I get this version nailed down for practice
Attached Images
File Type: jpg paraviewError.JPG (65.2 KB, 46 views)
corsair2014 is offline   Reply With Quote

Old   August 15, 2018, 17:33
Default Update
  #2
New Member
 
Colton
Join Date: Aug 2018
Posts: 9
Rep Power: 8
corsair2014 is on a distinguished road
Well, apparently restarting Terminal fixed something, and now I can use the suggested commands to ./allMake and build out paraView the way it is telling me to.

Now though, NO WINDOWS will open up and i get the following errors:
Code:
openfoam@openfoam-VirtualBox:~/OpenFOAM/OpenFOAM-v1806/applications/utilities/postProcessing/graphics/PVReaders/pitzDaily$ paraFoam
Created temporary 'pitzDaily.OpenFOAM'

(paraview:3383): dbind-WARNING **: 13:29:51.629: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files
QApplication: invalid style override passed, ignoring it.
OpenGL Warning: glXChooseVisual: bad attrib=0x186a0, ignoring
OpenGL Warning: glXChooseVisual: bad attrib=0x186a1, ignoring
Segmentation fault (core dumped)
I'm assuming this is only a problem because I am in virtual box? I know it's possible to run this program in a VM, so how can I fix this error?



Update 2:
By disabling "3d hardware acceleration" in VirtualBox settings, I can now get this to happen, but ParaView still doesn't actually display anything except for the 'welcome' dialogue
Attached Images
File Type: jpg new problem.JPG (74.4 KB, 12 views)
File Type: jpg paraview error.jpg (127.2 KB, 18 views)

Last edited by corsair2014; August 15, 2018 at 17:43. Reason: update2
corsair2014 is offline   Reply With Quote

Old   August 17, 2018, 14:19
Default
  #3
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,982
Blog Entries: 45
Rep Power: 128
wyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to all
Quick answer: It's because ParaView needs OpenGL2, more specifically OpenGL 3.3. Try running the following command:
Code:
export MESA_GL_VERSION_OVERRIDE=3.3
then run:
Code:
paraFoam
Side note: This is actually noted in the last FAQ here: https://www.openfoam.com/documentati...quirements.php



If this does not work, install the packages "libglu1-mesa-dev", e.g.:
Code:
sudo apt-get install libglu1-mesa-dev

With luck, this allows you to run ParaView without having to rebuild it.
__________________
wyldckat is offline   Reply With Quote

Old   August 17, 2018, 14:42
Default
  #4
New Member
 
Colton
Join Date: Aug 2018
Posts: 9
Rep Power: 8
corsair2014 is on a distinguished road
Quote:
Originally Posted by wyldckat View Post
Quick answer: It's because ParaView needs OpenGL2, more specifically OpenGL 3.3. Try running the following command:
Code:
export MESA_GL_VERSION_OVERRIDE=3.3
then run:
Code:
paraFoam
Side note: This is actually noted in the last FAQ here: https://www.openfoam.com/documentati...quirements.php



If this does not work, install the packages "libglu1-mesa-dev", e.g.:
Code:
sudo apt-get install libglu1-mesa-dev

With luck, this allows you to run ParaView without having to rebuild it.

Thank you for the reply! Unfortunately neither of these worked; MESA Override = 3.3 didn't allow the application to start still, and when I try and install libglu1-mesa-dev it says I already have the most up to date version
Attached Images
File Type: jpg problem3.JPG (74.6 KB, 9 views)
corsair2014 is offline   Reply With Quote

Old   August 17, 2018, 20:33
Default
  #5
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,982
Blog Entries: 45
Rep Power: 128
wyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to all
Quick request: I'm trying now to test this myself, but I don't know when I'll reach a conclusion... but in the meantime, please install the package "virtualbox-guest-x11" within the virtual machine:
Code:
sudo apt install virtualbox-guest-x11
This is one of the critical components needed for 3D acceleration to work properly within Virtualbox, but I don't know how effective it really is. But at least it will allow you to copy-paste text between the host and the virtual machine.


Edit: OK, 3D acceleration for X11 is broken and there is no clear plan to fix it: https://www.virtualbox.org/wiki/X11Guest3D
Am currently working on writing instructions on how to use Mesa instead.

Last edited by wyldckat; August 17, 2018 at 23:24. Reason: see "Edit:"
wyldckat is offline   Reply With Quote

Old   August 18, 2018, 03:14
Default
  #6
New Member
 
Colton
Join Date: Aug 2018
Posts: 9
Rep Power: 8
corsair2014 is on a distinguished road
Quote:
Originally Posted by wyldckat View Post
Quick request: I'm trying now to test this myself, but I don't know when I'll reach a conclusion... but in the meantime, please install the package "virtualbox-guest-x11" within the virtual machine:
Code:
sudo apt install virtualbox-guest-x11
This is one of the critical components needed for 3D acceleration to work properly within Virtualbox, but I don't know how effective it really is. But at least it will allow you to copy-paste text between the host and the virtual machine.


Edit: OK, 3D acceleration for X11 is broken and there is no clear plan to fix it: https://www.virtualbox.org/wiki/X11Guest3D
Am currently working on writing instructions on how to use Mesa instead.
Yeah, I had the guest additions installed but didn't seem to work. Glad it wasn't just me overlooking something simple! Thanks a bunch for your help, looking forward to learning how to get around this
corsair2014 is offline   Reply With Quote

Old   August 18, 2018, 20:50
Default
  #7
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,982
Blog Entries: 45
Rep Power: 128
wyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to all
Greetings corsair2014,

I don't have a solution yet, but I might as well write down what I know so far:
  1. The pre-built versions of ParaView that are provided at https://paraview.org - provide builds that allow us to use the argument "-mesa" to use the CPU to render graphics. I tested this on VirtualBox and it seemed to work great.
  2. However, the option "--mesa" is not working as intended. I'm writing my ongoing attempts+instructions here: https://openfoamwiki.net/index.php/I...u#Ubuntu_18.04 - but for some reason, it is trying to use both OpenGL2 for the GPU mode for the GUI and OSMesa for the pvserver... so essentially the window is just not rendering at all, possibly due to Qt5 getting stuck in a broken OpenGL2 call.
  3. I have yet to test the following steps, but perhaps this will do the trick:
    1. Build ParaView 5.5.2 with the makeParaView script, using whichever build options.
    2. Build OpenFOAM's reader, by following the commands told by paraFoam.
    3. Then replace our build of ParaView 5.5.2, for the one provided at https://paraview.org
    4. Finally, edit the paraFoam script and add to after the paraview command line the option "--mesa".
    5. This may or may not work, depending on whether the OpenFOAM reader libraries are compatible between builds of the same exact ParaView version.
I will only be able to continue working on this next Monday or later on.

Best regards,
Bruno
wyldckat is offline   Reply With Quote

Old   August 20, 2018, 18:36
Default
  #8
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,982
Blog Entries: 45
Rep Power: 128
wyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to all
Hi corsair2014,


I finally managed to figure things out. I kept head-butting to try and build OSMesa and Mesa directly into ParaView, until I finally got my head around the fact that all we need is to build the Onscreen Mesa drivers as explained here: https://blog.kitware.com/messing-wit...ew-5-0vtk-7-0/ - and then simply copy the built Mesa libraries into ParaView's "lib" folder et voilà, we have CPU-based OpenGL up and running by default with in ParaView .

However, ParaView was rather slow to run, even though it uses all cores in the CPU to render as fast as possible...

As for the instructions to build on Ubuntu 18.04, I've written them here: https://openfoamwiki.net/index.php/I...u#Ubuntu_18.04
From there, since you have pretty much the majority of things already built, all you need are the steps for building Mesa:
  1. First do step #1.
  2. Then #4.
  3. Then #5.
  4. Then #10.5.
And that's it!


Let me/us know if it works for you as well!

Best regards,
Bruno
wyldckat is offline   Reply With Quote

Old   August 20, 2018, 19:28
Default
  #9
New Member
 
Colton
Join Date: Aug 2018
Posts: 9
Rep Power: 8
corsair2014 is on a distinguished road
Quote:
Originally Posted by wyldckat View Post
Hi corsair2014,


I finally managed to figure things out. I kept head-butting to try and build OSMesa and Mesa directly into ParaView, until I finally got my head around the fact that all we need is to build the Onscreen Mesa drivers as explained here: https://blog.kitware.com/messing-wit...ew-5-0vtk-7-0/ - and then simply copy the built Mesa libraries into ParaView's "lib" folder et voilà, we have CPU-based OpenGL up and running by default with in ParaView .

However, ParaView was rather slow to run, even though it uses all cores in the CPU to render as fast as possible...

As for the instructions to build on Ubuntu 18.04, I've written them here: https://openfoamwiki.net/index.php/I...u#Ubuntu_18.04
From there, since you have pretty much the majority of things already built, all you need are the steps for building Mesa:
  1. First do step #1.
  2. Then #4.
  3. Then #5.
  4. Then #10.5.
And that's it!


Let me/us know if it works for you as well!

Best regards,
Bruno
Awesome! But... still no luck :/

Install / build per instructions went smoothly and ended with the correct log. Screenshots show the latest attempt at running paraview (ParaFoam)
Attached Images
File Type: jpg 1.jpg (92.4 KB, 8 views)
File Type: jpg 2.JPG (95.6 KB, 9 views)
corsair2014 is offline   Reply With Quote

Old   August 20, 2018, 21:00
Default
  #10
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,982
Blog Entries: 45
Rep Power: 128
wyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to all
Something isn't right here... why are you running as "root"? In the second post you were running with the user-name "openfoam"...


As normal user, run the following commands, so that we can try and isolate the problem:
Code:
echo $ParaView_DIR
ls -l $ParaView_DIR/lib/libGL*
ls -l $ParaView_DIR/bin/paraview
which paraview
For comparison, I get the following:
Code:
echo $ParaView_DIR
/home/ofuser/OpenFOAM/ThirdParty-v1806/platforms/linux64Gcc/ParaView-5.5.2

ls -l $ParaView_DIR/lib/libGL*
lrwxrwxrwx 1 ofuser ofuser       10 ago 20 22:28 /home/ofuser/OpenFOAM/ThirdParty-v1806/platforms/linux64Gcc/ParaView-5.5.2/lib/libGL.so -> libGL.so.1
lrwxrwxrwx 1 ofuser ofuser       12 ago 20 22:28 /home/ofuser/OpenFOAM/ThirdParty-v1806/platforms/linux64Gcc/ParaView-5.5.2/lib/libGL.so.1 -> libGL.so.1.5
-rwxr-xr-x 1 ofuser ofuser 66548288 ago 20 22:28 /home/ofuser/OpenFOAM/ThirdParty-v1806/platforms/linux64Gcc/ParaView-5.5.2/lib/libGL.so.1.5

ls -l $ParaView_DIR/bin/paraview
-rwxr-xr-x 1 ofuser ofuser 84216 ago 20 21:17 /home/ofuser/OpenFOAM/ThirdParty-v1806/platforms/linux64Gcc/ParaView-5.5.2/bin/paraview

which paraview
/home/ofuser/OpenFOAM/ThirdParty-v1806/platforms/linux64Gcc/ParaView-5.5.2/bin/paraview
The file "libGL.so.1.5" should be the result of building Mesa.
wyldckat is offline   Reply With Quote

Old   August 23, 2018, 15:00
Default
  #11
New Member
 
Colton
Join Date: Aug 2018
Posts: 9
Rep Power: 8
corsair2014 is on a distinguished road
Quote:
Originally Posted by wyldckat View Post
Something isn't right here... why are you running as "root"? In the second post you were running with the user-name "openfoam"...


As normal user, run the following commands, so that we can try and isolate the problem:
Code:
echo $ParaView_DIR
ls -l $ParaView_DIR/lib/libGL*
ls -l $ParaView_DIR/bin/paraview
which paraview
The file "libGL.so.1.5" should be the result of building Mesa.
Sorry for the delayed response. My bad on running as root, I just never switched back to normal user after doing the install commands. Does this cause any issues besides accidentally deleting something you shouldn't? (Also, yes I regret naming the Virtual Machine "Open Foam" because it gets confusing haha)


Here is the results of the above stated commands in terminal:
Code:
openfoam@openfoam-VirtualBox:~/OpenFOAM/openfoam-v1806/run/pitzDaily$ echo $ParaView_DIR

openfoam@openfoam-VirtualBox:~/OpenFOAM/openfoam-v1806/run/pitzDaily$ ls -l $ParaView_DIR/lib/libGL*
lrwxrwxrwx 1 root root       10 Aug 20 15:21 /lib/libGL.so -> libGL.so.1
lrwxrwxrwx 1 root root       12 Aug 20 15:21 /lib/libGL.so.1 -> libGL.so.1.5
-rwxr-xr-x 1 root root 66548240 Aug 20 15:21 /lib/libGL.so.1.5

openfoam@openfoam-VirtualBox:~/OpenFOAM/openfoam-v1806/run/pitzDaily$ ls -l $ParaView_DIR/bin/paraview
ls: cannot access '/bin/paraview': No such file or directory

openfoam@openfoam-VirtualBox:~/OpenFOAM/openfoam-v1806/run/pitzDaily$ which paraview
openfoam@openfoam-VirtualBox:~/OpenFOAM/openfoam-v1806/run/pitzDaily$
Attached Images
File Type: jpg Capture.JPG (59.4 KB, 4 views)
corsair2014 is offline   Reply With Quote

Old   August 23, 2018, 16:19
Default
  #12
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,982
Blog Entries: 45
Rep Power: 128
wyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to all
OK, good thing you're working inside a virtual machine... and I guess that now we know where the "libGL.*" ended up namely at "/lib".
Hopefully it didn't damage anything, but this folder is likely not being used to get libraries from, for running with ParaView. More specifically, this folder is likely one of the last ones in the paths defined on the environment variable "LD_LIBRARY_PATH", which would explain why it didn't load it.



So, how to fix this... here are the steps I can deduce without testing myself first:
  1. Switch to root once again and delete those files that you listed, namely the files "/lib/libGL.*".
  2. Since you ran the build commands for Mesa as root, then I'm not sure where exactly it placed the source code and build folders+files. Either it was placed at "/root/mesa-18.0.5" or at the "ThirdParty-*" folder. Either way, you should first delete this folder, before continuing.
  3. OK, assuming everything is back to normal at this point, then as normal user and with the OpenFOAM v1806 environment loaded in (perhaps by running the command of1806+ - I don't know which one you've used), then go back to the instructions: https://openfoamwiki.net/index.php/I...u#Ubuntu_18.04 - and do step #10.5.
wyldckat is offline   Reply With Quote

Old   August 23, 2018, 16:47
Default
  #13
New Member
 
Colton
Join Date: Aug 2018
Posts: 9
Rep Power: 8
corsair2014 is on a distinguished road
Quote:
Originally Posted by wyldckat View Post
OK, good thing you're working inside a virtual machine... and I guess that now we know where the "libGL.*" ended up namely at "/lib".
Hopefully it didn't damage anything, but this folder is likely not being used to get libraries from, for running with ParaView. More specifically, this folder is likely one of the last ones in the paths defined on the environment variable "LD_LIBRARY_PATH", which would explain why it didn't load it.



So, how to fix this... here are the steps I can deduce without testing myself first:
  1. Switch to root once again and delete those files that you listed, namely the files "/lib/libGL.*".
  2. Since you ran the build commands for Mesa as root, then I'm not sure where exactly it placed the source code and build folders+files. Either it was placed at "/root/mesa-18.0.5" or at the "ThirdParty-*" folder. Either way, you should first delete this folder, before continuing.
  3. OK, assuming everything is back to normal at this point, then as normal user and with the OpenFOAM v1806 environment loaded in (perhaps by running the command of1806+ - I don't know which one you've used), then go back to the instructions: https://openfoamwiki.net/index.php/I...u#Ubuntu_18.04 - and do step #10.5.

Do I delete all 3 "libGL.so.x" files?

The "Mesa-18.0.5" folder is placed in the Home directory currently
Attached Images
File Type: jpg Capture.JPG (41.4 KB, 5 views)
corsair2014 is offline   Reply With Quote

Old   August 23, 2018, 17:13
Default
  #14
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,982
Blog Entries: 45
Rep Power: 128
wyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to all
Quote:
Originally Posted by corsair2014 View Post
Do I delete all 3 "libGL.so.x" files?
Yes, but only those 3 on that specific folder.


Quote:
Originally Posted by corsair2014 View Post
The "Mesa-18.0.5" folder is placed in the Home directory currently
You may need to delete it with root permissions, but you can first try with your normal user permissions, since it's created in your own folder.
wyldckat is offline   Reply With Quote

Old   August 23, 2018, 18:24
Default
  #15
New Member
 
Colton
Join Date: Aug 2018
Posts: 9
Rep Power: 8
corsair2014 is on a distinguished road
Quote:
Originally Posted by wyldckat View Post
OK, good thing you're working inside a virtual machine... and I guess that now we know where the "libGL.*" ended up namely at "/lib".
Hopefully it didn't damage anything, but this folder is likely not being used to get libraries from, for running with ParaView. More specifically, this folder is likely one of the last ones in the paths defined on the environment variable "LD_LIBRARY_PATH", which would explain why it didn't load it.



So, how to fix this... here are the steps I can deduce without testing myself first:
  1. Switch to root once again and delete those files that you listed, namely the files "/lib/libGL.*".
  2. Since you ran the build commands for Mesa as root, then I'm not sure where exactly it placed the source code and build folders+files. Either it was placed at "/root/mesa-18.0.5" or at the "ThirdParty-*" folder. Either way, you should first delete this folder, before continuing.
  3. OK, assuming everything is back to normal at this point, then as normal user and with the OpenFOAM v1806 environment loaded in (perhaps by running the command of1806+ - I don't know which one you've used), then go back to the instructions: https://openfoamwiki.net/index.php/I...u#Ubuntu_18.04 - and do step #10.5.

Okay so I couldn't do "of1806" command so I use the "source ~/OpenFOAM/OpenFOAM-v1806/etc/bashrc" command; hope this does the same thing? Not sure what this does to be honest.

Then followed step 10.5

And we now have a GUI window! Woohoo! Now... is it supposed to look this way? I ran the 'sample' test case from the installation guide:


Code:
run 
cp -r $FOAM_TUTORIALS/incompressible/simpleFoam/pitzDaily ./ 
cd pitzDaily 
blockMesh 
simpleFoam 
paraFoam
Attached Images
File Type: jpg Capture.jpg (72.4 KB, 10 views)
corsair2014 is offline   Reply With Quote

Old   August 24, 2018, 14:53
Default
  #16
Retired Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,982
Blog Entries: 45
Rep Power: 128
wyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to allwyldckat is a name known to all
Quote:
Originally Posted by corsair2014 View Post
Okay so I couldn't do "of1806" command so I use the "source ~/OpenFOAM/OpenFOAM-v1806/etc/bashrc" command; hope this does the same thing? Not sure what this does to be honest.
Yes, it's essentially the same. The idea is that "of1806" is an alias that is usually used on the installation instructions at openfoamwiki.net, because it' makes it easier to use more than one version/variant/fork of OpenFOAM

In your case, you can add the following line to your "~/.bashrc" file (notice the dot between the slash and the 'b'):
Code:
alias of1806='source ~/OpenFOAM/OpenFOAM-v1806/etc/bashrc'
Then either source the file "~/.bashrc" to update or start a new terminal. Now you can activate OpenFOAM v1806 by running:
Code:
of1806
Quote:
Originally Posted by corsair2014 View Post
Then followed step 10.5

And we now have a GUI window! Woohoo! Now... is it supposed to look this way? I ran the 'sample' test case from the installation guide:
Code:
run 
cp -r $FOAM_TUTORIALS/incompressible/simpleFoam/pitzDaily ./ 
cd pitzDaily 
blockMesh 
simpleFoam 
paraFoam
Next you have to click on the "Apply" button
Things will start to make more sense once you start following their tutorial guide: https://www.openfoam.com/documentation/tutorial-guide/
wyldckat is offline   Reply With Quote

Old   August 27, 2018, 12:09
Default
  #17
New Member
 
Colton
Join Date: Aug 2018
Posts: 9
Rep Power: 8
corsair2014 is on a distinguished road
Ah got it! Now to learn how to use the program haha

Thank you for all your help! Hope this thread can help someone else too
corsair2014 is offline   Reply With Quote

Reply

Tags
compile, paraview


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
OpenFOAM 1.6 ext fportela OpenFOAM Installation 11 December 26, 2013 19:55
is internalField(U) equivalent to zeroGradient? immortality OpenFOAM Running, Solving & CFD 7 March 29, 2013 02:27
channelFoam for a 3D pipe AlmostSurelyRob OpenFOAM 3 June 24, 2011 14:06
Warning 097- AB Siemens 6 November 15, 2004 05:41
Problems of Duns Codes! Martin J Main CFD Forum 8 August 15, 2003 00:19


All times are GMT -4. The time now is 21:24.