--- a/net/minecraft/server/Advancement.java
+++ b/net/minecraft/server/Advancement.java
@@ -27,6 +27,7 @@
     private final String[][] f;
     private final Set<Advancement> g = Sets.newLinkedHashSet();
     private final IChatBaseComponent h;
+    public final org.bukkit.advancement.Advancement bukkit = new org.bukkit.craftbukkit.advancement.CraftAdvancement(this); // CraftBukkit
 
     public Advancement(MinecraftKey minecraftkey, @Nullable Advancement advancement, @Nullable AdvancementDisplay advancementdisplay, AdvancementRewards advancementrewards, Map<String, Criterion> map, String[][] astring) {
         this.d = minecraftkey;
@@ -46,7 +47,7 @@
             EnumChatFormat enumchatformat = advancementdisplay.e().c();
             IChatBaseComponent ichatbasecomponent1 = ichatbasecomponent.h().a(enumchatformat).a("\n").addSibling(advancementdisplay.b());
             IChatBaseComponent ichatbasecomponent2 = ichatbasecomponent.h().a((chatmodifier) -> {
-                chatmodifier.setChatHoverable(new ChatHoverable(ChatHoverable.EnumHoverAction.SHOW_TEXT, ichatbasecomponent));
+                chatmodifier.setChatHoverable(new ChatHoverable(ChatHoverable.EnumHoverAction.SHOW_TEXT, ichatbasecomponent1)); // CraftBukkit - decompile error
             });
 
             this.h = (new ChatComponentText("[")).addSibling(ichatbasecomponent2).a("]").a(enumchatformat);
@@ -55,7 +56,7 @@
     }
 
     public Advancement.SerializedAdvancement a() {
-        return new Advancement.SerializedAdvancement(this.a == null ? null : this.a.getName(), this.b, this.c, this.e, this.f, null);
+        return new Advancement.SerializedAdvancement(this.a == null ? null : this.a.getName(), this.b, this.c, this.e, this.f); // CraftBukkit - decompile error
     }
 
     @Nullable
@@ -206,7 +207,7 @@
         }
 
         public Advancement b(MinecraftKey minecraftkey) {
-            if (!this.a((minecraftkey) -> {
+            if (!this.a((Function<MinecraftKey, Advancement>) (minecraftkey1) -> { // CraftBukkit - decompile error
                 return null;
             })) {
                 throw new IllegalStateException("Tried to build incomplete advancement!");