A block programming method for digital services

By employing a block-based programming approach for digital services, the programming challenges of building complex applications on digital platforms are solved. This approach provides efficient control operations, real-time analysis, and data feedback, making it suitable for intelligent scenarios, emergency plans, and smart management. It achieves a cost-effective and highly compatible programming service engine.

CN115904348BActive Publication Date: 2026-04-28WUXI XINSILIAN INFORMATION TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
WUXI XINSILIAN INFORMATION TECH CO LTD
Filing Date
2022-11-24
Publication Date
2026-04-28

AI Technical Summary

Technical Problem

Existing technologies struggle to efficiently build digital services using block programming methods on digital platforms, especially in complex applications such as smart scenarios, emergency plans, and intelligent management, where there is a lack of effective programming service engines.

Method used

A block programming method for digital services is adopted, which includes a programming method consisting of logic units, execution components, information forms, task cards, message notifications and termination symbols. Collaborative relationships are realized through graphical editing and drag-and-drop, and multi-level input/output collaborative control and algorithm expansion are supported.

Benefits of technology

It offers superior control and computing capabilities, real-time analysis and data feedback functions, saves costs, has strong compatibility, and is suitable for complex applications such as intelligent scenarios, emergency plans, and smart management.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115904348B_ABST
    Figure CN115904348B_ABST
Patent Text Reader

Abstract

The application relates to a digital service programming technology, in particular to a block programming method of a digital service; a design element is constructed, including a logic unit, namely an editor of a block code, supporting cooperative control and algorithm expansion of a highest fourth-order input / output; an execution component supports feedback of a physical world through an Internet of Things network and a digital network; an information form, namely a collector of business informatization, supports arbitrary definition of business information collection processing and fusion; a task card, namely a task card of a cooperative process, supports a manual 'participation' operation cooperative model to decide a process task; a message notification, namely an internal message notifier, supports message publishing in a text and table format; a termination symbol, namely a forced termination symbol, can terminate execution of a network from any position in a cooperative network; better control operation can be provided; real-time analysis can be carried out, and the digital service can be analyzed, optimized and maintained at any time; and encoding can be carried out when network transmission data is utilized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a digital service programming technology, specifically a block programming method for digital services. Background Technology

[0002] Digital service programming on digital platforms requires application-driven collaboration of digital objects to effectively feed back into the physical world. In our view, the foundation of the digital world is "digital entities," which can be defined and configured using modeling tools. The use of "digital entities" relies on the implementation of "algorithms" + "collaboration." Here, "algorithm" is a generalized concept (e.g., "1+1=2" is an algorithm, and K-clustering is another), and such algorithms are called "logical units," which are the synaptic neurons that operate on "digital entities." "Collaboration" represents the interoperability between "digital entities," and "collaborative relationships" are the neural networks of "digital entities."

[0003] The core idea of ​​Block Programming is a novel programming approach combining "block code" and "graphical programming." It uses graphical editing and drag-and-drop to represent "collaborative relationships" graphically, while the "algorithm" is implemented using simple ThingsJS code or external calls via block code. Block Programming provides a minimalist programming service engine for building "collaborative models" on digital platforms and can be widely applied to complex applications such as "intelligent scenarios," "emergency plans," and "smart management."

[0004] In conclusion, it can be seen that how to implement a block programming approach to build digital services on a digital platform is a technical problem that needs to be solved. Summary of the Invention

[0005] In view of the problems mentioned in the background art, the purpose of this invention is to provide a block programming method for digital services.

[0006] The above-mentioned technical objective of this invention is achieved through the following technical solution: a block programming method for digital services, comprising the following steps,

[0007] Step 1: Construct design elements, including: logical units (i.e., block code editors supporting collaborative control and algorithm expansion up to fourth-order input / output); execution components (i.e., actuators for "digital entity" operations, supporting feedback to the physical world via IoT and digital networks); information forms (i.e., data collectors for business information, supporting arbitrary definition of business information collection, processing, and fusion); task cards (i.e., task cards for collaborative processes, supporting human "participation" in collaborative model operations to make decisions on process tasks); message notifications (i.e., internal message notifiers, supporting message publishing in text and table formats); and termination symbols (i.e., forced termination symbols, which can terminate network execution from any position in the collaborative network).

[0008] Step 2: The logic unit is specifically composed of three parts: "block + port + code". The input parameters for the block code are: `fact`, which is the current list of filtered objects, selected during task scheduling or by a custom filter; `param`, which is an array of input parameters, either single or multiple; and `level`, which is the order of the input port, starting clockwise from the leftmost position. The next block is only executed when the output `flag` is true. Generally, `data` stores the custom calculation result of the current logic unit, and `next` is a list of "digital objects". If `next` is not specified, the next block will operate on the "digital objects" based on the custom-filtered `fact` of the block.

[0009] Step 3: The execution unit is the executor of the "digital body" operation. When inputting: the execution unit defaults to using preset parameters. If the "info" field of the input parameter is not empty and the types of the input parameters match, the "info" field of the input parameter will be used as the execution parameter. Output: the data and next fields of the result output by the execution unit inherit the data and next field information of the input. In the data field, dolist is the result set of the execution method, and the info field is a description of the result of the execution method.

[0010] Step 4: Establish Information Policy. The information form is a component for information collection required by the business during the collaborative model execution process. Input: The information form defaults to the input items defined in the form. The same person can modify the previously submitted input for the same task. If the data field of param exists, touser will replace the person filling in the form. Output: The next field of the information form output result inherits the next field information from the input, and the data field is the content submitted by the user in the information form.

[0011] Step 5: Create task cards. Task cards are components that require manual review or participation during the collaborative model execution process. Input: The default description of the task card is preset information. If the "info" field of the input parameter is not empty, the "info" field of the input parameter will be displayed. If the "touser" field of the param field exists, it will replace the handling personnel. Output: The next field of the task card output result inherits the information of the next field of the input. The data field contains the operation information of the approving user.

[0012] Step Six: Establish a message notification. The message notification is an internal message notifier. Input: The message notification defaults to sending messages with preset parameters. If the "info" field of the input parameter is not empty, it will use the "info" field as the message content. If the "touser" field of the param parameter exists, it will replace the recipient. If param.data.touser contains title, content, and msgurl fields, messages will be pushed to each individual. Output: The next field of the message notification output result inherits the next field information from the input, and the data field inherits the operation result set from the input.

[0013] Step 6: Establish a termination symbol. A termination symbol is a special component executed in a digital network, used to perform a direct exit operation from the network at any location in the network; a cooperative model can have multiple termination symbols.

[0014] Preferably, the ports of the logic unit are graphical representations of input / output. Each edge supports the definition of multiple arbitrary ports, and the ports of the four edges distinguish between the first to fourth order of cooperative control, which are executed sequentially. When a logic unit has no input ports, the execution engine regards this logic unit as a "starting block". There can be multiple "starting blocks" in a cooperative model. The input parameters of the starting block are driven by the specific data when the scheduled task is executed.

[0015] Preferably, the logic unit can implement single-sided execution, multi-sided execution, compound execution, and error execution; wherein single-sided execution means that each side of the logic unit is an independent small closed loop of cooperative control, which can have multiple input ports and multiple output ports. When the input port data is ready, the small closed loop of this "side" is executed.

[0016] As a preferred option, single-sided execution means that each side of the logic unit is an independent small closed loop of cooperative control, which can have multiple input ports and multiple output ports. When the input port data is ready, the small closed loop of this "side" is executed.

[0017] As a preferred approach, multilateral execution refers to the multilateral collaborative control of logic units, executed in a left-to-right and top-to-bottom order; if the input of the previous stage is not used by a single-sided small closed loop, it will be passed to the next stage as an input parameter.

[0018] As a preferred option, composite execution refers to the single-sided and multi-sided composite collaborative control of the logic unit, which combines the input of the previous level with the input of the current level edge to form multi-input parameter execution; the "single input" on each edge will be used sequentially as the input parameter of the subsequent level.

[0019] As a preferred option, composite execution refers to the single-sided and multi-sided composite collaborative control of the logic unit, which combines the input of the previous level with the input of the current level edge to form multi-input parameter execution; the "single input" on each edge will be used sequentially as the input parameter of the subsequent level.

[0020] As a preferred option, the port configuration rules are as follows: a port cannot be both an input and an output at the same time; a port can only have one input; a port can have multiple outputs; multiple inputs use multiple ports; there cannot be an infinite loop between two ports; only edges with input ports have progressively decreasing effective range from 1 to 4 orders.

[0021] In summary, the present invention mainly has the following beneficial effects: The block programming method for digital services of the present invention can provide better control operations: In terms of control, block programming provides better control operations than traditional PLCs, as the PID control algorithm used by PLCs is not optimized in some programs. Advanced control algorithms not only require powerful floating-point processors but also a large amount of memory, and the PAC platform can provide both of these resources simultaneously. Since the rapid development of the global economy, the demand for raw materials has increased significantly, and prices have continued to rise. Therefore, engineers must optimize their control algorithms to make them more than just simple PID control, in order to minimize waste. These complex algorithms often use control design techniques (such as discrete logic or neural networks) to minimize the settling time of the process, and block programming provides great assistance in this regard.

[0022] Real-time analysis capabilities: On the web, Block Programming provides a high-efficiency platform that allows such application environments to perform real-time analysis, enabling analysis, optimization, and maintenance at any time.

[0023] It has a data feedback function: it can encode data when transmitting it over the network, thus protecting the data.

[0024] Furthermore, it offers cost savings through multi-functionality: In small-scale digital control applications, the controller may be more expensive than the LO (Local I / O) module. For these environments, a miniature PLC that only controls the digital LO lines might be an ideal solution. However, if the system requires vision or instrumentation control, separate controllers must be purchased for these functions. PLC controllers are not designed for the high-speed analog I / O required for instrumentation control or the high-speed data transmission required for vision applications; therefore, PLCs lack vision or instrumentation control modules, necessitating separate controllers for these applications, thus increasing costs. In contrast, with block programming and programmable control engines, a single engine can handle digital and analog LOs, motion, vision, and instrumentation, thus saving the cost of multiple controllers. Whenever a control system requires multiple functions, a programmable controller is comparatively the most cost-effective option.

[0025] Meanwhile, it offers diverse application scenarios: a novel programming approach combining "block code + graphical programming" allows for the graphical editing and drag-and-drop implementation of "collaborative relationships" through drawing, while the "algorithm" is implemented using simple ThingsJS code or external calls via block code. Block programming provides a minimalist programming service engine for building "collaborative models" on digital platforms, and can be widely applied to complex applications such as "intelligent scenarios," "emergency plans," and "smart management."

[0026] Furthermore, it offers fast development and strong compatibility: Ethernet connectivity is easier than with PLCs. Block programming can use JavaScript as the programming language, which has simple syntax and fast development. It also provides interfaces for languages ​​such as C, C++, and Python, ensuring strong compatibility. Attached Figure Description

[0027] Figure 1 This is a schematic diagram of the logic unit of the present invention;

[0028] Figure 2 This is a schematic diagram of the unilateral execution of the logic unit of the present invention;

[0029] Figure 3 This is a schematic diagram of the multilateral execution of the logic unit of the present invention;

[0030] Figure 4 This is a schematic diagram of the composite execution of the logic unit of the present invention;

[0031] Figure 5 This is a schematic diagram illustrating the erroneous execution of the logic unit of the present invention;

[0032] Figure 6 This is a schematic diagram of the execution component of the present invention;

[0033] Figure 7 This is a schematic diagram illustrating the principle of the information form of this invention;

[0034] Figure 8 This is a schematic diagram illustrating the principle of the task card of this invention;

[0035] Figure 9 This is a schematic diagram illustrating the principle of message notification in this invention;

[0036] Figure 10 This is a block diagram illustrating indoor environmental illuminance calculations.

[0037] Figure 11 This is a block diagram illustrating the illuminance-linked lighting system in the conference room;

[0038] Figure 12 This is an example of employees reporting their body temperature daily in accordance with epidemic prevention requirements. Detailed Implementation

[0039] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0040] In practical implementation, the design elements of the block programming method for digital services of the present invention include:

[0041] • Logic Unit – An editor for block-based code, supporting cooperative control and algorithm extensions for up to fourth-order inputs / outputs;

[0042] • Actuation components – actuators that operate “digital bodies” and support feedback to the physical world via IoT networks and digital networks;

[0043] • Information Forms – A data collector for business information, supporting the collection, processing, and fusion of arbitrarily defined business information;

[0044] • Task Cards – Task cards for collaborative processes, supporting human “participation” in collaborative model decision-making for process tasks;

[0045] • Message notification – Internal message notification tool, supporting message publishing in text and table formats;

[0046] • Termination symbol – A forced termination symbol that can terminate the execution of the network from any position in the cooperative network;

[0047] A logic unit consists of three parts: a block, a port, and code. The small red dot in the upper right corner indicates that the logic unit is newly created and not yet programmed. Double-clicking the center of the block allows you to modify the block title, and double-clicking any of the four sides allows you to edit the block code.

[0048] The block code is the specific implementation of the "algorithm". Its input consists of three parameters: fact, param, and level. The output is in the standard result format. The execution between blocks will use result as param.

[0049] The ports of a logic unit are graphical representations of inputs and outputs. Each edge supports the definition of multiple arbitrary ports. The ports of the four edges distinguish between the first to fourth order of cooperative control, which are executed sequentially.

[0050] When a logic unit has no input ports, the execution engine treats it as a "startup block". There can be multiple "startup blocks" in a collaborative model. The input parameters of the startup block are driven by the specific data when the scheduled task is executed.

[0051] Figure 10 The "Illuminance Calculation for Indoor Environment" function is a startup block that defines a "first-order output" and a "second-order output," with algorithms corresponding to "bright" and "dim" conditions, respectively. Its input is driven by illuminance "variable updates" from environmental sensors; the lower left image specifies the label paths for the specific sensors. During execution, the actual digital objects of the environmental sensors are passed to the block's `param` parameter.

[0052] Each side of a logic unit that executes on one side is an independent small closed loop of collaborative control. It can have multiple input ports and multiple output ports. When the input port data is ready, the small closed loop of this "side" is executed.

[0053] Multilateral collaborative control of logic units is executed in a left-to-right, top-to-bottom order. Inputs from the previous stage that are not used by a single-sided small loop are passed to the next stage as input parameters.

[0054] The single-sided and multi-sided composite collaborative control of the logic unit of composite execution combines the input of the previous stage with the input of the current stage to form multi-input parameter execution. The "single input" on each stage will be used sequentially as the input parameter of the subsequent stages.

[0055] The port configuration rules are as follows: a port cannot be both an input and an output at the same time; a port can only have one input; a port can have multiple outputs; multiple inputs can use multiple ports; there cannot be an infinite loop between two ports; there can only be edges for input ports, with order 1 to 4 progressively increasing; and the effective range decreases in each order.

[0056] Input parameters for the block code:

[0057] •fact — This is the current list of objects to be filtered, either by task scheduling or by custom filtering (multiple filter conditions are allowed);

[0058] ·param——An array of input parameters, either a single input or multiple inputs;

[0059] • level — the order of the input port (1 to 4), starting from the leftmost point and proceeding clockwise;

[0060] The next block is executed only when the output flag is true. Generally, `data` stores the custom calculation result of the current logical unit, and `next` is a list of "numerical objects".

[0061] If no next is specified, the next block will execute based on the "Number Body" object, which is a custom filter for the block.

[0062] The execution component is the actuator for "digital body" operations. The small red dot in the upper right corner indicates that the execution component is newly created and undefined. Double-clicking the center of the square allows you to modify the component title name, and double-clicking any of the four sides of the component allows you to edit the execution component.

[0063] Input: The default execution parameters of the execution component are preset parameters. If the "info" field of the input parameter is not empty and the types of the input parameters match, the "info" field of the input parameter will be used as the execution parameter.

[0064] Output: The data and next fields of the output result of the execution component inherit the information of the input data and next fields. In the data field, dolist is the result set of the execution method, and the info field is a description of the result of the execution method.

[0065] Information forms are components that require information collection during the execution of collaborative models. The "small red dot" in the upper right corner indicates that the information form is newly created or undefined.

[0066] Double-clicking the center of the square allows you to edit the form name, while double-clicking the four corners of the form allows you to define the form.

[0067] Input: The information form defaults to the input fields defined in the form. The same person can modify the input submitted last time for the same task. If the data field of param exists, touser will replace the person who filled in the form.

[0068] Output: The next field of the output result of the information form inherits the information from the next field of the input, and the data field contains the content submitted by the user in the information form.

[0069] Task cards are components that require manual review or participation during the execution of the collaborative model. The "little red dot" in the upper right corner indicates that the task card is newly created or undefined.

[0070] Double-clicking the center of the square allows you to change the card title, while double-clicking the four corners of the card allows you to edit the task card.

[0071] Input: The default description of the task card is the preset information. If the "info" field of the input parameter is not empty, the "info" field of the input parameter will be displayed. If the data field of param contains touser, it will replace the person in charge.

[0072] Output: The next field of the task card output result inherits the information from the input next field, and the data field contains the operation information of the approving user.

[0073] Message notifications are internal message notifyers. The small red dot in the upper right corner indicates that the message notification is newly created and undefined. Double-clicking the center of the square allows you to modify the message notification name, and double-clicking any of the four sides allows you to define the message notification content.

[0074] Input: The default message sent by message notification is the preset parameter. If the "info" field of the input parameter is not empty, the "info" field of the input parameter will be used as the message content. If the data field of param exists, touser will be replaced. If param.data.touser contains title, content, and msgurl fields, the message will be pushed to each person separately.

[0075] Output: The message notification output result's next field inherits the next field information from the input, and the data field is the operation result set inherited from the input.

[0076] A "terminator" is a special component executed in a digital network, used to perform a direct exit operation from the network at any point. A cooperative model can have multiple terminators.

[0077] Figure 11 This is an example of illuminance-linked conference room lighting. A new collaborative model (such as...) is then established. Figure 11 As shown, the graphical components include: 1 light environment calculation unit, 1 visual recognition unit for presence / absence, 2 light-on / off execution units, and 2 message notification units. The collaborative relationships are connected by dragging and dropping. The IoT monitors the illuminance of the conference room and configures this collaborative model to the task service based on real-time data changes. The changes in illuminance data and the interaction with the APP are observed, and the lighting is tested at the start and end of the meeting.

[0078] Figure 12 This is an example of daily employee temperature reporting as required by epidemic prevention measures. A new collaborative model (such as...) should be established. Figure 12 As shown, the graphical components include: 1 start processing unit, 1 form for reporting body temperature, 2 employee body temperature processing units, and 2 message notification components. The collaborative relationships are connected by dragging and dropping. This collaborative model is configured to the task service according to the condition of being scheduled at 8:00 every workday. Employees operate the APP to report their body temperature, and after the report is completed, a form message is sent to the designated manager.

[0079] Although embodiments of the invention have been shown and described, it will be understood by those skilled in the art that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the appended claims and their equivalents.

Claims

1. A block programming method for digital services, characterized in that, Includes the following steps, Step 1: Construct design elements, including: logical units (i.e., block code editors supporting collaborative control and algorithm expansion up to fourth-order input / output); execution components (i.e., actuators for "digital entity" operations, supporting feedback to the physical world via IoT and digital networks); information forms (i.e., data collectors for business information, supporting arbitrary definition of business information collection, processing, and fusion); task cards (i.e., task cards for collaborative processes, supporting human "participation" in collaborative model operations to make decisions on process tasks); message notifications (i.e., internal message notifiers, supporting message publishing in text and table formats); and termination symbols (i.e., forced termination symbols, which can terminate network execution from any position in the collaborative network). Step 2: The logic unit is specifically composed of three parts: "block + port + code". The input parameters for the block code are: `fact`, which is the current list of filtered objects, selected during task scheduling or by a custom filter; `param`, which is an array of input parameters, either single or multiple; and `level`, which is the order of the input port, starting clockwise from the leftmost position. The next block is only executed when the output `flag` is true. Generally, `data` stores the custom calculation result of the current logic unit, and `next` is a list of "digital objects". If `next` is not specified, the next block will operate on the "digital objects" based on the custom-filtered `fact` of the block. Step 3: The execution unit is the executor of the "digital body" operation. When inputting: the execution unit defaults to using preset parameters. If the "info" field of the input parameter is not empty and the types of the input parameters match, the "info" field of the input parameter will be used as the execution parameter. Output: the data and next fields of the result output by the execution unit inherit the data and next field information of the input. In the data field, dolist is the result set of the execution method, and the info field is a description of the result of the execution method. Step 4: Establish Information Policy. The information form is a component for information collection required by the business during the collaborative model execution process. Input: The information form defaults to the input items defined in the form. The same person can modify the previously submitted input for the same task. If the data field of param exists, touser will replace the person filling in the form. Output: The next field of the information form output result inherits the next field information from the input, and the data field is the content submitted by the user in the information form. Step 5: Create task cards. Task cards are components that require manual review or participation during the collaborative model execution process. Input: The default description of the task card is preset information. If the "info" field of the input parameter is not empty, the "info" field of the input parameter will be displayed. If the "touser" field of the param field exists, it will replace the handling personnel. Output: The next field of the task card output result inherits the information of the next field of the input. The data field contains the operation information of the approving user. Step Six: Establish a message notification. The message notification is an internal message notifier. Input: The message notification defaults to sending a pre-defined parameter. If the "info" field of the input parameter is not empty, the "info" field will be used as the message content. If the data field of param exists, it will replace the recipient. If param.data.touser contains title, content, and msgurl fields, messages will be pushed to each individual. Output: The next field of the message notification output result inherits the information from the next field of the input, and the data field inherits the operation result set from the input. Step 6: Establish a termination symbol. A "termination symbol" is a special component executed in a digital network, used to perform a direct exit operation from the network at any location in the network; a cooperative model can have multiple termination symbols.

2. The block programming method for digital services as described in claim 1, characterized in that, The ports of a logic unit are graphical representations of inputs and outputs. Each edge supports the definition of multiple arbitrary ports. The ports of the four edges distinguish between the first to fourth levels of cooperative control, which are executed sequentially. When a logic unit has no input ports, the execution engine treats this logic unit as a "starting block". There can be multiple "starting blocks" in a cooperative model. The input parameters of the starting blocks are driven by the specific data during the execution of the scheduled tasks.

3. The block programming method for digital services as described in claim 2, characterized in that, The logic unit can implement single-sided execution, multi-sided execution, compound execution, and error execution; among them, single-sided execution means that each side of the logic unit is an independent small closed loop of cooperative control, which can have multiple input ports and multiple output ports. When the input port data is ready, the small closed loop of this "side" is executed.

4. The block programming method for digital services as described in claim 3, characterized in that, Single-sided execution means that each side of the logic unit is an independent small closed loop of cooperative control, which can have multiple input ports and multiple output ports. When the input port data is ready, the small closed loop of this "side" is executed.

5. The block programming method for digital services as described in claim 3, characterized in that, Multilateral execution refers to the multilateral collaborative control of logic units, which is executed in a left-to-right and top-to-bottom order; if the input of the previous stage is not used by a single-sided small closed loop, it will be passed to the next stage as an input parameter.

6. The block programming method for digital services as described in claim 3, characterized in that, Composite execution refers to the single-sided and multi-sided composite collaborative control of a logic unit, which combines the input of the previous level with the input of the current level to form multi-input parameter execution; the "single input" on each side will be used sequentially as the input parameter of the subsequent level.

7. The block programming method for digital services as described in claim 3, characterized in that, Composite execution refers to the single-sided and multi-sided composite collaborative control of a logic unit, which combines the input of the previous level with the input of the current level to form multi-input parameter execution; the "single input" on each side will be used sequentially as the input parameter of the subsequent level.

8. The block programming method for digital services as described in claim 3, characterized in that, The port configuration rules are as follows: a port cannot be both an input and an output at the same time; a port can only have one input; a port can have multiple outputs; multiple inputs can use multiple ports; there cannot be an infinite loop between two ports; only edges with input ports have progressively decreasing effective range from 1 to 4.

Citation Information

Patent Citations

  • Process type node programming method and system

    CN113535129A

  • Low-code platform building method applied to field of digital twinning collaboration

    CN113608730A