<?xml version="1.0" encoding="UTF-8"?>
<!--
        Formula Linkbase: 2014-04-02 (Final release)
        ********************** 
        Copyright © 2014 International Financial Reporting Standards (IFRS) Foundation
        All rights reserved.  No part of this publication may be translated, reprinted or reproduced 
        or utilised in any form either in whole or in part without prior permission in writing from the IFRS Foundation.
        For more information on the IFRS Foundation's copyright, please refer to http://www.ifrs.org/XBRL/Legal/
        **********************
-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd http://xbrl.org/2008/generic http://www.xbrl.org/2008/generic-link.xsd http://xbrl.org/2008/formula http://www.xbrl.org/2008/formula.xsd http://xbrl.org/2008/label http://www.xbrl.org/2008/generic-label.xsd http://xbrl.org/2008/reference http://www.xbrl.org/2008/generic-reference.xsd http://xbrl.org/2008/assertion/consistency http://www.xbrl.org/2008/consistency-assertion.xsd http://xbrl.org/2008/assertion/existence http://www.xbrl.org/2008/existence-assertion.xsd http://xbrl.org/2008/assertion/value http://www.xbrl.org/2008/value-assertion.xsd http://xbrl.org/2008/filter/concept http://www.xbrl.org/2008/concept-filter.xsd http://xbrl.org/2010/filter/concept-relation http://www.xbrl.org/2010/concept-relation-filter.xsd http://xbrl.org/2010/message http://www.xbrl.org/2010/generic-message.xsd http://xbrl.org/2010/message/validation http://www.xbrl.org/2010/validation-message.xsd http://xbrl.org/2008/filter/period http://www.xbrl.org/2008/period-filter.xsd http://xbrl.org/2008/filter/boolean http://www.xbrl.org/2008/boolean-filter.xsd http://xbrl.org/2008/filter/tuple http://www.xbrl.org/2008/tuple-filter.xsd http://xbrl.org/2008/filter/unit http://www.xbrl.org/2008/unit-filter.xsd http://xbrl.org/2010/custom-function http://www.xbrl.org/2010/custom-function-implementation.xsd http://xbrl.org/2008/filter/segment-scenario http://www.xbrl.org/2008/segment-scenario-filter.xsd" xmlns:t="http://taxonomy.formulaLinkbaseUseCases" xmlns:ca="http://xbrl.org/2008/assertion/consistency" xmlns:gen="http://xbrl.org/2008/generic" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:sf="http://xbrl.org/2008/filter/segment-scenario" xmlns:variable="http://xbrl.org/2008/variable" xmlns:xfi="http://www.xbrl.org/2008/function/instance" xmlns:cf="http://xbrl.org/2008/filter/concept" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:valm="http://xbrl.org/2010/message/validation" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:ea="http://xbrl.org/2008/assertion/existence" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:uf="http://xbrl.org/2008/filter/unit" xmlns:p="http://parameters" xmlns:validation="http://xbrl.org/2008/validation" xmlns:pf="http://xbrl.org/2008/filter/period" xmlns:tf="http://xbrl.org/2008/filter/tuple" xmlns:formula="http://xbrl.org/2008/formula" xmlns:msg="http://xbrl.org/2010/message" xmlns:va="http://xbrl.org/2008/assertion/value" xmlns:cfi="http://xbrl.org/2010/custom-function" xmlns:label="http://xbrl.org/2008/label" xmlns:crf="http://xbrl.org/2010/filter/concept-relation" xmlns:bf="http://xbrl.org/2008/filter/boolean" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <link:roleRef roleURI="http://www.xbrl.org/2010/role/message" xlink:type="simple" xlink:href="http://www.xbrl.org/2010/generic-message.xsd#standard-message"/>
  <link:roleRef roleURI="http://www.xbrl.org/2008/role/link" xlink:type="simple" xlink:href="http://www.xbrl.org/2008/generic-link.xsd#standard-link-role"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/arcrole/2008/variable-set" xlink:type="simple" xlink:href="http://www.xbrl.org/2008/variable.xsd#variable-set"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/arcrole/2010/assertion-unsatisfied-message" xlink:type="simple" xlink:href="http://www.xbrl.org/2010/validation-message.xsd#assertion-unsatisfied-message"/>
  <gen:link xlink:type="extended" xlink:role="http://www.xbrl.org/2008/role/link">
    <va:valueAssertion xlink:type="resource" xlink:label="tech_duplicated_facts1" id="tech_duplicated_facts1" test="count( $v1 ) eq 1" aspectModel="dimensional" implicitFiltering="true"/>
    <variable:factVariable xlink:type="resource" xlink:label="fv_1" id="fv_1" bindAsSequence="true" matches="true"/>
    <variable:variableArc xlink:type="arc" xlink:arcrole="http://xbrl.org/arcrole/2008/variable-set" xlink:from="tech_duplicated_facts1" xlink:to="fv_1" priority="0" order="1.0" name="v1"/>
    <msg:message xlink:type="resource" xlink:label="res_1" xlink:role="http://www.xbrl.org/2010/role/message" xml:lang="en" id="res_1">Duplicated facts have been reported for: {node-name($v1[1])}, please review selected entries</msg:message>
    <gen:arc xlink:type="arc" xlink:arcrole="http://xbrl.org/arcrole/2010/assertion-unsatisfied-message" xlink:from="tech_duplicated_facts1" xlink:to="res_1" priority="0" order="1.0"/>
  </gen:link>
</link:linkbase>
