<!--5f39ae17-8c62-4a45-bc43-b32064c9388a:W3siYmxvY2tJZCI6Ijk1NDctMTU0NjY1NzUwNTUxMiIsImJsb2NrVHlwZSI6InBhcmFncmFwaCIsInN0eWxlcyI6e30sInR5cGUiOiJwYXJhZ3JhcGgiLCJyaWNoVGV4dCI6eyJkYXRhIjpbeyJjaGFyIjoi566AIiwic3R5bGVzIjp7ImJvbGQiOnRydWUsImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImZvbnQtc2l6ZSI6MTYsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuWNlSIsInN0eWxlcyI6eyJib2xkIjp0cnVlLCJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJmb250LXNpemUiOjE2LCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLlt6UiLCJzdHlsZXMiOnsiYm9sZCI6dHJ1ZSwiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiZm9udC1zaXplIjoxNiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5Y6CIiwic3R5bGVzIjp7ImJvbGQiOnRydWUsImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImZvbnQtc2l6ZSI6MTYsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuaooSIsInN0eWxlcyI6eyJib2xkIjp0cnVlLCJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJmb250LXNpemUiOjE2LCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLlvI8iLCJzdHlsZXMiOnsiYm9sZCI6dHJ1ZSwiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiZm9udC1zaXplIjoxNiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi55qEIiwic3R5bGVzIjp7ImJvbGQiOnRydWUsImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImZvbnQtc2l6ZSI6MTYsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuamgiIsInN0eWxlcyI6eyJib2xkIjp0cnVlLCJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJmb250LXNpemUiOjE2LCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLlv7UiLCJzdHlsZXMiOnsiYm9sZCI6dHJ1ZSwiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiZm9udC1zaXplIjoxNiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX1dLCJpc1JpY2hUZXh0Ijp0cnVlLCJrZWVwTGluZUJyZWFrIjp0cnVlfX0seyJibG9ja0lkIjoiMjk5NS0xNTQ2NjU3NjAwNzM4IiwiYmxvY2tUeXBlIjoicGFyYWdyYXBoIiwic3R5bGVzIjp7ImJhY2stY29sb3IiOiIjZmZmZmZmIiwiYWxpZ24iOiJsZWZ0In0sInR5cGUiOiJwYXJhZ3JhcGgiLCJyaWNoVGV4dCI6eyJkYXRhIjpbeyJjaGFyIjoi44CAIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuOAgCIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLlsLEiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5pivIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuW7uiIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLnq4siLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5LiAIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuS4qiIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLlt6UiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5Y6CIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuexuyIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLvvIwiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5a+5Iiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuWuniIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLnjrAiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5LqGIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuWQjCIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLkuIAiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5o6lIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuWPoyIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLnmoQiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5LiAIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuS6myIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLnsbsiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi6L+bIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuihjCIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLlrp4iLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5L6LIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IueahCIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLliJsiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5bu6Iiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuOAgiIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLnroAiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5Y2VIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuW3pSIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLljoIiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5qihIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuW8jyIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLnmoQiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5a6eIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6Iui0qCIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLmmK8iLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi55SxIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuS4gCIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLkuKoiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5belIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuWOgiIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLnsbsiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5qC5Iiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuaNriIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLkvKAiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5YWlIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IueahCIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLlj4IiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5pWwIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6Iu+8jCIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLliqgiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5oCBIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuWGsyIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLlrpoiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5bqUIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuivpSIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLliJsiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5bu6Iiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuWTqiIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLkuIAiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5LiqIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuS6pyIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLlk4EiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi57G7Iiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6Iu+8iCIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLov5kiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5LqbIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuS6pyIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLlk4EiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi57G7Iiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6Iue7pyIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLmib8iLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi6IeqIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuS4gCIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLkuKoiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi54i2Iiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuexuyIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLmiJYiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi5o6lIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuWPoyIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLvvIkiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi55qEIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19LHsiY2hhciI6IuWuniIsInN0eWxlcyI6eyJmb250LWZhbWlseSI6IlZlcmRhbmEiLCJjb2xvciI6IiMzMzMzMzMiLCJiYWNrLWNvbG9yIjoiI2ZmZmZmZiJ9fSx7ImNoYXIiOiLkvosiLCJzdHlsZXMiOnsiZm9udC1mYW1pbHkiOiJWZXJkYW5hIiwiY29sb3IiOiIjMzMzMzMzIiwiYmFjay1jb2xvciI6IiNmZmZmZmYifX0seyJjaGFyIjoi44CCIiwic3R5bGVzIjp7ImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImNvbG9yIjoiIzMzMzMzMyIsImJhY2stY29sb3IiOiIjZmZmZmZmIn19XSwiaXNSaWNoVGV4dCI6dHJ1ZSwia2VlcExpbmVCcmVhayI6dHJ1ZX19XQ==-->
/**
* 产品的抽象接口 水果
* @author ninghq
*
*/
public interface Fruit {
public void name();
}
产品具体类
/**
* Apple 苹果
* @author ninghq
*
*/
public class Apple implements Fruit {
@Override
public void name() {
// TODO Auto-generated method stub
System.out.println("苹果");
}
}
/** * Banana 香蕉 * @author ninghq * */ public class Banana implements Fruit { @Override public void name() { // TODO Auto-generated method stub System.out.println("香蕉"); } }工厂类
/** * 简单工厂 * @author ninghq * */ public class SampleFactory { public static Fruit makeFruit(String type){ if(type.equals("apple")){ Fruit fruit = new Apple(); return fruit; }else if(type.equals("banana")){ Fruit fruit = new Banana(); return fruit; }else{ System.out.println("生产不出来"); return null; } } }
/** * 简单工厂反射实现 * @author ninghq * */ public class SampleFactory1 { public static Fruit makeFruit(Class c){ Fruit fruit = null; try { fruit = (Fruit) Class.forName(c.getName()).newInstance(); } catch (InstantiationException e) { System.out.println("不支持抽象类或接口"); e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); System.out.println("没有足够权限,即不能访问私有对象"); } catch (ClassNotFoundException e) { System.out.println("类不存在"); e.printStackTrace(); } return fruit; } }客户端
/** * 简单工厂客户端 * @author ninghq * */ public class Client { public static void main(String[] args) { // Fruit apple = SampleFactory.makeFruit("apple"); // apple.name(); // Fruit banana = SampleFactory.makeFruit("banana"); // banana.name(); // Fruit test = SampleFactory.makeFruit("1111"); Fruit apple = SampleFactory1.makeFruit(Apple.class); apple.name(); Fruit banana = SampleFactory1.makeFruit(Banana.class); banana.name(); } }
相关推荐
java设计模式--工厂模式 HeadFirst 书中的源代码
java设计模式----抽象工厂模式,简单工厂模式代码 代码内部
java设计模式-创建者模式-简单工厂模式。详细的讲解了什么是简单工长模式及应用场景和应用场景的代码事例。
java设计模式-创建者模式-简单工厂模式。详细的讲解了什么是抽象工厂模式及应用场景和应用场景的代码事例。及各工厂模式的区别。
JAVA-设计模式-创建型模式-工厂模式
java设计模式-创建者模式-简单工厂模式。详细的讲解了什么是工厂方法模式及应用场景和应用场景的代码事例。及各工厂模式的区别。
设计模式--工厂模式java例子
Java设计模式 - 简单工厂 & 工厂方法(构建工厂)源码:FactoryModel - 详情:https://blog.csdn.net/Dream_Weave/article/details/83989879
简单工厂模式示例 有注释 需要的朋友可以下载研究 很简单很基础的一个设计模式
java,设计模式中的一种,工厂设计模式。
Java设计模式,简单工厂的Demo,具体的思想与实现有很多讲得很好的老师,我是看厉风行老师的视频学的,讲得不错,简单易懂
java常用设计模式-工厂模式
java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式...
java,设计模式中的一种,抽象工厂设计模式。
JAVA设计模式例程-工厂模式-的例程,看完以后基本上能对JAVA上实现简单工厂能有所了解,简单工厂还是比较容易滴,而且也是较为常用的一种设计模式。
java常用设计模式-抽象工厂模式
Java设计模式,抽象工厂的Demo,具体的思想与实现有很多讲得很好的老师,我是看厉风行老师的视频学的,讲得不错,简单易懂
JAVA设计模式-day2,请的行业大能讲得课程,涉及:创建模式(5种: 1、 工厂方法模式(Factory Method); 2、 抽象工厂模式; 3、 单例模式(Singleton) • 4、 建造者模式(Builder); 5、 原型模式(Prototype...
JAVA设计模式例程-工厂模式,一个实例,正在学习设计模式的朋友可看一下,看完了后应该对工厂模式有所了解了。
java设计模式,设计模式公司出品。策略模式,代理模式,单例模式,多例模式,工厂模式,门面模式等。