Jump to content
Hash, Inc. Forums

The Install Rig Plugin


rickh

Recommended Posts

One of the really ellegant ideas that is used in the Squetch Rig is the "Install Rig Plugin". This basically allows you to fit each component of a rig ( say, a complete leg rig ) with all its geometry, control bones, Nulls, etc into a new model. Then when the Install rig plugin is run, all the components of the rig get moved back into their correct positions in the bones heirachy, and all the install bones are removed.

 

The details are here:

 

The Hash Install Rig Plugin

 

The problem is that to install the installation rig, you have to move the install bones via the the "n", "r" and "s" commands along with dragging the position manually on the screen. You cannot move the install bones by typing in start, end rotate and scale coordinates because if you do, the children (ie the real rig) don't get modified along with the install bone. the process can be very tedious and if you accidently move even one install bone the wrong way, the install will fail.

 

Here is my idea.

 

Can you make a much cleaner install process by doing the install in an choreography action window and then capturing the results by saving the choreography action out to a new model?

 

 

This would have lots of advantages.

 

- When you move an install bone using any means, all its children will always move too

- Poses will work - You an set up actual Install Poses to ensure that rig components get install correctly.

- Constraints will work. you an constrain, say, a foot control bone with Y=0, or constrain install bones to have Z rotate=0.

- You can do each step of the install in a seperate frame, which means you can easily return to any stage of the Install if something goes wrong.

- The Install Pose sequence can act as a step-by-step install sequence - for example Poses such as:

 

Frame1 - Turn Off All Rig Constraints

Frame2 - Position Spine

Frame3 - Install Legs, Arms and Head

Frame4 - Leg Joints, Arm Joints, Shoulders, Hands

Frame 5 - Fingers

Frame 6 - Feet

 

and so on. At each stage, the install poses can hide everything except the install bones needed.

 

Does this sound like it could work, or is there an obvious problem I am overlooking?

 

Richard Harrowell.

Link to comment
Share on other sites

If the Squetch installation process were going to be overhauled, I'd prefer to see it adopt the TSM method, in which a "base skeleton" is positioned by the user, after which the installer integrates the rig skeleton overtop of the base one.

 

In TSM's case, all the model's CPs are assigned to the base skeleton, which makes it fairly easy to update your rig without having to start the entire rigging process over again. However, since the Squetch rig provides so many fan bones, this method wouldn't be quite as applicable. Still, the ability to change the base skeleton, run the rigger again, and generate an updated rig configuration would be most convenient.

Link to comment
Share on other sites

If the Squetch installation process were going to be overhauled, I'd prefer to see it adopt the TSM method, in which a "base skeleton" is positioned by the user, after which the installer integrates the rig skeleton overtop of the base one.

 

 

I wasn't really intending to get into a discussion over whether the Squetch rig method of installation is better or not then the TSM rig.

 

I was raising this idea for use in any rig, which could include the Squetch rig. The thing is that the TSM needs a complex specialised program to do the install whereas the Squetch rig uses only built-in A:M features, combined with a simple and free "Install Rig" plugin. The methods used in the Squetch rig are available right now to anyone making their own rig. The TSM approach is only currently available to users of the Anzovin rig.

 

Because the Squetch rig methods are not specialised in any way, it is easy to use the same methodology for any type of rig - say a car rig, gelatinous space monster rig, or anything ale you can think of.

 

The point is if you want to do a Squetch rig type install, is there a better way to do it?

 

One change I made in my original post is that I suggested rigging in a choreography, but I then realised that rigging in an action is a much better idea - bones don't get renamed when you export the action back out to a model.

 

 

Richard Harrowell.

Link to comment
Share on other sites

This is an interesting idea, you can also do it it an action and export the model (I did a quick test, scaled an install bone using the transform properties, and it seemed to work ok), then reopen the model and use the plug-in. I'm not sure if it will mess up any relationships, it's worth a try though.

 

Hmm, maybe installation poses that translate, scale and rotate the install bones of both sides of the model at the same time (this wouldn't be needed with the mirror bones plug-in). Then when running the install plug-in, these poses and relationships are deleted with the install bones.

 

I need to talk with David.

Link to comment
Share on other sites

One of the nice things about using this approach is that you are not editing the model - you are just adding frames to an action so you only need to save to a single project.

 

When I have installed the Squetch rig, I usually end up with about 20 partially installed versions of the model (just so I can go back a few steps when I make the inevitable mistake).

 

I think one of the key issues is that the rig maker fully understands what parts of his model are very critical or which bones need to be positioned with great precision. The end user of the rig doesn't know all this.

 

Having poses, expressions and constraints to control the way Install bones are installed gives the rig maker a way for ensuring the critical bits do get installed perfectly.

 

One thing that I don't think will change is the resetting of the "compensate mode" constraint offsets in the final rig. I just did a test to see if this could be done in bulk by an Install rig. I set up an On/Off pose to toggle the enforcement of several contraints rom 0% to 100%.

 

I turned the pose on (all enforcements = 0%), Pressed the compensate Mode button, and turned the pose off (all enforcements = 100%).

 

Didn't work. Back to setting them manually one by one.

 

Richard Harrowell.

Link to comment
Share on other sites

Well, exporting the model from an action resets the squetch rig sliders to 0% to 100%, not good, but there may be an easy work around.

 

Not sure what is happening there. I just tried making a simple model with a pose slider set to 0%.

 

The model exported from he action retained the 0% setting for the pose.

 

It looks like the pose settings are meant to be retained when you export from an action, so I have no idea why the Squetch poses went to 100%.

Link to comment
Share on other sites

I just tried exporting a model with the Squetch rig in from an action.

 

I didn't get the sliders changing, but I did get the order of the poses changing, and some of the folder structure dissappeared.

 

What version of A:M did you try the export in?. I am using V13j.

 

Which sliders did you get changing to 100%?

Link to comment
Share on other sites

Most of the squetch sliders have negative percentages, for example, -50% to 100%, which reverts to 0% to 100%

 

It looks like there is a bug or two in the Action export-to-model - a job for A:M Reports.

 

I just did a test in a simple model. It looks like all pose sliders lose their Minimum and Maximum setting in the export.

 

As I indicated before, some pose folders get confused as well so there is probably a couple of issues that need reporing here. It would definitely be nice if the pose order stayed the same since the order is usually set intentionally.

 

I will try and post a report today.

 

Richard Harrowell.

Link to comment
Share on other sites

It sounds like an idea worth exploring...worth at least several experiments.

 

The thing I would like to see is slightly different, but I would go with anything that makes things faster or easier.

 

What I was considering was having the positioning accomplished by defining groups...like the ring of splines that are the elbow being a group, then use the pivot point information (similar to the way I manually position the bones in the tutorial) to feed the plugin where to put the bones. Since I'm not a programmer, I have no idea how much work that would be and some bones might be hard to position depending on their relation to the character's mesh. It's something to think about...maybe a programmer can weigh in on how hard that would be to accomplish.

Link to comment
Share on other sites

The pose folders get alphabetized in import/export, A:M likes to tidy up. This is the reason you have to import your mesh into the squetch rig (also, the pose slider reset issue) and not the other way around.

 

 

Trouble is it does more than that - I ended up with a whole list of poses that were located in folders that were shoved back into the root of the User properties folder.

 

I have posted a bug report on the Pose Settings problem. It seems that all versions of A:M (V12, V13 and V14 tested) loose all pose settings currently when you export from an action or choreography to a model so all the sliders are reset back to 0% to 100% sliders. I have mentioned the re-ordering issue and folder issue, but I need to do more investigation on these before I am ready to do a report.

 

Clearly since the order of poses in the User Properties list is usually set intentially, it should always keep its correct order.

 

Richard Harrowell.

Link to comment
Share on other sites

What I was considering was having the positioning accomplished by defining groups...like the ring of splines that are the elbow being a group, then use the pivot point information (similar to the way I manually position the bones in the tutorial) to feed the plugin where to put the bones.

 

Hi David.

 

Definitely after all the work you have done on the current Squetch rig, there is no rush to add even more.

 

I was considering this idea initially for a much simpler rig I am working on just as a test.

 

One of the things I have done is to use Autokeys so I can use "WindowsKey" + C to capture an X,Y and Z coordinate set and then use "WindowsKey" + V" to paste it into, say, a bone start position. If I was in an Action, all the children rig bones would automatically move with the Install bone. Using this method, I could use your "Pivot Point" method of setting the start and end of bones quickly without needing to write down anything in Notepad (although a simple Ctl+v into notepad will store the whole X, Y and Z coordinates in text format).

 

This simple copy and paste method doesn't work in a modelling window because you have to move things in "n", "r" and "s" drag modes.

 

The thing you have done in your current rig is to demonstrate a whole lot of ideas that are completely general and not confined to one type of rig. If something was added to A:M to do the things you suggest, it would be great if it could stay as a general solution, rather then a utility that works on one type of rig only.

 

I rather like the idea of developing a uniform approach to rig install so that your Squetch rig along with various types of rigs from others can all be installed in a similar way. Looking at your tutorials, most of the work seems to be doing the kind of fiddling of postions, rotations, etc that a computer can do much better.

 

I will definitely think about your suggestion and see if I get any ideas.

 

By the way, I intend on posting my Autokey script, but at the moment, it is not fully reliable - work is continuing.

 

Richard Harrowell.

Link to comment
Share on other sites

I have a work around for most of the problems, a bones install rig and a relationship model. After you export your model from the action, restart A:M and open the relationship model and import the bones model into it. The relationship folder still gets alphabetized, but the slider do not reset.

Link to comment
Share on other sites

The relationship folder still gets alphabetized, but the slider do not reset.

 

I guess that you can force the folder contents to be in the intended order as well as alphabetical order for the moment. Start the names with numbers like "01_left_index_finger", "02_left_middle_finger" or letters "a_left_index_finger", "b_left_middle_finger".

 

Not very nice, but it should work as a temporary solution.

 

Richard Harrowell

Link to comment
Share on other sites

If you're starting from a model with no other constraints in it, you can use a text editor to copy the section of the rig that has just the pose slider information and insert that in the model that has the sliders without the negative end or out of order...I've done this successfully before. I believe the section you would need starts at " User Properties" and goes to "" in the v13 version of the rig. That would get your negative sliders back, although you would still have to re-order the constraints in the folders because the order matters in some cases.

 

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

EDIT

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

 

Mark's idea sounds promising.

Link to comment
Share on other sites

Here's an idea, what if the install plug-in was able to reorder the pose folder as well. Would that be possible?

 

I don't know if it's possible, but if it is, as long as the model doesn't have any other rigging done on it the plugin could just use the data from the original installation model. It might not need to be the plugin doing that though since the model file is an XML, it might be something we could do with a script in an XML editor.

Link to comment
Share on other sites

I think I will put together an install rig for myself and test out the "install in an action' method.

 

Thanks Mark and David for all the great suggestions. Identifying those export issues has been a huge help for me.

 

In the long term, this idea really needs A:M to have a robust Export-From-Action tool so I think I will keep working through A:M reports. I think that A:M has to be able to maintain the correct order of User Properties Poses and also relationships and so I will work on some bug reports there too.

 

If anyone else can do their own reports on any of these issues, it will all help. To me, the idea of writing a plugin to overcome a problem in A:M is a very practical solution, but to me it just does not feel "right".

 

In the short term, I will work out some temporary fixes to the problems. This will probably involve text editors and search-and-replace utilities.

 

 

Richard Harrowell.

Link to comment
Share on other sites

  • 2 weeks later...

Just to keep everyone up to date.

 

The bug where slider ranges are reset back to 0-100% when you export an action as a model will be fixed in V13m.

 

There may still be the problems of realtionship orders changing and I will be putting in a bug report about that after 13m is released 9if it still has the problem).

 

In the meantime, there is an excellent work around.

 

Take a copy of the model and strip all mesh and bones out of it - this leaves the poses and the relationships behind. Save this copy to a new name.

 

Now you can install the rig in an action and export to a model.

 

Finally just inport the newly rigged model into the model with all the relationships and poses, and amazingly everything works!

 

So it seems there is no problem now to install a rig in an action window.

 

I an action window, bones can be moved and scaled any way you like and the children come to.

 

You can also add limits or constraints to keep Z-axis rotations at 0, and you can also use other install constraints to do whatever else you need - like rotating and stretching one install bone to exactly reach the start of a second install bone.

 

What all this comes down to is with the help of only the Install Rig plugin and A:M's standard feature set, it is now possible to make a rig install package where A:M will automate most of the hard work for you.

 

Just to illustrate what is possible, a rig install like this can be built:

 

Import the mesh into to install rig model.

Open an action with two windows

Open a Instruction PNG file sequence in a second action window as a rotoscope

Go to frame 1 - One install null bone is visible along with instructions - say - "move to top of right thigh"

Go to Frame 2 - New Null now showing with instructions - -say - "move to right knee"

 

The whole install can proceed like this in simple steps with matching instructions.

 

Any adjustments to the underlying rig can be made automatically using Installation constraints or expressions.

 

When you are finished, export to a new model and load this new model into the project.

Run the Install Rig plugin.

Delete any Install poses or relationships and save.

Import into the Relationships model

 

You still need to do the CP assignments.

 

Richard Harrowell.

Link to comment
Share on other sites

I was going to work on an action install rig using the squetch rig. I'm going to use pose sliders to translate, rotate and scale the rigs install bones so both side are done at the same time. The poses will be setup in the order in which they should be done, so all you would have to do is go down the list. Then using the method of exporting and then importing the boned model into a relationship model. I'll probably have it done sometime this weekend. David, I have an idea about the compensating, I'll have to test it first and I'll let you know if it works.

Link to comment
Share on other sites

I was going to work on an action install rig using the squetch rig. I'm going to use pose sliders to translate, rotate and scale the rigs install bones so both side are done at the same time. The poses will be setup in the order in which they should be done, so all you would have to do is go down the list. Then using the method of exporting and then importing the boned model into a relationship model. I'll probably have it done sometime this weekend. David, I have an idea about the compensating, I'll have to test it first and I'll let you know if it works.

 

Extremely cool, Mark!

Link to comment
Share on other sites

Very cool, Richard! Do you still have to reset the compensates?

 

 

Good question.

 

This method does place bones much more precisely then the manual method so in many cases, it is possible to place them without affecting the compensate offsets.

 

I have been trying out the idea on much simpler rig then the Squetch rig (I am not that brave yet). The rig installed and worked with only slight changes in bone position when I opened an action.

 

Analysing this to see if the movements were caused by compensates that need resetting, or errors in bone positions in the install rig is something I still have to do.

 

If resetting the compensates was needed, could the compensate offsets be animated during the install in an action so they are correct?

 

Mark is probably ahead of me already with the idea he has

 

David, what do you think of instructions in a sequence of rotoscope images? The inspiration came from using your video tutorials while doing a test install of your rig. With the video tutorial, I was always stopping and starting the video which really slows everything down. A simpler install process with a matching static instruction page next to the rig seemed like a good solution.

 

Also five big video tutorials! I actually learnt a fair bit from them so it was useful for me, but I am sure you don't want to be redoing the whole lot every six months due to rig design improvements.

 

Richard Harrowell.

Link to comment
Share on other sites

If resetting the compensates was needed, could the compensate offsets be animated during the install in an action so they are correct?

 

It makes sense, but I'm not sure...my gut tells me it's possible.

 

David, what do you think of instructions in a sequence of rotoscope images?

 

I like the idea...it would be very helpful for anyone that had never done an installation and it would serve as a good reminder if necessary to those that hadn't installed one in a while.

 

Also five big video tutorials! I actually learnt a fair bit from them so it was useful for me, but I am sure you don't want to be redoing the whole lot every six months due to rig design improvements.

 

There have been so many updates since I started the installation tutorial that it would probably be better to start over...not something I'm looking forward to, honestly. I want to get through a complete installation though, there's still a few things I feel like I need to show...among them, the hand clench pose setup, the location of all of the "geom" bones and their purpose and the setup of the bones face rig. Probably more little things that I would remember as I did them. Sorry for the length of the five I made up to this point, I tried to show everything I could so that I didn't confuse someone new to rigging.

 

Anything that makes things easier, faster and better gets my vote. Lots of great ideas being thrown around.

Link to comment
Share on other sites

Hey David. Might I be bold and make a suggestion.....

 

If you should do another video, just show the basics. Things like finding the pivot point of a spline ring and plugging those numbers into the end of a bone are very accurate and probably beyond most peoples requirement (I think most people just eyeball it). So, maybe just show that for one joint and allow the watcher to do that if they want for every joint. And it would make for less work on your part.

 

I hope I'm not being too bold as you've done great work on rigging. I just found the tutorials.....very long....and I've yet to rig a character with the squetch rig. Of course, I may also just be stupid. :D

Link to comment
Share on other sites

Hey David. Might I be bold and make a suggestion.....

 

If you should do another video, just show the basics. Things like finding the pivot point of a spline ring and plugging those numbers into the end of a bone are very accurate and probably beyond most peoples requirement (I think most people just eyeball it). So, maybe just show that for one joint and allow the watcher to do that if they want for every joint. And it would make for less work on your part.

 

I hope I'm not being too bold as you've done great work on rigging. I just found the tutorials.....very long....and I've yet to rig a character with the squetch rig. Of course, I may also just be stupid. :D

 

I think Mark's installation method is going to speed things up quite a bit. I'm kind of obsessive, most people will just wing it...that usually works fine. When the installation tutorials get updated, I'll speed it up. I tried to err on the side of too much information as opposed to not enough...I'll see if I can curb my insanity.

Link to comment
Share on other sites

Ken, I'm working on a posable squetch rig (action install) as we speak. It has all the poses to translate, rotate and scale all the install bones, with constraints to minimize the process, so you can just eyeball it all you want. :D

 

That's a big job!

 

I don't know exactly what you are trying to achieve, aren't A:M's standard translate, rotate and scale tools good enough? Using sliders to position bones sound to me like you have to use the sliders only, and often it is convenient to be able to type in co-ordinates of bones instead.

 

One of the issues for me is being able to build a very automated install rig is just half the story.

 

I think the other side of the equation is that once you have built up this super install rig, there needs to be a way you can easily add the instation stuff to a new edition of the rig. There is a risk of an installation rig becoming so huge, complex and mysterious that no-one dares touch it.

 

rig01.png

 

So in this diagram, step 1 is the one we are currently discussing - the normal rig installation process.

 

I feel you have to keep in mind steps 2 and 3 so that you can extract an improved rig from a character and turn it back into a new install rig without step3 being hugely difficult.

 

Richard Harrowell.

Link to comment
Share on other sites

This is a posable squetch bones rig only with installation poses. Once you pose the rig to your model in and action, you export the model. Open up the new model and delete the installation poses and the relationship folder, run install plug-in and "save as new model". Now you have a posable rig model (that can still be adjust, if need be) and an installed rig model. Now you open the relationship model with the squetch rig constraints and import the installed rig model and save as.

 

With this posable rig you can still use the manipulator to a point, I setup constraints to minimize poses. You still can type in co-ordinates too, but this does not setup both sides of the rig at the same time, unless you want to setup a ton of expressions, which I'm not interested in doing. All the positioning poses, I used the manipulators, also. As for a new installation rig, any new bones would be children of the install bones and new constraints, for the most part, would be drag and drop into the relationship model.

 

I have most of the poses setup already (need to finish hands and face rig), but after 14 hours straight working on it, I thought I would call it a night. I was going to e-mail it to David tonight to test the rest of the poses.

Link to comment
Share on other sites

With this posable rig you can still use the manipulator to a point, I setup constraints to minimize poses. You still can type in co-ordinates too, but this does not setup both sides of the rig at the same time, unless you want to setup a ton of expressions, which I'm not interested in doing.

 

Is there any reason you like to set up both sides in the installation, rather then using Steffen's Mirrorbones to mirror the right side bones to the left?

Link to comment
Share on other sites

Yeah, to make it easier for someone who doesn't do alot of rigging. I only used Steffen's plug-in a couple of times to test it, but there were a few problems with it, I haven't tried the newest version though.

 

David already has a mirrorbones version of his installation rig, all you would have to do is strip out the relationship folder, delete the poses and rig it however you like in an action, use manipulators, type in co-ordinates or just drag the bones around where ever you want them. I just took his full version rig and made it easy to install, so other people who use it don't miss any process of the installation. I have already done it for them, all they have to do is follow the list of poses I setup and they're done, no need to have a png file to tell them what to do. Some of my pose have tips on what view and where to position the bones.

 

I sent it to David last night to test it and he seemed quite pleased with it.

 

So, if you don't like the method I used, you don't have to use it when I post it.

Link to comment
Share on other sites

What Mark is doing is a thing of beauty! It's not finished, and he's got a couple of possible directions that he's exploring, but it kicks ass so far. I'm like a kid with a new toy...it's that good (I'm doing a little dance in my head).

 

 

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

EDIT

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

 

Mark's characterization of my response as "pleased" should read "ecstatic"...you'll see why when he releases it.

Link to comment
Share on other sites

The idea of using ordered poses as a way of documenting the install is definitely nice.

 

My idea of using a rotoscope was basically tring to find a way to get some documentation into A:M. Using the poses as documentation seems to eliminate the need for my rotoscope.

 

Also, one of the nice things about poses is that you can make the sliders as big as you like. You can easily organise A:M so that the pose sliders occupy the full width of the screen.

 

This means you can use long, very informative pose descriptions, and the huge pose slider is really comfortable to adjust precisely.

 

One thing I noticed is that when you are dragging a slider it seems to jump in 1% steps.

 

So if the installaion rig uses, say 0 to 10000% sliders that extend the width of the screen, you can really do fine adjustments.

 

Richard Harrowell.

Link to comment
Share on other sites

I just did a test to see what is the best resolution you can get out of a pose slider.

 

On my notebook screen (1400 pixels wide), I was able to adjust a 10,000% pose slider in steps of about 8% with my mouse (with difficulty) with a mouse. With a tablet, the steps were still about 8% but it was much easier.

 

So it seems that the optimal pose slider range for resolution is about 0 to 2000% or -1000% to 1000%

 

It would seem like the maximum slider resolution is probably the screen resolution, and I doubt many people will be using screens over 2000 pixels wide.

 

Richard Harrowell.

Link to comment
Share on other sites

I just did a test to see what is the best resolution you can get out of a pose slider.

 

On my notebook screen (1400 pixels wide), I was able to adjust a 10,000% pose slider in steps of about 8% with my mouse (with difficulty) with a mouse. With a tablet, the steps were still about 8% but it was much easier.

 

So it seems that the optimal pose slider range for resolution is about 0 to 2000% or -1000% to 1000%

 

It would seem like the maximum slider resolution is probably the screen resolution, and I doubt many people will be using screens over 2000 pixels wide.

 

Richard Harrowell.

 

If I need fine adjustment, I just input the numbers instead of moving the slider. I get it close with the slider first though.

Link to comment
Share on other sites

:blink:

I will first confess that a lot of this is going over my head but I am trying to catch up. That said, should I be waiting to try to use the Squetch Rig for a few more days or should I try going for it now? I am going to be rigging a semi realistic human and actually do not intend to use any stretchy functions once completed. My reasoning is that I had read a lot about this rig and think it has had some of the finest rigging experts in the community working on it. So should I wait? I plan on using the ver 13 flip version so I only have to rig one side and then mirror (this is how it works right?).

Link to comment
Share on other sites

:blink:

I will first confess that a lot of this is going over my head but I am trying to catch up. That said, should I be waiting to try to use the Squetch Rig for a few more days or should I try going for it now? I am going to be rigging a semi realistic human and actually do not intend to use any stretchy functions once completed. My reasoning is that I had read a lot about this rig and think it has had some of the finest rigging experts in the community working on it. So should I wait? I plan on using the ver 13 flip version so I only have to rig one side and then mirror (this is how it works right?).

 

It's entirely up to you if you wait or not...my guess is that it will be a week or so...depending on how much free time Mark has. The MirrorBones version does work like that...position the right side, run the plugin to mirror the bones to the left side, save the model and then run the InstallRig plugin.

Link to comment
Share on other sites

With fear in my voice and trembling lower lip: "This is not going to be v13 or higher exclusive... it will work with older versions of A:M... right?" (PPPPPPLEEASE)

 

I'm not positive, but, if I'm understanding it correctly, we'll be able to have the new installations for v12 and v11.1...even if it doesn't work 100% for the older versions, I think it would only involve moving some folders around. At least that's what I think.

Link to comment
Share on other sites

Just so people didn't think I stopped working on this, I didn't. I've been working on the hand poses all week, what a pain, setting up all the constraints needed and the finger poses. Rigging the hand was always a pain in the butt, so hopefully this will make rigging the hands/fingers alot easier. I'm on the last set of poses for the fingers and I'll be done with the hands, then it's onto the face. Hopefully the face will be alot easier. Once the face is done, I'll send it to David for testing. If he thinks it's ready, I'll post it.

Link to comment
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...