public static PropositionNeuralNetwork defineNeuralNetworkFromParseTree(Cons tree) {
    { Stella_Object prop = Logic.buildProposition(tree.value);
      PropositionNeuralNetwork net = Proposition.createNeuralNetwork(((Proposition)(prop)));
      Cons ih = ((Cons)(tree.rest.value));
      Cons ho = ((Cons)(tree.rest.rest.value));
      int k = 0;

      { int i = Stella.NULL_INTEGER;
        int iter000 = 0;
        int upperBound000 = net.input.length() - 1;

        for (;iter000 <= upperBound000; iter000 = iter000 + 1) {
          i = iter000;
          { int h = Stella.NULL_INTEGER;
            int iter001 = 0;
            int upperBound001 = net.hidden.length() - 1;

            for (;iter001 <= upperBound001; iter001 = iter001 + 1) {
              h = iter001;
              (net.ih.theArray)[((i * net.ih.nofColumns) + h)] = (((FloatWrapper)(ih.nth(k))));
              k = k + 1;
            }
          }
        }
      }
      { int h = Stella.NULL_INTEGER;
        int iter002 = 0;
        int upperBound002 = net.hidden.length() - 1;
        FloatWrapper num = null;
        Cons iter003 = ho;

        for (;(iter002 <= upperBound002) &&
                  (!(iter003 == Stella.NIL)); iter002 = iter002 + 1, iter003 = iter003.rest) {
          h = iter002;
          num = ((FloatWrapper)(iter003.value));
          (net.ho.theArray)[h] = num;
        }
      }
      return (net);
    }
  }