public ObjectDefinition child(IClientContext ctx) {
		if (childrenIds == null) {
			return this;
		}

		int index = childId(ctx);

		if (index >= 0 && index < childrenIds.length) {
			if (childrenIds[index] == -1) {
				return new ObjectDefinition(loader, -1);
			}

			return ctx.definitions.object(childrenIds[index]);
		}

		return this;
	}