 |
|
|
01-29-2020, 10:57 PM
|
#481
|
Human being with feelings
Join Date: Jan 2020
Location: Amoy
Posts: 145
|
Hi, juliansader. I have been using your script, thank you. I would like to ask about your MIDI editing script:
Script: js_Mouse editing-Draw ramp.lua and Script: js_Mouse editing-Draw LFO.lua
These two scripts draw linear shapes by default. Is it possible to change the line shape, or recognize the line shape set by the MIDI editor by default: SQUARE
I found that the data drawn by the above two scripts would be wrong with other scripts. Such as:
Script: js_Mouse editing-2-sided Warp.lua or Script: js_Move all selected events in active take together with mouse.lua
Last edited by zaibuyidao; 01-29-2020 at 11:30 PM.
|
|
|
02-03-2020, 05:18 AM
|
#482
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,714
|
Quote:
Originally Posted by zaibuyidao
Hi, juliansader. I have been using your script, thank you. I would like to ask about your MIDI editing script:
Script: js_Mouse editing-Draw ramp.lua and Script: js_Mouse editing-Draw LFO.lua
These two scripts draw linear shapes by default. Is it possible to change the line shape, or recognize the line shape set by the MIDI editor by default: SQUARE
|
The reason why the "Draw" scripts use linear envelopes, is that they are intended to draw smooth curves. I can easily edit the scripts to use the MIDI editor's default shape, but I'm not sure that that would be preferable.
Quote:
Originally Posted by zaibuyidao
I found that the data drawn by the above two scripts would be wrong with other scripts. Such as:
Script: js_Mouse editing-2-sided Warp.lua or Script: js_Move all selected events in active take together with mouse.lua
|
These two scripts have unfortunately not yet been updated to work with envelope-style CCs.
|
|
|
02-03-2020, 10:15 AM
|
#483
|
Human being with feelings
Join Date: Jan 2020
Location: Amoy
Posts: 145
|
Quote:
Originally Posted by juliansader
The reason why the "Draw" scripts use linear envelopes, is that they are intended to draw smooth curves. I can easily edit the scripts to use the MIDI editor's default shape, but I'm not sure that that would be preferable.
|
Thank you very much for your reply, and I really agree with your design ideas.
Regarding Script: js_Mouse editing-Draw ramp.lua and Script: js_Mouse editing-Draw LFO.lua, I hope to be able to use SQUARE. In this way, the linearity of all my MIDI items will be uniform, which is convenient for further adjustment in the future.
Since I have only recently started learning code, reading your code looks very laborious. I tried to find the settings for modifying the line shape by myself, but I haven't found it yet. Therefore, I would like to ask you, is there any place in the code to modify the CC Shape?
Thanks again.
Last edited by zaibuyidao; 02-03-2020 at 10:28 AM.
|
|
|
02-03-2020, 11:21 AM
|
#484
|
Human being with feelings
Join Date: Oct 2017
Location: Black Forest
Posts: 4,896
|
It's a bit complex to do that, if you haven't used SetAllEvts before.
This is the synthax:
https://www.extremraym.com/cloud/rea...IDI_SetAllEvts
For changing the CC shape you have to alter the "flags" part.
But there are so many places in Julian's script, I wouldn't know where to start.
Last edited by _Stevie_; 02-03-2020 at 11:38 AM.
|
|
|
02-03-2020, 11:25 AM
|
#485
|
Human being with feelings
Join Date: Oct 2017
Location: Black Forest
Posts: 4,896
|
Quote:
Originally Posted by juliansader
The reason why the "Draw" scripts use linear envelopes, is that they are intended to draw smooth curves. I can easily edit the scripts to use the MIDI editor's default shape, but I'm not sure that that would be preferable.
|
Wouldn't it be possible to provide a toggle for the different modes?
Like pressing "s" for square and "l" for linear. Just a thought.
|
|
|
02-03-2020, 11:46 PM
|
#486
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,714
|
Quote:
Originally Posted by _Stevie_
For changing the CC shape you have to alter the "flags" part.
But there are so many places in Julian's script, I wouldn't know where to start.
|
To use square shapes, do the following:
In the "Draw LFO" script, go to the function InsertLFOPoint (line 531), and change this line
Code:
local flags = ((LFOtype == 6) and 1 or 17) -- CCs within the curve will use linear shape, since this is most versatile, except when square LFO
to
In the "Draw ramp" script, go to the function InsertCC (line 624) and change the "17" to "1" in the lines that look like this:
Code:
tLine[c] = s_pack("i4BI4BBB", offset, 17, ...
|
|
|
04-11-2020, 10:04 AM
|
#487
|
Human being with feelings
Join Date: Sep 2013
Location: Barcelona, Spain
Posts: 55
|
Hi there.
I just installed the Reapack and the MIDI Select and deselect by pattern. Is there any way I can select by pattern notes of a selected pitch? e.g. lets say I wan't to select only 1 every 8 Hi Hat hits. Is that possible considering that there are also Kick and snare hites there?
Thanks!
|
|
|
04-11-2020, 10:31 AM
|
#488
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,714
|
Quote:
Originally Posted by Josh_guitarreiru
I just installed the Reapack and the MIDI Select and deselect by pattern. Is there any way I can select by pattern notes of a selected pitch? e.g. lets say I wan't to select only 1 every 8 Hi Hat hits. Is that possible considering that there are also Kick and snare hites there?
|
The script applies the select/deselect pattern to pre-selected notes, so to apply the pattern only to hihats, first select all notes at that pitch by right-clicking or -dragging on the keyboard on the left.
You might also find the script "js_Deselect all events outside time selection (from all tracks)" useful, in case you only want to edit hihats within a certain time range.
|
|
|
04-11-2020, 10:57 AM
|
#489
|
Human being with feelings
Join Date: Sep 2013
Location: Barcelona, Spain
Posts: 55
|
OK thanks I was triying to do that but somehow I messed up with the initial selection. I did a few more trials and now I realized every time I want to make a new "initial" selection I have to click "Load new set of notes" isn't it? if not somehow it interferes with previous selection. Am I right?
Thanks for this amazing script!
|
|
|
04-29-2020, 02:07 AM
|
#490
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,714
|
Quote:
Originally Posted by Josh_guitarreiru
OK thanks I was triying to do that but somehow I messed up with the initial selection. I did a few more trials and now I realized every time I want to make a new "initial" selection I have to click "Load new set of notes" isn't it? if not somehow it interferes with previous selection. Am I right?
|
This is correct.
BTW, I just realized that, on Linux, ReaPack doesn't display my scripts' "Description and Instructions" text in the ReaPack->Browse packages->About window. If you are on Linux, you can find this information at the beginning of the script file itself, which you can read in any text editor, or in REAPER's built-in script editor.
|
|
|
06-09-2020, 06:14 AM
|
#491
|
Human being with feelings
Join Date: Oct 2017
Location: hither and yon
Posts: 129
|
Hi there!
I'm experiencing some strange behavior with "js_Mouse editing - Stretch and Compress" lately. Was working perfectly on High Sierra but I recently updated to Mojave and now the midi editor turns black (from ruler to bottom of CC lanes) when I use the script. The blue line and green line are the only things that show up.
Anyone else experiencing this?
(Love your scripts, by the way! Use them all the time)
|
|
|
06-09-2020, 05:03 PM
|
#492
|
Human being with feelings
Join Date: Oct 2017
Location: Black Forest
Posts: 4,896
|
Quote:
Originally Posted by juliansader
(BTW, the Stretch/Compress, Warp, Arch/Tilt scripts have all been combined into the new, much fancier Multi Tool script, so I will soon delete or deprecate the older scripts.)
|
I mainly use the multi tool but there are situations the single scripts are faster for a certain task. It would be a pity to see them go!
|
|
|
06-17-2020, 04:57 AM
|
#493
|
Human being with feelings
Join Date: Mar 2011
Location: London
Posts: 1,210
|
Thank you so much for those scripts, I realize there are some I hadn't used yet (for some reason they were not appearing in the action list even though Reapack said they were installed.)
I have a problem with your Draw Ramp script: it starts well, but whatever I do with the mouse seems to affect Reaper directly rather than going through the script. So for example if I move the mousewheel it zooms in and out, if I right click it opens the contextual menu, etc. Do you know what could be causing that?
EDIT: For some reason it works well in the inline Editor. The problem only happens in the full MIDI editor.
Last edited by swiiscompos; 06-17-2020 at 05:02 AM.
|
|
|
06-17-2020, 09:50 AM
|
#494
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,714
|
This is strange... Could you please check the following and let me know:
* Which OS and which versions of REAPER and the ReaScriptAPI extension are you using?
* Do my other MIDI scripts such as the Multi Tool have the same behavior?
* In the Action lists of the inline editor and MIDI editor, open the file in the IDE and check their versions and whether they are the same.
* Are any other scripts running that may be interfering? (Area(51)'s alpha versions did interfere with my MIDI scripts, if Area(51) wasn't terminated before running my scripts.)
* Is the problematic MIDI editor docked?
|
|
|
06-17-2020, 01:41 PM
|
#495
|
Human being with feelings
Join Date: Mar 2011
Location: London
Posts: 1,210
|
Quote:
Originally Posted by juliansader
* In the Action lists of the inline editor and MIDI editor, open the file in the IDE and check their versions and whether they are the same.
|
It's fixed! You put me on the right track: actually I had set the shortcut for the new script in the "Main" section of the Action List, while same shortcut was used for the old script in the MIDI Editor section.
It also looks like the Inline Editor can get the shortcuts from the Main section, which got me more confused.
Anyway, it works and it's absolutely fantastic, a small thank you should be coming your way
Last edited by swiiscompos; 06-17-2020 at 01:49 PM.
|
|
|
06-30-2020, 05:25 AM
|
#496
|
Human being with feelings
Join Date: Mar 2018
Posts: 29
|
Hi, I love these tools, thanks Julian for the hard work and for sharing!
I found what I think it might be a bug, or maybe just something I'm not getting right...
The "js_Mouse editing - Draw ramp.lua" is the only one in the tools from this thread that appears in the main window, and as such I was excited to think that I could use it to easily create envelope ramps.. However, it seems not to be working in the main window at all!
Regardless of where I click, the script keeps complaining. This is the text that shows in the error message:
Code:
MainOK: false
MainRetval: ...eam Scripts\MIDI Editor\js_Mouse editing - Draw ramp.lua: 1473: attempt to perform a bitwise operation on a nil value (local 'automationItemsOptions')
Because of the error message, I assumed that it would be of use in automation items only, but it keeps complaining with the same error.
Is this intended to be use in the main window at all?
Thanks for clarifying!
|
|
|
06-30-2020, 06:56 AM
|
#497
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,714
|
Thank you for the bug report. The script is indeed supposed to work in the main window -- in automation items, take envelopes, as well as old-school track automation. Please try the new version 4.52 that I just uploaded, and let me know if anything else isn't working perfectly.
Last edited by juliansader; 06-30-2020 at 07:19 AM.
|
|
|
06-30-2020, 07:44 AM
|
#498
|
Human being with feelings
Join Date: Mar 2018
Posts: 29
|
Amazing!! Fixed! You are a genius
|
|
|
07-03-2020, 05:29 AM
|
#499
|
Human being with feelings
Join Date: Mar 2018
Posts: 29
|
@Julian, I added a little UI feedback to the Draw Ramp script so the user would see that some input is expected.
It could be also applied to all the other scripts, but since most of them change the mouse (or even the Multi Tool provides a great visual cue of where to click!!), then I thought it wouldn't be that necessary.
I am new at scripting in Reaper and didn't make any of the code, I actually copied from a post by Lokasenna helping someone else in another thread, and adapted to my needs... Anyway, I created a helper script called showUIMessage.lua and imported it into your Draw Ramp.lua file, and then called into the main() just before the line reaper.atexit(AtExit) like this:
Code:
showUIMessage("Hoover the mouse over an envelope \nsegment in order to draw a ramp", "Draw Ramp", 300, 50)
reaper.atexit(AtExit)
showUIMessage.lua is below:
Code:
function showUIMessage(sMessage, sTitle, iWidth, iHeight)
local msg_title = sTitle
local msg_str = sMessage
local wnd_w, wnd_h = iWidth, iHeight
-- Get the screen size
local __, __, scr_w, scr_h = reaper.my_getViewport(0, 0, 0, 0, 0, 0, 0, 0, 1)
-- Window background
gfx.clear = reaper.ColorToNative(255,255,255)
-- Open the window
-- Name w h dock x y
gfx.init(msg_title, wnd_w, wnd_h, 0, (scr_w - wnd_w) *2 /3,100)
gfx.setfont(1, "Arial", 16)
-- Black
gfx.set(0, 0, 0, 1)
-- Center the text
local str_w, str_h = gfx.measurestr(msg_str)
local txt_x, txt_y = (gfx.w - str_w) / 2, (gfx.h - str_h) / 2
local function Main()
-- Center the text
gfx.x, gfx.y = txt_x, txt_y
gfx.drawstr(msg_str)
end
Main()
end
The script was imported using a strange and a bit convoluted way which apparently is the accepted solution:
Code:
local info = debug.getinfo(1,'S');
script_path = info.source:match[[^@?(.*[\/])[^\/]-$]]
dofile(script_path .. "metro_showUIMessage.lua")
But maybe there is a better way of doing this? I don't know. Anyway, I'm happy to make a pull request, or feel free to add this to your main code if you want!
And as always, thanks for your amazing work.
|
|
|
07-03-2020, 12:51 PM
|
#500
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,714
|
Quote:
Originally Posted by metronomme
But maybe there is a better way of doing this? I don't know. Anyway, I'm happy to make a pull request, or feel free to add this to your main code if you want!
|
Thanks for the suggestion. This is the great advantage of scripts over native functions: any user can customize scripts.
I can implement the message as a little tooltip that moves along with the mouse, and that pops up if the mouse is outside an envelope lane when the script starts.
|
|
|
07-08-2020, 05:46 AM
|
#501
|
Human being with feelings
Join Date: Aug 2019
Posts: 849
|
Quote:
Originally Posted by Vagelis
You are the best!  Finally we have multi tool for arrange!
|
 ! How did I miss this! Can't wait to try it.
|
|
|
07-09-2020, 01:36 AM
|
#502
|
Human being with feelings
Join Date: Mar 2018
Posts: 29
|
Quote:
Originally Posted by juliansader
I can implement the message as a little tooltip that moves along with the mouse, and that pops up if the mouse is outside an envelope lane when the script starts.
|
Yes, I feel that would be a way more elegant solution! (BTW, you may want to try this for your other MIDI editor tools as well. Just an idea!)
Thanks as always.
|
|
|
08-13-2020, 02:33 AM
|
#503
|
Human being with feelings
Join Date: Sep 2018
Location: lugansk
Posts: 123
|
Hi Julian.
I really like your script-js_Mouse editing - Slice notes.lua and I often miss the function of cutting notes on the left.
Is it possible to add an option to trim notes on the left?
Last edited by YuriOl; 08-13-2020 at 02:58 AM.
|
|
|
08-18-2020, 12:24 AM
|
#504
|
Human being with feelings
Join Date: Jun 2009
Location: Croatia
Posts: 24,691
|
This thing is still happening in docked MIDI inspector (even in the latest version which has flicker reduction - but I'm not sure if that's relevant here):
|
|
|
08-21-2020, 02:06 PM
|
#505
|
Human being with feelings
Join Date: Jun 2009
Location: Croatia
Posts: 24,691
|
Hey, Julian, I see you added "redraw docked inspector while playing or recording" 2 days ago...
Unfortunately, no dice! What would be the cause of this degradation?
|
|
|
08-22-2020, 03:44 AM
|
#506
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,714
|
Quote:
Originally Posted by EvilDragon
Hey, Julian, I see you added "redraw docked inspector while playing or recording" 2 days ago...
Unfortunately, no dice! What would be the cause of this degradation? 
|
I assumed that this happened when your playhead moved across the Inspector's text. Does it happen in any other situations? Does it only happen when you play/stop/loop in a specific way?
When moving the playhead, REAPER draws directly to the screen, bypassing the normal window update functions that trigger composited graphics to redraw/update too.
|
|
|
09-08-2020, 03:26 PM
|
#507
|
Human being with feelings
Join Date: Sep 2016
Location: Toronto
Posts: 678
|
I just discovered your Hotstrings script and would like to request some additional functionality from it:
- option for keystroke intercept whether or not the script window has focus, or is docked
- pass through option for keystrokes. E.g. : my undo is mapped to shift-alt-Z, when I press this while the script is open, I get the error
...REAPER\Scripts\ReaTeam Scripts\Various\js_Hotstrings.lua:144: bad argument #1 to 'char' (value out of range)
- a per action option to leave the script window open after executing. This is useful for things like changing pitch and rate by cents that you have to do multiple times.
- ability to use numbers at the start of a hotstring. If I try to start one with a number it gives me:
- escape key closes the script
js_Hotstrings - table.lua:18: '}' expected (to close '{' at line 8) near 'w'
If you decide to take a break from Razor Edit multi edit to look at these, I'd be very grateful!
|
|
|
09-08-2020, 11:08 PM
|
#508
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,714
|
Quote:
Originally Posted by Arthur McArthur
- a per action option to leave the script window open after executing. This is useful for things like changing pitch and rate by cents that you have to do multiple times.
|
In case you need to repeat the last action multiple times, the easiest would probably be to use REAPER's native "Action: Reaper the most recent action".
Quote:
- escape key closes the script
|
Do you mean that you *don't* want Esc to terminate the script?
Quote:
Originally Posted by Arthur McArthur
- option for keystroke intercept whether or not the script window has focus, or is docked
- pass through option for keystrokes. E.g. : my undo is mapped to shift-alt-Z, when I press this while the script is open, I get the error
|
Changing window behavior would unfortunately be difficult, and would require refactoring the entire script, since 1) script GUI windows need to be in the foreground to intercept keystrokes (unless I use ReaScriptAPI features), and 2) my original intention with the window was to keep it inconspicuous, only expanding temporarily when the user needs a reminder.
Quote:
- ability to use numbers at the start of a hotstring. If I try to start one with a number it gives me:
|
To use a number at the start, you must write the hotstring like this in the table file:
Code:
["123"] = 40295, -- Zoom project
This is a Lua coding trick, and I will add a remark about this in the help text.
|
|
|
12-14-2020, 03:27 AM
|
#509
|
Human being with feelings
Join Date: May 2018
Location: Los Angeles
Posts: 1,661
|
Hi Julian,
Fantastic work on all your scripts!!
Re: Script: js_Select CC lanes to show in selected MIDI items.lua
I was wondering if there was a line in the code I could alter to get the script GUI to open center-screen or to remember where it was last moved. I have a big monitor and every time I open the script it pops up in the top right corner.
I'm on a Mac.
Any ideas?
Thanks for all your great work!
Cheers,
Andrew K
__________________
Cheers... Andrew K
Reaper v6.61 Catalina • Mac Mini 2020 6 core i7 • 64GB RAM • OS: Catalina • 4K monitor • RME RayDAT card with Sync Card and extended Light Pipe.
|
|
|
12-14-2020, 06:36 AM
|
#510
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,714
|
Quote:
Originally Posted by Thonex
Re: Script: js_Select CC lanes to show in selected MIDI items.lua
I was wondering if there was a line in the code I could alter to get the script GUI to open center-screen or to remember where it was last moved. I have a big monitor and every time I open the script it pops up in the top right corner.
|
I have updated
* js_Select CC lanes to show in MIDI item under mouse
* js_Select CC lanes to show in selected MIDI items
to recall their last-used position. It works well on WindowsOS -- please let me know if it also works on macOS.
|
|
|
12-14-2020, 10:43 AM
|
#511
|
Human being with feelings
Join Date: May 2018
Location: Los Angeles
Posts: 1,661
|
Quote:
Originally Posted by juliansader
I have updated
* js_Select CC lanes to show in MIDI item under mouse
* js_Select CC lanes to show in selected MIDI items
to recall their last-used position. It works well on WindowsOS -- please let me know if it also works on macOS.
|
OMG!!! Such a fast turnaround!
FANTASTIC!!!
Works like a charm in MAC OS... remembers the last opened position!
Thanks so much JS!!
Cheers,
Andrew K
__________________
Cheers... Andrew K
Reaper v6.61 Catalina • Mac Mini 2020 6 core i7 • 64GB RAM • OS: Catalina • 4K monitor • RME RayDAT card with Sync Card and extended Light Pipe.
|
|
|
01-01-2021, 12:23 PM
|
#512
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 9,238
|
Happy new year Julian !
Just used your Script: js_Select and deselect MIDI notes by step pattern.lua, very nice script, the best compared to the other attempts on this concept !
Though I would like to propose few UX enhancements :
- mouse wheel over settings should change value( number of steps, and mode)
- click and up key currently change mode: this is a bit surprising and unexpcted : https://i.imgur.com/tTaqgOD.gif, Could you add regular scroll left.right behavior for mode also ?
And few nip ticks:
- division label is left align, but mod is center... Maybe more elegant all left :P
- just and idea: I think it is not extra clear that Mode and Load set of button are buttons and actually not just display info... maybe some kind of mouse hover state, or background color ?
You can take inspiration from my humanize script GUI. (script is unreleased but you can see the GUI demo)
Cheers !
|
|
|
01-21-2021, 09:24 AM
|
#513
|
Human being with feelings
Join Date: Nov 2010
Posts: 1,502
|
Just thinking about Midi inspector....
Is there a way to make the font bigger than 16 pixels?
Also would there be a way to have the values adjust in real time?
|
|
|
01-21-2021, 02:34 PM
|
#514
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,714
|
For the docked version (that displays inside the MIDI editor ruler), you can adjust font size via the right-click menu.
For the windowed version, you can edit the textHeight variable in the script file's User Area (near the top of the script, just below the changelog).
|
|
|
01-22-2021, 02:01 AM
|
#515
|
Human being with feelings
Join Date: Nov 2010
Posts: 1,502
|
Quote:
Originally Posted by juliansader
For the docked version (that displays inside the MIDI editor ruler), you can adjust font size via the right-click menu.
For the windowed version, you can edit the textHeight variable in the script file's User Area (near the top of the script, just below the changelog).
|
Thanks Julian. For the docked version, is there a way to make the font bigger than 16 pixels?
|
|
|
01-22-2021, 06:06 PM
|
#516
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,714
|
It is possible to adjust the script to allow larger fonts, but then the text will start to overlap the tempo/timesig markers.
|
|
|
01-25-2021, 02:30 AM
|
#517
|
Human being with feelings
Join Date: Nov 2010
Posts: 1,502
|
Thanks Julian. Ah yes I see what you mean. :-)
I don't suppose it would be possible to make it so that you could edit values in the midi inspector itself?
So for example, hold the mouse over one of the values in the inspector and move the mouse wheel up and down would change the value?
Or double click on the value to enter a new one?
|
|
|
01-25-2021, 05:56 PM
|
#518
|
Human being with feelings
Join Date: Jul 2009
Posts: 3,714
|
It is possible (and relatively straightforward to implement), but would unfortunately require quite a bit of work.
|
|
|
01-26-2021, 04:52 AM
|
#519
|
Human being with feelings
Join Date: Nov 2010
Posts: 1,502
|
Quote:
Originally Posted by juliansader
It is possible (and relatively straightforward to implement), but would unfortunately require quite a bit of work.
|
Thanks Julian. I understand :-)
|
|
|
02-22-2021, 07:06 AM
|
#520
|
Human being with feelings
Join Date: Nov 2010
Posts: 1,502
|
I'm making great use of your script for the inline editor "select CC lanes to show in selected midi items"
Then I press "u" to get "used only" and then "enter" to close the gui.
I'm wondering if there's a way to tweak the script so that it automatically shows "used only" and then closes the gui.
It would just save two keystrokes....
I'm only just learning scripting so it's a bit beyond me to do any tweaking on this one :-)
this script is just amazing and fills a major hole for the inline editor.....
|
|
|
Thread Tools |
|
Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -7. The time now is 10:38 PM.
|