Adds single-generation support. Almost there