dependencies and gen