Answer:
Unification may be a process by which two logical individual atomic expressions, identical by replacing with a correct substitution. within the unification process, two literals are taken as input and made identical using the substitution process. There are some rules of substitution that has got to be kept in mind:
The predicate symbol must be an equivalent for substitution to require place.
The number of arguments that are present in both expressions must be equivalent.
Two similar variables can't be present within the same expression
Explanation:
a. American (Bob), American (y):-
In this scenario, Unification is feasible consistent with the principle. The substitution list is going to be [y/Bob].
b. Enemy (Nono, America), Enemy(x,y):-
In this scenario, the Unification is feasible consistent with the principles. The substitution list is going to be [x/Nono, y/America].
c. Weapon (Missile), soldTo (Missile, y), Weapon (x), soldTo (x, Nono):-
In this scenario, the Unification isn't possible because the predicate is different i.e. Weapon and soldTo.
d. L(x, y), (L(y, x) ^ L(A, B)):-
In this scenario, Unification isn't possible because the number of arguments is different within the given expression
When rating ads, I should only consider my personal feelings on the ad.
Answer:
yes when rating ads you should only consider your personal feelings on the ad
Write a programmer defined function that compares the ASCII sum of two strings. To compute the ASCII sum, you need to compute the ASCII value of each character of the string and sum them up. You will thus need to calculate two sums, one for each string. Then, return true if the first string has a larger ASCII sum compared to the second string, otherwise return false. In your main function, prompt the user to enter two strings with a suitable message and provide the strings to the function during function call. The user may enter multiple words for either string. Then, use the Boolean data returned by the function to inform which string has the higher ASCII sum.
Answer:
The program in Python is as follows:
def ASCIIsum(str1,str2):
asciisum1 = 0; asciisum2 = 0
for chr in str1:
asciisum1 += (ord(chr) - 96)
for chr in str2:
asciisum2 += (ord(chr) - 96)
if asciisum1 > asciisum2:
return True
else:
return False
str1 = input("Enter first string: ")
str2 = input("Enter second string: ")
if ASCIIsum(str1,str2) == True:
print(str1,"has a higher ASCII value")
else:
print(str2,"has a higher ASCII value")
Explanation:
This defines the function
def ASCIIsum(str1,str2):
This initializes the ascii sum of both strings to 0
asciisum1 = 0; asciisum2 = 0
This iterates through the characters of str1 and add up the ascii values of each character
for chr in str1:
asciisum1 += (ord(chr) - 96)
This iterates through the characters of str2 and add up the ascii values of each character
for chr in str2:
asciisum2 += (ord(chr) - 96)
This returns true if the first string has a greater ascii value
if asciisum1 > asciisum2:
return True
This returns false if the second string has a greater ascii value
else:
return False
The main begins here
This gets input for first string
str1 = input("Enter first string: ")
This gets input for second string
str2 = input("Enter second string: ")
If the returned value is True
if ASCIIsum(str1,str2) == True:
Then str1 has a greater ascii value
print(str1,"has a higher ASCII value")
If otherwise
else:
Then str2 has a greater ascii value
print(str2,"has a higher ASCII value")
SQLite is a database that comes with Android. Which statements is/are correct?
The content of an SQLite database is stored in XML formatted files because XML is the only file format supported by Android OS.
A SQLite database is just another name for a Content Provider. There is no difference as the SQLite implementation implements the Content Provider interface.
If an app creates an SQLite database and stores data in it, then all of the data in that particular database will be stored in one, single file.
A database query to an SQLite database usually returns a set of answers
To access individual entries, SQLite provides a so-called Cursor to enumerate all entries in the set.
This is yet another example of the Iterator pattern.
Answer:
1. Wrong as per my knowledge, SQLite may be an electronic database software that stores data in relations(tables).
2. Wrong. Content provider interface controls the flow of knowledge from your android application to an external data storage location. Data storage is often in any database or maybe it'll be possible to store the info in an SQLite database also.
3.Right. SQLite uses one file to store data. It also creates a rollback file to backup the stored data/logs the transactions.
4. Wrong. The queries are almost like a traditional electronic database system, the queries are going to be answered as per the conditions given and should return a group of answers or one answer depending upon the info and sort of query used.
5. Right. A cursor helps to point to one entry within the database table. this may be very helpful in manipulating the present row of the query easily.
how to identify mistakes in a html code??
How can COUNTIF, COUNTIFS, COUNT, COUNTA, and COUNTBLANK functions aide a company to support its mission or goals
Answer:
Following are the responses to these questions:
Explanation:
It employs keywords to autonomously do work tasks. Users can type numbers directly into the formulas or use the following formulae, so any data the cells referenced provide would be used in the form.
For instance, this leadership involves accounting, and Excel is concerned with organizing and organizing numerical data. In this Equation, I can discover all its information in the data. This idea is simple me count the number many cells containing a number, and also the number of integers. It counts integers in any sorted number as well. As both financial analysts, it is helpful for the analysis of the data if we want to maintain the same number of neurons.
A process needs 103 KB of memory in order to run. If the system on which it is to run uses paging with 2 KB pages, how many frames in memory are needed
Answer: 52
Explanation:
Following the information given in the question, we are informed that a process needs 103 KB of memory in order to run and that the system on which it is to run uses paging with 2KB pages, then the number of frames in memory that are needed will be:
= 103/2
= 51.5
= 52 approximately
Therefore, 52 frames in memory are needed.
Gray London is a retired race car driver who helped Dale Earnhardt, Jr. get his start. He is writing a book and making a video about the early days or Dale Earnhardt. He is trying to decide whether to market these items directly over the Internet or to use intermediaries. To make this decision, he needs to know the pros and cons of each route. Provide that information and make a recommendation to him.
Answer:
Explanation:
Marketing your product directly over the internet can lead to much greater profits and there are many options that you can choose from in order to target the correct audience. Unfortunately, doing so does require marketing knowledge and is basically like growing a business. If you were to use intermediaries they already have the knowledge necessary to market your product but will take a percentage of the profits, which will ultimately limit your gains. Since Gray London is a race car driver, I am assumming that he does not have any prior technological expertise or marketing expertise, therefore I would recommend using intermediaries.
If the signal is going through a 2 MHz Bandwidth Channel, what will be the maximum bit rate that can be achieved in this channel? What will be the appropriate signal level?
Answer:
caca
Explanation:
Assign courseStudent's name with Smith, age with 20, and ID with 9999. Use the print member function and a separate cout statement to output courseStudents's data. End with a newline. Sample output from the given program:
#include
#include
using namespace std;
class PersonData {
public:
void SetName(string userName) {
lastName = userName;
};
void SetAge(int numYears) {
ageYears = numYears;
};
// Other parts omitted
void PrintAll() {
cout << "Name: " << lastName;
cout << ", Age: " << ageYears;
};
private:
int ageYears;
string lastName;
};
class StudentData: public PersonData {
public:
void SetID(int studentId) {
idNum = studentId;
};
int GetID() {
return idNum;
};
private:
int idNum;
};
int main() {
StudentData courseStudent;
/* Your solution goes here */
return 0;
}
Answer:
Replace /* Your solution goes here */
with the following:
courseStudent.SetName("Smith");
courseStudent.SetAge(20);
courseStudent.SetID(9999);
courseStudent.PrintAll();
cout <<courseStudent.GetID();
Explanation:
From the given code segment, we have the following methods defined under the StudentData class;
SetName -> It receives name from the main
SetAge -> It receives age from the main
SetID --> It receives ID from the main and passes it to GetID method
printID --> Prints all the required output.
So, we have:
Pass name to setName
courseStudent.SetName("Smith");
Pass age to setAge
courseStudent.SetAge(20);
Pass ID to setID
courseStudent.SetID(9999);
Print all necessary outputs
courseStudent.PrintAll();
Manually print the student ID
cout <<courseStudent.GetID();
You know different types of networks. If two computing station high speed network link for proper operation which of the following network type should be considered as a first priority?
MAN
WAN
WLAN
LAN
All of these
Answer:
All of these.
PLZ MARK ME BRAINLIEST.
Write a RainFall class that stores the total rainfall for each of 12 months into an array of doubles. The program should have methods that return the following: the total rainfall for the year the average monthly rainfall the month with the most rain the month with the least rain Demonstrate the class in a complete program and use java 8 examples to do so. Input Validation: Do not accept negative numbers for monthly rainfall figures.
Answer:
Explanation:
The following code is written in Java. It creates the Rainfall class with two constructors, one that passes the entire array of rainfall and another that initializes an array with 0.0 for all the months. Then the class contains a method to add rain to a specific month, as well as the three methods requested in the question. The method to add rain validates to make sure that no negative value was added. 8 Test cases were provided, and any methods can be called on any of the 8 objects.
class Brainly {
public static void main(String[] args) {
Rainfall rain1 = new Rainfall();
Rainfall rain2 = new Rainfall();
Rainfall rain3 = new Rainfall();
Rainfall rain4 = new Rainfall();
Rainfall rain5 = new Rainfall();
Rainfall rain6 = new Rainfall();
Rainfall rain7 = new Rainfall();
Rainfall rain8 = new Rainfall();
}
}
class Rainfall {
double[] rainfall = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0};
public Rainfall(double[] rainfall) {
this.rainfall = rainfall;
}
public Rainfall() {
}
public void addMonthRain(double rain, int month) {
if (rain > 0) {
rainfall[month-1] = rain;
}
}
public double totalRainfall() {
double total = 0;
for (double rain: rainfall) {
total += rain;
}
return total;
}
public double averageRainfall() {
double average = totalRainfall() / 12;
return average;
}
public double rainiestMonth() {
double max = 0;
for (double rain : rainfall) {
if (rain > max) {
max = rain;
}
}
return max;
}
}
Functions IN C LANGUAGE
Problem 1
Function floor may be used to round a number to a specific decimal place. The statement
y = floor( x * 10 + .5 ) / 10;
rounds x to the tenths position (the first position to the right of the decimal point). The
statement
y = floor( x * 100 + .5 ) / 100;
rounds x to the hundredths position (the second position to the right of the decimal
point).
Write a program that defines four functions to round a number x in various ways
a. roundToInteger( number )
b. roundToTenths( number )
c. roundToHundreths( number )
d. roundToThousandths( number )
For each value read, your program should print the original value, the number rounded to
the nearest integer, the number rounded to the nearest tenth, the number rounded to
the nearest hundredth, and the number rounded to the nearest thousandth.
Input Format
Input line contain a float number.
Output Format
Print the original value, the number rounded to the nearest integer, the number rounded
to the nearest tenth, the number rounded to the nearest hundredth, and the number
rounded to the nearest thousandth
Examples
Example 1
Input 1
24567.8
Output 1
24567.8 24568 24570 24600
In the forward chaining technique, used by the inference engine component of an expert system, the _____ condition is evaluated first.
Answer:
"if" is the right response.
Explanation:
Forward chaining is being utilized just to split the logical sequential order down as well as operate throughout every component once the preceding one is accomplished, from start to finish.Its whole algorithm begins with proven information that activates all the rules, which are fulfilled as well as makes established realities even more complete.????????????????????????????????
(c) 4
Explanation:The function strpos() is a function in php that returns the position of the first occurrence of a particular substring in a string. Positions are counted from 0. The function receives two arguments. The first argument is the string from which the occurrence is to be checked. The second argument is the substring to be checked.
In this case, the string is "Get Well Soon!" while the substring is "Well"
Starting from 0, the substring "Well" can be found to begin at position 4 of the string "Get Well Soon!".
Therefore, the function strpos("Get Well Soon!", "Well") will return 4.
Then, with the echo statement, which is used for printing, value 4 will be printed as output of the code.
What is the default return type of a method in Java language?
A.Void
B.Int
C.None
D.Short
Answer:
The default return data type in function is int
Answer: Option (b)
Explanation:
The default return data type in a function is int. In other words commonly if it is not explicitly mentioned the default return data type of a function by the compiler will be of an integer data type.
If the user does not mention a return data type or parameter type, then C programming language will inevitably make it an int.
mark me brainlist
Write a removeDuplicates() method for the LinkedList class we saw in lecture. The method will remove all duplicate elements from the LinkedList by removing the second and subsequent elements. If there is only one copy of an element, it is not removed. The list size should shrink accordingly based on the number of duplicates removed.
Answer:
removeDuplicates() function:-
//removeDuplicates() function removes duplicate elements form linked list.
void removeDuplicates() {
//declare 3 ListNode pointers ptr1,ptr2 and duplicate.
//initially, all points to null.
ListNode ptr1 = null, ptr2 = null, duplicate = null;
//make ptr1 equals to head.
ptr1 = head;
//run while loop till ptr1 points to second last node.
//pick elements one by one..
while (ptr1 != null && ptr1.next != null)
{
// make ptr2 equals to ptr1.
//or make ptr2 points to same node as ptr1.
ptr2 = ptr1;
//run second while loop to compare all elements with above selected element(ptr1->val).
while (ptr2.next != null)
{
//if element pointed by ptr1 is same as element pointed by ptr2.next.
//Then, we have found duplicate element.
//Now , we have to remove this duplicate element.
if (ptr1.val == ptr2.next.val)
{
//make duplicate pointer points to node where ptr2.next points(duplicate node).
duplicate = ptr2.next;
//change links to remove duplicate node from linked list.
//make ptr2.next points to duplicate.next.
ptr2.next = duplicate.next;
}
//if element pointed by ptr1 is different from element pointed by ptr2.next.
//then it is not duplicate element.
//So, move ptr2 = ptr2.next.
else
{
ptr2 = ptr2.next;
}
}
//move ptr1 = ptr1.next, after check duplicate elements for first node.
//Now, we check duplicacy for second node and so on.
//so, move ptr1 by one node.
ptr1 = ptr1.next;
}
}
Explanation:
Complete Code:-
//Create Linked List Class.
class LinkedList {
//Create head pointer.
static ListNode head;
//define structure of ListNode.
//it has int val(data) and pointer to ListNode i.e, next.
static class ListNode {
int val;
ListNode next;
//constructor to create and initialize a node.
ListNode(int d) {
val = d;
next = null;
}
}
//removeDuplicates() function removes duplicate elements form linked list.
void removeDuplicates() {
//declare 3 ListNode pointers ptr1,ptr2 and duplicate.
//initially, all points to null.
ListNode ptr1 = null, ptr2 = null, duplicate = null;
//make ptr1 equals to head.
ptr1 = head;
//run while loop till ptr1 points to second last node.
//pick elements one by one..
while (ptr1 != null && ptr1.next != null)
{
// make ptr2 equals to ptr1.
//or make ptr2 points to same node as ptr1.
ptr2 = ptr1;
//run second while loop to compare all elements with above selected element(ptr1->val).
while (ptr2.next != null)
{
//if element pointed by ptr1 is same as element pointed by ptr2.next.
//Then, we have found duplicate element.
//Now , we have to remove this duplicate element.
if (ptr1.val == ptr2.next.val)
{
//make duplicate pointer points to node where ptr2.next points(duplicate node).
duplicate = ptr2.next;
//change links to remove duplicate node from linked list.
//make ptr2.next points to duplicate.next.
ptr2.next = duplicate.next;
}
//if element pointed by ptr1 is different from element pointed by ptr2.next.
//then it is not duplicate element.
//So, move ptr2 = ptr2.next.
else
{
ptr2 = ptr2.next;
}
}
//move ptr1 = ptr1.next, after check duplicate elements for first node.
//Now, we check duplicacy for second node and so on.
//so, move ptr1 by one node.
ptr1 = ptr1.next;
}
}
//display() function prints linked list.
void display(ListNode node)
{
//run while loop till last node.
while (node != null)
{
//print node value of current node.
System.out.print(node.val + " ");
//move node pointer by one node.
node = node.next;
}
}
public static void main(String[] args) {
//Create object of Linked List class.
LinkedList list = new LinkedList();
//first we create nodes and connect them to form a linked list.
//Create Linked List 1-> 2-> 3-> 2-> 4-> 2-> 5-> 2.
//Create a Node having node data = 1 and assign head pointer to it.
//As head is listNode of static type. so, we call head pointer using class Name instead of object name.
LinkedList.head = new ListNode(1);
//Create a Node having node data = 2 and assign head.next to it.
LinkedList.head.next = new ListNode(2);
LinkedList.head.next.next = new ListNode(3);
LinkedList.head.next.next.next = new ListNode(2);
LinkedList.head.next.next.next.next = new ListNode(4);
LinkedList.head.next.next.next.next.next = new ListNode(2);
LinkedList.head.next.next.next.next.next.next = new ListNode(5);
LinkedList.head.next.next.next.next.next.next.next = new ListNode(2);
//display linked list before Removing duplicates.
System.out.println("Linked List before removing duplicates : ");
list.display(head);
//call removeDuplicates() function to remove duplicates from linked list.
list.removeDuplicates();
System.out.println("")
//display linked list after Removing duplicates.
System.out.println("Linked List after removing duplicates : ");
list.display(head);
}
}
Output:-
Which of the following restricts the ability for individuals to reveal information present in some part of the database?
a. Access Control
b. Inference Control
c. Flow Control
d. Encyption
Answer:
it would have to be flow control which would be C.
Explanation:
Flow Control is restricts the ability for individuals to reveal information present in some part of the database. Hence, option C is correct.
What is Flow Control?The management of data flow between computers, devices, or network nodes is known as flow control. This allows the data to be processed at an effective rate. Data overflow, which occurs when a device receives too much data before it can handle it, results in data loss or retransmission.
A design concern at the data link layer is flow control. It is a method that typically monitors the correct data flow from sender to recipient. It is very important because it allows the transmitter to convey data or information at a very quick rate, which allows the receiver to receive it and process it.
The amount of data transmitted to the receiver side without any acknowledgement is dealt with by flow control.
Thus, option C is correct.
For more information about Flow Control, click here:
https://brainly.com/question/28271160
#SPJ5
Select the correct statement(s) regarding 4B5B encoding.
a. 4B5B is used to map four codeword bits into a five bit data word
b. 4B5B information bit rate is 80% of the total (information plus overhead) bit rate
c. 4B5B information bit rate is 20% of the total (information plus overhead) bit rate
d. all statements are correct
Answer:
b. 4B5B information bit rate is 80% of the total information plus overhead bit rate.
Explanation:
4B5B bit rate encoding means there is 80% of the bit rate which included all the information plus the overheads. There is 20% of lack in bit rate due to encoding code words which converts data into smaller bits.
Spending plans serve as a tool to analyze program execution, an indicator of potential problems, and a predictor of future program performance. True False
Answer:
True
Explanation:
Spending plans serve as a tool to analyze program execution, an indicator of potential problems, and a predictor of future program performance.
3. Most widely used structure for recording database modifications is called
A. Scheduling
B. Buffering
C. Log
D. Blocking
Answer:
C. log
Explanation:
The log is a sequence of log records, recording all the update activities in the database
hope this helps
Answer:
C. Log is the
answer
Explanation:
a sequence of log records recording all update activity in database
Indicate whether the following actions are the actions of a person who will be a victim, or will not be a victim, of phishing attacks.
Replying to an e-mail requesting your user ID and password Phishing victim Not a phishing victim
Answer:
Phishing Victim
Explanation:
Replying to this email could make you a victim of a phishing scam. Phishing attacks are common challenges on security that internet users are faced with. It could lead to others getting hold of sensitive information like your password or bank details. email is one way the hackers used to get this information. replying to such an email could lead one to an unsecure website where information could be extracted
Can we update App Store in any apple device. (because my device is kinda old and if want to download the recent apps it aint showing them). So is it possible to update???
Please help
Answer:
For me yes i guess you can update an app store in any deviceI'm not sure×_× mello ×_×What Are the Benefits of Using Leads Automation Tool?
Answer:
Here are the top benefits of using the latest leads automation tool for your personal pursuit, professional service, and other types of businesses.
Frees Up A Lot of Time & ResourcesCompound Connection Growth StrategyViewing ProfilesSending Connection RequestsEndorses Skills of Your First Level ContactsBuild your networkImportance of Leads Automation Tool For LinkedIn
Unlike a traditional and non-automation approach, the best LinkedIn leads automation tool 2020 makes the process far more easier and efficient. It helps to win a good number of connections which would eventually make it easier for businesses to pitch their products and turn newly gained connections into potential customers.
Moreover, businesses will also get more views and new messages in your LinkedIn inbox. The best leads automation tool free are especially useful when you have multiple LinkedIn accounts as you will get rid of time-consuming hectic tasks.
Many companies possess valuable information they want to guard closely (ex. new chip design, competition plans, legal documents). Personal computer hard disks these days are full of important photos, videos, and movies. As more and more information is stored in computer systems, the need to protect it is becoming increasingly important. Which of the following statements is incorrect with respect to Security?
a. security has many facets; three of the more important ones are: the nature of the threats, the nature of intruders, and cryptography
b. data integrity means that unauthorized users should not be able to modify any data without the owner's permission
c. a common category of intruders are driven by determined attempts to make money; for example: bank programmers attempting to steal from the bank they work for
d. in addition to threats caused by malicious users, data can be lost by accident; for example: rats gnawing backup tapes
Answer: D. in addition to threats caused by malicious users, data can be lost by accident; for example: rats gnawing backup tapes
Explanation:
Data security is essential to protecting unwanted people from having access to ones data, malicious attack should also be prevented and unusual behavior should be monitored.
Data security has many facets such as threat nature, the nature of intruders, and cryptography. Furthermore, data integrity means that unauthorized users should not be able to modify any data without the owner's permission. Also, the statement that a common category of intruders are driven by determined attempts to make money; for example: bank programmers attempting to steal from the bank they work for is correct.
It should be no noted that rats gnawing backup tapes cannot prevent data loss. Therefore, the correct option is D
write an algorithm for finding the perimeter of a rectangle
How many ways are there to arrange the letters in the word ALGORITHMS? Note, the letter arrangement does not have to spell a word in the dictionary, but the new word must contain all the letters and each letter can be used only once.
there are ten letters in the word, so for the first position we can choose out of 10 option.
no matter wich specific option we choose, we will have 9 letters left for the 2nd letter.
and 8 for the third place.
...
when we will have used up 9 of 10 letters, there will be only one option for the last place.
the number of possible decision-paths is therefore given by this expression:
10*9*8*7*6*5*4*3*2*1
wich is 3,628,800
there are quite a few ways to rearrange 10 letters
The sorting method which commands entries in a going to head predicated on each character without regard to space as well as punctuation, therefore there are 3628800 ways.
The word 'ALGORITHMS' has 10 letters. There is no repeated letter so, the first Letter can hold 10 places if we start taking one letter at a time. The second can then hold nine positions, the third can hold eight, and so on.So, as [tex]\bold{ 10\times 9 \times 8.... \times 3 \times 2 \times 1 = 362,8800}[/tex] ways, we have such a total number of ways.
Learn more:
brainly.com/question/17276660
9.17 LAB: Acronyms An acronym is a word formed from the initial letters of words in a set phrase. Write a program whose input is a phrase and whose output is an acronym of the input. If a word begins with a lower case letter, don't include that letter in the acronym. Assume there will be at least one upper case letter in the input.
Answer:
Hence the code is given as follows,
import java.util.Scanner;
public class LabProgram {
public static String createAcronym(String userPhrase){
String result = "";
String splits[] = userPhrase.split(" ");
for(int i = 0;i<splits.length;i++){
if(splits[i].charAt(0)>='A' && splits[i].charAt(0)<='Z')
result += splits[i].charAt(0);
}
return result;
}
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String s = scan.nextLine();
System.out.println(createAcronym(s));
}
}
Explain the following terms.
a) Explain Final keyword with example. b) Define Static and Instance variables
Answer:
A.
the final keyword is used to denote constants. It can be used with variables, methods, and classes. Once any entity (variable, method or class) is declared final , it can be assigned only once.
B.
Static variables are declared in the same place as instance variables, but with the keyword 'static' before the data type. While instance variables hold values that are associated with an individual object, static variables' values are associated with the class as a whole.
You have recently subscribed to an online data analytics magazine. You really enjoyed an article and want to share it in the discussion forum. Which of the following would be appropriate in a post?
A. Including an advertisement for how to subscribe to the data analytics magazine.
B. Checking your post for typos or grammatical errors.
C. Giving credit to the original author.
D. Including your own thoughts about the article.
Select All that apply
Answer:
These are the things that are would be appropriate in a post.
B. Checking your post for typos or grammatical errors.
C. Giving credit to the original author.
D. Including your own thoughts about the article.
Explanation:
The correct answer options B, C, and D" According to unofficial online or internet usage it is believed that sharing informative articles is a reasonable use of a website forum as much the credit goes back to the actual or original author. Also, it is believed that posts should be suitable for data analytics checked for typos and grammatical errors.
command create database in oracle database ::((
Answer:
kdkskskiisidiodoosooddodod