// Path: src/main/java/com/gamerforea/eventhelper/cause/ICauseStackFrame.java
// public interface ICauseStackFrame extends AutoCloseable
// {
// 	ICauseStackFrame pushCause(Object obj);
// 
// 	default ICauseStackFrame pushCause(FakePlayerContainer fakePlayerContainer)
// 	{
// 		return this.pushCause(fakePlayerContainer.getPlayer());
// 	}
// 
// 	@Override
// 	void close();
// }


import com.gamerforea.eventhelper.cause.ICauseStackFrame;
import net.minecraftforge.common.util.FakePlayer;
import org.spongepowered.api.Sponge;
import org.spongepowered.api.entity.living.player.Player;
import org.spongepowered.api.event.CauseStackManager;
import org.spongepowered.api.event.cause.EventContextKeys;
package com.gamerforea.eventhelper.integration.sponge.cause;


public class SpongeCauseStackFrame implements ICauseStackFrame
{
	protected final CauseStackManager.StackFrame stackFrame;

	public SpongeCauseStackFrame()
	{
		this.stackFrame = Sponge.getCauseStackManager().pushCauseFrame();
	}

	@Override
// Path: src/main/java/com/gamerforea/eventhelper/cause/ICauseStackFrame.java
// public interface ICauseStackFrame extends AutoCloseable
// {
// 	ICauseStackFrame pushCause(Object obj);
// 
// 	default ICauseStackFrame pushCause(FakePlayerContainer fakePlayerContainer)
// 	{
// 		return this.pushCause(fakePlayerContainer.getPlayer());
// 	}
// 
// 	@Override
// 	void close();
// }


// Path: src/main/java/com/gamerforea/eventhelper/integration/sponge/cause/SpongeCauseStackFrame.java
import com.gamerforea.eventhelper.cause.ICauseStackFrame;
import net.minecraftforge.common.util.FakePlayer;
import org.spongepowered.api.Sponge;
import org.spongepowered.api.entity.living.player.Player;
import org.spongepowered.api.event.CauseStackManager;
import org.spongepowered.api.event.cause.EventContextKeys;

package com.gamerforea.eventhelper.integration.sponge.cause;


public class SpongeCauseStackFrame implements ICauseStackFrame
{
	protected final CauseStackManager.StackFrame stackFrame;

	public SpongeCauseStackFrame()
	{
		this.stackFrame = Sponge.getCauseStackManager().pushCauseFrame();
	}

	@Override
	public ICauseStackFrame pushCause(Object obj)