///////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2000-2019 Ericsson Telecom AB                               //
//                                                                           //
// All rights reserved. This program and the accompanying materials          //
// are made available under the terms of the Eclipse Public License v2.0     //
// which accompanies this distribution, and is available at                  //
// https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html                                 //
///////////////////////////////////////////////////////////////////////////////
[LOGGING]
#FileMask := LOG_ALL 
#| TTCN_MATCHING | TTCN_DEBUG
#ConsoleMask := TTCN_PORTEVENT | TTCN_DEBUG
SourceInfoFormat := Single

[MODULE_PARAMETERS]
tsp_EPTF_Common_RndValues_behaviour := -1.0
tsp_EPTF_Common_RndValues_numberOfRndValues :=10

[EXECUTE]
RndValues_Demo.control
