Jump to content

Banner.jpg.b89429c566825f6ab32bcafbada449c9.jpg

Affinity Photo: Astrophotography macros, video tutorials and other resources


James Ritson

Recommended Posts

3 hours ago, PeterC65 said:

Thanks for starting this thread and for creating the macros. I've only just stumbled across it!

I've had Affinity Photo 2.0 for a few month now and didn't realise it could do stacking. I mostly do EEVA but have tried collecting frames for later post processing without much success (using AutoStakkert and DeepSkyStacker). Using the stacking feature in Affinity Photo is proving much more effective, but still not always any better than the live stacking in SharpCap!

The macros are amazing. I'm still trying them out and have yet to understand their effects but the results are very impressive.

 

Hi Peter, yes, Photo can do both live stacking (for statistical operations to achieve object removal, increase SNR and so on) and the full blown astro stacking with the facility for calibration frames, sigma clipping pixel rejection etc.

No comet stacking yet but I live in hope we might be able to implement it at some point—I keep adding data for the developer to work with!

Glad you find the macros useful. I would recommend giving the update video a watch: it is a bit dry (as usual from me) but I go through the new tone stretching options and explore some of the other macros to build upon the editing process, it may give you some ideas.

Moving forward, I’m planning to do short snippet videos detailing one or two of the macros and show some use cases—I think that will be more interesting for people rather than a long form video. The macros can be really powerful but it’s hard to communicate the most effective way to use them (the readme PDF tries, but it’s not the same as actually seeing it in practice).

Thanks,
James

  • Like 4
Link to comment
Share on other sites

Hi all, as I mentioned in my previous post, I've done a quick snippet video on reducing star intensity with the macros—it goes through a couple of quick options and explains masking procedures. Hope you find it interesting! I'll try and produce some more of these in the coming weeks.

 

 

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

@James Ritson, I've got a question about Affinity Photo 2.0 that you might be able to answer. I want to associate .fits files on my PC with Affinity Photo so that the application opens them when I double click on a file. I know how to do this with Windows | Settings | Default Apps, but I can't find the Affinity Photo program on the laptop to make the association. There is a .affinity folder in my User directory which seems to hold a lot of setup information for the program but not the program itself. So where is the program for me to associate files with it?

 

Link to comment
Share on other sites

18 minutes ago, PeterC65 said:

@James Ritson, I've got a question about Affinity Photo 2.0 that you might be able to answer. I want to associate .fits files on my PC with Affinity Photo so that the application opens them when I double click on a file. I know how to do this with Windows | Settings | Default Apps, but I can't find the Affinity Photo program on the laptop to make the association. There is a .affinity folder in my User directory which seems to hold a lot of setup information for the program but not the program itself. So where is the program for me to associate files with it?

 

Hi Peter, this is likely because V2 of the apps install as "Windows Apps" with the new MSIX installer system. It's caused a bit of consternation as it's not easy to access the .EXE files. Seems Microsoft didn't think their new "app" format through very well, because if an app isn't listed in the immediate Open With menu, you have to go searching for the .exe which is contained in a sandboxed directory.

There are a few things you can do here:

  1. You can try pointing to the app alias which is located at C:\Users\(Your username)\AppData\Local\Microsoft\WindowsApps\AffinityPhoto2.exe
  2. If that doesn't work, we've provided an AFLaunch executable which can be found attached to a post in this thread: https://forum.affinity.serif.com/index.php?/topic/171826-why-are-we-using-msix-for-windows-installers/

Alternatively, the solution that would be better long term is to re-install Affinity Photo using the MSI installer which we launched in January. You can download them from the V2 downloads page on the Serif website, this thread explains where to look: https://forum.affinity.serif.com/index.php?/topic/180014-affinity-v2-windows-installers-are-available-as-unsandboxed-msiexe-as-well-as-sandboxed-msix/#comment-1039132\

If you use the MSI installer, the apps get installed as you would expect to C:\Program Files\Affinity\

As much as I like the benefits that MSIX brings, I've uninstalled the app versions and gone with the traditional MSI versions as well...

Hope that helps!

Link to comment
Share on other sites

56 minutes ago, James Ritson said:

Hi Peter, this is likely because V2 of the apps install as "Windows Apps" with the new MSIX installer system. It's caused a bit of consternation as it's not easy to access the .EXE files. Seems Microsoft didn't think their new "app" format through very well, because if an app isn't listed in the immediate Open With menu, you have to go searching for the .exe which is contained in a sandboxed directory.

There are a few things you can do here:

  1. You can try pointing to the app alias which is located at C:\Users\(Your username)\AppData\Local\Microsoft\WindowsApps\AffinityPhoto2.exe
  2. If that doesn't work, we've provided an AFLaunch executable which can be found attached to a post in this thread: https://forum.affinity.serif.com/index.php?/topic/171826-why-are-we-using-msix-for-windows-installers/

Alternatively, the solution that would be better long term is to re-install Affinity Photo using the MSI installer which we launched in January. You can download them from the V2 downloads page on the Serif website, this thread explains where to look: https://forum.affinity.serif.com/index.php?/topic/180014-affinity-v2-windows-installers-are-available-as-unsandboxed-msiexe-as-well-as-sandboxed-msix/#comment-1039132\

If you use the MSI installer, the apps get installed as you would expect to C:\Program Files\Affinity\

As much as I like the benefits that MSIX brings, I've uninstalled the app versions and gone with the traditional MSI versions as well...

Hope that helps!

Thanks for getting back to me so quickly.

The app alias doesn't work. I can double click on it and it will run the app, but when I try to do the association Windows says that the file is not accessible by the system!

The AFLaunch executable does work but seems clunky and doesn't mark the file association with the Affinity Photo icon.

So I've downloaded the MSI version and installed it, after first deinstalling the MSIX version. I had to register my licence but then it picked up the previous configuration. I can now make the file association properly!

Microsoft seem to have screwed up many things in Windows 11! I wish I'd stayed with Windows 10, and Office 2010!

 

Edited by PeterC65
Link to comment
Share on other sites

@James Ritson I have another question about Affinity Photo if you don't mind.

I've been using it with your macros to stack and process DSO images and that all seems to work very well. Yesterday I tried stacking images of the partial Moon disc and stacking failed, only stacking one of the 200 images. Can I stack Moon and Planet images with Affinity Photo or is the stacking feature only suitable for DSO (using star alignment)?

 

Link to comment
Share on other sites

On 09/02/2023 at 09:07, PeterC65 said:

@James Ritson I have another question about Affinity Photo if you don't mind.

I've been using it with your macros to stack and process DSO images and that all seems to work very well. Yesterday I tried stacking images of the partial Moon disc and stacking failed, only stacking one of the 200 images. Can I stack Moon and Planet images with Affinity Photo or is the stacking feature only suitable for DSO (using star alignment)?

 

Hey Peter,

FIle>New Astrophotography Stack will use star alignment exclusively so is only intended for DSO style stacking. You can try File>New Stack to create an aligned live stack instead (it aligns based on image features), although you may want to pre-process your files first if possible (e.g. to 16-bit TIFFs). I haven't actually tried FIT files directly with New Stack so am not sure if it would work. RAW files are fine, but I would still advise pre-processing so you have more control over tones and any corrections.

Once you've created the new stack, you can change the operator quickly on the Layers panel (e.g. Mean, Median, Maximum etc). I've used it in the past to increase SNR for moon shots, but nothing planetary so far.

Thanks,
James

  • Like 1
Link to comment
Share on other sites

2 hours ago, James Ritson said:

FIle>New Astrophotography Stack will use star alignment exclusively so is only intended for DSO style stacking. You can try File>New Stack to create an aligned live stack instead (it aligns based on image features), although you may want to pre-process your files first if possible (e.g. to 16-bit TIFFs). I haven't actually tried FIT files directly with New Stack so am not sure if it would work. RAW files are fine, but I would still advise pre-processing so you have more control over tones and any corrections.

Thanks for this help James, it's much appreciated.

New Stack doesn't recognise FIT files as you suspected, but it did stack TIFF files that I extracted from the original SER capture file using PIPP software.

I noticed in the Affinity Photo Help that New Stack is only intended to stack a few tens of files, and even stacking this number takes a while (with no indication of progress, or even that something is happening!). So I had PIPP select the best 20% (33 frames) then used Affinity Photo New Stack to stack them. The result on a partial Moon disc was similar to, but not quite as good as, the result using AutoStakkert (with the same best 20% setting).

I think the limit to a few tens of frames would make the New Stack feature unusable on stacks of Planets which usually contain hundreds of frames even when selected for quality.

On the plus side, once stacked your Bandpass Sharpening macros are doing a better job than Topaz DeNoise AI, which is saying something!

 

Link to comment
Share on other sites

On 10/02/2023 at 17:18, PeterC65 said:

Thanks for this help James, it's much appreciated.

New Stack doesn't recognise FIT files as you suspected, but it did stack TIFF files that I extracted from the original SER capture file using PIPP software.

I noticed in the Affinity Photo Help that New Stack is only intended to stack a few tens of files, and even stacking this number takes a while (with no indication of progress, or even that something is happening!). So I had PIPP select the best 20% (33 frames) then used Affinity Photo New Stack to stack them. The result on a partial Moon disc was similar to, but not quite as good as, the result using AutoStakkert (with the same best 20% setting).

I think the limit to a few tens of frames would make the New Stack feature unusable on stacks of Planets which usually contain hundreds of frames even when selected for quality.

On the plus side, once stacked your Bandpass Sharpening macros are doing a better job than Topaz DeNoise AI, which is saying something!

 

Hi Peter,

Yes, live stacking aligns and holds all bitmap data in volatile memory (or swap, if required), which means you'll need a fair amount of RAM if you intend to stack hundreds of images—especially in 16-bit precision, which would be necessary for astronomical imaging. If you are using OpenCL acceleration, you'll also be at the mercy of your graphics card's available VRAM, so you may actually want to disable it for this purpose: most 4-8GB cards can easily be saturated!

This is a great edge-case purpose for Apple's ARM hardware: having unified memory means the GPU can access a huge pool of memory (e.g. M1 Max with 64GB), so you can easily stack a huge number of images without slowing down by eating into swap memory.

Glad to hear the macros are putting in work!

By the way, over the weekend I got round to producing a couple of videos that might be of interest to people. One focuses on using StarXTerminator to extract stars onto a separate layer (exploring the benefits of doing so), and the other is very niche: it goes through how Affinity Photo does work in a linear colour space throughout the whole post production process, and explains why the data looks non-linear to the end user. Quite geeky, but might be worth a watch if you're unsure of how Photo processes astronomical data.

Here they are:

 

Thanks again,
James

  • Like 3
Link to comment
Share on other sites

@James Ritson Hello James,

at first, let me thank you for all the effort you put into your macros, tutorials and educational videos. It's an amazing work and I really appreciate it! I think we all are very lucky that we have such a keen astrophotographer as a product expert in Serif. 🙂

Let me attach one my recent shot which I processed using some of your macros. They did a really good job.

But I have a question anyway…

I find tone stretching to be a crucial part of processing and I had some success with your Colour Preserving Tone Stretch. But since the macro "as it is" left me with some artifacts in the brightest parts of the image, I decided to dig into a copy of it, tweak it little bit and figure out what's going on. It was just a matter of adjusting how the tone stretched layer is blended with the original one… So far so good.

But here is the question: is it top secret what formulae you use in the Procedural Texture step? I have some experience with arcsinh-inspired stretching with multiplying and dividing to preserve RGB ratios, based on this excellent article: http://www.markshelley.co.uk/Astronomy/Processing/Colour_Preserving_Stretch/colour_preserving_stretch.html, but when I compare results it seems like you follow a little bit different approach. I'd love to have some deeper insight into it but the edit macro view doesn't allow me that…

Thank you very much for your reply!

export-cam.jpg

Edited by Vojtech Kohout
Typos…
  • Like 5
Link to comment
Share on other sites

  • 2 weeks later...
On 17/02/2023 at 09:45, Vojtech Kohout said:

@James Ritson Hello James,

at first, let me thank you for all the effort you put into your macros, tutorials and educational videos. It's an amazing work and I really appreciate it! I think we all are very lucky that we have such a keen astrophotographer as a product expert in Serif. 🙂

Let me attach one my recent shot which I processed using some of your macros. They did a really good job.

But I have a question anyway…

I find tone stretching to be a crucial part of processing and I had some success with your Colour Preserving Tone Stretch. But since the macro "as it is" left me with some artifacts in the brightest parts of the image, I decided to dig into a copy of it, tweak it little bit and figure out what's going on. It was just a matter of adjusting how the tone stretched layer is blended with the original one… So far so good.

But here is the question: is it top secret what formulae you use in the Procedural Texture step? I have some experience with arcsinh-inspired stretching with multiplying and dividing to preserve RGB ratios, based on this excellent article: http://www.markshelley.co.uk/Astronomy/Processing/Colour_Preserving_Stretch/colour_preserving_stretch.html, but when I compare results it seems like you follow a little bit different approach. I'd love to have some deeper insight into it but the edit macro view doesn't allow me that…

Thank you very much for your reply!

Hi @Vojtech Kohout, thank you and glad you are finding the macros and other content useful!

The formula is not top secret but I use the destructive version of the procedural texture filter because I also use auto levels and some blending to avoid clipping the highlight detail (this is achieved by blending a layer with more aggressive stretching into another beneath it, discarding the highlight detail from the top image). This might be the artefacting that you are referring to, where perhaps the highlight preservation is actually too much?

If you download the legacy macros zip file, which contain V13 of the macros, you can actually run the ND (non-destructive) version of colour preserving tone stretch and it will present a live procedural texture layer. I scrapped this non-destructive version of the macro because I didn't think it was very user friendly. You can however save the equation as a preset.

What you would then want to do is run this CPTS equation on a merged copy of your work (Layer>Merge Visible), then duplicate this layer and run Auto Levels on the top toolbar. This will give you some really nice tone stretching but the highlights will be blown out. You can now blend this layer into the layer beneath using blend ranges or a luminosity mask until you get the highlight preservation just right.

Hope that helps!
James

  • Like 2
Link to comment
Share on other sites

  • 2 weeks later...

Hey all, I forgot to post here earlier this week when I released it, but I put out a workflow video on editing some of Telescope Live's data using the macros:

 

I do see a lot of comments about how the macros/videos don't cater to OSC data workflows (in particular data shot with SLR/mirrorless setups)—the macros actually work just as well for those, so I'll endeavour to do a workflow video using some of my older mirrorless camera data next...

  • Like 4
Link to comment
Share on other sites

  • 3 weeks later...

@James Ritson this has taken a while to get round to - apologies. I think this image illustrates the main issue I've had with affinity 2  and  why I am still using affinity 1. Until playing today I didn't KNOW this was the issue, but I think it's why I've been finding it just not working as I expect - sorry if this massive difference has been explained somewhere, but if it has - it passed me by -and it feels like the sort of change in behaviour that should be in bold everywhere in the release notes or docs surely ?

Here you see a pic I made in affinity 1 on the left. I masked by dogs head, and then did a guassian blur on it. On the right that file (the same file!) has been loaded into affinity 2 - notice that it has flipped the order under the top layer - now the blur layer is before the mask.. BUT the overall affect is the same.

If I change af2 so that the order is the same as AF1 - AF2 displays the results af1 does if you flip them there.

i.e.  the layers seem to be being applied in completely the OPPOSITE direction from af1 to af2. Which is confusing the heck out of me. I suppose now that I know I could adjust... but this seems a massive change and I couldn't find anything in the docs about it ?

But it explains why I just was not getting on with AF2  - putting masks, effects, etc under a pixel layer and I was just getting mad results that made no sense. <insert hair pulling out emoji here>

 

dog.jpg

Edited by powerlord
Link to comment
Share on other sites

On 28/03/2023 at 11:52, powerlord said:

@James Ritson this has taken a while to get round to - apologies. I think this image illustrates the main issue I've had with affinity 2  and  why I am still using affinity 1. Until playing today I didn't KNOW this was the issue, but I think it's why I've been finding it just not working as I expect - sorry if this massive difference has been explained somewhere, but if it has - it passed me by -and it feels like the sort of change in behaviour that should be in bold everywhere in the release notes or docs surely ?

Here you see a pic I made in affinity 1 on the left. I masked by dogs head, and then did a guassian blur on it. On the right that file (the same file!) has been loaded into affinity 2 - notice that it has flipped the order under the top layer - now the blur layer is before the mask.. BUT the overall affect is the same.

If I change af2 so that the order is the same as AF1 - AF2 displays the results af1 does if you flip them there.

i.e.  the layers seem to be being applied in completely the OPPOSITE direction from af1 to af2. Which is confusing the heck out of me. I suppose now that I know I could adjust... but this seems a massive change and I couldn't find anything in the docs about it ?

But it explains why I just was not getting on with AF2  - putting masks, effects, etc under a pixel layer and I was just getting mad results that made no sense. <insert hair pulling out emoji here>

 

dog.jpg

Hi, apologies, I didn't see this reply until just recently. I think what you're seeing is that in V2, we finally made layer Z-order rendering consistent between all three platforms (macOS, iPadOS, Windows). macOS was lagging behind as it was the first iteration of the UI, and it always had some teething issues. Essentially, a mask/enclosure layer stack now renders in the same order as a parent layer, so bottom to top.

What you also need to take into account, however, is the difference between a child and mask layer (or what the developers call an 'enclosure layer').

Child layers are when you drag a layer over the text/label of the parent layer—the child layer's contents or effect then becomes clipped to the parent layer. This is also what happens when you use Arrange>Move Inside to put a layer inside another layer (you can shortcut this to speed up compositing workflows).

Mask/enclosure layers are when you drag a layer over the thumbnail of the parent layer—these are treated as a separate stack and will always render above the child layer stack. You will notice that whenever you create a mask or live filter into a layer, it will be a mask/enclosure layer.

I did a Groups video tutorial recently, and at the end of the video I clarify this difference in behaviour (3m23s): 

 

 

The main takeaway is that V2 is actually correct now—enclosure/mask layer Z-order was always broken in V1 and was quite frustrating to deal with. Because the UI was being overhauled for V2, it was then addressed. In your screenshots above, you've used a mask and live gaussian blur: by default, these will both insert inside the currently selected layer as mask/enclosure layers (not regular child layers), which is why the Z-order is reversed when opening the document in V2. Apologies, it's a bit of a faff, but the rendering order is now the same as it would be for parent layers, so hopefully it's just a case of understanding this change...

Edited by James Ritson
Link to comment
Share on other sites

  • 1 month later...

Hey all, hope you're doing well!

You may have seen that the Affinity apps received a free 2.1 update on Thursday. It's not mentioned in the release notes, but we stealthily added a Linear Fit filter which is a huge help when balancing out the intensity of different monochrome data layers.

I did a quick tutorial on using it:

 

Additionally, although the feature has been present since version 1.10, there was no tutorial on using the File Groups functionality. This is a big time saver when stacking multiple data sets, so I've also done a tutorial on it:

 

No new macro updates as of yet, but I have some ideas moving forward!

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

  • 4 months later...

Heads up James has released a new Macro Version 

Hey all, I'm happy to announce I've just released V16 of my astrophotography macros for Affinity Photo.

The update contains a new tone stretching method, plus several useful post-processing macros for tone compression, super textural enhancement, colour manipulation and more.

Here's the change list:

·         Tone stretching macros no longer perform noise reduction: instead, there are now dedicated macros for denoising post or pre tone stretch. This also lets you use an external plugin such as NoiseXTerminator for superior noise reduction

·         Neutral Tone Stretch: a new tone stretching method that provides a more balanced result with less colour bias

·         Pre-Tone Stretch Denoise for RGB, L-RGB and SHO: performs noise reduction individually on each data layer before tone stretching for effective denoising

·         Post-Tone Stretch Denoise: performs aggressive noise reduction on a tone stretched result

·         Tone Compression & Contrast: a great option for adding contrast to the image whilst compressing bright and harsh highlights

·         Tone Compression & Gamma: similar to the above, except the overall gamma is raised rather than contrast enhancement being applied

·         Polynomial Contrast Curve: a good contrast option for most imagery that avoids brightening highlight detail

·         Punch & Saturation: an all-round option to give an image more contrast and colour intensity

·         Compress Highlights: renders a smooth roll-off for highlights whilst preserving colour intensity

·         Super Texture: renders an over-the-top textural enhancement effect. You can then invert the mask and paint back in where you want it to apply, and also reduce the layer opacity if the effect is too strong

·         Vivid Colour Boost: uses a weighted RGB transform to significantly enhance colour intensity, with a particular red bias

  • Like 2
Link to comment
Share on other sites

  • 4 months later...

I would like to report that Facebook has a new astro group, Affinity Photo Astrophotography. It is obviously devoted to all those good things that James Ritson brings us.  Hope to see you there. Regards, Irving

  • Like 3
Link to comment
Share on other sites

  • 2 weeks later...

Hello all,

It's been a while, but I've just released V17 of the macros with some interesting new features. As usual, you can grab the macros for free here: https://jamesritson.co.uk/resources.html

Here is the full change list:

  • Live Tone Stretch for a non-destructive approach to tone stretching (no layer merging required), with configurable stretch and black point parameters, and additional shadow and mid-tone contrast layers to further control tones
  • Generate Weighted Luminosity Layer, which creates a merged top layer of your image so far that maintains the current luminosity (brightness). You can then add all manner of adjustments and filters beneath this layer to manipulate colour detail without affecting brightness. Great for images with tricky dynamic range (e.g. lots of stars, or bright nebula areas)
  • Live Denoise, which performs non-destructive moderate denoising (to be applied after tone stretching and general editing), and also blends in procedural soft noise to help reduce the loss of textural detail

 

  • Rename Stacked Layers, to speed up the layer renaming process which is required for the various composition setup macros to work (e.g. L-RGB, SHO, HSO). Please see video snippet and readme PDF for more information on these macros
  • Dynamic Narrowband Mix: An implementation of the idea to dynamically mix Ha, SII and OIII colour data (based on a blog post from The Coldest Nights). This option tends to work best with SHO mapped data
  • Post-Stretch Gamma Mixing: a simple live gamma transform filter that can be applied after tone stretching to further alter the balance of each colour channel. The blending is restricted to a specific tonal range, however, allowing you to raise the brightness of nebula detail without affecting dark or bright areas
  • Channel Swap: quick presets you can apply to completely swap channel data, allowing you to audition different narrowband colour combinations

 

  • Greyscale Solar to False Colour Setup, intended specifically for greyscale solar imagery of the sun. This macro will take a greyscale document, convert it to full colour (RGB 16-bit), and apply various operations including highlight recovery, colour mapping, brightness boost, yellow colour enhancement, contrast softening and structure enhancement
  • Moon Processing Workflow, designed for stacked imagery of the moon using Affinity Photo’s File>New Stack functionality, which lets you align, stack and average pixel content using Median and Mean operators. It performs a number of steps including colour and luminosity separation, HSL layers to saturate colour detail, non-destructive defringing for colour fringing around edge detail, structure and highlight detail enhancement, and final band-pass and fine detail sharpening

 

The downloads page also contains some new video snippets that show how the new features work. As always, I hope people find these macros useful!

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

Hi James,

thank you very much for all the effort you put into your macros, they are excellent. I share a shot of 12P/Pons-Brooks (taken with a Nikon D750 and Samyang 135 mm lens) that was stacked, stretched and further processed in Affinity. Your macros were very helpful.

project-fb.thumb.jpg.b3a6cd362b3af7390f63943f02c7cd71.jpg

I only have two questions. They're not particularly related to the macros, but I hope you don't mind...

1) There is a bug in the HSL adjustment tool that doesn't allow you to adjust hue ranges when working with a 32-bit document. The bug is known, but unfortunately not fixed yet: https://forum.affinity.serif.com/index.php?/topic/177023-hsl-adjustment-layer-hue-target-range-selection-not-working/.

Is there any workaround?

2) I like the background removal tool in Affinity and use it a lot. What I'd love to have would be a non-destructive variant of that tool. Sometimes setting of the background points takes some effort, and once confirmed, when I realize I made a mistake somewhere, I have to go through the whole process again. Is there a way how to reuse the background points placement? A non-destructive variant of the tool would probably be the best solution, but maybe you can give me some advice?

Thank you very much, Vojtěch

Edited by Vojtech Kohout
Typo
  • Like 2
Link to comment
Share on other sites

  • 2 weeks later...

Beautiful photo of Pond-Brooks, Vojtěch.

I use Affinity Photo 2.x at work and had no idea these astrophotography macros existed. I will keep that in mind if I get back into imaging.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. By using this site, you agree to our Terms of Use.