class MemberItem extends DirectoryItem {
	private final String name;
	private final String desc;
	private final int access;

	/**
	 * @param resource
	 * 		The resource associated with the item.
	 * @param local
	 * 		Local name in tree.
	 * @param name
	 * 		Member name.
	 * @param desc
	 * 		Member descriptor.
	 * @param access
	 * 		Member access modifiers.
	 */
	public MemberItem(JavaResource resource, String local, String name, String desc, int access) {
		super(resource, local);
		this.name = name;
		this.desc = desc;
		this.access = access;
	}

	/**
	 * @return Contained member name.
	 */
	public String getMemberName() {
		return name;
	}

	/**
	 * @return Contained member descriptor.
	 */
	public String getMemberDesc() {
		return desc;
	}

	/**
	 * @return Contained member access modifiers.
	 */
	public int getMemberAccess() {
		return access;
	}

	/**
	 * @return {@code true} if the member represents a method.
	 */
	public boolean isMethod() {
		return desc.indexOf('(') == 0;
	}

	/**
	 * @return {@code true} if the member represents a field.
	 */
	public boolean isField() {
		return !isMethod();
	}

	@Override
	public int compareTo(DirectoryItem o) {<FILL_FUNCTION_BODY>}
}

		if(o instanceof MemberItem) {
			MemberItem c = (MemberItem) o;
			if (isField() && c.isMethod())
				return -1;
			else if (isMethod() && c.isField())
				return 1;
			return getLocalName().compareTo(c.getLocalName());
		}
		return 1;
	
<methods>public void <init>(me.coley.recaf.workspace.JavaResource, java.lang.String) ,public void addChild(java.lang.String, me.coley.recaf.ui.controls.tree.DirectoryItem, boolean) ,public int compareTo(me.coley.recaf.ui.controls.tree.DirectoryItem) ,public void expandParents() ,public me.coley.recaf.ui.controls.tree.DirectoryItem getChild(java.lang.String, boolean) ,public me.coley.recaf.ui.controls.tree.DirectoryItem getDeepChild(java.lang.String) ,public java.lang.String getLocalName() ,public void removeSourceChild(TreeItem<me.coley.recaf.workspace.JavaResource>) <variables>private final non-sealed java.lang.String local,private final Map<java.lang.String,me.coley.recaf.ui.controls.tree.DirectoryItem> localToDir,private final Map<java.lang.String,me.coley.recaf.ui.controls.tree.DirectoryItem> localToLeaf