Jump to content

[1.12.x] Anatid Robotics / MuMech - MechJeb - Autopilot - [2.14.3] [4th March 2023]


sarbian

Recommended Posts

well ok I found what is needed for a fully functional autopilot ascent guidance.

- of course the Tracking Station and Mission Control for the nodes.
- the "Advanced Flight Control" in the technology tree R&D facility. the MJ AR202 case is not necessary attached on the rocket.

all can be taken in career mode before to do the 3rd launch to a close flyby to the mun.
 

Link to comment
Share on other sites

MechJeb dev #1029 said "I don't want to launch a Titan-II with only the boosters and then 10s before burn-out launch the main engine triggered by a SmartPart."

First it said

[EXC 00:38:55.787] ArgumentException: GUILayout: Mismatched LayoutGroup.repaint
	UnityEngine.GUILayoutUtility.BeginLayoutGroup (UnityEngine.GUIStyle style, UnityEngine.GUILayoutOption[] options, System.Type layoutType) (at <fa6f9762ac624af092525d37c9d516c4>:0)
	UnityEngine.GUILayout.BeginHorizontal (UnityEngine.GUIContent content, UnityEngine.GUIStyle style, UnityEngine.GUILayoutOption[] options) (at <fa6f9762ac624af092525d37c9d516c4>:0)
	UnityEngine.GUILayout.BeginHorizontal (UnityEngine.GUILayoutOption[] options) (at <fa6f9762ac624af092525d37c9d516c4>:0)
	MuMech.MechJebModuleAscentGuidance.WindowGUI (System.Int32 windowID) (at <5eed67f93921473dac83f2f6c1ce2ab8>:0)
	MuMech.DisplayModule.ProfiledWindowGUI (System.Int32 windowID) (at <5eed67f93921473dac83f2f6c1ce2ab8>:0)
	UnityEngine.GUILayout+LayoutedWindow.DoWindow (System.Int32 windowID) (at <fa6f9762ac624af092525d37c9d516c4>:0)
	UnityEngine.GUI.CallWindowDelegate (UnityEngine.GUI+WindowFunction func, System.Int32 id, System.Int32 instanceID, UnityEngine.GUISkin _skin, System.Int32 forceRect, System.Single width, System.Single height, UnityEngine.GUIStyle style) (at <fa6f9762ac624af092525d37c9d516c4>:0)
	UnityEngine.DebugLogHandler:LogException(Exception, Object)
	ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
	UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)

shortly after that it said

[LOG 00:40:31.228] An exception occurred: ArithmeticException
[LOG 00:40:31.228] Message: Function does not accept floating point Not-a-Number values.
[LOG 00:40:31.229] Stack Trace:
  at System.Math.Sign (System.Double value) [0x00034] in <ad04dee02e7e4a85a1299c7ee81c79f6>:0 
  at MuMech.ODE.RKDP547FM (MuMech.ODEFun f, System.Object o, System.Double[] y0, System.Int32 n, System.Span`1[T] xtbl, System.Span`1[T] ytbl, System.Double eps, System.Double hstart, System.Collections.Generic.List`1[T] xlist, System.Collections.Generic.List`1[T] ylist, System.Double hmin, System.Double hmax, System.Int32 maxiter, MuMech.EvtFun[] EvtFuns) [0x001c3] in <5eed67f93921473dac83f2f6c1ce2ab8>:0 
  at MuMech.PontryaginBase.singleIntegrate (System.Double[] y0, System.Double[] yf, MuMech.PontryaginBase+Solution sol, System.Int32 n, System.Double& t, System.Double dt, System.Collections.Generic.List`1[T] arcs, System.Int32 count, System.Double& dV) [0x00125] in <5eed67f93921473dac83f2f6c1ce2ab8>:0 
  at MuMech.PontryaginBase.singleIntegrate (System.Double[] y0, System.Double[] yf, System.Int32 n, System.Double& t, System.Double dt, System.Collections.Generic.List`1[T] arcs, System.Double& dV) [0x00000] in <5eed67f93921473dac83f2f6c1ce2ab8>:0 
  at MuMech.PontryaginBase.multipleIntegrate (System.Double[] y0, System.Double[] yf, MuMech.PontryaginBase+Solution sol, System.Collections.Generic.List`1[T] arcs, System.Int32 count, System.Boolean initialize) [0x0012f] in <5eed67f93921473dac83f2f6c1ce2ab8>:0 
  at MuMech.PontryaginBase.multipleIntegrate (System.Double[] y0, System.Double[] yf, System.Collections.Generic.List`1[T] arcs, System.Boolean initialize) [0x00000] in <5eed67f93921473dac83f2f6c1ce2ab8>:0 
  at MuMech.PontryaginLaunch.Bootstrap (System.Double t0) [0x00127] in <5eed67f93921473dac83f2f6c1ce2ab8>:0 
  at MuMech.PontryaginBase.Optimize (System.Double t0) [0x000f0] in <5eed67f93921473dac83f2f6c1ce2ab8>:0 

and also this was logged

[ERR 00:44:35.820] Exception handling event onDeltaVCalcsCompleted in class StageGroup:System.NullReferenceException: Object reference not set to an instance of an object
  at KSP.UI.Screens.StageGroup.DeltaVCalcsCompleted () [0x0009f] in <c1858a3f77504bd1aaa946fdccf84670>:0 
  at EventVoid.Fire () [0x00127] in <c1858a3f77504bd1aaa946fdccf84670>:0 

[EXC 00:44:35.821] NullReferenceException: Object reference not set to an instance of an object
	KSP.UI.Screens.StageGroup.DeltaVCalcsCompleted () (at <c1858a3f77504bd1aaa946fdccf84670>:0)
	EventVoid.Fire () (at <c1858a3f77504bd1aaa946fdccf84670>:0)
	UnityEngine.DebugLogHandler:LogException(Exception, Object)
	ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
	UnityEngine.Debug:LogException(Exception)
	EventVoid:Fire()
	<RunCalculations>d__100:MoveNext()
	UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
	VesselDeltaV:<CheckDirtyAndRun>b__68_0()
	<DelayedCallback>d__1:MoveNext()
	UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

and then the spamming of the following started

[EXC 00:45:42.992] NullReferenceException: Object reference not set to an instance of an object
	FerramAerospaceResearch.FARAeroComponents.FARVesselAero.SimulateAeroProperties (UnityEngine.Vector3& aeroForce, UnityEngine.Vector3& aeroTorque, UnityEngine.Vector3 velocityWorldVector, System.Double altitude) (at <06412bd4deb344b0a12344c55af2e485>:0)
	FerramAerospaceResearch.FARAPI.CalculateVesselAeroForces (Vessel vessel, UnityEngine.Vector3& aeroForce, UnityEngine.Vector3& aeroTorque, UnityEngine.Vector3 velocityWorldVector, System.Double altitude) (at <06412bd4deb344b0a12344c55af2e485>:0)
	System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)
	Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation.
	System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)
	System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)
	Trajectories.FARModel.ComputeForces_Model (Vector3d airVelocity, System.Double altitude) (at <bc6f38c17ad344c093c996da9a4f3c80>:0)
	Trajectories.VesselAerodynamicModel.ComputeForces (System.Double altitude, Vector3d airVelocity, Vector3d vup, System.Double angleOfAttack) (at <bc6f38c17ad344c093c996da9a4f3c80>:0)
	Trajectories.VesselAerodynamicModel.ComputeReferenceDrag () (at <bc6f38c17ad344c093c996da9a4f3c80>:0)
	Trajectories.VesselAerodynamicModel.IsValidFor (CelestialBody body) (at <bc6f38c17ad344c093c996da9a4f3c80>:0)
	Trajectories.Trajectory+<ComputeTrajectoryIncrement>d__36.MoveNext () (at <bc6f38c17ad344c093c996da9a4f3c80>:0)
	Trajectories.Trajectory.ComputeTrajectory () (at <bc6f38c17ad344c093c996da9a4f3c80>:0)
	Trajectories.Trajectory.Update () (at <bc6f38c17ad344c093c996da9a4f3c80>:0)
	Trajectories.Trajectories.Update () (at <bc6f38c17ad344c093c996da9a4f3c80>:0)
	UnityEngine.DebugLogHandler:LogException(Exception, Object)
	ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
	UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)

The full log and stuff:
https://www.dropbox.com/s/l49aj5wl9uyunjn/player.log and stuff 2020-09-27-1.7z?dl=1

Link to comment
Share on other sites

FYI:

I found a simple rule of thumb which PVG settings to use in non-RSS environments:

Booster pitch start	60 m/s
Booster pitch rate	TWR / 10
Guidance interval:	1 s
Qa limit		100 x Kerbin scale

So for a 2.5x SigDim rescale (with 2.5x planet resize as well) the "Qa limit" would be set to 250.
For a low TWR launch of 1.05 the "Booster pitch rate" would be set to 0.105

Of course these are "just" rule of thumb values.

Edit:

After several different kinds of launches in a 2.5x rescaled stock+OPM+MPE environment I came to the following conclusion:

Booster pitch start	60 m/s
Booster pitch rate	(TWR / 10) * 2
Guidance interval:	1 s
Qa limit		1000 + (150 x Kerbin scale)

 

Edited by Gordon Dry
Link to comment
Share on other sites

I am having an issue with one ship landing on Dres, using the MechJeb "landing Guidance" autopilot. First let me point out that the landing guidance worked very well for 5 of the 6 ships that comprise my Dres mining operation. The drill was not mobile so it had to land close to my chosen location...it did. The other parts of the mining "base" had rover wheels and were landed at a spot I picked out as a "landing area". They all landed relatively close to this area, using the MJ landing guidance function, and were "rovered" to my desired position for them. The problem I'm having is with my "fuel hauler". This ship carries processed fuel and LoX from the mining base to orbiting refueling stations around Dres. It refuses to land at the designated landing area with MechJeb Landing Guidance. In 14 attempts it has landed safely only once...4.2 kilometers away from the base. All other attempts have resulted in high speed crashes, at many angles, into Dres's surface. Once the "Land at Target" button is pushed, this ship goes into a slowly increasing "over-correction" until it is completely out of control. I have tried incrementally reducing gimbal limits, all the way to "0",  reducing reaction wheel torques...nothing stops the ship from going completely out of control before crashing into Dres. Here is a screenshot of the ships in question, from left to right, all ships landed at my desired location...the drill exactly where it sits and the rest at the landing area you see on the far right. The far right ship, the "Dres fuel hauler" is the one in question. I have been manually piloting it to a landing close enough to transfer fuel / LoX....but the whole reason I tried MechJeb was to get this ship to land, consistently, near my mining operation...and it has not worked.

screenshot36.png

I will gladly supply any logs, craft files, etc. that may help...but I don't know exactly what files are needed. Please just let me know and I will provide anything needed. I am NOT just asking for help without any input or "work" on my part....I just need to know what, exactly, is required. There are many "logs" in KSP, please let me know which would be helpful and how to correctly "get" them (after the ship has crashed, while it is experiencing it's wild oscillations, etc).

Thank you for your time.

Link to comment
Share on other sites

Can anyone help with  apparent MechJeb 2 issues with the X-20 "Moroz" Dynasoar? The ride uphill and orbital ops are fine, but the glide back is not. I am getting a lot of "Dutch Roll", flat spins, and general uncontrollability. The Aircraft Approach & Landing function sometimes does well for a few moments, then I get the flat spins and Dutch Roll (constant left and right yaw with pitch deviations). I have never even gotten close to the runway. I have tried to adjust the glide slope to 20-30 degrees thinking I was stalling, but that doesn't work. I also upped the approach and landing speeds with the same negative result. If I kill the autopilot I can steady out the spacecraft, but as soon as I re-engage the uncontrollability begins again. I am too crappy a pilot with a keyboard to fly it in manually. Any suggestions? 

 

Thanks!

Link to comment
Share on other sites

18 hours ago, DaveyJ576 said:

Can anyone help with  apparent MechJeb 2 issues with the X-20 "Moroz" Dynasoar? The ride uphill and orbital ops are fine, but the glide back is not. I am getting a lot of "Dutch Roll", flat spins, and general uncontrollability. The Aircraft Approach & Landing function sometimes does well for a few moments, then I get the flat spins and Dutch Roll (constant left and right yaw with pitch deviations). I have never even gotten close to the runway. I have tried to adjust the glide slope to 20-30 degrees thinking I was stalling, but that doesn't work. I also upped the approach and landing speeds with the same negative result. If I kill the autopilot I can steady out the spacecraft, but as soon as I re-engage the uncontrollability begins again. I am too crappy a pilot with a keyboard to fly it in manually. Any suggestions? 

 

Thanks!

Is your craft stable in the first place? that is, center of lift behind center of mass? Otherwise, have you tried tuning the PID (-->aircraft autopilot) ?

Link to comment
Share on other sites

Mechjeb "Ascent Guidance" "Stock-Style Gravity Turn" "Intermediate Altitude"
 

Situation: Landed on Mun. Using "Stock-Style Gravity Turn" to reach the desired orbit.

Like I've showed in a couple of previous posts, when I set the "Intermediate Altitude" lower than the "Orbit Altitude", the result is that:
the node at "Intermediate Altitude" isn't created and the ship does not auto-warp the Intermediate Ap.
anyway when the ship reaches it, it accelerate correctly, then a node at the final altitude Ap is created, the ship auto-warp to it and circularize.

if instead,
Like is written here: https://genhis.github.io/KRPC.MechJeb/csharp/ascent-autopilot.html
"
Intermediate apoapsis altitude to coast to and then raise the apoapsis up to the eventual final target. May be set to equal the final target in order to skip the intermediate phase. "

I set "Intermediate Altitude" equal to "Orbit Altitude", the ship take off and accelerate until the Ap is reached, then a node is created in order to circularize and the ship starts to rotate and auto-warp.

In both cases: "Intermediate Altitude" lower or equal than "Orbit Altitude", I can reach a correct final orbit.
But if "Intermediate Altitude" is lower, I have to wait ages for the ship reaches the first Ap or manually warp to it, paying attention to do not overtake it.

 


My questions are:
1 - Why the intermediate node isn't created, the ship doesn't auto-warp, the Autopilot Status remains in "Fine Tuning Intermediate Altitude".?
2 - What is the point in set up a lower intermediate altitude? it doesn't work completely well and it does not seems to give me any advantages.

 

here another video showing both the maneuvers.
when you see the ship warp to 32Km it's me manually doing it.
https://www.dropbox.com/s/13zdej16alwmahj/2020-10-07 04-09-41.mkv?dl=0

 

 

 

Edited by antipro
Link to comment
Share on other sites

On 10/5/2020 at 5:20 PM, strider3 said:

I am having an issue with one ship landing on Dres, using the MechJeb "landing Guidance" autopilot. First let me point out that the landing guidance worked very well for 5 of the 6 ships that comprise my Dres mining operation. The drill was not mobile so it had to land close to my chosen location...it did. The other parts of the mining "base" had rover wheels and were landed at a spot I picked out as a "landing area". They all landed relatively close to this area, using the MJ landing guidance function, and were "rovered" to my desired position for them. The problem I'm having is with my "fuel hauler". This ship carries processed fuel and LoX from the mining base to orbiting refueling stations around Dres. It refuses to land at the designated landing area with MechJeb Landing Guidance. In 14 attempts it has landed safely only once...4.2 kilometers away from the base. All other attempts have resulted in high speed crashes, at many angles, into Dres's surface. Once the "Land at Target" button is pushed, this ship goes into a slowly increasing "over-correction" until it is completely out of control. I have tried incrementally reducing gimbal limits, all the way to "0",  reducing reaction wheel torques...nothing stops the ship from going completely out of control before crashing into Dres. Here is a screenshot of the ships in question, from left to right, all ships landed at my desired location...the drill exactly where it sits and the rest at the landing area you see on the far right. The far right ship, the "Dres fuel hauler" is the one in question. I have been manually piloting it to a landing close enough to transfer fuel / LoX....but the whole reason I tried MechJeb was to get this ship to land, consistently, near my mining operation...and it has not worked.

screenshot36.png

I will gladly supply any logs, craft files, etc. that may help...but I don't know exactly what files are needed. Please just let me know and I will provide anything needed. I am NOT just asking for help without any input or "work" on my part....I just need to know what, exactly, is required. There are many "logs" in KSP, please let me know which would be helpful and how to correctly "get" them (after the ship has crashed, while it is experiencing it's wild oscillations, etc).

Thank you for your time.

Why do I bother? I'll just remove MechJeb and land manually....I've gotten good at it.

Link to comment
Share on other sites

8 hours ago, strider3 said:

Why do I bother? I'll just remove MechJeb and land manually....I've gotten good at it.

MechJeb is repeatable, but not terribly accurate.  I have a Mun base that every craft will miss the landing aim point from 100m-1500m.  If I want precise landings I have to work up unique coordinates to feed into MechJeb for each craft design.

Eventually  I quit worrying about that and just manually adjust the touchdown point with MechJeb in control.  You know you can still fly the craft with MechJeb controlling the landing?  I usually turn on RCS turn the final descent and manually move the touchdown point.   If that doesn't work I use the Translatron to hover taxi from where I landed to where I need to be or do silly things like hover over to a docking port on my base.

AOKZQEF.jpg

Link to comment
Share on other sites

14 hours ago, strider3 said:

I'll just remove MechJeb and land manually....I've gotten good at it.

That's the spirit! :)

In my experience, precision landings require a TWR that's not too high (neither too low, of course) and responsive attitude control. More or less balanced RCS thrusters help, too. If MJ starts pulsing the throttle or roasts the engines on a slow brake burn, I reduce engine thrust.

Link to comment
Share on other sites

@antipro Have you tried the Classic Assent Profile?  I think it's the default method and it's the one I've always used.

The other thing is it appears you are using the official release instead of the DEV build.  The official releases seem to only get updated once for each major game release.  The DEV builds get much more frequent updates and your issue may be fixed in it.  You do run the risk of a DEV build breaking some aspects, but it's trivially easy to roll back to a working version if you have issues. 

Installing DEV builds are described in the first post of this thread.

Link to comment
Share on other sites

2 hours ago, HansAcker said:

That's the spirit! :)

In my experience, precision landings require a TWR that's not too high (neither too low, of course) and responsive attitude control. More or less balanced RCS thrusters help, too. If MJ starts pulsing the throttle or roasts the engines on a slow brake burn, I reduce engine thrust.

 

8 hours ago, Tonka Crash said:

MechJeb is repeatable, but not terribly accurate.  I have a Mun base that every craft will miss the landing aim point from 100m-1500m.  If I want precise landings I have to work up unique coordinates to feed into MechJeb for each craft design.

Eventually  I quit worrying about that and just manually adjust the touchdown point with MechJeb in control.  You know you can still fly the craft with MechJeb controlling the landing?  I usually turn on RCS turn the final descent and manually move the touchdown point.   If that doesn't work I use the Translatron to hover taxi from where I landed to where I need to be or do silly things like hover over to a docking port on my base.

AOKZQEF.jpg

My issue with this one ship isn't so much about accuracy as about a controlled descent (although the one leads to the other...chicken and egg? LOL). I've tried adjusting throttle and gimbals...even torque on the wheels. Nothing seems to help...MJ just wants to "over-control" this ship, for some reason. The problem must be the ship itself as the other 5 parts of my mining operation landed within a reasonable, workable distance and did so in a very smooth, controlled manner. If I could find the problem I could send a new Hauler along with the 2nd drill and 2nd ISDU I have in Kerbin orbit, waiting for the departure window. Barring that I'll just "Cowboy Up" :cool:.

@Tonka Crash That's one nice looking base you have there! Building bases like that is beyond my knowledge, at this point... it's not the parts so much as placing them that I have to learn about. I'll get there, eventually.  ;)

Link to comment
Share on other sites

Stock SAS vs Smart A.S.S.
I don't know how to explain well what I mean but I try in few words and with a video.

When I use Stock SAS, like usual, the ship rotate to the selected navball point in few seconds.
But using Smart A.S.S., so in every autopilot maneuvers, the rotation is equally fast until the direction is reached but it overtake the point by few degrees and then it rotate back so slowly.

I notice that this behavior affects some maneuvers, like when in an autolanding, MJ first have to change inclination, the Smart A.S.S. is so slow that the engine burns 2 times,
the first microburrn when normal direction is reached and overtaked, the second when normal direction is repointed, but it's almost late.
Or when in a simple hohmann transfer starting from a very low orbit around kerbin, the warp stops so near to the node that the Smart A.S.S. have no time to rotate prograde and the burn start late.

How to avoid this behavior and make the Smart A.S.S. fast as Stock SAS?

https://www.dropbox.com/s/t487ifllrc19s72/2020-10-08 03-02-06.mkv?dl=0

 

9 hours ago, Tonka Crash said:

@antipro Have you tried the Classic Assent Profile?  I think it's the default method and it's the one I've always used.

Thanks @Tonka Crash, I didn't notice I could edit those values by deselecting "Automatic Altitude Turn" box.
Even if the white line representing the vessel trajectory no longer appear.
This is how I set it up from Mun surface to a 62km orbit.
Screenshot%202020-10-08%2003.30.17.jpg?d

Thanks also for other informations about the releases.

Edited by antipro
Link to comment
Share on other sites

hi,
Situation: launch into plane of target, target = minmus
What I expect: As soon as the ascent guidance autopilot stops, KER Relative Inclination = 0
Result: KER Relative Inclination = about 0.2

Question: is this the normal precision margin of MJ or I can do something better in order to launch into a perfect plane of 6°?

I notice that the engine starts exactly when KER Rel. AN = 0.
Start a little bit early isn't it better for precision?

Screenshot%202020-10-09%2013.14.20.jpg?d

Screenshot%202020-10-09%2013.19.17.jpg?d

Edited by antipro
Link to comment
Share on other sites

1 hour ago, antipro said:

hi,
Situation: launch into plane of target, target = minmus
What I expect: As soon as the ascent guidance autopilot stops, KER Relative Inclination = 0
Result: KER Relative Inclination = about 0.2

Question: is this the normal precision margin of MJ or I can do something better in order to launch into a perfect plane of 6°?

I notice that the engine starts exactly when KER Rel. AN = 0.
Start a little bit early isn't it better for precision?

I don't use this feature often so I don't know if it works this way for this mode.  

Do it once and revert to launch after the circularization completes and do it again. MechJeb needs the first attempt to determine the time required for the launch for your spacecraft.  The first launch is normally done with no lead time.  On the second attempt MechJeb should load an updated estimate of when it needs to launch. At least it works that way for launch to intercept (which I use a lot).

Link to comment
Share on other sites

2 hours ago, Tonka Crash said:

At least it works that way for launch to intercept (which I use a lot).

yes thanks, I've already read about this you've mentioned, here:
https://github.com/MuMech/MechJeb2/issues/102

I'm not sure it works with "launch into plane" too, but I'm gonna try it again right now, wait...

...indeed it doesn't work, the result deviation is always the same: 0.19°
And it seems I cant even correct it with "change inclination" feature, cause of the too small difference.
"change inclination" after that maneuver can't even place node in the right place and once you press execute, the node just get deleted.
I'm more precise doing it manually: now is 0,00029°, that is fine.

EDIT: like I supposed, I've tried to abort the autolaunch and did myself start it 2 mins before MJ want to,
result inclination = 0.02° that is much better than the 0.19° of MJ autolaunch.
and 1min 40s before the REL AN = inclination 0.014° which is even better.

With many tries I'm sure I can achieve a more precise engine start time, anyway
If something can be changed in the code to auto-achieve an almost perfect plane inclination in a way completely automated, it will be very appreciated.
see ya

Edited by antipro
Link to comment
Share on other sites

Join the conversation

You can post now and register later. 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...