lecture14 edit: block genetetion default func