code: public Tree getPreviousSibling() {
  		if (parent != null && key != null) {
  			if (key instanceof Integer) {
  				int idx = (int) key;
  				if (idx < 1) {
  					return null;
  				}
  				return parent.get(idx - 1);
  			}
  			Tree previous = null;
  			for (Tree child : parent) {
  				if (key.equals(child.key)) {
  					return previous;
  				}
  				previous = child;
  			}
  		}
  		return null;
  	}
docs: The node immediately preceding this node. If there is no such node, this
  returns {@code null}.
  
  @return previous node or {@code null}