  Data storage applications require erasure-correcting codes with prescribed
sets of dependencies between data symbols and redundant symbols. The most
common arrangement is to have $k$ data symbols and $h$ redundant symbols (that
each depends on all data symbols) be partitioned into a number of disjoint
groups, where for each group one allocates an additional (local) redundant
symbol storing the parity of all symbols in the group. A code as above is
maximally recoverable, if it corrects all erasure patterns that are information
theoretically correctable given the dependency constraints. A slightly weaker
guarantee is provided by SD codes.
  One key consideration in the design of MR and SD codes is the size of the
finite field underlying the code as using small finite fields facilitates
encoding and decoding operations. In this paper we present new explicit
constructions of SD and MR codes over small finite fields.
