class HypercubeGraph extends GraphGeneratorBase<LongValue, NullValue, NullValue> {

	@Override
	public Graph<LongValue, NullValue, NullValue> generate() {
		Preconditions.checkState(dimensions > 0);

		GridGraph graph = new GridGraph(env);

		for (int i = 0; i < dimensions; i++) {
			graph.addDimension(2, false);
		}

		return graph
			.setParallelism(parallelism)
			.generate();
	}

	public  HypercubeGraph(ExecutionEnvironment env, long dimensions);

}