ReachReach is a static ability.
A creature with flying can’t be blocked except by creatures with flying and/or reach. (See rule 509, “Declare Blockers Step,” and rule 702.9, “Flying.”)
Multiple instances of reach on the same creature are redundant. (CR 702.17)
UndergrowthAn ability word has no rules meaning of its own. It groups abilities with similar themes; the text following it explains this card’s effect. (CR 207.2c) — When this creature enters, choose up to one target creature you don't control with
flyingFlying is an evasion ability.
A creature with flying can’t be blocked except by creatures with flying and/or reach. A creature with flying can block a creature with or without flying. (See rule 509, “Declare Blockers Step,” and rule 702.17, “Reach.”)
Multiple instances of flying on the same creature are redundant. (CR 702.9). This creature gets +X/+0 until end of turn, where X is the number of creature cards in your graveyard, then you may have this creature
fightA spell or ability may instruct a creature to fight another creature or it may instruct two creatures to fight each other. Each of those creatures deals damage equal to its power to the other creature.
If one or both creatures instructed to fight are no longer on the battlefield or are no longer creatures, neither of them fights or deals damage. If one or both creatures are illegal targets for a resolving spell or ability that instructs them to fight, neither of them fights or deals damage.
If a creature fights itself, it deals damage to itself equal to twice its power.
The damage dealt when a creature fights isn’t combat damage. (CR 701.14) that creature.