Old 10-22-2016, 06:13 PM   #1
Colox
Human being with feelings
 
Join Date: Feb 2012
Location: Sweden
Posts: 1,206
Default How indent automation lanes?

Trying to find information on how to indent automation lanes - only automation. Meaning, to move the track inwards a bit, just like child tracks gets moved in a bit under their parent tracks (as default in default themes).
Guess one has to use Walter to get to it, but I can't seem to locate any direct information about it.

Any well meaning pointers available out there?

/C
__________________
There are only two kinds of people in the world: those who entertain, and those who are absurd.
- Britney Spears

Last edited by Colox; 10-22-2016 at 06:58 PM.
Colox is offline   Reply With Quote
Old 10-23-2016, 03:17 AM   #2
cubic13
Human being with feelings
 
cubic13's Avatar
 
Join Date: Dec 2013
Location: Near Serre-Ponçon lake, french Alps
Posts: 855
Default

If you just want a display indentation, it's rather easy. Two files are involved, here :
envcp_bg.png
envcp_bgsel.png
In each of them, set a rectangle area on the left side of it, which has a width equal to the indentation needed and color it with the same tint as the folder_indent.png one. This, without forgetting to set the pink lines accordingly.


But if you want the automation lanes to have a "true" indentation, independent of the regular tracks one, you'll have to cope with some of these in your rtconfig.txt file (examples taken from my themes) :
set envcp.margin +:maxfolderdepth:1 [10 0 -10 0]
set envcp.margin +:folderdepth:1 [-10 0 10 0]
set ereverse_margin * [-1] envcp.margin
Good luck, as they are, among all the other Walter statements, probably the more difficult to set as wanted. And don't expect any enlightment from the available documentation : it is useless, in this case.
The values used in them depend of how you want the automation lanes to behave in relation to their parent track and you'll have to do several tests and attempts to see how these instructions actually work, this while looking at different rtconfig.txt files from themes available in the stash, as examples.

So, I would suggest, first, to try the graphic solution...
__________________
DAW: Ryzen 3700X|Asus X-470Pro|32Gb|2 SSD512(M2)+1024|W10Pro(64)|RME Fireface UCX+ADA8200
Soft: Reaper|Cubase 10|Emulator X3 & several other VSTis (2 bridged)...
Gear: VMK-188+|MPD32|ME30P|Korg 05R/W|Roland D110|Yamaha TX802|Pre-MIDI stuff...
cubic13 is offline   Reply With Quote
Old 10-23-2016, 04:41 AM   #3
White Tie
Pixel Pusher
 
White Tie's Avatar
 
Join Date: Mar 2007
Location: Blighty
Posts: 4,950
Default

No problem Colox, and no its got nothing to do with WALTER. If you look here you'll see there's a header value called tcp_folderindent. This is the pixel value of the indentation of tcp stuff, and yes it does the envelope panel content as well. If you don't set it it defaults to 22px IIRC.

In my themes I tend to make this more complicated so I can do tricks where things align across folder depths, but you'll probably find the basic behaviour suits you fine.

Quote:
Originally Posted by cubic13 View Post
Good luck, as they are, among all the other Walter statements, probably the more difficult to set as wanted.
Its wonderful and very much appreciated that you are offering help. Kudos.

I'm so sorry you don't understand these bits, the problem is you are using walter from other themes rather than writing it from scratch. So you not only need to understand how walter works, you also need to understand how that theme works. Which is asking a lot, and I'm not surprised you find it confusing.

Take the 'reverse_margin' variable, for example. That's not a Reaper value, its just something I wrote into the def4 theme as part of its 'stretch the name left to fill margin gaps' mechanism. It has no meaning outside that theme. Yet I see it constantly dropped into other work like a magic incantation, where it would serve no purpose whatsoever other than to confuse and obfuscate. Don't do that to yourself!

People, please hear this, I again beg you on bended knee with tear stained face; write your walter from scratch. Its much simpler than trying to understand how someone else has used it, let alone the def4 theme. That's the first walter theme I ever wrote, its code is oh so very far from elegant. Am I going to write documentation on how the stuff I wrote in the def4 theme works? Good grief no
__________________
The House of White Tie
White Tie is offline   Reply With Quote
Old 10-23-2016, 07:20 AM   #4
cubic13
Human being with feelings
 
cubic13's Avatar
 
Join Date: Dec 2013
Location: Near Serre-Ponçon lake, french Alps
Posts: 855
Default

Quote:
Originally Posted by White Tie View Post
...
Its wonderful and very much appreciated that you are offering help. Kudos.

I'm so sorry you don't understand these bits, the problem is you are using walter from other themes rather than writing it from scratch. So you not only need to understand how walter works, you also need to understand how that theme works. Which is asking a lot, and I'm not surprised you find it confusing.
...
Fine... Such a condescending attack deserves an answer at the same level.

If you could use your precious time to look at the themes more or less recently uploaded in the stash (I'm not sure that you have it, but still...), you might find mines : yes, they are horrible 'Cubase like' ones, I admit. At this point, and having gone over your disgust, please take more closely a look at the rtconfig.txt file of each of them : everything has been written from scratch since the beginning and I took a lot of time to precisely set things (both Walter and graphic files) differently from the mainstream 'default' ones. And if you dare installing them (with all the bundled tools) and see how all they actually work, you'll see that the folder indentation has been designed to work quite differently than the 'default' one and all its derivations.

To be honest, I really don't care about what you think about their worth. I uploaded them as an alternative way to work with Reaper and, actually, following the spirit of the Justin sticky thread title : stash.reaper.fm is up and needs you to upload your themes!

So, saying that I don't understand how Walter works is - how to say this diplomatically - rather exaggerated, don't you think ?

My previous post states my experience about it : there is a graphical solution and there is a Walter one. The tcp_folderindent is a scalar value which, indeed, is supposed to set the indentation, but the Walter statements that I mentioned previously need to be set accordingly to its actual value. Otherwise, graphical problems could quickly arise.

Rather than attacking forum member that try to help or, at least, give hints about problem that could arise, you'd better update the whole documentation available about, among others : macros, indentation stuff, mcp.senlist.fader...

With all my respect to our beloved "Pixel Pusher"...
__________________
DAW: Ryzen 3700X|Asus X-470Pro|32Gb|2 SSD512(M2)+1024|W10Pro(64)|RME Fireface UCX+ADA8200
Soft: Reaper|Cubase 10|Emulator X3 & several other VSTis (2 bridged)...
Gear: VMK-188+|MPD32|ME30P|Korg 05R/W|Roland D110|Yamaha TX802|Pre-MIDI stuff...
cubic13 is offline   Reply With Quote
Old 10-23-2016, 08:48 AM   #5
Never
Human being with feelings
 
Never's Avatar
 
Join Date: Jul 2016
Location: Ohio, USA
Posts: 633
Default

Quote:
Originally Posted by White Tie View Post
No problem Colox, and no its got nothing to do with WALTER. If you look here you'll see there's a header value called tcp_folderindent. This is the pixel value of the indentation of tcp stuff, and yes it does the envelope panel content as well. If you don't set it it defaults to 22px IIRC.

In my themes I tend to make this more complicated so I can do tricks where things align across folder depths, but you'll probably find the basic behaviour suits you fine.



Its wonderful and very much appreciated that you are offering help. Kudos.

I'm so sorry you don't understand these bits, the problem is you are using walter from other themes rather than writing it from scratch. So you not only need to understand how walter works, you also need to understand how that theme works. Which is asking a lot, and I'm not surprised you find it confusing.

Take the 'reverse_margin' variable, for example. That's not a Reaper value, its just something I wrote into the def4 theme as part of its 'stretch the name left to fill margin gaps' mechanism. It has no meaning outside that theme. Yet I see it constantly dropped into other work like a magic incantation, where it would serve no purpose whatsoever other than to confuse and obfuscate. Don't do that to yourself!

People, please hear this, I again beg you on bended knee with tear stained face; write your walter from scratch. Its much simpler than trying to understand how someone else has used it, let alone the def4 theme. That's the first walter theme I ever wrote, its code is oh so very far from elegant. Am I going to write documentation on how the stuff I wrote in the def4 theme works? Good grief no
And your clever use of variables and hacking are much appreciated by many people, WT, just so you know, and nothing u have contributed is taken for granted by most. Opinions vary, I think the major issue here is that most people who are producing music nowadays aren't formally trained in engineering, let alone programming, and are just software users. So to expect them to understand the finer points of variables and macros and notation and subroutines and the like is unrealistic, and even though there are quite a few creating material that are simply peeking and copying, they are learning as they go, so don't stop making all the efforts that u do, because you are owed alot, and you can take solace in knowing that if not for you, alot of people are being turned on to things that they may have never been exposed to, and in the end game they will have you to thank, especially those who develop great things, because you are the authority and the reference, and when one needs to know the correct way, one has to examine your work.

-add- In no way am I alluding to any specific individual in this thread or in this forum; simply calling attention to what seems to me to be the majority demagraphic or end user of most DAW software, and ergo, the WALTER system. At least that's how things seem to me over here across the pond where pop culture is so watered down and traditions and techniques and conventions have all gone out the window, to such a degree in fact, that all music is pop, and the kids think that making a 'beat' on fruity loops makes them a hot producer.

Last edited by Never; 10-23-2016 at 09:07 AM.
Never is offline   Reply With Quote
Old 10-23-2016, 09:24 AM   #6
Never
Human being with feelings
 
Never's Avatar
 
Join Date: Jul 2016
Location: Ohio, USA
Posts: 633
Default

Quote:
Originally Posted by cubic13 View Post
please take more closely a look at the rtconfig.txt file of each of them : e
I wont quote negativity from any party, and I believe that all here have contributed worthy things, because everyone's tastes are different, and what one person may not find worth in, may be another person's saving grace.

But I digress--

I have looked at the rtconfig of every theme in the regular 'themes' section of the stash, except for the blatant copies and color changers, and I have looked at Cubic's WALTER, and I do not recall seeing any of it in any other theme. I believe it IS original, but that's not the issue here in REAPERland is it because it's all about people with similar needs and desires working together and sharing to reach a common goal; one that ideally will set a new benchmark of excellence for not only ALL DAW software, but ALL software. Because I believe in this software, and since 2013 I have been telling every professional colleague I know to throw Pro Tools in the trash..... But the reverse margin script that WT wrote, is awesome, and I for one will be the first to admit ctrl+c'ing it. And I did so without a second thought. Because it doesn't need improved on, and if it works, then I can spend more time doing what I really want to do. Make Music.
Never is offline   Reply With Quote
Old 10-23-2016, 12:05 PM   #7
White Tie
Pixel Pusher
 
White Tie's Avatar
 
Join Date: Mar 2007
Location: Blighty
Posts: 4,950
Default

Quote:
Originally Posted by cubic13 View Post
Fine... Such a condescending attack deserves an answer at the same level.
It wasn't supposed to be condescending, it was supposed to be supportive. I'm trying to help, fella. Thinking about it now, perhaps it should have been a PM, sorry.

I spend a limited amount of time on this forum. I don't keep track of who is who or who worked on what theme, or whether I have looked at its walter. I've no idea whether I've inspected your walter or not, so I wouldn't comment on it.

--------------------------------------------------

Allow me to rephrase. Here is some code from the def4 theme, I recommend against using it or anything like it...

Code:
set tcp.margin +:maxfolderdepth:1 [13 0 0 0]
set tcp.margin +:folderdepth:1 [-13 0 0 0]
set reverse_margin * [-1] tcp.margin
...because its not very good outside the very specific use I put it to. I wrote it. I don't use it.

Please let me reiterate that this is advice to everyone in general, that I repeatedly say, and should not be taken as a personal comment to anyone in particular : write your own walter from scratch, or you will get very confused.
__________________
The House of White Tie
White Tie is offline   Reply With Quote
Old 10-23-2016, 03:26 PM   #8
Colox
Human being with feelings
 
Join Date: Feb 2012
Location: Sweden
Posts: 1,206
Default

Thank you guys, for helping out this generously. Hope I didn't start a fight here.

Quote:
Originally Posted by White Tie View Post
No problem Colox, and no its got nothing to do with WALTER. If you look here you'll see there's a header value called tcp_folderindent. This is the pixel value of the indentation of tcp stuff, and yes it does the envelope panel content as well. If you don't set it it defaults to 22px IIRC
Sorry to say the tcp_folderindent header doesn't seem to indent my automtion envelopes. It does adjust the indent of tracks within folders though, and does change when I change the value. But automation envelopes - which opens underneath tracks - doesn't seem to respond to this.
The editing I'm doing is based on the Default v5 "Nitpicky" user version. Does this raise a red flag in some way?

If only my rtdonfig file wasn't so messed up, it would be easier too
__________________
There are only two kinds of people in the world: those who entertain, and those who are absurd.
- Britney Spears

Last edited by Colox; 10-23-2016 at 03:50 PM.
Colox is offline   Reply With Quote
Old 10-23-2016, 04:15 PM   #9
White Tie
Pixel Pusher
 
White Tie's Avatar
 
Join Date: Mar 2007
Location: Blighty
Posts: 4,950
Default

Ah OK, misunderstanding. Am I correct in thinking you want to indent all automation panels a little, so that they are indented from their parent track? In other words, nothing to do with folders per se, just exactly as they are now but just in a bit?
__________________
The House of White Tie
White Tie is offline   Reply With Quote
Old 10-23-2016, 04:24 PM   #10
Colox
Human being with feelings
 
Join Date: Feb 2012
Location: Sweden
Posts: 1,206
Default

Quote:
Originally Posted by White Tie View Post
Ah OK, misunderstanding. Am I correct in thinking you want to indent all automation panels a little, so that they are indented from their parent track? In other words, nothing to do with folders per se, just exactly as they are now but just in a bit?
Ah, yes. Imagine a track at the 'top level' (not a folder track nor child track, so to speak) with a volume automation lane underneath. I'd like the automation lane beneath the track to be intended a bit.

The overall idea, is to make it easier for a quickly scanning eye to immediately differentiate between a track and an automation lane. Even though they could be slightly differentiated by height, they still kindof look the same when scanning quickly with the eyes. And since automation is an attribute of its track above, kindof feels natural to indent - I think.

Personally I don't use folder tracks much at all, so I won't be able to confuse an indented automation lane with a child track under a parent.
__________________
There are only two kinds of people in the world: those who entertain, and those who are absurd.
- Britney Spears

Last edited by Colox; 10-23-2016 at 04:30 PM.
Colox is offline   Reply With Quote
Old 10-23-2016, 04:57 PM   #11
lowellben
Human being with feelings
 
lowellben's Avatar
 
Join Date: Aug 2010
Location: They put me in a home.
Posts: 3,432
Default

Quote:
Originally Posted by Colox View Post
Thank you guys, for helping out this generously. Hope I didn't start a fight here.

You didn't start a fight, it's not just you. WT has a habit of "coming across" as condescending and making people feel stupid. We just kinda let it go because, I mean, it's White Tie. He's a legend. So. Free pass!

I'm learning WALTER now too, so I don't have to post "dumb" questions and dare to question authority members like WT so, good comes from bad!

(Tongue in cheek, duh)
__________________
47.8% of statistics are made up.
lowellben is offline   Reply With Quote
Old 10-23-2016, 05:39 PM   #12
Colox
Human being with feelings
 
Join Date: Feb 2012
Location: Sweden
Posts: 1,206
Default

Quote:
Originally Posted by lowellben View Post
You didn't start a fight, it's not just you. WT has a habit of "coming across" as condescending and making people feel stupid. We just kinda let it go because, I mean, it's White Tie. He's a legend. So. Free pass!

I'm learning WALTER now too, so I don't have to post "dumb" questions and dare to question authority members like WT so, good comes from bad!

(Tongue in cheek, duh)
You should try a white tie yourself, see what happens. Does wonders with the ladies
__________________
There are only two kinds of people in the world: those who entertain, and those who are absurd.
- Britney Spears
Colox is offline   Reply With Quote
Old 10-23-2016, 06:14 PM   #13
lowellben
Human being with feelings
 
lowellben's Avatar
 
Join Date: Aug 2010
Location: They put me in a home.
Posts: 3,432
Default

Quote:
Originally Posted by Colox View Post
You should try a white tie yourself, see what happens. Does wonders with the ladies
lolll
__________________
47.8% of statistics are made up.
lowellben is offline   Reply With Quote
Old 10-24-2016, 01:00 AM   #14
White Tie
Pixel Pusher
 
White Tie's Avatar
 
Join Date: Mar 2007
Location: Blighty
Posts: 4,950
Default

Quote:
Originally Posted by Colox View Post
Ah, yes. Imagine a track at the 'top level' (not a folder track nor child track, so to speak) with a volume automation lane underneath. I'd like the automation lane beneath the track to be intended a bit.

The overall idea, is to make it easier for a quickly scanning eye to immediately differentiate between a track and an automation lane. Even though they could be slightly differentiated by height, they still kindof look the same when scanning quickly with the eyes.
Indenting the automation panel content would be a moderately involved edit because the flow macros always start from 0,0. Is there an easier way to achieve what it is you are after, a strong differentiation between tracks and their automation? They shouldn't look kinda the same, could you post a screenshot perhaps? Something might have got messed up along the way.
__________________
The House of White Tie
White Tie is offline   Reply With Quote
Old 10-24-2016, 07:36 AM   #15
Lokasenna
Human being with feelings
 
Lokasenna's Avatar
 
Join Date: Sep 2008
Location: Calgary, AB, Canada
Posts: 6,551
Default

Couldn't he just adjust the X value of n_border to pad everything over more? I was aligning all of my EnvCPs to the left last night and it worked a treat for me.

Alternately, there's probably a spot where you could add 1 to the value of folderdepth when it gets used to calculate the left starting point.

Now, visually indenting the panel background... what about giving your EnvCP layout its own image folder and then edit the folder indent images to whatever width you want? I think you'd need to use some pink line trickery, but still.
__________________
I'm no longer using Reaper or working on scripts for it. Sorry. :(
Default 5.0 Nitpicky Edition / GUI library for Lua scripts / Theory Helper / Radial Menu / Donate
Lokasenna is offline   Reply With Quote
Old 10-24-2016, 07:46 AM   #16
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 9,875
Default

One day, I tried to do such features:
Indent Track’s Envelopes – Reaper 4.0 Theme Tweak / ExtremRaym

But I ended up by preferring shadows trick like in my theme.
X-Raym is offline   Reply With Quote
Old 10-24-2016, 08:28 AM   #17
White Tie
Pixel Pusher
 
White Tie's Avatar
 
Join Date: Mar 2007
Location: Blighty
Posts: 4,950
Default

Quote:
Originally Posted by Lokasenna View Post
Couldn't he just adjust the X value of n_border to pad everything over more? I was aligning all of my EnvCPs to the left last night and it worked a treat for me.
That'll only do the first row ...but visually I suppose that's pretty close to the effect, right? And its absurdly easy, great suggestion.

Quote:
Originally Posted by Lokasenna View Post
Alternately, there's probably a spot where you could add 1 to the value of folderdepth when it gets used to calculate the left starting point
Oooh, that's a filthy hack. I like it! And it should work, too.

EDIT : alas no, gnngh. You can't redefine a scalar variable. So all mentions of folderdepth would need to be replaced in the macro, which seems excessive.
__________________
The House of White Tie

Last edited by White Tie; 10-24-2016 at 08:35 AM.
White Tie is offline   Reply With Quote
Old 10-24-2016, 09:16 AM   #18
Lokasenna
Human being with feelings
 
Lokasenna's Avatar
 
Join Date: Sep 2008
Location: Calgary, AB, Canada
Posts: 6,551
Default

Quote:
Originally Posted by White Tie View Post
EDIT : alas no, gnngh. You can't redefine a scalar variable. So all mentions of folderdepth would need to be replaced in the macro, which seems excessive.
Just replace them with + folderdepth depth_adj and set depth_adj to 1 for that layout, 0 for the other ones. That way you add an easy spot for users to adjust indenting in multiples of tcp_folderindent without too much WALTERing.
__________________
I'm no longer using Reaper or working on scripts for it. Sorry. :(
Default 5.0 Nitpicky Edition / GUI library for Lua scripts / Theory Helper / Radial Menu / Donate
Lokasenna is offline   Reply With Quote
Old 10-24-2016, 10:04 AM   #19
White Tie
Pixel Pusher
 
White Tie's Avatar
 
Join Date: Mar 2007
Location: Blighty
Posts: 4,950
Default

Quote:
Originally Posted by Lokasenna View Post
Just replace them with + folderdepth depth_adj and set depth_adj to 1 for that layout, 0 for the other ones. That way you add an easy spot for users to adjust indenting in multiples of tcp_folderindent without too much WALTERing.
Indeed so, ditto the maxfolderdepth. But that means editing the core flow macro, which seems excessive. I much prefer to provide a user with a couple of lines he can wrap around the draw_blah line of his layout, that might be a forlorn hope in this case
__________________
The House of White Tie
White Tie is offline   Reply With Quote
Old 10-24-2016, 12:29 PM   #20
Lokasenna
Human being with feelings
 
Lokasenna's Avatar
 
Join Date: Sep 2008
Location: Calgary, AB, Canada
Posts: 6,551
Default

Fair enough. Maybe something to keep in mind for the v6 theme, if you opt for a similar setup w.r.t macros and user tweaking.
__________________
I'm no longer using Reaper or working on scripts for it. Sorry. :(
Default 5.0 Nitpicky Edition / GUI library for Lua scripts / Theory Helper / Radial Menu / Donate
Lokasenna is offline   Reply With Quote
Old 10-24-2016, 12:38 PM   #21
Colox
Human being with feelings
 
Join Date: Feb 2012
Location: Sweden
Posts: 1,206
Default

You guys sound a bit like the voices in my own head, when I'm thinking about things. "Couldn't I do .. no, cause then 'this' gets messed up. But if I do it with 'a twist', no then 'that' can mess up the 'other thing' when used 'like that', gawd damn crap" .. etc etc

Quote:
Originally Posted by White Tie View Post
Indenting the automation panel content would be a moderately involved edit because the flow macros always start from 0,0. Is there an easier way to achieve what it is you are after, a strong differentiation between tracks and their automation? They shouldn't look kinda the same, could you post a screenshot perhaps?
I understand. This was more complicated than ABC. Just to make it clear I don't expect others to solve my problems for me. I'm just after a few pointers and directions. With that said .. I'd be dumb to refuse more direct help

Every darn theme today is dark, black, superhigh contrast, looks like a video game for kids, or just gives you motion sickness. I'm working on my own, a bright, boring, ergonomic and 'productive' one, and in that process I've changed things around that could throw the standards off a bit. I's work in progress - very much. For example, the automation lanes are lighter gray than the tracks. Ain't supposed to be like that.

As said, the problem I'm solving is to make it much easier for the eye to identify automation lanes from tracks just by a 0,1 second glance, or when scrolling fast across large number of tracks. Indentation was one idea, color is another thing one could use - if one just creates some kind of uniform visual pattern.

In a more overall sense, people who use automation lanes alongside folder tracks would perhaps need more of a differentiation than just an indent. If they would like this theme, that is.

This is so far
(Baby blue is 'selected track' color)

__________________
There are only two kinds of people in the world: those who entertain, and those who are absurd.
- Britney Spears

Last edited by Colox; 10-24-2016 at 01:09 PM.
Colox is offline   Reply With Quote
Old 10-24-2016, 01:46 PM   #22
Lokasenna
Human being with feelings
 
Lokasenna's Avatar
 
Join Date: Sep 2008
Location: Calgary, AB, Canada
Posts: 6,551
Default

Hey White Tie - I had another look at the Flow logic and I couldn't find any reason why my n_border trick would only work for the first row. After all, it's a pad around the entire control set.

So I gave it a try:



Ta-da! The only downside is that it might affect the border on the right side as well; you could tinker with the calculation for ef_w to correct that, though. For my own layout I just gave it a static value of 300 so nothing would ever change rows.

So, Colox, my suggestion to you is, as above:

- Use the n_border value in your Envelope Panel's code to bump everything over.

- Edit the envelope panel background images for your theme to have a matching indent on the left side, same color as the existing folder indent images so it's seamless. You could have an indent on the right too to work with the drawback I mentioned, which would make your panel look like a little drawer coming down from the track. Sort of like the EQ panel here:

__________________
I'm no longer using Reaper or working on scripts for it. Sorry. :(
Default 5.0 Nitpicky Edition / GUI library for Lua scripts / Theory Helper / Radial Menu / Donate
Lokasenna is offline   Reply With Quote
Reply

Thread Tools
Display Modes

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

Forum Jump


All times are GMT -7. The time now is 01:18 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.