Skip to content
  • Categories
  • Recent
  • Popular
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse

NodeBB-ActivityPub Bridge Test Instance

  1. Home
  2. Categories
  3. General Discussion
  4. AP Test (community.nodebb.org)
  5. Pre-Alpha ActivityPub-related bug reports

Pre-Alpha ActivityPub-related bug reports

Scheduled Pinned Locked Moved AP Test (community.nodebb.org)
bugsnodebbacti
138 Posts 18 Posters 1.3k Views
  • 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.
  • crazycells@community.nodebb.orgC crazycells@community.nodebb.org

    @julian thanks for the answer. my guess is that since google or bing do not have any contribution to the fediverse or any activitypub adopting sites (or do they?), maybe they will simply not care enough or change anything about their calculations... lol...

    additionally, I believe there is this bug πŸ› ... edited federated posts are not updated on other sites? This is what it looks like on mastodon social however I have edited the second to the last word as ranks 4 days ago?

    Screenshot 2024-04-26 at 16.00.49.png

    julian@community.nodebb.orgJ This user is from outside of this forum
    julian@community.nodebb.orgJ This user is from outside of this forum
    julian@community.nodebb.org
    wrote on last edited by
    #63

    @crazycells said in Pre-Alpha ActivityPub-related bug reports:

    edited federated posts are not updated on other sites?

    We're sending the appropriate activity out (an Update activity) whenever a post edit takes place.

    I believe @oplik0 worked on this a bit, so if there are issues perhaps he may be able to speak to that.

    However there is no guarantee that updates are properly handled across the fediverse. Best effort, I guess πŸ™‚

    crazycells@community.nodebb.orgC 1 Reply Last reply
    0
    • julian@community.nodebb.orgJ julian@community.nodebb.org

      @crazycells That's a good question, and not one I'm sure I have the answer for.

      It's something I wonder about because it has been said that search engines will penalize sites that contain repetitive content. Does that mean we may see downweighting because federated content can be found word-for-word elsewhere? I don't know.

      I think what might be a good practice would be for a site to refer back to the original site if available.

      For example, if you inspect the source for this topic, you'll see that it contains a canonical reference:

      <link rel="canonical" href="https://community.nodebb.org/topic/17867/pre-alpha-activitypub-related-bug-reports?page=3" />

      If this topic appears elsewhere (and it does, on the ActivityPub SocialHub), then it would be better if that site also provided a canonical reference back to community.nodebb.org, but that's not a requirement anywhere at this point in time.

      That way, a search engine upon encountering a site, would be able to learn the appropriate original source and weight it accordingly.

      stevebate@socialhub.activitypub.rocksS This user is from outside of this forum
      stevebate@socialhub.activitypub.rocksS This user is from outside of this forum
      stevebate@socialhub.activitypub.rocks
      wrote on last edited by
      #64
      Hi @devnull . I haven't been following the forum topic federation discussions very closely, so this may be a silly question. Are forum topics going to be fully federated or just replicated (which is not quite the same thing, even for 2-way sync)? For example, if in the future there are 1000's of NodeBB instances running and there's a topic X, is it possible that the posts for that topic could be coming from multiple NodeBB instances (or other instance implementations)? If so, a topic-level canonical link will not work. Google currently indexes individual Mastodon posts (at least some of them, not sure about all of them). The AP Note identifier is the canonical URL in this case. (Google also indexes actor profiles in some cases, but that's a different discussion. ) FWIW, this is the canonical link I see for this topic: I'm guessing the canonical link you quoted is on the NodeBB side? Since these are different canonical links, I'd expect that Google will consider these (SocialHub and NodeBB topics) to be different web resources with mostly replicated content.
      crazycells@community.nodebb.orgC julian@community.nodebb.orgJ 2 Replies Last reply
      0
      • julian@community.nodebb.orgJ julian@community.nodebb.org

        @crazycells said in Pre-Alpha ActivityPub-related bug reports:

        edited federated posts are not updated on other sites?

        We're sending the appropriate activity out (an Update activity) whenever a post edit takes place.

        I believe @oplik0 worked on this a bit, so if there are issues perhaps he may be able to speak to that.

        However there is no guarantee that updates are properly handled across the fediverse. Best effort, I guess πŸ™‚

        crazycells@community.nodebb.orgC This user is from outside of this forum
        crazycells@community.nodebb.orgC This user is from outside of this forum
        crazycells@community.nodebb.org
        wrote on last edited by
        #65

        @julian said in Pre-Alpha ActivityPub-related bug reports:

        @crazycells said in Pre-Alpha ActivityPub-related bug reports:

        edited federated posts are not updated on other sites?

        We're sending the appropriate activity out (an Update activity) whenever a post edit takes place.

        I believe @oplik0 worked on this a bit, so if there are issues perhaps he may be able to speak to that.

        However there is no guarantee that updates are properly handled across the fediverse. Best effort, I guess πŸ™‚

        thank you for your efforts. are likes and dislikes on a post also federated out?

        1 Reply Last reply
        0
        • stevebate@socialhub.activitypub.rocksS stevebate@socialhub.activitypub.rocks
          Hi @devnull . I haven't been following the forum topic federation discussions very closely, so this may be a silly question. Are forum topics going to be fully federated or just replicated (which is not quite the same thing, even for 2-way sync)? For example, if in the future there are 1000's of NodeBB instances running and there's a topic X, is it possible that the posts for that topic could be coming from multiple NodeBB instances (or other instance implementations)? If so, a topic-level canonical link will not work. Google currently indexes individual Mastodon posts (at least some of them, not sure about all of them). The AP Note identifier is the canonical URL in this case. (Google also indexes actor profiles in some cases, but that's a different discussion. ) FWIW, this is the canonical link I see for this topic: I'm guessing the canonical link you quoted is on the NodeBB side? Since these are different canonical links, I'd expect that Google will consider these (SocialHub and NodeBB topics) to be different web resources with mostly replicated content.
          crazycells@community.nodebb.orgC This user is from outside of this forum
          crazycells@community.nodebb.orgC This user is from outside of this forum
          crazycells@community.nodebb.org
          wrote on last edited by
          #66

          @stevebate@socialhub.activitypub.rocks hmm... I cannot see the canonical link you posted here...

          thanks for the explanation, if I understand it correctly, this means that search engines will probably penalize the websites for federation with the current settings, right?

          julian@community.nodebb.orgJ 1 Reply Last reply
          0
          • crazycells@community.nodebb.orgC crazycells@community.nodebb.org

            @stevebate@socialhub.activitypub.rocks hmm... I cannot see the canonical link you posted here...

            thanks for the explanation, if I understand it correctly, this means that search engines will probably penalize the websites for federation with the current settings, right?

            julian@community.nodebb.orgJ This user is from outside of this forum
            julian@community.nodebb.orgJ This user is from outside of this forum
            julian@community.nodebb.org
            wrote on last edited by
            #67

            @crazycells it may, it may not, nobody knows exactly how search engines rank sites 😞

            1 Reply Last reply
            0
            • julian@community.nodebb.orgJ julian@community.nodebb.org

              I may regret creating this topic but here goes.

              If you experience a bug or other unexpected behavior while using NodeBB and its related ActivityPub integration, please post it here so it can be tracked and resolved.

              No formal process as of yet, and we're still at pre-alpha so expect many things to be broken or unavailable πŸ˜…

              the-skyfoxx@community.nodebb.orgT This user is from outside of this forum
              the-skyfoxx@community.nodebb.orgT This user is from outside of this forum
              the-skyfoxx@community.nodebb.org
              wrote on last edited by
              #68

              image.png

              from from - repeated word

              1 Reply Last reply
              0
              • stevebate@socialhub.activitypub.rocksS stevebate@socialhub.activitypub.rocks
                Hi @devnull . I haven't been following the forum topic federation discussions very closely, so this may be a silly question. Are forum topics going to be fully federated or just replicated (which is not quite the same thing, even for 2-way sync)? For example, if in the future there are 1000's of NodeBB instances running and there's a topic X, is it possible that the posts for that topic could be coming from multiple NodeBB instances (or other instance implementations)? If so, a topic-level canonical link will not work. Google currently indexes individual Mastodon posts (at least some of them, not sure about all of them). The AP Note identifier is the canonical URL in this case. (Google also indexes actor profiles in some cases, but that's a different discussion. ) FWIW, this is the canonical link I see for this topic: I'm guessing the canonical link you quoted is on the NodeBB side? Since these are different canonical links, I'd expect that Google will consider these (SocialHub and NodeBB topics) to be different web resources with mostly replicated content.
                julian@community.nodebb.orgJ This user is from outside of this forum
                julian@community.nodebb.orgJ This user is from outside of this forum
                julian@community.nodebb.org
                wrote on last edited by
                #69

                @stevebate@socialhub.activitypub.rocks said in Pre-Alpha ActivityPub-related bug reports:

                Are forum topics going to be fully federated or just replicated (which is not quite the same thing, even for 2-way sync)?

                Fully federated, if I am able to. That statement means that if two categories are synchronized, be they NodeBB, Discourse, or Flarum, responses to one would end up propagating over to the other and vice versa. Things like likes would propagate through.

                I haven't quite thought through the potential implications of changing rel="canonical", so there are probably gaps in my logic. Maybe rel="alternate" is a better fit.

                1 Reply Last reply
                0
                • julian@community.nodebb.orgJ julian@community.nodebb.org

                  I may regret creating this topic but here goes.

                  If you experience a bug or other unexpected behavior while using NodeBB and its related ActivityPub integration, please post it here so it can be tracked and resolved.

                  No formal process as of yet, and we're still at pre-alpha so expect many things to be broken or unavailable πŸ˜…

                  bh4-tech@community.nodebb.orgB This user is from outside of this forum
                  bh4-tech@community.nodebb.orgB This user is from outside of this forum
                  bh4-tech@community.nodebb.org
                  wrote on last edited by
                  #70

                  @julian Even with the latest commits from activitypub branch, I am getting This NodeBB is currently aware of 0 server(s) . Please allow admins to block/allow specific serversScreenshot 2024-05-02 080103.jpg

                  julian@community.nodebb.orgJ 1 Reply Last reply
                  0
                  • bh4-tech@community.nodebb.orgB bh4-tech@community.nodebb.org

                    @julian Even with the latest commits from activitypub branch, I am getting This NodeBB is currently aware of 0 server(s) . Please allow admins to block/allow specific serversScreenshot 2024-05-02 080103.jpg

                    julian@community.nodebb.orgJ This user is from outside of this forum
                    julian@community.nodebb.orgJ This user is from outside of this forum
                    julian@community.nodebb.org
                    wrote on last edited by
                    #71

                    @bh4-tech That's because that counter is not a real counter πŸ™‚

                    I have not yet worked on allow-list or deny-list filtering of servers.

                    1 Reply Last reply
                    0
                    • julian@community.nodebb.orgJ julian@community.nodebb.org

                      I may regret creating this topic but here goes.

                      If you experience a bug or other unexpected behavior while using NodeBB and its related ActivityPub integration, please post it here so it can be tracked and resolved.

                      No formal process as of yet, and we're still at pre-alpha so expect many things to be broken or unavailable πŸ˜…

                      N This user is from outside of this forum
                      N This user is from outside of this forum
                      nutomic@voyager.lemmy.ml
                      wrote on last edited by
                      #72

                      Test reply from Lemmy

                      julian@community.nodebb.orgJ 1 Reply Last reply
                      0
                      • N nutomic@voyager.lemmy.ml

                        Test reply from Lemmy

                        julian@community.nodebb.orgJ This user is from outside of this forum
                        julian@community.nodebb.orgJ This user is from outside of this forum
                        julian@community.nodebb.org
                        wrote on last edited by
                        #73

                        @nutomic@voyager.lemmy.ml hello! Hope it was a successful test πŸ™‚

                        1 Reply Last reply
                        0
                        • julian@community.nodebb.orgJ julian@community.nodebb.org

                          I may regret creating this topic but here goes.

                          If you experience a bug or other unexpected behavior while using NodeBB and its related ActivityPub integration, please post it here so it can be tracked and resolved.

                          No formal process as of yet, and we're still at pre-alpha so expect many things to be broken or unavailable πŸ˜…

                          the-skyfoxx@community.nodebb.orgT This user is from outside of this forum
                          the-skyfoxx@community.nodebb.orgT This user is from outside of this forum
                          the-skyfoxx@community.nodebb.org
                          wrote on last edited by
                          #74

                          More of a todo than bug: but https://community.nodebb.org/world does not allow to mark as read. (So going there shows the same posts that were there even if you have accessed them)

                          julian@community.nodebb.orgJ 1 Reply Last reply
                          0
                          • the-skyfoxx@community.nodebb.orgT the-skyfoxx@community.nodebb.org

                            More of a todo than bug: but https://community.nodebb.org/world does not allow to mark as read. (So going there shows the same posts that were there even if you have accessed them)

                            julian@community.nodebb.orgJ This user is from outside of this forum
                            julian@community.nodebb.orgJ This user is from outside of this forum
                            julian@community.nodebb.org
                            wrote on last edited by
                            #75

                            @the-skyfoxx that's intentional, it acts more like a category than a list of unread topics.

                            So you can mark a topic as read but it'll stay there, just like marking a topic read in an existing category.

                            1 Reply Last reply
                            0
                            • julian@community.nodebb.orgJ julian@community.nodebb.org

                              I may regret creating this topic but here goes.

                              If you experience a bug or other unexpected behavior while using NodeBB and its related ActivityPub integration, please post it here so it can be tracked and resolved.

                              No formal process as of yet, and we're still at pre-alpha so expect many things to be broken or unavailable πŸ˜…

                              scott@authorship.studioS This user is from outside of this forum
                              scott@authorship.studioS This user is from outside of this forum
                              scott@authorship.studio
                              wrote on last edited by
                              #76
                              @julian Mastodon and other platforms don't understand the concept of threaded conversations, which is why they haven't implemented something like that.

                              I am not sure how to implement this in ActivityPub, but in the Zot protocol, Hubzilla actually fetches the entire thread from the authoritative source.

                              So we don't depend on the entire thread being sent to us. We ask for a copy of all of the posts in the thread from the server with the top level post, which arguably is the authoritative version of the thread.

                              Other servers pushing messages to us is a great way to get notified of new posts, but pulling messages would yield the full conversation.

                              I am not sure if there is a way to pull in ActivityPub.
                              1 Reply Last reply
                              0
                              • julian@community.nodebb.orgJ julian@community.nodebb.org

                                I may regret creating this topic but here goes.

                                If you experience a bug or other unexpected behavior while using NodeBB and its related ActivityPub integration, please post it here so it can be tracked and resolved.

                                No formal process as of yet, and we're still at pre-alpha so expect many things to be broken or unavailable πŸ˜…

                                scott@authorship.studioS This user is from outside of this forum
                                scott@authorship.studioS This user is from outside of this forum
                                scott@authorship.studio
                                wrote on last edited by
                                #77
                                @julian Another thing that Hubzilla does, mostly to remain compatible with platforms that don't understand forums, is have the forum redistribute all of the posts in the thread.

                                So, when you comment on a post, your app only sends it to the Hubzilla forum, and then the forum looks and sees who is following that thread or who is a member of the forum, and redistributes a copy of the post to everyone who is supposed to get it.

                                So as long as you are following that thread or are a member of that forum, you get a copy of all of the new messages. (And if you are using Zot protocol, it fetches all of the recent posts when you first follow the forum, which gives you complete threads for recent conversations.)

                                And one reason why I may be missing some of the posts in this thread is that I am following you (and some others) and not the forum itself.

                                How do I follow this forum or thread specifically?
                                julian@community.nodebb.orgJ 1 Reply Last reply
                                0
                                • scott@authorship.studioS scott@authorship.studio
                                  @julian Another thing that Hubzilla does, mostly to remain compatible with platforms that don't understand forums, is have the forum redistribute all of the posts in the thread.

                                  So, when you comment on a post, your app only sends it to the Hubzilla forum, and then the forum looks and sees who is following that thread or who is a member of the forum, and redistributes a copy of the post to everyone who is supposed to get it.

                                  So as long as you are following that thread or are a member of that forum, you get a copy of all of the new messages. (And if you are using Zot protocol, it fetches all of the recent posts when you first follow the forum, which gives you complete threads for recent conversations.)

                                  And one reason why I may be missing some of the posts in this thread is that I am following you (and some others) and not the forum itself.

                                  How do I follow this forum or thread specifically?
                                  julian@community.nodebb.orgJ This user is from outside of this forum
                                  julian@community.nodebb.orgJ This user is from outside of this forum
                                  julian@community.nodebb.org
                                  wrote on last edited by
                                  #78

                                  @scott@authorship.studio said in Pre-Alpha ActivityPub-related bug reports:

                                  I am not sure if there is a way to pull in ActivityPub.

                                  No standard ways, at present, but of course, you can always do an S2S call for the individual objects themselves. The problem is, how do you get the whole thread (which as you mention above, Mastodon can't even support at present). Hell, how do you even get the authoritative source besides traversing up the entire reply chain?

                                  I often feel like I am pushing against the "ActivityPub zeitgeist" of sorts, because I am plainly advocating for a thoughtfully designed pull-based mechanism for backfill purposes, but at least among those I've talked to, I'm not hearing any pushback.

                                  I am not sure how to implement this in ActivityPub, but in the Zot protocol, Hubzilla actually fetches the entire thread from the authoritative source.

                                  In NodeBB, each object references a context, which is an OrderedCollection of other objects. That context is the authoritative source (or at least, as authoritative as NodeBB can determine).

                                  I'm planning a survey on context usage, to see whether other implementors use it at all, and how.

                                  thisismissem@hachyderm.ioT scott@authorship.studioS 2 Replies Last reply
                                  0
                                  • julian@community.nodebb.orgJ julian@community.nodebb.org

                                    @scott@authorship.studio said in Pre-Alpha ActivityPub-related bug reports:

                                    I am not sure if there is a way to pull in ActivityPub.

                                    No standard ways, at present, but of course, you can always do an S2S call for the individual objects themselves. The problem is, how do you get the whole thread (which as you mention above, Mastodon can't even support at present). Hell, how do you even get the authoritative source besides traversing up the entire reply chain?

                                    I often feel like I am pushing against the "ActivityPub zeitgeist" of sorts, because I am plainly advocating for a thoughtfully designed pull-based mechanism for backfill purposes, but at least among those I've talked to, I'm not hearing any pushback.

                                    I am not sure how to implement this in ActivityPub, but in the Zot protocol, Hubzilla actually fetches the entire thread from the authoritative source.

                                    In NodeBB, each object references a context, which is an OrderedCollection of other objects. That context is the authoritative source (or at least, as authoritative as NodeBB can determine).

                                    I'm planning a survey on context usage, to see whether other implementors use it at all, and how.

                                    thisismissem@hachyderm.ioT This user is from outside of this forum
                                    thisismissem@hachyderm.ioT This user is from outside of this forum
                                    thisismissem@hachyderm.io
                                    wrote on last edited by
                                    #79

                                    @julian I'm maybe not seeing the right post, but on the "duplicate content" issue, if you've an unauthenticated user viewing a federated post or account, the best practice is to provide an intersitual saying β€œThis post wasn't made it, click to view the original post”

                                    This is what it looks like in 4.3 for mastodon: https://github.com/mastodon/mastodon/pull/27792

                                    thisismissem@hachyderm.ioT scott@authorship.studioS 2 Replies Last reply
                                    0
                                    • thisismissem@hachyderm.ioT thisismissem@hachyderm.io

                                      @julian I'm maybe not seeing the right post, but on the "duplicate content" issue, if you've an unauthenticated user viewing a federated post or account, the best practice is to provide an intersitual saying β€œThis post wasn't made it, click to view the original post”

                                      This is what it looks like in 4.3 for mastodon: https://github.com/mastodon/mastodon/pull/27792

                                      thisismissem@hachyderm.ioT This user is from outside of this forum
                                      thisismissem@hachyderm.ioT This user is from outside of this forum
                                      thisismissem@hachyderm.io
                                      wrote on last edited by
                                      #80

                                      @julian Why? because the unauthenticated user should not be able to view federated content, since this may make you susceptible to public cache poisoning attacks, where a third-party could make you publicly display CSAM content, and then it looks like you're displaying it first-party and hosting CSAM to your hosting company, who takes your server down immediately and/or reports to LEO.

                                      We've already seen this attack used to take down fediverse servers.

                                      1 Reply Last reply
                                      0
                                      • julian@community.nodebb.orgJ julian@community.nodebb.org

                                        @scott@authorship.studio said in Pre-Alpha ActivityPub-related bug reports:

                                        I am not sure if there is a way to pull in ActivityPub.

                                        No standard ways, at present, but of course, you can always do an S2S call for the individual objects themselves. The problem is, how do you get the whole thread (which as you mention above, Mastodon can't even support at present). Hell, how do you even get the authoritative source besides traversing up the entire reply chain?

                                        I often feel like I am pushing against the "ActivityPub zeitgeist" of sorts, because I am plainly advocating for a thoughtfully designed pull-based mechanism for backfill purposes, but at least among those I've talked to, I'm not hearing any pushback.

                                        I am not sure how to implement this in ActivityPub, but in the Zot protocol, Hubzilla actually fetches the entire thread from the authoritative source.

                                        In NodeBB, each object references a context, which is an OrderedCollection of other objects. That context is the authoritative source (or at least, as authoritative as NodeBB can determine).

                                        I'm planning a survey on context usage, to see whether other implementors use it at all, and how.

                                        scott@authorship.studioS This user is from outside of this forum
                                        scott@authorship.studioS This user is from outside of this forum
                                        scott@authorship.studio
                                        wrote on last edited by
                                        #81
                                        @julian
                                        I often feel like I am pushing against the "ActivityPub zeitgeist" of sorts, because I am plainly advocating for a thoughtfully designed pull-based mechanism for backfill purposes, but at least among those I've talked to, I'm not hearing any pushback.

                                        Hubzilla and Friendica were one of the first platforms to implement forums (or more accurately "discussion groups" although the only difference is the UI). The biggest challenge at the time was that other platforms didn't (and most still don't) understand groups and group discussions.

                                        When developing, they basically used the following tactics:

                                        1. Implement full discussion group features within Hubzilla, and Friendica, respectively. People who use those platforms get the full experience and full feature set.

                                        2. For platforms that don't have the same features, they implemented what they could. If other platforms don't support certain things, that is not our fault. But we still designed it so that it works with their platforms, mostly using workarounds. They could at least participate, even if they didn't get the full experience.

                                        I think we need to take the same approach. We design it so that thread-based platforms (forums, discussion groups, Facebook-style social media, etc.) all can interact with a full set of features. For social media platforms that don't support threaded conversations, we just do "best effort" accepting the fact that their users will have a degraded experience because their software doesn't support the same features.

                                        So, I would recommend that we create some method of backfilling a thread from the authoritative source (using a pull mechanism), and we advertise that this functionality is available via webfinger and as part of the meta data of the posts themselves. Platforms that don't know what that is will ignore it. Platforms that know what that is will use it.

                                        ActivityPub seems to be a push only protocol, so we may need to make our own mini-pull protocol for this purpose. You can look at the Zot protocol that is part of Hubzilla as an example. I think the Nomad protocol that is part of Streams also does the same thing. Not sure about Friendica. But there is working code that already pulls the entire thread.
                                        1 Reply Last reply
                                        0
                                        • thisismissem@hachyderm.ioT thisismissem@hachyderm.io

                                          @julian I'm maybe not seeing the right post, but on the "duplicate content" issue, if you've an unauthenticated user viewing a federated post or account, the best practice is to provide an intersitual saying β€œThis post wasn't made it, click to view the original post”

                                          This is what it looks like in 4.3 for mastodon: https://github.com/mastodon/mastodon/pull/27792

                                          scott@authorship.studioS This user is from outside of this forum
                                          scott@authorship.studioS This user is from outside of this forum
                                          scott@authorship.studio
                                          wrote on last edited by
                                          #82
                                          @Emelia πŸ‘ΈπŸ» @julian

                                          I don't think there really will be a duplicate content issue. Typically, copies of posts are delivered to people's private inbox, not reposted publicly on other websites. Unless someone is operating a relay or reposting other people's posts, all of the copies of the post that are sent over ActivityPub should be private.
                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          Powered by NodeBB Contributors
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Popular