@@ -0,0 +1,3350 @@
+package net.tridentsdk.server.ui.title;%0A%0Aimport net.tridentsdk.chat.ChatComponent;%0Aimport net.tridentsdk.ui.title.Title;%0A%0Aimport java.util.concurrent.atomic.AtomicBoolean;%0Aimport java.util.concurrent.atomic.AtomicInteger;%0Aimport java.util.concurrent.atomic.AtomicReference;%0A%0Apublic class CustomTitle implements Title %7B%0A    private AtomicReference%3CChatComponent%3E title = new AtomicReference%3C%3E();%0A    private AtomicReference%3CChatComponent%3E subtitle = new AtomicReference%3C%3E();%0A    private AtomicInteger fadeIn = new AtomicInteger(10);%0A    private AtomicInteger stay = new AtomicInteger(70);%0A    private AtomicInteger fadeOut = new AtomicInteger(20);%0A    private AtomicBoolean defaultTimings = new AtomicBoolean(true);%0A%0A    @Override%0A    public ChatComponent getTitle() %7B%0A        return this.title.get();%0A    %7D%0A%0A    @Override%0A    public Title setTitle(ChatComponent title) %7B%0A        ChatComponent old;%0A%0A        while(true) %7B%0A            old = this.title.get();%0A            if (title != null && !title.equals(old)) %7B%0A                if (this.title.compareAndSet(old, title)) %7B%0A                    break;%0A                %7D%0A            %7D else %7B%0A                break;%0A            %7D%0A        %7D%0A%0A        return this;%0A    %7D%0A%0A    @Override%0A    public ChatComponent getSubtitle() %7B%0A        return this.subtitle.get();%0A    %7D%0A%0A    @Override%0A    public Title setSubtitle(ChatComponent subtitle) %7B%0A        ChatComponent old;%0A%0A        while(true) %7B%0A            old = this.subtitle.get();%0A            if (subtitle != null && !subtitle.equals(old)) %7B%0A                if (this.subtitle.compareAndSet(old, subtitle)) %7B%0A                    break;%0A                %7D%0A            %7D else %7B%0A                break;%0A            %7D%0A        %7D%0A%0A        return this;%0A    %7D%0A%0A    @Override%0A    public int getFadeIn() %7B%0A        return this.fadeIn.get();%0A    %7D%0A%0A    @Override%0A    public Title setFadeIn(int fadeIn) %7B%0A        int old;%0A%0A        while(true) %7B%0A            old = this.fadeIn.get();%0A            if (fadeIn != old) %7B%0A                if (this.fadeIn.compareAndSet(old, fadeIn)) %7B%0A                    this.defaultTimings.set(false);%0A                    break;%0A                %7D%0A            %7D else %7B%0A                break;%0A            %7D%0A        %7D%0A%0A        return this;%0A    %7D%0A%0A    @Override%0A    public int getStay() %7B%0A        return this.stay.get();%0A    %7D%0A%0A    @Override%0A    public Title setStay(int stay) %7B%0A        int old;%0A%0A        while(true) %7B%0A            old = this.stay.get();%0A            if (stay != old) %7B%0A                if (this.stay.compareAndSet(old, stay)) %7B%0A                    this.defaultTimings.set(false);%0A                    break;%0A                %7D%0A            %7D else %7B%0A                break;%0A            %7D%0A        %7D%0A%0A        return this;%0A    %7D%0A%0A    @Override%0A    public int getFadeOut() %7B%0A        return this.fadeOut.get();%0A    %7D%0A%0A    @Override%0A    public Title setFadeOut(int fadeOut) %7B%0A        int old;%0A%0A        while(true) %7B%0A            old = this.fadeOut.get();%0A            if (fadeOut != old) %7B%0A                if (this.fadeOut.compareAndSet(old, fadeOut)) %7B%0A                    this.defaultTimings.set(false);%0A                    break;%0A                %7D%0A            %7D else %7B%0A                break;%0A            %7D%0A        %7D%0A%0A        return this;%0A    %7D%0A%0A    @Override%0A    public boolean isDefaultTimings() %7B%0A        return this.defaultTimings.get();%0A    %7D%0A%7D%0A

Fix stuff ;_;