Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 27 Nov 2019 18:46:13 +0000 (UTC)
From:      Yuri Victorovich <yuri@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r518517 - in head/cad: . ktechlab ktechlab/files
Message-ID:  <201911271846.xARIkDWq047410@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: yuri
Date: Wed Nov 27 18:46:13 2019
New Revision: 518517
URL: https://svnweb.freebsd.org/changeset/ports/518517

Log:
  New port: cad/ktechlab: IDE for microcontrollers and electronics

Added:
  head/cad/ktechlab/
  head/cad/ktechlab/Makefile   (contents, props changed)
  head/cad/ktechlab/distinfo   (contents, props changed)
  head/cad/ktechlab/files/
  head/cad/ktechlab/files/patch-doc_en_CMakeLists.txt   (contents, props changed)
  head/cad/ktechlab/files/patch-src_electronics_gpsimprocessor.cpp   (contents, props changed)
  head/cad/ktechlab/files/patch-src_electronics_port.cpp   (contents, props changed)
  head/cad/ktechlab/pkg-descr   (contents, props changed)
  head/cad/ktechlab/pkg-plist   (contents, props changed)
Modified:
  head/cad/Makefile

Modified: head/cad/Makefile
==============================================================================
--- head/cad/Makefile	Wed Nov 27 18:20:53 2019	(r518516)
+++ head/cad/Makefile	Wed Nov 27 18:46:13 2019	(r518517)
@@ -57,6 +57,7 @@
     SUBDIR += kicad-library-templates
     SUBDIR += kicad-library-templates-devel
     SUBDIR += klayout
+    SUBDIR += ktechlab
     SUBDIR += ldraw
     SUBDIR += leocad
     SUBDIR += lepton-eda

Added: head/cad/ktechlab/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/ktechlab/Makefile	Wed Nov 27 18:46:13 2019	(r518517)
@@ -0,0 +1,32 @@
+# $FreeBSD$
+
+PORTNAME=	ktechlab
+DISTVERSIONPREFIX=	v
+DISTVERSION=	0.40.1-66
+DISTVERSIONSUFFIX=	-gd5096083
+CATEGORIES=	cad
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	IDE for microcontrollers and electronics
+
+LICENSE=	GPLv2
+LICENSE_FILE=	${WRKSRC}/COPYING
+
+LIB_DEPENDS=	libgpsim.so:misc/gpsim
+
+USES=		cmake desktop-file-utils gnome kde:5 localbase qt:5 shared-mime-info
+USE_GITHUB=	yes
+USE_QT=		concurrent core dbus gui network printsupport widgets xml \
+		qmake_build buildtools_build
+USE_KDE=	auth bookmarks codecs completion config configwidgets coreaddons \
+		crash guiaddons i18n iconthemes itemviews jobwidgets js \
+		kdelibs4support khtml kio notifications parts service solid \
+		sonnet texteditor textwidgets unitconversion widgetsaddons windowsystem xmlgui
+USE_GNOME=	glib20
+
+CXXFLAGS+=	-I${LOCALBASE}/lib/glib-2.0/include
+
+OPTIONS_DEFINE=	DOCS
+PORTDOCS=	*
+
+.include <bsd.port.mk>

Added: head/cad/ktechlab/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/ktechlab/distinfo	Wed Nov 27 18:46:13 2019	(r518517)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1574867886
+SHA256 (ktechlab-ktechlab-v0.40.1-66-gd5096083_GH0.tar.gz) = 20dd31a78296fa699de870ebbd8f21271bad635af7d9070173b4eab58655a26d
+SIZE (ktechlab-ktechlab-v0.40.1-66-gd5096083_GH0.tar.gz) = 2259850

Added: head/cad/ktechlab/files/patch-doc_en_CMakeLists.txt
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/ktechlab/files/patch-doc_en_CMakeLists.txt	Wed Nov 27 18:46:13 2019	(r518517)
@@ -0,0 +1,5 @@
+--- doc/en/CMakeLists.txt.orig	2019-11-27 18:08:55 UTC
++++ doc/en/CMakeLists.txt
+@@ -1 +1 @@
+-kdoctools_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR ktechlab)
++kdoctools_create_handbook(index.docbook INSTALL_DESTINATION share/doc SUBDIR ktechlab)

Added: head/cad/ktechlab/files/patch-src_electronics_gpsimprocessor.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/ktechlab/files/patch-src_electronics_gpsimprocessor.cpp	Wed Nov 27 18:46:13 2019	(r518517)
@@ -0,0 +1,13 @@
+https://github.com/ktechlab/ktechlab/issues/57
+
+--- src/electronics/gpsimprocessor.cpp.orig	2019-11-27 15:23:04 UTC
++++ src/electronics/gpsimprocessor.cpp
+@@ -755,7 +755,7 @@ RegisterSet::RegisterSet( pic_processor * picProcessor
+ 		m_nameToRegisterMap[ info->name() ] = info;
+         qDebug() << Q_FUNC_INFO << " add register info " << info->name() << " at pos " << i << " addr " << info;
+ 	}
+-#if defined(HAVE_GPSIM_0_26)
++#if 1 || defined(HAVE_GPSIM_0_26)
+ 	RegisterInfo * info = new RegisterInfo( picProcessor->Wreg ); // is tihs correct for "W" member? TODO
+ #else
+ 	RegisterInfo * info = new RegisterInfo( picProcessor->W );

Added: head/cad/ktechlab/files/patch-src_electronics_port.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/ktechlab/files/patch-src_electronics_port.cpp	Wed Nov 27 18:46:13 2019	(r518517)
@@ -0,0 +1,86 @@
+--- src/electronics/port.cpp.orig	2019-11-27 15:37:02 UTC
++++ src/electronics/port.cpp
+@@ -22,7 +22,7 @@
+ #include <sys/ioctl.h>
+ #include <unistd.h>
+ 
+-#ifndef DARWIN
++#if !defined(DARWIN) && !defined(__FreeBSD__)
+ #include <linux/ppdev.h>
+ #endif
+ 
+@@ -39,7 +39,7 @@ Port::~Port()
+ 
+ QStringList Port::ports( unsigned probeResult )
+ {
+-#ifndef DARWIN
++#if !defined(DARWIN) && !defined(__FreeBSD__)
+ 	return SerialPort::ports(probeResult) + ParallelPort::ports(probeResult);
+ #else
+ 	return SerialPort::ports(probeResult);
+@@ -264,7 +264,7 @@ const int INPUT_MODE_BIT = 1 << 21; // Controls if the
+ 
+ // No code using these values will be reached on Darwin, this is just to
+ // keep the preprocessor happy.
+-#ifdef DARWIN
++#if defined(DARWIN) || defined(__FreeBSD__)
+ 	#define PPRDATA		0xFACADE
+ 	#define PPRCONTROL	0xC001D00D
+ 	#define PPWDATA		0xC0EDBABE
+@@ -379,7 +379,7 @@ void ParallelPort::setControlState( uchar pins, bool s
+ //BEGIN Register-oriented operations
+ uchar ParallelPort::readFromRegister( Register reg )
+ {
+-#ifdef DARWIN
++#if defined(DARWIN) || defined(__FreeBSD__)
+ 	return 0;
+ #endif
+ 	
+@@ -398,7 +398,7 @@ uchar ParallelPort::readFromRegister( Register reg )
+ 
+ void ParallelPort::writeToRegister( Register reg, uchar value )
+ {
+-#ifdef DARWIN
++#if defined(DARWIN) || defined(__FreeBSD__)
+ 	return;
+ #endif
+ 	
+@@ -469,7 +469,7 @@ void ParallelPort::setControlDirection( int pins, Dire
+ 
+ Port::ProbeResult ParallelPort::probe( const QString & port )
+ {
+-#ifdef DARWIN
++#if defined(DARWIN) || defined(__FreeBSD__)
+ 	return Port::DoesntExist;
+ #endif
+ 	
+@@ -493,7 +493,7 @@ QStringList ParallelPort::ports( unsigned probeResult 
+ {
+ 	QStringList list;
+ 	
+-#ifdef DARWIN
++#if defined(DARWIN) || defined(__FreeBSD__)
+ 	return list;
+ #endif
+ 	
+@@ -517,7 +517,10 @@ QStringList ParallelPort::ports( unsigned probeResult 
+ 
+ bool ParallelPort::openPort( const QString & port )
+ {
+-#ifdef DARWIN
++#if defined(__FreeBSD__)
++	qWarning() << Q_FUNC_INFO << "Parallel ports disabled on FreeBSD" << endl;
++	return false;
++#elif defined(DARWIN)
+ 	qWarning() << Q_FUNC_INFO << "Parallel ports disabled on Darwin" << endl;
+ 	return false;
+ #endif
+@@ -550,7 +553,7 @@ bool ParallelPort::openPort( const QString & port )
+ 
+ void ParallelPort::closePort()
+ {
+-#ifdef DARWIN
++#if defined(DARWIN) || defined(__FreeBSD__)
+ 	return;
+ #endif
+ 	

Added: head/cad/ktechlab/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/ktechlab/pkg-descr	Wed Nov 27 18:46:13 2019	(r518517)
@@ -0,0 +1,8 @@
+KTechlab has been designed to be as easy to use and unintrusive as possible.
+All components and FlowParts have context sensitive help, and simulating
+electronics is as simple as dragging components onto the work area and creating
+connectors that autoroute themselves between their pins. FlowCode allows users
+new to PICs to instantly create their own programs, while the electronic
+simulation allows stepping through a PIC's assembly program inside a circuit.
+
+WWW: https://userbase.kde.org/KTechlab

Added: head/cad/ktechlab/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/ktechlab/pkg-plist	Wed Nov 27 18:46:13 2019	(r518517)
@@ -0,0 +1,219 @@
+bin/ktechlab
+bin/microbe
+share/applications/org.kde.ktechlab.desktop
+share/config.kcfg/ktechlab.kcfg
+share/icons/hicolor/128x128/apps/ktechlab.png
+share/icons/hicolor/128x128/apps/microbe.png
+share/icons/hicolor/128x128/mimetypes/application-x-circuit.png
+share/icons/hicolor/128x128/mimetypes/application-x-flowcode.png
+share/icons/hicolor/128x128/mimetypes/application-x-microbe.png
+share/icons/hicolor/16x16/apps/ktechlab.png
+share/icons/hicolor/16x16/apps/microbe.png
+share/icons/hicolor/16x16/mimetypes/application-x-circuit.png
+share/icons/hicolor/16x16/mimetypes/application-x-flowcode.png
+share/icons/hicolor/16x16/mimetypes/application-x-microbe.png
+share/icons/hicolor/22x22/apps/ktechlab.png
+share/icons/hicolor/22x22/apps/microbe.png
+share/icons/hicolor/22x22/mimetypes/application-x-circuit.png
+share/icons/hicolor/22x22/mimetypes/application-x-flowcode.png
+share/icons/hicolor/22x22/mimetypes/application-x-microbe.png
+share/icons/hicolor/32x32/apps/ktechlab.png
+share/icons/hicolor/32x32/apps/microbe.png
+share/icons/hicolor/32x32/mimetypes/application-x-circuit.png
+share/icons/hicolor/32x32/mimetypes/application-x-flowcode.png
+share/icons/hicolor/32x32/mimetypes/application-x-microbe.png
+share/icons/hicolor/48x48/apps/ktechlab.png
+share/icons/hicolor/48x48/apps/microbe.png
+share/icons/hicolor/48x48/mimetypes/application-x-circuit.png
+share/icons/hicolor/48x48/mimetypes/application-x-flowcode.png
+share/icons/hicolor/48x48/mimetypes/application-x-microbe.png
+share/icons/hicolor/64x64/apps/ktechlab.png
+share/icons/hicolor/64x64/apps/microbe.png
+share/icons/hicolor/64x64/mimetypes/application-x-circuit.png
+share/icons/hicolor/64x64/mimetypes/application-x-flowcode.png
+share/icons/hicolor/64x64/mimetypes/application-x-microbe.png
+share/katepart5/syntax/microbe.xml
+%%DATADIR%%/contexthelp/help-de
+%%DATADIR%%/contexthelp/help-en_US
+%%DATADIR%%/contexthelp/help-es
+%%DATADIR%%/contexthelp/help-fr
+%%DATADIR%%/contexthelp/help-it
+%%DATADIR%%/contexthelp/help-uk
+%%DATADIR%%/contexthelp/ohm.png
+%%DATADIR%%/contexthelp/ohm_unit.png
+%%DATADIR%%/contexthelp/opamp.png
+%%DATADIR%%/contexthelp/siemens.png
+%%DATADIR%%/contexthelp/siemens_unit.png
+%%DATADIR%%/contexthelp/tf_op.png
+%%DATADIR%%/examples/555/internals.circuit
+%%DATADIR%%/examples/555/square-wave.circuit
+%%DATADIR%%/examples/basic/2-way-switch.circuit
+%%DATADIR%%/examples/basic/3-way-switch.circuit
+%%DATADIR%%/examples/basic/capacitor.circuit
+%%DATADIR%%/examples/basic/lrc.circuit
+%%DATADIR%%/examples/basic/resistors-parallel.circuit
+%%DATADIR%%/examples/basic/resistors-series.circuit
+%%DATADIR%%/examples/basic/voltage-divider.circuit
+%%DATADIR%%/examples/diodes/full-wave-rectifier.circuit
+%%DATADIR%%/examples/diodes/half-wave-rectifier.circuit
+%%DATADIR%%/examples/jfets/inverter.circuit
+%%DATADIR%%/examples/matrix_disp_driver/matrix_display.circuit
+%%DATADIR%%/examples/mosfets/and.circuit
+%%DATADIR%%/examples/mosfets/inverter.circuit
+%%DATADIR%%/examples/mosfets/nand.circuit
+%%DATADIR%%/examples/mosfets/nor.circuit
+%%DATADIR%%/examples/mosfets/or.circuit
+%%DATADIR%%/examples/opamps/decoupler.circuit
+%%DATADIR%%/examples/opamps/instrumentation-amplifier.circuit
+%%DATADIR%%/examples/opamps/inverting-amplifier.circuit
+%%DATADIR%%/examples/opamps/noninverting-amplifier.circuit
+%%DATADIR%%/examples/transistors/astable-multivibrator.circuit
+%%DATADIR%%/examples/transistors/inverter.circuit
+%%DATADIR%%/examples/transistors/nand.circuit
+%%DATADIR%%/examples/transistors/nor.circuit
+%%DATADIR%%/examples/transistors/scmitt-trigger.circuit
+%%DATADIR%%/examples/transistors/switch.circuit
+%%DATADIR%%/icons/ammeter.png
+%%DATADIR%%/icons/and.png
+%%DATADIR%%/icons/assignment.png
+%%DATADIR%%/icons/bidirled.png
+%%DATADIR%%/icons/branch.png
+%%DATADIR%%/icons/buffer.png
+%%DATADIR%%/icons/bus.png
+%%DATADIR%%/icons/capacitor.png
+%%DATADIR%%/icons/cccs.png
+%%DATADIR%%/icons/ccvs.png
+%%DATADIR%%/icons/cell.png
+%%DATADIR%%/icons/circuit.png
+%%DATADIR%%/icons/clockinput.png
+%%DATADIR%%/icons/current_source.png
+%%DATADIR%%/icons/currentsignal.png
+%%DATADIR%%/icons/delay.png
+%%DATADIR%%/icons/diode.png
+%%DATADIR%%/icons/dpdt.png
+%%DATADIR%%/icons/dpst.png
+%%DATADIR%%/icons/embed.png
+%%DATADIR%%/icons/end.png
+%%DATADIR%%/icons/external_connection.png
+%%DATADIR%%/icons/external_link.png
+%%DATADIR%%/icons/floatingprobe.png
+%%DATADIR%%/icons/flowcode.png
+%%DATADIR%%/icons/for.png
+%%DATADIR%%/icons/ground.png
+%%DATADIR%%/icons/hicolor/16x16/actions/convert_to_assembly.png
+%%DATADIR%%/icons/hicolor/16x16/actions/convert_to_hex.png
+%%DATADIR%%/icons/hicolor/16x16/actions/convert_to_microbe.png
+%%DATADIR%%/icons/hicolor/16x16/actions/convert_to_pic.png
+%%DATADIR%%/icons/hicolor/16x16/actions/draw-arrow.png
+%%DATADIR%%/icons/hicolor/16x16/actions/draw-ellipse.png
+%%DATADIR%%/icons/hicolor/16x16/actions/draw-line.png
+%%DATADIR%%/icons/hicolor/16x16/actions/draw-rectangle.png
+%%DATADIR%%/icons/hicolor/16x16/actions/draw-text.png
+%%DATADIR%%/icons/hicolor/16x16/actions/format-list-unordered.png
+%%DATADIR%%/icons/hicolor/16x16/actions/indent_asm.png
+%%DATADIR%%/icons/hicolor/16x16/actions/logic_or.png
+%%DATADIR%%/icons/hicolor/16x16/actions/null.png
+%%DATADIR%%/icons/hicolor/16x16/actions/object-order-lower.png
+%%DATADIR%%/icons/hicolor/16x16/actions/object-order-raise.png
+%%DATADIR%%/icons/hicolor/16x16/actions/oscilloscope.png
+%%DATADIR%%/icons/hicolor/22x22/actions/convert_to_assembly.png
+%%DATADIR%%/icons/hicolor/22x22/actions/convert_to_hex.png
+%%DATADIR%%/icons/hicolor/22x22/actions/convert_to_microbe.png
+%%DATADIR%%/icons/hicolor/22x22/actions/convert_to_pic.png
+%%DATADIR%%/icons/hicolor/22x22/actions/debug-run.png
+%%DATADIR%%/icons/hicolor/22x22/actions/debug-step-instructions.png
+%%DATADIR%%/icons/hicolor/22x22/actions/debug-step-out.png
+%%DATADIR%%/icons/hicolor/22x22/actions/debug-step-over.png
+%%DATADIR%%/icons/hicolor/22x22/actions/format-list-unordered.png
+%%DATADIR%%/icons/hicolor/22x22/actions/indent_asm.png
+%%DATADIR%%/icons/hicolor/22x22/actions/logic_or.png
+%%DATADIR%%/icons/hicolor/22x22/actions/object-order-lower.png
+%%DATADIR%%/icons/hicolor/22x22/actions/object-order-raise.png
+%%DATADIR%%/icons/hicolor/32x32/actions/convert_to_assembly.png
+%%DATADIR%%/icons/hicolor/32x32/actions/convert_to_hex.png
+%%DATADIR%%/icons/hicolor/32x32/actions/convert_to_microbe.png
+%%DATADIR%%/icons/hicolor/32x32/actions/convert_to_pic.png
+%%DATADIR%%/icons/hicolor/32x32/actions/indent_asm.png
+%%DATADIR%%/icons/hicolor/32x32/actions/logic_or.png
+%%DATADIR%%/icons/hicolor/48x48/actions/convert_to_assembly.png
+%%DATADIR%%/icons/hicolor/48x48/actions/convert_to_hex.png
+%%DATADIR%%/icons/hicolor/48x48/actions/convert_to_microbe.png
+%%DATADIR%%/icons/hicolor/48x48/actions/convert_to_pic.png
+%%DATADIR%%/icons/hicolor/48x48/actions/indent_asm.png
+%%DATADIR%%/icons/hicolor/48x48/actions/logic_or.png
+%%DATADIR%%/icons/hicolor/64x64/actions/convert_to_assembly.png
+%%DATADIR%%/icons/hicolor/64x64/actions/convert_to_hex.png
+%%DATADIR%%/icons/hicolor/64x64/actions/convert_to_microbe.png
+%%DATADIR%%/icons/hicolor/64x64/actions/convert_to_pic.png
+%%DATADIR%%/icons/hicolor/64x64/actions/indent_asm.png
+%%DATADIR%%/icons/hicolor/64x64/actions/logic_or.png
+%%DATADIR%%/icons/ic1.png
+%%DATADIR%%/icons/ic2.png
+%%DATADIR%%/icons/ic3.png
+%%DATADIR%%/icons/inductor.png
+%%DATADIR%%/icons/interrupt.png
+%%DATADIR%%/icons/item.png
+%%DATADIR%%/icons/keypad.png
+%%DATADIR%%/icons/led.png
+%%DATADIR%%/icons/logic_input.png
+%%DATADIR%%/icons/logic_output.png
+%%DATADIR%%/icons/logicprobe.png
+%%DATADIR%%/icons/matrixdisplay.png
+%%DATADIR%%/icons/mechanics.png
+%%DATADIR%%/icons/nand.png
+%%DATADIR%%/icons/nemosfet.png
+%%DATADIR%%/icons/njfet.png
+%%DATADIR%%/icons/nor.png
+%%DATADIR%%/icons/not.png
+%%DATADIR%%/icons/npn.png
+%%DATADIR%%/icons/opamp.png
+%%DATADIR%%/icons/or.png
+%%DATADIR%%/icons/pemosfet.png
+%%DATADIR%%/icons/pinread.png
+%%DATADIR%%/icons/pinwrite.png
+%%DATADIR%%/icons/pjfet.png
+%%DATADIR%%/icons/pnp.png
+%%DATADIR%%/icons/portread.png
+%%DATADIR%%/icons/portwrite.png
+%%DATADIR%%/icons/potentiometer.png
+%%DATADIR%%/icons/project_library.png
+%%DATADIR%%/icons/project_program.png
+%%DATADIR%%/icons/ptb.png
+%%DATADIR%%/icons/ptm.png
+%%DATADIR%%/icons/repeat.png
+%%DATADIR%%/icons/resistor.png
+%%DATADIR%%/icons/resistordip.png
+%%DATADIR%%/icons/rotary.png
+%%DATADIR%%/icons/seven_segment.png
+%%DATADIR%%/icons/signal_lamp.png
+%%DATADIR%%/icons/spdt.png
+%%DATADIR%%/icons/spst.png
+%%DATADIR%%/icons/start.png
+%%DATADIR%%/icons/sub.png
+%%DATADIR%%/icons/subcall.png
+%%DATADIR%%/icons/unary.png
+%%DATADIR%%/icons/variable_capacitor.png
+%%DATADIR%%/icons/variable_resistor.png
+%%DATADIR%%/icons/vccs.png
+%%DATADIR%%/icons/vcvs.png
+%%DATADIR%%/icons/voltage.png
+%%DATADIR%%/icons/voltagesignal.png
+%%DATADIR%%/icons/voltmeter.png
+%%DATADIR%%/icons/while.png
+%%DATADIR%%/icons/xnor.png
+%%DATADIR%%/icons/xor.png
+%%DATADIR%%/models/transistors_lib.txt
+%%DATADIR%%/pics/attach.png
+%%DATADIR%%/pics/blockdevice.png
+%%DATADIR%%/pics/exec.png
+%%DATADIR%%/pics/pencil.png
+%%DATADIR%%/pics/source.png
+share/kxmlgui5/ktechlab/ktechlabcircuitui.rc
+share/kxmlgui5/ktechlab/ktechlabflowcodeui.rc
+share/kxmlgui5/ktechlab/ktechlabitemviewui.rc
+share/kxmlgui5/ktechlab/ktechlabkateui.rc
+share/kxmlgui5/ktechlab/ktechlabmechanicsui.rc
+share/kxmlgui5/ktechlab/ktechlabtextui.rc
+share/kxmlgui5/ktechlab/ktechlabui.rc
+share/metainfo/org.kde.ktechlab.appdata.xml
+share/mime/packages/ktechlab_mime.xml



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201911271846.xARIkDWq047410>