A node-assisted scheduling method supporting information age optimization
By introducing auxiliary nodes into the wireless network and using integer linear programming and greedy algorithms to optimize link scheduling, the problem of insufficient information age optimization was solved, and the timeliness and success rate of information transmission were improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- NINGBO UNIV
- Filing Date
- 2023-01-06
- Publication Date
- 2026-05-01
AI Technical Summary
Existing wireless networks lack sufficient methods for optimizing information age, resulting in poor information reception timeliness, chaotic link scheduling, and impaired information timeliness at target nodes.
Introducing auxiliary nodes into a wireless network to construct a multi-channel network, optimizing link scheduling through integer linear programming and greedy algorithms, configuring packet update rates, reducing the information age of the master node, satisfying protocol interference constraints, and rationally scheduling links to minimize the average information age.
It improved the timeliness of information transmission, optimized the average information age, increased the success rate and timeliness of data transmission, and reduced the complexity of the scheduling process.
Smart Images

Figure CN116074967B_ABST
Abstract
Description
A node-assisted scheduling method supporting information age optimization Technical Field
[0001] This invention relates to the field of wireless network communication technology, and more specifically, to a node-assisted scheduling method that supports information age optimization. Background Technology
[0002] With the rapid development of wireless communication technology, people are paying more and more attention to the timeliness of information reception. In fields such as environmental monitoring, intelligent transportation, and industrial production, it is necessary for the source node to send status information containing timestamps to the target node.
[0003] Traditional metrics for measuring information freshness, such as latency and throughput, are no longer sufficient to fully reflect the timeliness of messages. Age of Information (AoI) is a metric for measuring the timeliness of data transmission and has important applications in the field of wireless network communication. It represents the time interval between the generation time of the latest data received by the receiver and the current time, describing the freshness of the data currently received by the receiver. Time slot scheduling is used to plan the information transmission order between communicating parties in a wireless network. Optimizing the average age of the network through time slot scheduling can effectively improve the timeliness of data transmission in the network and is an important means to improve the timeliness of network data transmission.
[0004] However, current methods for applying information age do not optimize it well. In each time slot of the wireless network, link scheduling is chaotic and lacks rationality, resulting in a large information age at the source node and the target node, which seriously affects the timeliness of information reception. Summary of the Invention
[0005] The problem this invention aims to solve is to provide a node-assisted scheduling method that supports information age optimization, rationally schedules links, minimizes the average information age, and improves the timeliness of information reception.
[0006] To address the aforementioned problems, this invention provides a node-assisted scheduling method supporting information age optimization. It pre-constructs a first multi-channel wireless network comprising multiple master nodes and multiple target nodes, where each master node establishes a communication connection with all the target nodes. The node-assisted scheduling method includes:
[0007] Step S1: Collect the information age of each master node in its initial state and set each information age to zero;
[0008] Step S2: Add a preset number of auxiliary nodes to the first multi-channel wireless network, and establish a communication connection between each auxiliary node and all the target nodes to form a second multi-channel wireless network;
[0009] Step S3: Configure a data packet update rate for each master node and each auxiliary node, so that each master node transmits data packets with each target node based on the corresponding data packet update rate, and each auxiliary node assists each master node in transmitting data packets based on the corresponding data packet update rate, so as to reduce the information age of each master node;
[0010] Step S4: For the second multi-channel wireless network in each time slot, perform protocol interference constraints on the links between each master node, each auxiliary node and each target node;
[0011] Step S5: Construct an integer linear programming problem based on each master node, each auxiliary node, and each target node, and perform link scheduling by solving the optimization scheduling problem according to a greedy algorithm to minimize the average information age of the information age.
[0012] Preferably, in step S3, the expression for the information age of each master node at each target node is as follows:
[0013] A i (t)=t1-S i (t)
[0014] in,
[0015] A i (t) represents the age of the information;
[0016] t1 represents the current time;
[0017] S i (t) represents the time when the latest data packet received by the target node was generated.
[0018] Preferably, in step S3, the formula for each auxiliary node assisting the master node in data packet transmission is expressed as follows:
[0019]
[0020] in,
[0021] p represents the master node;
[0022] b represents the target node;
[0023] t represents any of the time slots within the second multi-channel wireless network;
[0024] This indicates whether the master node transmits data packets to the target node within the specified time slot;
[0025] This indicates whether the auxiliary node assists the master node in transmitting data packets to the target node within the time slot;
[0026] v represents the number of target nodes;
[0027] T represents the preset deadline.
[0028] Preferably, in step S4, the process of constraining protocol interference on the links between each master node and each target node is as follows:
[0029]
[0030]
[0031] in,
[0032] p p,b This indicates the transmission power of the master node;
[0033] R T This indicates the transmission range of the master node;
[0034] R I This indicates the interference range of the master node;
[0035] β represents the transmission power threshold;
[0036] α represents the interference power threshold;
[0037] n represents the path loss exponent;
[0038] p max Indicates the maximum transmission power;
[0039] Indicates the maximum transmission range;
[0040] Indicates the maximum interference range.
[0041] Preferably, in step S4, the process of all the links being active simultaneously is as follows:
[0042]
[0043]
[0044] in,
[0045] d p,bThis represents the distance between the p-th master node and the b-th target node;
[0046] d b,k This represents the distance between the b-th master node and the k-th target node;
[0047] p p,b This represents the transmission power of the p-th master node;
[0048] p k,h This represents the transmission power of the k-th master node;
[0049] p max Indicates the maximum transmission power;
[0050] Indicates the maximum transmission range;
[0051] Indicates the maximum interference range;
[0052] n represents the path loss exponent;
[0053] L p This represents the set of nodes within the transmission range of the p-th master node;
[0054] I b This represents the set of nodes within the interference range of the b-th target node;
[0055] This indicates whether the master node transmits data packets to the target node within the specified time slot;
[0056] This indicates whether the master node transmits data packets to the target node within the specified time slot.
[0057] Preferably, step S5 includes:
[0058] Step S51: Construct the integer linear programming problem based on each of the master nodes, each of the auxiliary nodes, and each of the target nodes;
[0059] Step S52: For each time slot of the second multi-channel wireless network, initialize the transmission success rate of each master node and each auxiliary node;
[0060] Step S53: Configure an update rate for each of the master nodes and each of the auxiliary nodes, and control each of the master nodes and each of the auxiliary nodes to transmit data packets to each of the target nodes based on the update rate;
[0061] Step S54: Calculate the transmission probability of each master node and each auxiliary node, and select the node with the highest transmission probability as the transmitting node of the time slot;
[0062] Step S55: Determine whether the transmitting node is the master node:
[0063] If so, count the number of times each target node receives data and select the target node with the fewest receiving data as the receiving node for data packet scheduling;
[0064] If not, the number of transmissions of each master node is counted and the master node with the fewest transmissions is selected to be assisted by the auxiliary node. Then, the number of receptions of each target node is counted and the target node with the fewest receptions is selected as the receiving node for data packet scheduling.
[0065] Preferably, step S55 further includes:
[0066] For each time slot of the second multi-channel wireless network, determine whether each link within the time slot meets the preset data packet scheduling requirements:
[0067] If so, then exit;
[0068] If not, return to step S54.
[0069] Preferably, step S55 further includes:
[0070] For each time slot of the second multi-channel wireless network, determine whether the second multi-channel wireless network meets the preset packet scheduling requirements:
[0071] If so, then exit;
[0072] If not, return to step S54.
[0073] Preferably, in step S5, the expression for the integer linear programming problem is as follows:
[0074]
[0075]
[0076]
[0077]
[0078]
[0079] 1≤l p ≤v, 1≤p≤n
[0080] 1≤fs≤v,1≤s≤m (c)
[0081]
[0082]
[0083]
[0084]
[0085] in,
[0086] (a) represents the minimized average information age;
[0087] (b) represents scheduling constraints;
[0088] (c) indicates link constraints;
[0089] (d) indicates interference constraints;
[0090] (e) indicates an auxiliary constraint.
[0091] The present invention has the following beneficial effects:
[0092] 1) This method is applicable to large-scale multi-channel wireless networks, which can effectively improve the timeliness of information transmission, optimize the average information age, and meet users' requirements for information timeliness;
[0093] 2) This method adopts a selective communication approach between the master node and the target node, and adds auxiliary nodes to the first multi-channel communication network to assist the master node in transmitting data packets, which helps to improve the success rate and timeliness of data transmission.
[0094] 3) This method only calculates the transmission success rate of nodes in each time slot, which reduces the complexity of the scheduling process and improves the timeliness of information transmission. Attached Figure Description
[0095] Figure 1 is a flowchart of the steps of the present invention;
[0096] Figure 2 is a detailed flowchart of step S5 of the present invention;
[0097] Figure 3 shows the network topology of the first multi-channel wireless network.
[0098] Figure 4 shows the network topology of the second multi-channel wireless network;
[0099] Figure 5 is a flowchart of the greedy algorithm for solving the integer linear programming problem in Example 1. Detailed Implementation
[0100] To make the above-mentioned objects, features and advantages of the present invention more apparent and understandable, specific embodiments of the present invention will be described in detail below with reference to the accompanying drawings.
[0101] In a preferred embodiment of the present invention, based on the above-mentioned problems existing in the prior art, a node-assisted scheduling method supporting information age optimization is provided. A first multi-channel wireless network comprising multiple master nodes and multiple target nodes is pre-constructed, wherein each master node establishes communication connections with all target nodes. The node-assisted scheduling method is shown in Figure 1 and includes:
[0102] Step S1: Collect the information age of each master node in its initial state and set the information age to zero.
[0103] Step S2: Add a preset number of auxiliary nodes to the first multi-channel wireless network, and establish a communication connection between each auxiliary node and all target nodes to form a second multi-channel wireless network;
[0104] Step S3: Configure a data packet update rate for each master node and each auxiliary node, so that each master node transmits data packets with each target node based on the corresponding data packet update rate, and each auxiliary node assists each master node in transmitting data packets based on the corresponding data packet update rate, so as to reduce the information age of each master node.
[0105] Step S4: For the second multi-channel wireless network in each time slot, perform protocol interference constraints on the links between each master node, each auxiliary node and each target node.
[0106] Step S5: Construct an integer linear programming problem based on each master node, each auxiliary node, and each target node, and perform link scheduling by solving the integer linear programming problem using a greedy algorithm to minimize the average information age.
[0107] Specifically, in this embodiment, for the second multi-channel wireless network consisting of multiple master nodes, multiple target nodes and multiple auxiliary nodes, the average information age is minimized by rationally scheduling the transmission of data packets on each link in each time slot.
[0108] Preferably, the spatial coordinates of each master node and each target node within the first multi-channel wireless network can be collected, and the distance between the source node and the target node can be calculated using the spatial coordinates, which facilitates subsequent link scheduling.
[0109] Preferably, the integer linear programming problem is solved and verified using the CPIEX solver. In the integer linear programming problem, all variables are integer variables, and the constraints and objective function are linear, thus the integer linear programming problem can be constructed.
[0110] Preferably, in the first multi-channel wireless network, the positions of each source node and each target node will change within a certain range in each time slot to ensure the timeliness of data transmission.
[0111] Preferably, each source node is a buffer source, and each buffer source follows the Bernoulli packet generation process, generating new data packets at the corresponding data packet update rate within a time interval.
[0112] Preferably, in the second multi-channel wireless network, the scheduling of each link in each time slot needs to meet the protocol interference constraints.
[0113] Preferably, the link includes a transmission line between the master node and the target node, and a transmission line between the auxiliary node and the target node.
[0114] Preferably, step S5 transforms the multi-link scheduling problem into an integer linear programming problem, laying the foundation for the next step of using a greedy algorithm to solve for feasible link scheduling.
[0115] Preferably, the target node is a base station.
[0116] Preferably, node indexes are pre-configured, and primary and secondary nodes are distinguished in the variables. Each node has a transmission probability. After selecting the node with the highest transmission probability, the corresponding node can be determined based on the index, and whether the node is a primary or secondary node. The base station may receive data packets sent by the primary node or data packets sent by the secondary node, because the secondary node also has the ability to transmit data packets.
[0117] In a preferred embodiment of the present invention, in step S3, the expression for the information age of each master node at each target node is as follows:
[0118] A i (t)=t1-S i (t)
[0119] in,
[0120] A i (t) represents the information age;
[0121] t1 represents the current time;
[0122] S i (t) represents the time when the latest data packet received by the target node was generated.
[0123] In a preferred embodiment of the present invention, in step S3, the formula for each auxiliary node assisting the master node in data packet transmission is expressed as follows:
[0124]
[0125] in,
[0126] p represents the master node;
[0127] b represents the target node;
[0128] t represents any time slot within the second multi-channel wireless network;
[0129] Indicates whether the master node transmits data packets to the target node within the time slot;
[0130] Indicates whether the auxiliary node assists the master node in transmitting data packets to the target node within the time slot;
[0131] v represents the number of target nodes;
[0132] T represents the preset deadline.
[0133] In a preferred embodiment of the present invention, the process of constraining protocol interference on the links between each master node and each target node in step S4 is as follows:
[0134]
[0135]
[0136] in,
[0137] p p,b This indicates the transmission power of the master node;
[0138] R T Indicates the transmission range of the master node;
[0139] R I Indicates the interference range of the master node;
[0140] β represents the transmission power threshold;
[0141] α represents the interference power threshold;
[0142] n represents the path loss exponent;
[0143] p max Indicates the maximum transmission power;
[0144] Indicates the maximum transmission range;
[0145] Indicates the maximum interference range.
[0146] In a preferred embodiment of the present invention, the process of each link being active simultaneously in step S4 is as follows:
[0147]
[0148]
[0149] in,
[0150] d p,b This represents the distance between the p-th master node and the b-th target node;
[0151] d b,k This represents the distance between the b-th master node and the k-th target node;
[0152] p p,b This represents the transmission power of the p-th master node;
[0153] p k,h This represents the transmission power of the k-th master node;
[0154] p max Indicates the maximum transmission power;
[0155] Indicates the maximum transmission range;
[0156] Indicates the maximum interference range;
[0157] n represents the path loss exponent;
[0158] L p This represents the set of nodes within the transmission range of the p-th master node;
[0159] I b Let represent the set of nodes within the interference range of the b-th target node;
[0160] Indicates whether the master node transmits data packets to the target node within the time slot;
[0161] This indicates whether the master node transmits data packets to the target node within the time slot.
[0162] In a preferred embodiment of the present invention, as shown in FIG2, step S5 includes:
[0163] Step S51: Construct an integer linear programming problem based on each master node, each auxiliary node, and each target node;
[0164] Step S52: For each time slot of the second multi-channel wireless network, initialize the transmission success rate of each master node, each auxiliary node and each target node;
[0165] Step S53: Configure an update rate for each master node and each auxiliary node, and control each master node and each auxiliary node to transmit data packets to each target node based on the update rate;
[0166] Step S54: Calculate the transmission success rate of each master node and each auxiliary node, and select the node with the highest transmission success rate as the transmitting node of the time slot.
[0167] Step S55, determine whether the transmitting node is the master node:
[0168] If so, count the number of times each target node receives data and select the target node with the fewest receiving data as the receiving node for data packet scheduling;
[0169] If not, count the number of transmissions of each master node and select the master node with the fewest transmissions to be assisted by the auxiliary node. Then count the number of receptions of each target node and select the target node with the fewest receptions as the receiving node for data packet scheduling.
[0170] Specifically, in this embodiment, the integer linear programming problem is transformed into a scheduling success rate problem. For multiple transmitting nodes, their transmission success rate is calculated, and then the link scheduling is determined based on the minimum number of transmissions and the minimum number of receptions. The link scheduling method is selected to minimize the average information age while avoiding channel interference.
[0171] In a preferred embodiment of the present invention, step S55 further includes:
[0172] For each time slot of the second multi-channel wireless network, determine whether each link within the time slot meets the pre-set packet scheduling requirements:
[0173] If so, then exit;
[0174] If not, return to step S54.
[0175] In a preferred embodiment of the present invention, step S55 further includes:
[0176] For each time slot of the second multi-channel wireless network, determine whether the second multi-channel wireless network meets the pre-set packet scheduling requirements:
[0177] If so, then exit;
[0178] If not, return to step S54.
[0179] Specifically, in this embodiment, based on the number of times each sending node is scheduled, the number of times the sending node is scheduled and assisted in scheduling on each link is calculated. If the total reaches N (N is the number of data packets required to be transmitted on each link), it proves that the data packet scheduling requirement is met.
[0180] In a preferred embodiment of the present invention, in step S5, the expression for solving the integer linear programming problem using a greedy algorithm is as follows:
[0181]
[0182]
[0183]
[0184]
[0185]
[0186] 1≤l p ≤v, 1≤p≤n
[0187] 1≤fs≤v,1≤s≤m (c)
[0188]
[0189]
[0190]
[0191]
[0192] in,
[0193] (a) represents the minimized average information age;
[0194] (b) represents scheduling constraints;
[0195] (c) indicates link constraints;
[0196] (d) indicates interference constraints;
[0197] (e) indicates an auxiliary constraint.
[0198] Specifically, in this embodiment, Figure 3 is a network topology diagram of the first multi-channel wireless network, which consists of multiple master nodes and multiple target nodes. The nodes are randomly distributed, and there is interference between the channels. Under the condition of interference, the master node and the target node transmit data packets. The communication relationship corresponding to different networks is different, and the spatial coordinates of each node will change with the time slot. In Figure 3, master node 1 communicates with target nodes 1 and 2, and master node 2 communicates with target nodes 1 and 2.
[0199] Preferably, in each time slot, the master node can only send one data packet, and the target node can only receive one data packet.
[0200] Specifically, in this embodiment, Figure 4 is a network topology diagram of the second multi-channel wireless network with auxiliary nodes. The auxiliary node detects the status information of the master node and then generates information of the same type as the master node, and then sends the information to the target node. An auxiliary node can only assist one master node in one time slot. In Figure 4, master node 1 communicates with target nodes 1 and 2, master node 2 communicates with target nodes 1 and 2, auxiliary node 1 assists master nodes 1 and 2, and auxiliary node 2 assists master node 2.
[0201] Example 1:
[0202] Figure 5 shows the flowchart of the greedy algorithm for solving the integer linear programming problem when the auxiliary node joins the first multi-channel wireless network. The specific steps are as follows:
[0203] V1: Scheduling process begins;
[0204] V2: Initialize the parameters of the first multi-channel wireless network;
[0205] V3: Select the update rate λ for each node i And generate data packets;
[0206] V4: Calculate the node transmission success rate p for n+m nodes. i ;
[0207] V5: Select max{p i The node in the list is used as the sending node;
[0208] V6: Calculate the number of receptions for each base station. i ;
[0209] V7-V9: If the sending node is the source node, then select min{v i The base station acts as the receiving node for scheduling, and then determines whether the scheduling meets the constraints. If not, it returns to V5.
[0210] V10-V13: If the sending node is an auxiliary node, then calculate the number of transmissions n for each primary node. i Choose min{n i The master node acts as the auxiliary node, moving towards min{v} i The base station sends data packets;
[0211] V14-V15: Determine if the scheduling constraints are met. If not, return to V5; otherwise, stop.
[0212] While the disclosure is as stated above, its scope of protection is not limited thereto. Those skilled in the art can make various changes and modifications without departing from the spirit and scope of this disclosure, and all such changes and modifications will fall within the protection scope of this invention.
Claims
1. A node-assisted scheduling method supporting information age optimization, characterized in that, A first multi-channel wireless network comprising multiple master nodes and multiple target nodes is pre-constructed, wherein each master node can establish communication connections with all target nodes. The node-assisted scheduling method includes: Step S1, collecting an information age of each master node in its initial state and setting each information age to zero; Step S2, adding a preset number of auxiliary nodes to the first multi-channel wireless network, and enabling each auxiliary node to establish communication connections with all target nodes to form a second multi-channel wireless network; Step S3, configuring a data packet update rate for each master node and each auxiliary node, enabling each master node to transmit data packets with each target node based on the corresponding data packet update rate, and enabling each auxiliary node to assist each master node in transmitting data packets based on the corresponding data packet update rate, thereby reducing the information age of each master node; Step S4, constraining the protocol interference of the links between each master node, each auxiliary node, and each target node in the second multi-channel wireless network within each time slot; Step S5, constructing an integer linear programming problem based on each master node, each auxiliary node, and each target node, and solving the integer linear programming problem using a greedy algorithm. The planning problem involves link scheduling to minimize an average information age; step S5 includes: step S51, constructing the integer linear programming problem based on each of the master nodes, each of the auxiliary nodes, and each of the target nodes; step S52, initializing the transmission probabilities of each of the master nodes and each of the auxiliary nodes for each of the time slots of the second multi-channel wireless network; step S53, configuring the same update rate for each of the master nodes and each of the auxiliary nodes, and controlling each of the master nodes and each of the auxiliary nodes to transmit data packets to each of the target nodes based on the update rate; step S54, statistically analyzing each of the... The transmission success rate of the master node and each of the auxiliary nodes is used to select the node with the highest transmission success rate as the transmitting node of the time slot; Step S55, determine whether the transmitting node is the master node: if yes, count the number of receptions of each of the target nodes and select the target node with the fewest receptions as the receiving node for data packet scheduling; if no, count the number of transmissions of each of the master nodes and select the master node with the fewest transmissions to be assisted by the auxiliary node, then count the number of receptions of each of the target nodes and select the target node with the fewest receptions as the receiving node for data packet scheduling.
2. The node-assisted scheduling method according to claim 1, characterized in that, In step S3, the expression for the information age of each master node at each target node is as follows: ;in, Indicates the age of the information; Indicates the current time; This indicates the time when the target node last received the data packet.
3. The node-assisted scheduling method according to claim 1, characterized in that, In step S3, the formula for each auxiliary node assisting the master node in data packet transmission is expressed as follows: ;in, This refers to the master node; Indicates the target node; This refers to any of the aforementioned time slots within the second multi-channel wireless network; Indicates the first time slot within the time slot Whether the master node transmits data packets to the target node; This indicates whether the auxiliary node assists the master node in transmitting data packets to the target node within the time slot; This indicates the number of target nodes; This indicates the preset deadline.
4. The node-assisted scheduling method according to claim 1, characterized in that, In step S4, the process of constraining protocol interference on the links between each master node and each target node is as follows: ;in, This indicates the transmission power of the master node; This indicates the transmission range of the master node; This indicates the interference range of the master node; Indicates the transmission power threshold; Indicates the interference power threshold; Indicates the maximum transmission power; Indicates the maximum transmission range; Indicates the maximum interference range.
5. The node-assisted scheduling method according to claim 1, characterized in that, In step S4, the process of all the links being active simultaneously is as follows: ;in, Indicates the first The first master node and the first The distance between the target nodes; Indicates the first The first master node and the first The distance between the target nodes; Indicates the first The transmission power of each of the master nodes; Indicates the first The transmission power of each of the master nodes; Indicates the maximum transmission power; Indicates the maximum transmission range; Indicates the maximum interference range; Indicates the first A set of nodes within the transmission range of the master node; Indicates the first A set of nodes within the interference range of the target node; Indicates the first time slot within the time slot Whether the master node transmits data packets to the target node; Indicates the first time slot within the time slot Whether the master node transmits data packets to the target node.
6. The node-assisted scheduling method according to claim 1, characterized in that, Step S55 further includes: for each time slot of the second multi-channel wireless network, determining whether each link in the time slot meets the preset data packet scheduling requirements: if yes, then exit; if no, then return to step S54.
7. The node-assisted scheduling method according to claim 1, characterized in that, Step S55 further includes: for each time slot of the second multi-channel wireless network, determining whether the second multi-channel wireless network meets the preset data packet scheduling requirements: if yes, then exit; if no, then return to step S54.
8. The node-assisted scheduling method according to claim 5, characterized in that, In step S5, the expression for the integer linear programming problem is as follows: ;in, This represents the minimized average information age; Indicates scheduling constraints; Indicates link constraints; Indicates interference constraints; Indicates auxiliary constraints; Indicates the preset deadline; This refers to the master node; Indicates the target node; This refers to any of the aforementioned time slots within the second multi-channel wireless network; Indicates the first time slot within the time slot Whether the master node transmits data packets to the target node; This indicates whether the auxiliary node assists the master node in transmitting data packets to the target node within the time slot; This indicates the number of target nodes; Indicates the first The first master node and the first The distance between the target nodes; Indicates the first The transmission power of each of the master nodes; Indicates the maximum transmission power; Indicates the maximum transmission range; Indicates the first time slot within the time slot Whether the master node transmits data packets to the target node; Indicates the first The first master node and the first The distance between the target nodes; Indicates the first The transmission power of each of the master nodes; Indicates the maximum interference range; Indicates the first A set of nodes within the transmission range of the master node; Indicates the first The set of nodes within the interference range of the target node.