fgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgffffffffffgffgfgfffffffff