Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Does anyone here work on Superslicer?

    Scheduled Pinned Locked Moved
    General Discussion
    14
    87
    8.6k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • oliofundefined
      oliof @oliof
      last edited by

      I filed a feature request with Cura https://github.com/Ultimaker/Cura/issues/11120

      oliof created this issue in Ultimaker/Cura

      closed QOI format for image preview #11120

      <>RatRig V-Minion Fly Super5Pro RRF<> V-Core 3.1 IDEX k*****r <> RatRig V-Minion SKR 2 Marlin<>

      oliofundefined 1 Reply Last reply Reply Quote 2
      • oliofundefined
        oliof @oliof
        last edited by

        I did check with the Cura main dev and he said QOI image support could be done in a Cura plugin. So anyone with a bit of holiday break time and decent python knowledge could try to give this a cut (-:

        <>RatRig V-Minion Fly Super5Pro RRF<> V-Core 3.1 IDEX k*****r <> RatRig V-Minion SKR 2 Marlin<>

        resamundefined 1 Reply Last reply Reply Quote 0
        • resamundefined
          resam @oliof
          last edited by

          @oliof throwing my plugin https://github.com/Kriechi/Cura-DuetRRFPlugin/ into the mix as a well-known and popular Duet RRF plugin for Cura.

          @dc42 would you mind pointing me towards a spec on how PanelDue wants to read the QOI data from the gcode file? Or is this yet to be defined?

          resamundefined 1 Reply Last reply Reply Quote 3
          • merillundefined
            merill @dc42
            last edited by merill

            @dc42 said in Does anyone here work on Superslicer?:

            Does anyone here know their way around the Superslicer/PrusaSlicer source code well enough to make a change? The change I have in mind is that when RepRapFirmware output is selected, the thumbnail images embedded in the GCode file would be in QOI image format (see https://github.com/phoboslab/qoi) instead of .png format. That would enable us to display thumbnail images on PanelDue, because QOI format doesn't need a large RAM buffer to decompress the images.

            Hi
            I'm the dev of superslicer.
            I encourage you to post an issue on the gihub for feature request.
            (https://github.com/supermerill/SuperSlicer/issues/new/choose)

            For changing the output format, currently we use zlib and a better version of https://gist.github.com/908299
            Adding the QOI format shouldn't be too hard, from what i can read from their page. Just hoping it will compile without problem on windows, linux & macos.

            the line to change is Gcode.cpp:941

            1 Reply Last reply Reply Quote 4
            • resamundefined
              resam @resam
              last edited by

              I believe I have a working Cura integration that takes a 320x240 snapshot of the scene, encodes it as QOI, and puts it at the beginning of the gcode file before uploading it.

              @dc42 just let me know where or how you want to parse it: special M-code? magic comment?

              1 Reply Last reply Reply Quote 3
              • botundefined
                bot
                last edited by bot

                I appreciate the references very much! 🙂

                But, yeah, merill might be much better at constructing this architecturally. While I'm definitely getting comfortable with the PrusaSlicer codebase, merill has much more experience.

                I'd be happy to help with any grunt-work, though. Testing, fixing things up, doing things that dc42 and merill tell me to, etc.

                @dc42 if you have any interest in setting up an IDE for working on PrusaSlicer, they use VS 2019, community edition is free and works. I've also got it working under Visual Studio code, with a bunch of cmake plugins and stuff. I'm sure it wouldn't be hard to get it into your IDE of choice, as long as it integrated with cmake to some extent.

                Setting the project up in VS 2019 is dead simple, tho. Microsoft aside, the experience of working on PS for the past year and a bit has been fantastic, due largely in part to intellisense guiding me around.

                I digress, you know this I bet. But I'd be happy to answer any questions you have about the codebase or do any tedious tasks you need done for features you want.

                *not actually a robot

                1 Reply Last reply Reply Quote 3
                • arhiundefined
                  arhi @hestiahuang
                  last edited by

                  @hestiahuang said in Does anyone here work on Superslicer?:

                  @dc42 said in Does anyone here work on Superslicer?:

                  able us to display thumbnail images on Panel

                  Sounds great! Only SS and PS? How about S3D and IdeaMaker?

                  Both s3d and IdeaMaker are closed source so none of us can add anything to them. When at least one other slicer support this and the paneldue is parsing this we can request on the s3d and ideamaker forums for them to support this feature too.

                  Now, s3d is dead so nothing will happen there for sure, IdeaMaker is awesome (my slicer of choice) but they are pretty slow to implement features that are totally unusable for their own printers. They only recently added octoprint integration (they had network upload and network printing with their own custom printers for years) .. but since they already embed some image in gcode if I remember correctly for their own printers this might go faster than octoprint integration 🙂

                  1 Reply Last reply Reply Quote 0
                  • oliofundefined
                    oliof
                    last edited by oliof

                    @dc42 @resam Ultimaker Cura dev has answered on my feature request, I will copy that here:

                    I think PNGDec is a much more friendly option for PanelDue. It requires even less memory and the PNG format actually has more than a month of battle-testing behind it. There's a decent chance that this image format gets forgotten as "that nice one from December 2021" like most new image formats. But of course, it's not up to us to decide for them. We just need to try to integrate with all of these printers and their formats where feasible.

                    Since this is only going to be relevant to support certain printers (if those printers start needing it) and we can't test with those printers, we're not likely going to be implementing this at Ultimaker. What's more, Ultimaker itself will not allow us time to implement this since they don't benefit from it either. So we'll have to defer this. It's not going to get any priority, though it would be nice to have (as long as it doesn't increase complexity of code maintenance too much).

                    So maybe consider pngdec and the png format?

                    <>RatRig V-Minion Fly Super5Pro RRF<> V-Core 3.1 IDEX k*****r <> RatRig V-Minion SKR 2 Marlin<>

                    dc42undefined 1 Reply Last reply Reply Quote 0
                    • dc42undefined
                      dc42 administrators @oliof
                      last edited by dc42

                      @oliof my developers tell me that unfortunately .PNG format needs a 32K RAM buffer to decode it, because it uses LZW compression. That's why we can't use it for this purpose.

                      For example, the documentation of PNGDec for Arduino says it only works on processors with at least 49kb of RAM. Also, the PNGDec Arduino library is several thousand lines of C++, compared to 300 claimed for a QOI decoder.

                      Duet WiFi hardware designer and firmware engineer
                      Please do not ask me for Duet support via PM or email, use the forum
                      http://www.escher3d.com, https://miscsolutions.wordpress.com

                      resamundefined 1 Reply Last reply Reply Quote 1
                      • resamundefined
                        resam @dc42
                        last edited by

                        @dc42 Here is a QOI and a PNG of the same Cura scene (=sliced model) rendered in 320x320 pixels generated by my Cura-DuetRRFPlugin:

                        snapshot.png

                        snapshot.qoi.txt (just renamed to .txt for uploading here)

                        And here my changes to make it happen on the next branch: https://github.com/Kriechi/Cura-DuetRRFPlugin/tree/next

                        It is not embedding anything yet into the gcode file (@dc42 did you settle on a file spec for that yet?), so instead it just creates a few files in your ~/Downloads/ folder.

                        The plugin also logs extensively to the usual cura log file - in case you get an error, please attach it.

                        dc42undefined 1 Reply Last reply Reply Quote 2
                        • dc42undefined
                          dc42 administrators @resam
                          last edited by dc42

                          @resam thanks for that! What I would like is for the QOI thumbnail image to be base64-encoded and added to the GCode file as a specially formatted comment - just like PrusaSlicer/SuperSlicer do except that they start from PNG format. Both PNG and QOI have (different) magic bytes at the start of the file, so we can use them to check whether the format is QOI.

                          The SuperSlicer code that does the base64 encoding and writing to file is at line 921 of https://github.com/supermerill/SuperSlicer/blob/master/src/libslic3r/GCode.cpp.

                          PS - here is an example of thumbnail comment blocks generated by SuperSlicer (these are still encoded in PNG format). SuperSlicer puts it close to the start of the file, after the "generated by" comment.

                          ;
                          ; thumbnail begin 16x16 844
                          ; iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACPklEQVR4AYVT32vTUBTOP6KFqaC+C2
                          ; Pbi/+CvyZ7moiPysA9CGotdqtx7di6pjRNm9r0l41Lmy5p2rWElrYECgGh4lOf8uZr/oNrvsCROSY+
                          ; XM65957zne/e8x2u3++rs9lMMQyjJcuyPRqNalf5w+Hwa7vd1uv1es+yrG+TyaSCXM627QYuVFU1YR
                          ; H8Lx/JpmlqBA4QDodwHMf5Ah+VkHSVDwswxBIoR7RAFUCwT3ne+yTLjqZpnXK5POArldBH9fF4XEUM
                          ; gLEPAXAAEBzuqOqPDUnyI/v77Fk6vUzk8856NutXLMvEmxFP1WFDAFwQvU1R9FayWbaWyfg7krRAla
                          ; iuz9dOTnwUooVisCEAaBIy/EgiwW4KAlvP5fyHkuTdi8X8t8fH84/5/DyjqvZfANul0hKUN/b2/OeF
                          ; whLJm7Wat3V66t3K5diDTMZrdDrmowBoNZXy76TT7LGm/XqlKD9fx+MLLmiu8eboyH2vKO4TQfBeiu
                          ; JC63ZbW4WCd79a9VcODthqMul/7nan9V6vE+ohuE/p+tQ6P1c5QRCm+AOIA3a32fx+LRplt4Mn3Dg8
                          ; ZHdLJXY9HmfNszOduoRY/FnYRnwSDtEe+C+CJ6EDjVbLeJdKubvF4iLC8+yDKLpIGAwGTQBR6zlUxQ
                          ; G1BhS3k8kl+byiOACE8i5LOdQBpAwkCAVgJF+agVix6PKiOCUpk2bAGLl/pEy0/jdM2GP4iA1H1InW
                          ; RV1cHiaSOyWH00hVKREBtCfB0Mhf/CdYrN/5dKVwK+5qBwAAAABJRU5ErkJggg==
                          ; thumbnail end
                          ;
                          
                          ;
                          ; thumbnail begin 220x124 12368
                          ; iVBORw0KGgoAAAANSUhEUgAAANwAAAB8CAYAAAACRt5vAAAkAUlEQVR4Ae2dSZdcxZXH32cAGzcaql
                          ; RVGhASGGNxjt3GbYNtZhvMoEIWAolJQqiQSmgGyoAEEqZAwggQNni2z/HGvWs2vfI5XvVKW69q3av8
                          ...(lots more lines here) ...
                          ; +5EYPU6Oqjuf08VWO1wzxcz7fJ63JSyppUeuqIGoq3czTCxqlRCxfeaPB5rkmpx1CCqabG2POYJRpD
                          ; faHKYR6xbJDv87EbDDVoqkapM1bmlaQRQN345JMdGRLSHGxS6rHWsklNjSnZ8xoam9iFsS/Ldc98hP
                          ; Gtj6SGJKEKSamsK00jPJcvJPyyHvVlhRxGTkjr0qEGjiqOyE31aj6TYUdOg/o08v+XlPmlxsnXiJ9L
                          ; NPrWimseOIKy/g8uwR/l/+4AzAAAAABJRU5ErkJggg==
                          ; thumbnail end
                          ;
                          

                          Duet WiFi hardware designer and firmware engineer
                          Please do not ask me for Duet support via PM or email, use the forum
                          http://www.escher3d.com, https://miscsolutions.wordpress.com

                          resamundefined 1 Reply Last reply Reply Quote 0
                          • resamundefined
                            resam @dc42
                            last edited by resam

                            @dc42 Here the file beginning with a 320x320 QOI (about 37kB, so only the first few lines):

                            ;FLAVOR:RepRap
                            ;TIME:4199
                            ;Filament used: 3.57983m
                            ;Layer height: 0.15
                            ;MINX:69.693
                            ;MINY:92.957
                            ;MINZ:0.2
                            ;MAXX:174.818
                            ;MAXY:152.057
                            ;MAXZ:7.55
                            ;POSTPROCESSED
                            ;Generated with Cura_SteamEngine 4.12.1
                            ;Exported with Cura-DuetRRF by Thomas Kriechbaumer 1.2.5
                            ; thumbnail begin 320x320 37140
                            ; cW9pZgAAAUAAAAFABAAA/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f
                            ; 39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39
                            ; /f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f
                            ; 39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39
                            ; /f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f
                            ; 39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39
                            ; /f39/f39/f39/f39/f39/f396P8aFQYa/4BnHYIA/f39/f3F/xoVBRr/06sw1/+DaiCnAP39/f39xP
                            ; 8aFQYb/9auMNr/+so5//9xXBp7AP39/f39wz//06sw2P/6yzn/wP9hTxduAP39/f39wgoWKcH/OzAR
                            ; bgD9/f39/cEK/9SsMNgpwv83LxdVAP39/f39wP85Lg06FinCnnn/EA4GNQD9/f39/f86Lw07/+y/Nf
                            ; Apw//3yDj+/wQEBCkA/f39/fz/OzANPP/uwTbzKcT/5rs2+wD9/f39/P86Lw08AinF/8WhMfsA/f39
                            ; /fsQ/+/BNvMpxv+7mCzQAP39/f36EP/tvzXx//vLOf/H/450JMMA7/9CNQ9D/yoiCSv/AAAAAP39/f
                            ; 3G/zwwDT09LMj/jHIisADs/wcFAQf/RTgPRv/AnCvE//nKOP7/IhwKRwD9/f39xf9HORBI/+3ANfEs
                            ; yf9nVBqKAOr/AwIAA/9hThZj/9WtMNkpwP7bsjT/CAgFLgD9/f39xP9pVRdq//rKOP7/+8s5/8r/Vk
                            ; cYigDo/xANAxD/c10adf/asDHeKcL+pYct/wICAQ4A/f39/cP/aFQXav/4yTj8LMv/RjkRWADm/w8M
                            ; Aw//emMbfP/pvDXtLMT/b10k9v8BAQELAP39/f3C/2lVF2sS//vLOf/M/x4aC1EA5P8iHAcj/5Z5Ip
                            ; n/6r017izFnXr/Ny8YwgD9/f3L/xcTBRj/Ix0IJADxEzEszf8cFwg5AOL/HxkHH/+ZfCKc//LEN/Ys
                            ; ... snip
                            ; thumbnail end
                            
                            T0
                            M190 S60
                            M104 S215
                            M109 S215
                            ...
                            

                            Latest changes pushed to https://github.com/Kriechi/Cura-DuetRRFPlugin/tree/next

                            1 Reply Last reply Reply Quote 4
                            • botundefined
                              bot
                              last edited by bot

                              I'm working on getting this up and running in PrusaSlicer. It's not going smoothly so far but that is my fault. I'll keep trying and let you know if I give up.

                              *not actually a robot

                              1 Reply Last reply Reply Quote 0
                              • botundefined
                                bot
                                last edited by bot

                                Ok so I have what appears to be a working first version.

                                But, I have not figured out a way to verify that the encoded base64 is indeed the QOI image...

                                ; generated by PrusaSlicer 2.4.0+n8 on 2022-01-02 at 07:14:16 UTC
                                
                                
                                ;
                                ; thumbnail begin 32x32 1332
                                ; cW9pZgAAACAAAAAgBAD+WVlZrIj+kJCQsYj+eHh4hYidiMB/wSiuiKeIIP53YFOb1QrBO8CliKSIKD
                                ; ssVcOsiLiImohAs4iSiIeICsGjiBHAQP6UZ07+xmw5/qdcMP6BW0UKwCgzwJqIO8Aswwr+fn5+iogZ
                                ; CiAXp4gNGRUgFf5qXlj+q2hCMsAGwP6dXDX+aF9ZERUZCjvBLMA7pIijiBU7wArAFQG1iDkNN/6RZE
                                ; sywgbB/p9dN/6DXUcZCsI7wBmliBU7KDvACsEkAR7+iH13/q1qQzLDBsP+lFw7/mVcVv5bW1vBGaOI
                                ; AjcswLeIMwrAGTMgFf58Zlkyxf6nXDDE/p5cNf6BXEYZKDMCGTvALCAFmYgVETM3/pFkSjLGBsYAER
                                ; UKwDvBCiSxiD2OiDH+uWo9MscGx/6eXDb+ZVtWCsA7wRkzIDr+nG9VMskGyA7+gVtFCsA7GQKciBn+
                                ; q2hBMsr+p1wwyHrADhmjiAIZOwodMsr+p1wwyAnAFRECGTvBHTLKBscJwf6hXzn+bm5uNzvC/rhqPT
                                ; LKBscJwf6gXjgkwDcsChkaMsmhmJkbBsUJwhUKKKOILAqoiP66bD8yyKKXo5fAGwbECcFr/p5cNgo7
                                ; GTumiKKI/rlqPjLGfqOoNcKdaf6wYTMGwnrBEP6eXDY7wKaIf0A7GjLFDDXFnWkb/qdcMMB6wRDA/p
                                ; 5cNhmriDkKLMAaMsM6o5c1yJ1p/qxfMZ16wRDAFf5zc3OsiC+SiMH+uGk9/sZsOcIMNcudaRuWDMAQ
                                ; wP6lYj3+lJSUESxAwB0VMsA6IzXOmCsQwf6lYz3+fX19p4iDiA7BFTIENdGdapYMmCz+nlw2KLOItY
                                ; j+VlZWCsAaDDXUGxUdLCCQiCwC/qZsTDXW/qFoRh3ALMA3nYj+Z1tU/pNlSjXOZsT+lGZMDsA7pogo
                                ; DkDB/mVZU/6/bkA1wWbN/r5tP/6Bal3+bW1tkogZJAqZiMJ/wP5nXFX+mGlP/s1wPM7+oWdGDiwvr4
                                ; iXiDs/nYjCIX8sp4j+e2NW/r9uQP7NcDzK/r5tP/50XVA/wCwVEaiIQDuZiFXAEqKIChk/MP5lWVL+
                                ; kWNJ/s1wO8j+r2pCP8AOCjcdMCwRCQMOP8AZHRLAIcH+k2RKKcb+kWJIPxnAfxk/MCHAMDeTiCE3FT
                                ; ADwBLBIaeI/n9zbP7Ec0Qpwv6+bD7+cltOITAKAjcwIcISIRIsHT8wA8ISKLmIAf5pXVb+kmRJKcD+
                                ; kGFHIcA/ChkwwSESwSEOo4ghnIjAf8ADNDCxiLSILxIDwP5iV1D+c1tOEsAOGR0SwiE/EjAdLAAAAA
                                ; AAAAAB
                                ; thumbnail end
                                ;
                                ; 
                                

                                https://github.com/n8bot/PrusaSlicer/commit/e087f3bf78d6822d36900bcd53b0a0df6d00b24d

                                0 n8bot committed to n8bot/PrusaSlicer
                                First try QOI

                                *not actually a robot

                                1 Reply Last reply Reply Quote 1
                                • botundefined
                                  bot
                                  last edited by

                                  Well, I was able to confirm that I can generate and output a QOI image to a file from prusaslicer. and I can confirm that when that file is converted to base64 encoding, the outputted string to gcode is identical. So, indirectly I confirm that the implementation works.

                                  However, there still might be issues. It's a start.

                                  Now, I have to integrated it only when RRF is selected.

                                  *not actually a robot

                                  botundefined 1 Reply Last reply Reply Quote 1
                                  • botundefined
                                    bot @bot
                                    last edited by

                                    The test image file seems to be upside down when I view it in this viewer I got from some random GH repo. I have done nothing that seems like it would influence the upside-downness of the image, so I think that might just be a problem with the image viewer. In any case, it would be easy to flip the image if needed.

                                    ef842900-6ca4-4ffb-b695-603d5c303338-image.png

                                    *not actually a robot

                                    resamundefined 1 Reply Last reply Reply Quote 0
                                    • resamundefined
                                      resam @bot
                                      last edited by

                                      @bot I think my first try also had it flipped in Y. The PNG encoder used in PrusaSlicer has a flip parameter that was active, so I'm pretty sure that QOI just expects its pixel data the other way around.

                                      From your base64 sample posted above, unfortunately I have to report that the qoiconv tool just produces visual gibberish when converting to PNG.

                                      botundefined 1 Reply Last reply Reply Quote 0
                                      • botundefined
                                        bot @resam
                                        last edited by bot

                                        @resam did you decode it from base64 first?

                                        *not actually a robot

                                        resamundefined 1 Reply Last reply Reply Quote 0
                                        • resamundefined
                                          resam @bot
                                          last edited by

                                          @bot of course! It seems to be valid QOI with 32x32 pixels, just that the color data doesn't resemble a meaning 3D model... unless that is intended for your test?
                                          qoif-bot-test.png

                                          botundefined 1 Reply Last reply Reply Quote 0
                                          • botundefined
                                            bot @resam
                                            last edited by

                                            @resam Hmmm no that is not intended at all. But actually that output was from an older test. Can you try this?

                                            ; generated by PrusaSlicer 2.4.0+n8 on 2022-01-02 at 08:52:13 UTC
                                            
                                            
                                            ;
                                            ; QOI thumbnail begin 64x64 1496
                                            ; cW9pZgAAAEAAAABABAAAwv9QUFB//6Ghof//jY2N3yUA7v88PDxg/6Ghof8Y/ygoKEAAx/8UFBQg/3
                                            ; l5eb8kJQDT/xkNByD/lFErv/+SUCrf/xULBiD/AAAAANL/FBQUIP95eXm/JAz/FBQUIADJDCUk/42N
                                            ; jd//KCgoQADQ/2M2HH//xmw5/8D+p1wwAf9TLhh/ANAYJMAlAM0M/42Njd/AJQDNHTMywQbBAf8VCw
                                            ; Yg/wAAAADNJSQY/ygoKEAAzwwlJP+NjY3fDADK/zEbDkAywwbCAf9TLhh/AMoM/3l5eb8k/2VlZZ//
                                            ; AAAAANP/KCgoQP+NjY3fwCUAyDAyxAbEPADIJSQY/ygoKEAA1f8UFBQgJST/eXl5v/8UFBQgAMQd/6
                                            ; 1eMt8yxQbFAf8qFwxAAMQM/3l5eb8kDADZJST/jY2N3yUAwjAyxwbGATwAwv8oKChAJMAlANv/FBQU
                                            ; IP+NjY3fJCUAHTMyyAbIAf8VCwYg/wAAAAAlJBj/KCgoQADdDCUk/5t5Zt8yygbJAf6QalQkJQDgHT
                                            ; MyywbL/3xOMr8A4P8xGw5AMs0GzAH/PyISYADdMDLOBs7/Uy4YfwDaHTMyzwbPAf8VCwYg/wAAAADX
                                            ; MDLRBtABPADUHTMy0gbS/31FJL//FQsGIP8AAAAA0f8xGw5AMtQG0/+SUCrf/1MuGH8AzzAy1QbVPA
                                            ; DMHRAy1gbWAf8VCwYg/wAAAADKEDLXBtcBAMoQMtcG1wEAyhAy1wbXAQDKEDLXBtcBAMoQMtcG1wEA
                                            ; yhAy1wbXAQDKEDLXBtcBAMoQMtZ+/qxfMQbWAQDKEDLVoZiklp1pmCwG1QEAyhAy1KKXNcIbBtQBAM
                                            ; oQMtI6o6g1xAkrBtIBAMoQMtEMNccJGwbRAQDKEDLPOqOXNcoJKwbPAQDKEDLOBDXNCRsGzgEAyhAy
                                            ; zDqimDXQlQ0GzQEAyhAyywQtNdIJ/rBhMwbLAQDKEDLKDDXVCRsGygEAyRj/wXNG/zLIOiM12AkrBs
                                            ; gBJQDHJSQhMscMNdsJGwbH/qZlPiQlAMT/FBQUIP+NjY3fJCUQMsU6IzXemzorBsUSJSQYDADBJSQY
                                            ; /ygoKEAAEDLEBDXhCRsGxAEADP+NjY3fwCUA/3l5eb8kDADBEDLDopc15BsGwwEAwP8UFBQgJSQYJP
                                            ; 88PDxgAMIQMsE6IzXmCSsGwQEAwiX/oaGh/wwAwxAywKKXNekJGwbAAQDD/xQUFCAAxBA6IzXsCSsB
                                            ; AMr/r2Az3zXvCf+lWzDfAMr/Gg4HIP+zYzTfNe4J/zMcD0AAyyX/ZjgefzXs/4BHJZ8Azw4JNegJDg
                                            ; DRJRE15v+aVS2/ANURNeQRANclCTXgCQ4A2SURNd4RAN0lCTXaCQ4A3yURNdgnAOMRNdYRAOUlJzXS
                                            ; CSUA5yURNdARAOslCTXMCQ4A7SURNco7APH/TSoWYDXHCQ4A8yU7NcQnAPcRNcIRAPklCcAOAPslAN
                                            ; 4AAAAAAAAAAQ==
                                            ; thumbnail end
                                            ;
                                            ; 
                                            

                                            *not actually a robot

                                            resamundefined 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA